Re: [PATCH 2/8] FMC: add needed headers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wednesday 12 June 2013 09:13:36 Alessandro Rubini wrote:
> + */
> +struct fmc_operations {
> +       uint32_t (*readl)(struct fmc_device *fmc, int offset);
> +       void (*writel)(struct fmc_device *fmc, uint32_t value, int offset);
> +       int (*validate)(struct fmc_device *fmc, struct fmc_driver *drv);
> +       int (*reprogram)(struct fmc_device *f, struct fmc_driver *d, char *gw);
> +       int (*irq_request)(struct fmc_device *fmc, irq_handler_t h,
> +                          char *name, int flags);

8<----
Subject: fmc: avoid readl/writel namespace conflict

The use of the 'readl' and 'writel' identifiers here causes build errors on
architectures where those are macros. This renames the fields to read32/write32
to avoid the problem.

Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>

diff --git a/drivers/fmc/fmc-fakedev.c b/drivers/fmc/fmc-fakedev.c
index bec94ac..941d093 100644
--- a/drivers/fmc/fmc-fakedev.c
+++ b/drivers/fmc/fmc-fakedev.c
@@ -232,8 +232,8 @@ static int ff_validate(struct fmc_device *fmc, struct fmc_driver *drv)
 
 
 static struct fmc_operations ff_fmc_operations = {
-	.readl =		ff_readl,
-	.writel =		ff_writel,
+	.read32 =		ff_readl,
+	.write32 =		ff_writel,
 	.reprogram =		ff_reprogram,
 	.irq_request =		ff_irq_request,
 	.read_ee =		ff_read_ee,
diff --git a/include/linux/fmc.h b/include/linux/fmc.h
index a3c4985..a5f0aa5 100644
--- a/include/linux/fmc.h
+++ b/include/linux/fmc.h
@@ -129,8 +129,8 @@ struct fmc_gpio {
  * the exception.
  */
 struct fmc_operations {
-	uint32_t (*readl)(struct fmc_device *fmc, int offset);
-	void (*writel)(struct fmc_device *fmc, uint32_t value, int offset);
+	uint32_t (*read32)(struct fmc_device *fmc, int offset);
+	void (*write32)(struct fmc_device *fmc, uint32_t value, int offset);
 	int (*validate)(struct fmc_device *fmc, struct fmc_driver *drv);
 	int (*reprogram)(struct fmc_device *f, struct fmc_driver *d, char *gw);
 	int (*irq_request)(struct fmc_device *fmc, irq_handler_t h,
@@ -194,14 +194,14 @@ struct fmc_device {
  */
 static inline uint32_t fmc_readl(struct fmc_device *fmc, int offset)
 {
-	if (unlikely(fmc->op->readl))
-		return fmc->op->readl(fmc, offset);
+	if (unlikely(fmc->op->read32))
+		return fmc->op->read32(fmc, offset);
 	return readl(fmc->fpga_base + offset);
 }
 static inline void fmc_writel(struct fmc_device *fmc, uint32_t val, int off)
 {
-	if (unlikely(fmc->op->writel))
-		fmc->op->writel(fmc, val, off);
+	if (unlikely(fmc->op->write32))
+		fmc->op->write32(fmc, val, off);
 	else
 		writel(val, fmc->fpga_base + off);
 }

--
To unsubscribe from this list: send the line "unsubscribe linux-doc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux