44a45,46
> from ClockDomain import ClockDomain
> from VoltageDomain import VoltageDomain
91a94,136
> class RealViewOsc(ClockDomain):
> type = 'RealViewOsc'
> cxx_header = "dev/arm/rv_ctrl.hh"
>
> parent = Param.RealViewCtrl(Parent.any, "RealView controller")
>
> # TODO: We currently don't have the notion of a clock source,
> # which means we have to associate oscillators with a voltage
> # source.
> voltage_domain = Param.VoltageDomain(Parent.voltage_domain,
> "Voltage domain")
>
> # See ARM DUI 0447J (ARM Motherboard Express uATX -- V2M-P1) and
> # the individual core/logic tile reference manuals for details
> # about the site/position/dcc/device allocation.
> site = Param.UInt8("Board Site")
> position = Param.UInt8("Position in device stack")
> dcc = Param.UInt8("Daughterboard Configuration Controller")
> device = Param.UInt8("Device ID")
>
> freq = Param.Clock("Default frequency")
>
> class VExpressCoreTileCtrl(RealViewCtrl):
> class MotherBoardOsc(RealViewOsc):
> site, position, dcc = (0, 0, 0)
>
> class CoreTileOsc(RealViewOsc):
> site, position, dcc = (1, 0, 0)
>
> # See ARM DUI 0447J (ARM Motherboard Express uATX -- V2M-P1)
> osc_mcc = MotherBoardOsc(device=0, freq="50MHz")
> osc_clcd = MotherBoardOsc(device=1, freq="23.75MHz")
> osc_peripheral = MotherBoardOsc(device=2, freq="24MHz")
> osc_system_bus = MotherBoardOsc(device=4, freq="24MHz")
>
> # See Table 2.8 in ARM DUI 0604E (CoreTile Express A15x2 TRM).
> osc_cpu = CoreTileOsc(device=0, freq="60MHz")
> osc_hsbm = CoreTileOsc(device=4, freq="40MHz")
> osc_pxl = CoreTileOsc(device=5, freq="23.75MHz")
> osc_smb = CoreTileOsc(device=6, freq="50MHz")
> osc_sys = CoreTileOsc(device=7, freq="60MHz")
> osc_ddr = CoreTileOsc(device=8, freq="40MHz")
>
230c275
< realview_io = RealViewCtrl(pio_addr=0x10000000)
---
> realview_io = VExpressCoreTileCtrl(pio_addr=0x10000000)
357c402
< realview_io = RealViewCtrl(pio_addr=0x10000000, idreg=0x01400500)
---
> realview_io = VExpressCoreTileCtrl(pio_addr=0x10000000, idreg=0x01400500)
467,468c512,514
< realview_io = RealViewCtrl(proc_id0=0x14000000, proc_id1=0x14000000, \
< idreg=0x02250000, pio_addr=0x1C010000)
---
> realview_io = VExpressCoreTileCtrl(
> proc_id0=0x14000000, proc_id1=0x14000000,
> idreg=0x02250000, pio_addr=0x1C010000)