################################################################################## # Helper script: /load_kernel_modules.scr/platform/aarch64/mediatek # Purpose......: Set the Kernel modules for Hardware Models that uses the MediaTek # SoC within the Slackware initial RAM disk ('OS initrd') # and the Slackware Installer. # Currently supported SoC Models: # * Kompanio 1200 & 1390 (MT8195) # * Kompanio 820 & 828 (MT8192) # * Kompanio 839 (MT8188) # * Kompanio 520 & 528 (MT8186) # Currently supported Hardware Models: # * Lenovo IdeaPad Slim 3 (14M868) - Magneton (tested) # * ASUS Chromebook CM14 Flip (CM1402F) - Tentacruel (not tested) # * ASUS Chromebook CM14 (CM1402C) - Tentacool (not tested) # * Lenovo 300e Yoga Chromebook Gen 4 - Steelix (not tested) # * Lenovo 100e Chromebook Gen 4 - Rusty (not tested) # * Kompanio 500 (MT8183) # Currently supported Hardware Models: # * Lenovo Chromebook Duet/Lenovo IdeaPad Duet Chromebook (tested) # * Lenovo 10e Chromebook Tablet (not tested) # * Acer Chromebook Spin 311 (CP311-3H) (not tested) # * HP Chromebook x360 11MK G3 EE (not tested) # * ASUS Chromebook Flip CM3 (CM3200) (not tested) # * ASUS Chromebook Detachable CM3 (CM3000) (not tested) # * ASUS Chromebook Detachable CZ1 (not tested) # This script is sourced from '/load_kernel_modules' ################################################################################## ################################################################################## # Author.......: William Burlamachi # Upstream repo: https://gitlab.com/w.slk-hw/cros-slk-aarch64 # Date.........: 22-Jun-2026 # Maintainer...: William Burlamachi ################################################################################## # define these at the specific board loader #MOD_CARDS+=" ufs-mediatek" #MOD_NET+=" dwmac-mediatek mtk-phy-lib mtk-2p5ge phy-mtk-xfi-tphy" # Note: If the Chromebooks are booted in generic 'PLATWALK' mode, the SOC_NAME # will need to be defined within its own case statement, if module black listing # is required. case $HWM in "Acer Tomato (rev1) board"|"Acer Tomato (rev2) board"|"Acer Tomato (rev3 - 4) board"|"HP Dojo (sku 1, 3, 5, 7) board"|"MediaTek MT8195 "*|PLATWALK) SOC_NAME=mt8195 platform_detected=1 # Load the parent platform drivers for the SoC: kmod_load_subsyst_soc=1 MOD_CLKS=" clk-${SOC_NAME}-apusys_pll clk-${SOC_NAME}-cam \ clk-${SOC_NAME}-ccu clk-${SOC_NAME}-img \ clk-${SOC_NAME}-ipe clk-${SOC_NAME}-scp_adsp \ clk-${SOC_NAME}-vdec clk-${SOC_NAME}-vdo0 \ clk-${SOC_NAME}-vdo1 clk-${SOC_NAME}-venc \ clk-${SOC_NAME}-vpp0 clk-${SOC_NAME}-vpp1 \ clk-${SOC_NAME}-wpe" MOD_PHY+=" ${MOD_CLKS} mtk_iommu mtk-smi \ pwm-mediatek mediatek-cpufreq-hw mediatek-cpufreq" MOD_USB+=" mediatek" MOD_SOC+=" mtk-mutex mtk-mmsys mtk-socinfo mtk-svs" MOD_SOC+=" mtk-pmic-wrap mtk-dvfsrc" ;; "Google Hayato rev1"|"Google Spherion (rev0 - 3)"|"MediaTek MT8192 "*|PLATWALK) SOC_NAME=mt8192 platform_detected=1 # Load the parent platform drivers for the SoC: kmod_load_subsyst_soc=1 MOD_CLKS=" clk-${SOC_NAME}-aud clk-${SOC_NAME}-cam \ clk-${SOC_NAME}-img clk-${SOC_NAME}-ipe \ clk-${SOC_NAME}-mdp clk-${SOC_NAME}-msdc \ clk-${SOC_NAME}-scp_adsp clk-${SOC_NAME}-vdec \ clk-${SOC_NAME}-venc" MOD_PHY+=" ${MOD_CLKS} mtk_iommu mtk-smi \ pwm-mediatek mediatek-cpufreq-hw mediatek-cpufreq" MOD_USB+=" mediatek" MOD_SOC+=" mtk-mutex mtk-mmsys mtk-socinfo mtk-svs" MOD_SOC+=" mtk-dvfsrc" ;; "Google Ciri sku"*|"MediaTek MT8188 "*|PLATWALK) SOC_NAME=mt8188 platform_detected=1 # Load the parent platform drivers for the SoC: kmod_load_subsyst_soc=1 MOD_CLKS=" clk-${SOC_NAME}-adsp_audio26m clk-${SOC_NAME}-cam \ clk-${SOC_NAME}-ccu clk-${SOC_NAME}-img \ clk-${SOC_NAME}-ipe clk-${SOC_NAME}-vdec \ clk-${SOC_NAME}-vdo0 clk-${SOC_NAME}-vdo1 \ clk-${SOC_NAME}-venc clk-${SOC_NAME}-vpp0 \ clk-${SOC_NAME}-vpp1 clk-${SOC_NAME}-wpe" MOD_PHY+=" ${MOD_CLKS} mtk_iommu mtk-smi \ pwm-mediatek mediatek-cpufreq-hw mediatek-cpufreq" MOD_USB+=" mediatek" # Ethernet network driver: #MOD_NET+=" dwmac-mediatek mtk-phy-lib mtk-2p5ge" # Any modules related to compression/decompression and cryptography MOD_CMP+=" " #MOD_CRYPTO+=" " MOD_SOC+=" mtk-mutex mtk-mmsys mtk-socinfo mtk-svs" ;; "Google Magneton "*|"Google Ponyta sku"*|"Google Rusty "*|"Google Starmie sku"*|"Google Steelix "*|"Google Tentacool "*|"Google Tentacruel "*|"Google Voltorb "*|"Google chinchou "*|"Google squirtle "*|"MediaTek MT8186"*|PLATWALK) SOC_NAME=mt8186 platform_detected=1 # Load the parent platform drivers for the SoC: kmod_load_subsyst_soc=1 MOD_CLKS=" clk-${SOC_NAME}-cam clk-${SOC_NAME}-img \ clk-${SOC_NAME}-ipe clk-${SOC_NAME}-mdp \ clk-${SOC_NAME}-apmixedsys clk-${SOC_NAME}-mm \ clk-${SOC_NAME}-vdec clk-${SOC_NAME}-venc \ clk-${SOC_NAME}-wpe clk-${SOC_NAME}-topckgen \ clk-${SOC_NAME}-infra_ao clk-${SOC_NAME}-mfg clk-${SOC_NAME}-img \ clk-${SOC_NAME}-mcu clk-${SOC_NAME}-cam \ clk-${SOC_NAME}-imp_iic_wrap clk-${SOC_NAME}-mdp" MOD_PHY+=" ${MOD_CLKS} mtk_iommu mtk-smi \ pwm-mediatek mediatek-cpufreq-hw mediatek-cpufreq" MOD_PHY+=" phy-mtk-hdmi-drv phy-mtk-dp lvts-thermal mtk-pmic-keys" MOD_PHY+=" mtk-dvfsrc-regulator phy-mtk-xsphy phy-mtk-tphy mtk-adsp-ipc" # Video/display drivers: MOD_VIDEO+=" pwm_bl drm_display_helper drm_dma_helper drm_dp_aux_bus mediatek-drm mtk_cec panel-edp gpu-sched panfrost mtk_dp pwm-mtk-disp" MOD_VIDEO+=" analogix_dp anx7625 ite-it6505 phy-mtk-mipi-dsi-drv" MOD_VIDEO+=" simple-bridge mtk_hdmi mtk_hdmi_ddc panel-boe-tv101wum-nl6 cec" # MFD (Multi Functional Devices) drivers: MOD_MFD+=" spi-mtk-nor spi-mt65xx mt6397" # For SDHC/MMC storage: MOD_CARDS+=" dw_mmc dw_mmc_pltfm mtk-sd ahci_mtk" # Drivers for USB hardware for this particular Hardware Model: MOD_USB+=" mediatek mtu3 xhci-mtk-hcd" # Ethernet network driver: #MOD_NET+=" dwmac-mediatek mtk-phy-lib mtk-2p5ge" # Any modules related to compression/decompression and cryptography MOD_CMP+=" " #MOD_CRYPTO+=" " # Real Time Clock: MOD_RTC+=" rtc_mt6397" # Modules for the peripherals on the Hardware Model's main board # (outside of the SoC itself) MOD_HWM+=" tpm-tis-i2c-cr50 cros_ec_keyb mt6358-regulator led-class-multicolor" # Modules for the IP blocks/peripherals embedded within the SoC: MOD_SOC+=" mtk-mutex mtk-mmsys mtk-socinfo mtk-svs" MOD_SOC+=" mtk-pmic-wrap mtk-devapc mtk-cmdq-helper mtk-dvfsrc" ;; "Google burnet"*|"Google cozmo"*|"Google damu"*|"Google fennel"*|"Google juniper"*|"Google kappa"*|"Google kenzo"*|"Google makomo"*|"Google pico"*|"Google willow"*|"MediaTek kakadu"*|"Google katsu"*|"MediaTek kodama sku"*|"MediaTek krane sku"*|"Pumpkin MT8183"|"MediaTek MT8183"*|PLATWALK) SOC_NAME=mt8183 platform_detected=1 # Load the parent platform drivers for the SoC: kmod_load_subsyst_soc=1 MOD_CLKS=" clk-${SOC_NAME}-audio clk-${SOC_NAME}-cam \ clk-${SOC_NAME}-img clk-${SOC_NAME}-ipu0 \ clk-${SOC_NAME}-ipu1 clk-${SOC_NAME}-ipu_adl \ clk-${SOC_NAME}-vdec clk-${SOC_NAME}-venc \ clk-${SOC_NAME}-ipu_conn" MOD_PHY+=" ${MOD_CLKS} mtk_iommu mtk-smi \ pwm-mediatek mediatek-cpufreq-hw mediatek-cpufreq" # Drivers for PCI and other core sub systems: MOD_PHY+=" phy-mtk-hdmi-drv phy-mtk-dp mtk-pmic-keys" MOD_PHY+=" mtk-dvfsrc-regulator phy-mtk-xsphy phy-mtk-tphy mtk-adsp-ipc mt8183" # Video/display drivers: MOD_VIDEO+=" pwm_bl drm_display_helper drm_dma_helper drm_dp_aux_bus mediatek-drm mtk_cec panel-edp gpu-sched panfrost mtk_dp pwm-mtk-disp" MOD_VIDEO+=" analogix_dp anx7625 ite-it6505 phy-mtk-mipi-dsi-drv ite-it66121" MOD_VIDEO+=" simple-bridge mtk_hdmi mtk_hdmi_ddc panel-boe-tv101wum-nl6 cec mt6370-backlight" # MFD (Multi Functional Devices) drivers: MOD_MFD+=" spi-mtk-nor spi-mt65xx mt6360-core mt6370 mt6397 nvmem_mtk-efuse" # For SDHC/MMC storage: MOD_CARDS+=" dw_mmc dw_mmc_pltfm mtk-sd ahci_mtk" # Drivers for USB hardware for this particular Hardware Model: MOD_USB+=" mediatek mtu3 xhci-mtk-hcd tcpci_mt6370" # Ethernet network driver: #MOD_NET+=" dwmac-mediatek mtk-phy-lib mtk-2p5ge" # Any modules related to compression/decompression and cryptography MOD_CMP+=" " #MOD_CRYPTO+=" " # Real Time Clock: MOD_RTC+=" rtc_mt6397" # Modules for the peripherals on the Hardware Model's main board # (outside of the SoC itself) MOD_HWM+=" tpm-tis-i2c-cr50 mt6370-adc mt6360_charger mt6370-charger cros_ec_keyb mt6358-regulator led-class-multicolor" MOD_HWM+=" mt6360-adc" # Modules for the IP blocks/peripherals embedded within the SoC: MOD_SOC+=" mtk-mutex mtk-mmsys mtk-socinfo mtk-svs" MOD_SOC+=" mtk-pmic-wrap mtk-devapc mtk-cmdq-helper mtk-dvfsrc" ;; esac # TODO: fix screen orientation, hammer and accel #case $hwm in # "MediaTek krane sku"*) # # Define a post module load hook: # # Try to set the screen rotation. # function hwm_hook_post-modload() { # ( echo 3 > /sys/class/graphics/fbcon/rotation ) > /dev/null 2>&1 ;} #esac case $hwm in # MT8186 "Google Magneton board") HWM_SHORTNAME=google-magneton ;; "Google Tentacruel board") HWM_SHORTNAME=google-tentacruel ;; "Google Tentacool board") HWM_SHORTNAME=google-tentacool ;; "Google Steelix board") HWM_SHORTNAME=google-steelix ;; "Google Rusty board") HWM_SHORTNAME=google-rusty ;; "Google Voltorb board") HWM_SHORTNAME=google-voltorb ;; # MT8183 "MediaTek krane sku"*) HWM_SHORTNAME=google-krane ;; "Google burnet board") HWM_SHORTNAME=google-burnet ;; "Google cozmo board") HWM_SHORTNAME=google-cozmo ;; "Google damu board") HWM_SHORTNAME=google-damu ;; "Google kappa board") HWM_SHORTNAME=google-kappa ;; "Google pico board") HWM_SHORTNAME=google-pico ;; "Google pico6 board") HWM_SHORTNAME=google-pico6 ;; esac # The '/load_kernel_modules' script will load the modules # set above.