aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpio
diff options
context:
space:
mode:
authorJamie Iles <jamie@jamieiles.com>2011-05-20 02:40:17 -0400
committerGrant Likely <grant.likely@secretlab.ca>2011-05-20 02:40:17 -0400
commitfd9962352105f19711d55cc2caaf75b2e201598b (patch)
treecba555da6e000e49390f7b394c58d9136c4cc593 /drivers/gpio
parent31029116ebc1f2481bd2380437e9f7a18f18dca5 (diff)
basic_mmio_gpio: convert to non-__raw* accessors
The __raw_* accessors don't include memory barriers and can cause problems when writes get stuck in write buffers. Suggested-by: Linus Walleij <linus.walleij@linaro.org> Acked-by: Anton Vorontsov <cbouatmailru@gmail.com> Signed-off-by: Jamie Iles <jamie@jamieiles.com> Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Diffstat (limited to 'drivers/gpio')
-rw-r--r--drivers/gpio/basic_mmio_gpio.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/drivers/gpio/basic_mmio_gpio.c b/drivers/gpio/basic_mmio_gpio.c
index f4afd96303c1..b2ec45ffe447 100644
--- a/drivers/gpio/basic_mmio_gpio.c
+++ b/drivers/gpio/basic_mmio_gpio.c
@@ -101,43 +101,43 @@ static struct bgpio_chip *to_bgpio_chip(struct gpio_chip *gc)
101 101
102static void bgpio_write8(void __iomem *reg, unsigned long data) 102static void bgpio_write8(void __iomem *reg, unsigned long data)
103{ 103{
104 __raw_writeb(data, reg); 104 writeb(data, reg);
105} 105}
106 106
107static unsigned long bgpio_read8(void __iomem *reg) 107static unsigned long bgpio_read8(void __iomem *reg)
108{ 108{
109 return __raw_readb(reg); 109 return readb(reg);
110} 110}
111 111
112static void bgpio_write16(void __iomem *reg, unsigned long data) 112static void bgpio_write16(void __iomem *reg, unsigned long data)
113{ 113{
114 __raw_writew(data, reg); 114 writew(data, reg);
115} 115}
116 116
117static unsigned long bgpio_read16(void __iomem *reg) 117static unsigned long bgpio_read16(void __iomem *reg)
118{ 118{
119 return __raw_readw(reg); 119 return readw(reg);
120} 120}
121 121
122static void bgpio_write32(void __iomem *reg, unsigned long data) 122static void bgpio_write32(void __iomem *reg, unsigned long data)
123{ 123{
124 __raw_writel(data, reg); 124 writel(data, reg);
125} 125}
126 126
127static unsigned long bgpio_read32(void __iomem *reg) 127static unsigned long bgpio_read32(void __iomem *reg)
128{ 128{
129 return __raw_readl(reg); 129 return readl(reg);
130} 130}
131 131
132#if BITS_PER_LONG >= 64 132#if BITS_PER_LONG >= 64
133static void bgpio_write64(void __iomem *reg, unsigned long data) 133static void bgpio_write64(void __iomem *reg, unsigned long data)
134{ 134{
135 __raw_writeq(data, reg); 135 writeq(data, reg);
136} 136}
137 137
138static unsigned long bgpio_read64(void __iomem *reg) 138static unsigned long bgpio_read64(void __iomem *reg)
139{ 139{
140 return __raw_readq(reg); 140 return readq(reg);
141} 141}
142#endif /* BITS_PER_LONG >= 64 */ 142#endif /* BITS_PER_LONG >= 64 */
143 143