This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hi, Sir
We were cold rebooted with the AM6412 and had a 0.5% failure rate where the USB bus disappeared.
And the Software restart problem still exists, only another cold reboot can solve the problem.
kernel version : 5.10.168-cip27
drivers/phy/cadence/phy-cadence-torrent.c
BR,
Taylor
dmesg
[ 0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034] [ 0.000000] Linux version 5.10.0-cip-rt-moxa-am64x (root@runner-setjc8l-project-32919665-concurrent-0) (aarch64-linux-gnu-gcc (Debian 10.2.1-6) 10.2.1 20210110, GNU ld (GNU Binutils for Debian) 2.35.2) #1 SMP Thu May 11 17:41:38 CST 2023 [ 0.000000] Machine model: Moxa UC-1222A [ 0.000000] efi: UEFI not found. [ 0.000000] Reserved memory: created DMA memory pool at 0x00000000a0000000, size 1 MiB [ 0.000000] OF: reserved mem: initialized node r5f-dma-memory@a0000000, compatible id shared-dma-pool [ 0.000000] Reserved memory: created DMA memory pool at 0x00000000a0100000, size 15 MiB [ 0.000000] OF: reserved mem: initialized node r5f-memory@a0100000, compatible id shared-dma-pool [ 0.000000] Reserved memory: created DMA memory pool at 0x00000000a1000000, size 1 MiB [ 0.000000] OF: reserved mem: initialized node r5f-dma-memory@a1000000, compatible id shared-dma-pool [ 0.000000] Reserved memory: created DMA memory pool at 0x00000000a1100000, size 15 MiB [ 0.000000] OF: reserved mem: initialized node r5f-memory@a1100000, compatible id shared-dma-pool [ 0.000000] Reserved memory: created DMA memory pool at 0x00000000a2000000, size 1 MiB [ 0.000000] OF: reserved mem: initialized node r5f-dma-memory@a2000000, compatible id shared-dma-pool [ 0.000000] Reserved memory: created DMA memory pool at 0x00000000a2100000, size 15 MiB [ 0.000000] OF: reserved mem: initialized node r5f-memory@a2100000, compatible id shared-dma-pool [ 0.000000] Reserved memory: created DMA memory pool at 0x00000000a3000000, size 1 MiB [ 0.000000] OF: reserved mem: initialized node r5f-dma-memory@a3000000, compatible id shared-dma-pool [ 0.000000] Reserved memory: created DMA memory pool at 0x00000000a3100000, size 15 MiB [ 0.000000] OF: reserved mem: initialized node r5f-memory@a3100000, compatible id shared-dma-pool [ 0.000000] Reserved memory: created DMA memory pool at 0x00000000a4000000, size 1 MiB [ 0.000000] OF: reserved mem: initialized node m4f-dma-memory@a4000000, compatible id shared-dma-pool [ 0.000000] Reserved memory: created DMA memory pool at 0x00000000a4100000, size 15 MiB [ 0.000000] OF: reserved mem: initialized node m4f-memory@a4100000, compatible id shared-dma-pool [ 0.000000] Zone ranges: [ 0.000000] DMA [mem 0x0000000080000000-0x00000000ffffffff] [ 0.000000] Normal empty [ 0.000000] Movable zone start for each node [ 0.000000] Early memory node ranges [ 0.000000] node 0: [mem 0x0000000080000000-0x000000009e7fffff] [ 0.000000] node 0: [mem 0x000000009e800000-0x00000000a57fffff] [ 0.000000] node 0: [mem 0x00000000a5800000-0x00000000ffffffff] [ 0.000000] Initmem setup node 0 [mem 0x0000000080000000-0x00000000ffffffff] [ 0.000000] On node 0 totalpages: 524288 [ 0.000000] DMA zone: 8192 pages used for memmap [ 0.000000] DMA zone: 0 pages reserved [ 0.000000] DMA zone: 524288 pages, LIFO batch:63 [ 0.000000] cma: Reserved 24 MiB at 0x00000000fe400000 [ 0.000000] psci: probing for conduit method from DT. [ 0.000000] psci: PSCIv1.1 detected in firmware. [ 0.000000] psci: Using standard PSCI v0.2 function IDs [ 0.000000] psci: Trusted OS migration not required [ 0.000000] psci: SMC Calling Convention v1.2 [ 0.000000] percpu: Embedded 18 pages/cpu s32984 r8192 d32552 u73728 [ 0.000000] pcpu-alloc: s32984 r8192 d32552 u73728 alloc=18*4096 [ 0.000000] pcpu-alloc: [0] 0 [0] 1 [ 0.000000] Detected VIPT I-cache on CPU0 [ 0.000000] CPU features: detected: ARM erratum 845719 [ 0.000000] CPU features: detected: GIC system register CPU interface [ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 516096 [ 0.000000] Kernel command line: console=ttyS2,115200n8 root=/dev/mmcblk0p2 rw rootfstype=ext4 rootwait [ 0.000000] Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes, linear) [ 0.000000] Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes, linear) [ 0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off [ 0.000000] Memory: 1875252K/2097152K available (12608K kernel code, 1210K rwdata, 4824K rodata, 1984K init, 457K bss, 197324K reserved, 24576K cma-reserved) [ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1 [ 0.000000] rcu: Hierarchical RCU implementation. [ 0.000000] rcu: RCU event tracing is enabled. [ 0.000000] rcu: RCU restricting CPUs from NR_CPUS=256 to nr_cpu_ids=2. [ 0.000000] Tracing variant of Tasks RCU enabled. [ 0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies. [ 0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2 [ 0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0 [ 0.000000] GICv3: GIC: Using split EOI/Deactivate mode [ 0.000000] GICv3: 256 SPIs implemented [ 0.000000] GICv3: 0 Extended SPIs implemented [ 0.000000] GICv3: Distributor has no Range Selector support [ 0.000000] GICv3: 16 PPIs implemented [ 0.000000] GICv3: CPU0: found redistributor 0 region 0:0x0000000001840000 [ 0.000000] ITS [mem 0x01820000-0x0182ffff] [ 0.000000] GIC: enabling workaround for ITS: Socionext Synquacer pre-ITS [ 0.000000] ITS@0x0000000001820000: Devices Table too large, reduce ids 20->19 [ 0.000000] ITS@0x0000000001820000: allocated 524288 Devices @82000000 (flat, esz 8, psz 64K, shr 0) [ 0.000000] ITS: using cache flushing for cmd queue [ 0.000000] GICv3: using LPI property table @0x0000000080030000 [ 0.000000] GIC: using cache flushing for LPI property table [ 0.000000] GICv3: CPU0: using allocated LPI pending table @0x0000000080040000 [ 0.000000] arch_timer: cp15 timer(s) running at 200.00MHz (phys). [ 0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x2e2049d3e8, max_idle_ns: 440795210634 ns [ 0.000000] sched_clock: 56 bits at 200MHz, resolution 5ns, wraps every 4398046511102ns [ 0.000313] Console: colour dummy device 80x25 [ 0.000370] Calibrating delay loop (skipped), value calculated using timer frequency.. 400.00 BogoMIPS (lpj=800000) [ 0.000384] pid_max: default: 32768 minimum: 301 [ 0.000611] LSM: Security Framework initializing [ 0.000734] Mount-cache hash table entries: 4096 (order: 3, 32768 bytes, linear) [ 0.000759] Mountpoint-cache hash table entries: 4096 (order: 3, 32768 bytes, linear) [ 0.002837] rcu: Hierarchical SRCU implementation. [ 0.003098] Platform MSI: msi-controller@1820000 domain created [ 0.003348] PCI/MSI: /bus@f4000/interrupt-controller@1800000/msi-controller@1820000 domain created [ 0.003448] EFI services will not be available. [ 0.003703] smp: Bringing up secondary CPUs ... [ 0.012741] Detected VIPT I-cache on CPU1 [ 0.012786] GICv3: CPU1: found redistributor 1 region 0:0x0000000001860000 [ 0.012805] GICv3: CPU1: using allocated LPI pending table @0x0000000080050000 [ 0.012870] CPU1: Booted secondary processor 0x0000000001 [0x410fd034] [ 0.013006] smp: Brought up 1 node, 2 CPUs [ 0.013014] SMP: Total of 2 processors activated. [ 0.013020] CPU features: detected: 32-bit EL0 Support [ 0.013026] CPU features: detected: CRC32 instructions [ 0.027322] CPU: All CPU(s) started at EL2 [ 0.027369] alternatives: patching kernel code [ 0.028821] devtmpfs: initialized [ 0.037563] KASLR disabled due to lack of seed [ 0.037738] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns [ 0.037759] futex hash table entries: 512 (order: 3, 32768 bytes, linear) [ 0.038936] pinctrl core: initialized pinctrl subsystem [ 0.039522] DMI not present or invalid. [ 0.040341] NET: Registered protocol family 16 [ 0.042188] DMA: preallocated 256 KiB GFP_KERNEL pool for atomic allocations [ 0.042350] DMA: preallocated 256 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations [ 0.042534] audit: initializing netlink subsys (disabled) [ 0.042890] audit: type=2000 audit(0.040:1): state=initialized audit_enabled=0 res=1 [ 0.043470] thermal_sys: Registered thermal governor 'step_wise' [ 0.044210] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers. [ 0.044303] ASID allocator initialised with 65536 entries [ 0.071152] HugeTLB registered 1.00 GiB page size, pre-allocated 0 pages [ 0.071168] HugeTLB registered 32.0 MiB page size, pre-allocated 0 pages [ 0.071173] HugeTLB registered 2.00 MiB page size, pre-allocated 0 pages [ 0.071177] HugeTLB registered 64.0 KiB page size, pre-allocated 0 pages [ 0.072368] cryptd: max_cpu_qlen set to 1000 [ 0.075807] k3-chipinfo 43000014.chipid: Family:AM64X rev:SR2.0 JTAGID[0x1bb3802f] Detected [ 0.076357] vcc_3v3_sys: supplied by vusb_main5v0 [ 0.077756] iommu: Default domain type: Translated [ 0.078219] SCSI subsystem initialized [ 0.078475] usbcore: registered new interface driver usbfs [ 0.078512] usbcore: registered new interface driver hub [ 0.078543] usbcore: registered new device driver usb [ 0.079023] mc: Linux media interface: v0.10 [ 0.079048] videodev: Linux video capture interface: v2.00 [ 0.079130] pps_core: LinuxPPS API ver. 1 registered [ 0.079134] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it> [ 0.079148] PTP clock support registered [ 0.079182] EDAC MC: Ver: 3.0.0 [ 0.080335] FPGA manager framework [ 0.080435] Advanced Linux Sound Architecture Driver Initialized. [ 0.081654] clocksource: Switched to clocksource arch_sys_counter [ 0.081989] VFS: Disk quotas dquot_6.6.0 [ 0.082057] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes) [ 0.089105] NET: Registered protocol family 2 [ 0.089399] IP idents hash table entries: 32768 (order: 6, 262144 bytes, linear) [ 0.090973] tcp_listen_portaddr_hash hash table entries: 1024 (order: 2, 16384 bytes, linear) [ 0.091063] TCP established hash table entries: 16384 (order: 5, 131072 bytes, linear) [ 0.091206] TCP bind hash table entries: 16384 (order: 6, 262144 bytes, linear) [ 0.091453] TCP: Hash tables configured (established 16384 bind 16384) [ 0.091657] UDP hash table entries: 1024 (order: 3, 32768 bytes, linear) [ 0.091715] UDP-Lite hash table entries: 1024 (order: 3, 32768 bytes, linear) [ 0.091971] NET: Registered protocol family 1 [ 0.092664] RPC: Registered named UNIX socket transport module. [ 0.092672] RPC: Registered udp transport module. [ 0.092676] RPC: Registered tcp transport module. [ 0.092678] RPC: Registered tcp NFSv4.1 backchannel transport module. [ 0.092688] NET: Registered protocol family 44 [ 0.092706] PCI: CLS 0 bytes, default 64 [ 0.092913] Trying to unpack rootfs image as initramfs... [ 1.100526] Freeing initrd memory: 21272K [ 1.101382] hw perfevents: enabled with armv8_cortex_a53 PMU driver, 7 counters available [ 1.105747] Initialise system trusted keyrings [ 1.106028] workingset: timestamp_bits=46 max_order=19 bucket_order=0 [ 1.111467] squashfs: version 4.0 (2009/01/31) Phillip Lougher [ 1.112273] NFS: Registering the id_resolver key type [ 1.112315] Key type id_resolver registered [ 1.112318] Key type id_legacy registered [ 1.112402] nfs4filelayout_init: NFSv4 File Layout Driver Registering... [ 1.112414] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering... [ 1.112701] 9p: Installing v9fs 9p2000 file system support [ 1.156063] Key type asymmetric registered [ 1.156077] Asymmetric key parser 'x509' registered [ 1.156145] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 243) [ 1.156320] io scheduler mq-deadline registered [ 1.156326] io scheduler kyber registered [ 1.159031] pinctrl-single f4000.pinctrl: 180 pins, size 720 [ 1.160380] pinctrl-single a40000.timesync-router: 512 pins, size 2048 [ 1.168835] Serial: 8250/16550 driver, 10 ports, IRQ sharing enabled [ 1.185832] brd: module loaded [ 1.194950] loop: module loaded [ 1.195792] megasas: 07.714.04.00-rc1 [ 1.200552] tun: Universal TUN/TAP device driver, 1.6 [ 1.201236] igbvf: Intel(R) Gigabit Virtual Function Network Driver [ 1.201244] igbvf: Copyright (c) 2009 - 2012 Intel Corporation. [ 1.201319] sky2: driver version 1.30 [ 1.202299] usbcore: registered new interface driver qmi_wwan [ 1.202567] VFIO - User Level meta-driver version: 0.3 [ 1.203773] usbcore: registered new interface driver cdc_wdm [ 1.203817] usbcore: registered new interface driver usb-storage [ 1.203910] usbcore: registered new interface driver usbserial_generic [ 1.203930] usbserial: USB Serial support registered for generic [ 1.203954] usbcore: registered new interface driver ftdi_sio [ 1.203970] usbserial: USB Serial support registered for FTDI USB Serial Device [ 1.203993] usbcore: registered new interface driver option [ 1.204010] usbserial: USB Serial support registered for GSM modem (1-port) [ 1.204639] i2c /dev entries driver [ 1.205787] device-mapper: ioctl: 4.43.0-ioctl (2020-10-01) initialised: dm-devel@redhat.com [ 1.206194] sdhci: Secure Digital Host Controller Interface driver [ 1.206198] sdhci: Copyright(c) Pierre Ossman [ 1.206788] sdhci-pltfm: SDHCI platform and OF driver helper [ 1.208234] SMCCC: SOC_ID: ARCH_SOC_ID not implemented, skipping .... [ 1.209430] optee: probing for conduit method. [ 1.209463] optee: revision 3.19 (4798e12d) [ 1.209911] optee: dynamic shared memory is enabled [ 1.210354] optee: initialized driver [ 1.213361] NET: Registered protocol family 10 [ 1.221993] Segment Routing with IPv6 [ 1.222007] RPL Segment Routing with IPv6 [ 1.222113] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver [ 1.223236] NET: Registered protocol family 17 [ 1.223356] Bridge firewalling registered [ 1.223771] 9pnet: Installing 9P2000 support [ 1.223883] Key type dns_resolver registered [ 1.224179] Loading compiled-in X.509 certificates [ 1.239681] ti-sci 44043000.dmsc: ABI: 3.1 (firmware rev 0x0008 '8.5.3--v08.05.03 (Chill Capybar') [ 1.287346] omap_i2c 20000000.i2c: bus 0 rev0.12 at 100 kHz [ 1.310089] rtc-ds1307 1-0032: 'wakeup-source' is set, request for an IRQ is disabled! [ 1.310726] rtc-ds1307 1-0032: registered as rtc0 [ 1.311166] rtc-ds1307 1-0032: setting system clock to 2023-05-16T01:23:55 UTC (1684200235) [ 1.313040] omap_i2c 20010000.i2c: bus 1 rev0.12 at 400 kHz [ 1.314322] omap_i2c 20020000.i2c: bus 2 rev0.12 at 100 kHz [ 1.314751] ti-sci-intr bus@f4000:bus@4000000:interrupt-controller1: Interrupt Router 5 domain created [ 1.314966] ti-sci-intr bus@f4000:interrupt-controller0: Interrupt Router 3 domain created [ 1.315305] ti-sci-inta 48000000.interrupt-controller: Interrupt Aggregator domain 28 created [ 1.328145] ti-bcdma 485c0100.dma-controller: Number of rings: 68 [ 1.329626] ti-bcdma 485c0100.dma-controller: Channels: 24 (bchan: 12, tchan: 6, rchan: 6) [ 1.331643] ti-pktdma 485c0000.dma-controller: Number of rings: 288 [ 1.340678] ti-pktdma 485c0000.dma-controller: Channels: 44 (tchan: 29, rchan: 15) [ 1.344271] printk: console [ttyS2] disabled [ 1.344355] 2800000.serial: ttyS2 at MMIO 0x2800000 (irq = 16, base_baud = 3000000) is a 8250 [ 1.344591] printk: console [ttyS2]: printing thread started [ 1.344604] printk: console [ttyS2] enabled [ 1.373365] 2810000.serial: ttyS3 at MMIO 0x2810000 (irq = 17, base_baud = 3000000) is a 8250 [ 1.381885] 2820000.serial: ttyS4 at MMIO 0x2820000 (irq = 18, base_baud = 3000000) is a 8250 [ 1.459220] spi spi0.0: setup: ignoring unsupported mode bits 200 [ 1.459576] spi-nor spi0.0: mx25l12805d (16384 Kbytes) [ 1.459622] 7 fixed-partitions partitions found on MTD device fc40000.spi.0 [ 1.459627] Creating 7 MTD partitions on "fc40000.spi.0": [ 1.459634] 0x000000100000-0x000000220000 : "A53 SPL" [ 1.461145] 0x000000220000-0x000000420000 : "u-boot 1" [ 1.462561] 0x000000460000-0x000000660000 : "u-boot 2" [ 1.463865] 0x0000006a0000-0x0000006b0000 : "u-boot env 1" [ 1.465129] 0x0000006c0000-0x0000006d0000 : "u-boot env 2" [ 1.466455] 0x000000700000-0x000000800000 : "syslog" [ 1.467755] 0x000000000000-0x000000100000 : "R5 SPL" [ 1.575877] tpm_tis_spi spi1.0: 2.0 TPM (device-id 0x1B, rev-id 16) [ 1.581134] tpm tpm0: A TPM error (256) occurred attempting the self test [ 1.581157] tpm tpm0: starting up the TPM manually [ 1.646387] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000 [ 1.656433] davinci_mdio 8000f00.mdio: phy[0]: device 8000f00.mdio:00, driver TI DP83867 [ 1.656449] davinci_mdio 8000f00.mdio: phy[1]: device 8000f00.mdio:01, driver TI DP83867 [ 1.656574] am65-cpsw-nuss 8000000.ethernet: initializing am65 cpsw nuss version 0x6BA00903, cpsw version 0x6BA80903 Ports: 3 quirks:00000002 [ 1.688228] am65-cpsw-nuss 8000000.ethernet: set new flow-id-base 16 [ 1.708915] am65-cpsw-nuss 8000000.ethernet: initialized cpsw ale version 1.4 [ 1.708926] am65-cpsw-nuss 8000000.ethernet: ALE Table size 512 [ 1.718489] am65-cpsw-nuss 8000000.ethernet: CPTS ver 0x4e8a010c, freq:500000000, add_val:1 [ 1.763365] am65-cpts 39000000.cpts: CPTS ver 0x4e8a010c, freq:500000000, add_val:1 [ 1.870523] cdns-torrent-phy f000000.serdes: Timeout waiting for CMN ready [ 1.870539] phy phy-f000000.serdes.2: phy poweron failed --> -110 [ 1.870655] cdns-usb3: probe of f400000.usb failed with error -110 [ 1.905363] mmc0: CQHCI version 5.10 [ 1.927209] mmc1: CQHCI version 5.10 [ 1.944330] mmc0: SDHCI controller on fa10000.mmc [fa10000.mmc] using ADMA 64-bit [ 1.999012] debugfs: Directory 'pd:114' with parent 'pm_genpd' already present! [ 2.001412] input: gpio-keys as /devices/platform/gpio-keys/input/input0 [ 2.360982] mmc0: Command Queue Engine enabled [ 2.361006] mmc0: new HS200 MMC card at address 0001 [ 2.361902] mmcblk0: mmc0:0001 DG4016 14.7 GiB [ 2.362162] mmcblk0boot0: mmc0:0001 DG4016 partition 1 4.00 MiB [ 2.362429] mmcblk0boot1: mmc0:0001 DG4016 partition 2 4.00 MiB [ 2.362649] mmcblk0rpmb: mmc0:0001 DG4016 partition 3 4.00 MiB, chardev (237:0) [ 2.365324] mmcblk0: p1 p2 p3 p4 [ 2.507410] ALSA device list: [ 2.507423] No soundcards found. [ 3.446444] sdhci-am654 fa00000.mmc: Power on failed [ 3.477042] mmc1: SDHCI controller on fa00000.mmc [fa00000.mmc] using ADMA 64-bit [ 3.478682] Freeing unused kernel memory: 1984K [ 3.501761] Run /init as init process [ 3.501769] with arguments: [ 3.501771] /init [ 3.501773] with environment: [ 3.501775] HOME=/ [ 3.501778] TERM=linux [ 5.443946] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: errors=remount-ro [ 5.444000] ext4 filesystem being mounted at /boot_device/p2 supports timestamps until 2038 (0x7fffffff) [ 5.452116] EXT4-fs (mmcblk0p3): mounted filesystem with ordered data mode. Opts: errors=remount-ro [ 5.463472] EXT4-fs (mmcblk0p4): mounted filesystem with ordered data mode. Opts: errors=remount-ro [ 5.463525] ext4 filesystem being mounted at /boot_device/p4 supports timestamps until 2038 (0x7fffffff) [ 5.998015] EXT4-fs (mmcblk0p1): mounted filesystem with ordered data mode. Opts: errors=remount-ro [ 5.998070] ext4 filesystem being mounted at /merged/boot_device/p1 supports timestamps until 2038 (0x7fffffff) [ 6.522042] systemd[1]: systemd 247.3-7+deb11u2 running in system mode. (+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +ZSTD +SECCOMP +BLKID +ELFUTILS +KMOD +IDN2 -IDN +PCRE2 default-hierarchy=unified) [ 6.522570] systemd[1]: Detected architecture arm64. [ 6.567559] systemd[1]: Set hostname to <moxa-imoxa1234567>. [ 7.160854] systemd[1]: /lib/systemd/system/cycletest.service:5: Standard output type syslog+console is obsolete, automatically updating to journal+console. Please update your unit file, and consider removing the setting altogether. [ 7.272841] systemd[1]: Queued start job for default target Graphical Interface. [ 7.275074] random: systemd: uninitialized urandom read (16 bytes read) [ 7.278924] systemd[1]: Created slice system-modprobe.slice. [ 7.309927] random: systemd: uninitialized urandom read (16 bytes read) [ 7.311672] systemd[1]: Created slice system-serial\x2dgetty.slice. [ 7.331907] random: systemd: uninitialized urandom read (16 bytes read) [ 7.333618] systemd[1]: Created slice User and Session Slice. [ 7.362398] systemd[1]: Started Dispatch Password Requests to Console Directory Watch. [ 7.386346] systemd[1]: Started Forward Password Requests to Wall Directory Watch. [ 7.410150] systemd[1]: Condition check resulted in Arbitrary Executable File Formats File System Automount Point being skipped. [ 7.410477] systemd[1]: Reached target Local Encrypted Volumes. [ 7.438189] systemd[1]: Reached target Paths. [ 7.458023] systemd[1]: Reached target Remote File Systems. [ 7.477978] systemd[1]: Reached target Slices. [ 7.490029] systemd[1]: Reached target Swap. [ 7.510002] systemd[1]: Reached target System Time Set. [ 7.532147] systemd[1]: Listening on Syslog Socket. [ 7.543515] systemd[1]: Listening on initctl Compatibility Named Pipe. [ 7.567717] systemd[1]: Listening on Journal Audit Socket. [ 7.590778] systemd[1]: Listening on Journal Socket (/dev/log). [ 7.614914] systemd[1]: Listening on Journal Socket. [ 7.628507] systemd[1]: Listening on udev Control Socket. [ 7.650704] systemd[1]: Listening on udev Kernel Socket. [ 7.678744] systemd[1]: Mounting Huge Pages File System... [ 7.695708] systemd[1]: Mounting POSIX Message Queue File System... [ 7.724887] systemd[1]: Mounting Kernel Debug File System... [ 7.737142] systemd[1]: Condition check resulted in Kernel Trace File System being skipped. [ 7.753195] systemd[1]: Starting Create list of static device nodes for the current kernel... [ 7.783139] systemd[1]: Starting Load Kernel Module configfs... [ 7.800976] systemd[1]: Starting Load Kernel Module drm... [ 7.817506] systemd[1]: Starting Load Kernel Module fuse... [ 7.838581] systemd[1]: Condition check resulted in Set Up Additional Binary Formats being skipped. [ 7.851459] fuse: init (API version 7.32) [ 7.855401] systemd[1]: Starting Journal Service... [ 7.883210] systemd[1]: Starting Load Kernel Modules... [ 7.899856] systemd[1]: Starting Remount Root and Kernel File Systems... [ 7.930757] systemd[1]: Starting Coldplug All udev Devices... [ 8.007947] systemd[1]: Mounted Huge Pages File System. [ 8.031148] systemd[1]: Mounted POSIX Message Queue File System. [ 8.055036] systemd[1]: Mounted Kernel Debug File System. [ 8.080250] systemd[1]: Finished Create list of static device nodes for the current kernel. [ 8.108061] systemd[1]: modprobe@configfs.service: Succeeded. [ 8.109410] systemd[1]: Finished Load Kernel Module configfs. [ 8.139865] systemd[1]: modprobe@drm.service: Succeeded. [ 8.141226] systemd[1]: Finished Load Kernel Module drm. [ 8.166901] systemd[1]: Started Journal Service. [ 8.288933] random: systemd: uninitialized urandom read (16 bytes read) [ 8.297812] random: systemd-journal: uninitialized urandom read (16 bytes read) [ 8.322547] random: systemd: uninitialized urandom read (16 bytes read) [ 8.360581] systemd-journald[473]: Received client request to flush runtime journal. [ 9.303315] random: systemd-journal: uninitialized urandom read (16 bytes read) [ 9.356293] random: systemd: uninitialized urandom read (16 bytes read) [ 9.405816] random: systemd-journal: uninitialized urandom read (16 bytes read) [ 10.421765] random: crng init done [ 10.421782] random: 95 urandom warning(s) missed due to ratelimiting [ 11.043369] tty_tiocsserial: 'setserial' is using deprecated serial flags (with no effect): 00000700 [ 12.683421] NET: Registered protocol family 42 [ 13.881741] TI DP83867 8000f00.mdio:00: attached PHY driver [TI DP83867] (mii_bus:phy_addr=8000f00.mdio:00, irq=POLL) [ 13.899731] am65-cpsw-nuss 8000000.ethernet eth0: Link is Down [ 13.966607] TI DP83867 8000f00.mdio:01: attached PHY driver [TI DP83867] (mii_bus:phy_addr=8000f00.mdio:01, irq=POLL) [ 13.985260] am65-cpsw-nuss 8000000.ethernet eth1: Link is Down [ 17.994456] am65-cpsw-nuss 8000000.ethernet eth0: Link is Up - 1Gbps/Full - flow control off [ 17.994540] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
gitlog
0b544f04aded phy: cadence-torrent: Add USXGMII(156.25MHz) + SGMII/QSGMII(100MHz) multilink config for TI J7200 c3457e974ab6 phy: cadence-torrent: Add USXGMII(156.25MHz) + SGMII/QSGMII(100MHz) multilink configuration 640149b54c1c phy: cadence-torrent: Add PCIe(100MHz) + USXGMII(156.25MHz) multilink configuration 10686c8094cd phy: cadence-torrent: use key:value pair table for all settings a651aba70e80 phy: cadence-torrent: Add single link USXGMII configuration for 156.25MHz refclk 980bf0a77de4 phy: cadence-torrent: Add USB + DP multilink configuration b00b3c878254 phy: cadence-torrent: Add PCIe + DP multilink configuration for 100MHz refclk 97ccd196a592 phy: cadence-torrent: Prepare driver for multilink DP support 498e1493eb13 phy: cadence-torrent: Add function to get PLL to be configured for DP ba8ed83d8969 phy: cadence-torrent: Check PIPE mode PHY status to be ready for operation b6ed4fc86d0d phy: cadence-torrent: Add debug information for PHY configuration 9fd51cbedf08 phy: cadence-torrent: Add separate functions for reusable code 4e33b989051e phy: cadence-torrent: Add PHY configuration for DP with 100MHz ref clock fc88e3c73e76 phy: cadence-torrent: Add PHY registers for DP in array format 1dcce77ebf16 phy: cadence-torrent: Configure PHY registers as a function of input reference clock rate 10ed0412be9c phy: cadence-torrent: Add enum for supported input reference clock frequencies 12aacbea895c phy: cadence-torrent: Reorder few functions to remove function declarations db074ab33408 phy: cadence-torrent: Remove use of CamelCase to fix checkpatch CHECK message 58425b93fc0f phy: cadence-torrent: Add delay for PIPE clock to be stable 3a75edddd85f phy: cadence-torrent: Explicitly request exclusive reset control f1a1377d5e35 phy: cadence-torrent: Do not configure SERDES if it's already configured 99ab60bc5d25 phy: cadence-torrent: Group reset APIs and clock APIs 67d9459d37bc phy: cadence-torrent: Use a common header file for Cadence SERDES 77e3bb5268b2 phy: cadence-torrent: Update PCIe + USB config for correct PLL1 clock ea9705e5f883 phy: cadence-torrent: Update SGMII/QSGMII configuration specific to TI 5d656d66c207 phy: cadence-torrent: Update PCIe + QSGMII config for correct PLL1 clock 5fb11ad6de35 phy: cadence-torrent: Add support to drive refclk out 5a602158b885 phy: cadence-torrent: Fix error code in cdns_torrent_phy_probe() 6fd428f78060 phy: cadence-torrent: Add USB + SGMII/QSGMII multilink configuration 4acea473f388 phy: cadence-torrent: Add PCIe + USB multilink configuration 9855d84b6bb1 phy: cadence-torrent: Add single link USB register sequences 9f33b76a3599 phy: cadence-torrent: Add single link SGMII/QSGMII register sequences d66a63666919 phy: cadence-torrent: Configure PHY_PLL_CFG as part of link_cmn_vals cd9aa9473747 phy: cadence-torrent: Add PHY link configuration sequences for single link 07084c956663 phy: cadence-torrent: Add clk changes for multilink configuration f0f1fa04581f phy: cadence-torrent: Update PHY reset for multilink configuration 6bcf3cb30037 phy: cadence-torrent: Add support for PHY multilink configuration 15c6a048e5f0 phy: cadence-torrent: Add PHY APB reset support 8e4c95b9c9f4 phy: cadence-torrent: Check cmn_ready assertion during PHY power on b54b47bd035b phy: cadence-torrent: Add single link PCIe support d09945eacad0 phy: cadence-torrent: Check total lane count for all subnodes is within limit 2e70c84995b2 phy: cadence-torrent: Add separate regmap functions for torrent and DP 7c12b46c6313 phy: cadence-torrent: Enable support for multiple subnodes 46d205af3015 phy: cadence-torrent: Use devm_platform_ioremap_resource() to get reg addresses 29d1fd2f2cc6 phy: cadence-torrent: Use of_device_get_match_data() to get driver data 57d39c7697ed phy: cadence: torrent: Constify regmap_config structs 0ffcc3787e34 phy: cadence-torrent: Set Torrent PHY attributes afa4ba059f1e phy: cadence-torrent: Add support for subnode bindings 597bf3f1a611 phy: cadence-torrent: Add platform dependent initialization structure cba472ecdb58 phy: cadence-torrent: Use regmap to read and write DPTX PHY registers 69d114acd654 phy: cadence-torrent: Use regmap to read and write Torrent PHY registers 572d659256eb phy: cadence-torrent: Implement PHY configure APIs e4b496a376f1 phy: cadence-torrent: Add 19.2 MHz reference clock support 21c79146a1bb phy: cadence-torrent: Refactor code for reusability f61b3aed2000 phy: cadence-torrent: Add wrapper for DPTX register access ccb1b89de37e phy: cadence-torrent: Add wrapper for PHY register access 92e9ccc6dc22 phy: cadence-torrent: Adopt Torrent nomenclature c589e7014ffc phy: cadence-dp: Rename to phy-cadence-torrent
Hi Sir,
We can also find the same error on the TI webpage
codes-torrent-phy f000000.serdes: Timeout waiting for CMN ready
[ 1.037916] Console: switching to mono frame buffer device 12x2 [ 1.067849] ssd1307fb 1-003c: fb0: Solomon SSD1307 framebuffer device registered, using 192 bytes of video memory [ 1.068096] omap_i2c 20010000.i2c: bus 1 rev0.12 at 400 kHz [ 1.069616] omap_i2c 20020000.i2c: bus 2 rev0.12 at 100 kHz [ 1.071115] omap_i2c 20030000.i2c: bus 3 rev0.12 at 100 kHz [ 1.071656] ti-sci-intr bus@f4000:bus@4000000:interrupt-controller1: Interrupt Router 5 domain created [ 1.071899] ti-sci-intr bus@f4000:interrupt-controller0: Interrupt Router 3 domain created [ 1.072337] ti-sci-inta 48000000.interrupt-controller: Interrupt Aggregator domain 28 created [ 1.086128] j721e-pcie f102000.pcie: host bridge /bus@f4000/pcie@f102000 ranges: [ 1.086188] j721e-pcie f102000.pcie: IO 0x0068001000..0x0068010fff -> 0x0068001000 [ 1.086217] j721e-pcie f102000.pcie: MEM 0x0068011000..0x006fffffff -> 0x0068011000 [ 1.086242] j721e-pcie f102000.pcie: IB MEM 0x0000000000..0x0fffffffff -> 0x0000000000 [ 1.187034] cdns-torrent-phy f000000.serdes: Timeout waiting for CMN ready [ 1.187057] phy phy-f000000.serdes.2: phy poweron failed --> -110 [ 1.187079] j721e-pcie f102000.pcie: Failed to init phy [ H1.187308] j721e-pcie: probe of f102000.pcie failed with error -110 [ 1.188235] ti-udma 485c0100.dma-controller: Number of rings: 68 [ 1.216711] printk: console [ttyS2]: printing thread started [ 1.189798] ti-udma 485c0100.dma-controller: Channels: 24 (bchan: 12, tchan: 6, rchan: 6) [ 1.216734] printk: console [ttyS2] enabled [ 1.216739] printk: bootconsole [ns16550a0] disabled [ 1.236927] printk: bootconsole [ns16550a0]: printing thread stopped [ 1.247552] spi-nor spi0.0: s28hs512t (65536 Kbytes) [ 1.269727] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode [ 1.306986] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000 [ 1.308792] davinci_mdio 8000f00.mdio: phy[0]: device 8000f00.mdio:00, driver TI DP83867 [ 1.308935] am65-cpsw-nuss 8000000.ethernet: initializing am65 cpsw nuss version 0x6BA00903, cpsw version 0x6BA80903 Ports: 3 quirks:00000002 [ 1.309160] am65-cpsw-nuss 8000000.ethernet: initialized cpsw ale version 1.4 [ 1.309168] am65-cpsw-nuss 8000000.ethernet: ALE Table size 512 [ 1.310073] pps pps0: new PPS source ptp0 [ 1.310489] am65-cpsw-nuss 8000000.ethernet: CPTS ver 0x4e8a010c, freq:500000000, add_val:1 pps:1 [ 1.351232] am65-cpsw-nuss 8000000.ethernet: set new flow-id-base 16 [ 1.377172] am65-cpts 39000000.cpts: CPTS ver 0x4e8a010c, freq:500000000, add_val:1 pps:0 [ 1.378186] k3-j72xx-soc-thermal b00000.temperature-sensor: invalid resource [ 1.378245] k3-j72xx-soc-thermal: probe of b00000.temperature-sensor failed with error -22 [ 1.382037] gpio-mux mux-controller: 2-way mux-controller registered
Thanks,
Sean
Hi Bin:
Sean is using the Debian, not sure the USB phy is chosen with the Cadence Phy.
Can you confirm if TI AM64 is okay to go with Cadence phy?
I know the default config using the xHCI USB phy.
BR Rio
Hi Bin:
From the Native log for the AM64, I saw the AM64 used the xHCI USB IP.
see the log as the below:
[ 10.845461] usbcore: registered new interface driver usbfs
[ 10.855860] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[ 10.887821] usbcore: registered new interface driver hub
[ 10.950171] usbcore: registered new device driver usb
[ 11.008825] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[ 11.134962] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller
[ 11.140741] xhci-hcd xhci-hcd.1.auto: new USB bus registered, assigned bus number 1
[ 11.156517] xhci-hcd xhci-hcd.1.auto: hcc params 0x200073c9 hci version 0x100 quirks 0x0000002000010010
[ 11.168820] xhci-hcd xhci-hcd.1.auto: irq 533, io mem 0x0f410000
[ 11.181099] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller
[ 11.190206] xhci-hcd xhci-hcd.1.auto: new USB bus registered, assigned bus number 2
[ 11.202326] xhci-hcd xhci-hcd.1.auto: Host supports USB 3.0 SuperSpeed
[ 11.213702] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.10
[ 11.231260] wl18xx_driver wl18xx.0.auto: Direct firmware load for ti-connectivity/wl1271-nvs.bin failed with error -2
[ 11.244189] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 11.278442] usb usb1: Product: xHCI Host Controller
[ 11.286698] usb usb1: Manufacturer: Linux 5.10.168-g2c23e6c538 xhci-hcd
[ OK ] Found device /dev/mmcblk1p1.[ 11.295867] usb usb1: SerialNumber: xhci-hcd.1.auto
[ 11.307697] hub 1-0:1.0: USB hub found
[ 11.311715] hub 1-0:1.0: 1 port detected
Starting File System Check on /dev/mmcblk1p1...
[ 11.330461] usb usb2: We don't know the algorithms for LPM for this host, disabling LPM.
[ 11.338828] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003, bcdDevice= 5.10
[ 11.356215] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 11.365452] usb usb2: Product: xHCI Host Controller
[ 11.374297] usb usb2: Manufacturer: Linux 5.10.168-g2c23e6c538 xhci-hcd
[ 11.381981] usb usb2: SerialNumber: xhci-hcd.1.auto
[ 11.387921] hub 2-0:1.0: USB hub found
[ 11.395110] hub 2-0:1.0: 1 port detected
But, according your E2E posted here.
You told:
Yes, AM62x USB IP implements xHCI,
but AM62x and AM65x use Designware IP,
while AM64x uses Cadence IP.
Can you clarify the AM64 USB IP?
BR Rio
Hi Rio,
Sean is using the Debian, not sure the USB phy is chosen with the Cadence Phy.
Can you please provide the details about how Cadence Phy is "chosen" in this customer project?
The context of "Cadence Phy" is about USB super-speed. Is the customer USB design using USB super-speed or not?
Rio,
You told:
Yes, AM62x USB IP implements xHCI,
but AM62x and AM65x use Designware IP,
while AM64x uses Cadence IP.
Can you clarify the AM64 USB IP?
Either Designware IP or Cadence IP implements both USB host controller (xHCI) and USB device controller. AM64x uses Cadence IP. Please let me know what else information you want to know.
Hi Bin:
Some questions:
#1. If AM64 used the Cadence IP, why the native SDK didn't popup the cadence IP driver?
#2. Okay, Customer PCB found if they saw this log: codes-torrent-phy f000000.serdes: Timeout waiting for CMN ready
The USB hub will not work at all.
This log comes from the Cadence-torrent.c.
Any idea for fix this?
Here is the git for cadence-torrent.c
BR Rio
Confirmed customer Debian Kernel log has this section.
But I cannot find this flag on the AM64 native config.
Please tell us how to fix this? (I mean: USB won't function while this log shows: codes-torrent-phy f000000.serdes: Timeout waiting for CMN ready
# PHY Subsystem
#
CONFIG_GENERIC_PHY=y
CONFIG_GENERIC_PHY_MIPI_DPHY=y
CONFIG_PHY_XGENE=y
# CONFIG_BCM_KONA_USB2_PHY is not set
CONFIG_PHY_CADENCE_TORRENT=y
CONFIG_PHY_CADENCE_DPHY=m
CONFIG_PHY_CADENCE_SIERRA=y
# CONFIG_PHY_CADENCE_SALVO is not set
# CONFIG_PHY_FSL_IMX8MQ_USB is not set
CONFIG_PHY_MIXEL_MIPI_DPHY=m
# CONFIG_PHY_PXA_28NM_HSIC is not set
# CONFIG_PHY_PXA_28NM_USB2 is not set
# CONFIG_PHY_CPCAP_USB is not set
# CONFIG_PHY_MAPPHONE_MDM6600 is not set
# CONFIG_PHY_OCELOT_SERDES is not set
CONFIG_PHY_AM654_SERDES=y
CONFIG_PHY_J721E_WIZ=y
CONFIG_OMAP_USB2=m
CONFIG_PHY_TI_GMII_SEL=y
# end of PHY Subsystem
Hi Bin:
May you help to check if internal Jira has this kind of issue?
How to fix this?
BR Rio
Hi Rio,
Please attach the file /sys/firmware/fdt from the customer's running board.
[ 1.187057] phy phy-f000000.serdes.2: phy poweron failed --> -110
[ 1.187079] j721e-pcie f102000.pcie: Failed to init phy
[ H1.187308] j721e-pcie: probe of f102000.pcie failed with error -110
Does this error message happen in USB working case? What is the output of "lspci" in the USB working case?
Hi Bin:
plz scroll up to find this post from Sean:
Hi Sir,
We can also find the same error on the TI webpage
codes-torrent-phy f000000.serdes: Timeout waiting for CMN ready
The log has these lines you asked:
[ 1.187034] cdns-torrent-phy f000000.serdes: Timeout waiting for CMN ready
[ 1.187057] phy phy-f000000.serdes.2: phy poweron failed --> -110
[ 1.187079] j721e-pcie f102000.pcie: Failed to init phy
[ H1.187308] j721e-pcie: probe of f102000.pcie failed with error -110
BR Rio
Rio,
We can also find the same error on the TI webpage
This link opens the CI/CD homepage, what am I supposed to look at there?
Please attach the board dtb file here for review.
Hi Bin,
There is the board dtb file:
/dts-v1/; / { model = "Moxa UC-1200A UC-2200A"; compatible = "ti,am642"; interrupt-parent = <0x01>; #address-cells = <0x02>; #size-cells = <0x02>; aliases { serial0 = "/bus@f4000/bus@4000000/serial@4a00000"; serial1 = "/bus@f4000/bus@4000000/serial@4a10000"; serial2 = "/bus@f4000/serial@2800000"; serial3 = "/bus@f4000/serial@2810000"; serial4 = "/bus@f4000/serial@2820000"; serial5 = "/bus@f4000/serial@2830000"; serial6 = "/bus@f4000/serial@2840000"; serial7 = "/bus@f4000/serial@2850000"; serial8 = "/bus@f4000/serial@2860000"; ethernet0 = "/bus@f4000/ethernet@8000000/ethernet-ports/port@1"; ethernet1 = "/bus@f4000/ethernet@8000000/ethernet-ports/port@2"; mmc0 = "/bus@f4000/mmc@fa10000"; mmc1 = "/bus@f4000/mmc@fa00000"; }; chosen { stdout-path = "serial2:115200n8"; bootargs = "console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000"; kaslr-seed = <0xfeedbeef 0x4d4f5841>; }; firmware { optee { compatible = "linaro,optee-tz"; method = "smc"; }; psci { compatible = "arm,psci-1.0"; method = "smc"; }; }; timer-cl0-cpu0 { compatible = "arm,armv8-timer"; interrupts = <0x01 0x0d 0x08 0x01 0x0e 0x08 0x01 0x0b 0x08 0x01 0x0a 0x08>; }; pmu { compatible = "arm,cortex-a53-pmu"; interrupts = <0x01 0x07 0x04>; }; bus@f4000 { compatible = "simple-bus"; #address-cells = <0x02>; #size-cells = <0x02>; ranges = <0x00 0xf4000 0x00 0xf4000 0x00 0x2d0 0x00 0x600000 0x00 0x600000 0x00 0x1100 0x00 0xa40000 0x00 0xa40000 0x00 0x800 0x00 0xb00000 0x00 0xb00000 0x00 0x2400 0x00 0x1000000 0x00 0x1000000 0x00 0x2330400 0x00 0x8000000 0x00 0x8000000 0x00 0x200000 0x00 0xd000000 0x00 0xd000000 0x00 0x800000 0x00 0xe000000 0x00 0xe000000 0x00 0x100 0x00 0xe010000 0x00 0xe010000 0x00 0x100 0x00 0xf000000 0x00 0xf000000 0x00 0xc44200 0x00 0x20000000 0x00 0x20000000 0x00 0xa008000 0x00 0x30000000 0x00 0x30000000 0x00 0xbc100 0x00 0x37000000 0x00 0x37000000 0x00 0x40000 0x00 0x39000000 0x00 0x39000000 0x00 0x400 0x00 0x3b000000 0x00 0x3b000000 0x00 0x400 0x00 0x3cd00000 0x00 0x3cd00000 0x00 0x200 0x00 0x3f004000 0x00 0x3f004000 0x00 0x400 0x00 0x40900000 0x00 0x40900000 0x00 0x30000 0x00 0x43000000 0x00 0x43000000 0x00 0x20000 0x00 0x44043000 0x00 0x44043000 0x00 0xfe0 0x00 0x48000000 0x00 0x48000000 0x00 0x6400000 0x00 0x50000000 0x00 0x50000000 0x00 0x8000000 0x00 0x60000000 0x00 0x60000000 0x00 0x8000000 0x00 0x68000000 0x00 0x68000000 0x00 0x8000000 0x00 0x70000000 0x00 0x70000000 0x00 0x200000 0x00 0x78000000 0x00 0x78000000 0x00 0x800000 0x06 0x00 0x06 0x00 0x01 0x00 0x05 0x00 0x05 0x00 0x01 0x00 0x00 0x4000000 0x00 0x4000000 0x00 0x1ff1400>; bus@4000000 { compatible = "simple-bus"; #address-cells = <0x02>; #size-cells = <0x02>; ranges = <0x00 0xb00000 0x00 0xb00000 0x00 0x2400 0x00 0x4000000 0x00 0x4000000 0x00 0x1ff1400>; serial@4a00000 { compatible = "ti,am64-uart\0ti,am654-uart"; reg = <0x00 0x4a00000 0x00 0x100>; reg-shift = <0x02>; reg-io-width = <0x04>; interrupts = <0x00 0xb9 0x04>; clock-frequency = <0x2dc6c00>; current-speed = <0x1c200>; power-domains = <0x02 0x95 0x01>; clocks = <0x03 0x95 0x00>; clock-names = "fclk"; status = "disabled"; }; serial@4a10000 { compatible = "ti,am64-uart\0ti,am654-uart"; reg = <0x00 0x4a10000 0x00 0x100>; reg-shift = <0x02>; reg-io-width = <0x04>; interrupts = <0x00 0xba 0x04>; clock-frequency = <0x2dc6c00>; current-speed = <0x1c200>; power-domains = <0x02 0xa0 0x01>; clocks = <0x03 0xa0 0x00>; clock-names = "fclk"; status = "disabled"; }; i2c@4900000 { compatible = "ti,am64-i2c\0ti,omap4-i2c"; reg = <0x00 0x4900000 0x00 0x100>; interrupts = <0x00 0x6b 0x04>; #address-cells = <0x01>; #size-cells = <0x00>; power-domains = <0x02 0x6a 0x01>; clocks = <0x03 0x6a 0x02>; clock-names = "fck"; status = "disabled"; }; i2c@4910000 { compatible = "ti,am64-i2c\0ti,omap4-i2c"; reg = <0x00 0x4910000 0x00 0x100>; interrupts = <0x00 0x6c 0x04>; #address-cells = <0x01>; #size-cells = <0x00>; power-domains = <0x02 0x6b 0x01>; clocks = <0x03 0x6b 0x02>; clock-names = "fck"; status = "disabled"; }; spi@4b00000 { compatible = "ti,am654-mcspi\0ti,omap4-mcspi"; reg = <0x00 0x4b00000 0x00 0x400>; interrupts = <0x00 0xb0 0x04>; #address-cells = <0x01>; #size-cells = <0x00>; power-domains = <0x02 0x93 0x01>; clocks = <0x03 0x93 0x00>; status = "disabled"; }; spi@4b10000 { compatible = "ti,am654-mcspi\0ti,omap4-mcspi"; reg = <0x00 0x4b10000 0x00 0x400>; interrupts = <0x00 0xb1 0x04>; #address-cells = <0x01>; #size-cells = <0x00>; power-domains = <0x02 0x94 0x01>; clocks = <0x03 0x94 0x00>; status = "disabled"; }; interrupt-controller1 { compatible = "ti,sci-intr"; ti,intr-trigger-type = <0x01>; interrupt-controller; interrupt-parent = <0x01>; #interrupt-cells = <0x01>; ti,sci = <0x04>; ti,sci-dev-id = <0x05>; ti,interrupt-ranges = <0x00 0x68 0x04>; phandle = <0x05>; }; gpio@4201000 { compatible = "ti,am64-gpio\0keystone-gpio"; reg = <0x00 0x4201000 0x00 0x100>; gpio-controller; #gpio-cells = <0x02>; interrupt-parent = <0x05>; interrupts = <0x1e 0x1f>; interrupt-controller; #interrupt-cells = <0x02>; ti,ngpio = <0x17>; ti,davinci-gpio-unbanked = <0x00>; power-domains = <0x02 0x4f 0x01>; clocks = <0x03 0x4f 0x00>; clock-names = "gpio"; status = "reserved"; }; m4fss@5000000 { compatible = "ti,am64-m4fss"; reg = <0x00 0x5000000 0x00 0x30000 0x00 0x5040000 0x00 0x10000>; reg-names = "iram\0dram"; ti,sci = <0x04>; ti,sci-dev-id = <0x09>; ti,sci-proc-ids = <0x18 0xff>; resets = <0x06 0x09 0x01>; firmware-name = "am64-mcu-m4f0_0-fw"; mboxes = <0x07 0x08>; memory-region = <0x09 0x0a>; }; temperature-sensor@b00000 { compatible = "ti,j7200-vtm"; reg = <0x00 0xb00000 0x00 0x400 0x00 0xb01000 0x00 0x400 0x00 0x43000300 0x00 0x10>; power-domains = <0x02 0x5f 0x01>; #thermal-sensor-cells = <0x01>; phandle = <0x40>; }; }; sram@70000000 { compatible = "mmio-sram"; reg = <0x00 0x70000000 0x00 0x200000>; #address-cells = <0x01>; #size-cells = <0x01>; ranges = <0x00 0x00 0x70000000 0x200000>; atf-sram@1c0000 { reg = <0x1c0000 0x20000>; }; dmsc-sram@1e0000 { reg = <0x1e0000 0x1c000>; }; sproxy-sram@1fc000 { reg = <0x1fc000 0x4000>; }; }; syscon@43000000 { compatible = "syscon\0simple-mfd"; reg = <0x00 0x43000000 0x00 0x20000>; #address-cells = <0x01>; #size-cells = <0x01>; ranges = <0x00 0x00 0x43000000 0x20000>; phandle = <0x1e>; mux { compatible = "mmio-mux"; #mux-control-cells = <0x01>; mux-reg-masks = <0x4080 0x03>; idle-states = <0x01>; }; chipid@14 { compatible = "ti,am654-chipid"; reg = <0x14 0x04>; }; phy@4044 { compatible = "ti,am654-phy-gmii-sel"; reg = <0x4044 0x08>; #phy-cells = <0x01>; phandle = <0x1d>; }; clock@4140 { compatible = "ti,am64-epwm-tbclk\0syscon"; reg = <0x4130 0x04>; #clock-cells = <0x01>; phandle = <0x3e>; }; }; interrupt-controller@1800000 { compatible = "arm,gic-v3"; #address-cells = <0x02>; #size-cells = <0x02>; ranges; #interrupt-cells = <0x03>; interrupt-controller; reg = <0x00 0x1800000 0x00 0x10000 0x00 0x1840000 0x00 0xc0000>; interrupts = <0x01 0x09 0x04>; phandle = <0x01>; msi-controller@1820000 { compatible = "arm,gic-v3-its"; reg = <0x00 0x1820000 0x00 0x10000>; socionext,synquacer-pre-its = <0x1000000 0x400000>; msi-controller; #msi-cells = <0x01>; phandle = <0x33>; }; }; dmss { compatible = "simple-mfd"; #address-cells = <0x02>; #size-cells = <0x02>; dma-ranges; ranges; ti,sci-dev-id = <0x19>; mailbox@4d000000 { compatible = "ti,am654-secure-proxy"; #mbox-cells = <0x01>; reg-names = "target_data\0rt\0scfg"; reg = <0x00 0x4d000000 0x00 0x80000 0x00 0x4a600000 0x00 0x80000 0x00 0x4a400000 0x00 0x80000>; interrupt-names = "rx_012"; interrupts = <0x00 0x22 0x04>; phandle = <0x0e>; }; interrupt-controller@48000000 { compatible = "ti,sci-inta"; reg = <0x00 0x48000000 0x00 0x100000>; #address-cells = <0x00>; #interrupt-cells = <0x00>; interrupt-controller; interrupt-parent = <0x01>; msi-controller; ti,sci = <0x04>; ti,sci-dev-id = <0x1c>; ti,interrupt-ranges = <0x04 0x44 0x24>; ti,unmapped-event-sources = <0x0b 0x0c>; phandle = <0x0d>; }; dma-controller@485c0100 { compatible = "ti,am64-dmss-bcdma"; reg = <0x00 0x485c0100 0x00 0x100 0x00 0x4c000000 0x00 0x20000 0x00 0x4a820000 0x00 0x20000 0x00 0x4aa40000 0x00 0x20000 0x00 0x4bc00000 0x00 0x100000>; reg-names = "gcfg\0bchanrt\0rchanrt\0tchanrt\0ringrt"; msi-parent = <0x0d>; #dma-cells = <0x03>; ti,sci = <0x04>; ti,sci-dev-id = <0x1a>; ti,sci-rm-range-bchan = <0x20>; ti,sci-rm-range-rchan = <0x21>; ti,sci-rm-range-tchan = <0x22>; phandle = <0x0b>; }; dma-controller@485c0000 { compatible = "ti,am64-dmss-pktdma"; reg = <0x00 0x485c0000 0x00 0x100 0x00 0x4a800000 0x00 0x20000 0x00 0x4aa00000 0x00 0x40000 0x00 0x4b800000 0x00 0x400000>; reg-names = "gcfg\0rchanrt\0tchanrt\0ringrt"; msi-parent = <0x0d>; #dma-cells = <0x02>; ti,sci = <0x04>; ti,sci-dev-id = <0x1e>; ti,sci-rm-range-tchan = <0x23 0x24 0x25 0x26 0x27 0x28>; ti,sci-rm-range-tflow = <0x10 0x11 0x12 0x13 0x14 0x15>; ti,sci-rm-range-rchan = <0x29 0x2b 0x2d 0x2f 0x31 0x33 0x35 0x37>; ti,sci-rm-range-rflow = <0x2a 0x2c 0x2e 0x32 0x36 0x38>; phandle = <0x0c>; }; }; dmsc@44043000 { compatible = "ti,k2g-sci"; ti,host-id = <0x0c>; mbox-names = "rx\0tx"; mboxes = <0x0e 0x0c 0x0e 0x0d>; reg-names = "debug_messages"; reg = <0x00 0x44043000 0x00 0xfe0>; phandle = <0x04>; power-controller { compatible = "ti,sci-pm-domain"; #power-domain-cells = <0x02>; phandle = <0x02>; }; clocks { compatible = "ti,k2g-sci-clk"; #clock-cells = <0x02>; phandle = <0x03>; }; reset-controller { compatible = "ti,sci-reset"; #reset-cells = <0x02>; phandle = <0x06>; }; }; pinctrl@f4000 { compatible = "pinctrl-single"; reg = <0x00 0xf4000 0x00 0x2d0>; #pinctrl-cells = <0x01>; pinctrl-single,register-width = <0x20>; pinctrl-single,function-mask = <0xffffffff>; push-button-pins-default { pinctrl-single,pins = <0x1c4 0x50007>; phandle = <0x44>; }; main_gpio0-pins-default { pinctrl-single,pins = <0x84 0x50007 0x88 0x50007 0x90 0x40007 0x94 0x50007 0x98 0x40007 0x9c 0x50007 0xa0 0x40007 0xa4 0x40007 0xa8 0x40007 0xac 0x40007 0xb0 0x50007 0xb4 0x50007>; phandle = <0x17>; }; main_gpio1-pins-default { pinctrl-single,pins = <0x16c 0x50007 0x170 0x50007 0x174 0x20007 0x178 0x50007 0x180 0x50007 0x188 0x50007 0x18c 0x50007 0x190 0x50007 0x194 0x50007 0x198 0x50007 0x19c 0x40007 0x1a0 0x60007 0x1cc 0x50007 0x1d0 0x40007 0x1d4 0x50007 0x1d8 0x50007 0x1f4 0x50007 0x250 0x50007 0x254 0x50007 0x25c 0x50007 0x278 0x50007>; phandle = <0x18>; }; tag-pins-default { pinctrl-single,pins = <0x78 0x60000>; }; main-spi0-pins-default { pinctrl-single,pins = <0x210 0x50000 0x214 0x10000 0x218 0x50000 0x208 0x10000>; phandle = <0x14>; }; spi1-pins-default { pinctrl-single,pins = <0x224 0x50000 0x21c 0x50000 0x220 0x50000 0x228 0x50000 0x22c 0x50000>; phandle = <0x15>; }; main-mmc1-pins-default { pinctrl-single,pins = <0x294 0x50000 0x290 0x50000 0x28c 0x50000 0x288 0x50000 0x284 0x50000 0x280 0x50000 0x27c 0x50000 0x298 0x50000 0x29c 0x50000>; phandle = <0x19>; }; main-uart0-pins-default { pinctrl-single,pins = <0x238 0x50000 0x23c 0x10000 0x230 0x50000 0x234 0x10000>; phandle = <0x0f>; }; main_uart1-pins-default { pinctrl-single,pins = <0x248 0x50000 0x24c 0x10000 0x240 0x50000 0x244 0x10000>; phandle = <0x10>; }; main_uart2-pins-default { pinctrl-single,pins = <0x160 0x5000a 0x168 0x1000a 0x184 0x5000a 0x164 0x1000a>; phandle = <0x11>; }; main_uart3-pins-default { pinctrl-single,pins; phandle = <0x12>; }; main-usb0-pins-default { pinctrl-single,pins = <0x2a8 0x10000>; phandle = <0x35>; }; main-i2c1-pins-default { pinctrl-single,pins = <0x268 0x60000 0x26c 0x60000>; phandle = <0x13>; }; mdio1-pins-default { pinctrl-single,pins = <0x1fc 0x10004 0x1f8 0x50004>; phandle = <0x1a>; }; rgmii1-pins-default { pinctrl-single,pins = <0x11c 0x50004 0x128 0x50004 0x150 0x50004 0x154 0x50004 0xd8 0x50004 0xcc 0x50004 0x124 0x10004 0x12c 0x10004 0x130 0x10004 0x14c 0x10004 0xe0 0x10004 0xdc 0x10004>; phandle = <0x1b>; }; rgmii2-pins-default { pinctrl-single,pins = <0x108 0x50004 0x10c 0x50004 0x110 0x50004 0x114 0x50004 0x120 0x50004 0x118 0x50004 0x134 0x10004 0x138 0x10004 0x13c 0x10004 0x140 0x10004 0x148 0x10004 0x144 0x10004>; phandle = <0x1c>; }; ospi0-pins-default { pinctrl-single,pins = <0x00 0x10000 0x2c 0x10000 0x30 0x10000 0x34 0x10000 0x0c 0x50000 0x10 0x50000 0x14 0x50000 0x18 0x50000 0x1c 0x50000 0x20 0x50000 0x24 0x50000 0x28 0x50000 0x08 0x50000 0x04 0x50000 0x38 0x50002>; phandle = <0x37>; }; main-ecap0-pins-default { pinctrl-single,pins = <0x270 0x50000>; phandle = <0x3f>; }; main-wlan-en-pins-default { pinctrl-single,pins = <0xc4 0x20007>; phandle = <0x4a>; }; main-com8-ls-en-pins-default { pinctrl-single,pins = <0xfc 0x10007>; phandle = <0x48>; }; }; serial@2800000 { compatible = "ti,am64-uart\0ti,am654-uart"; reg = <0x00 0x2800000 0x00 0x100>; reg-shift = <0x02>; reg-io-width = <0x04>; interrupts = <0x00 0xb2 0x04>; clock-frequency = <0x2dc6c00>; current-speed = <0x1c200>; power-domains = <0x02 0x92 0x01>; clocks = <0x03 0x92 0x00>; clock-names = "fclk"; pinctrl-names = "default"; pinctrl-0 = <0x0f>; }; serial@2810000 { compatible = "ti,am64-uart\0ti,am654-uart"; reg = <0x00 0x2810000 0x00 0x100>; reg-shift = <0x02>; reg-io-width = <0x04>; interrupts = <0x00 0xb3 0x04>; clock-frequency = <0x2dc6c00>; current-speed = <0x1c200>; power-domains = <0x02 0x98 0x01>; clocks = <0x03 0x98 0x00>; clock-names = "fclk"; status = "okay"; pinctrl-names = "default"; pinctrl-0 = <0x10>; }; serial@2820000 { compatible = "ti,am64-uart\0ti,am654-uart"; reg = <0x00 0x2820000 0x00 0x100>; reg-shift = <0x02>; reg-io-width = <0x04>; interrupts = <0x00 0xb4 0x04>; clock-frequency = <0x2dc6c00>; current-speed = <0x1c200>; power-domains = <0x02 0x99 0x01>; clocks = <0x03 0x99 0x00>; clock-names = "fclk"; status = "okay"; pinctrl-names = "default"; pinctrl-0 = <0x11>; }; serial@2830000 { compatible = "ti,am64-uart\0ti,am654-uart"; reg = <0x00 0x2830000 0x00 0x100>; reg-shift = <0x02>; reg-io-width = <0x04>; interrupts = <0x00 0xb5 0x04>; clock-frequency = <0x2dc6c00>; current-speed = <0x1c200>; power-domains = <0x02 0x9a 0x01>; clocks = <0x03 0x9a 0x00>; clock-names = "fclk"; status = "disabled"; pinctrl-names = "default"; pinctrl-0 = <0x12>; }; serial@2840000 { compatible = "ti,am64-uart\0ti,am654-uart"; reg = <0x00 0x2840000 0x00 0x100>; reg-shift = <0x02>; reg-io-width = <0x04>; interrupts = <0x00 0xb6 0x04>; clock-frequency = <0x2dc6c00>; current-speed = <0x1c200>; power-domains = <0x02 0x9b 0x01>; clocks = <0x03 0x9b 0x00>; clock-names = "fclk"; status = "disabled"; }; serial@2850000 { compatible = "ti,am64-uart\0ti,am654-uart"; reg = <0x00 0x2850000 0x00 0x100>; reg-shift = <0x02>; reg-io-width = <0x04>; interrupts = <0x00 0xb7 0x04>; clock-frequency = <0x2dc6c00>; current-speed = <0x1c200>; power-domains = <0x02 0x9c 0x01>; clocks = <0x03 0x9c 0x00>; clock-names = "fclk"; status = "disabled"; }; serial@2860000 { compatible = "ti,am64-uart\0ti,am654-uart"; reg = <0x00 0x2860000 0x00 0x100>; reg-shift = <0x02>; reg-io-width = <0x04>; interrupts = <0x00 0xb8 0x04>; clock-frequency = <0x2dc6c00>; current-speed = <0x1c200>; power-domains = <0x02 0x9e 0x01>; clocks = <0x03 0x9e 0x00>; clock-names = "fclk"; status = "disabled"; }; i2c@20000000 { compatible = "ti,am64-i2c\0ti,omap4-i2c"; reg = <0x00 0x20000000 0x00 0x100>; interrupts = <0x00 0xa1 0x04>; #address-cells = <0x01>; #size-cells = <0x00>; power-domains = <0x02 0x66 0x01>; clocks = <0x03 0x66 0x02>; clock-names = "fck"; }; i2c@20010000 { compatible = "ti,am64-i2c\0ti,omap4-i2c"; reg = <0x00 0x20010000 0x00 0x100>; interrupts = <0x00 0xa2 0x04>; #address-cells = <0x01>; #size-cells = <0x00>; power-domains = <0x02 0x67 0x01>; clocks = <0x03 0x67 0x02>; clock-names = "fck"; pinctrl-names = "default"; pinctrl-0 = <0x13>; clock-frequency = <0x61a80>; gpio@32 { compatible = "epson,rx8130"; reg = <0x32>; wakeup-source; }; }; i2c@20020000 { compatible = "ti,am64-i2c\0ti,omap4-i2c"; reg = <0x00 0x20020000 0x00 0x100>; interrupts = <0x00 0xa3 0x04>; #address-cells = <0x01>; #size-cells = <0x00>; power-domains = <0x02 0x68 0x01>; clocks = <0x03 0x68 0x02>; clock-names = "fck"; }; i2c@20030000 { compatible = "ti,am64-i2c\0ti,omap4-i2c"; reg = <0x00 0x20030000 0x00 0x100>; interrupts = <0x00 0xa4 0x04>; #address-cells = <0x01>; #size-cells = <0x00>; power-domains = <0x02 0x69 0x01>; clocks = <0x03 0x69 0x02>; clock-names = "fck"; status = "disabled"; }; spi@20100000 { compatible = "ti,am654-mcspi\0ti,omap4-mcspi"; reg = <0x00 0x20100000 0x00 0x400>; interrupts = <0x00 0xac 0x04>; #address-cells = <0x01>; #size-cells = <0x00>; power-domains = <0x02 0x8d 0x01>; clocks = <0x03 0x8d 0x00>; dmas = <0x0c 0xc300 0x00 0x0c 0x4300 0x00>; dma-names = "tx0\0rx0"; status = "okay"; pinctrl-names = "default"; pinctrl-0 = <0x14>; ti,pindir-d0-out-d1-in = <0x01>; ti,spi-num-cs = <0x01>; tpm_tis@0 { compatible = "tcg,tpm_tis-spi"; spi-max-frequency = <0x7a120>; reg = <0x00>; }; }; spi@20110000 { compatible = "ti,am654-mcspi\0ti,omap4-mcspi"; reg = <0x00 0x20110000 0x00 0x400>; interrupts = <0x00 0xad 0x04>; #address-cells = <0x01>; #size-cells = <0x00>; power-domains = <0x02 0x8e 0x01>; clocks = <0x03 0x8e 0x00>; pinctrl-names = "default"; pinctrl-0 = <0x15>; }; spi@20120000 { compatible = "ti,am654-mcspi\0ti,omap4-mcspi"; reg = <0x00 0x20120000 0x00 0x400>; interrupts = <0x00 0xae 0x04>; #address-cells = <0x01>; #size-cells = <0x00>; power-domains = <0x02 0x8f 0x01>; clocks = <0x03 0x8f 0x00>; }; spi@20130000 { compatible = "ti,am654-mcspi\0ti,omap4-mcspi"; reg = <0x00 0x20130000 0x00 0x400>; interrupts = <0x00 0x6d 0x04>; #address-cells = <0x01>; #size-cells = <0x00>; power-domains = <0x02 0x90 0x01>; clocks = <0x03 0x90 0x00>; }; spi@20140000 { compatible = "ti,am654-mcspi\0ti,omap4-mcspi"; reg = <0x00 0x20140000 0x00 0x400>; interrupts = <0x00 0xaf 0x04>; #address-cells = <0x01>; #size-cells = <0x00>; power-domains = <0x02 0x91 0x01>; clocks = <0x03 0x91 0x00>; }; interrupt-controller0 { compatible = "ti,sci-intr"; ti,intr-trigger-type = <0x01>; interrupt-controller; interrupt-parent = <0x01>; #interrupt-cells = <0x01>; ti,sci = <0x04>; ti,sci-dev-id = <0x03>; ti,interrupt-ranges = <0x00 0x20 0x10>; phandle = <0x16>; }; gpio@600000 { compatible = "ti,am64-gpio\0ti,keystone-gpio"; reg = <0x00 0x600000 0x00 0x100>; gpio-controller; #gpio-cells = <0x02>; interrupt-parent = <0x16>; interrupts = <0xbe 0xbf 0xc0 0xc1 0xc2 0xc3>; interrupt-controller; #interrupt-cells = <0x02>; ti,ngpio = <0x57>; ti,davinci-gpio-unbanked = <0x00>; power-domains = <0x02 0x4d 0x01>; clocks = <0x03 0x4d 0x00>; clock-names = "gpio"; pinctrl-names = "default"; pinctrl-0 = <0x17>; phandle = <0x49>; }; gpio@601000 { compatible = "ti,am64-gpio\0ti,keystone-gpio"; reg = <0x00 0x601000 0x00 0x100>; gpio-controller; #gpio-cells = <0x02>; interrupt-parent = <0x16>; interrupts = <0xb4 0xb5 0xb6 0xb7 0xb8 0xb9>; interrupt-controller; #interrupt-cells = <0x02>; ti,ngpio = <0x58>; ti,davinci-gpio-unbanked = <0x00>; power-domains = <0x02 0x4e 0x01>; clocks = <0x03 0x4e 0x00>; clock-names = "gpio"; pinctrl-names = "default"; pinctrl-0 = <0x18>; phandle = <0x45>; }; mmc@fa10000 { compatible = "ti,am64-sdhci-8bit"; reg = <0x00 0xfa10000 0x00 0x260 0x00 0xfa18000 0x00 0x134>; interrupts = <0x00 0x85 0x04>; power-domains = <0x02 0x39 0x01>; clocks = <0x03 0x39 0x00 0x03 0x39 0x01>; clock-names = "clk_ahb\0clk_xin"; mmc-ddr-1_8v; mmc-hs200-1_8v; ti,trm-icp = <0x02>; ti,otap-del-sel-legacy = <0x00>; ti,otap-del-sel-mmc-hs = <0x00>; ti,otap-del-sel-ddr52 = <0x06>; ti,otap-del-sel-hs200 = <0x07>; status = "okay"; bus-width = <0x08>; non-removable; cap-power-off-card; keep-power-in-suspend; ti,driver-strength-ohm = <0x32>; }; mmc@fa00000 { compatible = "ti,am64-sdhci-4bit"; reg = <0x00 0xfa00000 0x00 0x260 0x00 0xfa08000 0x00 0x134>; interrupts = <0x00 0x86 0x04>; power-domains = <0x02 0x3a 0x01>; clocks = <0x03 0x3a 0x03 0x03 0x3a 0x04>; clock-names = "clk_ahb\0clk_xin"; ti,trm-icp = <0x02>; ti,otap-del-sel-legacy = <0x00>; ti,otap-del-sel-sd-hs = <0x0f>; ti,otap-del-sel-sdr12 = <0x0f>; ti,otap-del-sel-sdr25 = <0x0f>; ti,otap-del-sel-sdr50 = <0x0c>; ti,otap-del-sel-sdr104 = <0x06>; ti,otap-del-sel-ddr50 = <0x09>; ti,clkbuf-sel = <0x07>; status = "okay"; pinctrl-names = "default"; bus-width = <0x04>; pinctrl-0 = <0x19>; ti,driver-strength-ohm = <0x32>; disable-wp; }; ethernet@8000000 { compatible = "ti,am642-cpsw-nuss"; #address-cells = <0x02>; #size-cells = <0x02>; reg = <0x00 0x8000000 0x00 0x200000>; reg-names = "cpsw_nuss"; ranges = <0x00 0x00 0x00 0x8000000 0x00 0x200000>; clocks = <0x03 0x0d 0x00>; assigned-clocks = <0x03 0x0d 0x01>; assigned-clock-parents = <0x03 0x0d 0x09>; clock-names = "fck"; power-domains = <0x02 0x0d 0x01>; dmas = <0x0c 0xc500 0x0f 0x0c 0xc501 0x0f 0x0c 0xc502 0x0f 0x0c 0xc503 0x0f 0x0c 0xc504 0x0f 0x0c 0xc505 0x0f 0x0c 0xc506 0x0f 0x0c 0xc507 0x0f 0x0c 0x4500 0x0f>; dma-names = "tx0\0tx1\0tx2\0tx3\0tx4\0tx5\0tx6\0tx7\0rx"; pinctrl-names = "default"; pinctrl-0 = <0x1a 0x1b 0x1c>; ethernet-ports { #address-cells = <0x01>; #size-cells = <0x00>; port@1 { reg = <0x01>; ti,mac-only; label = "port1"; phys = <0x1d 0x01>; mac-address = [00 00 00 00 00 00]; ti,syscon-efuse = <0x1e 0x200>; phy-mode = "rgmii-rxid"; phy-handle = <0x1f>; }; port@2 { reg = <0x02>; ti,mac-only; label = "port2"; phys = <0x1d 0x02>; mac-address = [00 00 00 00 00 00]; phy-mode = "rgmii-rxid"; phy-handle = <0x20>; }; }; mdio@f00 { compatible = "ti,cpsw-mdio\0ti,davinci_mdio"; reg = <0x00 0xf00 0x00 0x100>; #address-cells = <0x01>; #size-cells = <0x00>; clocks = <0x03 0x0d 0x00>; clock-names = "fck"; bus_freq = <0xf4240>; ethernet-phy@0 { reg = <0x00>; ti,rx-internal-delay = <0x07>; ti,fifo-depth = <0x01>; phandle = <0x1f>; }; ethernet-phy@1 { reg = <0x01>; ti,rx-internal-delay = <0x07>; ti,fifo-depth = <0x01>; phandle = <0x20>; }; }; cpts@3d000 { compatible = "ti,j721e-cpts"; reg = <0x00 0x3d000 0x00 0x400>; clocks = <0x03 0x0d 0x01>; clock-names = "cpts"; interrupts-extended = <0x01 0x00 0x66 0x04>; interrupt-names = "cpts"; ti,cpts-ext-ts-inputs = <0x04>; ti,cpts-periodic-outputs = <0x02>; ti,pps = <0x07 0x01>; }; }; cpts@39000000 { compatible = "ti,j721e-cpts"; reg = <0x00 0x39000000 0x00 0x400>; reg-names = "cpts"; power-domains = <0x02 0x54 0x01>; clocks = <0x03 0x54 0x00>; clock-names = "cpts"; assigned-clocks = <0x03 0x54 0x00>; assigned-clock-parents = <0x03 0x54 0x08>; interrupts = <0x00 0x61 0x04>; interrupt-names = "cpts"; ti,cpts-periodic-outputs = <0x06>; ti,cpts-ext-ts-inputs = <0x08>; }; timesync-router@a40000 { compatible = "pinctrl-single"; reg = <0x00 0xa40000 0x00 0x800>; #pinctrl-cells = <0x01>; pinctrl-single,register-width = <0x20>; pinctrl-single,function-mask = <0x107ff>; pinctrl-names = "default"; pinctrl-0 = <0x21>; mcu-cpts-pps { pinctrl-single,pins = <0x98 0x10016 0x68 0x10016>; phandle = <0x21>; }; }; spinlock@2a000000 { compatible = "ti,am64-hwspinlock"; reg = <0x00 0x2a000000 0x00 0x1000>; #hwlock-cells = <0x01>; }; mailbox@29020000 { compatible = "ti,am64-mailbox"; reg = <0x00 0x29020000 0x00 0x200>; interrupts = <0x00 0x50 0x04 0x00 0x51 0x04>; #mbox-cells = <0x01>; ti,mbox-num-users = <0x04>; ti,mbox-num-fifos = <0x10>; phandle = <0x22>; mbox-main-r5fss0-core0 { ti,mbox-rx = <0x00 0x00 0x02>; ti,mbox-tx = <0x01 0x00 0x02>; phandle = <0x23>; }; mbox-main-r5fss0-core1 { ti,mbox-rx = <0x02 0x00 0x02>; ti,mbox-tx = <0x03 0x00 0x02>; phandle = <0x26>; }; }; mailbox@29030000 { compatible = "ti,am64-mailbox"; reg = <0x00 0x29030000 0x00 0x200>; interrupts = <0x00 0x52 0x04 0x00 0x53 0x04>; #mbox-cells = <0x01>; ti,mbox-num-users = <0x04>; ti,mbox-num-fifos = <0x10>; status = "disabled"; }; mailbox@29040000 { compatible = "ti,am64-mailbox"; reg = <0x00 0x29040000 0x00 0x200>; interrupts = <0x00 0x54 0x04 0x00 0x55 0x04>; #mbox-cells = <0x01>; ti,mbox-num-users = <0x04>; ti,mbox-num-fifos = <0x10>; phandle = <0x29>; mbox-main-r5fss1-core0 { ti,mbox-rx = <0x00 0x00 0x02>; ti,mbox-tx = <0x01 0x00 0x02>; phandle = <0x2a>; }; mbox-main-r5fss1-core1 { ti,mbox-rx = <0x02 0x00 0x02>; ti,mbox-tx = <0x03 0x00 0x02>; phandle = <0x2d>; }; }; mailbox@29050000 { compatible = "ti,am64-mailbox"; reg = <0x00 0x29050000 0x00 0x200>; interrupts = <0x00 0x56 0x04 0x00 0x57 0x04>; #mbox-cells = <0x01>; ti,mbox-num-users = <0x04>; ti,mbox-num-fifos = <0x10>; status = "disabled"; }; mailbox@29060000 { compatible = "ti,am64-mailbox"; reg = <0x00 0x29060000 0x00 0x200>; interrupts = <0x00 0x4c 0x04>; #mbox-cells = <0x01>; ti,mbox-num-users = <0x04>; ti,mbox-num-fifos = <0x10>; phandle = <0x07>; mbox-m4-0 { ti,mbox-rx = <0x00 0x00 0x02>; ti,mbox-tx = <0x01 0x00 0x02>; phandle = <0x08>; }; }; mailbox@29070000 { compatible = "ti,am64-mailbox"; reg = <0x00 0x29070000 0x00 0x200>; interrupts = <0x00 0x4d 0x04>; #mbox-cells = <0x01>; ti,mbox-num-users = <0x04>; ti,mbox-num-fifos = <0x10>; status = "disabled"; }; r5fss@78000000 { compatible = "ti,am64-r5fss"; ti,cluster-mode = <0x00>; #address-cells = <0x01>; #size-cells = <0x01>; ranges = <0x78000000 0x00 0x78000000 0x10000 0x78100000 0x00 0x78100000 0x10000 0x78200000 0x00 0x78200000 0x8000 0x78300000 0x00 0x78300000 0x8000>; power-domains = <0x02 0x77 0x01>; r5f@78000000 { compatible = "ti,am64-r5f"; reg = <0x78000000 0x10000 0x78100000 0x10000>; reg-names = "atcm\0btcm"; ti,sci = <0x04>; ti,sci-dev-id = <0x79>; ti,sci-proc-ids = <0x01 0xff>; resets = <0x06 0x79 0x01>; firmware-name = "am64-main-r5f0_0-fw"; ti,atcm-enable = <0x01>; ti,btcm-enable = <0x01>; ti,loczrama = <0x01>; mboxes = <0x22 0x23>; memory-region = <0x24 0x25>; }; r5f@78200000 { compatible = "ti,am64-r5f"; reg = <0x78200000 0x8000 0x78300000 0x8000>; reg-names = "atcm\0btcm"; ti,sci = <0x04>; ti,sci-dev-id = <0x7a>; ti,sci-proc-ids = <0x02 0xff>; resets = <0x06 0x7a 0x01>; firmware-name = "am64-main-r5f0_1-fw"; ti,atcm-enable = <0x01>; ti,btcm-enable = <0x01>; ti,loczrama = <0x01>; mboxes = <0x22 0x26>; memory-region = <0x27 0x28>; }; }; r5fss@78400000 { compatible = "ti,am64-r5fss"; ti,cluster-mode = <0x00>; #address-cells = <0x01>; #size-cells = <0x01>; ranges = <0x78400000 0x00 0x78400000 0x10000 0x78500000 0x00 0x78500000 0x10000 0x78600000 0x00 0x78600000 0x8000 0x78700000 0x00 0x78700000 0x8000>; power-domains = <0x02 0x78 0x01>; r5f@78400000 { compatible = "ti,am64-r5f"; reg = <0x78400000 0x10000 0x78500000 0x10000>; reg-names = "atcm\0btcm"; ti,sci = <0x04>; ti,sci-dev-id = <0x7b>; ti,sci-proc-ids = <0x06 0xff>; resets = <0x06 0x7b 0x01>; firmware-name = "am64-main-r5f1_0-fw"; ti,atcm-enable = <0x01>; ti,btcm-enable = <0x01>; ti,loczrama = <0x01>; mboxes = <0x29 0x2a>; memory-region = <0x2b 0x2c>; }; r5f@78600000 { compatible = "ti,am64-r5f"; reg = <0x78600000 0x8000 0x78700000 0x8000>; reg-names = "atcm\0btcm"; ti,sci = <0x04>; ti,sci-dev-id = <0x7c>; ti,sci-proc-ids = <0x07 0xff>; resets = <0x06 0x7c 0x01>; firmware-name = "am64-main-r5f1_1-fw"; ti,atcm-enable = <0x01>; ti,btcm-enable = <0x01>; ti,loczrama = <0x01>; mboxes = <0x29 0x2d>; memory-region = <0x2e 0x2f>; }; }; wiz@f000000 { compatible = "ti,am64-wiz-10g"; #address-cells = <0x01>; #size-cells = <0x01>; power-domains = <0x02 0xa2 0x01>; clocks = <0x03 0xa2 0x00 0x03 0xa2 0x01 0x30>; clock-names = "fck\0core_ref_clk\0ext_ref_clk"; num-lanes = <0x01>; #reset-cells = <0x01>; #clock-cells = <0x01>; ranges = <0xf000000 0x00 0xf000000 0x10000>; assigned-clocks = <0x03 0xa2 0x01>; assigned-clock-parents = <0x03 0xa2 0x05>; status = "okay"; phandle = <0x31>; serdes@f000000 { compatible = "ti,j721e-serdes-10g"; reg = <0xf000000 0x10000>; reg-names = "torrent_phy"; resets = <0x31 0x00>; reset-names = "torrent_reset"; clocks = <0x31 0x00 0x31 0x10>; clock-names = "refclk\0phy_en_refclk"; assigned-clocks = <0x31 0x00 0x31 0x01 0x31 0x02>; assigned-clock-parents = <0x03 0xa2 0x01 0x03 0xa2 0x01 0x03 0xa2 0x01>; #address-cells = <0x01>; #size-cells = <0x00>; #clock-cells = <0x01>; phandle = <0x32>; phy@0 { reg = <0x00>; cdns,num-lanes = <0x01>; #phy-cells = <0x00>; cdns,phy-type = <0x04>; resets = <0x31 0x01>; phandle = <0x36>; }; }; }; pcie@f102000 { compatible = "ti,am64-pcie-host\0ti,j721e-pcie-host"; reg = <0x00 0xf102000 0x00 0x1000 0x00 0xf100000 0x00 0x400 0x00 0xd000000 0x00 0x800000 0x00 0x68000000 0x00 0x1000>; reg-names = "intd_cfg\0user_cfg\0reg\0cfg"; interrupt-names = "link_state"; interrupts = <0x00 0xcb 0x01>; device_type = "pci"; ti,syscon-pcie-ctrl = <0x1e 0x4070>; max-link-speed = <0x02>; num-lanes = <0x01>; power-domains = <0x02 0x72 0x01>; clocks = <0x03 0x72 0x00 0x32 0x00>; clock-names = "fck\0pcie_refclk"; #address-cells = <0x03>; #size-cells = <0x02>; bus-range = <0x00 0xff>; cdns,no-bar-match-nbits = <0x40>; vendor-id = <0x104c>; device-id = <0xb010>; msi-map = <0x00 0x33 0x00 0x10000>; ranges = <0x1000000 0x00 0x68001000 0x00 0x68001000 0x00 0x10000 0x2000000 0x00 0x68011000 0x00 0x68011000 0x00 0x7fef000>; dma-ranges = <0x2000000 0x00 0x00 0x00 0x00 0x10 0x00>; #interrupt-cells = <0x01>; interrupt-map-mask = <0x00 0x00 0x00 0x07>; interrupt-map = <0x00 0x00 0x00 0x01 0x34 0x00 0x00 0x00 0x00 0x02 0x34 0x00 0x00 0x00 0x00 0x03 0x34 0x00 0x00 0x00 0x00 0x04 0x34 0x00>; status = "disabled"; interrupt-controller { interrupt-controller; #interrupt-cells = <0x01>; interrupt-parent = <0x01>; interrupts = <0x00 0xca 0x01>; phandle = <0x34>; }; }; pcie-ep@f102000 { compatible = "ti,am64-pcie-ep\0ti,j721e-pcie-ep"; reg = <0x00 0xf102000 0x00 0x1000 0x00 0xf100000 0x00 0x400 0x00 0xd000000 0x00 0x800000 0x00 0x68000000 0x00 0x8000000>; reg-names = "intd_cfg\0user_cfg\0reg\0mem"; interrupt-names = "link_state"; interrupts = <0x00 0xcb 0x01>; ti,syscon-pcie-ctrl = <0x1e 0x4070>; max-link-speed = <0x02>; num-lanes = <0x01>; power-domains = <0x02 0x72 0x01>; clocks = <0x03 0x72 0x00>; clock-names = "fck"; max-functions = [01]; status = "disabled"; }; cdns-usb@f900000 { compatible = "ti,am64-usb"; reg = <0x00 0xf900000 0x00 0x100>; power-domains = <0x02 0xa1 0x01>; clocks = <0x03 0xa1 0x09 0x03 0xa1 0x01>; clock-names = "ref\0lpm"; assigned-clocks = <0x03 0xa1 0x09>; assigned-clock-parents = <0x03 0xa1 0x0a>; #address-cells = <0x02>; #size-cells = <0x02>; ranges; ti,vbus-divider; ti,usb2-only; usb@f400000 { compatible = "cdns,usb3"; reg = <0x00 0xf400000 0x00 0x10000 0x00 0xf410000 0x00 0x10000 0x00 0xf420000 0x00 0x10000>; reg-names = "otg\0xhci\0dev"; interrupts = <0x00 0xbc 0x04 0x00 0xc2 0x04 0x00 0xc4 0x04>; interrupt-names = "host\0peripheral\0otg"; maximum-speed = "super-speed"; dr_mode = "host"; pinctrl-names = "default"; pinctrl-0 = <0x35>; phys = <0x36>; phy-names = "cdns3,usb3-phy"; }; }; tscadc@28001000 { compatible = "ti,am654-tscadc\0ti,am3359-tscadc"; reg = <0x00 0x28001000 0x00 0x1000>; interrupts = <0x00 0x60 0x04>; power-domains = <0x02 0x00 0x01>; clocks = <0x03 0x00 0x00>; assigned-clocks = <0x03 0x00 0x00>; assigned-clock-parents = <0x03 0x00 0x03>; assigned-clock-rates = <0x3938700>; clock-names = "adc_tsc_fck"; status = "disabled"; adc { #io-channel-cells = <0x01>; compatible = "ti,am654-adc\0ti,am3359-adc"; }; }; bus@fc00000 { compatible = "simple-bus"; reg = <0x00 0xfc00000 0x00 0x70000>; #address-cells = <0x02>; #size-cells = <0x02>; ranges; spi@fc40000 { compatible = "ti,am654-ospi\0cdns,qspi-nor"; reg = <0x00 0xfc40000 0x00 0x100 0x05 0x00 0x01 0x00>; interrupts = <0x00 0x8b 0x04>; cdns,fifo-depth = <0x100>; cdns,fifo-width = <0x04>; cdns,trigger-address = <0x00>; #address-cells = <0x01>; #size-cells = <0x00>; clocks = <0x03 0x4b 0x06>; assigned-clocks = <0x03 0x4b 0x06>; assigned-clock-parents = <0x03 0x4b 0x07>; assigned-clock-rates = <0x9ef21aa>; power-domains = <0x02 0x4b 0x01>; pinctrl-names = "default"; pinctrl-0 = <0x37>; flash@0 { compatible = "jedec,spi-nor"; reg = <0x00>; spi-tx-bus-width = <0x04>; spi-rx-bus-width = <0x04>; spi-max-frequency = <0x17d7840>; cdns,tshsl-ns = <0x3c>; cdns,tsd2d-ns = <0x3c>; cdns,tchsh-ns = <0x3c>; cdns,tslch-ns = <0x3c>; cdns,read-delay = <0x04>; cdns,phy-mode; #address-cells = <0x01>; #size-cells = <0x01>; partitions { compatible = "fixed-partitions"; #address-cells = <0x01>; #size-cells = <0x01>; partitions@0 { label = "A53 SPL"; reg = <0x100000 0x120000>; }; partitions@1 { label = "u-boot 1"; reg = <0x220000 0x200000>; }; partitions@2 { label = "u-boot 2"; reg = <0x460000 0x200000>; }; partitions@3 { label = "u-boot env 1"; reg = <0x6a0000 0x10000>; }; partitions@4 { label = "u-boot env 2"; reg = <0x6c0000 0x10000>; }; partitions@5 { label = "syslog"; reg = <0x700000 0x100000>; }; partitions@6 { label = "R5 SPL"; reg = <0x00 0x100000>; }; }; }; }; }; crypto@40900000 { compatible = "ti,am64-sa2ul"; reg = <0x00 0x40900000 0x00 0x1200>; power-domains = <0x02 0x85 0x00>; #address-cells = <0x02>; #size-cells = <0x02>; ranges = <0x00 0x40900000 0x00 0x40900000 0x00 0x30000>; dmas = <0x0c 0xc001 0x00 0x0c 0x4002 0x00 0x0c 0x4003 0x00>; dma-names = "tx\0rx1\0rx2"; rng@40910000 { compatible = "inside-secure,safexcel-eip76"; reg = <0x00 0x40910000 0x00 0x7d>; interrupts = <0x00 0xa8 0x04>; clocks = <0x03 0x85 0x01>; status = "disabled"; }; }; can@20701000 { compatible = "bosch,m_can"; reg = <0x00 0x20701000 0x00 0x200 0x00 0x20708000 0x00 0x8000>; reg-names = "m_can\0message_ram"; power-domains = <0x02 0x62 0x01>; clocks = <0x03 0x62 0x05 0x03 0x62 0x00>; clock-names = "hclk\0cclk"; interrupts = <0x00 0x9b 0x04 0x00 0x9c 0x04>; interrupt-names = "int0\0int1"; bosch,mram-cfg = <0x00 0x80 0x40 0x40 0x40 0x40 0x20 0x20>; status = "disabled"; }; can@20711000 { compatible = "bosch,m_can"; reg = <0x00 0x20711000 0x00 0x200 0x00 0x20718000 0x00 0x8000>; reg-names = "m_can\0message_ram"; power-domains = <0x02 0x63 0x01>; clocks = <0x03 0x63 0x05 0x03 0x63 0x00>; clock-names = "hclk\0cclk"; interrupts = <0x00 0x9e 0x04 0x00 0x9f 0x04>; interrupt-names = "int0\0int1"; bosch,mram-cfg = <0x00 0x80 0x40 0x40 0x40 0x40 0x20 0x20>; status = "disabled"; }; watchdog@e000000 { compatible = "ti,j7-rti-wdt"; reg = <0x00 0xe000000 0x00 0x100>; clocks = <0x03 0x7d 0x00>; power-domains = <0x02 0x7d 0x01>; assigned-clocks = <0x03 0x7d 0x00>; assigned-clock-parents = <0x03 0x7d 0x02>; status = "disabled"; }; watchdog@e010000 { compatible = "ti,j7-rti-wdt"; reg = <0x00 0xe010000 0x00 0x100>; clocks = <0x03 0x7e 0x00>; power-domains = <0x02 0x7e 0x01>; assigned-clocks = <0x03 0x7e 0x00>; assigned-clock-parents = <0x03 0x7e 0x02>; status = "disabled"; }; icssg@30000000 { compatible = "ti,am642-icssg"; reg = <0x00 0x30000000 0x00 0x80000>; power-domains = <0x02 0x51 0x01>; #address-cells = <0x01>; #size-cells = <0x01>; ranges = <0x00 0x00 0x30000000 0x80000>; memories@0 { reg = <0x00 0x2000 0x2000 0x2000 0x10000 0x10000>; reg-names = "dram0\0dram1\0shrdram2"; }; cfg@26000 { compatible = "ti,pruss-cfg\0syscon"; reg = <0x26000 0x200>; #address-cells = <0x01>; #size-cells = <0x01>; ranges = <0x00 0x26000 0x2000>; clocks { #address-cells = <0x01>; #size-cells = <0x00>; coreclk-mux@3c { reg = <0x3c>; #clock-cells = <0x00>; clocks = <0x03 0x51 0x00 0x03 0x51 0x14>; assigned-clocks = <0x38>; assigned-clock-parents = <0x03 0x51 0x14>; phandle = <0x38>; }; iepclk-mux@30 { reg = <0x30>; #clock-cells = <0x00>; clocks = <0x03 0x51 0x03 0x38>; assigned-clocks = <0x39>; assigned-clock-parents = <0x38>; phandle = <0x39>; }; }; }; iep@2e000 { compatible = "ti,am654-icss-iep"; reg = <0x2e000 0x1000>; clocks = <0x39>; }; iep@2f000 { compatible = "ti,am654-icss-iep"; reg = <0x2f000 0x1000>; clocks = <0x39>; }; mii-rt@32000 { compatible = "ti,pruss-mii\0syscon"; reg = <0x32000 0x100>; }; mii-g-rt@33000 { compatible = "ti,pruss-mii-g\0syscon"; reg = <0x33000 0x1000>; }; interrupt-controller@20000 { compatible = "ti,icssg-intc"; reg = <0x20000 0x2000>; interrupt-controller; #interrupt-cells = <0x03>; interrupts = <0x00 0x58 0x04 0x00 0x59 0x04 0x00 0x5a 0x04 0x00 0x5b 0x04 0x00 0x5c 0x04 0x00 0x5d 0x04 0x00 0x5e 0x04 0x00 0x5f 0x04>; interrupt-names = "host_intr0\0host_intr1\0host_intr2\0host_intr3\0host_intr4\0host_intr5\0host_intr6\0host_intr7"; phandle = <0x3a>; }; pru@34000 { compatible = "ti,am642-pru"; reg = <0x34000 0x3000 0x22000 0x100 0x22400 0x100>; reg-names = "iram\0control\0debug"; firmware-name = "am64x-pru0_0-fw"; interrupt-parent = <0x3a>; interrupts = <0x10 0x02 0x02>; interrupt-names = "vring"; }; rtu@4000 { compatible = "ti,am642-rtu"; reg = <0x4000 0x2000 0x23000 0x100 0x23400 0x100>; reg-names = "iram\0control\0debug"; firmware-name = "am64x-rtu0_0-fw"; interrupt-parent = <0x3a>; interrupts = <0x14 0x04 0x04>; interrupt-names = "vring"; }; txpru@a000 { compatible = "ti,am642-tx-pru"; reg = <0xa000 0x1800 0x25000 0x100 0x25400 0x100>; reg-names = "iram\0control\0debug"; firmware-name = "am64x-txpru0_0-fw"; }; pru@38000 { compatible = "ti,am642-pru"; reg = <0x38000 0x3000 0x24000 0x100 0x24400 0x100>; reg-names = "iram\0control\0debug"; firmware-name = "am64x-pru0_1-fw"; interrupt-parent = <0x3a>; interrupts = <0x12 0x03 0x03>; interrupt-names = "vring"; }; rtu@6000 { compatible = "ti,am642-rtu"; reg = <0x6000 0x2000 0x23800 0x100 0x23c00 0x100>; reg-names = "iram\0control\0debug"; firmware-name = "am64x-rtu0_1-fw"; interrupt-parent = <0x3a>; interrupts = <0x16 0x05 0x05>; interrupt-names = "vring"; }; txpru@c000 { compatible = "ti,am642-tx-pru"; reg = <0xc000 0x1800 0x25800 0x100 0x25c00 0x100>; reg-names = "iram\0control\0debug"; firmware-name = "am64x-txpru0_1-fw"; }; mdio@32400 { compatible = "ti,davinci_mdio"; reg = <0x32400 0x100>; clocks = <0x03 0x3e 0x03>; clock-names = "fck"; #address-cells = <0x01>; #size-cells = <0x00>; bus_freq = <0xf4240>; status = "disabled"; }; }; icssg@30080000 { compatible = "ti,am642-icssg"; reg = <0x00 0x30080000 0x00 0x80000>; power-domains = <0x02 0x52 0x01>; #address-cells = <0x01>; #size-cells = <0x01>; ranges = <0x00 0x00 0x30080000 0x80000>; memories@0 { reg = <0x00 0x2000 0x2000 0x2000 0x10000 0x10000>; reg-names = "dram0\0dram1\0shrdram2"; }; cfg@26000 { compatible = "ti,pruss-cfg\0syscon"; reg = <0x26000 0x200>; #address-cells = <0x01>; #size-cells = <0x01>; ranges = <0x00 0x26000 0x2000>; clocks { #address-cells = <0x01>; #size-cells = <0x00>; coreclk-mux@3c { reg = <0x3c>; #clock-cells = <0x00>; clocks = <0x03 0x52 0x00 0x03 0x52 0x14>; assigned-clocks = <0x3b>; assigned-clock-parents = <0x03 0x52 0x14>; phandle = <0x3b>; }; iepclk-mux@30 { reg = <0x30>; #clock-cells = <0x00>; clocks = <0x03 0x52 0x03 0x3b>; assigned-clocks = <0x3c>; assigned-clock-parents = <0x3b>; phandle = <0x3c>; }; }; }; iep@2e000 { compatible = "ti,am654-icss-iep"; reg = <0x2e000 0x1000>; clocks = <0x3c>; }; iep@2f000 { compatible = "ti,am654-icss-iep"; reg = <0x2f000 0x1000>; clocks = <0x3c>; }; mii-rt@32000 { compatible = "ti,pruss-mii\0syscon"; reg = <0x32000 0x100>; }; mii-g-rt@33000 { compatible = "ti,pruss-mii-g\0syscon"; reg = <0x33000 0x1000>; }; interrupt-controller@20000 { compatible = "ti,icssg-intc"; reg = <0x20000 0x2000>; interrupt-controller; #interrupt-cells = <0x03>; interrupts = <0x00 0xd8 0x04 0x00 0xd9 0x04 0x00 0xda 0x04 0x00 0xdb 0x04 0x00 0xdc 0x04 0x00 0xdd 0x04 0x00 0xde 0x04 0x00 0xdf 0x04>; interrupt-names = "host_intr0\0host_intr1\0host_intr2\0host_intr3\0host_intr4\0host_intr5\0host_intr6\0host_intr7"; phandle = <0x3d>; }; pru@34000 { compatible = "ti,am642-pru"; reg = <0x34000 0x4000 0x22000 0x100 0x22400 0x100>; reg-names = "iram\0control\0debug"; firmware-name = "am64x-pru1_0-fw"; interrupt-parent = <0x3d>; interrupts = <0x10 0x02 0x02>; interrupt-names = "vring"; }; rtu@4000 { compatible = "ti,am642-rtu"; reg = <0x4000 0x2000 0x23000 0x100 0x23400 0x100>; reg-names = "iram\0control\0debug"; firmware-name = "am64x-rtu1_0-fw"; interrupt-parent = <0x3d>; interrupts = <0x14 0x04 0x04>; interrupt-names = "vring"; }; txpru@a000 { compatible = "ti,am642-tx-pru"; reg = <0xa000 0x1800 0x25000 0x100 0x25400 0x100>; reg-names = "iram\0control\0debug"; firmware-name = "am64x-txpru1_0-fw"; }; pru@38000 { compatible = "ti,am642-pru"; reg = <0x38000 0x4000 0x24000 0x100 0x24400 0x100>; reg-names = "iram\0control\0debug"; firmware-name = "am64x-pru1_1-fw"; interrupt-parent = <0x3d>; interrupts = <0x12 0x03 0x03>; interrupt-names = "vring"; }; rtu@6000 { compatible = "ti,am642-rtu"; reg = <0x6000 0x2000 0x23800 0x100 0x23c00 0x100>; reg-names = "iram\0control\0debug"; firmware-name = "am64x-rtu1_1-fw"; interrupt-parent = <0x3d>; interrupts = <0x16 0x05 0x05>; interrupt-names = "vring"; }; txpru@c000 { compatible = "ti,am642-tx-pru"; reg = <0xc000 0x1800 0x25800 0x100 0x25c00 0x100>; reg-names = "iram\0control\0debug"; firmware-name = "am64x-txpru1_1-fw"; }; mdio@32400 { compatible = "ti,davinci_mdio"; reg = <0x32400 0x100>; #address-cells = <0x01>; #size-cells = <0x00>; clocks = <0x03 0x52 0x00>; clock-names = "fck"; bus_freq = <0xf4240>; status = "disabled"; }; }; pwm@23000000 { compatible = "ti,am64-epwm\0ti,am3352-ehrpwm"; #pwm-cells = <0x03>; reg = <0x00 0x23000000 0x00 0x100>; power-domains = <0x02 0x56 0x01>; clocks = <0x3e 0x00 0x03 0x56 0x00>; clock-names = "tbclk\0fck"; }; pwm@23010000 { compatible = "ti,am64-epwm\0ti,am3352-ehrpwm"; #pwm-cells = <0x03>; reg = <0x00 0x23010000 0x00 0x100>; power-domains = <0x02 0x57 0x01>; clocks = <0x3e 0x01 0x03 0x57 0x00>; clock-names = "tbclk\0fck"; }; pwm@23020000 { compatible = "ti,am64-epwm\0ti,am3352-ehrpwm"; #pwm-cells = <0x03>; reg = <0x00 0x23020000 0x00 0x100>; power-domains = <0x02 0x58 0x01>; clocks = <0x3e 0x02 0x03 0x58 0x00>; clock-names = "tbclk\0fck"; }; pwm@23030000 { compatible = "ti,am64-epwm\0ti,am3352-ehrpwm"; #pwm-cells = <0x03>; reg = <0x00 0x23030000 0x00 0x100>; power-domains = <0x02 0x59 0x01>; clocks = <0x3e 0x03 0x03 0x59 0x00>; clock-names = "tbclk\0fck"; }; pwm@23040000 { compatible = "ti,am64-epwm\0ti,am3352-ehrpwm"; #pwm-cells = <0x03>; reg = <0x00 0x23040000 0x00 0x100>; power-domains = <0x02 0x5a 0x01>; clocks = <0x3e 0x04 0x03 0x5a 0x00>; clock-names = "tbclk\0fck"; }; pwm@23050000 { compatible = "ti,am64-epwm\0ti,am3352-ehrpwm"; #pwm-cells = <0x03>; reg = <0x00 0x23050000 0x00 0x100>; power-domains = <0x02 0x5b 0x01>; clocks = <0x3e 0x05 0x03 0x5b 0x00>; clock-names = "tbclk\0fck"; }; pwm@23060000 { compatible = "ti,am64-epwm\0ti,am3352-ehrpwm"; #pwm-cells = <0x03>; reg = <0x00 0x23060000 0x00 0x100>; power-domains = <0x02 0x5c 0x01>; clocks = <0x3e 0x06 0x03 0x5c 0x00>; clock-names = "tbclk\0fck"; }; pwm@23070000 { compatible = "ti,am64-epwm\0ti,am3352-ehrpwm"; #pwm-cells = <0x03>; reg = <0x00 0x23070000 0x00 0x100>; power-domains = <0x02 0x5d 0x01>; clocks = <0x3e 0x07 0x03 0x5d 0x00>; clock-names = "tbclk\0fck"; }; pwm@23080000 { compatible = "ti,am64-epwm\0ti,am3352-ehrpwm"; #pwm-cells = <0x03>; reg = <0x00 0x23080000 0x00 0x100>; power-domains = <0x02 0x5e 0x01>; clocks = <0x3e 0x08 0x03 0x5e 0x00>; clock-names = "tbclk\0fck"; }; pwm@23100000 { compatible = "ti,am64-ecap\0ti,am3352-ecap"; #pwm-cells = <0x03>; reg = <0x00 0x23100000 0x00 0x60>; power-domains = <0x02 0x33 0x01>; clocks = <0x03 0x33 0x00>; clock-names = "fck"; pinctrl-names = "default"; pinctrl-0 = <0x3f>; }; pwm@23110000 { compatible = "ti,am64-ecap\0ti,am3352-ecap"; #pwm-cells = <0x03>; reg = <0x00 0x23110000 0x00 0x60>; power-domains = <0x02 0x34 0x01>; clocks = <0x03 0x34 0x00>; clock-names = "fck"; }; pwm@23120000 { compatible = "ti,am64-ecap\0ti,am3352-ecap"; #pwm-cells = <0x03>; reg = <0x00 0x23120000 0x00 0x60>; power-domains = <0x02 0x35 0x01>; clocks = <0x03 0x35 0x00>; clock-names = "fck"; }; memory-controller@3b000000 { compatible = "ti,am64-gpmc"; power-domains = <0x02 0x50 0x01>; clocks = <0x03 0x50 0x00>; clock-names = "fck"; reg = <0x00 0x3b000000 0x00 0x400 0x00 0x50000000 0x00 0x8000000>; reg-names = "cfg\0data"; interrupts = <0x00 0x6a 0x04>; gpmc,num-cs = <0x03>; gpmc,num-waitpins = <0x02>; #address-cells = <0x02>; #size-cells = <0x01>; interrupt-controller; #interrupt-cells = <0x02>; gpio-controller; #gpio-cells = <0x02>; }; ecc@25010000 { compatible = "ti,am3352-elm"; reg = <0x00 0x25010000 0x00 0x2000>; interrupts = <0x00 0x84 0x04>; power-domains = <0x02 0x36 0x01>; clocks = <0x03 0x36 0x00>; clock-names = "fck"; }; }; thermal-zones { main0-thermal { polling-delay-passive = <0xfa>; polling-delay = <0x1f4>; thermal-sensors = <0x40 0x00>; trips { main0-crit { temperature = <0x19a28>; hysteresis = <0x7d0>; type = "critical"; }; }; }; main1-thermal { polling-delay-passive = <0xfa>; polling-delay = <0x1f4>; thermal-sensors = <0x40 0x01>; trips { main1-crit { temperature = <0x19a28>; hysteresis = <0x7d0>; type = "critical"; }; }; }; }; serdes-refclk { #clock-cells = <0x00>; compatible = "fixed-clock"; clock-frequency = <0x00>; phandle = <0x30>; }; cpus { #address-cells = <0x01>; #size-cells = <0x00>; cpu-map { cluster0 { core0 { cpu = <0x41>; }; core1 { cpu = <0x42>; }; }; }; cpu@0 { compatible = "arm,cortex-a53"; reg = <0x00>; device_type = "cpu"; enable-method = "psci"; i-cache-size = <0x8000>; i-cache-line-size = <0x40>; i-cache-sets = <0x100>; d-cache-size = <0x8000>; d-cache-line-size = <0x40>; d-cache-sets = <0x80>; next-level-cache = <0x43>; phandle = <0x41>; }; cpu@1 { compatible = "arm,cortex-a53"; reg = <0x01>; device_type = "cpu"; enable-method = "psci"; i-cache-size = <0x8000>; i-cache-line-size = <0x40>; i-cache-sets = <0x100>; d-cache-size = <0x8000>; d-cache-line-size = <0x40>; d-cache-sets = <0x80>; next-level-cache = <0x43>; phandle = <0x42>; }; }; l2-cache0 { compatible = "cache"; cache-level = <0x02>; cache-size = <0x40000>; cache-line-size = <0x40>; cache-sets = <0x100>; phandle = <0x43>; }; memory@80000000 { device_type = "memory"; reg = <0x00 0x80000000 0x00 0x80000000>; }; reserved-memory { #address-cells = <0x02>; #size-cells = <0x02>; ranges; optee@9e800000 { reg = <0x00 0x9e800000 0x00 0x1800000>; alignment = <0x1000>; no-map; }; r5f-dma-memory@a0000000 { compatible = "shared-dma-pool"; reg = <0x00 0xa0000000 0x00 0x100000>; no-map; phandle = <0x24>; }; r5f-memory@a0100000 { compatible = "shared-dma-pool"; reg = <0x00 0xa0100000 0x00 0xf00000>; no-map; phandle = <0x25>; }; r5f-dma-memory@a1000000 { compatible = "shared-dma-pool"; reg = <0x00 0xa1000000 0x00 0x100000>; no-map; phandle = <0x27>; }; r5f-memory@a1100000 { compatible = "shared-dma-pool"; reg = <0x00 0xa1100000 0x00 0xf00000>; no-map; phandle = <0x28>; }; r5f-dma-memory@a2000000 { compatible = "shared-dma-pool"; reg = <0x00 0xa2000000 0x00 0x100000>; no-map; phandle = <0x2b>; }; r5f-memory@a2100000 { compatible = "shared-dma-pool"; reg = <0x00 0xa2100000 0x00 0xf00000>; no-map; phandle = <0x2c>; }; r5f-dma-memory@a3000000 { compatible = "shared-dma-pool"; reg = <0x00 0xa3000000 0x00 0x100000>; no-map; phandle = <0x2e>; }; r5f-memory@a3100000 { compatible = "shared-dma-pool"; reg = <0x00 0xa3100000 0x00 0xf00000>; no-map; phandle = <0x2f>; }; m4f-dma-memory@a4000000 { compatible = "shared-dma-pool"; reg = <0x00 0xa4000000 0x00 0x100000>; no-map; phandle = <0x09>; }; m4f-memory@a4100000 { compatible = "shared-dma-pool"; reg = <0x00 0xa4100000 0x00 0xf00000>; no-map; phandle = <0x0a>; }; ipc-memories@a5000000 { reg = <0x00 0xa5000000 0x00 0x800000>; alignment = <0x1000>; no-map; }; }; gpio-keys { compatible = "gpio-keys"; pinctrl-names = "default"; pinctrl-0 = <0x44>; reset_button { label = "GPIO Key USER1"; linux,code = <0x100>; gpios = <0x45 0x19 0x01>; }; }; fixed-regulator-vusb-main5v0 { compatible = "regulator-fixed"; regulator-name = "vusb_main5v0"; regulator-min-microvolt = <0x4c4b40>; regulator-max-microvolt = <0x4c4b40>; regulator-always-on; regulator-boot-on; phandle = <0x46>; }; fixedregulator-vcc-3v3-sys { compatible = "regulator-fixed"; regulator-name = "vcc_3v3_sys"; regulator-min-microvolt = <0x325aa0>; regulator-max-microvolt = <0x325aa0>; vin-supply = <0x46>; regulator-always-on; regulator-boot-on; phandle = <0x47>; }; fixed-regulator-sd { status = "disabled"; compatible = "regulator-fixed"; regulator-name = "vdd_mmc1"; regulator-min-microvolt = <0x325aa0>; regulator-max-microvolt = <0x325aa0>; regulator-boot-on; enable-active-high; vin-supply = <0x47>; }; fixed-regulator-com8 { compatible = "regulator-fixed"; regulator-name = "com8_ls_en"; regulator-min-microvolt = <0x325aa0>; regulator-max-microvolt = <0x325aa0>; regulator-always-on; regulator-boot-on; pinctrl-0 = <0x48>; pinctrl-names = "default"; gpio = <0x49 0x3e 0x01>; phandle = <0x4b>; }; fixed-regulator-wlan { status = "disabled"; compatible = "regulator-fixed"; regulator-name = "wlan_en"; regulator-min-microvolt = <0x1b7740>; regulator-max-microvolt = <0x1b7740>; enable-active-high; pinctrl-0 = <0x4a>; pinctrl-names = "default"; vin-supply = <0x4b>; gpio = <0x49 0x30 0x00>; }; leds { compatible = "gpio-leds"; led-0 { label = "RDY:yellow:status"; color = <0x06>; function = "status"; function-enumerator = <0x01>; gpios = <0x45 0x03 0x00>; default-state = "off"; }; led-1 { label = "USB:green:status"; color = <0x02>; function = "usb"; function-enumerator = <0x02>; gpios = <0x45 0x04 0x00>; default-state = "off"; }; led-2 { label = "SD:green:status"; color = <0x02>; function = "sd"; function-enumerator = <0x03>; gpios = <0x45 0x08 0x00>; default-state = "off"; }; led-3 { label = "SIGNAL1:yellow:signal"; color = <0x06>; function = "status"; function-enumerator = <0x04>; gpios = <0x45 0x0c 0x00>; default-state = "off"; }; led-4 { label = "SIGNAL2:yellow:signal"; color = <0x06>; function = "status"; function-enumerator = <0x05>; gpios = <0x45 0x0a 0x00>; default-state = "off"; }; }; };
Thanks,
Sean
Hi Sean,
ti,usb2-only; usb@f400000 { compatible = "cdns,usb3"; reg = <0x00 0xf400000 0x00 0x10000 0x00 0xf410000 0x00 0x10000 0x00 0xf420000 0x00 0x10000>; reg-names = "otg\0xhci\0dev"; interrupts = <0x00 0xbc 0x04 0x00 0xc2 0x04 0x00 0xc4 0x04>; interrupt-names = "host\0peripheral\0otg"; maximum-speed = "super-speed"; dr_mode = "host"; pinctrl-names = "default"; pinctrl-0 = <0x35>; phys = <0x36>; phy-names = "cdns3,usb3-phy";
I doubt this is related to the original USB issue, but I am not sure this USB device tree is correct, since I never experimented it. the Serdes (usb3-phy) is configured to USB, but "ti,usb2-only" is also specified. Both seems to be a conflict.
If your USB port is designed to be a USB3.0 port, you probably want to remove "ti,usb2-only" from the device tree. Or if you USB port is a USB2.0 port, you should remove the usb3-phy from the USB node, and disable the serdes0 and serdes_wiz0 nodes in device tree.
Hi Bin,
I'm going to modify DTS and do a cold restart stress test to see if it works.
Thanks,
Sean
Hi Sean,
Bin's currently out right now so it may be a little while before you hear from him but please let me know how it goes.
Regards,
Randolph