[rt2x00-users] [PATCH] [BISECTED] rt2x00: Fix load_firmware - PBF system register not ready regression.
Wolfgang Kufner
wolfgang.kufner at gmail.com
Mon Nov 22 14:30:24 UTC 2010
Hi,
I decided to give the famous git bisect my first try and found:
6175ddf06b6172046a329e3abfd9c901a43efd2e is the first bad commit
commit 6175ddf06b6172046a329e3abfd9c901a43efd2e
Author: Brian Gerst <brgerst at gmail.com>
Date: Fri Feb 5 09:37:07 2010 -0500
x86: Clean up mem*io functions.
Iomem has no special significance on x86. Use the standard mem*
functions instead of trying to call other versions. Some fixups
are needed to match the function prototypes.
Signed-off-by: Brian Gerst <brgerst at gmail.com>
LKML-Reference: <1265380629-3212-6-git-send-email-brgerst at gmail.com>
Signed-off-by: H. Peter Anvin <hpa at zytor.com>
Googling that commit I found among others
http://lkml.org/lkml/2010/7/20/389. My patch based on that patch by
Hidetoshi Seto fixed the problem for me. I do not know much C at all,
so "works for me" is about the only thing I can say about this patch.
memcpy_fromio might run into similar problems, but since it worked I
left it alone.
Tested with:
RaLink RT2860 [1814:0781]
rt2x00_set_chip: Info - Chipset detected - rt: 2872, rf: 0003, rev: 0200.
2.6.36-1-generic ubuntu 10.04 lucid x86_64 and 2.6.37 (current
linux/kernel/git/ivd/rt2x00.git) ubuntu 10.10 maverick x86_64
Signed-off-by: Wolfgang Kufner <wolfgang.kufner at gmail.com>
---
drivers/net/wireless/rt2x00/rt2x00pci.h | 6 +++++-
1 files changed, 5 insertions(+), 1 deletions(-)
diff --git a/drivers/net/wireless/rt2x00/rt2x00pci.h
b/drivers/net/wireless/rt2x00/rt2x00pci.h
index b854d62..a8c6cc1 100644
--- a/drivers/net/wireless/rt2x00/rt2x00pci.h
+++ b/drivers/net/wireless/rt2x00/rt2x00pci.h
@@ -64,7 +64,11 @@ static inline void
rt2x00pci_register_multiwrite(struct rt2x00_dev *rt2x00dev,
const void *value,
const u32 length)
{
- memcpy_toio(rt2x00dev->csr.base + offset, value, length);
+#ifdef CONFIG_X86_64
+ __inline_memcpy(rt2x00dev->csr.base + offset, value, length);
+#else
+ memcpy_toio(rt2x00dev->csr.base + offset, value, length);
+#endif
}
/**
--
1.7.0.4
More information about the users
mailing list