Closed PeterSuh-Q3 closed 1 year ago
Thank you for sharing arpl's modules.tgz is directly decompressed to /usr/lib/modules/ of rd.gz, so what already exists in rd.gz does not actually need to be included in modules.tgz
Oh, I seem to have misread it. them're not in rd.gz
Could you please share with me the command to check dependencies like above?
workspace=$PWD
for M in `ls ${workspace}`; do
depends=(`modinfo "${workspace}/${M}" | grep depends: | awk -F: '{print $2}' | awk '$1=$1' | sed 's/,/ /g'`)
if [ ${#depends[*]} -gt 0 ]; then
for k in ${depends[@]}; do
[ ! -f "${workspace}/${k}" ] && echo "[W] '${M}' depends '${k}' does not exist"
done
fi
done
thank you I made some adjustments to make it usable in the Github Codespaces Ubuntu terminal environment. It works fine.
@PeterSuh-Q3 ➜ /workspaces/arpl-modules (main) $ cat chk.sh
#!/usr/bin/env bash
for D in `ls -d *-*/`; do
E=$(echo ${D} | sed 's#/##')
echo "${E} directory"
for M in `ls ./${E}/*.ko`; do
depends=`modinfo "${M}" | grep depends: | awk -F: '{print $2}' | awk '$1=$1' | sed 's/,/ /g'`
if [ ${#depends[*]} -gt 0 ]; then
for k in `echo "$depends"`; do
[ ! -f "./${E}/${k}.ko" ] && echo "[W] ${M} depends ${k} does not exist"
done
fi
done
done
@PeterSuh-Q3 ➜ /workspaces/arpl-modules (main) $ sh chk.sh apollolake-4.4.180 directory [W] ./apollolake-4.4.180/b44.ko depends ssb does not exist [W] ./apollolake-4.4.180/dvb-usb-dib0700.ko depends dib7000m does not exist [W] ./apollolake-4.4.180/dvb-usb-dib0700.ko depends dib9000 does not exist [W] ./apollolake-4.4.180/dvb-usb-dib0700.ko depends dibx000_common does not exist [W] ./apollolake-4.4.180/dvb-usb-dib0700.ko depends dib0090 does not exist [W] ./apollolake-4.4.180/dvb-usb-dib0700.ko depends dib0070 does not exist [W] ./apollolake-4.4.180/dvb-usb-dib0700.ko depends dib3000mc does not exist [W] ./apollolake-4.4.180/hid-generic.ko depends hid does not exist [W] ./apollolake-4.4.180/m88ds3103.ko depends regmap-i2c does not exist [W] ./apollolake-4.4.180/qla4xxx.ko depends libiscsi does not exist [W] ./apollolake-4.4.180/ts2020.ko depends regmap-i2c does not exist [W] ./apollolake-4.4.180/usbcore.ko depends usb-common does not exist apollolake-4.4.302 directory [W] ./apollolake-4.4.302/acpi-cpufreq.ko depends processor does not exist [W] ./apollolake-4.4.302/atlantic.ko depends crc-itu-t does not exist [W] ./apollolake-4.4.302/b44.ko depends ssb does not exist [W] ./apollolake-4.4.302/dvb-usb-dib0700.ko depends dib7000m does not exist [W] ./apollolake-4.4.302/dvb-usb-dib0700.ko depends dib9000 does not exist [W] ./apollolake-4.4.302/dvb-usb-dib0700.ko depends dibx000_common does not exist [W] ./apollolake-4.4.302/dvb-usb-dib0700.ko depends dib0090 does not exist [W] ./apollolake-4.4.302/dvb-usb-dib0700.ko depends dib0070 does not exist [W] ./apollolake-4.4.302/dvb-usb-dib0700.ko depends dib3000mc does not exist [W] ./apollolake-4.4.302/m88ds3103.ko depends regmap-i2c does not exist [W] ./apollolake-4.4.302/r8153_ecm.ko depends cdc_ether does not exist [W] ./apollolake-4.4.302/ts2020.ko depends regmap-i2c does not exist [W] ./apollolake-4.4.302/usbcore.ko depends usb-common does not exist [W] ./apollolake-4.4.302/vxlan.ko depends udp_tunnel does not exist [W] ./apollolake-4.4.302/vxlan.ko depends ip6_udp_tunnel does not exist ...
yes, there are some differences between different platforms, and some dependencies are not easy to solve
Starting with mdio.ko you pointed out, I checked more modules for missing dependencies. Most of them were modules that had to be imported from vanilla modules. mdio had 4 nics and dependencies Six vanilla modules for fabio's console addon to work were missing on the two platforms below.
cfbcopyarea.ko cfbfillrect.ko cfbimgblt.ko fb.ko fb_sys_fops.ko fbdev.ko
After applying this module, the console (cgetty of M Shell) works normally.
https://github.com/PeterSuh-Q3/arpl-modules/tree/main/vanilla/apollolake-4.4.302
https://github.com/PeterSuh-Q3/arpl-modules/tree/main/vanilla/geminilake-4.4.302