On 10 Jun 2023-06-10 Vagrant Cascadian <[email protected]> wrote: > On 2023-06-10, Bernhard wrote: > > I'm interested in the Router BANANA Pi R3 from Sinovoip: > > https://wiki.banana-pi.org/Banana_Pi_BPI-R3 > > > > This Banana Pi has MediaTek MT7986 (Filogic 830). > > I cannot say what it will take to support it in debian for sure... > ... > The other main thing is to check what support is needed in the linux > kernel...
The good news is that it appears to be supported in the upstream kernel. The bad new starts with this: $ grep -r MEDIATEK debian/config/ debian/config/config:CONFIG_WLAN_VENDOR_MEDIATEK=y debian/config/arm64/config.cloud-arm64:# CONFIG_ARCH_MEDIATEK is not set Which is not relevant for the Banana Pi BPI-R3 ... $ grep MEDIATEK /boot/config-6.1.0-11-arm64 # CONFIG_ARCH_MEDIATEK is not set # CONFIG_MEDIATEK_GE_PHY is not set CONFIG_WLAN_VENDOR_MEDIATEK=y ... "CONFIG_ARCH_MEDIATEK is not set" means that there (essentially) isn't *anything* wrt MEDIATEK enabled in the Debian kernel ... (same for 6.5 btw) I have a script which helps with identifying which kernel modules would be needed based on the "compatible" strings in the dts file and running it on the mt7986a-bananapi-bpi-r3.dts revealed 1 missing component ... but a rather important one, which AFAICT is related to ARCH_MEDIATEK not being enabled. The dts file also includes a .dtsi file and scanning that file revealed mostly missing "Debian config settings:" lines and thus also any enabled modules in the Debian kernel. My script is very crude and will only give a starting point which I then would enhance by filling in the missing parts. But I'm not motivated enough to do that for a board which I don't have (as it's quite a bit of work) ;-) Hope it still helps.
compatible: "arm,armv8-timer" source file: drivers/clocksource/arm_arch_timer.c drivers/clocksource/Kconfig: ARM_ARCH_TIMER (bool) compatible: "arm,cortex-a53" compatible: "arm,gic-v3" compatible: "arm,psci-0.2" source file: drivers/firmware/psci/psci.c drivers/firmware/psci/Kconfig: ARM_PSCI_FW (bool) compatible: "fixed-clock" source file: drivers/clk/clk-fixed-rate.c drivers/clk/Kconfig: COMMON_CLK (bool) Debian config settings: debian/config/arm64/config:CONFIG_COMMON_CLK=y compatible: "inside-secure,safexcel-eip97" source file: drivers/crypto/inside-secure/safexcel.c drivers/crypto/Kconfig: CRYPTO_DEV_SAFEXCEL (tristate) Debian config settings: debian/config/arm64/config:CONFIG_CRYPTO_DEV_SAFEXCEL=m compatible: "mediatek,mt7986a" compatible: "mediatek,mt7986a-pinctrl" source file: drivers/pinctrl/mediatek/pinctrl-mt7986.c drivers/pinctrl/mediatek/Kconfig: PINCTRL_MT7986 (bool) compatible: "mediatek,mt7986-apmixedsys" source file: drivers/clk/mediatek/clk-mt7986-apmixed.c drivers/clk/mediatek/Kconfig: COMMON_CLK_MT7986 (tristate) compatible: "mediatek,mt7986-auxadc" compatible: "mediatek,mt7986-efuse" compatible: "mediatek,mt7986-eth" source file: drivers/net/ethernet/mediatek/mtk_eth_soc.c compatible: "mediatek,mt7986-ethsys" source file: drivers/clk/mediatek/clk-mt7986-eth.c drivers/clk/mediatek/Kconfig: COMMON_CLK_MT7986_ETHSYS (tristate) compatible: "mediatek,mt7986-i2c" source file: drivers/i2c/busses/i2c-mt65xx.c drivers/i2c/busses/Kconfig: I2C_MT65XX (tristate) compatible: "mediatek,mt7986-infracfg" source file: drivers/clk/mediatek/clk-mt7986-infracfg.c drivers/clk/mediatek/Kconfig: COMMON_CLK_MT7986 (tristate) compatible: "mediatek,mt7986-mmc" source file: drivers/mmc/host/mtk-sd.c drivers/mmc/host/Kconfig: MMC_MTK (tristate) Debian config settings: debian/config/config:# CONFIG_MMC_MTK is not set compatible: "mediatek,mt7986-pcie" compatible: "mediatek,mt7986-pwm" source file: drivers/pwm/pwm-mediatek.c drivers/pwm/Kconfig: PWM_MEDIATEK (tristate) compatible: "mediatek,mt7986-rng" source file: drivers/char/hw_random/mtk-rng.c drivers/char/hw_random/Kconfig: HW_RANDOM_MTK (tristate) compatible: "mediatek,mt7986-sgmiisys_0" source file: drivers/clk/mediatek/clk-mt7986-eth.c drivers/clk/mediatek/Kconfig: COMMON_CLK_MT7986_ETHSYS (tristate) compatible: "mediatek,mt7986-sgmiisys_1" source file: drivers/clk/mediatek/clk-mt7986-eth.c drivers/clk/mediatek/Kconfig: COMMON_CLK_MT7986_ETHSYS (tristate) compatible: "mediatek,mt7986-spi-ipm" compatible: "mediatek,mt7986-thermal" source file: drivers/thermal/mediatek/auxadc_thermal.c drivers/thermal/mediatek/Kconfig: MTK_SOC_THERMAL (tristate) compatible: "mediatek,mt7986-topckgen" source file: drivers/clk/mediatek/clk-mt7986-topckgen.c drivers/clk/mediatek/Kconfig: COMMON_CLK_MT7986 (tristate) compatible: "mediatek,mt7986-tphy" compatible: "mediatek,mt7986-uart" compatible: "mediatek,mt7986-wdt" source file: drivers/watchdog/mtk_wdt.c drivers/watchdog/Kconfig: MEDIATEK_WATCHDOG (tristate) compatible: "mediatek,mt7986-wed" compatible: "mediatek,mt7986-wed-pcie" compatible: "mediatek,mt7986-wmac" source file: drivers/net/wireless/mediatek/mt76/mt7915/soc.c drivers/net/wireless/mediatek/mt76/mt7915/Kconfig: MT7986_WMAC (bool) compatible: "mediatek,mt7986-wo-ccif" compatible: "mediatek,mt7986-xhci" compatible: "simple-bus" source file: drivers/of/unittest-data/tests-overlay.dtsi source file: drivers/of/platform.c source file: drivers/bus/ti-sysc.c drivers/bus/Kconfig: TI_SYSC (bool) source file: drivers/bus/simple-pm-bus.c drivers/of/Kconfig: OF (bool) Debian config settings: debian/config/config.cloud:# CONFIG_OF is not set debian/config/config:# CONFIG_OF is not set debian/config/kernelarch-mips/config.loongson-3:CONFIG_OF=y
kernel-modules-mt7986a-bananapi-bpi-r3.dts
Description: audio/vnd.dts
signature.asc
Description: This is a digitally signed message part.

