/* * Copyright (c) 2023-2024, Arm Limited. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ #define GIC_CTRL_ADDR 2c010000 #define GIC_GICR_OFFSET 0x200000 #define UART_OFFSET 0x1000 #ifdef TC_RESOLUTION_1920X1080P60 #define LCD_TIMING_CLK 148500000 #define LCD_TIMING \ clock-frequency = ; \ hactive = <1920>; \ vactive = <1080>; \ hfront-porch = <88>; \ hback-porch = <148>; \ hsync-len = <44>; \ vfront-porch = <4>; \ vback-porch = <36>; \ vsync-len = <5> #else /* TC_RESOLUTION_640X480P60 */ #define LCD_TIMING_CLK 25175000 #define LCD_TIMING \ clock-frequency = ; \ hactive = <640>; \ vactive = <480>; \ hfront-porch = <16>; \ hback-porch = <48>; \ hsync-len = <96>; \ vfront-porch = <10>; \ vback-porch = <33>; \ vsync-len = <2> #endif / { chosen { stdout-path = "serial0:115200n8"; }; ethernet: ethernet@ETHERNET_ADDR { compatible = "smsc,lan91c111"; }; mmci: mmci@MMC_ADDR { cd-gpios = <&sysreg 0 0>; }; rtc@RTC_ADDR { compatible = "arm,pl031", "arm,primecell"; reg = <0x0 ADDRESSIFY(RTC_ADDR) 0x0 0x1000>; interrupts = ; clocks = <&soc_refclk>; clock-names = "apb_pclk"; }; kmi@KMI_0_ADDR { compatible = "arm,pl050", "arm,primecell"; reg = <0x0 ADDRESSIFY(KMI_0_ADDR) 0x0 0x1000>; interrupts = ; clocks = <&bp_clock24mhz>, <&bp_clock24mhz>; clock-names = "KMIREFCLK", "apb_pclk"; }; kmi@1c070000 { compatible = "arm,pl050", "arm,primecell"; reg = <0x0 0x001c070000 0x0 0x1000>; interrupts = ; clocks = <&bp_clock24mhz>, <&bp_clock24mhz>; clock-names = "KMIREFCLK", "apb_pclk"; }; virtio_block@VIRTIO_BLOCK_ADDR { compatible = "virtio,mmio"; reg = <0x0 ADDRESSIFY(VIRTIO_BLOCK_ADDR) 0x0 0x200>; /* spec lists this wrong */ interrupts = ; }; };