android_kernel_motorola_sm6225/drivers/net/wireless/iwlwifi
Fenghua Yu 6aa03ab069 Fix iwlan DMA mapping direction
When iwlan runs on IOMMU, IOMMU generates a lot of PTE write faults
because PTE write bit is not set on some of PTE's.  This is because
iwlan driver calls DMA mapping with PCI_DMA_TODEVICE which is read only
in mapping PTE.  But iwlan device actually writes to the mapped page to
update its contents.  This issue is not exposed in swiotlb.  But VT-d
hardware can capture this fault and stop the fault transaction.

The following patch fixes the issue.

Signed-off-by: Fenghua Yu <fenghua.yu@intel.com>
Reviewed-by: Bhavesh Davda <bhavesh@vmware.com>
Tested-by: Chris Wright <chrisw@sous-sol.org>
Acked-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2009-02-25 09:30:56 -08:00
..
iwl-3945-commands.h iwlwifi: change email contact information 2008-12-12 14:01:46 -05:00
iwl-3945-core.h iwlwifi: change email contact information 2008-12-12 14:01:46 -05:00
iwl-3945-debug.h iwlwifi: change email contact information 2008-12-12 14:01:46 -05:00
iwl-3945-hw.h iwlwifi: use iwl_poll_direct_bit in EEPROM reading 2008-12-12 14:45:33 -05:00
iwl-3945-io.h iwlwifi: change email contact information 2008-12-12 14:01:46 -05:00
iwl-3945-led.c iwlwifi: change email contact information 2008-12-12 14:01:46 -05:00
iwl-3945-led.h iwlwifi: change email contact information 2008-12-12 14:01:46 -05:00
iwl-3945-rs.c iwlwifi: fix rs_get_rate WARN_ON() 2009-01-23 15:38:36 -05:00
iwl-3945-rs.h iwlwifi: change email contact information 2008-12-12 14:01:46 -05:00
iwl-3945.c iwl3945: fix "‘power_idx’ may be used uninitialized" warning 2009-01-13 10:25:45 -05:00
iwl-3945.h iwlwifi: cleanup iwl-dev.h 2008-12-19 15:23:32 -05:00
iwl-4965-hw.h iwlwifi: remove unused clip_groups priv member 2008-12-12 14:45:37 -05:00
iwl-4965.c iwlwifi: remove useless goto 2008-12-19 15:23:38 -05:00
iwl-5000-hw.h iwlwifi: change email contact information 2008-12-12 14:01:46 -05:00
iwl-5000.c iwlwifi: remove useless goto 2008-12-19 15:23:38 -05:00
iwl-agn-hcmd-check.c iwlwifi: change email contact information 2008-12-12 14:01:46 -05:00
iwl-agn-rs.c iwlwifi: fix rs_get_rate WARN_ON() 2009-01-23 15:38:36 -05:00
iwl-agn-rs.h iwlwifi: change email contact information 2008-12-12 14:01:46 -05:00
iwl-agn.c iwlwifi: fix suspend/resume and its usage of pci saved state 2009-02-11 11:27:21 -05:00
iwl-calib.c iwlwifi: cleanup iwl-dev.h 2008-12-19 15:23:32 -05:00
iwl-calib.h iwlwifi: change email contact information 2008-12-12 14:01:46 -05:00
iwl-commands.h iwlwifi: Fix typo in iwl-commands.h for CCK rate bit range. 2009-01-12 14:24:53 -05:00
iwl-core.c iwlwifi: add contact email to MODULE_AUTHOR 2008-12-12 14:45:43 -05:00
iwl-core.h iwlwifi: use type uint for module param debug 2008-12-19 15:23:36 -05:00
iwl-csr.h iwlwifi: use iwl_poll_direct_bit in EEPROM reading 2008-12-12 14:45:33 -05:00
iwl-debug.h iwlwifi: update comments on the debug interface 2008-12-19 15:23:35 -05:00
iwl-debugfs.c iwlwifi: change email contact information 2008-12-12 14:01:46 -05:00
iwl-dev.h iwlwifi: cleanup iwl-dev.h 2008-12-19 15:23:32 -05:00
iwl-eeprom.c iwlwifi: use iwl_poll_direct_bit in EEPROM reading 2008-12-12 14:45:33 -05:00
iwl-eeprom.h iwlwifi: use iwl_poll_direct_bit in EEPROM reading 2008-12-12 14:45:33 -05:00
iwl-fh.h iwlifi: remove twice defined SINGLE_FRAME RX FH MASK 2008-12-12 14:01:49 -05:00
iwl-hcmd.c iwlwifi: remove CMD_WANT_SKB flag if send_cmd_sync failure 2009-01-16 17:08:23 -05:00
iwl-helpers.h iwlwifi: remove includes of iwl-helpers.h where not needed 2008-12-12 14:45:39 -05:00
iwl-io.h iwlwifi: use meaningful vars in _iwl_poll_bit() 2008-12-19 15:23:39 -05:00
iwl-led.c iwlwifi: add line feed to printk 2008-12-19 15:23:33 -05:00
iwl-led.h iwlwifi: change email contact information 2008-12-12 14:01:46 -05:00
iwl-power.c iwlwifi: remove includes of iwl-helpers.h where not needed 2008-12-12 14:45:39 -05:00
iwl-power.h iwlwifi: change email contact information 2008-12-12 14:01:46 -05:00
iwl-prph.h iwlwifi: change email contact information 2008-12-12 14:01:46 -05:00
iwl-rfkill.c iwlwifi: remove includes of iwl-helpers.h where not needed 2008-12-12 14:45:39 -05:00
iwl-rfkill.h iwlwifi: change email contact information 2008-12-12 14:01:46 -05:00
iwl-rx.c iwlwifi: use GFP_KERNEL to allocate Rx SKB memory 2008-12-19 15:23:41 -05:00
iwl-scan.c iwlwifi: change email contact information 2008-12-12 14:01:46 -05:00
iwl-spectrum.c iwlwifi: remove 4965 from common uCode API structures 2008-12-12 14:45:41 -05:00
iwl-spectrum.h iwlwifi: change email contact information 2008-12-12 14:01:46 -05:00
iwl-sta.c iwlwifi: clean key table in iwl_clear_stations_table 2009-02-04 16:11:42 -05:00
iwl-sta.h iwlwifi: change email contact information 2008-12-12 14:01:46 -05:00
iwl-tx.c Fix iwlan DMA mapping direction 2009-02-25 09:30:56 -08:00
iwl3945-base.c iwlwifi: fix suspend/resume and its usage of pci saved state 2009-02-11 11:27:21 -05:00
Kconfig wireless: consolidate on a single escape_essid implementation 2008-10-31 19:00:46 -04:00
Makefile iwlwifi: move host command check function into separate file 2008-12-05 09:35:51 -05:00