energy: Add the Energy Controller in the right configs
Tie in the newly created energy controller components in the default configurations.
This commit is contained in:
parent
04e51e5e3e
commit
65aaf62714
|
@ -51,6 +51,7 @@ from Terminal import Terminal
|
||||||
from Uart import Uart
|
from Uart import Uart
|
||||||
from SimpleMemory import SimpleMemory
|
from SimpleMemory import SimpleMemory
|
||||||
from Gic import *
|
from Gic import *
|
||||||
|
from EnergyCtrl import EnergyCtrl
|
||||||
|
|
||||||
class AmbaPioDevice(BasicPioDevice):
|
class AmbaPioDevice(BasicPioDevice):
|
||||||
type = 'AmbaPioDevice'
|
type = 'AmbaPioDevice'
|
||||||
|
@ -247,6 +248,7 @@ class RealViewPBX(RealView):
|
||||||
aaci_fake = AmbaFake(pio_addr=0x10004000)
|
aaci_fake = AmbaFake(pio_addr=0x10004000)
|
||||||
mmc_fake = AmbaFake(pio_addr=0x10005000)
|
mmc_fake = AmbaFake(pio_addr=0x10005000)
|
||||||
rtc = PL031(pio_addr=0x10017000, int_num=42)
|
rtc = PL031(pio_addr=0x10017000, int_num=42)
|
||||||
|
energy_ctrl = EnergyCtrl(pio_addr=0x1000f000)
|
||||||
|
|
||||||
|
|
||||||
# Attach I/O devices that are on chip and also set the appropriate
|
# Attach I/O devices that are on chip and also set the appropriate
|
||||||
|
@ -303,6 +305,7 @@ class RealViewPBX(RealView):
|
||||||
self.mmc_fake.pio = bus.master
|
self.mmc_fake.pio = bus.master
|
||||||
self.rtc.pio = bus.master
|
self.rtc.pio = bus.master
|
||||||
self.flash_fake.pio = bus.master
|
self.flash_fake.pio = bus.master
|
||||||
|
self.energy_ctrl.pio = bus.master
|
||||||
|
|
||||||
# Set the clock domain for IO objects that are considered
|
# Set the clock domain for IO objects that are considered
|
||||||
# to be "far" away from the cores.
|
# to be "far" away from the cores.
|
||||||
|
@ -331,6 +334,7 @@ class RealViewPBX(RealView):
|
||||||
self.mmc_fake.clk_domain = clkdomain
|
self.mmc_fake.clk_domain = clkdomain
|
||||||
self.rtc.clk_domain = clkdomain
|
self.rtc.clk_domain = clkdomain
|
||||||
self.flash_fake.clk_domain = clkdomain
|
self.flash_fake.clk_domain = clkdomain
|
||||||
|
self.energy_ctrl.clk_domain = clkdomain
|
||||||
|
|
||||||
# Reference for memory map and interrupt number
|
# Reference for memory map and interrupt number
|
||||||
# RealView Emulation Baseboard User Guide (ARM DUI 0143B)
|
# RealView Emulation Baseboard User Guide (ARM DUI 0143B)
|
||||||
|
@ -364,8 +368,7 @@ class RealViewEB(RealView):
|
||||||
aaci_fake = AmbaFake(pio_addr=0x10004000)
|
aaci_fake = AmbaFake(pio_addr=0x10004000)
|
||||||
mmc_fake = AmbaFake(pio_addr=0x10005000)
|
mmc_fake = AmbaFake(pio_addr=0x10005000)
|
||||||
rtc_fake = AmbaFake(pio_addr=0x10017000, amba_id=0x41031)
|
rtc_fake = AmbaFake(pio_addr=0x10017000, amba_id=0x41031)
|
||||||
|
energy_ctrl = EnergyCtrl(pio_addr=0x1000f000)
|
||||||
|
|
||||||
|
|
||||||
# Attach I/O devices that are on chip and also set the appropriate
|
# Attach I/O devices that are on chip and also set the appropriate
|
||||||
# ranges for the bridge
|
# ranges for the bridge
|
||||||
|
@ -413,6 +416,7 @@ class RealViewEB(RealView):
|
||||||
self.rtc_fake.pio = bus.master
|
self.rtc_fake.pio = bus.master
|
||||||
self.flash_fake.pio = bus.master
|
self.flash_fake.pio = bus.master
|
||||||
self.smcreg_fake.pio = bus.master
|
self.smcreg_fake.pio = bus.master
|
||||||
|
self.energy_ctrl.pio = bus.master
|
||||||
|
|
||||||
# Set the clock domain for IO objects that are considered
|
# Set the clock domain for IO objects that are considered
|
||||||
# to be "far" away from the cores.
|
# to be "far" away from the cores.
|
||||||
|
@ -441,6 +445,7 @@ class RealViewEB(RealView):
|
||||||
self.rtc.clk_domain = clkdomain
|
self.rtc.clk_domain = clkdomain
|
||||||
self.flash_fake.clk_domain = clkdomain
|
self.flash_fake.clk_domain = clkdomain
|
||||||
self.smcreg_fake.clk_domain = clkdomain
|
self.smcreg_fake.clk_domain = clkdomain
|
||||||
|
self.energy_ctrl.clk_domain = clkdomain
|
||||||
|
|
||||||
class VExpress_EMM(RealView):
|
class VExpress_EMM(RealView):
|
||||||
_mem_regions = [(Addr('2GB'), Addr('2GB'))]
|
_mem_regions = [(Addr('2GB'), Addr('2GB'))]
|
||||||
|
@ -479,6 +484,7 @@ class VExpress_EMM(RealView):
|
||||||
lan_fake = IsaFake(pio_addr=0x1A000000, pio_size=0xffff)
|
lan_fake = IsaFake(pio_addr=0x1A000000, pio_size=0xffff)
|
||||||
usb_fake = IsaFake(pio_addr=0x1B000000, pio_size=0x1ffff)
|
usb_fake = IsaFake(pio_addr=0x1B000000, pio_size=0x1ffff)
|
||||||
mmc_fake = AmbaFake(pio_addr=0x1c050000)
|
mmc_fake = AmbaFake(pio_addr=0x1c050000)
|
||||||
|
energy_ctrl = EnergyCtrl(pio_addr=0x1c080000)
|
||||||
|
|
||||||
# Attach any PCI devices that are supported
|
# Attach any PCI devices that are supported
|
||||||
def attachPciDevices(self):
|
def attachPciDevices(self):
|
||||||
|
@ -559,6 +565,7 @@ class VExpress_EMM(RealView):
|
||||||
self.lan_fake.pio = bus.master
|
self.lan_fake.pio = bus.master
|
||||||
self.usb_fake.pio = bus.master
|
self.usb_fake.pio = bus.master
|
||||||
self.mmc_fake.pio = bus.master
|
self.mmc_fake.pio = bus.master
|
||||||
|
self.energy_ctrl.pio = bus.master
|
||||||
|
|
||||||
# Try to attach the I/O if it exists
|
# Try to attach the I/O if it exists
|
||||||
try:
|
try:
|
||||||
|
@ -596,6 +603,7 @@ class VExpress_EMM(RealView):
|
||||||
self.lan_fake.clk_domain = clkdomain
|
self.lan_fake.clk_domain = clkdomain
|
||||||
self.usb_fake.clk_domain = clkdomain
|
self.usb_fake.clk_domain = clkdomain
|
||||||
self.mmc_fake.clk_domain = clkdomain
|
self.mmc_fake.clk_domain = clkdomain
|
||||||
|
self.energy_ctrl.clk_domain = clkdomain
|
||||||
|
|
||||||
class VExpress_EMM64(VExpress_EMM):
|
class VExpress_EMM64(VExpress_EMM):
|
||||||
pci_io_base = 0x2f000000
|
pci_io_base = 0x2f000000
|
||||||
|
|
Loading…
Reference in a new issue