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.

AM625: YT8531S link flapping

Part Number: AM625

Tool/software:

Hello,

 I have a development evaluation board running the AM6254 processor and YT8531S ethernet.

The manufacturer of this board (MYIR) has provided a custom kernel (6.1.46). Since the kernel is relatively old, I've moved to 6.6.32, which TI has provided on their git repository.

I had to make a couple DTS changes for the SD card and for the ethernet to work.  However, now the link status is bouncing every so often:

[  625.232117] am65-cpsw-nuss 8000000.ethernet eth0: Link is Up - 1Gbps/Full - flow control rx/tx
[  629.327832] YT8531S Gigabit Ethernet 8000f00.mdio:00: yt8521_read_status, link down, media: UTP
[  629.336816] am65-cpsw-nuss 8000000.ethernet eth0: Link is Down
[  630.352117] am65-cpsw-nuss 8000000.ethernet eth0: Link is Up - 1Gbps/Half - flow control off
[  642.639792] YT8531S Gigabit Ethernet 8000f00.mdio:00: yt8521_read_status, link down, media: UTP
[  642.648774] am65-cpsw-nuss 8000000.ethernet eth0: Link is Down
[  643.664068] am65-cpsw-nuss 8000000.ethernet eth0: Link is Up - 1Gbps/Full - flow control rx/tx
[  655.951771] YT8531S Gigabit Ethernet 8000f00.mdio:00: yt8521_read_status, link down, media: UTP
[  655.960753] am65-cpsw-nuss 8000000.ethernet eth0: Link is Down
[  656.975999] YT8531S Gigabit Ethernet 8000f00.mdio:00: Downshift occurred from negotiated speed 1Gbps to actual speed 10Mbps, check cabling!
[  656.988613] am65-cpsw-nuss 8000000.ethernet eth0: Link is Up - 10Mbps/Full - flow control rx/tx
[  725.583652] YT8531S Gigabit Ethernet 8000f00.mdio:00: yt8521_read_status, link down, media: UTP
[  725.592626] am65-cpsw-nuss 8000000.ethernet eth0: Link is Down
[  726.607732] am65-cpsw-nuss 8000000.ethernet eth0: Link is Up - 1Gbps/Full - flow control off
[  774.735561] YT8531S Gigabit Ethernet 8000f00.mdio:00: yt8521_read_status, link down, media: UTP
[  774.744544] am65-cpsw-nuss 8000000.ethernet eth0: Link is Down
[  775.759850] am65-cpsw-nuss 8000000.ethernet eth0: Link is Up - 1Gbps/Full - flow control rx/tx
[  793.167550] YT8531S Gigabit Ethernet 8000f00.mdio:00: yt8521_read_status, link down, media: UTP
[  793.176524] am65-cpsw-nuss 8000000.ethernet eth0: Link is Down

DTS Looks like this:

&cpsw3g {
        bootph-all;
        pinctrl-names = "default";
        pinctrl-0 = <&main_rgmii1_pins_default>;
};

&cpsw_port1 {
	phy-mode = "rgmii-rxid";
	phy-handle = <&cpsw3g_phy0>;
	status = "okay";
};

&cpsw_port2 {
	phy-mode = "rgmii-rxid";
	phy-handle = <&cpsw3g_phy1>;
	status = "okay";
};

&cpsw3g_mdio {
        bootph-all;
        status = "okay";
        pinctrl-names = "default";
        pinctrl-0 = <&main_mdio1_pins_default>;

        cpsw3g_phy0: ethernet-phy@0 {
                bootph-all;
                reg = <0>;
                ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>;
                ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>;
                ti,min-output-impedance;

        };
        cpsw3g_phy1: ethernet-phy@1 {
                reg = <1>;
                ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>;
                ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>;
                ti,min-output-impedance;
        };

};

I'm not sure if this is a driver issue, or a DTS configuration issue.

I've compared the driver code from 6.6.32 all the way to 6.11.2 and the driver has not changed.

There are some changes in 6.12-rc1, but those look to be adding support for a new chipset.

This does happen on both ethernet ports,  being a bit more frequent on the second port (no IP obtained even)

