• Michael Reese's avatar
    vme-wb: add first version of direct VME-WB mapping (implementation of EE feature request) · 97aa12dd
    Michael Reese authored
    the VME-WB bridge is initially in a "normal" mode. In this mode, etherbone access works as ususal.
    The VME-WB bridge has now tow additional registers that are accessible using a AM=0x39 access. These
    registers have 0x400*slot as base address:
    register 0x4: write-only, the value written here is the wishbone base address that will be mapped onto
                  the AM=0x09 address range with base address 0x10000000*slot (this should be changed into
                  0x01000000, as requested by EE).
    register 0xc: write-only, the value written here will be ignored, but a write access switches the VME-WB
                  bridge back into the "normal" mode.
    
    example:
    	configure the VMW-WB bridge to give direct VME access to the TLU registers (assuming that the TLU
    	wishbone base address (obtained with eb-ls dev/wbm0) is 0x04000100, and assuming that slot is 2)
    	./vme -v 0x00000804 -w 0x4000100 -a 0x39   (vme-write: value=0x04000100 addr=0x00000804 AM=0x39)
    	  (now the bridge is in direct VME-WB mapping mode => etherbone access will not work anymore)
    	./vme -v 0x20000000 -s 0x04 -w 0xffffffff -a 0x09 (vme-write: value=0x3 addr=0x20000000 offset=0x04 AM=0x09) register CLR (clear)
    	./vme -v 0x20000000 -s 0x58 -w 0x3        -a 0x09 (vme-write: value=0x3 addr=0x20000000 offset=0x58 AM=0x09) register CH_SEL (channel select)
    	./vme -v 0x20000000 -s 0x10 -w 0xffffffff -a 0x09 (vme-write: value=0x3 addr=0x20000000 offset=0x10 AM=0x09) register ACT_SET (activate trigger)
    	./vme -v 0x20000000 -s 0x64               -a 0x09 (vme-read:            addr=0x20000000 AM=0x09)             register TS_CNT (fifo fill count)
    
    	configure the VME-WB bridge to work in "normal" mode again (etherbone will work)
    	./vme -v  0x0000080c -w 0x4000100 -a 0x39
    97aa12dd
Name
Last commit
Last update
doc Loading commit data...
drv Loading commit data...
hdl Loading commit data...
.gitmodules Loading commit data...
Manifest.py Loading commit data...