From 4c5bb2e42e6f12c02e6c8db9883ffa7602c68c19 Mon Sep 17 00:00:00 2001 From: Marek Vasut Date: Mon, 1 Oct 2012 20:52:43 +0000 Subject: mmc: mxs-mmc: Fix merge issue causing build error The following error appeared due to a merge problem; the patches: fc108d24 "mmc: mxs-mmc: fix deadlock caused by recursion loop" 829c1bf4 "mmc: spi: Pull out parts shared between MMC and SPI" came in through separate branches and cause this build error when combined. drivers/mmc/host/mxs-mmc.c: In function 'mxs_mmc_enable_sdio_irq': drivers/mmc/host/mxs-mmc.c:527:3: error: 'struct mxs_mmc_host' has no member named 'base' drivers/mmc/host/mxs-mmc.c:527:3: error: 'struct mxs_mmc_host' has no member named 'devid' make[3]: *** [drivers/mmc/host/mxs-mmc.o] Error 1 This patch corrects the issue. Signed-off-by: Marek Vasut Cc: Fabio Estevam Cc: Shawn Guo Signed-off-by: Chris Ball --- drivers/mmc/host/mxs-mmc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/mmc/host/mxs-mmc.c b/drivers/mmc/host/mxs-mmc.c index bb4c2bf04d09..80d1e6d4b0ae 100644 --- a/drivers/mmc/host/mxs-mmc.c +++ b/drivers/mmc/host/mxs-mmc.c @@ -525,7 +525,7 @@ static void mxs_mmc_enable_sdio_irq(struct mmc_host *mmc, int enable) writel(BM_SSP_CTRL0_SDIO_IRQ_CHECK, ssp->base + HW_SSP_CTRL0 + STMP_OFFSET_REG_SET); writel(BM_SSP_CTRL1_SDIO_IRQ_EN, - host->base + HW_SSP_CTRL1(host) + STMP_OFFSET_REG_SET); + ssp->base + HW_SSP_CTRL1(ssp) + STMP_OFFSET_REG_SET); } else { writel(BM_SSP_CTRL0_SDIO_IRQ_CHECK, ssp->base + HW_SSP_CTRL0 + STMP_OFFSET_REG_CLR); -- cgit v1.2.3-59-g8ed1b From 60fe5771be6aa3f37d5887aa01c04f733130a559 Mon Sep 17 00:00:00 2001 From: David Howells Date: Tue, 9 Oct 2012 09:48:45 +0100 Subject: UAPI: (Scripted) Disintegrate include/linux/mmc Signed-off-by: David Howells Acked-by: Arnd Bergmann Acked-by: Thomas Gleixner Acked-by: Michael Kerrisk Acked-by: Paul E. McKenney Acked-by: Dave Jones Signed-off-by: Chris Ball --- include/linux/mmc/Kbuild | 1 - include/linux/mmc/ioctl.h | 57 ------------------------------------------ include/uapi/linux/mmc/Kbuild | 1 + include/uapi/linux/mmc/ioctl.h | 57 ++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 58 insertions(+), 58 deletions(-) delete mode 100644 include/linux/mmc/ioctl.h create mode 100644 include/uapi/linux/mmc/ioctl.h diff --git a/include/linux/mmc/Kbuild b/include/linux/mmc/Kbuild index 1fb26448faa9..e69de29bb2d1 100644 --- a/include/linux/mmc/Kbuild +++ b/include/linux/mmc/Kbuild @@ -1 +0,0 @@ -header-y += ioctl.h diff --git a/include/linux/mmc/ioctl.h b/include/linux/mmc/ioctl.h deleted file mode 100644 index 1f5e68923929..000000000000 --- a/include/linux/mmc/ioctl.h +++ /dev/null @@ -1,57 +0,0 @@ -#ifndef LINUX_MMC_IOCTL_H -#define LINUX_MMC_IOCTL_H - -#include - -struct mmc_ioc_cmd { - /* Implies direction of data. true = write, false = read */ - int write_flag; - - /* Application-specific command. true = precede with CMD55 */ - int is_acmd; - - __u32 opcode; - __u32 arg; - __u32 response[4]; /* CMD response */ - unsigned int flags; - unsigned int blksz; - unsigned int blocks; - - /* - * Sleep at least postsleep_min_us useconds, and at most - * postsleep_max_us useconds *after* issuing command. Needed for - * some read commands for which cards have no other way of indicating - * they're ready for the next command (i.e. there is no equivalent of - * a "busy" indicator for read operations). - */ - unsigned int postsleep_min_us; - unsigned int postsleep_max_us; - - /* - * Override driver-computed timeouts. Note the difference in units! - */ - unsigned int data_timeout_ns; - unsigned int cmd_timeout_ms; - - /* - * For 64-bit machines, the next member, ``__u64 data_ptr``, wants to - * be 8-byte aligned. Make sure this struct is the same size when - * built for 32-bit. - */ - __u32 __pad; - - /* DAT buffer */ - __u64 data_ptr; -}; -#define mmc_ioc_cmd_set_data(ic, ptr) ic.data_ptr = (__u64)(unsigned long) ptr - -#define MMC_IOC_CMD _IOWR(MMC_BLOCK_MAJOR, 0, struct mmc_ioc_cmd) - -/* - * Since this ioctl is only meant to enhance (and not replace) normal access - * to the mmc bus device, an upper data transfer limit of MMC_IOC_MAX_BYTES - * is enforced per ioctl call. For larger data transfers, use the normal - * block device operations. - */ -#define MMC_IOC_MAX_BYTES (512L * 256) -#endif /* LINUX_MMC_IOCTL_H */ diff --git a/include/uapi/linux/mmc/Kbuild b/include/uapi/linux/mmc/Kbuild index aafaa5aa54d4..8c1d2cb75e33 100644 --- a/include/uapi/linux/mmc/Kbuild +++ b/include/uapi/linux/mmc/Kbuild @@ -1 +1,2 @@ # UAPI Header export list +header-y += ioctl.h diff --git a/include/uapi/linux/mmc/ioctl.h b/include/uapi/linux/mmc/ioctl.h new file mode 100644 index 000000000000..1f5e68923929 --- /dev/null +++ b/include/uapi/linux/mmc/ioctl.h @@ -0,0 +1,57 @@ +#ifndef LINUX_MMC_IOCTL_H +#define LINUX_MMC_IOCTL_H + +#include + +struct mmc_ioc_cmd { + /* Implies direction of data. true = write, false = read */ + int write_flag; + + /* Application-specific command. true = precede with CMD55 */ + int is_acmd; + + __u32 opcode; + __u32 arg; + __u32 response[4]; /* CMD response */ + unsigned int flags; + unsigned int blksz; + unsigned int blocks; + + /* + * Sleep at least postsleep_min_us useconds, and at most + * postsleep_max_us useconds *after* issuing command. Needed for + * some read commands for which cards have no other way of indicating + * they're ready for the next command (i.e. there is no equivalent of + * a "busy" indicator for read operations). + */ + unsigned int postsleep_min_us; + unsigned int postsleep_max_us; + + /* + * Override driver-computed timeouts. Note the difference in units! + */ + unsigned int data_timeout_ns; + unsigned int cmd_timeout_ms; + + /* + * For 64-bit machines, the next member, ``__u64 data_ptr``, wants to + * be 8-byte aligned. Make sure this struct is the same size when + * built for 32-bit. + */ + __u32 __pad; + + /* DAT buffer */ + __u64 data_ptr; +}; +#define mmc_ioc_cmd_set_data(ic, ptr) ic.data_ptr = (__u64)(unsigned long) ptr + +#define MMC_IOC_CMD _IOWR(MMC_BLOCK_MAJOR, 0, struct mmc_ioc_cmd) + +/* + * Since this ioctl is only meant to enhance (and not replace) normal access + * to the mmc bus device, an upper data transfer limit of MMC_IOC_MAX_BYTES + * is enforced per ioctl call. For larger data transfers, use the normal + * block device operations. + */ +#define MMC_IOC_MAX_BYTES (512L * 256) +#endif /* LINUX_MMC_IOCTL_H */ -- cgit v1.2.3-59-g8ed1b