rpms/kernel/F-10 linux-2.6-iwlwifi-dma-direction.patch, NONE, 1.1 config-generic, 1.214, 1.215 config-x86-generic, 1.59, 1.60 kernel.spec, 1.1256, 1.1257 linux-2.6-at76.patch, 1.13, NONE
Chuck Ebbert
cebbert at fedoraproject.org
Thu Feb 12 21:50:29 UTC 2009
Author: cebbert
Update of /cvs/pkgs/rpms/kernel/F-10
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv18758
Modified Files:
config-generic config-x86-generic kernel.spec
Added Files:
linux-2.6-iwlwifi-dma-direction.patch
Removed Files:
linux-2.6-at76.patch
Log Message:
Enable AMD Geode scx200 i2c bus controller driver (F10#485162)
Fix iwlwifi DMA direction bug.
Drop linux-2.6-at76.patch in favor of version from drivers/staging (F10#477927)
linux-2.6-iwlwifi-dma-direction.patch:
--- NEW FILE linux-2.6-iwlwifi-dma-direction.patch ---
From: Fenghua Yu <fenghua.yu at intel.com>
Subject: [PATCH]iwlan dma mapping read and write changes
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 at intel.com>
Tested-by: Chris Wright <chrisw at sous-sol.org>
---
iwl-tx.c | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
--- a/drivers/net/wireless/iwlwifi/iwl-tx.c.orig 2009-02-10 21:28:45.000000000 -0800
+++ b/drivers/net/wireless/iwlwifi/iwl-tx.c 2009-02-10 21:41:02.000000000 -0800
@@ -148,7 +148,7 @@ static void iwl_hw_txq_free_tfd(struct i
pci_unmap_single(dev,
pci_unmap_addr(&txq->cmd[index]->meta, mapping),
pci_unmap_len(&txq->cmd[index]->meta, len),
- PCI_DMA_TODEVICE);
+ PCI_DMA_BIDIRECTIONAL);
/* Unmap chunks, if any. */
for (i = 1; i < num_tbs; i++) {
@@ -964,7 +964,7 @@ int iwl_tx_skb(struct iwl_priv *priv, st
* within command buffer array. */
txcmd_phys = pci_map_single(priv->pci_dev,
out_cmd, sizeof(struct iwl_cmd),
- PCI_DMA_TODEVICE);
+ PCI_DMA_BIDIRECTIONAL);
pci_unmap_addr_set(&out_cmd->meta, mapping, txcmd_phys);
pci_unmap_len_set(&out_cmd->meta, len, sizeof(struct iwl_cmd));
/* Add buffer containing Tx command and MAC(!) header to TFD's
@@ -1115,7 +1115,7 @@ int iwl_enqueue_hcmd(struct iwl_priv *pr
IWL_MAX_SCAN_SIZE : sizeof(struct iwl_cmd);
phys_addr = pci_map_single(priv->pci_dev, out_cmd,
- len, PCI_DMA_TODEVICE);
+ len, PCI_DMA_BIDIRECTIONAL);
pci_unmap_addr_set(&out_cmd->meta, mapping, phys_addr);
pci_unmap_len_set(&out_cmd->meta, len, len);
phys_addr += offsetof(struct iwl_cmd, hdr);
@@ -1212,7 +1212,7 @@ static void iwl_hcmd_queue_reclaim(struc
pci_unmap_single(priv->pci_dev,
pci_unmap_addr(&txq->cmd[cmd_idx]->meta, mapping),
pci_unmap_len(&txq->cmd[cmd_idx]->meta, len),
- PCI_DMA_TODEVICE);
+ PCI_DMA_BIDIRECTIONAL);
for (idx = iwl_queue_inc_wrap(idx, q->n_bd); q->read_ptr != idx;
q->read_ptr = iwl_queue_inc_wrap(q->read_ptr, q->n_bd)) {
Index: config-generic
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-10/config-generic,v
retrieving revision 1.214
retrieving revision 1.215
diff -u -r1.214 -r1.215
--- config-generic 7 Feb 2009 16:48:57 -0000 1.214
+++ config-generic 12 Feb 2009 21:49:59 -0000 1.215
@@ -1438,7 +1438,6 @@
CONFIG_RTL8180=m
CONFIG_RTL8187=m
CONFIG_TMD_HERMES=m
-CONFIG_USB_ATMEL=m
CONFIG_USB_ZD1201=m
CONFIG_USB_NET_RNDIS_WLAN=m
CONFIG_ZD1211RW=m
@@ -3860,7 +3859,43 @@
CONFIG_UWB_I1480U=m
CONFIG_UWB_I1480U_WLP=m
-# CONFIG_STAGING is not set
+CONFIG_STAGING=y
+# CONFIG_STAGING_EXCLUDE_BUILD is not set
+# CONFIG_ET131X is not set
+# CONFIG_SLICOSS is not set
+# CONFIG_SXG is not set
+# CONFIG_ME4000 is not set
+# CONFIG_MEILHAUS is not set
+# CONFIG_VIDEO_GO7007 is not set
+# CONFIG_USB_IP_COMMON is not set
+# CONFIG_W35UND is not set
+# CONFIG_PRISM2_USB is not set
+# CONFIG_ECHO is not set
+CONFIG_USB_ATMEL=m
+# CONFIG_POCH is not set
+# CONFIG_AGNX is not set
+# CONFIG_OTUS is not set
+# CONFIG_RT2860 is not set
+# CONFIG_RT2870 is not set
+# CONFIG_BENET is not set
+# CONFIG_COMEDI is not set
+# CONFIG_ASUS_OLED is not set
+# CONFIG_PANEL is not set
+# CONFIG_ALTERA_PCIE_CHDMA is not set
+# CONFIG_RTL8187SE is not set
+# CONFIG_INPUT_MIMIO is not set
+# CONFIG_TRANZPORT is not set
+# CONFIG_EPL is not set
+
+#
+# Android
+#
+# CONFIG_ANDROID is not set
+# CONFIG_ANDROID_BINDER_IPC is not set
+# CONFIG_ANDROID_LOGGER is not set
+# CONFIG_ANDROID_RAM_CONSOLE is not set
+# CONFIG_ANDROID_LOW_MEMORY_KILLER is not set
+# CONFIG_ANDROID_TIMED_GPIO is not set
# CONFIG_DEBUG_VIRTUAL is not set
# CONFIG_RCU_CPU_STALL_DETECTOR is not set
Index: config-x86-generic
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-10/config-x86-generic,v
retrieving revision 1.59
retrieving revision 1.60
diff -u -r1.59 -r1.60
--- config-x86-generic 9 Feb 2009 21:10:49 -0000 1.59
+++ config-x86-generic 12 Feb 2009 21:49:59 -0000 1.60
@@ -269,6 +269,8 @@
CONFIG_I2C_VIAPRO=m
CONFIG_I2C_VOODOO3=m
+CONFIG_SCx200_ACB=m
+
# CONFIG_X86_REBOOTFIXUPS is not set
CONFIG_DELL_RBU=m
Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-10/kernel.spec,v
retrieving revision 1.1256
retrieving revision 1.1257
diff -u -r1.1256 -r1.1257
--- kernel.spec 12 Feb 2009 08:37:31 -0000 1.1256
+++ kernel.spec 12 Feb 2009 21:49:59 -0000 1.1257
@@ -626,7 +626,7 @@
Patch682: linux-2.6-rt2x00-asus-leds.patch
-Patch690: linux-2.6-at76.patch
+Patch690: linux-2.6-iwlwifi-dma-direction.patch
Patch1515: linux-2.6.29-lirc.patch
Patch1520: linux-2.6-hdpvr.patch
@@ -1131,8 +1131,8 @@
# rt2x00: back-port activity LED init patches
ApplyPatch linux-2.6-rt2x00-asus-leds.patch
-# Add misc wireless bits from upstream wireless tree
-ApplyPatch linux-2.6-at76.patch
+# Intel wireless DMA fix
+ApplyPatch linux-2.6-iwlwifi-dma-direction.patch
# http://www.lirc.org/
ApplyPatch linux-2.6.29-lirc.patch
@@ -1745,6 +1745,11 @@
%kernel_variant_files -k vmlinux %{with_kdump} kdump
%changelog
+* Thu Feb 12 2009 Chuck Ebbert <cebbert at redhat.com> 2.6.29-0.27.rc4.git4
+- Enable AMD Geode scx200 i2c bus controller driver (F10#485162)
+- Fix iwlwifi DMA direction bug.
+- Drop linux-2.6-at76.patch in favor of version from drivers/staging (F10#477927)
+
* Thu Feb 12 2009 Chuck Ebbert <cebbert at redhat.com> 2.6.29-0.26.rc4.git4
- 2.6.29-rc4-git4
--- linux-2.6-at76.patch DELETED ---
More information about the fedora-extras-commits
mailing list