linux/include/linux/mmc/slot-gpio.h
<<
>>
Prefs
   1/*
   2 * Generic GPIO card-detect helper header
   3 *
   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.
   9 */
  10
  11#ifndef MMC_SLOT_GPIO_H
  12#define MMC_SLOT_GPIO_H
  13
  14#include <linux/types.h>
  15#include <linux/irqreturn.h>
  16
  17struct mmc_host;
  18
  19int mmc_gpio_get_ro(struct mmc_host *host);
  20int mmc_gpio_request_ro(struct mmc_host *host, unsigned int gpio);
  21
  22int mmc_gpio_get_cd(struct mmc_host *host);
  23int mmc_gpio_request_cd(struct mmc_host *host, unsigned int gpio,
  24                        unsigned int debounce);
  25
  26int mmc_gpiod_request_cd(struct mmc_host *host, const char *con_id,
  27                         unsigned int idx, bool override_active_level,
  28                         unsigned int debounce, bool *gpio_invert);
  29int mmc_gpiod_request_ro(struct mmc_host *host, const char *con_id,
  30                         unsigned int idx, bool override_active_level,
  31                         unsigned int debounce, bool *gpio_invert);
  32void mmc_gpio_set_cd_isr(struct mmc_host *host,
  33                         irqreturn_t (*isr)(int irq, void *dev_id));
  34void mmc_gpiod_request_cd_irq(struct mmc_host *host);
  35bool mmc_can_gpio_cd(struct mmc_host *host);
  36bool mmc_can_gpio_ro(struct mmc_host *host);
  37
  38#endif
  39