On Mon, Sep 9, 2024 at 4:06 PM Adrian Hunter <adrian.hunter@xxxxxxxxx> wrote: > > On 6/09/24 13:20, Victor Shih wrote: > > From: Victor Shih <victor.shih@xxxxxxxxxxxxxxxxxxx> > > > > This patch adds sdhci-uhs2.c as a module for UHS-II support. > > This is a skeleton for further development in this patch series. > > > > This kernel configuration, CONFIG_MMC_SDHCI_UHS2, will be used > > in the following commits to indicate UHS-II specific code in sdhci > > controllers. > > > > Signed-off-by: Ben Chuang <ben.chuang@xxxxxxxxxxxxxxxxxxx> > > Signed-off-by: AKASHI Takahiro <takahiro.akashi@xxxxxxxxxx> > > Signed-off-by: Victor Shih <victor.shih@xxxxxxxxxxxxxxxxxxx> > > Acked-by: Adrian Hunter <adrian.hunter@xxxxxxxxx> > > Doesn't compile: > > drivers/mmc/host/sdhci-uhs2.c:28:12: error: ‘sdhci_uhs2_host_ops_init’ defined but not used [-Werror=unused-function] > 28 | static int sdhci_uhs2_host_ops_init(struct sdhci_host *host) > | ^~~~~~~~~~~~~~~~~~~~~~~~ > cc1: all warnings being treated as errors > make[5]: *** [scripts/Makefile.build:244: drivers/mmc/host/sdhci-uhs2.o] Error 1 > make[4]: *** [scripts/Makefile.build:485: drivers/mmc/host] Error 2 > make[3]: *** [scripts/Makefile.build:485: drivers/mmc] Error 2 > make[3]: *** Waiting for unfinished jobs.... > make[2]: *** [scripts/Makefile.build:485: drivers] Error 2 > make[1]: *** [/home/ahunter/git/review/Makefile:1925: .] Error 2 > make: *** [Makefile:224: __sub-make] Error 2 > Hi, Adrian I will correct this issue in the next version. Thanks, Victor Shih > > --- > > > > Updates in V9: > > - Modify the commit message. > > > > Updates in V8: > > - Modify MODULE_LICENSE from "GPL v2" to "GPL". > > > > Updates in V6: > > - Merage V5 of patch[7] and patch[9] in to V6 of patch[8]. > > > > --- > > > > drivers/mmc/host/Kconfig | 9 +++++++ > > drivers/mmc/host/Makefile | 1 + > > drivers/mmc/host/sdhci-uhs2.c | 46 +++++++++++++++++++++++++++++++++++ > > 3 files changed, 56 insertions(+) > > create mode 100644 drivers/mmc/host/sdhci-uhs2.c > > > > diff --git a/drivers/mmc/host/Kconfig b/drivers/mmc/host/Kconfig > > index 7199cb0bd0b9..f636af8a98df 100644 > > --- a/drivers/mmc/host/Kconfig > > +++ b/drivers/mmc/host/Kconfig > > @@ -98,6 +98,15 @@ config MMC_SDHCI_BIG_ENDIAN_32BIT_BYTE_SWAPPER > > > > This is the case for the Nintendo Wii SDHCI. > > > > +config MMC_SDHCI_UHS2 > > + tristate "UHS2 support on SDHCI controller" > > + depends on MMC_SDHCI > > + help > > + This option is selected by SDHCI controller drivers that want to > > + support UHS2-capable devices. > > + > > + If you have a controller with this feature, say Y or M here. > > + > > config MMC_SDHCI_PCI > > tristate "SDHCI support on PCI bus" > > depends on MMC_SDHCI && PCI > > diff --git a/drivers/mmc/host/Makefile b/drivers/mmc/host/Makefile > > index 3ccffebbe59b..5147467ec825 100644 > > --- a/drivers/mmc/host/Makefile > > +++ b/drivers/mmc/host/Makefile > > @@ -11,6 +11,7 @@ obj-$(CONFIG_MMC_PXA) += pxamci.o > > obj-$(CONFIG_MMC_MXC) += mxcmmc.o > > obj-$(CONFIG_MMC_MXS) += mxs-mmc.o > > obj-$(CONFIG_MMC_SDHCI) += sdhci.o > > +obj-$(CONFIG_MMC_SDHCI_UHS2) += sdhci-uhs2.o > > obj-$(CONFIG_MMC_SDHCI_PCI) += sdhci-pci.o > > sdhci-pci-y += sdhci-pci-core.o sdhci-pci-o2micro.o sdhci-pci-arasan.o \ > > sdhci-pci-dwc-mshc.o sdhci-pci-gli.o > > diff --git a/drivers/mmc/host/sdhci-uhs2.c b/drivers/mmc/host/sdhci-uhs2.c > > new file mode 100644 > > index 000000000000..608f8ad5aaed > > --- /dev/null > > +++ b/drivers/mmc/host/sdhci-uhs2.c > > @@ -0,0 +1,46 @@ > > +// SPDX-License-Identifier: GPL-2.0-or-later > > +/* > > + * linux/drivers/mmc/host/sdhci_uhs2.c - Secure Digital Host Controller > > + * Interface driver > > + * > > + * Copyright (C) 2014 Intel Corp, All Rights Reserved. > > + * Copyright (C) 2020 Genesys Logic, Inc. > > + * Authors: Ben Chuang <ben.chuang@xxxxxxxxxxxxxxxxxxx> > > + * Copyright (C) 2020 Linaro Limited > > + * Author: AKASHI Takahiro <takahiro.akashi@xxxxxxxxxx> > > + */ > > + > > +#include <linux/module.h> > > + > > +#include "sdhci.h" > > +#include "sdhci-uhs2.h" > > + > > +#define DRIVER_NAME "sdhci_uhs2" > > +#define DBG(f, x...) \ > > + pr_debug(DRIVER_NAME " [%s()]: " f, __func__, ## x) > > + > > +/*****************************************************************************\ > > + * * > > + * Driver init/exit * > > + * * > > +\*****************************************************************************/ > > + > > +static int sdhci_uhs2_host_ops_init(struct sdhci_host *host) > > +{ > > + return 0; > > +} > > + > > +static int __init sdhci_uhs2_mod_init(void) > > +{ > > + return 0; > > +} > > +module_init(sdhci_uhs2_mod_init); > > + > > +static void __exit sdhci_uhs2_mod_exit(void) > > +{ > > +} > > +module_exit(sdhci_uhs2_mod_exit); > > + > > +MODULE_AUTHOR("Intel, Genesys Logic, Linaro"); > > +MODULE_DESCRIPTION("MMC UHS-II Support"); > > +MODULE_LICENSE("GPL"); >