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

Subversion Repositories or1k

[/] [or1k/] [tags/] [stable_0_1_0/] [or1ksim/] [peripheral/] [fb.c] - Diff between revs 845 and 846

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

Rev 845 Rev 846
Line 40... Line 40...
/* Write a register */
/* Write a register */
void fb_write32 (unsigned long addr, unsigned long value)
void fb_write32 (unsigned long addr, unsigned long value)
{
{
  int a = (addr - config.fb.baseaddr);
  int a = (addr - config.fb.baseaddr);
  switch (a) {
  switch (a) {
    case FB_CTRL:    fb_ctrl = value & 0x00000001; break;
    case FB_CTRL:    fb_ctrl = value; break;
    case FB_BUFADDR: change_buf_addr (value); break;
    case FB_BUFADDR: change_buf_addr (value); break;
    default:
    default:
      a -= FB_PAL;
      a -= FB_PAL;
      a /= 4;
      a /= 4;
      if (a < 0 || a >= 256) {
      if (a < 0 || a >= 256) {
Line 59... Line 59...
unsigned long fb_read32 (unsigned long addr)
unsigned long fb_read32 (unsigned long addr)
{
{
  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 | (fb_in_refresh ? 2 : 0) | ((fb_refresh_count & 0xff) << 8);
      return fb_ctrl & ~0xff000000| (fb_in_refresh ? 0x80000000 : 0) | ((unsigned long)(fb_refresh_count & 0x7f) << 24);
      break;
      break;
    case FB_BUFADDR: return fb_addr; break;
    case FB_BUFADDR: return fb_addr; break;
    default:
    default:
      a -= FB_PAL;
      a -= FB_PAL;
      a /= 4;
      a /= 4;

powered by: WebSVN 2.1.0

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