On 13/12/2021 20.45, Robin Murphy wrote: > On 2021-12-12 07:02, Hector Martin wrote: >> This is required on some Apple ARM64 laptops using this controller. >> As is typical on DT platforms, pull these quirks from the device tree >> using the standard mmc bindings. >> >> See Documentation/devicetree/bindings/mmc/mmc-controller.yaml >> >> Signed-off-by: Hector Martin <marcan@xxxxxxxxx> >> --- >> drivers/mmc/host/sdhci-pci-gli.c | 19 +++++++++++++++++-- >> 1 file changed, 17 insertions(+), 2 deletions(-) >> >> diff --git a/drivers/mmc/host/sdhci-pci-gli.c b/drivers/mmc/host/sdhci-pci-gli.c >> index 4fd99c1e82ba..ad742743a494 100644 >> --- a/drivers/mmc/host/sdhci-pci-gli.c >> +++ b/drivers/mmc/host/sdhci-pci-gli.c >> @@ -12,6 +12,7 @@ >> #include <linux/pci.h> >> #include <linux/mmc/mmc.h> >> #include <linux/delay.h> >> +#include <linux/of.h> >> #include "sdhci.h" >> #include "sdhci-pci.h" >> #include "cqhci.h" >> @@ -114,8 +115,10 @@ >> #define GLI_9755_WT_EN_OFF 0x0 >> >> #define PCI_GLI_9755_PECONF 0x44 >> -#define PCI_GLI_9755_LFCLK GENMASK(14, 12) >> -#define PCI_GLI_9755_DMACLK BIT(29) >> +#define PCI_GLI_9755_LFCLK GENMASK(14, 12) >> +#define PCI_GLI_9755_DMACLK BIT(29) >> +#define PCI_GLI_9755_INVERT_CD BIT(30) >> +#define PCI_GLI_9755_INVERT_WP BIT(31) >> >> #define PCI_GLI_9755_CFG2 0x48 >> #define PCI_GLI_9755_CFG2_L1DLY GENMASK(28, 24) >> @@ -570,6 +573,18 @@ static void gl9755_hw_setting(struct sdhci_pci_slot *slot) >> gl9755_wt_on(pdev); >> >> pci_read_config_dword(pdev, PCI_GLI_9755_PECONF, &value); >> +#ifdef CONFIG_OF >> + if (pdev->dev.of_node) { > > FWIW, of_property_read_bool() should handle a NULL node correctly, and > its stub be optimised away for !OF, so you don't really need the > explicit check or the #ifdef. Thanks, removed it for v3! -- Hector Martin (marcan@xxxxxxxxx) Public Key: https://mrcn.st/pub