#+title: Working on the P2041-RDB * GitHub - https://github.com/openwrt/openwrt/pull/3731 * Work ** Get it booting *** TODO Add CONFIG_CORENET_GENERIC to build config - https://github.com/openwrt/openwrt/pull/3731#issuecomment-778836945 ** Links - [[https://github.com/openwrt/openwrt/pull/3731][Main Github PR]] *** DPAA - [[https://www.kernel.org/doc/html/v5.8/networking/device_drivers/freescale/dpaa.html][QorIQ DPAA driver overview]] - [[https://www.nxp.com/files-static/training/doc/ftf/2014/FTF-NET-F0246.pdf][Troubleshooting Techniques for QorIQ eTSEC and DPAA platforms]] - [[https://www.nxp.com/docs/en/application-note/AN4785.pdf][Modifying DPAA Offloading: Application Notes]] - [[https://www.nxp.com/docs/en/supporting-information/QORIQ_LS1046A_BSP_V0-4_REV-A.pdf][Info on a later (LS1046A) BSP]] - [[https://community.nxp.com/t5/QorIQ/Disable-or-reduce-DPAA-reserved-memory/m-p/814723][Confirmation that DPAA initialization is required to use networking HW on these devices]] - [[https://gist.github.com/mcbridematt/83b313d64ff6df78c72b7c5e93b5880c][Funtoo bootlog gist from a LS1043V]] *** Memory Reservation - [[https://www.kernel.org/doc/Documentation/devicetree/bindings/reserved-memory/reserved-memory.txt][Reserving Memory via the Device Tree: The Linux Kernel documentation]] ** BMAN setup *** GitHub note I noticed some errors regarding memory reservation failures for initialization of the necessary DPAA hardware cores. I checked the device tree and found no reserved-memory node. I then used u-boot's fdt tool to show the device tree after I had loaded it into TFTP. Turns out I was loading it into RAM which was mapped to flash, which rejected it silently. After setting fdtaddr elsewhere, the memory reservation occured properly and some new kernel log messages came up (yay!) #+begin_quote [ 0.000000] OF: reserved mem: initialized node qman-fqd, compatible id fsl,qman-fqd [ 0.000000] OF: reserved mem: initialized node qman-pfdr, compatible id fsl,qman-pfdr [ 0.000000] OF: reserved mem: initialized node bman-fbpr, compatible id fsl,bman-fbpr #+end_quote **** Full dmesg [[file:of_mem_yes_reserved.log][file:~/Sync/org/HardwareDev/P2041/of_mem_yes_reserved.log]] ** FMAN Setup *** CONFIG_CLK_QORIQ - [[https://community.nxp.com/t5/P-Series/p2041-kernel-upgrade-to-the-4-1-provided-by-2-0-SDK/td-p/650893][NXP community link on this symbol]] - https://cateee.net/lkddb/web-lkddb/CLK_QORIQ.html **** dmesg bug #+begin_quote dmesg [ 2.637538] ucc_geth_driver: QE UCC Gigabit Ethernet Controller [ 2.643587] fsl-fman ffe400000.fman: read_dts_node: Failed to get FM0 clock structure [ 2.651409] fsl-fman: probe of ffe400000.fman failed with error -5 #+end_quote ** Github subtarget duplicity issue https://github.com/openwrt/openwrt/pull/3731#discussion_r549361610 *** TODO Respond to Adschm RE: subtargeting Upon review, it's probably a good idea to keep this split. The P2041 uses DPAA instead of eTSEC for its networking hardware, and that requires a bunch of other otherwise incompatible kernel options. Or so I'd assume. I could probably test with my P1020-based Aerohive AP330. - Note: Unless we can vary kernel options per-target? - Uh, does that work? packages need to be shared and some packages may differ based on those kernel options. Maybe? - The vermagic definitely differs. If we want to consolidate I'd prefer to speak to @CHKDSK88 about consolidating p2020 into p1020 -- those two boards are much more similar.