Messages in this thread Patch in this message | | | Date | Tue, 07 Apr 2009 17:45:50 -0600 | From | dougthompson@xmission ... | Subject | [PATCH 2/3] edac: fix local pci_write_bits32 |
| |
From: Jeff Haran <jharan@Brocade.COM>
Fix the edac local pci_write_bits32 to properly note the 'escape' mask if all ones in a 32-bit word.
Currently no consumer of this function uses that mask, so danger to existing code.
Signed-off-by: Jeff Haran <jharan@Brocade.COM> Signed-off-by: Doug Thompson <dougthompson@xmission.com> --- edac_core.h | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-)
Index: linux-2.6.29/drivers/edac/edac_core.h =================================================================== --- linux-2.6.29.orig/drivers/edac/edac_core.h +++ linux-2.6.29/drivers/edac/edac_core.h @@ -767,11 +767,19 @@ static inline void pci_write_bits16(stru pci_write_config_word(pdev, offset, value); } -/* write all or some bits in a dword-register*/ +/* + * pci_write_bits32 + * + * edac local routine to do pci_write_config_dword, but adds + * a mask parameter. If mask is all ones, ignore the mask. + * Otherwise utilize the mask to isolate specified bits + * + * write all or some bits in a dword-register + */ static inline void pci_write_bits32(struct pci_dev *pdev, int offset, u32 value, u32 mask) { - if (mask != 0xffff) { + if (mask != 0xffffffff) { u32 buf; pci_read_config_dword(pdev, offset, &buf);
| |