| // SPDX-License-Identifier: GPL-2.0 |
| /* |
| * https://beagleboard.org/play |
| * |
| * Copyright (C) 2022-2023 Texas Instruments Incorporated - https://www.ti.com/ |
| * Copyright (C) 2022-2023 Robert Nelson, BeagleBoard.org Foundation |
| */ |
| |
| #include "k3-binman.dtsi" |
| |
| / { |
| chosen { |
| tick-timer = &main_timer0; |
| }; |
| |
| /* Keep the LEDs on by default to indicate life */ |
| leds { |
| led-0 { |
| default-state = "on"; |
| }; |
| |
| led-1 { |
| default-state = "on"; |
| }; |
| |
| led-2 { |
| default-state = "on"; |
| }; |
| |
| led-3 { |
| default-state = "on"; |
| }; |
| |
| led-4 { |
| default-state = "on"; |
| }; |
| }; |
| }; |
| |
| &main_timer0 { |
| clock-frequency = <25000000>; |
| }; |
| |
| &sd_pins_default { |
| /* Force to use SDCD card detect pin */ |
| pinctrl-single,pins = < |
| AM62X_IOPAD(0x023c, PIN_INPUT, 0) /* (A21) MMC1_CMD */ |
| AM62X_IOPAD(0x0234, PIN_INPUT, 0) /* (B22) MMC1_CLK */ |
| AM62X_IOPAD(0x0230, PIN_INPUT, 0) /* (A22) MMC1_DAT0 */ |
| AM62X_IOPAD(0x022c, PIN_INPUT, 0) /* (B21) MMC1_DAT1 */ |
| AM62X_IOPAD(0x0228, PIN_INPUT, 0) /* (C21) MMC1_DAT2 */ |
| AM62X_IOPAD(0x0224, PIN_INPUT, 0) /* (D22) MMC1_DAT3 */ |
| AM62X_IOPAD(0x0240, PIN_INPUT, 0) /* (D17) MMC1_SDCD.MMC1_SDCD */ |
| >; |
| }; |
| |
| &usbss0 { |
| bootph-all; |
| }; |
| |
| &usb0 { |
| dr_mode = "peripheral"; |
| bootph-all; |
| }; |
| |
| #ifdef CONFIG_TARGET_AM625_A53_BEAGLEPLAY |
| |
| #define SPL_NODTB "spl/u-boot-spl-nodtb.bin" |
| #define SPL_AM625_BEAGLEPLAY_DTB "spl/dts/ti/k3-am625-beagleplay.dtb" |
| #define UBOOT_NODTB "u-boot-nodtb.bin" |
| #define AM625_BEAGLEPLAY_DTB "dts/upstream/src/arm64/ti/k3-am625-beagleplay.dtb" |
| |
| &binman { |
| ti-dm { |
| filename = "ti-dm.bin"; |
| blob-ext { |
| filename = "ti-dm/am62xx/ipc_echo_testb_mcu1_0_release_strip.xer5f"; |
| }; |
| }; |
| |
| tifsstub-gp { |
| filename = "tifsstub.bin_gp"; |
| ti-secure-rom { |
| content = <&tifsstub_gp>; |
| core = "secure"; |
| load = <0x60000>; |
| sw-rev = <CONFIG_K3_X509_SWRV>; |
| keyfile = "ti-degenerate-key.pem"; |
| tifsstub; |
| }; |
| tifsstub_gp: tifsstub-gp.bin { |
| filename = "ti-sysfw/ti-fs-stub-firmware-am62x-gp.bin"; |
| type = "blob-ext"; |
| optional; |
| }; |
| }; |
| |
| ti-spl_unsigned { |
| filename = "tispl.bin_unsigned"; |
| symlink = "tispl.bin"; |
| pad-byte = <0xff>; |
| |
| fit { |
| description = "Configuration to load ATF and SPL"; |
| #address-cells = <1>; |
| |
| images { |
| |
| atf { |
| description = "ARM Trusted Firmware"; |
| type = "firmware"; |
| arch = "arm64"; |
| compression = "none"; |
| os = "arm-trusted-firmware"; |
| load = <CONFIG_K3_ATF_LOAD_ADDR>; |
| entry = <CONFIG_K3_ATF_LOAD_ADDR>; |
| atf-bl31 { |
| filename = "bl31.bin"; |
| }; |
| }; |
| |
| tee { |
| description = "OP-TEE"; |
| type = "tee"; |
| arch = "arm64"; |
| compression = "none"; |
| os = "tee"; |
| load = <CONFIG_K3_OPTEE_LOAD_ADDR>; |
| entry = <CONFIG_K3_OPTEE_LOAD_ADDR>; |
| tee-os { |
| filename = "tee-raw.bin"; |
| }; |
| }; |
| |
| tifsstub-gp { |
| description = "tifsstub"; |
| type = "firmware"; |
| arch = "arm32"; |
| compression = "none"; |
| os = "tifsstub-gp"; |
| load = <0x9dc00000>; |
| entry = <0x9dc00000>; |
| blob-ext { |
| filename = "tifsstub.bin_gp"; |
| }; |
| }; |
| |
| dm { |
| description = "DM binary"; |
| type = "firmware"; |
| arch = "arm32"; |
| compression = "none"; |
| os = "DM"; |
| load = <0x89000000>; |
| entry = <0x89000000>; |
| blob-ext { |
| filename = "ti-dm.bin"; |
| }; |
| }; |
| |
| spl { |
| description = "SPL (64-bit)"; |
| type = "standalone"; |
| os = "U-Boot"; |
| arch = "arm64"; |
| compression = "none"; |
| load = <CONFIG_SPL_TEXT_BASE>; |
| entry = <CONFIG_SPL_TEXT_BASE>; |
| blob { |
| filename = "spl/u-boot-spl-nodtb.bin"; |
| }; |
| }; |
| |
| fdt-0 { |
| description = "k3-am625-beagleplay"; |
| type = "flat_dt"; |
| arch = "arm"; |
| compression = "none"; |
| spl_am625_bp_dtb_unsigned: blob { |
| filename = SPL_AM625_BEAGLEPLAY_DTB; |
| }; |
| }; |
| }; |
| |
| configurations { |
| default = "conf-0"; |
| |
| conf-0 { |
| description = "k3-am625-beagleplay"; |
| firmware = "atf"; |
| loadables = "tee", "dm", "spl", |
| "tifsstub-gp"; |
| fdt = "fdt-0"; |
| }; |
| }; |
| }; |
| }; |
| |
| u-boot_unsigned { |
| filename = "u-boot.img_unsigned"; |
| pad-byte = <0xff>; |
| |
| fit { |
| description = "FIT image with multiple configurations"; |
| |
| images { |
| uboot { |
| description = "U-Boot for AM625 board"; |
| type = "firmware"; |
| os = "u-boot"; |
| arch = "arm"; |
| compression = "none"; |
| load = <CONFIG_TEXT_BASE>; |
| blob { |
| filename = UBOOT_NODTB; |
| }; |
| hash { |
| algo = "crc32"; |
| }; |
| }; |
| |
| fdt-0 { |
| description = "k3-am625-beagleplay"; |
| type = "flat_dt"; |
| arch = "arm"; |
| compression = "none"; |
| am625_bp_dtb_unsigned: blob { |
| filename = AM625_BEAGLEPLAY_DTB; |
| }; |
| hash { |
| algo = "crc32"; |
| }; |
| }; |
| }; |
| |
| configurations { |
| default = "conf-0"; |
| |
| conf-0 { |
| description = "k3-am625-beagleplay"; |
| firmware = "uboot"; |
| loadables = "uboot"; |
| fdt = "fdt-0"; |
| }; |
| }; |
| }; |
| }; |
| }; |
| |
| #include "k3-binman-capsule.dtsi" |
| |
| // Capsule update GUIDs in string form. See beagleplay.h |
| #define BEAGLEPLAY_SPL_IMAGE_GUID_STR "b2e7cc49-1a5a-4036-ae01-3387c3bef657" |
| #define BEAGLEPLAY_UBOOT_IMAGE_GUID_STR "92c92b11-a7ee-486f-aaa2-713d84425b0e" |
| |
| &capsule_tispl { |
| efi-capsule { |
| image-guid = BEAGLEPLAY_SPL_IMAGE_GUID_STR; |
| |
| blob { |
| filename = "tispl.bin_unsigned"; |
| }; |
| }; |
| }; |
| |
| &capsule_uboot { |
| efi-capsule { |
| image-guid = BEAGLEPLAY_UBOOT_IMAGE_GUID_STR; |
| |
| blob { |
| filename = "u-boot.img_unsigned"; |
| }; |
| }; |
| }; |
| |
| #endif |
| |
| &main_bcdma { |
| reg = <0x00 0x485c0100 0x00 0x100>, |
| <0x00 0x4c000000 0x00 0x20000>, |
| <0x00 0x4a820000 0x00 0x20000>, |
| <0x00 0x4aa40000 0x00 0x20000>, |
| <0x00 0x4bc00000 0x00 0x100000>, |
| <0x00 0x48600000 0x00 0x8000>, |
| <0x00 0x484a4000 0x00 0x2000>, |
| <0x00 0x484c2000 0x00 0x2000>; |
| reg-names = "gcfg", "bchanrt", "rchanrt", "tchanrt", "ringrt", |
| "cfg", "tchan", "rchan"; |
| }; |
| |
| &main_pktdma { |
| reg = <0x00 0x485c0000 0x00 0x100>, |
| <0x00 0x4a800000 0x00 0x20000>, |
| <0x00 0x4aa00000 0x00 0x40000>, |
| <0x00 0x4b800000 0x00 0x400000>, |
| <0x00 0x485e0000 0x00 0x20000>, |
| <0x00 0x484a0000 0x00 0x4000>, |
| <0x00 0x484c0000 0x00 0x2000>, |
| <0x00 0x48430000 0x00 0x4000>; |
| reg-names = "gcfg", "rchanrt", "tchanrt", "ringrt", "cfg", |
| "tchan", "rchan", "rflow"; |
| bootph-all; |
| }; |
| |
| &mdio0_pins_default { |
| bootph-all; |
| }; |
| |
| &cpsw3g_mdio { |
| bootph-all; |
| }; |
| |
| &cpsw3g_phy0 { |
| bootph-all; |
| }; |
| |
| &rgmii1_pins_default { |
| bootph-all; |
| }; |
| |
| &cpsw3g { |
| bootph-all; |
| |
| ethernet-ports { |
| bootph-all; |
| }; |
| }; |
| |
| &phy_gmii_sel { |
| bootph-all; |
| }; |
| |
| &cpsw_port1 { |
| bootph-all; |
| }; |
| |
| &cpsw_port2 { |
| status = "disabled"; |
| }; |