LOGIN   :::   RECOVER PASS   :::   GET ACCOUNT    
Browse
  • Projects
  • Code (CVS)
  • Forums
  • News
  • Articles
  • Polls
  •  
    OpenCores
  • FAQ
  • CVS HowTo
  • Mission
  • Media
  • Tools
  • Advertise
  • Mirrors
  • Logos
  • Contact us
  • Find Resources
  • Job Opportunity
  •  
    Tools
  • Search
      
  • Download Cores (CVSGet)
  •  
    More
  • Wishbone
  • Perlilog
  • EDA tools
  • OpenTech CD
  •  
    Navigation: All forums > Openrisc > Message List > Message Post

    Message

    Reply | Reply all
    Date Prev | Date Next | Thread Prev | Thread Next Date Index | Thread Index

    From: =?unknown-8bit?Q?Gy=F6rgy?= 'nog' Jeney<nog@s...>
    Date: Tue Mar 29 18:13:12 CEST 2005
    Subject: [openrisc] [or1ksim #72] Peripherals that are not-so-clear
    Top
    Hi,

    This is the follow-on from #71. These peripherals (fb/ps2kbd and ethernet)
    where also halting the sim if a reserved register was acessed but there is no
    documentation for the ps2kbd and I couldn't find what peripheral fb is
    modelling. The ethernet doc doesn't describe this case. (They might blow up if
    their unknown registers are acessed, I don't know).

    ChangeLog:
    * Don't halt the sim when not needed.

    nog.
    -------------- next part --------------
    diff -urp --unidirectional-new-file /home/nog/or1ksim-split/peripheral/fb.c peripheral/fb.c
    --- /home/nog/or1ksim-split/peripheral/fb.c 2005-03-29 17:03:37.000000000 +0200
    +++ peripheral/fb.c 2005-03-29 16:46:03.000000000 +0200
    @@ -78,7 +78,6 @@ void fb_write32 (oraddr_t addr, uint32_t
    a /= 4;
    if (a < 0 || a >= 256) {
    fprintf (stderr, "Write out of palette buffer (0x%"PRIxADDR")!\n", addr);
    - runtime.sim.cont_run = 0;
    } else fb->pal[a] = value;
    break;
    }
    @@ -103,7 +102,6 @@ oraddr_t fb_read32 (oraddr_t addr, void
    a /= 4;
    if (a < 0 || a >= 256) {
    fprintf (stderr, "Read out of palette buffer (0x%"PRIxADDR")!\n", addr);
    - runtime.sim.cont_run = 0;
    return 0;
    } else return fb->pal[a];
    }
    diff -urp --unidirectional-new-file /home/nog/or1ksim-split/peripheral/ps2kbd.c peripheral/ps2kbd.c
    --- /home/nog/or1ksim-split/peripheral/ps2kbd.c 2005-03-29 17:03:37.000000000 +0200
    +++ peripheral/ps2kbd.c 2005-03-29 16:48:32.000000000 +0200
    @@ -168,7 +168,6 @@ void kbd_write8 (oraddr_t addr, uint32_t
    break;
    default:
    fprintf (stderr, "Write out of keyboard space (0x%"PRIxADDR")!\n", addr);
    - runtime.sim.cont_run = 0;
    break;
    }
    }
    @@ -238,7 +237,6 @@ uint32_t kbd_read8 (oraddr_t addr, void
    return 0;
    default:
    fprintf (stderr, "Read out of keyboard space (0x%"PRIxADDR")!\n", addr);
    - runtime.sim.cont_run = 0;
    return 0;
    }
    }
    diff -urp --unidirectional-new-file /home/nog/or1ksim-split/peripheral/eth.c peripheral/eth.c
    --- /home/nog/or1ksim-split/peripheral/eth.c 2005-03-29 17:07:05.000000000 +0200
    +++ peripheral/eth.c 2005-03-29 16:52:01.000000000 +0200
    @@ -683,7 +683,6 @@ uint32_t eth_read32( oraddr_t addr, void

    PRINTF( "eth_read32( 0x%"PRIxADDR" ): Illegal address\n",
    addr + eth->baseaddr );
    - runtime.sim.cont_run = 0;
    return 0;
    }
    /* ========================================================================= */
    @@ -756,7 +755,6 @@ void eth_write32( oraddr_t addr, uint32_

    PRINTF( "eth_write32( 0x%"PRIxADDR" ): Illegal address\n",
    addr + eth->baseaddr );
    - runtime.sim.cont_run = 0;
    return;
    }
    /* ========================================================================= */

     
    Copyright (c) 1999 OPENCORES.ORG. All rights reserved.