void sd_gpio_enable(SDIO_Pad_Type_t io_pad_type) { switch (io_pad_type) { case SDHC_CARD_0_5 : //SDHC-B #ifdef CONFIG_OF if(p) devm_pinctrl_put(p); p=NULL; #else pinmux_clr(&SDHC_CARD_0_5_set); #endif CLEAR_CBUS_REG_MASK(SDIO_MULT_CONFIG, (1)); break; case SDHC_BOOT_0_11 : //SDHC-C #ifdef CONFIG_OF if(p) devm_pinctrl_put(p); p=NULL; #else pinmux_clr(&SDHC_BOOT_0_11_set); #endif CLEAR_CBUS_REG_MASK(SDIO_MULT_CONFIG, (2)); break; case SDHC_GPIOX_0_9 : //SDHC-A #ifdef CONFIG_OF if(p) devm_pinctrl_put(p); p=NULL; #else pinmux_clr(&SDHC_GPIOX_0_9_set); #endif CLEAR_CBUS_REG_MASK(SDIO_MULT_CONFIG, (0)); break; default : printk("invalid hw io pad!!!\n"); break; } return; }
static void meson_remote_pinmux_cleanup(void) { printk(KERN_INFO "meson_remote_pinmux_cleanup()\n"); pinmux_clr(&meson_remote_pinmux); }