OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [tags/] [rel-0-3-0-rc2/] [or1ksim/] [peripheral/] [fb.c] - Diff between revs 1358 and 1359

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 1358 Rev 1359
Line 47... Line 47...
{
{
  fb_addr = addr;
  fb_addr = addr;
}
}
 
 
/* Write a register */
/* Write a register */
void fb_write32 (oraddr_t addr, uint32_t value)
void fb_write32 (oraddr_t addr, uint32_t value, void *dat)
{
{
  int a = (addr - config.fb.baseaddr);
  int a = (addr - config.fb.baseaddr);
  switch (a) {
  switch (a) {
    case FB_CTRL:    fb_ctrl = value; break;
    case FB_CTRL:    fb_ctrl = value; break;
    case FB_BUFADDR: change_buf_addr (value); break;
    case FB_BUFADDR: change_buf_addr (value); break;
Line 70... Line 70...
      break;
      break;
  }
  }
}
}
 
 
/* Read a register */
/* Read a register */
oraddr_t fb_read32 (oraddr_t addr)
oraddr_t fb_read32 (oraddr_t addr, void *dat)
{
{
  int a = (addr - config.fb.baseaddr);
  int a = (addr - config.fb.baseaddr);
  switch (a) {
  switch (a) {
    case FB_CTRL:
    case FB_CTRL:
      return fb_ctrl & ~0xff000000| (fb_in_refresh ? 0x80000000 : 0) | ((unsigned long)(fb_refresh_count & 0x7f) << 24);
      return fb_ctrl & ~0xff000000| (fb_in_refresh ? 0x80000000 : 0) | ((unsigned long)(fb_refresh_count & 0x7f) << 24);
Line 288... Line 288...
 
 
    for (i = 0; i < 256; i++)
    for (i = 0; i < 256; i++)
      pal[i] = (i << 16) | (i << 8) | (i << 0);
      pal[i] = (i << 16) | (i << 8) | (i << 0);
 
 
    if (config.fb.baseaddr)
    if (config.fb.baseaddr)
      register_memoryarea(config.fb.baseaddr, FB_PAL + 256*4, 4, 0, fb_read32, fb_write32);
      register_memoryarea(config.fb.baseaddr, FB_PAL + 256*4, 4, 0, fb_read32, fb_write32, NULL);
    SCHED_ADD(fb_job, 0, runtime.sim.cycles + config.fb.refresh_rate);
    SCHED_ADD(fb_job, 0, runtime.sim.cycles + config.fb.refresh_rate);
  }
  }
}
}
 
 
/*-----------------------------------------------------[ FB configuration ]---*/
/*-----------------------------------------------------[ FB configuration ]---*/

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.