diff options
Diffstat (limited to 'src/dev/arm/RealView.py')
-rw-r--r-- | src/dev/arm/RealView.py | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/src/dev/arm/RealView.py b/src/dev/arm/RealView.py index a9b9dede2..dc8868b9f 100644 --- a/src/dev/arm/RealView.py +++ b/src/dev/arm/RealView.py @@ -54,6 +54,7 @@ from Uart import Uart from SimpleMemory import SimpleMemory from Gic import * from EnergyCtrl import EnergyCtrl +from ClockDomain import SrcClockDomain class AmbaPioDevice(BasicPioDevice): type = 'AmbaPioDevice' @@ -218,23 +219,23 @@ class Pl111(AmbaDmaDevice): amba_id = 0x00141111 enable_capture = Param.Bool(True, "capture frame to system.framebuffer.bmp") - class HDLcd(AmbaDmaDevice): type = 'HDLcd' cxx_header = "dev/arm/hdlcd.hh" - # For reference, 1024x768MR-16@60 ~= 56 MHz - # 1920x1080MR-16@60 ~= 137 MHz - # 3840x2160MR-16@60 ~= 533 MHz - # Match against the resolution selected in the Linux DTS/DTB file. - pixel_clock = Param.Clock('137MHz', "Clock frequency of the pixel clock " - "(i.e. PXLREFCLK / OSCCLK 5") vnc = Param.VncInput(Parent.any, "Vnc server for remote frame buffer " "display") amba_id = 0x00141000 workaround_swap_rb = Param.Bool(True, "Workaround incorrect color " "selector order in some kernels") + workaround_dma_line_count = Param.Bool(True, "Workaround incorrect " + "DMA line count (off by 1)") enable_capture = Param.Bool(True, "capture frame to system.framebuffer.bmp") + pixel_buffer_size = Param.MemorySize32("2kB", "Size of address range") + + pxl_clk = Param.ClockDomain("Pixel clock source") + pixel_chunk = Param.Unsigned(32, "Number of pixels to handle in one batch") + class RealView(Platform): type = 'RealView' cxx_header = "dev/arm/realview.hh" @@ -518,7 +519,8 @@ class VExpress_EMM(RealView): timer0 = Sp804(int_num0=34, int_num1=34, pio_addr=0x1C110000, clock0='1MHz', clock1='1MHz') timer1 = Sp804(int_num0=35, int_num1=35, pio_addr=0x1C120000, clock0='1MHz', clock1='1MHz') clcd = Pl111(pio_addr=0x1c1f0000, int_num=46) - hdlcd = HDLcd(pio_addr=0x2b000000, int_num=117) + hdlcd = HDLcd(pxl_clk=realview_io.osc_pxl, + pio_addr=0x2b000000, int_num=117) kmi0 = Pl050(pio_addr=0x1c060000, int_num=44) kmi1 = Pl050(pio_addr=0x1c070000, int_num=45, is_mouse=True) vgic = VGic(vcpu_addr=0x2c006000, hv_addr=0x2c004000, ppint=25) |