1 /* SPDX-License-Identifier: GPL-2.0-only */ << 2 /* 1 /* 3 * Generic GPIO card-detect helper header 2 * Generic GPIO card-detect helper header 4 * 3 * 5 * Copyright (C) 2011, Guennadi Liakhovetski < 4 * Copyright (C) 2011, Guennadi Liakhovetski <g.liakhovetski@gmx.de> >> 5 * >> 6 * This program is free software; you can redistribute it and/or modify >> 7 * it under the terms of the GNU General Public License version 2 as >> 8 * published by the Free Software Foundation. 6 */ 9 */ 7 10 8 #ifndef MMC_SLOT_GPIO_H 11 #ifndef MMC_SLOT_GPIO_H 9 #define MMC_SLOT_GPIO_H 12 #define MMC_SLOT_GPIO_H 10 13 11 #include <linux/interrupt.h> << 12 #include <linux/types.h> 14 #include <linux/types.h> >> 15 #include <linux/irqreturn.h> 13 16 14 struct mmc_host; 17 struct mmc_host; 15 18 16 int mmc_gpio_get_ro(struct mmc_host *host); 19 int mmc_gpio_get_ro(struct mmc_host *host); >> 20 int mmc_gpio_request_ro(struct mmc_host *host, unsigned int gpio); >> 21 17 int mmc_gpio_get_cd(struct mmc_host *host); 22 int mmc_gpio_get_cd(struct mmc_host *host); 18 void mmc_gpio_set_cd_irq(struct mmc_host *host !! 23 int mmc_gpio_request_cd(struct mmc_host *host, unsigned int gpio, >> 24 unsigned int debounce); >> 25 19 int mmc_gpiod_request_cd(struct mmc_host *host 26 int mmc_gpiod_request_cd(struct mmc_host *host, const char *con_id, 20 unsigned int idx, boo 27 unsigned int idx, bool override_active_level, 21 unsigned int debounce !! 28 unsigned int debounce, bool *gpio_invert); 22 int mmc_gpiod_request_ro(struct mmc_host *host 29 int mmc_gpiod_request_ro(struct mmc_host *host, const char *con_id, 23 unsigned int idx, uns !! 30 unsigned int idx, bool override_active_level, 24 int mmc_gpiod_set_cd_config(struct mmc_host *h !! 31 unsigned int debounce, bool *gpio_invert); 25 void mmc_gpio_set_cd_isr(struct mmc_host *host !! 32 void mmc_gpio_set_cd_isr(struct mmc_host *host, >> 33 irqreturn_t (*isr)(int irq, void *dev_id)); 26 int mmc_gpio_set_cd_wake(struct mmc_host *host 34 int mmc_gpio_set_cd_wake(struct mmc_host *host, bool on); 27 void mmc_gpiod_request_cd_irq(struct mmc_host 35 void mmc_gpiod_request_cd_irq(struct mmc_host *host); 28 bool mmc_can_gpio_cd(struct mmc_host *host); 36 bool mmc_can_gpio_cd(struct mmc_host *host); 29 bool mmc_can_gpio_ro(struct mmc_host *host); 37 bool mmc_can_gpio_ro(struct mmc_host *host); 30 38 31 #endif 39 #endif 32 40
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.