From: Davy Chan Date: Fri, 5 Jan 2007 05:56:46 +0000 (+0800) Subject: [MIPS] pnx8550: Fix write_config_byte() PCI config space accessor X-Git-Tag: v2.6.20-rc5~39^2~2 X-Git-Url: http://pilppa.com/gitweb/?a=commitdiff_plain;h=d98f92371461c5c8cc24e12a212c59b3f437b581;p=linux-2.6-omap-h63xx.git [MIPS] pnx8550: Fix write_config_byte() PCI config space accessor There's a serious typo in the function: arch/mips/pci/ops-pnx8550.c:write_config_byte() The parameter passed to the function config_access() is PCI_CMD_CONFIG_READ instead of PCI_CMD_CONFIG_WRITE. This renders any attempts to write a single byte to the PCI configuration registers useless. This problem does not exist for write_config_word() nor write_config_dword(). This problem has been there since kernel v2.6.17 and is still there as of kernel v2.6.19.1. Signed-off-by: Ralf Baechle --- diff --git a/arch/mips/pci/ops-pnx8550.c b/arch/mips/pci/ops-pnx8550.c index 454b65cc335..f556b7a8dcc 100644 --- a/arch/mips/pci/ops-pnx8550.c +++ b/arch/mips/pci/ops-pnx8550.c @@ -202,7 +202,7 @@ write_config_byte(struct pci_bus *bus, unsigned int devfn, int where, u8 val) break; } - err = config_access(PCI_CMD_CONFIG_READ, bus, devfn, where, ~(1 << (where & 3)), &data); + err = config_access(PCI_CMD_CONFIG_WRITE, bus, devfn, where, ~(1 << (where & 3)), &data); return err; }