From a22bdf7c09b9ee9288b68f830fe072742977d0ef Mon Sep 17 00:00:00 2001 From: Shiji Yang Date: Wed, 10 Jul 2024 00:16:36 +0800 Subject: [PATCH 1/7] ramips: mtk-mmc: use "cd-inverted" to set CD line polarity "cd-inverted" is an upstream documented property used to indicate the CD line is actived high. We will introduce a new upstream SDHC driver, and this change will make them compatible with each other. Signed-off-by: Shiji Yang --- target/linux/ramips/dts/mt7628an_d-team_pbr-d1.dts | 2 +- target/linux/ramips/dts/mt7628an_jotale_js76x8.dtsi | 1 - target/linux/ramips/dts/mt7628an_mediatek_linkit-smart-7688.dts | 2 +- target/linux/ramips/dts/mt7628an_minew_g1-c.dts | 2 +- target/linux/ramips/dts/mt7628an_onion_omega2.dtsi | 1 - target/linux/ramips/dts/mt7628an_widora_neo.dtsi | 1 - target/linux/ramips/dts/mt7628an_wiznet_wizfi630s.dts | 2 +- target/linux/ramips/files/drivers/mmc/host/mtk-mmc/sd.c | 2 +- 8 files changed, 5 insertions(+), 8 deletions(-) diff --git a/target/linux/ramips/dts/mt7628an_d-team_pbr-d1.dts b/target/linux/ramips/dts/mt7628an_d-team_pbr-d1.dts index 940104d47e..bcd2cecb3a 100644 --- a/target/linux/ramips/dts/mt7628an_d-team_pbr-d1.dts +++ b/target/linux/ramips/dts/mt7628an_d-team_pbr-d1.dts @@ -171,5 +171,5 @@ &sdhci { status = "okay"; - mediatek,cd-high; + cd-inverted; }; diff --git a/target/linux/ramips/dts/mt7628an_jotale_js76x8.dtsi b/target/linux/ramips/dts/mt7628an_jotale_js76x8.dtsi index 96d36f66e0..0aee4e408a 100644 --- a/target/linux/ramips/dts/mt7628an_jotale_js76x8.dtsi +++ b/target/linux/ramips/dts/mt7628an_jotale_js76x8.dtsi @@ -132,7 +132,6 @@ &sdhci { status = "okay"; - mediatek,cd-low; }; &wmac { diff --git a/target/linux/ramips/dts/mt7628an_mediatek_linkit-smart-7688.dts b/target/linux/ramips/dts/mt7628an_mediatek_linkit-smart-7688.dts index 37b4b9baa5..fdce5cbec5 100644 --- a/target/linux/ramips/dts/mt7628an_mediatek_linkit-smart-7688.dts +++ b/target/linux/ramips/dts/mt7628an_mediatek_linkit-smart-7688.dts @@ -167,7 +167,7 @@ &sdhci { status = "okay"; - mediatek,cd-high; + cd-inverted; }; &wmac { diff --git a/target/linux/ramips/dts/mt7628an_minew_g1-c.dts b/target/linux/ramips/dts/mt7628an_minew_g1-c.dts index 3912f23a9e..603bc09fa6 100644 --- a/target/linux/ramips/dts/mt7628an_minew_g1-c.dts +++ b/target/linux/ramips/dts/mt7628an_minew_g1-c.dts @@ -151,5 +151,5 @@ &sdhci { status = "okay"; - mediatek,cd-high; + cd-inverted; }; diff --git a/target/linux/ramips/dts/mt7628an_onion_omega2.dtsi b/target/linux/ramips/dts/mt7628an_onion_omega2.dtsi index 983c7fc03e..d279cbcfb8 100644 --- a/target/linux/ramips/dts/mt7628an_onion_omega2.dtsi +++ b/target/linux/ramips/dts/mt7628an_onion_omega2.dtsi @@ -172,7 +172,6 @@ &sdhci { status = "okay"; - mediatek,cd-low; }; &wmac { diff --git a/target/linux/ramips/dts/mt7628an_widora_neo.dtsi b/target/linux/ramips/dts/mt7628an_widora_neo.dtsi index de3b7d625e..74df529bd2 100644 --- a/target/linux/ramips/dts/mt7628an_widora_neo.dtsi +++ b/target/linux/ramips/dts/mt7628an_widora_neo.dtsi @@ -175,7 +175,6 @@ &sdhci { status = "okay"; - mediatek,cd-low; }; &wmac { diff --git a/target/linux/ramips/dts/mt7628an_wiznet_wizfi630s.dts b/target/linux/ramips/dts/mt7628an_wiznet_wizfi630s.dts index 429b00c5b5..5714aaedc3 100644 --- a/target/linux/ramips/dts/mt7628an_wiznet_wizfi630s.dts +++ b/target/linux/ramips/dts/mt7628an_wiznet_wizfi630s.dts @@ -168,7 +168,7 @@ &sdhci { status = "okay"; - mediatek,cd-high; + cd-inverted; }; &wmac { diff --git a/target/linux/ramips/files/drivers/mmc/host/mtk-mmc/sd.c b/target/linux/ramips/files/drivers/mmc/host/mtk-mmc/sd.c index 756a1c5b57..3a9c69cb37 100644 --- a/target/linux/ramips/files/drivers/mmc/host/mtk-mmc/sd.c +++ b/target/linux/ramips/files/drivers/mmc/host/mtk-mmc/sd.c @@ -2245,7 +2245,7 @@ static int msdc_drv_probe(struct platform_device *pdev) //TODO: read this as bus-width from dt (via mmc_of_parse) mmc->caps |= MMC_CAP_4_BIT_DATA; - cd_active_low = !of_property_read_bool(pdev->dev.of_node, "mediatek,cd-high"); + cd_active_low = !of_property_read_bool(pdev->dev.of_node, "cd-inverted"); if (of_property_read_bool(pdev->dev.of_node, "mediatek,cd-poll")) mmc->caps |= MMC_CAP_NEEDS_POLL; From e755831f066b79cef9a3cae476296d22dc8ec594 Mon Sep 17 00:00:00 2001 From: Shiji Yang Date: Wed, 10 Jul 2024 00:16:36 +0800 Subject: [PATCH 2/7] ramips: mtk-sd: initialize pad delay and drive strength Port vendor register init values to upstream MTK SHDC driver. Signed-off-by: Shiji Yang --- ...tialize-pad-delay-and-drive-strength.patch | 39 +++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 target/linux/ramips/patches-6.6/831-mmc-mtk-sd-initialize-pad-delay-and-drive-strength.patch diff --git a/target/linux/ramips/patches-6.6/831-mmc-mtk-sd-initialize-pad-delay-and-drive-strength.patch b/target/linux/ramips/patches-6.6/831-mmc-mtk-sd-initialize-pad-delay-and-drive-strength.patch new file mode 100644 index 0000000000..1d5c6dcd40 --- /dev/null +++ b/target/linux/ramips/patches-6.6/831-mmc-mtk-sd-initialize-pad-delay-and-drive-strength.patch @@ -0,0 +1,39 @@ +From: Shiji Yang +Date: Wed, 10 Jul 2024 12:18:52 +0800 +Subject: [PATCH] mmc: mtk-sd: initialize the pad and tune registers + +Signed-off-by: Shiji Yang +--- + +--- a/drivers/mmc/host/mtk-sd.c ++++ b/drivers/mmc/host/mtk-sd.c +@@ -75,8 +75,12 @@ + #define MSDC_PATCH_BIT 0xb0 + #define MSDC_PATCH_BIT1 0xb4 + #define MSDC_PATCH_BIT2 0xb8 ++#define MSDC_PAD_CTRL0 0xe0 ++#define MSDC_PAD_CTRL1 0xe4 ++#define MSDC_PAD_CTRL2 0xe8 + #define MSDC_PAD_TUNE 0xec + #define MSDC_PAD_TUNE0 0xf0 ++#define MSDC_PAD_TUNE1 0xf4 + #define PAD_DS_TUNE 0x188 + #define PAD_CMD_TUNE 0x18c + #define EMMC51_CFG0 0x204 +@@ -1795,6 +1799,16 @@ static void msdc_init_hw(struct msdc_hos + MSDC_PAD_TUNE_RXDLYSEL); + } + ++ /* Set pins drive strength */ ++ writel(0x000d0044, host->base + MSDC_PAD_CTRL0); ++ writel(0x000e0044, host->base + MSDC_PAD_CTRL1); ++ writel(0x000e0044, host->base + MSDC_PAD_CTRL2); ++ ++ /* Set pad delay */ ++ writel(0x84101010, host->base + MSDC_PAD_TUNE); ++ writel(0x10101010, host->base + MSDC_PAD_TUNE0); ++ writel(0x10101010, host->base + MSDC_PAD_TUNE1); ++ + if (mmc->caps2 & MMC_CAP2_NO_SDIO) { + sdr_clr_bits(host->base + SDC_CFG, SDC_CFG_SDIO); + sdr_clr_bits(host->base + MSDC_INTEN, MSDC_INTEN_SDIOIRQ); From 53f23d1613195e225b4eb1456cdeb56884723ca1 Mon Sep 17 00:00:00 2001 From: Shiji Yang Date: Wed, 10 Jul 2024 00:16:36 +0800 Subject: [PATCH 3/7] ramips: modules: add Mediatek MMC driver package This is the upstream implementation of the MTK SD/SDIO/MMC card reader driver. It is an alternative solution for the downstream driver package "kmod-sdhci-mt7620". Signed-off-by: Shiji Yang Co-authored-by: John Thomson --- target/linux/ramips/modules.mk | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/target/linux/ramips/modules.mk b/target/linux/ramips/modules.mk index f32b82aef8..ced479dc93 100644 --- a/target/linux/ramips/modules.mk +++ b/target/linux/ramips/modules.mk @@ -4,6 +4,27 @@ OTHER_MENU:=Other modules +define KernelPackage/mmc-mtk + SUBMENU:=Other modules + TITLE:=MediaTek SD/MMC Card Interface support + DEPENDS:=@(TARGET_ramips_mt7620||TARGET_ramips_mt76x8||TARGET_ramips_mt7621) +kmod-mmc + KCONFIG:= \ + CONFIG_MMC \ + CONFIG_MMC_MTK \ + CONFIG_MMC_CQHCI + FILES:= \ + $(LINUX_DIR)/drivers/mmc/host/cqhci.ko \ + $(LINUX_DIR)/drivers/mmc/host/mtk-sd.ko + AUTOLOAD:=$(call AutoProbe,cqhci mtk-sd,1) +endef + +define KernelPackage/mmc-mtk/description + MediaTek(R) Secure digital and Multimedia card Interface. + This is needed if support for any SD/SDIO/MMC devices is required. +endef + +$(eval $(call KernelPackage,mmc-mtk)) + define KernelPackage/pwm-mediatek-ramips SUBMENU:=Other modules TITLE:=MT7628 PWM From 338f40b3b4ff925985d3a2055ef09200778d1cd6 Mon Sep 17 00:00:00 2001 From: Shiji Yang Date: Wed, 10 Jul 2024 00:16:36 +0800 Subject: [PATCH 4/7] ramips: make SoC dtsi compatible with upstream mmc-mtk driver Add all essential MTK SDHC properties to support the new mmc-mtk driver. Since this driver relies on power regulators, we also need to enable this feature for MT7620, just like MT762{1,8}. Signed-off-by: Shiji Yang Co-authored-by: John Thomson --- target/linux/ramips/dts/mt7620a.dtsi | 54 +++++++++++++++++-- target/linux/ramips/dts/mt7621.dtsi | 51 ++++++++++++++++-- target/linux/ramips/dts/mt7628an.dtsi | 54 +++++++++++++++++-- .../dts/mt7628an_hak5_wifi-pineapple-mk7.dts | 12 ++--- target/linux/ramips/mt7620/config-6.6 | 2 + 5 files changed, 153 insertions(+), 20 deletions(-) diff --git a/target/linux/ramips/dts/mt7620a.dtsi b/target/linux/ramips/dts/mt7620a.dtsi index a0429ade45..0e925b4dcc 100644 --- a/target/linux/ramips/dts/mt7620a.dtsi +++ b/target/linux/ramips/dts/mt7620a.dtsi @@ -32,6 +32,35 @@ compatible = "mti,cpu-interrupt-controller"; }; + mmc_clk: mmc-clock { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <48000000>; + clock-accuracy = <100>; + }; + + mmc_reg_1v8: regulator-1v8 { + compatible = "regulator-fixed"; + + enable-active-high; + + regulator-always-on; + regulator-max-microvolt = <1800000>; + regulator-min-microvolt = <1800000>; + regulator-name = "mmc_io"; + }; + + mmc_reg_3v3: regulator-3v3 { + compatible = "regulator-fixed"; + + enable-active-high; + + regulator-always-on; + regulator-max-microvolt = <3300000>; + regulator-min-microvolt = <3300000>; + regulator-name = "mmc_power"; + }; + palmbus: palmbus@10000000 { compatible = "palmbus"; reg = <0x10000000 0x200000>; @@ -493,15 +522,34 @@ interrupts = <17>; }; - sdhci: sdhci@10130000 { - compatible = "ralink,mt7620-sdhci"; + sdhci: mmc@10130000 { + compatible = "mediatek,mt7620-mmc", "ralink,mt7620-sdhci"; reg = <0x10130000 0x4000>; + bus-width = <4>; + + cap-mmc-highspeed; + cap-sd-highspeed; + + clocks = <&mmc_clk>, <&mmc_clk>; + clock-names = "source", "hclk"; + + disable-wp; + interrupt-parent = <&intc>; interrupts = <14>; - pinctrl-names = "default"; + max-frequency = <48000000>; + + pinctrl-names = "default", "state_uhs"; pinctrl-0 = <&sdhci_pins>; + pinctrl-1 = <&sdhci_pins>; + + resets = <&sysc 30>; + reset-names = "hrst"; + + vmmc-supply = <&mmc_reg_3v3>; + vqmmc-supply = <&mmc_reg_1v8>; status = "disabled"; }; diff --git a/target/linux/ramips/dts/mt7621.dtsi b/target/linux/ramips/dts/mt7621.dtsi index 54fe13123d..033ba95dd7 100644 --- a/target/linux/ramips/dts/mt7621.dtsi +++ b/target/linux/ramips/dts/mt7621.dtsi @@ -42,6 +42,28 @@ bootargs = "console=ttyS0,57600"; }; + mmc_reg_1v8: regulator-1v8 { + compatible = "regulator-fixed"; + + enable-active-high; + + regulator-always-on; + regulator-max-microvolt = <1800000>; + regulator-min-microvolt = <1800000>; + regulator-name = "mmc_io"; + }; + + mmc_reg_3v3: regulator-3v3 { + compatible = "regulator-fixed"; + + enable-active-high; + + regulator-always-on; + regulator-max-microvolt = <3300000>; + regulator-min-microvolt = <3300000>; + regulator-name = "mmc_power"; + }; + palmbus: palmbus@1e000000 { compatible = "palmbus"; reg = <0x1e000000 0x100000>; @@ -326,17 +348,36 @@ }; }; - sdhci: sdhci@1e130000 { - status = "disabled"; - - compatible = "ralink,mt7620-sdhci"; + sdhci: mmc@1e130000 { + compatible = "mediatek,mt7620-mmc", "ralink,mt7620-sdhci"; reg = <0x1e130000 0x4000>; + bus-width = <4>; + + cap-mmc-highspeed; + cap-sd-highspeed; + + clocks = <&sysc MT7621_CLK_SHXC>, <&sysc MT7621_CLK_SHXC>; + clock-names = "source", "hclk"; + + disable-wp; + interrupt-parent = <&gic>; interrupts = ; - pinctrl-names = "default"; + max-frequency = <50000000>; + + pinctrl-names = "default", "state_uhs"; pinctrl-0 = <&sdhci_pins>; + pinctrl-1 = <&sdhci_pins>; + + resets = <&sysc MT7621_RST_SDXC>; + reset-names = "hrst"; + + vmmc-supply = <&mmc_reg_3v3>; + vqmmc-supply = <&mmc_reg_1v8>; + + status = "disabled"; }; xhci: xhci@1e1c0000 { diff --git a/target/linux/ramips/dts/mt7628an.dtsi b/target/linux/ramips/dts/mt7628an.dtsi index be80c11d11..445c530815 100644 --- a/target/linux/ramips/dts/mt7628an.dtsi +++ b/target/linux/ramips/dts/mt7628an.dtsi @@ -30,6 +30,35 @@ compatible = "mti,cpu-interrupt-controller"; }; + mmc_clk: mmc-clock { + compatible = "fixed-clock"; + #clock-cells = <0>; + clock-frequency = <48000000>; + clock-accuracy = <100>; + }; + + mmc_reg_1v8: regulator-1v8 { + compatible = "regulator-fixed"; + + enable-active-high; + + regulator-always-on; + regulator-max-microvolt = <1800000>; + regulator-min-microvolt = <1800000>; + regulator-name = "mmc_io"; + }; + + mmc_reg_3v3: regulator-3v3 { + compatible = "regulator-fixed"; + + enable-active-high; + + regulator-always-on; + regulator-max-microvolt = <3300000>; + regulator-min-microvolt = <3300000>; + regulator-name = "mmc_power"; + }; + palmbus: palmbus@10000000 { compatible = "palmbus"; reg = <0x10000000 0x200000>; @@ -355,15 +384,34 @@ reset-names = "host", "device"; }; - sdhci: sdhci@10130000 { - compatible = "ralink,mt7620-sdhci"; + sdhci: mmc@10130000 { + compatible = "mediatek,mt7620-mmc", "ralink,mt7620-sdhci"; reg = <0x10130000 0x4000>; + bus-width = <4>; + + cap-mmc-highspeed; + cap-sd-highspeed; + + clocks = <&mmc_clk>, <&mmc_clk>; + clock-names = "source", "hclk"; + + disable-wp; + interrupt-parent = <&intc>; interrupts = <14>; - pinctrl-names = "default"; + max-frequency = <48000000>; + + pinctrl-names = "default", "state_uhs"; pinctrl-0 = <&sdxc_pins>; + pinctrl-1 = <&sdxc_pins>; + + resets = <&sysc 30>; + reset-names = "hrst"; + + vmmc-supply = <&mmc_reg_3v3>; + vqmmc-supply = <&mmc_reg_1v8>; status = "disabled"; }; diff --git a/target/linux/ramips/dts/mt7628an_hak5_wifi-pineapple-mk7.dts b/target/linux/ramips/dts/mt7628an_hak5_wifi-pineapple-mk7.dts index 51731c3c64..c7e3640d88 100644 --- a/target/linux/ramips/dts/mt7628an_hak5_wifi-pineapple-mk7.dts +++ b/target/linux/ramips/dts/mt7628an_hak5_wifi-pineapple-mk7.dts @@ -55,16 +55,10 @@ gpios = <&gpio 5 GPIO_ACTIVE_LOW>; }; }; +}; - sdhci@10130000 { - compatible = "ralink,mt7620-sdhci"; - reg = <0x10130000 4000>; - - interrupt-parent = <&intc>; - interrupts = <14>; - - status = "okay"; - }; +&sdhci { + status = "okay"; }; &state_default { diff --git a/target/linux/ramips/mt7620/config-6.6 b/target/linux/ramips/mt7620/config-6.6 index a142efd43b..20bba0c5a4 100644 --- a/target/linux/ramips/mt7620/config-6.6 +++ b/target/linux/ramips/mt7620/config-6.6 @@ -186,6 +186,8 @@ CONFIG_RANDSTRUCT_NONE=y CONFIG_RATIONAL=y CONFIG_REGMAP=y CONFIG_REGMAP_MMIO=y +CONFIG_REGULATOR=y +CONFIG_REGULATOR_FIXED_VOLTAGE=y CONFIG_RESET_CONTROLLER=y CONFIG_SERIAL_8250_RT288X=y CONFIG_SERIAL_MCTRL_GPIO=y From b9cec661f6bde7d6c76c6fde80931e05e532272a Mon Sep 17 00:00:00 2001 From: Shiji Yang Date: Wed, 10 Jul 2024 00:16:36 +0800 Subject: [PATCH 5/7] ramips: switch default SDHC driver to kmod-mmc-mtk Now that the SDHC of MT762{0,1,8} has been supported upstream, it's time to switch the default driver to the upstream one. We will still keep the old driver for users to choose from. Tested on HiWiFi HC5861 (MT7620A) and HiWiFi HC5661A (MT7628N). Signed-off-by: Shiji Yang --- target/linux/ramips/image/mt7620.mk | 38 ++++++++++---------- target/linux/ramips/image/mt7621.mk | 56 ++++++++++++++--------------- target/linux/ramips/image/mt76x8.mk | 10 +++--- 3 files changed, 52 insertions(+), 52 deletions(-) diff --git a/target/linux/ramips/image/mt7620.mk b/target/linux/ramips/image/mt7620.mk index cb41e9bb5a..da1c3e69e6 100644 --- a/target/linux/ramips/image/mt7620.mk +++ b/target/linux/ramips/image/mt7620.mk @@ -145,7 +145,7 @@ define Device/bdcom_wap2100-sk DEVICE_VENDOR := BDCOM DEVICE_MODEL := WAP2100-SK (ZTE ZXECS EBG3130) DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-mt76x2 kmod-mt76x0e \ - kmod-sdhci-mt7620 kmod-usb-ledtrig-usbport + kmod-mmc-mtk kmod-usb-ledtrig-usbport endef TARGET_DEVICES += bdcom_wap2100-sk @@ -372,7 +372,7 @@ define Device/domywifi_dm202 IMAGE_SIZE := 16064k DEVICE_VENDOR := DomyWifi DEVICE_MODEL := DM202 - DEVICE_PACKAGES := kmod-mt76x0e kmod-sdhci-mt7620 kmod-usb2 kmod-usb-ohci + DEVICE_PACKAGES := kmod-mt76x0e kmod-mmc-mtk kmod-usb2 kmod-usb-ohci endef TARGET_DEVICES += domywifi_dm202 @@ -381,7 +381,7 @@ define Device/domywifi_dm203 IMAGE_SIZE := 16064k DEVICE_VENDOR := DomyWifi DEVICE_MODEL := DM203 - DEVICE_PACKAGES := kmod-mt76x0e kmod-sdhci-mt7620 kmod-usb2 kmod-usb-ohci + DEVICE_PACKAGES := kmod-mt76x0e kmod-mmc-mtk kmod-usb2 kmod-usb-ohci endef TARGET_DEVICES += domywifi_dm203 @@ -390,7 +390,7 @@ define Device/domywifi_dw22d IMAGE_SIZE := 16064k DEVICE_VENDOR := DomyWifi DEVICE_MODEL := DW22D - DEVICE_PACKAGES := kmod-mt76x0e kmod-sdhci-mt7620 kmod-usb2 kmod-usb-ohci + DEVICE_PACKAGES := kmod-mt76x0e kmod-mmc-mtk kmod-usb2 kmod-usb-ohci endef TARGET_DEVICES += domywifi_dw22d @@ -557,7 +557,7 @@ define Device/head-weblink_hdrm200 IMAGE_SIZE := 16064k DEVICE_VENDOR := Head Weblink DEVICE_MODEL := HDRM2000 - DEVICE_PACKAGES := kmod-mt76x2 kmod-usb2 kmod-usb-ohci kmod-sdhci-mt7620 \ + DEVICE_PACKAGES := kmod-mt76x2 kmod-usb2 kmod-usb-ohci kmod-mmc-mtk \ uqmi kmod-usb-serial-option endef TARGET_DEVICES += head-weblink_hdrm200 @@ -567,7 +567,7 @@ define Device/hiwifi_hc5661 IMAGE_SIZE := 15808k DEVICE_VENDOR := HiWiFi DEVICE_MODEL := HC5661 - DEVICE_PACKAGES := kmod-sdhci-mt7620 + DEVICE_PACKAGES := kmod-mmc-mtk SUPPORTED_DEVICES += hc5661 endef TARGET_DEVICES += hiwifi_hc5661 @@ -577,7 +577,7 @@ define Device/hiwifi_hc5761 IMAGE_SIZE := 15808k DEVICE_VENDOR := HiWiFi DEVICE_MODEL := HC5761 - DEVICE_PACKAGES := kmod-mt76x0e kmod-usb2 kmod-usb-ohci kmod-sdhci-mt7620 \ + DEVICE_PACKAGES := kmod-mt76x0e kmod-usb2 kmod-usb-ohci kmod-mmc-mtk \ kmod-usb-ledtrig-usbport SUPPORTED_DEVICES += hc5761 endef @@ -588,7 +588,7 @@ define Device/hiwifi_hc5861 IMAGE_SIZE := 15808k DEVICE_VENDOR := HiWiFi DEVICE_MODEL := HC5861 - DEVICE_PACKAGES := kmod-mt76x2 kmod-usb2 kmod-usb-ohci kmod-sdhci-mt7620 \ + DEVICE_PACKAGES := kmod-mt76x2 kmod-usb2 kmod-usb-ohci kmod-mmc-mtk \ kmod-phy-realtek kmod-usb-ledtrig-usbport SUPPORTED_DEVICES += hc5861 endef @@ -599,7 +599,7 @@ define Device/hnet_c108 IMAGE_SIZE := 16064k DEVICE_VENDOR := HNET DEVICE_MODEL := C108 - DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-sdhci-mt7620 + DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-mmc-mtk SUPPORTED_DEVICES += c108 endef TARGET_DEVICES += hnet_c108 @@ -1023,7 +1023,7 @@ define Device/planex_cs-qr10 DEVICE_VENDOR := Planex DEVICE_MODEL := CS-QR10 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-sound-core \ - kmod-sound-mt7620 kmod-i2c-ralink kmod-sdhci-mt7620 + kmod-sound-mt7620 kmod-i2c-ralink kmod-mmc-mtk SUPPORTED_DEVICES += cs-qr10 endef TARGET_DEVICES += planex_cs-qr10 @@ -1139,7 +1139,7 @@ define Device/sanlinking_d240 IMAGE_SIZE := 16064k DEVICE_VENDOR := Sanlinking Technologies DEVICE_MODEL := D240 - DEVICE_PACKAGES := kmod-mt76x2 kmod-usb2 kmod-usb-ohci kmod-sdhci-mt7620 + DEVICE_PACKAGES := kmod-mt76x2 kmod-usb2 kmod-usb-ohci kmod-mmc-mtk SUPPORTED_DEVICES += d240 endef TARGET_DEVICES += sanlinking_d240 @@ -1407,7 +1407,7 @@ define Device/youku_x2 DEVICE_VENDOR := Youku DEVICE_MODEL := X2 DEVICE_PACKAGES := kmod-mt76x2 kmod-usb2 kmod-usb-ohci \ - kmod-sdhci-mt7620 kmod-usb-ledtrig-usbport + kmod-mmc-mtk kmod-usb-ledtrig-usbport UIMAGE_MAGIC := 0x12291000 UIMAGE_NAME := 400000000000000000001000 endef @@ -1418,7 +1418,7 @@ define Device/youku_yk-l1 IMAGE_SIZE := 32448k DEVICE_VENDOR := Youku DEVICE_MODEL := YK-L1 - DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-sdhci-mt7620 \ + DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-mmc-mtk \ kmod-usb-ledtrig-usbport SUPPORTED_DEVICES += youku-yk1 youku,yk1 UIMAGE_MAGIC := 0x12291000 @@ -1431,7 +1431,7 @@ define Device/youku_yk-l1c IMAGE_SIZE := 16064k DEVICE_VENDOR := Youku DEVICE_MODEL := YK-L1c - DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-sdhci-mt7620 \ + DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-mmc-mtk \ kmod-usb-ledtrig-usbport UIMAGE_MAGIC := 0x12291000 UIMAGE_NAME := 400000000000000000000000 @@ -1484,7 +1484,7 @@ define Device/zbtlink_zbt-we1026-5g-16m DEVICE_VENDOR := Zbtlink DEVICE_MODEL := ZBT-WE1026-5G DEVICE_VARIANT := 16M - DEVICE_PACKAGES := kmod-mt76x2 kmod-usb2 kmod-usb-ohci kmod-sdhci-mt7620 + DEVICE_PACKAGES := kmod-mt76x2 kmod-usb2 kmod-usb-ohci kmod-mmc-mtk SUPPORTED_DEVICES += we1026-5g-16m zbtlink,we1026-5g-16m endef TARGET_DEVICES += zbtlink_zbt-we1026-5g-16m @@ -1495,7 +1495,7 @@ define Device/zbtlink_zbt-we1026-h-32m DEVICE_VENDOR := Zbtlink DEVICE_MODEL := ZBT-WE1026-H DEVICE_VARIANT := 32M - DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-sdhci-mt7620 + DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-mmc-mtk endef TARGET_DEVICES += zbtlink_zbt-we1026-h-32m @@ -1514,7 +1514,7 @@ define Device/zbtlink_zbt-we826-16m DEVICE_VENDOR := Zbtlink DEVICE_MODEL := ZBT-WE826 DEVICE_VARIANT := 16M - DEVICE_PACKAGES := kmod-mt76x2 kmod-usb2 kmod-usb-ohci kmod-sdhci-mt7620 + DEVICE_PACKAGES := kmod-mt76x2 kmod-usb2 kmod-usb-ohci kmod-mmc-mtk SUPPORTED_DEVICES += zbt-we826 zbt-we826-16M endef TARGET_DEVICES += zbtlink_zbt-we826-16m @@ -1525,7 +1525,7 @@ define Device/zbtlink_zbt-we826-32m DEVICE_VENDOR := Zbtlink DEVICE_MODEL := ZBT-WE826 DEVICE_VARIANT := 32M - DEVICE_PACKAGES := kmod-mt76x2 kmod-usb2 kmod-usb-ohci kmod-sdhci-mt7620 + DEVICE_PACKAGES := kmod-mt76x2 kmod-usb2 kmod-usb-ohci kmod-mmc-mtk SUPPORTED_DEVICES += zbt-we826-32M endef TARGET_DEVICES += zbtlink_zbt-we826-32m @@ -1535,7 +1535,7 @@ define Device/zbtlink_zbt-we826-e IMAGE_SIZE := 32448k DEVICE_VENDOR := Zbtlink DEVICE_MODEL := ZBT-WE826-E - DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-sdhci-mt7620 uqmi \ + DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-mmc-mtk uqmi \ kmod-usb-serial-option endef TARGET_DEVICES += zbtlink_zbt-we826-e diff --git a/target/linux/ramips/image/mt7621.mk b/target/linux/ramips/image/mt7621.mk index 13b6a51966..44672a9542 100644 --- a/target/linux/ramips/image/mt7621.mk +++ b/target/linux/ramips/image/mt7621.mk @@ -242,7 +242,7 @@ define Device/alfa-network_quad-e4g IMAGE_SIZE := 16064k DEVICE_VENDOR := ALFA Network DEVICE_MODEL := Quad-E4G - DEVICE_PACKAGES := kmod-ata-ahci kmod-sdhci-mt7620 kmod-usb3 \ + DEVICE_PACKAGES := kmod-ata-ahci kmod-mmc-mtk kmod-usb3 \ -wpad-basic-mbedtls SUPPORTED_DEVICES += quad-e4g endef @@ -300,7 +300,7 @@ define Device/asiarf_ap7621-001 IMAGE_SIZE := 16000k DEVICE_VENDOR := AsiaRF DEVICE_MODEL := AP7621-001 - DEVICE_PACKAGES := kmod-sdhci-mt7620 kmod-mt76x2 kmod-usb3 \ + DEVICE_PACKAGES := kmod-mmc-mtk kmod-mt76x2 kmod-usb3 \ -wpad-basic-mbedtls -uboot-envtools endef TARGET_DEVICES += asiarf_ap7621-001 @@ -311,7 +311,7 @@ define Device/asiarf_ap7621-nv1 IMAGE_SIZE := 16000k DEVICE_VENDOR := AsiaRF DEVICE_MODEL := AP7621-NV1 - DEVICE_PACKAGES := kmod-sdhci-mt7620 kmod-mt76x2 kmod-usb3 \ + DEVICE_PACKAGES := kmod-mmc-mtk kmod-mt76x2 kmod-usb3 \ -wpad-basic-mbedtls -uboot-envtools endef TARGET_DEVICES += asiarf_ap7621-nv1 @@ -961,7 +961,7 @@ define Device/dual-q_h721 IMAGE_SIZE := 16064k DEVICE_VENDOR := Dual-Q DEVICE_MODEL := H721 - DEVICE_PACKAGES := kmod-ata-ahci kmod-sdhci-mt7620 kmod-usb3 \ + DEVICE_PACKAGES := kmod-ata-ahci kmod-mmc-mtk kmod-usb3 \ -wpad-basic-mbedtls -uboot-envtools endef TARGET_DEVICES += dual-q_h721 @@ -982,7 +982,7 @@ define Device/d-team_pbr-m1 IMAGE_SIZE := 32448k DEVICE_VENDOR := PandoraBox DEVICE_MODEL := PBR-M1 - DEVICE_PACKAGES := kmod-ata-ahci kmod-mt7603 kmod-mt76x2 kmod-sdhci-mt7620 \ + DEVICE_PACKAGES := kmod-ata-ahci kmod-mt7603 kmod-mt76x2 kmod-mmc-mtk \ kmod-usb3 kmod-usb-ledtrig-usbport -uboot-envtools SUPPORTED_DEVICES += pbr-m1 endef @@ -1244,7 +1244,7 @@ define Device/gnubee_gb-pc1 $(Device/uimage-lzma-loader) DEVICE_VENDOR := GnuBee DEVICE_MODEL := GB-PC1 - DEVICE_PACKAGES := kmod-ata-ahci kmod-usb3 kmod-sdhci-mt7620 \ + DEVICE_PACKAGES := kmod-ata-ahci kmod-usb3 kmod-mmc-mtk \ -wpad-basic-mbedtls -uboot-envtools IMAGE_SIZE := 32448k endef @@ -1255,7 +1255,7 @@ define Device/gnubee_gb-pc2 $(Device/uimage-lzma-loader) DEVICE_VENDOR := GnuBee DEVICE_MODEL := GB-PC2 - DEVICE_PACKAGES := kmod-ata-ahci kmod-usb3 kmod-sdhci-mt7620 \ + DEVICE_PACKAGES := kmod-ata-ahci kmod-usb3 kmod-mmc-mtk \ -wpad-basic-mbedtls -uboot-envtools IMAGE_SIZE := 32448k endef @@ -1370,7 +1370,7 @@ define Device/huasifei_ws1208v2 IMAGE_SIZE := 16064k DEVICE_VENDOR := Huasifei DEVICE_MODEL := WS1208V2 - DEVICE_PACKAGES := kmod-ata-ahci kmod-mt7603 kmod-mt76x2 kmod-sdhci-mt7620 \ + DEVICE_PACKAGES := kmod-ata-ahci kmod-mt7603 kmod-mt76x2 kmod-mmc-mtk \ kmod-usb3 kmod-usb-net-cdc-mbim kmod-usb-net-qmi-wwan \ kmod-usb-serial-option -uboot-envtools endef @@ -1632,7 +1632,7 @@ define Device/jdcloud_re-cp-02 IMAGE_SIZE := 16000k DEVICE_VENDOR := JD-Cloud DEVICE_MODEL := RE-CP-02 - DEVICE_PACKAGES := kmod-mt7915-firmware kmod-sdhci-mt7620 + DEVICE_PACKAGES := kmod-mt7915-firmware kmod-mmc-mtk endef TARGET_DEVICES += jdcloud_re-cp-02 @@ -1656,7 +1656,7 @@ define Device/lenovo_newifi-d1 IMAGE_SIZE := 32448k DEVICE_VENDOR := Lenovo DEVICE_MODEL := Newifi D1 - DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2 kmod-usb3 kmod-sdhci-mt7620 \ + DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2 kmod-usb3 kmod-mmc-mtk \ kmod-usb-ledtrig-usbport -uboot-envtools SUPPORTED_DEVICES += newifi-d1 endef @@ -1770,7 +1770,7 @@ define Device/mediatek_ap-mt7621a-v60 IMAGE_SIZE := 7872k DEVICE_VENDOR := Mediatek DEVICE_MODEL := AP-MT7621A-V60 EVB - DEVICE_PACKAGES := kmod-usb3 kmod-sdhci-mt7620 kmod-sound-mt7620 \ + DEVICE_PACKAGES := kmod-usb3 kmod-mmc-mtk kmod-sound-mt7620 \ -wpad-basic-mbedtls -uboot-envtools endef TARGET_DEVICES += mediatek_ap-mt7621a-v60 @@ -1865,7 +1865,7 @@ define Device/mqmaker_witi IMAGE_SIZE := 16064k DEVICE_VENDOR := MQmaker DEVICE_MODEL := WiTi - DEVICE_PACKAGES := kmod-ata-ahci kmod-mt76x2 kmod-sdhci-mt7620 kmod-usb3 \ + DEVICE_PACKAGES := kmod-ata-ahci kmod-mt76x2 kmod-mmc-mtk kmod-usb3 \ kmod-usb-ledtrig-usbport -uboot-envtools SUPPORTED_DEVICES += witi mqmaker,witi-256m mqmaker,witi-512m endef @@ -1878,7 +1878,7 @@ define Device/mtc_wr1201 DEVICE_VENDOR := MTC DEVICE_MODEL := Wireless Router WR1201 KERNEL_INITRAMFS := $(KERNEL_DTB) | uImage lzma -n 'WR1201_8_128' - DEVICE_PACKAGES := kmod-sdhci-mt7620 kmod-mt76x2 kmod-usb3 \ + DEVICE_PACKAGES := kmod-mmc-mtk kmod-mt76x2 kmod-usb3 \ kmod-usb-ledtrig-usbport -uboot-envtools endef TARGET_DEVICES += mtc_wr1201 @@ -2154,7 +2154,7 @@ define Device/openfi_5pro DEVICE_VENDOR := OpenFi DEVICE_MODEL := 5Pro DEVICE_PACKAGES := kmod-mt7603 kmod-mt7615e kmod-mt7663-firmware-ap kmod-usb3 \ - kmod-sdhci-mt7620 + kmod-mmc-mtk endef TARGET_DEVICES += openfi_5pro @@ -2717,7 +2717,7 @@ define Device/unielec_u7621-06-16m DEVICE_VENDOR := UniElec DEVICE_MODEL := U7621-06 DEVICE_VARIANT := 16M - DEVICE_PACKAGES := kmod-ata-ahci kmod-sdhci-mt7620 kmod-usb3 \ + DEVICE_PACKAGES := kmod-ata-ahci kmod-mmc-mtk kmod-usb3 \ -wpad-basic-mbedtls -uboot-envtools SUPPORTED_DEVICES += u7621-06-256M-16M unielec,u7621-06-256m-16m endef @@ -2730,7 +2730,7 @@ define Device/unielec_u7621-06-32m DEVICE_VENDOR := UniElec DEVICE_MODEL := U7621-06 DEVICE_VARIANT := 32M - DEVICE_PACKAGES := kmod-ata-ahci kmod-sdhci-mt7620 kmod-usb3 \ + DEVICE_PACKAGES := kmod-ata-ahci kmod-mmc-mtk kmod-usb3 \ -wpad-basic-mbedtls -uboot-envtools SUPPORTED_DEVICES += unielec,u7621-06-32m endef @@ -2743,7 +2743,7 @@ define Device/unielec_u7621-06-64m DEVICE_VENDOR := UniElec DEVICE_MODEL := U7621-06 DEVICE_VARIANT := 64M - DEVICE_PACKAGES := kmod-ata-ahci kmod-sdhci-mt7620 kmod-usb3 \ + DEVICE_PACKAGES := kmod-ata-ahci kmod-mmc-mtk kmod-usb3 \ -wpad-basic-mbedtls -uboot-envtools SUPPORTED_DEVICES += unielec,u7621-06-512m-64m endef @@ -3003,7 +3003,7 @@ define Device/xzwifi_creativebox-v1 IMAGE_SIZE := 32448k DEVICE_VENDOR := CreativeBox DEVICE_MODEL := v1 - DEVICE_PACKAGES := kmod-ata-ahci kmod-mt7603 kmod-mt76x2 kmod-sdhci-mt7620 \ + DEVICE_PACKAGES := kmod-ata-ahci kmod-mt7603 kmod-mt76x2 kmod-mmc-mtk \ kmod-usb3 -wpad-basic-mbedtls -uboot-envtools endef TARGET_DEVICES += xzwifi_creativebox-v1 @@ -3092,7 +3092,7 @@ define Device/zbtlink_zbt-we1326 DEVICE_MODEL := ZBT-WE1326 DEVICE_ALT0_VENDOR := Wiflyer DEVICE_ALT0_MODEL := WF3526-P - DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2 kmod-usb3 kmod-sdhci-mt7620 \ + DEVICE_PACKAGES := kmod-mt7603 kmod-mt76x2 kmod-usb3 kmod-mmc-mtk \ -uboot-envtools SUPPORTED_DEVICES += zbt-we1326 endef @@ -3104,7 +3104,7 @@ define Device/zbtlink_zbt-we3526 IMAGE_SIZE := 16064k DEVICE_VENDOR := Zbtlink DEVICE_MODEL := ZBT-WE3526 - DEVICE_PACKAGES := kmod-sdhci-mt7620 kmod-mt7603 kmod-mt76x2 kmod-usb3 \ + DEVICE_PACKAGES := kmod-mmc-mtk kmod-mt7603 kmod-mt76x2 kmod-usb3 \ kmod-usb-ledtrig-usbport -uboot-envtools endef TARGET_DEVICES += zbtlink_zbt-we3526 @@ -3116,7 +3116,7 @@ define Device/zbtlink_zbt-wg1602-16m DEVICE_VENDOR := Zbtlink DEVICE_MODEL := ZBT-WG1602 DEVICE_VARIANT := 16M - DEVICE_PACKAGES := kmod-sdhci-mt7620 kmod-mt7603 kmod-mt76x2 kmod-usb3 \ + DEVICE_PACKAGES := kmod-mmc-mtk kmod-mt7603 kmod-mt76x2 kmod-usb3 \ kmod-usb-ledtrig-usbport -uboot-envtools endef TARGET_DEVICES += zbtlink_zbt-wg1602-16m @@ -3128,7 +3128,7 @@ define Device/zbtlink_zbt-wg1602-v04-16m DEVICE_VENDOR := Zbtlink DEVICE_MODEL := ZBT-WG1602-V04 DEVICE_VARIANT := 16M - DEVICE_PACKAGES := kmod-sdhci-mt7620 kmod-mt7603 kmod-mt76x2 kmod-usb3 \ + DEVICE_PACKAGES := kmod-mmc-mtk kmod-mt7603 kmod-mt76x2 kmod-usb3 \ kmod-usb-ledtrig-usbport -uboot-envtools endef TARGET_DEVICES += zbtlink_zbt-wg1602-v04-16m @@ -3140,7 +3140,7 @@ define Device/zbtlink_zbt-wg1602-v04-32m DEVICE_VENDOR := Zbtlink DEVICE_MODEL := ZBT-WG1602-V04 DEVICE_VARIANT := 32M - DEVICE_PACKAGES := kmod-sdhci-mt7620 kmod-mt7603 kmod-mt76x2 kmod-usb3 \ + DEVICE_PACKAGES := kmod-mmc-mtk kmod-mt7603 kmod-mt76x2 kmod-usb3 \ kmod-usb-ledtrig-usbport -uboot-envtools endef TARGET_DEVICES += zbtlink_zbt-wg1602-v04-32m @@ -3152,7 +3152,7 @@ define Device/zbtlink_zbt-wg1608-16m DEVICE_VENDOR := Zbtlink DEVICE_MODEL := ZBT-WG1608 DEVICE_VARIANT := 16M - DEVICE_PACKAGES := kmod-sdhci-mt7620 kmod-mt7603 kmod-mt7615e \ + DEVICE_PACKAGES := kmod-mmc-mtk kmod-mt7603 kmod-mt7615e \ kmod-mt7663-firmware-ap kmod-usb3 kmod-usb-ledtrig-usbport \ -uboot-envtools endef @@ -3165,7 +3165,7 @@ define Device/zbtlink_zbt-wg1608-32m DEVICE_VENDOR := Zbtlink DEVICE_MODEL := ZBT-WG1608 DEVICE_VARIANT := 32M - DEVICE_PACKAGES := kmod-sdhci-mt7620 kmod-mt7603 kmod-mt7615e \ + DEVICE_PACKAGES := kmod-mmc-mtk kmod-mt7603 kmod-mt7615e \ kmod-mt7663-firmware-ap kmod-usb3 kmod-usb-ledtrig-usbport endef TARGET_DEVICES += zbtlink_zbt-wg1608-32m @@ -3176,7 +3176,7 @@ define Device/zbtlink_zbt-wg2626 IMAGE_SIZE := 16064k DEVICE_VENDOR := Zbtlink DEVICE_MODEL := ZBT-WG2626 - DEVICE_PACKAGES := kmod-ata-ahci kmod-sdhci-mt7620 kmod-mt76x2 kmod-usb3 \ + DEVICE_PACKAGES := kmod-ata-ahci kmod-mmc-mtk kmod-mt76x2 kmod-usb3 \ kmod-usb-ledtrig-usbport -uboot-envtools SUPPORTED_DEVICES += zbt-wg2626 endef @@ -3189,7 +3189,7 @@ define Device/zbtlink_zbt-wg3526-16m DEVICE_VENDOR := Zbtlink DEVICE_MODEL := ZBT-WG3526 DEVICE_VARIANT := 16M - DEVICE_PACKAGES := kmod-ata-ahci kmod-sdhci-mt7620 kmod-mt7603 kmod-mt76x2 \ + DEVICE_PACKAGES := kmod-ata-ahci kmod-mmc-mtk kmod-mt7603 kmod-mt76x2 \ kmod-usb3 kmod-usb-ledtrig-usbport -uboot-envtools SUPPORTED_DEVICES += zbt-wg3526 zbt-wg3526-16M endef @@ -3202,7 +3202,7 @@ define Device/zbtlink_zbt-wg3526-32m DEVICE_VENDOR := Zbtlink DEVICE_MODEL := ZBT-WG3526 DEVICE_VARIANT := 32M - DEVICE_PACKAGES := kmod-ata-ahci kmod-sdhci-mt7620 kmod-mt7603 kmod-mt76x2 \ + DEVICE_PACKAGES := kmod-ata-ahci kmod-mmc-mtk kmod-mt7603 kmod-mt76x2 \ kmod-usb3 kmod-usb-ledtrig-usbport -uboot-envtools SUPPORTED_DEVICES += ac1200pro zbt-wg3526-32M endef diff --git a/target/linux/ramips/image/mt76x8.mk b/target/linux/ramips/image/mt76x8.mk index 07000a1a11..2ea948a5f9 100644 --- a/target/linux/ramips/image/mt76x8.mk +++ b/target/linux/ramips/image/mt76x8.mk @@ -406,7 +406,7 @@ define Device/mediatek_linkit-smart-7688 IMAGE_SIZE := 32448k DEVICE_VENDOR := MediaTek DEVICE_MODEL := LinkIt Smart 7688 - DEVICE_PACKAGES:= kmod-usb2 kmod-usb-ohci uboot-envtools kmod-sdhci-mt7620 + DEVICE_PACKAGES:= kmod-usb2 kmod-usb-ohci uboot-envtools kmod-mmc-mtk SUPPORTED_DEVICES += linkits7688 linkits7688d endef TARGET_DEVICES += mediatek_linkit-smart-7688 @@ -499,7 +499,7 @@ define Device/onion_omega2p IMAGE_SIZE := 32448k DEVICE_VENDOR := Onion DEVICE_MODEL := Omega2+ - DEVICE_PACKAGES:= kmod-usb2 kmod-usb-ohci uboot-envtools kmod-sdhci-mt7620 + DEVICE_PACKAGES:= kmod-usb2 kmod-usb-ohci uboot-envtools kmod-mmc-mtk SUPPORTED_DEVICES += omega2p endef TARGET_DEVICES += onion_omega2p @@ -526,7 +526,7 @@ define Device/ravpower_rp-wd009 DEVICE_MODEL := RP-WD009 UBOOT_PATH := $(STAGING_DIR_IMAGE)/mt7628_ravpower_rp-wd009-u-boot.bin DEVICE_PACKAGES := kmod-mt76x0e kmod-usb2 kmod-usb-ohci \ - kmod-sdhci-mt7620 kmod-i2c-mt7628 ravpower-mcu + kmod-mmc-mtk kmod-i2c-mt7628 ravpower-mcu IMAGES += factory.bin IMAGE/factory.bin := $$(sysupgrade_bin) | ravpower-wd009-factory endef @@ -954,7 +954,7 @@ define Device/vocore_vocore2 DEVICE_VENDOR := VoCore DEVICE_MODEL := VoCore2 DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-usb-ledtrig-usbport \ - kmod-sdhci-mt7620 + kmod-mmc-mtk SUPPORTED_DEVICES += vocore2 endef TARGET_DEVICES += vocore_vocore2 @@ -964,7 +964,7 @@ define Device/vocore_vocore2-lite DEVICE_VENDOR := VoCore DEVICE_MODEL := VoCore2-Lite DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci kmod-usb-ledtrig-usbport \ - kmod-sdhci-mt7620 + kmod-mmc-mtk SUPPORTED_DEVICES += vocore2lite endef TARGET_DEVICES += vocore_vocore2-lite From 238aa35c49a4c52909cdda31ee9bbf0133155c17 Mon Sep 17 00:00:00 2001 From: Shiji Yang Date: Wed, 10 Jul 2024 01:26:52 +0800 Subject: [PATCH 6/7] ramips: improve support for HiWiFi HC5861 SDHC 1. Override max clock frequency to a stable value 24 MHz. 2. Use voltage regulator to control the power supply. Signed-off-by: Shiji Yang --- .../linux/ramips/dts/mt7620a_hiwifi_hc5861.dts | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/target/linux/ramips/dts/mt7620a_hiwifi_hc5861.dts b/target/linux/ramips/dts/mt7620a_hiwifi_hc5861.dts index 83e5698d63..29aff9958a 100644 --- a/target/linux/ramips/dts/mt7620a_hiwifi_hc5861.dts +++ b/target/linux/ramips/dts/mt7620a_hiwifi_hc5861.dts @@ -51,12 +51,6 @@ gpio-export,output = <0>; gpios = <&gpio0 13 GPIO_ACTIVE_LOW>; }; - - sdpower { - gpio-export,name = "sdpower"; - gpio-export,output = <0>; - gpios = <&gpio0 8 GPIO_ACTIVE_LOW>; - }; }; }; @@ -94,6 +88,12 @@ mediatek,ephy-base = /bits/ 8 <12>; }; +&mmc_reg_3v3 { + /delete-property/ enable-active-high; + + gpios = <&gpio0 8 GPIO_ACTIVE_LOW>; +}; + &pcie { status = "okay"; }; @@ -108,6 +108,10 @@ }; }; +&sdhci { + max-frequency = <24000000>; +}; + &wmac { pinctrl-names = "default", "pa_gpio"; pinctrl-0 = <&pa_pins>; From 04818d5857ae69350ad2e00dc57eade174f64422 Mon Sep 17 00:00:00 2001 From: Daniel Golle Date: Fri, 12 Jul 2024 02:38:53 +0100 Subject: [PATCH 7/7] ramips: mt7621: reduce MMC clock to 48 MHz The switch to the upstream mmc-mtk driver caused problems with MT7621 because of unstable too high clock frequency: [ 49.643291] mmc0: error -88 whilst initialising SD card [ 49.890047] mmc0: error -88 whilst initialising SD card [ 50.142414] mmc0: error -88 whilst initialising SD card [ 50.419218] mmc0: error -88 whilst initialising SD card ... Fix this by reducing the clock speed to 48 MHz instead of 50 MHz, which is also the value used in upstream Linux mt7621.dtsi. With that change applied SD cards work as expected on MT7621 devices also with the new driver. Signed-off-by: Daniel Golle --- target/linux/ramips/dts/mt7621.dtsi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/target/linux/ramips/dts/mt7621.dtsi b/target/linux/ramips/dts/mt7621.dtsi index 033ba95dd7..da992bada4 100644 --- a/target/linux/ramips/dts/mt7621.dtsi +++ b/target/linux/ramips/dts/mt7621.dtsi @@ -365,7 +365,7 @@ interrupt-parent = <&gic>; interrupts = ; - max-frequency = <50000000>; + max-frequency = <48000000>; pinctrl-names = "default", "state_uhs"; pinctrl-0 = <&sdhci_pins>;