mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-12 05:48:40 +00:00
Blackfin: bf533-stamp: add resources for mmc_spi card
Signed-off-by: Yi Li <yi.li@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
This commit is contained in:
parent
f41e2fded0
commit
2120b68f31
1 changed files with 40 additions and 0 deletions
|
@ -35,6 +35,7 @@
|
||||||
#include <linux/mtd/physmap.h>
|
#include <linux/mtd/physmap.h>
|
||||||
#include <linux/spi/spi.h>
|
#include <linux/spi/spi.h>
|
||||||
#include <linux/spi/flash.h>
|
#include <linux/spi/flash.h>
|
||||||
|
#include <linux/spi/mmc_spi.h>
|
||||||
#if defined(CONFIG_USB_ISP1362_HCD) || defined(CONFIG_USB_ISP1362_HCD_MODULE)
|
#if defined(CONFIG_USB_ISP1362_HCD) || defined(CONFIG_USB_ISP1362_HCD_MODULE)
|
||||||
#include <linux/usb/isp1362.h>
|
#include <linux/usb/isp1362.h>
|
||||||
#endif
|
#endif
|
||||||
|
@ -223,6 +224,34 @@ static struct bfin5xx_spi_chip spidev_chip_info = {
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if defined(CONFIG_MMC_SPI) || defined(CONFIG_MMC_SPI_MODULE)
|
||||||
|
#define MMC_SPI_CARD_DETECT_INT IRQ_PF5
|
||||||
|
static int bfin_mmc_spi_init(struct device *dev,
|
||||||
|
irqreturn_t (*detect_int)(int, void *), void *data)
|
||||||
|
{
|
||||||
|
return request_irq(MMC_SPI_CARD_DETECT_INT, detect_int,
|
||||||
|
IRQF_TRIGGER_FALLING | IRQF_TRIGGER_RISING,
|
||||||
|
"mmc-spi-detect", data);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void bfin_mmc_spi_exit(struct device *dev, void *data)
|
||||||
|
{
|
||||||
|
free_irq(MMC_SPI_CARD_DETECT_INT, data);
|
||||||
|
}
|
||||||
|
|
||||||
|
static struct mmc_spi_platform_data bfin_mmc_spi_pdata = {
|
||||||
|
.init = bfin_mmc_spi_init,
|
||||||
|
.exit = bfin_mmc_spi_exit,
|
||||||
|
.detect_delay = 100, /* msecs */
|
||||||
|
};
|
||||||
|
|
||||||
|
static struct bfin5xx_spi_chip mmc_spi_chip_info = {
|
||||||
|
.enable_dma = 0,
|
||||||
|
.bits_per_word = 8,
|
||||||
|
.pio_interrupt = 0,
|
||||||
|
};
|
||||||
|
#endif
|
||||||
|
|
||||||
static struct spi_board_info bfin_spi_board_info[] __initdata = {
|
static struct spi_board_info bfin_spi_board_info[] __initdata = {
|
||||||
#if defined(CONFIG_MTD_M25P80) || defined(CONFIG_MTD_M25P80_MODULE)
|
#if defined(CONFIG_MTD_M25P80) || defined(CONFIG_MTD_M25P80_MODULE)
|
||||||
{
|
{
|
||||||
|
@ -286,6 +315,17 @@ static struct spi_board_info bfin_spi_board_info[] __initdata = {
|
||||||
.controller_data = &spidev_chip_info,
|
.controller_data = &spidev_chip_info,
|
||||||
},
|
},
|
||||||
#endif
|
#endif
|
||||||
|
#if defined(CONFIG_MMC_SPI) || defined(CONFIG_MMC_SPI_MODULE)
|
||||||
|
{
|
||||||
|
.modalias = "mmc_spi",
|
||||||
|
.max_speed_hz = 20000000, /* max spi clock (SCK) speed in HZ */
|
||||||
|
.bus_num = 0,
|
||||||
|
.chip_select = 4,
|
||||||
|
.platform_data = &bfin_mmc_spi_pdata,
|
||||||
|
.controller_data = &mmc_spi_chip_info,
|
||||||
|
.mode = SPI_MODE_3,
|
||||||
|
},
|
||||||
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
#if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE)
|
#if defined(CONFIG_SPI_BFIN) || defined(CONFIG_SPI_BFIN_MODULE)
|
||||||
|
|
Loading…
Reference in a new issue