mmc: remove obsolete drivers
Subsystems (4)
cover mmc: remove obsolete drivers
From: Arnd Bergmann <[email protected]>
A few Arm platforms are getting removed in v5.12, this removes the corresponding mmc drivers.
Arnd Bergmann (2):
mmc: remove dw_mmc-zx driver
mmc: remove sirf prima/atlas driver
.../devicetree/bindings/mmc/sdhci-sirf.txt | 18 -- .../devicetree/bindings/mmc/zx-dw-mshc.txt | 31 --- drivers/mmc/host/Kconfig | 21 -- drivers/mmc/host/Makefile | 2 - drivers/mmc/host/dw_mmc-zx.c | 234 ----------------- drivers/mmc/host/dw_mmc-zx.h | 32 --- drivers/mmc/host/sdhci-sirf.c | 235 ------------------ 7 files changed, 573 deletions(-) delete mode 100644 Documentation/devicetree/bindings/mmc/sdhci-sirf.txt delete mode 100644 Documentation/devicetree/bindings/mmc/zx-dw-mshc.txt delete mode 100644 drivers/mmc/host/dw_mmc-zx.c delete mode 100644 drivers/mmc/host/dw_mmc-zx.h delete mode 100644 drivers/mmc/host/sdhci-sirf.c
Signature · 1 line
2.29.2
PATCH 1/2 mmc: remove dw_mmc-zx driver
From: Arnd Bergmann <[email protected]>
The zte zx platform is getting removed, so this driver is no longer needed.
--- .../devicetree/bindings/mmc/zx-dw-mshc.txt | 31 --- drivers/mmc/host/Kconfig | 9 - drivers/mmc/host/Makefile | 1 - drivers/mmc/host/dw_mmc-zx.c | 234 ------------------ drivers/mmc/host/dw_mmc-zx.h | 32 --- 5 files changed, 307 deletions(-) delete mode 100644 Documentation/devicetree/bindings/mmc/zx-dw-mshc.txt delete mode 100644 drivers/mmc/host/dw_mmc-zx.c delete mode 100644 drivers/mmc/host/dw_mmc-zx.h
Documentation/devicetree/bindings/mmc/zx-dw-mshc.txt deleted +0 -31
@@ -1,31 +0,0 @@ -* ZTE specific extensions to the Synopsys Designware Mobile Storage - Host Controller - -The Synopsys designware mobile storage host controller is used to interface -a SoC with storage medium such as eMMC or SD/MMC cards. This file documents -differences between the core Synopsys dw mshc controller properties described -by synopsys-dw-mshc.txt and the properties used by the ZTE specific -extensions to the Synopsys Designware Mobile Storage Host Controller. - -Required Properties: - -* compatible: should be - - "zte,zx296718-dw-mshc": for ZX SoCs - -Example: - - mmc1: mmc@1110000 { - compatible = "zte,zx296718-dw-mshc"; - reg = <0x01110000 0x1000>; - interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>; - fifo-depth = <32>; - data-addr = <0x200>; - fifo-watermark-aligned; - bus-width = <4>; - clock-frequency = <50000000>; - clocks = <&topcrm SD0_AHB>, <&topcrm SD0_WCLK>; - clock-names = "biu", "ciu"; - max-frequency = <50000000>; - cap-sdio-irq; - cap-sd-highspeed; - };
drivers/mmc/host/Kconfig +0 -9
@@ -868,15 +868,6 @@ config MMC_DW_ROCKCHIP Synopsys DesignWare Memory Card Interface driver. Select this option for platforms based on RK3066, RK3188 and RK3288 SoC's. -config MMC_DW_ZX - tristate "ZTE specific extensions for Synopsys DW Memory Card Interface" - depends on MMC_DW && ARCH_ZX - select MMC_DW_PLTFM - help - This selects support for ZTE SoC specific extensions to the - Synopsys DesignWare Memory Card Interface driver. Select this option - for platforms based on ZX296718 SoC's. - config MMC_SH_MMCIF tristate "SuperH Internal MMCIF support" depends on SUPERH || ARCH_RENESAS || COMPILE_TEST
drivers/mmc/host/Makefile +0 -1
@@ -61,7 +61,6 @@ obj-$(CONFIG_MMC_DW_HI3798CV200) += dw_mmc-hi3798cv200.o obj-$(CONFIG_MMC_DW_K3) += dw_mmc-k3.o obj-$(CONFIG_MMC_DW_PCI) += dw_mmc-pci.o obj-$(CONFIG_MMC_DW_ROCKCHIP) += dw_mmc-rockchip.o -obj-$(CONFIG_MMC_DW_ZX) += dw_mmc-zx.o obj-$(CONFIG_MMC_SH_MMCIF) += sh_mmcif.o obj-$(CONFIG_MMC_JZ4740) += jz4740_mmc.o obj-$(CONFIG_MMC_VUB300) += vub300.o
drivers/mmc/host/dw_mmc-zx.c deleted +0 -234
234 lines not on this page · raw message
drivers/mmc/host/dw_mmc-zx.h deleted +0 -32
@@ -1,32 +0,0 @@ -/* SPDX-License-Identifier: GPL-2.0 */ -#ifndef _DW_MMC_ZX_H_ -#define _DW_MMC_ZX_H_ - -/* ZX296718 SoC specific DLL register offset. */ -#define LB_AON_EMMC_CFG_REG0 0x1B0 -#define LB_AON_EMMC_CFG_REG1 0x1B4 -#define LB_AON_EMMC_CFG_REG2 0x1B8 - -/* LB_AON_EMMC_CFG_REG0 register defines */ -#define PARA_DLL_START (x) ((x) & 0xFF) -#define PARA_DLL_START_MASK 0xFF -#define DLL_REG_SET BIT(8) -#define PARA_DLL_LOCK_NUM (x) (((x) & 7) << 16) -#define PARA_DLL_LOCK_NUM_MASK (7 << 16) -#define PARA_PHASE_DET_SEL (x) (((x) & 7) << 20) -#define PARA_PHASE_DET_SEL_MASK (7 << 20) -#define PARA_DLL_BYPASS_MODE BIT(23) -#define PARA_HALF_CLK_MODE BIT(24) - -/* LB_AON_EMMC_CFG_REG1 register defines */ -#define READ_DQS_DELAY (x) ((x) & 0x7F) -#define READ_DQS_DELAY_MASK (0x7F) -#define READ_DQS_BYPASS_MODE BIT(7) -#define CLK_SAMP_DELAY (x) (((x) & 0x7F) << 8) -#define CLK_SAMP_DELAY_MASK (0x7F << 8) -#define CLK_SAMP_BYPASS_MODE BIT(15) - -/* LB_AON_EMMC_CFG_REG2 register defines */ -#define ZX_DLL_LOCKED BIT(2) - -#endif /* _DW_MMC_ZX_H_ */
Signature · 7 lines
2.29.2 _______________________________________________ linux-arm-kernel mailing list [email protected] http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
PATCH 2/2 mmc: remove sirf prima/atlas driver
In reply to Arnd BergmannFrom: Arnd Bergmann <[email protected]>
The CSR SiRF prima2/atlas platforms are getting removed, so this driver is no longer needed.
--- .../devicetree/bindings/mmc/sdhci-sirf.txt | 18 -- drivers/mmc/host/Kconfig | 12 - drivers/mmc/host/Makefile | 1 - drivers/mmc/host/sdhci-sirf.c | 235 ------------------ 4 files changed, 266 deletions(-) delete mode 100644 Documentation/devicetree/bindings/mmc/sdhci-sirf.txt delete mode 100644 drivers/mmc/host/sdhci-sirf.c
Documentation/devicetree/bindings/mmc/sdhci-sirf.txt deleted +0 -18
@@ -1,18 +0,0 @@ -* SiRFprimII/marco/atlas6 SDHCI Controller - -This file documents differences between the core properties in mmc.txt -and the properties used by the sdhci-sirf driver. - -Required properties: -- compatible: sirf,prima2-sdhc - -Optional properties: -- cd-gpios: card detect gpio, with zero flags. - -Example: - - sd0: sdhci@56000000 { - compatible = "sirf,prima2-sdhc"; - reg = <0xcd000000 0x100000>; - cd-gpios = <&gpio 6 0>; - };
drivers/mmc/host/Kconfig +0 -12
@@ -312,18 +312,6 @@ config MMC_SDHCI_S3C If unsure, say N. -config MMC_SDHCI_SIRF - tristate "SDHCI support on CSR SiRFprimaII and SiRFmarco SoCs" - depends on ARCH_SIRF || COMPILE_TEST - depends on MMC_SDHCI_PLTFM - select MMC_SDHCI_IO_ACCESSORS - help - This selects the SDHCI support for SiRF System-on-Chip devices. - - If you have a controller with this interface, say Y or M here. - - If unsure, say N. - config MMC_SDHCI_PXAV3 tristate "Marvell MMP2 SD Host Controller support (PXAV3)" depends on CLKDEV_LOOKUP
drivers/mmc/host/Makefile +0 -1
@@ -19,7 +19,6 @@ obj-$(CONFIG_MMC_SDHCI_ACPI) += sdhci-acpi.o obj-$(CONFIG_MMC_SDHCI_PXAV3) += sdhci-pxav3.o obj-$(CONFIG_MMC_SDHCI_PXAV2) += sdhci-pxav2.o obj-$(CONFIG_MMC_SDHCI_S3C) += sdhci-s3c.o -obj-$(CONFIG_MMC_SDHCI_SIRF) += sdhci-sirf.o obj-$(CONFIG_MMC_SDHCI_F_SDH30) += sdhci_f_sdh30.o obj-$(CONFIG_MMC_SDHCI_MILBEAUT) += sdhci-milbeaut.o obj-$(CONFIG_MMC_SDHCI_SPEAR) += sdhci-spear.o
drivers/mmc/host/sdhci-sirf.c deleted +0 -235
235 lines not on this page · raw message
Signature · 7 lines
2.29.2 _______________________________________________ linux-arm-kernel mailing list [email protected] http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Re: [PATCH 2/2] mmc: remove sirf prima/atlas driver
Quoted 8 lines · Arnd Bergmann <[email protected]> 于2021年1月21日周四 上午3:28写道:
From: Arnd Bergmann <[email protected]>
The CSR SiRF prima2/atlas platforms are getting removed, so this driver is no longer needed.
Cc Barry Song <[email protected]>Signed-off-by Arnd Bergmann <[email protected]>
Quoted 310 lines
--- .../devicetree/bindings/mmc/sdhci-sirf.txt | 18 -- drivers/mmc/host/Kconfig | 12 - drivers/mmc/host/Makefile | 1 - drivers/mmc/host/sdhci-sirf.c | 235 ------------------ 4 files changed, 266 deletions(-) delete mode 100644 Documentation/devicetree/bindings/mmc/sdhci-sirf.txt delete mode 100644 drivers/mmc/host/sdhci-sirf.cDocumentation/devicetree/bindings/mmc/sdhci-sirf.txt deleted +0
-18@@ -1,18 +0,0 @@ -* SiRFprimII/marco/atlas6 SDHCI Controller - -This file documents differences between the core properties in mmc.txt -and the properties used by the sdhci-sirf driver. - -Required properties: -- compatible: sirf,prima2-sdhc - -Optional properties: -- cd-gpios: card detect gpio, with zero flags. - -Example: - - sd0: sdhci@56000000 { - compatible = "sirf,prima2-sdhc"; - reg = <0xcd000000 0x100000>; - cd-gpios = <&gpio 6 0>; - };drivers/mmc/host/Kconfig +0
-12@@ -312,18 +312,6 @@ config MMC_SDHCI_S3C If unsure, say N. -config MMC_SDHCI_SIRF - tristate "SDHCI support on CSR SiRFprimaII and SiRFmarco SoCs" - depends on ARCH_SIRF || COMPILE_TEST - depends on MMC_SDHCI_PLTFM - select MMC_SDHCI_IO_ACCESSORS - help - This selects the SDHCI support for SiRF System-on-Chip devices. - - If you have a controller with this interface, say Y or M here. - - If unsure, say N. - config MMC_SDHCI_PXAV3 tristate "Marvell MMP2 SD Host Controller support (PXAV3)" depends on CLKDEV_LOOKUPdrivers/mmc/host/Makefile +0
-1@@ -19,7 +19,6 @@ obj-$(CONFIG_MMC_SDHCI_ACPI) += sdhci-acpi.o obj-$(CONFIG_MMC_SDHCI_PXAV3) += sdhci-pxav3.o obj-$(CONFIG_MMC_SDHCI_PXAV2) += sdhci-pxav2.o obj-$(CONFIG_MMC_SDHCI_S3C) += sdhci-s3c.o -obj-$(CONFIG_MMC_SDHCI_SIRF) += sdhci-sirf.o obj-$(CONFIG_MMC_SDHCI_F_SDH30) += sdhci_f_sdh30.o obj-$(CONFIG_MMC_SDHCI_MILBEAUT) += sdhci-milbeaut.o obj-$(CONFIG_MMC_SDHCI_SPEAR) += sdhci-spear.odrivers/mmc/host/sdhci-sirf.c deleted +0
-236@@ -1,235 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0-or-later -/* -* SDHCI support for SiRF primaII and marco SoCs -* -* Copyright (c) 2011 Cambridge Silicon Radio Limited, a CSR plc group company. -*/ - -#include <linux/delay.h> -#include <linux/device.h> -#include <linux/mmc/host.h> -#include <linux/module.h> -#include <linux/of.h> -#include <linux/mmc/slot-gpio.h> -#include "sdhci-pltfm.h" - -#define SDHCI_CLK_DELAY_SETTING 0x4C -#define SDHCI_SIRF_8BITBUS BIT(3) -#define SIRF_TUNING_COUNT 16384 - -static void sdhci_sirf_set_bus_width (struct sdhci_host *host,int width) -{ -u8 ctrl; - - ctrl =sdhci_readb (host,SDHCI_HOST_CONTROL ); - ctrl &= ~(SDHCI_CTRL_4BITBUS |SDHCI_SIRF_8BITBUS ); - -/* -* CSR atlas7 and prima2 SD host version is not 3.0 -* 8bit-width enable bit of CSR SD hosts is 3, -* while stardard hosts use bit 5 -*/ -if (width ==MMC_BUS_WIDTH_8 ) - ctrl |=SDHCI_SIRF_8BITBUS ; -else if (width ==MMC_BUS_WIDTH_4 ) - ctrl |=SDHCI_CTRL_4BITBUS ; - -sdhci_writeb (host, ctrl,SDHCI_HOST_CONTROL ); -} - -static u32 sdhci_sirf_readl_le (struct sdhci_host *host,int reg) -{ -u32 val =readl (host->ioaddr + reg); - -if (unlikely ((reg ==SDHCI_CAPABILITIES_1 ) && - (host->mmc->caps &MMC_CAP_UHS_SDR50 ))) { -/* fake CAP_1 register */ - val =SDHCI_SUPPORT_DDR50 | -SDHCI_SUPPORT_SDR50 |SDHCI_USE_SDR50_TUNING ; - } - -if (unlikely (reg ==SDHCI_SLOT_INT_STATUS )) { -u32 prss = val; -/* fake chips as V3.0 host conreoller */ - prss &= ~(0xFF <<16 ); - val = prss | (SDHCI_SPEC_300 <<16 ); - } -return val; -} - -static u16 sdhci_sirf_readw_le (struct sdhci_host *host,int reg) -{ -u16 ret =0 ; - - ret =readw (host->ioaddr + reg); - -if (unlikely (reg ==SDHCI_HOST_VERSION )) { - ret =readw (host->ioaddr +SDHCI_HOST_VERSION ); - ret |=SDHCI_SPEC_300 ; - } - -return ret; -} - -static int sdhci_sirf_execute_tuning (struct sdhci_host *host,u32 opcode) -{ -int tuning_seq_cnt =3 ; -int phase; -u8 tuned_phase_cnt =0 ; -int rc =0 , longest_range =0 ; -int start =-1 , end =0 , tuning_value =-1 , range =0 ; -u16 clock_setting; -struct mmc_host *mmc = host->mmc; - - clock_setting =sdhci_readw (host,SDHCI_CLK_DELAY_SETTING ); - clock_setting &= ~0x3fff ; - -retry: - phase =0 ; - tuned_phase_cnt =0 ; -do { -sdhci_writel (host, - clock_setting | phase, -SDHCI_CLK_DELAY_SETTING ); - -if (!mmc_send_tuning (mmc, opcode,NULL )) { -/* Tuning is successful at this tuning point */ - tuned_phase_cnt++; -dev_dbg (mmc_dev (mmc),"%s: Found good phase = %d\n" , -mmc_hostname (mmc), phase); -if (start ==-1 ) - start = phase; - end = phase; - range++; -if (phase == (SIRF_TUNING_COUNT -1 ) - && range > longest_range) - tuning_value = (start + end) /2 ; - }else { -dev_dbg (mmc_dev (mmc),"%s: Found bad phase = %d\n" , -mmc_hostname (mmc), phase); -if (range > longest_range) { - tuning_value = (start + end) /2 ; - longest_range = range; - } - start =-1 ; - end = range =0 ; - } - }while (++phase <SIRF_TUNING_COUNT ); - -if (tuned_phase_cnt && tuning_value >0 ) { -/* -* Finally set the selected phase in delay -* line hw block. -*/ - phase = tuning_value; -sdhci_writel (host, - clock_setting | phase, -SDHCI_CLK_DELAY_SETTING ); - -dev_dbg (mmc_dev (mmc),"%s: Setting the tuning phase to %d\n" , -mmc_hostname (mmc), phase); - }else { -if (--tuning_seq_cnt) - goto retry; -/* Tuning failed */ -dev_dbg (mmc_dev (mmc),"%s: No tuning point found\n" , -mmc_hostname (mmc)); - rc = -EIO ; - } - -return rc; -} - -static const struct sdhci_ops sdhci_sirf_ops = { - .read_l = sdhci_sirf_readl_le, - .read_w = sdhci_sirf_readw_le, - .platform_execute_tuning = sdhci_sirf_execute_tuning, - .set_clock = sdhci_set_clock, - .get_max_clock = sdhci_pltfm_clk_get_max_clock, - .set_bus_width = sdhci_sirf_set_bus_width, - .reset = sdhci_reset, - .set_uhs_signaling = sdhci_set_uhs_signaling, -}; - -static const struct sdhci_pltfm_data sdhci_sirf_pdata = { - .ops = &sdhci_sirf_ops, - .quirks =SDHCI_QUIRK_BROKEN_TIMEOUT_VAL | -SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK | -SDHCI_QUIRK_CAP_CLOCK_BASE_BROKEN | -SDHCI_QUIRK_RESET_CMD_DATA_ON_IOS , - .quirks2 =SDHCI_QUIRK2_PRESET_VALUE_BROKEN , -}; - -static int sdhci_sirf_probe (struct platform_device *pdev) -{ -struct sdhci_host *host; -struct sdhci_pltfm_host *pltfm_host; -struct clk *clk; -int ret; - - clk =devm_clk_get (&pdev->dev,NULL ); -if (IS_ERR (clk)) { -dev_err (&pdev->dev,"unable to get clock" ); -return PTR_ERR (clk); - } - - host =sdhci_pltfm_init (pdev, &sdhci_sirf_pdata,0 ); -if (IS_ERR (host)) -return PTR_ERR (host); - - pltfm_host =sdhci_priv (host); - pltfm_host->clk = clk; - -sdhci_get_of_property (pdev); - - ret =clk_prepare_enable (pltfm_host->clk); -if (ret) - goto err_clk_prepare; - - ret =sdhci_add_host (host); -if (ret) - goto err_sdhci_add; - -/* -* We must request the IRQ after sdhci_add_host(), as the tasklet only -* gets setup in sdhci_add_host() and we oops. -*/ - ret =mmc_gpiod_request_cd (host->mmc,"cd" ,0 , false,0 ); -if (ret == -EPROBE_DEFER ) - goto err_request_cd; -if (!ret) -mmc_gpiod_request_cd_irq (host->mmc); - -return 0 ; - -err_request_cd: -sdhci_remove_host (host,0 ); -err_sdhci_add: -clk_disable_unprepare (pltfm_host->clk); -err_clk_prepare: -sdhci_pltfm_free (pdev); -return ret; -} - -static const struct of_device_id sdhci_sirf_of_match[] = { - { .compatible ="sirf,prima2-sdhc" }, - { } -}; -MODULE_DEVICE_TABLE (of, sdhci_sirf_of_match); - -static struct platform_driver sdhci_sirf_driver = { - .driver = { - .name ="sdhci-sirf" , - .probe_type =PROBE_PREFER_ASYNCHRONOUS , - .of_match_table = sdhci_sirf_of_match, - .pm = &sdhci_pltfm_pmops, - }, - .probe = sdhci_sirf_probe, - .remove = sdhci_pltfm_unregister, -}; - -module_platform_driver (sdhci_sirf_driver); - -MODULE_DESCRIPTION ("SDHCI driver for SiRFprimaII/SiRFmarco" ); -MODULE_AUTHOR ("Barry Song <[email protected]>" ); -MODULE_LICENSE ("GPL v2" ); --
Quoted 2 lines
2.29.2
_______________________________________________
linux-arm-kernel mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Quoted 13 lines · Arnd Bergmann
From: Arnd Bergmann <[email protected]>
A few Arm platforms are getting removed in v5.12, this removes the corresponding mmc drivers.
Arnd Bergmann (2):
mmc: remove dw_mmc-zx driver
mmc: remove sirf prima/atlas driver
Quoted 13 lines
.../devicetree/bindings/mmc/sdhci-sirf.txt | 18 -- .../devicetree/bindings/mmc/zx-dw-mshc.txt | 31 --- drivers/mmc/host/Kconfig | 21 -- drivers/mmc/host/Makefile | 2 - drivers/mmc/host/dw_mmc-zx.c | 234 ----------------- drivers/mmc/host/dw_mmc-zx.h | 32 --- drivers/mmc/host/sdhci-sirf.c | 235 ------------------ 7 files changed, 573 deletions(-) delete mode 100644 Documentation/devicetree/bindings/mmc/sdhci-sirf.txt delete mode 100644 Documentation/devicetree/bindings/mmc/zx-dw-mshc.txt delete mode 100644 drivers/mmc/host/dw_mmc-zx.c delete mode 100644 drivers/mmc/host/dw_mmc-zx.h delete mode 100644 drivers/mmc/host/sdhci-sirf.c
Applied for next, thanks!
Kind regards
Uffe
_______________________________________________
linux-arm-kernel mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel