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.

TDA4VH-Q1: How to separate the pcie driver from the kernel

Part Number: TDA4VH-Q1
Other Parts Discussed in Thread: TDA4VH

Hi experts,    

   We deployed AP on A72, and the AP system is based on SDK8.6. When optimizing the startup time of TDA4VH, we found that because the initialization process of the PCIE driver in the kernel will scan PCIE  devices, this will increase the overall startup time of the kernel by about 3 seconds.

    We now want to separate the pcie driver from the kernel, and we want  to know how to do it. For example, what is included in the stripped PCle driver, its loading time and the relationship between other  components, etc.

  • Hello,

    If there is no necessity for PCIe interface, then you can disable this either in the kernel config, so that the driver is not built included in the build, or disable them in device tree. Disabling in device tree is recommended.

    To disable in device tree, then you can set status to "disabled" for these device tree nodes: https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/arch/arm64/boot/dts/ti/k3-j784s4-evm.dts?h=ti-linux-6.1.y#n998

    Alternatively, to disable in kernel config, unset the configurations listed in the SDK docs: https://software-dl.ti.com/jacinto7/esd/processor-sdk-linux-j784s4/09_02_00_05/exports/docs/linux/Foundational_Components/Kernel/Kernel_Drivers/PCIe/PCIe_Root_Complex.html.

    However, if there is a necessity for PCIe, but you want to shorten startup times, then you will have to experiment and see if you can modify the PCIe kernel driver. Otherwise, you will have to modify the kernel to not load PCIe at boot, and have the kernel load PCIe after booting Linux - although, I do not see much practical advantage to this method, since it modifies an automated process into a manual process to load kernel driver - this would essentially be the same as creating a ordered priority for loading kernel modules.

    Regards,

    Takuma

  • We need the PCIE interface, but currently we find that the PCIE configuration time is too long, resulting in the AVM video output time too late, so we want to strip the PCIE driver from the current system and configure the PCIE after the AVM video output is completed. Therefore, please tell us the PCIE driver stripping scheme, thank you!

  • Hi Ming,

    The following are PCIe related kernel modules, where pci_j721e_host is at the top of the dependency list:

    root@am68a-sk:/lib/modules/6.1.80-ti-g1c154b1fe4c4# lsmod | grep pci
    pci_endpoint_test 20480 0
    pci_j721e_host 16384 0
    pci_j721e 16384 1 pci_j721e_host
    pcie_cadence_host 16384 1 pci_j721e_host
    pcie_cadence 16384 2 pcie_cadence_host,pci_j721e_host
    root@am68a-sk:/lib/modules/6.1.80-ti-g1c154b1fe4c4#

    There will most likely be PCIe device specific kernel modules that are dependent on these kernel modules which you will have to find yourself. For example, ath10k_pci.ko is a driver used by some WiFi cards, that may depend on PCIe interface to be up.

    You can blacklist these kernel modules to not load at boot.

    Regards,

    Takuma

  • Hi Ming,

    To clarify, you can do something like this to make the kernel module not load automatically:

    1. vi /etc/modprobe.d/blacklist.conf
    2. blacklist pci_j721e_host
    3. :wq

    Then, you can load the module manually using:

    1. modprobe pci_j721e_host

    These are some standard Linux behaviors, so there are lots of resources that can be found online if you face any issues.

    Regards,

    Takuma

  • Hi,expert:

    please share the log pcie scan and rescan ,thanks

  • Hi Haitang,

    Attached are logs from this blacklisting operation. Note that PCIe driver is not initialized during boot, and only gets initialized after the modprobe command that is ran after boot.

    Starting kernel ...
    
    [    0.000000] Booting Linux on physical CPU 0x0000000000 [0x411fd080]
    [    0.000000] Linux version 6.1.80-ti-g1c154b1fe4c4 (oe-user@oe-host) (aarch64-oe-linux-gcc (GCC) 11.4.0, GNU ld (GNU Binutils) 2.38.20220708) #1 SMP PREEMPT Thu Mar 14 13:59:07 UTC 2024
    [    0.000000] Machine model: Texas Instruments J721S2 EVM
    [    0.000000] earlycon: ns16550a0 at MMIO32 0x0000000002880000 (options '')
    [    0.000000] printk: bootconsole [ns16550a0] enabled
    [    0.000000] efi: UEFI not found.
    [    0.000000] Reserved memory: created CMA memory pool at 0x0000000bc8000000, size 896 MiB
    [    0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool
    [    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 r5f-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 r5f-memory@a4100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a5000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node r5f-dma-memory@a5000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a5100000, size 15 MiB
    [    0.000000] OF: reserved mem: initialized node r5f-memory@a5100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a6000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node c71-dma-memory@a6000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a6100000, size 15 MiB
    [    0.000000] OF: reserved mem: initialized node c71-memory@a6100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a7000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node c71-dma-memory@a7000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a7100000, size 15 MiB
    [    0.000000] OF: reserved mem: initialized node c71-memory@a7100000, compatible id shared-dma-pool
    [    0.000000] Zone ranges:
    [    0.000000]   DMA      [mem 0x0000000080000000-0x00000000ffffffff]
    [    0.000000]   DMA32    empty
    [    0.000000]   Normal   [mem 0x0000000100000000-0x0000000bffffffff]
    [    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-0x00000000a9bfffff]
    [    0.000000]   node   0: [mem 0x00000000a9c00000-0x00000000ffffffff]
    [    0.000000]   node   0: [mem 0x0000000880000000-0x0000000bffffffff]
    [    0.000000] Initmem setup node 0 [mem 0x0000000080000000-0x0000000bffffffff]
    [    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.4
    [    0.000000] percpu: Embedded 20 pages/cpu s41064 r8192 d32664 u81920
    [    0.000000] Detected PIPT I-cache on CPU0
    [    0.000000] CPU features: detected: GIC system register CPU interface
    [    0.000000] CPU features: detected: Spectre-v3a
    [    0.000000] CPU features: detected: Spectre-BHB
    [    0.000000] CPU features: detected: ARM erratum 1742098
    [    0.000000] CPU features: detected: ARM errata 1165522, 1319367, or 1530923
    [    0.000000] alternatives: applying boot alternatives
    [    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 4128768
    [    0.000000] Kernel command line: console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02880000 mtdparts=47040000.spi.0:512k(ospi.tiboot3),2m(ospi.tispl),4m(ospi.u-boot),256k(ospi.env),256k(ospi.env.backup),57088k@8m(ospi.rootfs),256k(ospi.phypattern);spi-nand0:512k(ospi_nand.tiboot3),2m(ospi_nand.tispl),4m(ospi_nand.u-boot),256k(ospi_nand.env),256k(ospi_nand.env.backup),98048k@32m(ospi_nand.rootfs),256k@130816k(ospi_nand.phypattern) systemd.hostname=am68-sk root=PARTUUID=d2988d02-02 rw rootfstype=ext4 rootwait
    [    0.000000] Dentry cache hash table entries: 2097152 (order: 12, 16777216 bytes, linear)
    [    0.000000] Inode-cache hash table entries: 1048576 (order: 11, 8388608 bytes, linear)
    [    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
    [    0.000000] software IO TLB: area num 2.
    [    0.000000] software IO TLB: mapped [mem 0x00000000fbfff000-0x00000000fffff000] (64MB)
    [    0.000000] Memory: 15269804K/16777216K available (11712K kernel code, 1256K rwdata, 3812K rodata, 1984K init, 440K bss, 589908K reserved, 917504K cma-reserved)
    [    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
    [    0.000000] rcu: Preemptible 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]  Trampoline variant of Tasks RCU enabled.
    [    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: 960 SPIs implemented
    [    0.000000] GICv3: 0 Extended SPIs implemented
    [    0.000000] Root IRQ handler: gic_handle_irq
    [    0.000000] GICv3: GICv3 features: 16 PPIs
    [    0.000000] GICv3: CPU0: found redistributor 0 region 0:0x0000000001900000
    [    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 @880800000 (flat, esz 8, psz 64K, shr 0)
    [    0.000000] ITS: using cache flushing for cmd queue
    [    0.000000] GICv3: using LPI property table @0x0000000880030000
    [    0.000000] GIC: using cache flushing for LPI property table
    [    0.000000] GICv3: CPU0: using allocated LPI pending table @0x0000000880040000
    [    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.008398] Console: colour dummy device 80x25
    [    0.012970] Calibrating delay loop (skipped), value calculated using timer frequency.. 400.00 BogoMIPS (lpj=800000)
    [    0.023642] pid_max: default: 32768 minimum: 301
    [    0.028380] LSM: Security Framework initializing
    [    0.033184] Mount-cache hash table entries: 32768 (order: 6, 262144 bytes, linear)
    [    0.040963] Mountpoint-cache hash table entries: 32768 (order: 6, 262144 bytes, linear)
    [    0.050048] cblist_init_generic: Setting adjustable number of callback queues.
    [    0.057456] cblist_init_generic: Setting shift to 1 and lim to 1.
    [    0.063724] cblist_init_generic: Setting adjustable number of callback queues.
    [    0.071112] cblist_init_generic: Setting shift to 1 and lim to 1.
    [    0.077421] rcu: Hierarchical SRCU implementation.
    [    0.082320] rcu:     Max phase no-delay instances is 1000.
    [    0.087837] Platform MSI: msi-controller@1820000 domain created
    [    0.094044] PCI/MSI: /bus@100000/interrupt-controller@1800000/msi-controller@1820000 domain created
    [    0.103451] EFI services will not be available.
    [    0.108199] smp: Bringing up secondary CPUs ...
    I/TC: Secondary CPU 1 initializing
    I/TC: Secondary CPU 1 switching to normal world boot
    [    0.121263] Detected PIPT I-cache on CPU1
    [    0.121333] GICv3: CPU1: found redistributor 1 region 0:0x0000000001920000
    [    0.121347] GICv3: CPU1: using allocated LPI pending table @0x0000000880050000
    [    0.121380] CPU1: Booted secondary processor 0x0000000001 [0x411fd080]
    [    0.121438] smp: Brought up 1 node, 2 CPUs
    [    0.150789] SMP: Total of 2 processors activated.
    [    0.155594] CPU features: detected: 32-bit EL0 Support
    [    0.160848] CPU features: detected: CRC32 instructions
    [    0.166127] CPU: All CPU(s) started at EL2
    [    0.170310] alternatives: applying system-wide alternatives
    [    0.176910] devtmpfs: initialized
    [    0.187349] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
    [    0.197334] futex hash table entries: 512 (order: 3, 32768 bytes, linear)
    [    0.217671] pinctrl core: initialized pinctrl subsystem
    [    0.223402] DMI not present or invalid.
    [    0.227660] NET: Registered PF_NETLINK/PF_ROUTE protocol family
    [    0.234511] DMA: preallocated 2048 KiB GFP_KERNEL pool for atomic allocations
    [    0.242188] DMA: preallocated 2048 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
    [    0.250532] DMA: preallocated 2048 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
    [    0.258760] audit: initializing netlink subsys (disabled)
    [    0.264420] audit: type=2000 audit(0.172:1): state=initialized audit_enabled=0 res=1
    [    0.264657] thermal_sys: Registered thermal governor 'step_wise'
    [    0.272345] thermal_sys: Registered thermal governor 'power_allocator'
    [    0.278568] cpuidle: using governor menu
    [    0.289323] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
    [    0.296290] ASID allocator initialised with 65536 entries
    [    0.310115] platform a40000.pinctrl: Fixed dependency cycle(s) with /bus@100000/pinctrl@a40000/mcu-cpsw-cpts
    [    0.322371] KASLR disabled due to lack of seed
    [    0.329756] HugeTLB: registered 1.00 GiB page size, pre-allocated 0 pages
    [    0.336702] HugeTLB: 0 KiB vmemmap can be freed for a 1.00 GiB page
    [    0.343105] HugeTLB: registered 32.0 MiB page size, pre-allocated 0 pages
    [    0.350039] HugeTLB: 0 KiB vmemmap can be freed for a 32.0 MiB page
    [    0.356440] HugeTLB: registered 2.00 MiB page size, pre-allocated 0 pages
    [    0.363374] HugeTLB: 0 KiB vmemmap can be freed for a 2.00 MiB page
    [    0.369775] HugeTLB: registered 64.0 KiB page size, pre-allocated 0 pages
    [    0.376708] HugeTLB: 0 KiB vmemmap can be freed for a 64.0 KiB page
    [    0.383894] k3-chipinfo 43000014.chipid: Family:J721S2 rev:SR1.0 JTAGID[0x0bb7502f] Detected
    [    0.393585] iommu: Default domain type: Translated
    [    0.398576] iommu: DMA domain TLB invalidation policy: strict mode
    [    0.405112] SCSI subsystem initialized
    [    0.409111] usbcore: registered new interface driver usbfs
    [    0.414739] usbcore: registered new interface driver hub
    [    0.420177] usbcore: registered new device driver usb
    [    0.425599] pps_core: LinuxPPS API ver. 1 registered
    [    0.430673] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
    [    0.440011] PTP clock support registered
    [    0.444102] EDAC MC: Ver: 3.0.0
    [    0.447885] FPGA manager framework
    [    0.451399] Advanced Linux Sound Architecture Driver Initialized.
    [    0.458059] clocksource: Switched to clocksource arch_sys_counter
    [    0.464413] VFS: Disk quotas dquot_6.6.0
    [    0.468453] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
    [    0.478494] NET: Registered PF_INET protocol family
    [    0.483879] IP idents hash table entries: 262144 (order: 9, 2097152 bytes, linear)
    [    0.496890] tcp_listen_portaddr_hash hash table entries: 8192 (order: 5, 131072 bytes, linear)
    [    0.505802] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
    [    0.513744] TCP established hash table entries: 131072 (order: 8, 1048576 bytes, linear)
    [    0.522435] TCP bind hash table entries: 65536 (order: 9, 2097152 bytes, linear)
    [    0.531044] TCP: Hash tables configured (established 131072 bind 65536)
    [    0.537936] UDP hash table entries: 8192 (order: 6, 262144 bytes, linear)
    [    0.545064] UDP-Lite hash table entries: 8192 (order: 6, 262144 bytes, linear)
    [    0.552720] NET: Registered PF_UNIX/PF_LOCAL protocol family
    [    0.558839] RPC: Registered named UNIX socket transport module.
    [    0.564907] RPC: Registered udp transport module.
    [    0.569710] RPC: Registered tcp transport module.
    [    0.574513] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [    0.581096] NET: Registered PF_XDP protocol family
    [    0.586010] PCI: CLS 0 bytes, default 64
    [    0.590481] hw perfevents: enabled with armv8_cortex_a72 PMU driver, 7 counters available
    [    0.599773] Initialise system trusted keyrings
    [    0.604455] workingset: timestamp_bits=46 max_order=22 bucket_order=0
    [    0.613018] squashfs: version 4.0 (2009/01/31) Phillip Lougher
    [    0.619301] NFS: Registering the id_resolver key type
    [    0.624490] Key type id_resolver registered
    [    0.628764] Key type id_legacy registered
    [    0.632889] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
    [    0.639740] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering...
    [    0.667185] Key type asymmetric registered
    [    0.671370] Asymmetric key parser 'x509' registered
    [    0.676382] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 245)
    [    0.684032] io scheduler mq-deadline registered
    [    0.688665] io scheduler kyber registered
    [    0.694942] pinctrl-single 4301c000.pinctrl: 13 pins, size 52
    [    0.700945] pinctrl-single 4301c038.pinctrl: 11 pins, size 44
    [    0.706974] pinctrl-single 4301c068.pinctrl: 72 pins, size 288
    [    0.713202] pinctrl-single 4301c190.pinctrl: 1 pins, size 4
    [    0.719060] pinctrl-single 11c000.pinctrl: 72 pins, size 288
    [    0.725484] pinctrl-single a40000.pinctrl: 512 pins, size 2048
    [    0.735291] Serial: 8250/16550 driver, 12 ports, IRQ sharing enabled
    [    0.746403] loop: module loaded
    [    0.750454] megasas: 07.719.03.00-rc1
    [    0.755832] tun: Universal TUN/TAP device driver, 1.6
    [    0.761477] VFIO - User Level meta-driver version: 0.3
    [    0.767209] usbcore: registered new interface driver usb-storage
    [    0.773709] i2c_dev: i2c /dev entries driver
    [    0.778805] sdhci: Secure Digital Host Controller Interface driver
    [    0.785131] sdhci: Copyright(c) Pierre Ossman
    [    0.789725] sdhci-pltfm: SDHCI platform and OF driver helper
    [    0.795871] ledtrig-cpu: registered to indicate activity on CPUs
    [    0.802131] SMCCC: SOC_ID: ARCH_SOC_ID not implemented, skipping ....
    [    0.808891] usbcore: registered new interface driver usbhid
    [    0.814591] usbhid: USB HID core driver
    [    0.819084] optee: probing for conduit method.
    I/TC: Reserved shared memory is enabled
    I/TC: Dynamic shared memory is enabled
    I/TC: Normal World virtualization support is disabled
    I/TC: Asynchronous notifications are disabled
    [    0.823647] optee: revision 4.1 (012cdca4)
    [    0.840089] optee: dynamic shared memory is enabled
    [    0.849481] optee: initialized driver
    [    0.854484] Initializing XFRM netlink socket
    [    0.858875] NET: Registered PF_PACKET protocol family
    [    0.864084] Key type dns_resolver registered
    [    0.868669] registered taskstats version 1
    [    0.872870] Loading compiled-in X.509 certificates
    [    0.883620] ti-sci 44083000.system-controller: ABI: 3.1 (firmware rev 0x0009 '9.2.4--v09.02.04 (Kool Koala)')
    [    0.924651] omap_i2c 42120000.i2c: bus 0 rev0.12 at 400 kHz
    [    0.931153] pca953x 1-0021: supply vcc not found, using dummy regulator
    [    0.938019] pca953x 1-0021: using no AI
    [    0.962490] pca953x 1-0020: supply vcc not found, using dummy regulator
    [    0.969303] pca953x 1-0020: using no AI
    [    0.973878] pca953x 1-0022: supply vcc not found, using dummy regulator
    [    0.980685] pca953x 1-0022: using AI
    [    0.984988] omap_i2c 2000000.i2c: bus 1 rev0.12 at 400 kHz
    [    0.991386] pca953x 2-0020: supply vcc not found, using dummy regulator
    [    0.998269] pca953x 2-0020: using no AI
    [    1.026386] omap_i2c 2040000.i2c: bus 2 rev0.12 at 400 kHz
    [    1.032666] pca953x 3-0020: supply vcc not found, using dummy regulator
    [    1.039504] pca953x 3-0020: using no AI
    [    1.066374] omap_i2c 2050000.i2c: bus 3 rev0.12 at 400 kHz
    [    1.072172] ti-sci-intr 42200000.interrupt-controller: Interrupt Router 125 domain created
    [    1.080715] ti-sci-intr bus@100000:interrupt-controller@a00000: Interrupt Router 148 domain created
    [    1.090059] ti-sci-intr 310e0000.interrupt-controller: Interrupt Router 227 domain created
    [    1.098722] ti-sci-inta 33d00000.msi-controller: Interrupt Aggregator domain 265 created
    [    1.109172] ti-udma 311a0000.dma-controller: Number of rings: 48
    [    1.115948] ti-udma 311a0000.dma-controller: Channels: 24 (bchan: 0, tchan: 8, rchan: 16)
    [    1.125181] k3-ringacc 2b800000.ringacc: Ring Accelerator probed rings:286, gp-rings[96,20] sci-dev-id:272
    [    1.135076] k3-ringacc 2b800000.ringacc: dma-ring-reset-quirk: disabled
    [    1.141837] k3-ringacc 2b800000.ringacc: RA Proxy rev. 66349100, num_proxies:64
    [    1.150828] k3-ringacc 3c000000.ringacc: Ring Accelerator probed rings:1024, gp-rings[878,128] sci-dev-id:259
    [    1.160978] k3-ringacc 3c000000.ringacc: dma-ring-reset-quirk: disabled
    [    1.167737] k3-ringacc 3c000000.ringacc: RA Proxy rev. 66349100, num_proxies:64
    [    1.175733] 40a00000.serial: ttyS1 at MMIO 0x40a00000 (irq = 216, base_baud = 6000000) is a 8250
    [    1.185267] 2880000.serial: ttyS2 at MMIO 0x2880000 (irq = 217, base_baud = 3000000) is a 8250
    [    1.194124] printk: console [ttyS2] enabled
    [    1.194124] printk: console [ttyS2] enabled
    [    1.202567] printk: bootconsole [ns16550a0] disabled
    [    1.202567] printk: bootconsole [ns16550a0] disabled
    [    1.214397] davinci_mdio 46000f00.mdio: Configuring MDIO in manual mode
    [    1.258067] davinci_mdio 46000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    1.266976] davinci_mdio 46000f00.mdio: phy[0]: device 46000f00.mdio:00, driver TI DP83867
    [    1.275254] am65-cpsw-nuss 46000000.ethernet: initializing am65 cpsw nuss version 0x6BA02102, cpsw version 0x6BA82102 Ports: 2 quirks:00000000
    [    1.288126] am65-cpsw-nuss 46000000.ethernet: initialized cpsw ale version 1.4
    [    1.295336] am65-cpsw-nuss 46000000.ethernet: ALE Table size 64
    [    1.301563] pps pps0: new PPS source ptp0
    [    1.305745] am65-cpsw-nuss 46000000.ethernet: CPTS ver 0x4e8a010b, freq:500000000, add_val:1 pps:1
    [    1.316137] am65-cpts 310d0000.cpts: CPTS ver 0x4e8a010c, freq:250000000, add_val:3 pps:0
    [    1.325760] gpio-mux mux-controller0: 2-way mux-controller registered
    [    1.325901] mmc0: CQHCI version 5.10
    [    1.336024] gpio-mux mux-controller1: 2-way mux-controller registered
    [    1.376744] mmc0: SDHCI controller on 4f80000.mmc [4f80000.mmc] using ADMA 64-bit
    [    1.469594] mmc0: Command Queue Engine enabled
    [    1.474058] mmc0: new HS400 MMC card at address 0001
    [    1.479493] mmcblk0: mmc0:0001 S0J56X 14.8 GiB
    [    1.487264]  mmcblk0: p1
    [    1.490245] mmcblk0boot0: mmc0:0001 S0J56X 31.5 MiB
    [    1.495907] mmcblk0boot1: mmc0:0001 S0J56X 31.5 MiB
    [    1.501449] mmcblk0rpmb: mmc0:0001 S0J56X 4.00 MiB, chardev (240:0)
    [    1.544474] tps6594-rtc tps6594-rtc.4.auto: registered as rtc0
    [    1.551178] tps6594-rtc tps6594-rtc.4.auto: setting system clock to 2022-04-28T17:43:23 UTC (1651167803)
    [    1.966318] omap-mailbox 31f80000.mailbox: omap mailbox rev 0x66fca100
    [    1.973218] omap-mailbox 31f81000.mailbox: omap mailbox rev 0x66fca100
    [    1.980017] omap-mailbox 31f82000.mailbox: omap mailbox rev 0x66fca100
    [    1.986801] omap-mailbox 31f84000.mailbox: omap mailbox rev 0x66fca100
    [    1.994924] ti-udma 285c0000.dma-controller: Channels: 26 (tchan: 13, rchan: 13, gp-rflow: 8)
    [    2.005116] ti-udma 31150000.dma-controller: Channels: 60 (tchan: 30, rchan: 30, gp-rflow: 16)
    [    2.017543] spi-nor spi0.0: s28hs512t (65536 Kbytes)
    [    2.022560] 7 cmdlinepart partitions found on MTD device 47040000.spi.0
    [    2.029162] Creating 7 MTD partitions on "47040000.spi.0":
    [    2.034634] 0x000000000000-0x000000080000 : "ospi.tiboot3"
    [    2.040747] 0x000000080000-0x000000280000 : "ospi.tispl"
    [    2.046632] 0x000000280000-0x000000680000 : "ospi.u-boot"
    [    2.052520] 0x000000680000-0x0000006c0000 : "ospi.env"
    [    2.058159] 0x0000006c0000-0x000000700000 : "ospi.env.backup"
    [    2.064370] 0x000000800000-0x000003fc0000 : "ospi.rootfs"
    [    2.070254] 0x000003fc0000-0x000004000000 : "ospi.phypattern"
    [    2.082075] spi-nor spi1.0: mt25qu512a (65536 Kbytes)
    [    2.087166] 7 fixed-partitions partitions found on MTD device 47050000.spi.0
    [    2.094202] Creating 7 MTD partitions on "47050000.spi.0":
    [    2.099675] 0x000000000000-0x000000080000 : "qspi.tiboot3"
    [    2.105708] 0x000000080000-0x000000280000 : "qspi.tispl"
    [    2.111510] 0x000000280000-0x000000680000 : "qspi.u-boot"
    [    2.117364] 0x000000680000-0x0000006c0000 : "qspi.env"
    [    2.122947] 0x0000006c0000-0x000000700000 : "qspi.env.backup"
    [    2.129166] 0x000000800000-0x000003fc0000 : "qspi.rootfs"
    [    2.135023] 0x000003fc0000-0x000004000000 : "qspi.phypattern"
    [    2.141836] davinci_mdio 46000f00.mdio: Configuring MDIO in manual mode
    [    2.186074] davinci_mdio 46000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    2.195025] davinci_mdio 46000f00.mdio: phy[0]: device 46000f00.mdio:00, driver TI DP83867
    [    2.203320] am65-cpsw-nuss 46000000.ethernet: initializing am65 cpsw nuss version 0x6BA02102, cpsw version 0x6BA82102 Ports: 2 quirks:00000000
    [    2.216226] am65-cpsw-nuss 46000000.ethernet: initialized cpsw ale version 1.4
    [    2.223436] am65-cpsw-nuss 46000000.ethernet: ALE Table size 64
    [    2.229723] pps pps0: new PPS source ptp1
    [    2.233902] am65-cpsw-nuss 46000000.ethernet: CPTS ver 0x4e8a010b, freq:500000000, add_val:1 pps:1
    [    2.243984] am65-cpsw-nuss 46000000.ethernet: set new flow-id-base 48
    [    2.251963] debugfs: Directory 'pd:39' with parent 'pm_genpd' already present!
    [    2.252305] mmc1: CQHCI version 5.10
    [    2.259230] debugfs: Directory 'pd:38' with parent 'pm_genpd' already present!
    [    2.277642] ALSA device list:
    [    2.280621]   No soundcards found.
    [    2.300669] mmc1: SDHCI controller on 4fb0000.mmc [4fb0000.mmc] using ADMA 64-bit
    [    2.308309] Waiting for root device PARTUUID=d2988d02-02...
    [    2.364352] mmc1: new ultra high speed SDR104 SDHC card at address 0001
    [    2.371427] mmcblk1: mmc1:0001 SD32G 29.1 GiB
    [    2.377407]  mmcblk1: p1 p2
    [    2.395396] EXT4-fs (mmcblk1p2): mounted filesystem with ordered data mode. Quota mode: none.
    [    2.403963] VFS: Mounted root (ext4 filesystem) on device 179:98.
    [    2.411387] devtmpfs: mounted
    [    2.415078] Freeing unused kernel memory: 1984K
    [    2.419717] Run /sbin/init as init process
    [    2.618832] NET: Registered PF_INET6 protocol family
    [    2.624514] Segment Routing with IPv6
    [    2.628196] In-situ OAM (IOAM) with IPv6
    [    2.657812] systemd[1]: systemd 250.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 +LIBFDISK -PCRE2 -PWQUALITY -P11KIT -QRENCODE -BZIP2 -LZ4 -XZ -ZLIB +ZSTD -BPF_FRAMEWORK -XKBCOMMON +UTMP +SYSVINIT default-hierarchy=hybrid)
    [    2.689282] systemd[1]: Detected architecture arm64.
    
    Welcome to Arago 2023.10!
    
    [    2.742329] systemd[1]: Hostname set to <am68-sk>.
    [    2.821368] systemd-sysv-generator[150]: SysV service '/etc/init.d/thermal-zone-init' lacks a native systemd unit file. Automatically generating a unit file for compatibility. Please update package to include a native systemd unit file, in order to make it more safe and robust.
    [    2.926759] systemd[1]: Configuration file /lib/systemd/system/ti-apps-launcher.service is marked executable. Please remove executable permission bits. Proceeding anyway.
    [    2.950442] systemd[1]: Configuration file /lib/systemd/system/seva-launcher.service is marked executable. Please remove executable permission bits. Proceeding anyway.
    [    3.003998] systemd[1]: /lib/systemd/system/bt-enable.service:9: Standard output type syslog is obsolete, automatically updating to journal. Please update your unit file, and consider removing the setting altogether.
    [    3.049518] systemd[1]: /etc/systemd/system/sync-clocks.service:11: Standard output type syslog is obsolete, automatically updating to journal. Please update your unit file, and consider removing the setting altogether.
    [    3.101254] systemd[1]: Queued start job for default target Graphical Interface.
    [    3.141469] systemd[1]: Created slice Slice /system/getty.
    [  OK  ] Created slice Slice /system/getty.
    [    3.163917] systemd[1]: Created slice Slice /system/modprobe.
    [  OK  ] Created slice Slice /system/modprobe.
    [    3.187567] systemd[1]: Created slice Slice /system/serial-getty.
    [  OK  ] Created slice Slice /system/serial-getty.
    [    3.211223] systemd[1]: Created slice User and Session Slice.
    [  OK  ] Created slice User and Session Slice.
    [    3.234322] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
    [  OK  ] Started Dispatch Password …ts to Console Directory Watch.
    [    3.258232] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
    [  OK  ] Started Forward Password R…uests to Wall Directory Watch.
    [    3.282332] systemd[1]: Reached target Path Units.
    [  OK  ] Reached target Path Units.
    [    3.302135] systemd[1]: Reached target Remote File Systems.
    [  OK  ] Reached target Remote File Systems.
    [    3.322129] systemd[1]: Reached target Slice Units.
    [  OK  ] Reached target Slice Units.
    [    3.342191] systemd[1]: Reached target Swaps.
    [  OK  ] Reached target Swaps.
    [    3.401424] systemd[1]: Listening on RPCbind Server Activation Socket.
    [  OK  ] Listening on RPCbind Server Activation Socket.
    [    3.426231] systemd[1]: Reached target RPC Port Mapper.
    [  OK  ] Reached target RPC Port Mapper.
    [    3.449468] systemd[1]: Listening on Process Core Dump Socket.
    [  OK  ] Listening on Process Core Dump Socket.
    [    3.470363] systemd[1]: Listening on initctl Compatibility Named Pipe.
    [  OK  ] Listening on initctl Compatibility Named Pipe.
    [    3.494530] systemd[1]: Listening on Journal Audit Socket.
    [  OK  ] Listening on Journal Audit Socket.
    [    3.514400] systemd[1]: Listening on Journal Socket (/dev/log).
    [  OK  ] Listening on Journal Socket (/dev/log).
    [    3.534422] systemd[1]: Listening on Journal Socket.
    [  OK  ] Listening on Journal Socket.
    [    3.554492] systemd[1]: Listening on Network Service Netlink Socket.
    [  OK  ] Listening on Network Service Netlink Socket.
    [    3.578455] systemd[1]: Listening on udev Control Socket.
    [  OK  ] Listening on udev Control Socket.
    [    3.598317] systemd[1]: Listening on udev Kernel Socket.
    [  OK  ] Listening on udev Kernel Socket.
    [    3.618370] systemd[1]: Listening on User Database Manager Socket.
    [  OK  ] Listening on User Database Manager Socket.
    [    3.662433] systemd[1]: Mounting Huge Pages File System...
             Mounting Huge Pages File System...
    [    3.685172] systemd[1]: Mounting POSIX Message Queue File System...
             Mounting POSIX Message Queue File System...
    [    3.709262] systemd[1]: Mounting Kernel Debug File System...
             Mounting Kernel Debug File System...
    [    3.730387] systemd[1]: Kernel Trace File System was skipped because of a failed condition check (ConditionPathExists=/sys/kernel/tracing).
    [    3.746844] systemd[1]: Mounting Temporary Directory /tmp...
             Mounting Temporary Directory /tmp...
    [    3.786596] systemd[1]: Starting Create List of Static Device Nodes...
             Starting Create List of Static Device Nodes...
    [    3.812914] systemd[1]: Starting Load Kernel Module configfs...
             Starting Load Kernel Module configfs...
    [    3.837003] systemd[1]: Starting Load Kernel Module drm...
             Starting Load Kernel Module drm...
    [    3.861838] systemd[1]: Starting Load Kernel Module fuse...
             Starting Load Kernel Module fuse...
    [    3.873882] fuse: init (API version 7.37)
    [    3.906664] systemd[1]: Starting Start psplash boot splash screen...
             Starting Start psplash boot splash screen...
    [    3.934269] systemd[1]: Starting RPC Bind...
             Starting RPC Bind...
    [    3.954350] systemd[1]: File System Check on Root Device was skipped because of a failed condition check (ConditionPathIsReadWrite=!/).
    [    3.986668] systemd[1]: Starting Journal Service...
             Starting Journal Service...
    [    4.007646] systemd[1]: Starting Load Kernel Modules...
             Starting Load Kernel Modules...
    [    4.026130] systemd[1]: Starting Generate network units from Kernel command line...
             Starting Generate network …ts from Kernel co[    4.039244] cryptodev: loading out-of-tree module taints kernel.
    mmand line...
    [    4.046652] cryptodev: driver 1.12 loaded.
    [    4.070970] systemd[1]: Starting Remount Root and Kernel File Systems...
             Starting Remount Root and Kernel File Systems...
    [    4.090858] EXT4-fs (mmcblk1p2): re-mounted. Quota mode: none.
    [    4.101836] systemd[1]: Starting Coldplug All udev Devices...
             Starting Coldplug All udev Devices...
    [    4.124070] systemd[1]: Started RPC Bind.
    [  OK  ] Started RPC Bind.
    [    4.142642] systemd[1]: Started Journal Service.
    [  OK  ] Started Journal Service.
    [  OK  ] Mounted Huge Pages File System.
    [  OK  ] Mounted POSIX Message Queue File System.
    [  OK  ] Mounted Kernel Debug File System.
    [  OK  ] Mounted Temporary Directory /tmp.
    [  OK  ] Finished Create List of Static Device Nodes.
    [  OK  ] Finished Load Kernel Module configfs.
    [  OK  ] Finished Load Kernel Module drm.
    [  OK  ] Finished Load Kernel Module fuse.
    [FAILED] Failed to start Start psplash boot splash screen.
    See 'systemctl status psplash-start.service' for details.
    [DEPEND] Dependency failed for Star…progress communication helper.
    [  OK  ] Finished Load Kernel Modules.
    [  OK  ] Finished Generate network units from Kernel command line.
    [  OK  ] Finished Remount Root and Kernel File Systems.
             Mounting FUSE Control File System...
             Mounting Kernel Configuration File System...
             Starting Flush Journal to Persistent Storage...
    [    4.498425] systemd-journald[165]: Received client request to flush runtime journal.
             Starting Apply Kernel Variables...
             Starting Create Static Device Nodes in /dev...
    [  OK  ] Mounted FUSE Control File System.
    [  OK  ] Mounted Kernel Configuration File System.
    [  OK  ] Finished Flush Journal to Persistent Storage.
    [  OK  ] Finished Apply Kernel Variables.
    [  OK  ] Finished Create Static Device Nodes in /dev.
    [  OK  ] Reached target Preparation for Local File Systems.
             Mounting /media/ram...
             Mounting /var/volatile...
    [    4.724923] audit: type=1334 audit(1651167806.668:2): prog-id=5 op=LOAD
    [    4.731904] audit: type=1334 audit(1651167806.676:3): prog-id=6 op=LOAD
             Starting Rule-based Manage…for Device Events and Files...
    [  OK  ] Finished Coldplug All udev Devices.
    [  OK  ] Mounted /media/ram.
    [  OK  ] Mounted /var/volatile.
             Starting Load/Save Random Seed...
    [  OK  ] Reached target Local File Systems.
             Starting Create Volatile Files and Directories...
    [  OK  ] Started Rule-based Manager for Device Events and Files.
    [  OK  ] Finished Create Volatile Files and Directories.
             Starting Network Time Synchronization...
             Starting Record System Boot/Shutdown in UTMP...
    [  OK  ] Finished Record System Boot/Shutdown in UTMP.
    [    5.122774] random: crng init done
    [  OK  ] Finished Load/Save Random Seed.
    [    5.163600] CAN device driver interface
    [  OK  ] Started Network Time Synchronization.
    [  OK  ] Found device /dev/ttyS2.
    [  OK  ] Reached target System Initialization.
    [  OK  ] Started Daily Cleanup of Temporary Directories.
    [  OK  ] Reached target System Time Set.
    [  OK  ] Started Daily rotation of log files.
    [    5.301706] mc: Linux media interface: v0.10
    [  OK  ] Reached target Timer Units.
    [  OK  ] Listening on Avahi mDNS/DNS-SD Stack Activation Socket.
    [    5.350180] cdns-mhdp8546 a000000.dp-bridge: invalid resource
    [  OK  ] Listening on D-Bus System Message B[    5.358582] videodev: Linux video capture interface: v2.00
    us Socket.
    [    5.374134] cdns-mhdp8546 a000000.dp-bridge: Failed to get SAPB memory resource, HDCP not supported
             Starting Docker Socket for the API...
    [  OK  ] Listening on dropbear.socket.
    [    5.466552] PVR_K:  209: Device: 4e20000000.gpu
    [    5.474003] k3-dsp-rproc 64800000.dsp: assigned reserved memory node c71-dma-memory@a6000000
    [  OK  ] Listening on PC/SC Smart Card Daemo[    5.487643] PVR_K:  209: Read BVNC 36.53.104.796 from HW device registers
    n Activation Socket.
    [    5.500169] PVR_K:  209: RGX Device registered BVNC 36.53.104.796 with 1 core in the system
    [    5.509264] k3-dsp-rproc 64800000.dsp: configured DSP for IPC-only mode
             Starting Weston socket...
    [    5.543497] remoteproc remoteproc0: 64800000.dsp is available
    [    5.552330] remoteproc remoteproc0: attaching to 64800000.dsp
             Starting D-Bus System Message Bus...[    5.558375] remoteproc remoteproc0: unsupported resource 65538
    
    [    5.569251] k3-dsp-rproc 64800000.dsp: DSP initialized in IPC-only mode
             Starting Reboot and dump vmcore via kexec.[    5.586311] rproc-virtio rproc-virtio.16.auto: assigned reserved memory node c71-dma-memory@a6000000
    ..
    [    5.597655] virtio_rpmsg_bus virtio0: rpmsg host is online
    [    5.603284] rproc-virtio rproc-virtio.16.auto: registered virtio0 (type 7)
    [    5.605195] virtio_rpmsg_bus virtio0: creating channel ti.ipc4.ping-pong addr 0xd
    [    5.610180] remoteproc remoteproc0: remote processor 64800000.dsp is now attached
    [    5.625112] k3-dsp-rproc 64800000.dsp: register pm nitifiers in remoteproc mode
    [  OK  ] Listening on Docker Socket for the [    5.633919] k3-dsp-rproc 65800000.dsp: assigned reserved memory node c71-dma-memory@a7000000
    API.
    [    5.636053] virtio_rpmsg_bus virtio0: creating channel rpmsg_chrdev addr 0xe
    [  OK  ] Listening on Weston socket.
    [    5.664293] platform 41000000.r5f: R5F core may have been powered on by a different host, programmed state (0) != actual state (1)
    [    5.668838] [drm] Initialized pvr 23.3.6512818 20170530 for 4e20000000.gpu on minor 1
    [    5.685931] k3-dsp-rproc 65800000.dsp: configured DSP for IPC-only mode
    [  OK  ] Finished Reboot and dump vmcore via kexec.
    [  OK  ] Reached target Socket Units.
    [    5.719745] remoteproc remoteproc1: 65800000.dsp is available
    [    5.729605] platform 41000000.r5f: configured R5F for IPC-only mode
    [    5.736372] remoteproc remoteproc1: attaching to 65800000.dsp
    [    5.779180] remoteproc remoteproc1: unsupported resource 65538
    [    5.787057] k3-dsp-rproc 65800000.dsp: DSP initialized in IPC-only mode
    [    5.800200] rproc-virtio rproc-virtio.17.auto: assigned reserved memory node c71-dma-memory@a7000000
    [    5.812129] platform 41000000.r5f: assigned reserved memory node r5f-dma-memory@a0000000
    [    5.825875] virtio_rpmsg_bus virtio1: rpmsg host is online
    [    5.833581] virtio_rpmsg_bus virtio1: creating channel ti.ipc4.ping-pong addr 0xd
    [    5.841266] virtio_rpmsg_bus virtio1: creating channel rpmsg_chrdev addr 0xe
    [    5.854816] rproc-virtio rproc-virtio.17.auto: registered virtio1 (type 7)
    [    5.886851] remoteproc remoteproc2: 41000000.r5f is available
    [    5.893061] remoteproc remoteproc2: attaching to 41000000.r5f
    [  OK  ] Started D-Bus System Message Bus.
    [  OK  ] Reached target Basic System.[    5.927197] remoteproc remoteproc1: remote processor 65800000.dsp is now attached
    
    [    5.951804] platform 41000000.r5f: R5F core initialized in IPC-only mode
    [    5.954923] k3-dsp-rproc 65800000.dsp: register pm nitifiers in remoteproc mode
    [  OK  ] Started Job spooling tools.
    [    6.009062] rproc-virtio rproc-virtio.18.auto: assigned reserved memory node r5f-dma-memory@a0000000
    [    6.023753] virtio_rpmsg_bus virtio2: rpmsg host is online
    [    6.036352] virtio_rpmsg_bus virtio2: creating channel ti.ipc4.ping-pong addr 0xd
    [  OK  ] Started Periodic Command Scheduler virtio_rpmsg_bus virtio2: creating channel rpmsg_chrdev addr 0xe
    [0m.
    [    6.067547] rproc-virtio rproc-virtio.18.auto: registered virtio2 (type 7)
    [    6.084257] remoteproc remoteproc2: remote processor 41000000.r5f is now attached
             Starting DEMO...
    [    6.110005] platform 41400000.r5f: R5F core may have been powered on by a different host, programmed state (0) != actual state (1)
             Starting Print notice about GPLv3 packages[    6.131377] platform 41400000.r5f: configured R5F for IPC-only mode
    ...
    [    6.138796] platform 41400000.r5f: assigned reserved memory node r5f-dma-memory@a1000000
             Starting IPv6 Packet Filtering Framework...
             Starting IPv4 Packet Filtering Framework...
    [  OK  ] Started irqbalance daemon.
    [    6.201106] remoteproc remoteproc3: 41400000.r5f is available
             Starting Telephony service...[    6.216923] remoteproc remoteproc3: attaching to 41400000.r5f
    
             Starting PulseAudio Sound System...
             Starting Expand the rootfs…ll size of the boot device....
    [  OK  ] Started Seva Launcher Service.
    [  OK  ] Started strongSwan IPsec I…IKEv2 daemon using ipsec.conf.
    [    6.282609] audit: type=1334 audit(1651167808.228:4): prog-id=7 op=LOAD
             Starting User Login Management...[    6.295082] audit: type=1334 audit(1651167808.236:5): prog-id=8 op=LOAD
    
    [    6.308406] platform 41400000.r5f: R5F core initialized in IPC-only mode
    [    6.315494] rproc-virtio rproc-virtio.19.auto: assigned reserved memory node r5f-dma-memory@a1000000
    [    6.327290] virtio_rpmsg_bus virtio3: rpmsg host is online
    [    6.334875] rproc-virtio rproc-virtio.19.auto: registered virtio3 (type 7)
    [    6.341883] virtio_rpmsg_bus virtio3: creating channel ti.ipc4.ping-pong addr 0xd
    [  OK  ] Started TEE Supplicant.
    [    6.349805] virtio_rpmsg_bus virtio3: creating channel rpmsg_chrdev addr 0xe
             Starting Telnet Server...
    [    6.361813] remoteproc remoteproc3: remote processor 41400000.r5f is now attached
    [    6.383154] platform 5c00000.r5f: configured R5F for IPC-only mode
    [  OK  ] Started ti-apps-launcher service.
    [  OK  ] Started DEMO.
    [  OK  ] Finished IPv6 Packet Filtering Framework.
    [  OK  ] Finished IPv4 Packet Filtering Framework.
    [  OK  ] Finished Telnet Server.
    [  OK  ] Reached target Preparation for Network.
             Starting Network Configuration...
    [  OK  ] Started Telephony service.
    [    6.475669] platform 5c00000.r5f: assigned reserved memory node r5f-dma-memory@a2000000
    [    6.543281] remoteproc remoteproc4: 5c00000.r5f is available
    [    6.549942] remoteproc remoteproc4: attaching to 5c00000.r5f
    [    6.556600] platform 5c00000.r5f: R5F core initialized in IPC-only mode
    [    6.564711] rproc-virtio rproc-virtio.20.auto: assigned reserved memory node r5f-dma-memory@a2000000
    [    6.574426] virtio_rpmsg_bus virtio4: rpmsg host is online
    [    6.583184] rproc-virtio rproc-virtio.20.auto: registered virtio4 (type 7)
    [    6.590183] virtio_rpmsg_bus virtio4: creating channel ti.ipc4.ping-pong addr 0xd
    [    6.598081] remoteproc remoteproc4: remote processor 5c00000.r5f is now attached
    [    6.605711] virtio_rpmsg_bus virtio4: creating channel rpmsg_chrdev addr 0xe
    [    6.614776] platform 5d00000.r5f: configured R5F for IPC-only mode
    [    6.624454] platform 5d00000.r5f: assigned reserved memory node r5f-dma-memory@a3000000
    [    6.636077] remoteproc remoteproc5: 5d00000.r5f is available
    [    6.681525] remoteproc remoteproc5: attaching to 5d00000.r5f
    [    6.690403] platform 5d00000.r5f: R5F core initialized in IPC-only mode
    [    6.697231] rproc-virtio rproc-virtio.21.auto: assigned reserved memory node r5f-dma-memory@a3000000
    [    6.712072] virtio_rpmsg_bus virtio5: rpmsg host is online
    [    6.718203] virtio_rpmsg_bus virtio5: creating channel ti.ipc4.ping-pong addr 0xd
    [    6.720458] rproc-virtio rproc-virtio.21.auto: registered virtio5 (type 7)
    [    6.730917] virtio_rpmsg_bus virtio5: creating channel rpmsg_chrdev addr 0xe
    [    6.732708] remoteproc remoteproc5: remote processor 5d00000.r5f is now attached
    [    6.780791] platform 5e00000.r5f: configured R5F for IPC-only mode
    [    6.834100] Bluetooth: Core ver 2.22
    [    6.842049] NET: Registered PF_BLUETOOTH protocol family
    [    6.847458] Bluetooth: HCI device and connection manager initialized
    [    6.866139] Bluetooth: HCI socket layer initialized
    [    6.874122] Bluetooth: L2CAP socket layer initialized
    [    6.886239] Bluetooth: SCO socket layer initialized
    [    6.888309] platform 5e00000.r5f: assigned reserved memory node r5f-dma-memory@a4000000
    [    6.900614] remoteproc remoteproc6: 5e00000.r5f is available
    [    6.907572] remoteproc remoteproc6: attaching to 5e00000.r5f
    [    6.913841] platform 5e00000.r5f: R5F core initialized in IPC-only mode
    [    6.920623] rproc-virtio rproc-virtio.22.auto: assigned reserved memory node r5f-dma-memory@a4000000
    [    6.930517] virtio_rpmsg_bus virtio6: rpmsg host is online
    [    6.936230] rproc-virtio rproc-virtio.22.auto: registered virtio6 (type 7)
    [    6.940766] virtio_rpmsg_bus virtio6: creating channel ti.ipc4.ping-pong addr 0xd
    [    6.943165] remoteproc remoteproc6: remote processor 5e00000.r5f is now attached
    [    6.958268] virtio_rpmsg_bus virtio6: creating channel rpmsg_chrdev addr 0xe
    [    6.965508] platform 5f00000.r5f: configured R5F for IPC-only mode
    [    6.973697] platform 5f00000.r5f: assigned reserved memory node r5f-dma-memory@a5000000
    [    7.047124] remoteproc remoteproc7: 5f00000.r5f is available
    [    7.052889] remoteproc remoteproc7: attaching to 5f00000.r5f
    [    7.059178] platform 5f00000.r5f: R5F core initialized in IPC-only mode
    [    7.068478] rproc-virtio rproc-virtio.23.auto: assigned reserved memory node r5f-dma-memory@a5000000
    [    7.080371] virtio_rpmsg_bus virtio7: rpmsg host is online
    [    7.085979] rproc-virtio rproc-virtio.23.auto: registered virtio7 (type 7)
    [    7.093041] remoteproc remoteproc7: remote processor 5f00000.r5f is now attached
    [    7.093534] virtio_rpmsg_bus virtio7: creating channel ti.ipc4.ping-pong addr 0xd
    [    7.114950] virtio_rpmsg_bus virtio7: creating channel rpmsg_chrdev addr 0xe
    [    7.129415] m_can_platform 26a1000.can: m_can device registered (irq=753, version=32)
    [    7.143433] m_can_platform 40528000.can: m_can device registered (irq=754, version=32)
    [    7.168413] m_can_platform 40568000.can: m_can device registered (irq=755, version=32)
    [  OK  ] Started User Login Management.
    [    7.188099] m_can_platform 2731000.can: m_can device registered (irq=757, version=32)
    [    7.223028] m_can_platform 2751000.can: m_can device registered (irq=758, version=32)
    [    7.261330] cfg80211: Loading compiled-in X.509 certificates for regulatory database
    [  OK  ] Finished Expand the rootfs…full size of the boot device..
    [    7.358815] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
    [    7.367253] cfg80211: Loaded X.509 cert 'wens: 61c038651aabdcf94bd0ac7ff06c7248db18c600'
    [  OK  ] Started PulseAudio Sound System.
    [  OK  ] Started Network Configuration.
             Starting Network Name Resolution...
    [    7.724018] am65-cpsw-nuss 46000000.ethernet eth0: PHY [46000f00.mdio:00] driver [TI DP83867] (irq=POLL)
    [    7.749638] am65-cpsw-nuss 46000000.ethernet eth0: configuring for phy/rgmii-rxid link mode
    [  OK  ] Started Network Name Resolution.
    [  OK  ] Reached target Network.
    [  OK  ] Reached target Host and Network Name Lookups.
             Starting Avahi mDNS/DNS-SD Stack...
             Starting Enable and configure wl18xx bluetooth stack...
             Starting containerd container runtime...
    [  OK  ] Started Netperf Benchmark Server.
    [  OK  ] Started NFS status monitor for NFSv2/3 locking..
             Starting Simple Network Ma…ent Protocol (SNMP) Daemon....
             Starting Permit User Sessions...
    [  OK  ] Finished Enable and configure wl18xx bluetooth stack.
    [  OK  ] Finished Permit User Sessions.
    [  OK  ] Started Getty on tty1.
    [  OK  ] Started Serial Getty on ttyS2.
    [  OK  ] Reached target Login Prompts.
             Starting Synchronize System and HW clocks...
             Starting Weston, a Wayland…ositor, as a system service...
    [  OK  ] Started Avahi mDNS/DNS-SD Stack.
    [    8.697014] audit: type=1334 audit(1651167810.640:6): prog-id=9 op=LOAD
    [    8.710135] audit: type=1334 audit(1651167810.648:7): prog-id=10 op=LOAD
             Starting User Database Manager...
    [    8.786012] omap_rng 4e10000.rng: Random Number Generator ver. 241b34c
    [    8.881310] [drm] Initialized tidss 1.0.0 20180215 for 4a00000.dss on minor 0
    [  OK  ] Listening on Load/Save RF …itch Status /dev/rfkill Watch.
    [    8.932296] cdns-csi2rx: probe of 4504000.csi-bridge failed with error -22
    [    9.069749] tidss 4a00000.dss: [drm] Cannot find any crtc or sizes
    [  OK  ] Finished Synchronize System and HW [    9.083660] cdns-csi2rx: probe of 4514000.csi-bridge failed with error -22
    clocks.
    [  OK  ] Started User Database Manager.
    [    9.258798] tidss 4a00000.dss: [drm] Cannot find any crtc or sizes
    [  OK  ] Created slice User Slice of UID 1000.
             Starting User Runtime Directory /run/user/1000...
    [  OK  ] Finished User Runtime Directory /run/user/1000.
             Starting User Manager for UID 1000...
    [    9.434660] audit: type=1006 audit(1651167811.380:8): pid=670 uid=0 old-auid=4294967295 auid=1000 tty=(none) old-ses=4294967295 ses=1 res=1
    [    9.447465] audit: type=1300 audit(1651167811.380:8): arch=c00000b7 syscall=64 success=yes exit=4 a0=8 a1=ffffdf63ca38 a2=4 a3=ffffa3eea020 items=0 ppid=1 pid=670 auid=1000 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=1 comm="(systemd)" exe="/lib/systemd/systemd" key=(null)
    [    9.474330] audit: type=1327 audit(1651167811.380:8): proctitle="(systemd)"
    [    9.514712] m_can_platform 40568000.can mcu_mcan1: renamed from can2
    [    9.657734] tidss 4a00000.dss: [drm] Cannot find any crtc or sizes
    [    9.684745] m_can_platform 2731000.can main_mcan3: renamed from can3
    [    9.714441] m_can_platform 2751000.can main_mcan5: renamed from can4
    [    9.761002] m_can_platform 40528000.can mcu_mcan0: renamed from can1
    [    9.810645] m_can_platform 26a1000.can main_mcan16: renamed from can0
    [  OK  ] Created slice Slice /system/systemd-fsck.
    [  OK  ] Found device /dev/mmcblk0p1.
             Starting File System Check on /dev/mmcblk0p1...
    [  OK  ] Started User Manager for UID 1000.
    [  OK  ] Started Session c1 of User weston.
    [   10.258231] audit: type=1006 audit(1651167812.200:9): pid=624 uid=0 old-auid=4294967295 auid=1000 tty=tty7 old-ses=4294967295 ses=2 res=1
    [   10.270985] audit: type=1300 audit(1651167812.200:9): arch=c00000b7 syscall=64 success=yes exit=4 a0=8 a1=ffffdf63ca38 a2=4 a3=ffffa3eea020 items=0 ppid=1 pid=624 auid=1000 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=tty7 ses=2 comm="(weston)" exe="/lib/systemd/systemd" key=(null)
    [   10.297376] audit: type=1327 audit(1651167812.200:9): proctitle="(weston)"
    [  OK  ] Finished File System Check on /dev/mmcblk0p1.
             Mounting /run/media/rootfs-mmcblk0p1...
    [  OK  ] Started Simple Network Man…ement Protocol (SNMP) Daemon..
    [   10.448246] EXT4-fs (mmcblk0p1): mounted filesystem with ordered data mode. Quota mode: none.
    [  OK  ] Mounted /run/media/rootfs-mmcblk0p1.
    [  OK  ] Found device /dev/mmcblk1p1.
             Starting File System Check on /dev/mmcblk1p1...
    [   10.845592] PVR_K:  624: RGX Firmware image 'rgx.fw.36.53.104.796' loaded
    [  OK  ] Finished File System Check on /dev/[   10.864153] PVR_K:  624: Shader binary image 'rgx.sh.36.53.104.796' loaded
    mmcblk1p1.
             Mounting /run/media/boot-mmcblk1p1...
    [  OK  ] Mounted /run/media/boot-mmcblk1p1.
    [  OK  ] Started containerd container runtime.
    [  OK  ] Started Weston, a Wayland …mpositor, as a system service.
    [   12.521882] sh (810): drop_caches: 1
    ***************************************************************
    ***************************************************************
    NOTICE: This file system contains the following GPL-3.0 packages:
            adwaita-icon-theme-symbolic
            autoconf
            bash-dev
            bash
            bc
            binutils
            cifs-utils
            coreutils-stdbuf
            coreutils
            cpio
            cpp-symlinks
            cpp
            dosfstools
            elfutils
            g++-symlinks
            g++
            gawk
            gcc-symlinks
            gcc
            gdb
            gdbserver
            gettext
            glmark2
            gnu-config
            grep
            grub-common
            grub-editenv
            grub-efi
            gzip
            hidapi
            less
            libasm1
            libatomic-dev
            libatomic1
            libbfd
            libdebuginfod1
            libdw1
            libelf1
            libgcc-s-dev
            libgcc1
            libgdbm-compat4
            libgdbm-dev
            libgdbm6
            libgettextlib
            libgettextsrc
            libgmp10
            libidn2-0
            libmpc3
            libmpfr6
            libopcodes
            libqt5charts-examples
            libqt5charts-plugins
            libqt5charts-qmlplugins
            libqt5charts5
            libqt5sensors-plugins
            libqt5sensors-qmlplugins
            libqt5sensors5
            libqt5serialport-examples
            libqt5serialport-plugins
            libqt5serialport-qmlplugins
            libqt5serialport5
            libqt5svg-examples
            libqt5svg-plugins
            libqt5svg-qmlplugins
            libqt5svg5
            libqt5virtualkeyboard-plugins
            libqt5virtualkeyboard-qmlplugins
            libqt5virtualkeyboard5
            libqt5webchannel-plugins
            libqt5webchannel-qmlplugins
            libqt5webchannel5
            libreadline-dev
            libreadline8
            libstdc++-dev
            libstdc++6
            libunistring2
            m4-dev
            m4
            make
            nettle
            parted
            piglit
            qt3d-plugins
            qt3d-qmlplugins
            qt3d
            qtbase-examples
            qtbase-plugins
            qtbase-qmlplugins
            qtbase
            qtconnectivity-plugins
            qtconnectivity-qmlplugins
            qtconnectivity
            qtdeclarative-plugins
            qtdeclarative-qmlplugins
            qtdeclarative-tools
            qtdeclarative
            qtgraphicaleffects-qmlplugins
            qtlocation-examples
            qtlocation-plugins
            qtlocation-qmlplugins
            qtlocation
            qtmultimedia-examples
            qtmultimedia-plugins
            qtmultimedia-qmlplugins
            qtmultimedia
            qtquick3d-plugins
            qtquick3d-qmlplugins
            qtquick3d
            qtquics-qmlplugins.control
            qtquics2-plugins.control
            qtquics2-qmlplugins.control
            qtquics2.control
            qtscript-examples
            qtscript-plugins
            qtscript-qmlplugins
            qtscript
            qtwayland-examples
            qtwayland-plugins
            qtwayland-qmlplugins
            qtwayland
            tar
            which
    
    If you do not wish to distribute GPL-3.0 components please remove
    the above packages prior to distribution.  This can be done using
    the opkg remove command.  i.e.:
        opkg remove <package>
    Where <package> is the name printed in the list above
    
    NOTE: If the package is a dependency of another package you
          will be notified of the dependent packages.  You should
          use the --force-removal-of-dependent-packages option to
          also remove the dependent packages as well
    ***************************************************************
    ***************************************************************
    
     _____                    _____           _         _
    |  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_
    |     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|
    |__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|
                  |___|                    |___|
    
    Arago Project am68-sk -
    
    Arago 2023.10 am68-sk -
    
    am68-sk login: root
    [   15.711264] audit: type=1006 audit(1651167817.656:10): pid=1189 uid=0 old-auid=4294967295 auid=0 tty=(none) old-ses=4294967295 ses=3 res=1
    [   15.723797] audit: type=1300 audit(1651167817.656:10): arch=c00000b7 syscall=64 success=yes exit=1 a0=8 a1=ffffdf63ca38 a2=1 a3=ffffa3eea020 items=0 ppid=1 pid=1189 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=3 comm="(systemd)" exe="/lib/systemd/systemd" key=(null)
    [   15.750902] audit: type=1327 audit(1651167817.656:10): proctitle="(systemd)"
    [   15.782964] audit: type=1334 audit(1651167817.728:11): prog-id=11 op=LOAD
    [   15.789833] audit: type=1300 audit(1651167817.728:11): arch=c00000b7 syscall=280 success=yes exit=8 a0=5 a1=fffff6959ab0 a2=78 a3=0 items=0 ppid=1 pid=1189 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=3 comm="systemd" exe="/lib/systemd/systemd" key=(null)
    [   15.815812] audit: type=1327 audit(1651167817.728:11): proctitle="(systemd)"
    [   15.822938] audit: type=1334 audit(1651167817.728:12): prog-id=11 op=UNLOAD
    [   15.829953] audit: type=1334 audit(1651167817.728:13): prog-id=12 op=LOAD
    [   15.836801] audit: type=1300 audit(1651167817.728:13): arch=c00000b7 syscall=280 success=yes exit=8 a0=5 a1=fffff6959b50 a2=78 a3=0 items=0 ppid=1 pid=1189 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=3 comm="systemd" exe="/lib/systemd/systemd" key=(null)
    [   15.862290] audit: type=1327 audit(1651167817.728:13): proctitle="(systemd)"
    root@am68-sk:~# lspci
    root@am68-sk:~# modprobe pci_j721e_host
    [   29.590934] j721e-pcie-host 2910000.pcie: host bridge /bus@100000/pcie@2910000 ranges:
    [   29.598951] j721e-pcie-host 2910000.pcie:       IO 0x0018001000..0x0018010fff -> 0x0018001000
    [   29.608525] j721e-pcie-host 2910000.pcie:      MEM 0x0018011000..0x001fffffff -> 0x0018011000
    [   29.617443] j721e-pcie-host 2910000.pcie:   IB MEM 0x0000000000..0xffffffffffff -> 0x0000000000
    [   29.728810] j721e-pcie-host 2910000.pcie: Link up
    [   29.733698] j721e-pcie-host 2910000.pcie: PCI host bridge to bus 0000:00
    [   29.740416] pci_bus 0000:00: root bus resource [bus 00-ff]
    [   29.745959] pci_bus 0000:00: root bus resource [io  0x0000-0xffff] (bus address [0x18001000-0x18010fff])
    [   29.755498] pci_bus 0000:00: root bus resource [mem 0x18011000-0x1fffffff]
    [   29.762477] pci 0000:00:00.0: [104c:b013] type 01 class 0x060400
    [   29.768671] pci 0000:00:00.0: supports D1
    [   29.772687] pci 0000:00:00.0: PME# supported from D0 D1 D3hot
    [   29.778455] pci 0000:00:00.0: reg 0x224: [mem 0x00000000-0x003fffff 64bit]
    [   29.785331] pci 0000:00:00.0: VF(n) BAR0 space: [mem 0x00000000-0x00ffffff 64bit] (contains BAR0 for 4 VFs)
    [   29.797166] pci 0000:00:00.0: bridge configuration invalid ([bus 00-00]), reconfiguring
    [   29.805404] pci 0000:01:00.0: [1987:5013] type 00 class 0x010802
    [   29.811503] pci 0000:01:00.0: reg 0x10: [mem 0x00000000-0x00003fff 64bit]
    [   29.818767] pci 0000:01:00.0: 7.876 Gb/s available PCIe bandwidth, limited by 8.0 GT/s PCIe x1 link at 0000:00:00.0 (capable of 31.504 Gb/s with 8.0 GT/s PCIe x4 link)
    [   30.954234] pci_bus 0000:01: busn_res: [bus 01-ff] end is updated to 01
    [   30.960879] pci 0000:00:00.0: BAR 7: assigned [mem 0x18400000-0x193fffff 64bit]
    [   30.968189] pci 0000:00:00.0: BAR 14: assigned [mem 0x18100000-0x181fffff]
    [   30.975073] pci 0000:01:00.0: BAR 0: assigned [mem 0x18100000-0x18103fff 64bit]
    [   30.982401] pci 0000:00:00.0: PCI bridge to [bus 01]
    [   30.987400] pci 0000:00:00.0:   bridge window [mem 0x18100000-0x181fffff]
    [   30.994442] pcieport 0000:00:00.0: enabling device (0000 -> 0002)
    [   31.000814] pcieport 0000:00:00.0: PME: Signaling with IRQ 766
    [   31.007007] pcieport 0000:00:00.0: AER: enabled with IRQ 766
    [   31.013257] nvme nvme0: pci function 0000:01:00.0
    [   31.018041] nvme 0000:01:00.0: enabling device (0000 -> 0002)
    [   31.113269] nvme nvme0: allocated 128 MiB host memory buffer.
    [   31.121283] nvme nvme0: 2/0/0 default/read/poll queues
    root@am68-sk:~# [   31.712168] EXT4-fs (nvme0n1): mounted filesystem with ordered data mode. Quota mode: none.
    
    root@am68-sk:~# uname -a
    Linux am68-sk 6.1.80-ti-g1c154b1fe4c4 #1 SMP PREEMPT Thu Mar 14 13:59:07 UTC 2024 aarch64 aarch64 aarch64 GNU/Linux
    root@am68-sk:~#
    
    

    Regards,

    Takuma

  • Hi,expert

    when we use the ep is not ready ,we enable 4 pcie and Bar assined is wrong,

    we share the log to kangjia

    the issue like :

    1: after kernel start up and insmod pcie ko 

    2: we recan the pice likely 

    echo 1 > /sys/bus/pci/device/0000:00:00.0/remove 

    echo 1 > /sys/bus/pci/rescan 

  • Hi Haitang,

    Ok, understood. I will reach out to Kangjia for the logs.

    Regards,

    Takuma

  • Hi Haitang,

    I got some logs from Kangjia, but unfortunately I cannot get a good grasp on the issue being described. Can you send the following:

    • Full "dmesg" logs
    • Output from loading up the PCIe kernel module manually using insmod
    • And output from running the remove/rescan commands

    Regards,

    Takuma

  • Hi,expert

    This log I cant see four pcie enable, the issue should be connect more than 2 eps,than scan all the pcie tree

    Maybe its different with our board

    Thanks 

  • Hi,expert

    this module shoud be modified to m  please confirm 

    CONFIG_SOCIONEXT_SYNQUACER_PREITS=y
    CONFIG_PCI=y
    CONFIG_PCI_MSI=y
    CONFIG_PCI_J721E=y
    CONFIG_PCIE_CADENCE=y
    CONFIG_PCIE_CADENCE_HOST=y
    config like this
    CONFIG_PCI=m
    CONFIG_PCI_MSI=m
    CONFIG_PCI_J721E=m
    CONFIG_PCIE_CADENCE=m
    CONFIG_PCIE_CADENCE_HOST=m
  • Hi Haitang,

    That may be the missing piece. If the PCIe driver is currently built into the kernel, please try out the config change to build as a module as mentioned in your post.

    Regards,

    Takuma

  • Hi,expert

    we want to disable the pcie ep mode from kernel ,but now this is setup ''Y',it can be setup to 'M' ?

    TI have some patch to disable ep ?

    CONFIG_PCI_ENDPOINT=y
    CONFIG_PCI_EPF_TEST=y
    CONFIG_PCI_DRA7XX_EP=y
    CONFIG_PCI_ENDPOINT=y
    CONFIG_PCI_ENDPOINT_CONFIGFS=y
    CONFIG_PCI_EPF_TEST=y
    CONFIG_PCI_J721E=y
    CONFIG_PCIE_CADENCE_EP=y

  • Hi Haitang,

    'y' means build PCIe driver into kernel. Deleting the line will make it so that the PCIe driver is not built into the kernel. And 'm' means to build as a kernel module.

    If you want to completely disable EP, then putting 'status = "disabled"' in device tree in the pcie ep nodes here should disable EP: https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/arch/arm64/boot/dts/ti/k3-j784s4-evm.dts?h=ti-linux-6.1.y#n1005. But this means kernel does not see the EP at all, but is this what is needed? 

    On the other hand, if the desire is to still load EP kernel driver at runtime, I see you have used "insmod" in the past, but does "modprobe" also not work? The "insmod" command requires you to manually load in all the dependency, while "modprobe" automatically should detect dependencies and load them in. So I have suspicion on whether you were loading in all the module dependency for insmod.

    Regards,

    Takuma

  • yes,we want to “insmod“ the PCIE ep module and ep control driver   

  • Hi Haitang,

    Is there a specific reason for using "insmod" instead of "modprobe"?

    Regards,

    Takuma

  • Hi Takuma,
    This project very special and the OS not Linux and need different third party to joint development. The reasons show as following:

    1.Use insmod are very convenient for customer to verify PCIE driver. Because customer need change some code to transfer data from Linux user space to kernel space.

    2. A72 run Huawei's OS and their OS not provide "blacklist.conf" to configure it.

  • Hi Kangjia, 

    This project very special and the OS not Linux and need different third party to joint development.

    Understood. Then the best recommendation we can do is simply to use Linux driver and modprobe tool as a reference. We can provide support for hardware and software from TI, since that is where we have the most knowledge in. However, the best we can do for an OS and software that is not owned by TI is suggestions and speculations.

    • Customer can use "lsmod" to list the kernel modules, and find which modules are dependencies of which to load with insmod similar to how modprobe loads dependent modules recursively. This should give you a good idea for what the Linux driver does that you can reference for your custom OS.
    • Alternatively, "modprobe --show-depends <module>" can list the kernel module dependency. Then manually load the dependencies with insmod similar to how modprobe loads dependent modules recursively. This should also give you a good idea for what the Linux driver does.
    • I cannot comment on how Huawei's OS can not load PCIe kernel module on boot. This is customer specific and dependent on how Huawei's OS works.

    Regards,

    Takuma

  • Hi Kangjia,

    As a side note, it looks like 9.x SDK compiles PCIe driver as a kernel module vs 8.x SDK where it compiles into the kernel. You can reference the config file in 9.x SDK for compiling PCIe driver as a module: https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/arch/arm64/configs/defconfig?h=ti-linux-6.1.y.

    Regards,

    Takuma

  • Hi ,TI expert

    Do have some guide how to use setup bar resource ,and we want to setup bar ?

  • Hi Haitang,

    We provide a reference through the EP/RC example for setting up BAR.

    Specifically, this driver here: https://git.ti.com/cgit/ti-linux-kernel/ti-linux-kernel/tree/drivers/pci/endpoint/functions/pci-epf-test.c?h=ti-linux-6.1.y#n872

    Regards,

    Takuma