diff options
author | Paul Brook <paul@codesourcery.com> | 2006-09-24 11:54:40 -0400 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2006-09-27 04:35:07 -0400 |
commit | c06015148fa9a3cc452ec7121b8c3f59f4a7d6ac (patch) | |
tree | 348ff2fee459a074987cc1bc8607f8201e782f5f /arch/arm | |
parent | 4052ebb7a2729bd7c28260cdf8e470c0d81b9c56 (diff) |
[ARM] 3860/1: Versatile PCI config byte accesses
The ARM Versatile board PCI config space read routines are broken for byte
accesses. The access uses a byte read, so masking the bottom two bits of the
address is wrong.
I guess this is a cut/paste error from the the halfword code which uses
aligned word access+shift+mask.
Signed-off-by: Paul Brook <paul@codesourcery.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm')
-rw-r--r-- | arch/arm/mach-versatile/pci.c | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/arch/arm/mach-versatile/pci.c b/arch/arm/mach-versatile/pci.c index 41b370090b60..13bbd08ff841 100644 --- a/arch/arm/mach-versatile/pci.c +++ b/arch/arm/mach-versatile/pci.c | |||
@@ -117,7 +117,6 @@ static int versatile_read_config(struct pci_bus *bus, unsigned int devfn, int wh | |||
117 | } else { | 117 | } else { |
118 | switch (size) { | 118 | switch (size) { |
119 | case 1: | 119 | case 1: |
120 | addr &= ~3; | ||
121 | v = __raw_readb(addr); | 120 | v = __raw_readb(addr); |
122 | break; | 121 | break; |
123 | 122 | ||