Can anyone help me understand what may be happening?

  • Well,  by accident I was experiment/reviewing and I seem to be able to have made the primary ethernet adapter stable. By changing reg=<1> to reg=<5>

            cpsw3g_phy0: ethernet-phy@0 {
                    reg = <5>;
                    ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>;
                    ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>;
                    ti,min-output-impedance;
    
            };

    I'm not entirely sure why, and I am still experimenting

  • Hi,

    Changing this register is changing the PHY address, how many PHYs are on the board? Could you please attach a boot log?

    Are you using the TI SDK kernel config? The issue of link flipping you are experiencing is possible due to an errata on the device 

    i2329 - MDIO: MDIO interface corruption (CPSW and PRU-ICSS)

    The workaround is to put MDIO interface into manual mode, the TI SDK kernel config will configure this.

    Best Regards,

    Schuyler

  • Thank you.  There are 2 interfaces on the board.    I am not sure exactly what you refer to as "TI SDK kernel config" the vendor I got this board from provided their own kernel, and build tools.  I've slowly worked to remove them and use the generally available tools.

    I'm definitely interested in learning more about the the TI SDK Kernel config. 

  • HI,

    I am away from boards and LInux machine at the moment. I will look up the specific kernel config and you can check if it is in the kernel config that you are using.  I will respond with the config later today. Since you have two interfaces, do you know the PHY addresses for both Ethernet PHYs? Could you please attach the console boot log?

    Best Regards,

    Schuyler

  • I don't know the physical address.  But the boot logs seem to agree:

    [    1.638652] davinci_mdio 8000f00.mdio: phy[1]: device 8000f00.mdio:01, driver YT8531S Gigabit Ethernet
    [    1.638666] davinci_mdio 8000f00.mdio: phy[5]: device 8000f00.mdio:05, driver YT8531S Gigabit Ethernet

    I can provide the whole boot log, but I assumed this was what you would look for.  This was new to me

  • Hi,

    The portion you sent is part of what I need to see. What I need to see if each PHY is on the interface intended. For example I might expect to see the first interface on PHY address 1 and the second (PHY address 5) on the second interface.

    Please check to see of the kernel config used to build the kernel has this flag set:

    CONFIG_MDIO_BITBANG=y

    Best Regards,

    Schuyler

  • Here is the entirety of the log file.

    [    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
    [    0.000000] Linux version 6.11.0-rt7 (oe-user@oe-host) (aarch64-oe-linux-gcc (GCC) 14.2.0, GNU ld (GNU Binutils) 2.43.1) #1 SMP PREEMPT_RT Sun Sep 15 14:57:56 UTC 2024
    [    0.000000] Machine model: Texas Instruments K3 AM625 SoC
    [    0.000000] earlycon: ns16550a0 at MMIO32 0x0000000002800000 (options '')
    [    0.000000] printk: legacy bootconsole [ns16550a0] enabled
    [    0.000000] efi: UEFI not found.
    [    0.000000] OF: reserved mem: 0x000000009c700000..0x000000009c7fffff (1024 KiB) map non-reusable ramoops@9c700000
    [    0.000000] Reserved memory: created DMA memory pool at 0x000000009c800000, size 3 MiB
    [    0.000000] OF: reserved mem: initialized node ipc-memories@9c800000, compatible id shared-dma-pool
    [    0.000000] OF: reserved mem: 0x000000009c800000..0x000000009cafffff (3072 KiB) nomap non-reusable ipc-memories@9c800000
    [    0.000000] Reserved memory: created DMA memory pool at 0x000000009cb00000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node m4f-dma-memory@9cb00000, compatible id shared-dma-pool
    [    0.000000] OF: reserved mem: 0x000000009cb00000..0x000000009cbfffff (1024 KiB) nomap non-reusable m4f-dma-memory@9cb00000
    [    0.000000] Reserved memory: created DMA memory pool at 0x000000009cc00000, size 14 MiB
    [    0.000000] OF: reserved mem: initialized node m4f-memory@9cc00000, compatible id shared-dma-pool
    [    0.000000] OF: reserved mem: 0x000000009cc00000..0x000000009d9fffff (14336 KiB) nomap non-reusable m4f-memory@9cc00000
    [    0.000000] Reserved memory: created DMA memory pool at 0x000000009da00000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node r5f-dma-memory@9da00000, compatible id shared-dma-pool
    [    0.000000] OF: reserved mem: 0x000000009da00000..0x000000009dafffff (1024 KiB) nomap non-reusable r5f-dma-memory@9da00000
    [    0.000000] Reserved memory: created DMA memory pool at 0x000000009db00000, size 12 MiB
    [    0.000000] OF: reserved mem: initialized node r5f-memory@9db00000, compatible id shared-dma-pool
    [    0.000000] OF: reserved mem: 0x000000009db00000..0x000000009e6fffff (12288 KiB) nomap non-reusable r5f-memory@9db00000
    [    0.000000] OF: reserved mem: 0x000000009e700000..0x000000009e77ffff (512 KiB) map non-reusable lpm-memory@9e700000
    [    0.000000] OF: reserved mem: 0x000000009e780000..0x000000009e7fffff (512 KiB) nomap non-reusable tfa@9e780000
    [    0.000000] OF: reserved mem: 0x000000009e800000..0x000000009fffffff (24576 KiB) nomap non-reusable optee@9e800000
    [    0.000000] OF: reserved mem: 0x00000000ff700000..0x00000000fffc9fff (9000 KiB) nomap non-reusable framebuffer@ff700000
    [    0.000000] Zone ranges:
    [    0.000000]   DMA      [mem 0x0000000080000000-0x00000000ffffffff]
    [    0.000000]   DMA32    empty
    [    0.000000]   Normal   empty
    [    0.000000] Movable zone start for each node
    [    0.000000] Early memory node ranges
    [    0.000000]   node   0: [mem 0x0000000080000000-0x000000009c7fffff]
    [    0.000000]   node   0: [mem 0x000000009c800000-0x000000009e6fffff]
    [    0.000000]   node   0: [mem 0x000000009e700000-0x000000009e77ffff]
    [    0.000000]   node   0: [mem 0x000000009e780000-0x000000009fffffff]
    [    0.000000]   node   0: [mem 0x00000000a0000000-0x00000000ff6fffff]
    [    0.000000]   node   0: [mem 0x00000000ff700000-0x00000000fffc9fff]
    [    0.000000]   node   0: [mem 0x00000000fffca000-0x00000000ffffffff]
    [    0.000000] Initmem setup node 0 [mem 0x0000000080000000-0x00000000ffffffff]
    [    0.000000] cma: Reserved 32 MiB at 0x00000000fb400000 on node -1
    [    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.5
    [    0.000000] percpu: Embedded 23 pages/cpu s54256 r8192 d31760 u94208
    [    0.000000] Detected VIPT I-cache on CPU0
    [    0.000000] CPU features: detected: GIC system register CPU interface
    [    0.000000] CPU features: kernel page table isolation disabled by kernel configuration
    [    0.000000] CPU features: detected: ARM erratum 845719
    [    0.000000] alternatives: applying boot alternatives
    [    0.000000] Kernel command line: console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000 mtdparts=spi-nand0:512k(ospi.tiboot3),2m(ospi.tispl),4m(ospi.u-boot),256k(ospi.env),256k(ospi.env.backup),98048k@32m(ospi.rootfs),256k@130816k(ospi.phypattern);omap2-nand.0:2m(NAND.tiboot3),2m(NAND.tispl),2m(NAND.tiboot3.backup),4m(NAND.u-boot),256k(NAND.u-boot-env),256k(NAND.u-boot-env.backup),-(NAND.file-system) root=PARTUUID=076c4a2a-02 rw rootfstype=ext4 rootwait
    [    0.000000] Unknown kernel command line parameters "mtdparts=spi-nand0:512k(ospi.tiboot3),2m(ospi.tispl),4m(ospi.u-boot),256k(ospi.env),256k(ospi.env.backup),98048k@32m(ospi.rootfs),256k@130816k(ospi.phypattern);omap2-nand.0:2m(NAND.tiboot3),2m(NAND.tispl),2m(NAND.tiboot3.backup),4m(NAND.u-boot),256k(NAND.u-boot-env),256k(NAND.u-boot-env.backup),-(NAND.file-system)", will be passed to user space.
    [    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] Built 1 zonelists, mobility grouping on.  Total pages: 524288
    [    0.000000] mem auto-init: stack:all(zero), heap alloc:off, heap free:off
    [    0.000000] software IO TLB: SWIOTLB bounce buffer size adjusted to 2MB
    [    0.000000] software IO TLB: area num 4.
    [    0.000000] software IO TLB: mapped [mem 0x00000000fb000000-0x00000000fb200000] (2MB)
    [    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
    [    0.000000] rcu: Preemptible hierarchical RCU implementation.
    [    0.000000] rcu:     RCU restricting CPUs from NR_CPUS=512 to nr_cpu_ids=4.
    [    0.000000] rcu:     RCU_SOFTIRQ processing moved to rcuc kthreads.
    [    0.000000]  No expedited grace period (rcu_normal_after_boot).
    [    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 100 jiffies.
    [    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=4
    [    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] Root IRQ handler: 0xffff8000800100c0
    [    0.000000] GICv3: GICv3 features: 16 PPIs
    [    0.000000] GICv3: GICD_CTRL.DS=0, SCR_EL3.FIQ=1
    [    0.000000] GICv3: CPU0: found redistributor 0 region 0:0x0000000001880000
    [    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 @80800000 (flat, esz 8, psz 64K, shr 0)
    [    0.000000] ITS: using cache flushing for cmd queue
    [    0.000000] GICv3: using LPI property table @0x0000000080040000
    [    0.000000] GIC: using cache flushing for LPI property table
    [    0.000000] GICv3: CPU0: using allocated LPI pending table @0x0000000080050000
    [    0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
    [    0.000000] arch_timer: cp15 timer(s) running at 200.00MHz (phys).
    [    0.000000] clocksource: arch_sys_counter: mask: 0x3ffffffffffffff max_cycles: 0x2e2049d3e8, max_idle_ns: 440795210634 ns
    [    0.000000] sched_clock: 58 bits at 200MHz, resolution 5ns, wraps every 4398046511102ns
    [    0.000248] Console: colour dummy device 80x25
    [    0.000313] Calibrating delay loop (skipped), value calculated using timer frequency.. 400.00 BogoMIPS (lpj=200000)
    [    0.000324] pid_max: default: 32768 minimum: 301
    [    0.000388] LSM: initializing lsm=capability
    [    0.000526] Mount-cache hash table entries: 4096 (order: 3, 32768 bytes, linear)
    [    0.000549] Mountpoint-cache hash table entries: 4096 (order: 3, 32768 bytes, linear)
    [    0.008859] rcu: Hierarchical SRCU implementation.
    [    0.008869] rcu:     Max phase no-delay instances is 400.
    [    0.036831] Timer migration: 1 hierarchy levels; 8 children per group; 1 crossnode level
    [    0.045921] EFI services will not be available.
    [    0.073913] smp: Bringing up secondary CPUs ...
    [    0.142836] Detected VIPT I-cache on CPU1
    [    0.142932] GICv3: CPU1: found redistributor 1 region 0:0x00000000018a0000
    [    0.142950] GICv3: CPU1: using allocated LPI pending table @0x0000000080060000
    [    0.143004] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
    [    0.251981] Detected VIPT I-cache on CPU2
    [    0.252054] GICv3: CPU2: found redistributor 2 region 0:0x00000000018c0000
    [    0.252069] GICv3: CPU2: using allocated LPI pending table @0x0000000080070000
    [    0.252109] CPU2: Booted secondary processor 0x0000000002 [0x410fd034]
    [    0.339985] Detected VIPT I-cache on CPU3
    [    0.340052] GICv3: CPU3: found redistributor 3 region 0:0x00000000018e0000
    [    0.340066] GICv3: CPU3: using allocated LPI pending table @0x0000000080080000
    [    0.340104] CPU3: Booted secondary processor 0x0000000003 [0x410fd034]
    [    0.359954] smp: Brought up 1 node, 4 CPUs
    [    0.359960] SMP: Total of 4 processors activated.
    [    0.359963] CPU: All CPU(s) started at EL2
    [    0.359967] CPU features: detected: 32-bit EL0 Support
    [    0.359971] CPU features: detected: CRC32 instructions
    [    0.462288] alternatives: applying system-wide alternatives
    [    0.462735] Memory: 1933680K/2097152K available (9664K kernel code, 1174K rwdata, 2464K rodata, 1152K init, 521K bss, 122184K reserved, 32768K cma-reserved)
    [    0.465011] devtmpfs: initialized
    [    0.476501] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 1911260446275000 ns
    [    0.476553] futex hash table entries: 1024 (order: 4, 65536 bytes, linear)
    [    0.477501] 28976 pages in range for non-PLT usage
    [    0.477517] 520496 pages in range for PLT usage
    [    0.477885] pinctrl core: initialized pinctrl subsystem
    [    0.478334] DMI not present or invalid.
    [    0.479160] NET: Registered PF_NETLINK/PF_ROUTE protocol family
    [    0.480474] DMA: preallocated 256 KiB GFP_KERNEL pool for atomic allocations
    [    0.480752] DMA: preallocated 256 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
    [    0.481167] DMA: preallocated 256 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
    [    0.481258] audit: initializing netlink subsys (disabled)
    [    0.481464] audit: type=2000 audit(0.479:1): state=initialized audit_enabled=0 res=1
    [    0.482036] thermal_sys: Registered thermal governor 'step_wise'
    [    0.482274] ASID allocator initialised with 65536 entries
    [    0.496341] platform 30200000.dss: Fixed dependency cycle(s) with /bus@f0000/i2c@20000000/sii9022@3b
    [    0.500313] platform connector: Fixed dependency cycle(s) with /bus@f0000/i2c@20000000/sii9022@3b
    [    0.501512] HugeTLB: registered 1.00 GiB page size, pre-allocated 0 pages
    [    0.501524] HugeTLB: 0 KiB vmemmap can be freed for a 1.00 GiB page
    [    0.501528] HugeTLB: registered 32.0 MiB page size, pre-allocated 0 pages
    [    0.501532] HugeTLB: 0 KiB vmemmap can be freed for a 32.0 MiB page
    [    0.501536] HugeTLB: registered 2.00 MiB page size, pre-allocated 0 pages
    [    0.501539] HugeTLB: 0 KiB vmemmap can be freed for a 2.00 MiB page
    [    0.501543] HugeTLB: registered 64.0 KiB page size, pre-allocated 0 pages
    [    0.501546] HugeTLB: 0 KiB vmemmap can be freed for a 64.0 KiB page
    [    1.035728] k3-chipinfo 43000014.chipid: Family:AM62X rev:SR1.0 JTAGID[0x0bb7e02f] Detected
    [    1.038603] iommu: Default domain type: Translated
    [    1.038618] iommu: DMA domain TLB invalidation policy: strict mode
    [    1.039224] SCSI subsystem initialized
    [    1.039633] usbcore: registered new interface driver usbfs
    [    1.039667] usbcore: registered new interface driver hub
    [    1.039703] usbcore: registered new device driver usb
    [    1.040356] pps_core: LinuxPPS API ver. 1 registered
    [    1.040361] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
    [    1.040380] PTP clock support registered
    [    1.040418] EDAC MC: Ver: 3.0.0
    [    1.040788] scmi_core: SCMI protocol bus registered
    [    1.041359] FPGA manager framework
    [    1.041484] Advanced Linux Sound Architecture Driver Initialized.
    [    1.045396] clocksource: Switched to clocksource arch_sys_counter
    [    1.045641] VFS: Disk quotas dquot_6.6.0
    [    1.045694] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
    [    1.053081] NET: Registered PF_INET protocol family
    [    1.053347] IP idents hash table entries: 32768 (order: 6, 262144 bytes, linear)
    [    1.054964] tcp_listen_portaddr_hash hash table entries: 1024 (order: 3, 40960 bytes, linear)
    [    1.055051] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
    [    1.055062] TCP established hash table entries: 16384 (order: 5, 131072 bytes, linear)
    [    1.055257] TCP bind hash table entries: 16384 (order: 8, 1310720 bytes, linear)
    [    1.056708] TCP: Hash tables configured (established 16384 bind 16384)
    [    1.056936] UDP hash table entries: 1024 (order: 4, 98304 bytes, linear)
    [    1.057095] UDP-Lite hash table entries: 1024 (order: 4, 98304 bytes, linear)
    [    1.057514] NET: Registered PF_UNIX/PF_LOCAL protocol family
    [    1.058005] RPC: Registered named UNIX socket transport module.
    [    1.058012] RPC: Registered udp transport module.
    [    1.058015] RPC: Registered tcp transport module.
    [    1.058018] RPC: Registered tcp-with-tls transport module.
    [    1.058020] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [    1.058034] PCI: CLS 0 bytes, default 64
    [    1.059252] Initialise system trusted keyrings
    [    1.059484] workingset: timestamp_bits=62 max_order=19 bucket_order=0
    [    1.059797] squashfs: version 4.0 (2009/01/31) Phillip Lougher
    [    1.060034] NFS: Registering the id_resolver key type
    [    1.060063] Key type id_resolver registered
    [    1.060066] Key type id_legacy registered
    [    1.060088] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
    [    1.060093] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering...
    [    1.111759] Key type asymmetric registered
    [    1.111770] Asymmetric key parser 'x509' registered
    [    1.111848] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 246)
    [    1.111854] io scheduler mq-deadline registered
    [    1.111858] io scheduler kyber registered
    [    1.111880] io scheduler bfq registered
    [    1.117152] pinctrl-single 4084000.pinctrl: 34 pins, size 136
    [    1.118428] pinctrl-single f4000.pinctrl: 171 pins, size 684
    [    1.126243] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
    [    1.136613] loop: module loaded
    [    1.137500] megasas: 07.727.03.00-rc1
    [    1.142020] tun: Universal TUN/TAP device driver, 1.6
    [    1.143161] VFIO - User Level meta-driver version: 0.3
    [    1.144440] usbcore: registered new interface driver usb-storage
    [    1.145068] i2c_dev: i2c /dev entries driver
    [    1.145766] sdhci: Secure Digital Host Controller Interface driver
    [    1.145771] sdhci: Copyright(c) Pierre Ossman
    [    1.145991] sdhci-pltfm: SDHCI platform and OF driver helper
    [    1.146934] SMCCC: SOC_ID: ARCH_SOC_ID not implemented, skipping ....
    [    1.147762] usbcore: registered new interface driver usbhid
    [    1.147767] usbhid: USB HID core driver
    [    1.148572] optee: probing for conduit method.
    [    1.148608] optee: revision 4.2
    [    1.148958] optee: dynamic shared memory is enabled
    [    1.149702] optee: initialized driver
    [    1.149812] random: crng init done
    [    1.151598] NET: Registered PF_PACKET protocol family
    [    1.151698] Key type dns_resolver registered
    [    1.161193] Loading compiled-in X.509 certificates
    [    1.171546] ti-sci 44043000.system-controller: ABI: 4.0 (firmware rev 0x000a '10.0.8--v10.00.08 (Fiery Fox)')
    [    1.224914] ti-sci-clk 44043000.system-controller:clock-controller: recalc-rate failed for dev=81, clk=20, ret=-19
    [    1.249764] omap_i2c 4900000.i2c: bus 0 rev0.12 at 400 kHz
    [    1.250831] platform connector: Fixed dependency cycle(s) with /bus@f0000/i2c@20000000/sii9022@3b
    [    1.250920] platform 30200000.dss: Fixed dependency cycle(s) with /bus@f0000/i2c@20000000/sii9022@3b
    [    1.250990] i2c 1-003b: Fixed dependency cycle(s) with /connector
    [    1.251052] i2c 1-003b: Fixed dependency cycle(s) with /bus@f0000/dss@30200000
    [    1.251823] i2c 1-003c: Fixed dependency cycle(s) with /bus@f0000/ticsi2rx@30102000/csi-bridge@30101000
    [    1.251966] omap_i2c 20000000.i2c: bus 1 rev0.12 at 100 kHz
    [    1.253789] omap_i2c 20010000.i2c: bus 2 rev0.12 at 400 kHz
    [    1.255315] omap_i2c 20030000.i2c: bus 3 rev0.12 at 400 kHz
    [    1.255845] ti-sci-intr 4210000.interrupt-controller: Interrupt Router 5 domain created
    [    1.255999] ti-sci-intr bus@f0000:interrupt-controller@a00000: Interrupt Router 3 domain created
    [    1.256286] ti-sci-inta 48000000.interrupt-controller: Interrupt Aggregator domain 28 created
    [    1.257470] ti-udma 485c0100.dma-controller: Number of rings: 82
    [    1.260872] ti-udma 485c0100.dma-controller: Channels: 48 (bchan: 18, tchan: 12, rchan: 18)
    [    1.264254] ti-udma 485c0000.dma-controller: Number of rings: 150
    [    1.270497] ti-udma 485c0000.dma-controller: Channels: 35 (tchan: 20, rchan: 15)
    [    1.273949] printk: console [ttyS2] disabled
    [    1.564921] 2800000.serial: ttyS2 at MMIO 0x2800000 (irq = 238, base_baud = 3000000) is a 8250
    [    1.573817] printk: console [ttyS2] enabled
    [    1.573817] printk: console [ttyS2] enabled
    [    1.573823] printk: legacy bootconsole [ns16550a0] disabled
    [    1.573823] printk: legacy bootconsole [ns16550a0] disabled
    [    1.599365] 2810000.serial: ttyS3 at MMIO 0x2810000 (irq = 240, base_baud = 3000000) is a 8250
    [    1.602515] spi-nor spi0.0: unrecognized JEDEC id bytes: ff ff ff ff ff ff
    [    1.603567] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
    [    1.637408] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    1.641436] davinci_mdio 8000f00.mdio: phy[1]: device 8000f00.mdio:01, driver YT8531S Gigabit Ethernet
    [    1.641451] davinci_mdio 8000f00.mdio: phy[5]: device 8000f00.mdio:05, driver YT8531S Gigabit Ethernet
    [    1.641493] am65-cpsw-nuss 8000000.ethernet: initializing am65 cpsw nuss version 0x6BA01103, cpsw version 0x6BA81103 Ports: 3 quirks:00000002
    [    1.641780] am65-cpsw-nuss 8000000.ethernet: Use random MAC address
    [    1.641794] am65-cpsw-nuss 8000000.ethernet: initialized cpsw ale version 1.5
    [    1.641800] am65-cpsw-nuss 8000000.ethernet: ALE Table size 512
    [    1.642564] am65-cpsw-nuss 8000000.ethernet: CPTS ver 0x4e8a010c, freq:500000000, add_val:1 pps:0
    [    1.709228] am65-cpsw-nuss 8000000.ethernet: set new flow-id-base 19
    [    1.713642] dwc3-am62 f900000.dwc3-usb: error -EINVAL: invalid resource (null)
    [    1.713662] dwc3-am62 f900000.dwc3-usb: can't map PHY IOMEM resource. Won't apply i2409 fix.
    [    1.714712] platform 31000000.usb: Fixed dependency cycle(s) with /bus@f0000/i2c@20030000/ptn5150@3d/connector
    [    1.716520] dwc3-am62 f910000.dwc3-usb: error -EINVAL: invalid resource (null)
    [    1.716542] dwc3-am62 f910000.dwc3-usb: can't map PHY IOMEM resource. Won't apply i2409 fix.
    [    1.717123] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
    [    1.717156] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 1
    [    1.717325] xhci-hcd xhci-hcd.0.auto: USB3 root hub has no ports
    [    1.717333] xhci-hcd xhci-hcd.0.auto: hcc params 0x0258fe6d hci version 0x110 quirks 0x0000808000000010
    [    1.717647] xhci-hcd xhci-hcd.0.auto: irq 244, io mem 0x31000000
    [    1.717843] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller
    [    1.718682] hub 1-0:1.0: USB hub found
    [    1.718714] hub 1-0:1.0: 1 port detected
    [    1.719064] xhci-hcd xhci-hcd.1.auto: new USB bus registered, assigned bus number 2
    [ r  1.719231] xhci-hcd xhci-hcd.1.auto: USB3 root hub has no ports
    [    1.719238] xhci-hcd xhci-hcd.1.auto: hcc params 0x0258fe6d hci version 0x110 quirks 0x0000808000000010
    [    1.719425] xhci-hcd xhci-hcd.1.auto: irq 245, io mem 0x31100000
    [    1.720242] hub 2-0:1.0: USB hub found
    [    1.720270] hub 2-0:1.0: 1 port detected
    [    1.722414] mmc0: CQHCI version 5.10
    [    1.723312] mmc1: CQHCI version 5.10
    [    1.734278] 2840000.serial: ttyS0 at MMIO 0x2840000 (irq = 428, base_baud = 3000000) is a 8250
    [    1.736041] 2860000.serial: ttyS1 at MMIO 0x2860000 (irq = 429, base_baud = 3000000) is a 8250
    [    1.737934] input: gpio-keys as /devices/platform/gpio-keys/input/input0
    [    1.738329] mmc2: CQHCI version 5.10
    [    1.738681] clk: Disabling unused clocks
    [    1.743623] ti-sci-clk 44043000.system-controller:clock-controller: is_prepared failed for dev=81, clk=20, ret=-19
    [    1.749064] PM: genpd: Disabling unused power domains
    [    1.749248] ALSA device list:
    [    1.749255]   No soundcards found.
    [    1.782338] mmc0: SDHCI controller on fa10000.mmc [fa10000.mmc] using ADMA 64-bit
    [    1.782464] mmc1: SDHCI controller on fa00000.mmc [fa00000.mmc] using ADMA 64-bit
    [    1.786045] mmc2: SDHCI controller on fa20000.mmc [fa20000.mmc] using ADMA 64-bit
    [    1.813411] mmc2: new high speed SDIO card at address 0001
    [    1.823461] mmc1: new high speed SDHC card at address b368
    [    1.824143] mmcblk1: mmc1:b368       7.46 GiB
    [    1.827479]  mmcblk1: p1 p2
    [    1.949246] mmc0: Command Queue Engine enabled
    [    1.949308] mmc0: new HS200 MMC card at address 0001
    [    1.951250] mmcblk0: mmc0:0001 8GUF4R 7.28 GiB
    [    1.953089] mmcblk0boot0: mmc0:0001 8GUF4R 31.9 MiB
    [    1.954342] mmcblk0boot1: mmc0:0001 8GUF4R 31.9 MiB
    [    1.955668] mmcblk0rpmb: mmc0:0001 8GUF4R 4.00 MiB, chardev (241:0)
    [    1.956453] usb 2-1: new high-speed USB device number 2 using xhci-hcd
    [    2.135914] hub 2-1:1.0: USB hub found
    [    2.136033] hub 2-1:1.0: 4 ports detected
    [    2.992163] EXT4-fs (mmcblk1p2): recovery complete
    [    2.995579] EXT4-fs (mmcblk1p2): mounted filesystem 03a311ff-992a-412e-9167-699f2352cfa5 r/w with ordered data mode. Quota mode: none.
    [    2.995676] VFS: Mounted root (ext4 filesystem) on device 179:2.
    [    2.996632] devtmpfs: mounted
    [    2.997408] Freeing unused kernel memory: 1152K
    [    2.997509] Run /sbin/init as init process
    [    3.406016] systemd[1]: System time before build time, advancing clock.
    [    3.595343] NET: Registered PF_INET6 protocol family
    [    3.596603] Segment Routing with IPv6
    [    3.596642] In-situ OAM (IOAM) with IPv6
    [    3.638532] systemd[1]: systemd 256.5 running in system mode (-PAM -AUDIT -SELINUX -APPARMOR +IMA -SMACK +SECCOMP -GCRYPT -GNUTLS -OPENSSL +ACL +BLKID -CURL -ELFUTILS -FIDO2 -IDN2 -IDN -IPTC +KMOD -LIBCRYPTSETUP -LIBCRYPTSETUP_PLUGINS +LIBFDISK -PCRE2 -PWQUALITY -P11KIT -QRENCODE -TPM2 -BZIP2 -LZ4 -XZ -ZLIB +ZSTD -BPF_FRAMEWORK +XKBCOMMON +UTMP -SYSVINIT -LIBARCHIVE)
    [    3.638603] systemd[1]: Detected architecture arm64.
    

    # zcat /proc/config.gz |grep  BITBA
    CONFIG_MDIO_BITBANG=y
    
    Running kernel does have this set.
    
    
    I guess it's important to indicate how I am building this kernel.
    
    I take the following fragament:
    
    ti_arm64_prune.config
    ti_rt.config
    [and a custom one that enables CONFIG_MOTORCOMM_PHY]
    
    Merge them into one config, and then build the Image.