rpms/kernel/F-8 linux-2.6-rndis_host-fixes.patch, NONE, 1.1 kernel.spec, 1.427, 1.428 linux-2.6-ps3_gelic_wireless.patch, 1.5, 1.6 linux-2.6-wireless.patch, 1.35, 1.36
John W. Linville (linville)
fedora-extras-commits at redhat.com
Tue Apr 15 21:13:37 UTC 2008
Author: linville
Update of /cvs/pkgs/rpms/kernel/F-8
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv17372
Modified Files:
kernel.spec linux-2.6-ps3_gelic_wireless.patch
linux-2.6-wireless.patch
Added Files:
linux-2.6-rndis_host-fixes.patch
Log Message:
upstream wireless fixes from 2008-04-15
linux-2.6-rndis_host-fixes.patch:
--- NEW FILE linux-2.6-rndis_host-fixes.patch ---
commit 10d0f27c1baa4a094b4965708a15f2b0c4d65f5e
Author: Jean-Christophe Dubois <jcd at tribudubois.net>
Date: Thu Mar 13 14:56:36 2008 -0800
rndis_host: fix transfer size negotiation
This patch should resolve a problem that's troubled support for
some RNDIS peripherals. It seems to have boiled down to using a
variable to establish transfer size limits before it was assigned,
which caused those devices to fallback to a default "jumbogram"
mode we don't support. Fix by assigning it earlier for RNDIS.
Signed-off-by: Jean-Christophe Dubois <jcd at tribudubois.net>
[ cleanups ]
Signed-off-by: David Brownell <dbrownell at users.sourceforge.net>
Signed-off-by: Jeff Garzik <jeff at garzik.org>
commit 9f5e60dd5ffca938da4cabc197af8b9405b5512e
Author: Jussi Kivilinna <jussi.kivilinna at mbnet.fi>
Date: Sun Mar 23 12:45:44 2008 +0200
rndis_host: fix oops when query for OID_GEN_PHYSICAL_MEDIUM fails
When query for OID_GEN_PHYSICAL_MEDIUM fails, uninitialized pointer
'phym' is being accessed in generic_rndis_bind(), resulting OOPS.
Patch fixes phym to be initialized and setup correctly when
rndis_query() for physical medium fails.
Bug was introduced by following commit:
commit 039ee17d1baabaa21783a0d5ab3e8c6d8c794bdf
Author: Jussi Kivilinna <jussi.kivilinna at mbnet.fi>
Date: Sun Jan 27 23:34:33 2008 +0200
Reported-by: Dmitri Monakhov <dmonakhov at openvz.org>
Signed-off-by: Jussi Kivilinna <jussi.kivilinna at mbnet.fi>
Acked-by: David Brownell <dbrownell at users.sourceforge.net>
Signed-off-by: Jeff Garzik <jeff at garzik.org>
diff -up linux-2.6.24.noarch/drivers/net/usb/rndis_host.c.orig linux-2.6.24.noarch/drivers/net/usb/rndis_host.c
--- linux-2.6.24.noarch/drivers/net/usb/rndis_host.c.orig 2008-04-15 16:58:18.000000000 -0400
+++ linux-2.6.24.noarch/drivers/net/usb/rndis_host.c 2008-04-15 17:03:05.000000000 -0400
@@ -16,10 +16,6 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
-
-// #define DEBUG // error path messages, extra info
-// #define VERBOSE // more; success messages
-
#include <linux/module.h>
#include <linux/init.h>
#include <linux/netdevice.h>
@@ -287,7 +283,7 @@ generic_rndis_bind(struct usbnet *dev, s
struct rndis_set_c *set_c;
struct rndis_halt *halt;
} u;
- u32 tmp, *phym;
+ u32 tmp, phym_unspec, *phym;
int reply_len;
unsigned char *bp;
@@ -318,6 +314,14 @@ generic_rndis_bind(struct usbnet *dev, s
net->hard_header_len += sizeof (struct rndis_data_hdr);
dev->hard_mtu = net->mtu + net->hard_header_len;
+ dev->maxpacket = usb_maxpacket(dev->udev, dev->out, 1);
+ if (dev->maxpacket == 0) {
+ if (netif_msg_probe(dev))
+ dev_dbg(&intf->dev, "dev->maxpacket can't be 0\n");
+ retval = -EINVAL;
+ goto fail_and_release;
+ }
+
dev->rx_urb_size = dev->hard_mtu + (dev->maxpacket + 1);
dev->rx_urb_size &= ~(dev->maxpacket - 1);
u.init->max_transfer_size = cpu_to_le32(dev->rx_urb_size);
@@ -359,12 +363,15 @@ generic_rndis_bind(struct usbnet *dev, s
goto halt_fail_and_release;
/* Check physical medium */
+ phym = NULL;
reply_len = sizeof *phym;
retval = rndis_query(dev, intf, u.buf, OID_GEN_PHYSICAL_MEDIUM,
0, (void **) &phym, &reply_len);
- if (retval != 0)
+ if (retval != 0 || !phym) {
/* OID is optional so don't fail here. */
- *phym = RNDIS_PHYSICAL_MEDIUM_UNSPECIFIED;
+ phym_unspec = RNDIS_PHYSICAL_MEDIUM_UNSPECIFIED;
+ phym = &phym_unspec;
+ }
if ((flags & FLAG_RNDIS_PHYM_WIRELESS) &&
*phym != RNDIS_PHYSICAL_MEDIUM_WIRELESS_LAN) {
if (netif_msg_probe(dev))
Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-8/kernel.spec,v
retrieving revision 1.427
retrieving revision 1.428
diff -u -r1.427 -r1.428
--- kernel.spec 15 Apr 2008 19:17:32 -0000 1.427
+++ kernel.spec 15 Apr 2008 21:12:56 -0000 1.428
@@ -674,6 +674,7 @@
Patch680: linux-2.6-wireless.patch
Patch681: linux-2.6-wireless-pending.patch
Patch682: linux-2.6-wireless-pending-fixups.patch
+Patch683: linux-2.6-rndis_host-fixes.patch
Patch690: linux-2.6-at76.patch
Patch691: linux-2.6-rndis_wlan.patch
Patch692: linux-2.6-ps3_gelic_wireless.patch
@@ -1299,6 +1300,9 @@
ApplyPatch linux-2.6-rndis_wlan.patch
ApplyPatch linux-2.6-ps3_gelic_wireless.patch
+# Some rndis_host fixes pertinent to wireless
+ApplyPatch linux-2.6-rndis_host-fixes.patch
+
# Restore ability to add/remove virtual i/fs to mac80211 devices
ApplyPatch linux-2.6-cfg80211-extras.patch
@@ -2019,6 +2023,21 @@
%changelog
+* Tue Apr 15 2008 John W. Linville <linville at redhat.com> 2.6.24.4-82
+- rfkill: Fix device type check when toggling states
+- rtl8187: Add missing priv->vif assignments
+- Add rfkill to MAINTAINERS file
+- Update rt2x00 MAINTAINERS entry
+- mac80211: remove message on receiving unexpected unencrypted frames
+- PS3: gelic: fix the oops on the broken IE returned from the hypervisor
+- ssb: Fix usage of struct device used for DMAing
+- b43legacy: Fix usage of struct device used for DMAing
+- MAINTAINERS: move to generic repository for iwlwifi
+- b43legacy: fix initvals loading on bcm4303
+- b43legacy: fix DMA mapping leakage
+- rndis_host: fix transfer size negotiation
+- rndis_host: fix oops when query for OID_GEN_PHYSICAL_MEDIUM fails
+
* Tue Apr 15 2008 Jarod Wilson <jwilson at redhat.com> 2.6.24.4-81
- Resync FireWire drivers with latest upstream git tree:
* Fix dvgrab on buggy TI chipsets (#243081). May fix #435550 too.
linux-2.6-ps3_gelic_wireless.patch:
Index: linux-2.6-ps3_gelic_wireless.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-8/linux-2.6-ps3_gelic_wireless.patch,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- linux-2.6-ps3_gelic_wireless.patch 26 Mar 2008 21:07:46 -0000 1.5
+++ linux-2.6-ps3_gelic_wireless.patch 15 Apr 2008 21:12:56 -0000 1.6
@@ -1,3 +1,16 @@
+commit b358492cd2a9c67bff352c5a60d86e7fc9627477
+Author: Masakazu Mokuno <mokuno at sm.sony.co.jp>
+Date: Mon Apr 14 18:07:21 2008 +0900
+
+ PS3: gelic: fix the oops on the broken IE returned from the hypervisor
+
+ This fixes the bug that the driver would try to over-scan the memory
+ if the sum of the length field of every IEs does not match the length
+ returned from the hypervisor.
+
+ Signed-off-by: Masakazu Mokuno <mokuno at sm.sony.co.jp>
+ Signed-off-by: John W. Linville <linville at tuxdriver.com>
+
commit 49d20fac21d5207f3930401d0198ac46ad990bff
Author: Masakazu Mokuno <mokuno at sm.sony.co.jp>
Date: Tue Mar 25 16:21:08 2008 +0900
@@ -175,8 +188,8 @@
Signed-off-by: Jeff Garzik <jeff at garzik.org>
diff -up linux-2.6.24.noarch/drivers/net/Makefile.orig linux-2.6.24.noarch/drivers/net/Makefile
---- linux-2.6.24.noarch/drivers/net/Makefile.orig 2008-03-26 16:50:16.000000000 -0400
-+++ linux-2.6.24.noarch/drivers/net/Makefile 2008-03-26 16:51:28.000000000 -0400
+--- linux-2.6.24.noarch/drivers/net/Makefile.orig 2008-04-15 16:53:48.000000000 -0400
++++ linux-2.6.24.noarch/drivers/net/Makefile 2008-04-15 16:55:05.000000000 -0400
@@ -67,7 +67,8 @@ obj-$(CONFIG_BNX2) += bnx2.o
spidernet-y += spider_net.o spider_net_ethtool.o
obj-$(CONFIG_SPIDER_NET) += spidernet.o sungem_phy.o
@@ -188,9 +201,9 @@
obj-$(CONFIG_SKGE) += skge.o
obj-$(CONFIG_SKY2) += sky2.o
diff -up /dev/null linux-2.6.24.noarch/drivers/net/ps3_gelic_wireless.c
---- /dev/null 2008-03-26 10:12:08.710666650 -0400
-+++ linux-2.6.24.noarch/drivers/net/ps3_gelic_wireless.c 2008-03-26 16:51:34.000000000 -0400
-@@ -0,0 +1,2759 @@
+--- /dev/null 2008-04-15 11:42:14.257003479 -0400
++++ linux-2.6.24.noarch/drivers/net/ps3_gelic_wireless.c 2008-04-15 16:55:48.000000000 -0400
+@@ -0,0 +1,2764 @@
+/*
+ * PS3 gelic network driver.
+ *
@@ -705,13 +718,18 @@
+ data, len);
+ memset(ie_info, 0, sizeof(struct ie_info));
+
-+ while (0 < data_left) {
++ while (2 <= data_left) {
+ item_id = *pos++;
+ item_len = *pos++;
++ data_left -= 2;
++
++ if (data_left < item_len)
++ break;
+
+ switch (item_id) {
+ case MFIE_TYPE_GENERIC:
-+ if (!memcmp(pos, wpa_oui, OUI_LEN) &&
++ if ((OUI_LEN + 1 <= item_len) &&
++ !memcmp(pos, wpa_oui, OUI_LEN) &&
+ pos[OUI_LEN] == 0x01) {
+ ie_info->wpa.data = pos - 2;
+ ie_info->wpa.len = item_len + 2;
@@ -728,7 +746,7 @@
+ break;
+ }
+ pos += item_len;
-+ data_left -= item_len + 2;
++ data_left -= item_len;
+ }
+ pr_debug("%s: wpa=%p,%d wpa2=%p,%d\n", __func__,
+ ie_info->wpa.data, ie_info->wpa.len,
@@ -2952,7 +2970,7 @@
+}
diff -up linux-2.6.24.noarch/drivers/net/ps3_gelic_net.c.orig linux-2.6.24.noarch/drivers/net/ps3_gelic_net.c
--- linux-2.6.24.noarch/drivers/net/ps3_gelic_net.c.orig 2008-01-24 17:58:37.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/ps3_gelic_net.c 2008-03-26 16:51:28.000000000 -0400
++++ linux-2.6.24.noarch/drivers/net/ps3_gelic_net.c 2008-04-15 16:55:05.000000000 -0400
@@ -46,29 +46,25 @@
#include <asm/lv1call.h>
@@ -4987,7 +5005,7 @@
diff -up linux-2.6.24.noarch/drivers/net/ps3_gelic_net.h.orig linux-2.6.24.noarch/drivers/net/ps3_gelic_net.h
--- linux-2.6.24.noarch/drivers/net/ps3_gelic_net.h.orig 2008-01-24 17:58:37.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/net/ps3_gelic_net.h 2008-03-26 16:51:28.000000000 -0400
++++ linux-2.6.24.noarch/drivers/net/ps3_gelic_net.h 2008-04-15 16:55:05.000000000 -0400
@@ -35,198 +35,323 @@
#define GELIC_NET_MAX_MTU VLAN_ETH_FRAME_LEN
#define GELIC_NET_MIN_MTU VLAN_ETH_ZLEN
@@ -5457,8 +5475,8 @@
#endif /* _GELIC_NET_H */
diff -up linux-2.6.24.noarch/drivers/net/Kconfig.orig linux-2.6.24.noarch/drivers/net/Kconfig
---- linux-2.6.24.noarch/drivers/net/Kconfig.orig 2008-03-26 16:50:16.000000000 -0400
-+++ linux-2.6.24.noarch/drivers/net/Kconfig 2008-03-26 16:51:28.000000000 -0400
+--- linux-2.6.24.noarch/drivers/net/Kconfig.orig 2008-04-15 16:53:48.000000000 -0400
++++ linux-2.6.24.noarch/drivers/net/Kconfig 2008-04-15 16:55:05.000000000 -0400
@@ -2310,6 +2310,17 @@ config GELIC_NET
To compile this driver as a module, choose M here: the
module will be called ps3_gelic.
@@ -5478,8 +5496,8 @@
tristate "Gianfar Ethernet"
depends on 85xx || 83xx || PPC_86xx
diff -up /dev/null linux-2.6.24.noarch/drivers/net/ps3_gelic_wireless.h
---- /dev/null 2008-03-26 10:12:08.710666650 -0400
-+++ linux-2.6.24.noarch/drivers/net/ps3_gelic_wireless.h 2008-03-26 16:51:28.000000000 -0400
+--- /dev/null 2008-04-15 11:42:14.257003479 -0400
++++ linux-2.6.24.noarch/drivers/net/ps3_gelic_wireless.h 2008-04-15 16:55:05.000000000 -0400
@@ -0,0 +1,329 @@
+/*
+ * PS3 gelic network driver.
linux-2.6-wireless.patch:
View full diff with command:
/usr/bin/cvs -f diff -kk -u -N -r 1.35 -r 1.36 linux-2.6-wireless.patch
Index: linux-2.6-wireless.patch
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-8/linux-2.6-wireless.patch,v
retrieving revision 1.35
retrieving revision 1.36
diff -u -r1.35 -r1.36
--- linux-2.6-wireless.patch 9 Apr 2008 21:17:42 -0000 1.35
+++ linux-2.6-wireless.patch 15 Apr 2008 21:12:56 -0000 1.36
@@ -1,3 +1,144 @@
+commit dc4ae1f46dbbcd08b3b5e23ad5ef87bf4bb41adf
+Author: Stefano Brivio <stefano.brivio at polimi.it>
+Date: Mon Apr 14 00:59:49 2008 +0200
+
+ b43legacy: fix DMA mapping leakage
+
+ This fixes a DMA mapping leakage in the case where we reject a DMA buffer
+ because of its address.
+ The patch by Michael Buesch has been ported to b43legacy.
+
+ Signed-off-by: Stefano Brivio <stefano.brivio at polimi.it>
+ Cc: Christian Casteyde <casteyde.christian at free.fr>
+ Signed-off-by: John W. Linville <linville at tuxdriver.com>
+
+commit b3fc9c6c58c986f7a24fd8b0794d1e0794935a28
+Author: Johannes Berg <johannes at sipsolutions.net>
+Date: Sun Apr 13 10:12:47 2008 +0200
+
+ mac80211: remove message on receiving unexpected unencrypted frames
+
+ Some people are getting this message a lot, and we have traced it to
+ broken access points that much too often send completely empty frames
+ (all bytes zeroed, which they shouldn't do at all.)
+
+ Since we cannot do anything about such frames in any case except the
+ special case where we're debugging an AP, just remove the message.
+
+ Signed-off-by: Johannes Berg <johannes at sipsolutions.net>
+ Signed-off-by: John W. Linville <linville at tuxdriver.com>
+
+commit 2dd0f69222c481574baf6a4affb9256a7c7410e7
+Author: Ivo van Doorn <ivdoorn at gmail.com>
+Date: Sat Apr 12 19:25:00 2008 +0200
+
+ Update rt2x00 MAINTAINERS entry
+
+ Add the tree entry for rt2x00 to inform people about the
+ rt2x00.git tree.
+
+ Signed-off-by: Ivo van Doorn <IvDoorn at gmail.com>
+ Signed-off-by: John W. Linville <linville at tuxdriver.com>
+
+commit e089764596ccde1037f2849fcee002c68986e67c
+Author: Ivo van Doorn <ivdoorn at gmail.com>
+Date: Sat Apr 12 19:23:55 2008 +0200
+
+ Add rfkill to MAINTAINERS file
+
+ I have been acting as the maintainer since the rfkill introduction,
+ so lets make it official by adding a rfkill entry in the MAINTAINERS file.
+
+ Signed-off-by: Ivo van Doorn <IvDoorn at gmail.com>
+ Signed-off-by: John W. Linville <linville at tuxdriver.com>
+
+commit 89796f64a20d31e74ee0051df2e26812c852e734
+Author: Carlos Corbacho <carlos at strangeworlds.co.uk>
+Date: Sat Apr 12 16:39:47 2008 +0100
+
+ rfkill: Fix device type check when toggling states
+
+ rfkill_switch_all() is supposed to only switch all the interfaces of a
+ given type, but does not actually do this; instead, it just switches
+ everything currently in the same state.
+
+ Add the necessary type check in.
+
+ (This fixes a bug I've been seeing while developing an rfkill laptop
+ driver, with both bluetooth and wireless simultaneously changing state
+ after only pressing either KEY_WLAN or KEY_BLUETOOTH).
+
+ Signed-off-by: Carlos Corbacho <carlos at strangeworlds.co.uk>
+ Signed-off-by: John W. Linville <linville at tuxdriver.com>
+
+commit cdbbe3d1f53086ece706674d3bf4f6d148083694
+Author: Michael Buesch <mb at bu3sch.de>
+Date: Fri Apr 11 12:16:36 2008 +0200
+
+ b43legacy: Fix usage of struct device used for DMAing
+
+ This fixes b43legacy for the SSB DMA API change.
+
+ Signed-off-by: Michael Buesch <mb at bu3sch.de>
+ Cc: Stefano Brivio <stefano.brivio at polimi.it>
+ Signed-off-by: John W. Linville <linville at tuxdriver.com>
+
+commit 4ac58469f13028e1eb97f8bc7b0fca5072591d8d
+Author: Michael Buesch <mb at bu3sch.de>
+Date: Fri Apr 11 11:59:00 2008 +0200
+
+ ssb: Fix usage of struct device used for DMAing
+
+ This fixes DMA on architectures where DMA is nontrivial, like PPC64.
+ We must use the host-device's (PCI) struct device for any DMA
+ operation instead of the SSB device. For this we add a new
+ struct device pointer to the SSB device structure that will always
+ point to the right device for DMAing.
+
+ Without this patch b43 and b44 drivers won't work on complex-DMA
+ architectures, that for example need dev->archdata for DMA operations.
+
+ Signed-off-by: Michael Buesch <mb at bu3sch.de>
+ Signed-off-by: John W. Linville <linville at tuxdriver.com>
+
+commit 2d4543fdb487b1301ae48703dea3e66ead2d3c75
+Author: Reinette Chatre <reinette.chatre at intel.com>
+Date: Thu Apr 10 13:16:27 2008 -0700
+
+ MAINTAINERS: move to generic repository for iwlwifi
+
+ Signed-off-by: Reinette Chatre <reinette.chatre at intel.com>
+ Signed-off-by: John W. Linville <linville at tuxdriver.com>
+
+commit 385f848a986b4677bc91e5f5f9033449a876819d
+Author: Stefano Brivio <stefano.brivio at polimi.it>
+Date: Sun Apr 6 17:10:53 2008 +0200
+
+ b43legacy: fix initvals loading on bcm4303
+
+ This allows for the correct initial values to be uploaded to bcm4303
+ devices. It should be correct, but I can't reliably test this as I suspect
+ there's something going wrong with an hardware rfkill switch on my laptop.
+ Please test.
+
+ Signed-off-by: Stefano Brivio <stefano.brivio at polimi.it>
+ Signed-off-by: John W. Linville <linville at tuxdriver.com>
+
+commit aa979a6acbb468b0ebe8cf36dc782a5b3cc1e28d
+Author: Herton Ronaldo Krzesinski <herton at mandriva.com.br>
+Date: Wed Apr 9 16:38:31 2008 -0300
+
+ rtl8187: Add missing priv->vif assignments
+
+ This adds missing priv->vif assignments after "mac80211: don't use
+ interface indices in drivers" change. As rtl8180, rtl8187 also needs
+ priv->vif to be set, as without this an oops can happen in rtl8187_tx
+ function (priv->vif is passed to ieee80211_rts_duration).
+
+ Signed-off-by: Herton Ronaldo Krzesinski <herton at mandriva.com.br>
+ Acked-by: Pavel Roskin <proski at gnu.org>
+ Signed-off-by: John W. Linville <linville at tuxdriver.com>
+
commit e91e9d490d9ae382003ef9d05fd50238db54c35b
Author: Daniel Wagner <wagi at monom.org>
Date: Wed Apr 9 16:29:01 2008 +0200
@@ -8708,8 +8849,8 @@
Signed-off-by: John W. Linville <linville at tuxdriver.com>
diff -up linux-2.6.24.noarch/include/linux/nl80211.h.orig linux-2.6.24.noarch/include/linux/nl80211.h
---- linux-2.6.24.noarch/include/linux/nl80211.h.orig 2008-04-09 16:57:35.000000000 -0400
-+++ linux-2.6.24.noarch/include/linux/nl80211.h 2008-04-09 16:57:40.000000000 -0400
+--- linux-2.6.24.noarch/include/linux/nl80211.h.orig 2008-04-15 16:47:25.000000000 -0400
++++ linux-2.6.24.noarch/include/linux/nl80211.h 2008-04-15 16:47:30.000000000 -0400
@@ -7,6 +7,18 @@
*/
@@ -8911,8 +9052,8 @@
+
#endif /* __LINUX_NL80211_H */
diff -up linux-2.6.24.noarch/include/linux/wireless.h.orig linux-2.6.24.noarch/include/linux/wireless.h
---- linux-2.6.24.noarch/include/linux/wireless.h.orig 2008-04-09 16:57:35.000000000 -0400
-+++ linux-2.6.24.noarch/include/linux/wireless.h 2008-04-09 16:57:40.000000000 -0400
+--- linux-2.6.24.noarch/include/linux/wireless.h.orig 2008-04-15 16:47:25.000000000 -0400
++++ linux-2.6.24.noarch/include/linux/wireless.h 2008-04-15 16:47:30.000000000 -0400
@@ -541,6 +541,16 @@
/* Maximum size of returned data */
#define IW_SCAN_MAX_DATA 4096 /* In bytes */
@@ -8941,8 +9082,8 @@
__u32 event_capa[6];
diff -up linux-2.6.24.noarch/include/linux/input.h.orig linux-2.6.24.noarch/include/linux/input.h
---- linux-2.6.24.noarch/include/linux/input.h.orig 2008-04-09 16:57:35.000000000 -0400
-+++ linux-2.6.24.noarch/include/linux/input.h 2008-04-09 16:57:40.000000000 -0400
+--- linux-2.6.24.noarch/include/linux/input.h.orig 2008-04-15 16:47:25.000000000 -0400
++++ linux-2.6.24.noarch/include/linux/input.h 2008-04-15 16:47:30.000000000 -0400
@@ -371,6 +371,8 @@ struct input_absinfo {
#define KEY_BRIGHTNESS_ZERO 244 /* brightness off, use ambient */
#define KEY_DISPLAY_OFF 245 /* display device to off state */
@@ -8953,8 +9094,8 @@
#define BTN_0 0x100
#define BTN_1 0x101
diff -up linux-2.6.24.noarch/include/linux/mod_devicetable.h.orig linux-2.6.24.noarch/include/linux/mod_devicetable.h
---- linux-2.6.24.noarch/include/linux/mod_devicetable.h.orig 2008-04-09 16:57:35.000000000 -0400
-+++ linux-2.6.24.noarch/include/linux/mod_devicetable.h 2008-04-09 16:57:40.000000000 -0400
+--- linux-2.6.24.noarch/include/linux/mod_devicetable.h.orig 2008-04-15 16:47:25.000000000 -0400
++++ linux-2.6.24.noarch/include/linux/mod_devicetable.h 2008-04-15 16:47:30.000000000 -0400
@@ -350,7 +350,13 @@ struct sdio_device_id {
struct ssb_device_id {
__u16 vendor;
@@ -8971,8 +9112,8 @@
#define SSB_DEVICE(_vendor, _coreid, _revision) \
{ .vendor = _vendor, .coreid = _coreid, .revision = _revision, }
[...4909 lines suppressed...]
};
MODULE_DEVICE_TABLE(pci, b43_pci_bridge_tbl);
diff -up linux-2.6.24.noarch/drivers/ssb/Makefile.orig linux-2.6.24.noarch/drivers/ssb/Makefile
---- linux-2.6.24.noarch/drivers/ssb/Makefile.orig 2008-04-09 16:57:35.000000000 -0400
-+++ linux-2.6.24.noarch/drivers/ssb/Makefile 2008-04-09 16:57:40.000000000 -0400
+--- linux-2.6.24.noarch/drivers/ssb/Makefile.orig 2008-04-15 16:47:26.000000000 -0400
++++ linux-2.6.24.noarch/drivers/ssb/Makefile 2008-04-15 16:47:31.000000000 -0400
@@ -1,5 +1,6 @@
# core
ssb-y += main.o scan.o
@@ -130547,8 +131118,8 @@
obj-$(CONFIG_SSB) += ssb.o
diff -up linux-2.6.24.noarch/drivers/ssb/pcmcia.c.orig linux-2.6.24.noarch/drivers/ssb/pcmcia.c
---- linux-2.6.24.noarch/drivers/ssb/pcmcia.c.orig 2008-04-09 16:57:35.000000000 -0400
-+++ linux-2.6.24.noarch/drivers/ssb/pcmcia.c 2008-04-09 16:57:40.000000000 -0400
+--- linux-2.6.24.noarch/drivers/ssb/pcmcia.c.orig 2008-04-15 16:47:26.000000000 -0400
++++ linux-2.6.24.noarch/drivers/ssb/pcmcia.c 2008-04-15 16:47:31.000000000 -0400
@@ -94,7 +94,6 @@ int ssb_pcmcia_switch_core(struct ssb_bu
struct ssb_device *dev)
{
@@ -130699,9 +131270,28 @@
}
diff -up linux-2.6.24.noarch/drivers/ssb/main.c.orig linux-2.6.24.noarch/drivers/ssb/main.c
---- linux-2.6.24.noarch/drivers/ssb/main.c.orig 2008-04-09 16:57:35.000000000 -0400
-+++ linux-2.6.24.noarch/drivers/ssb/main.c 2008-04-09 16:57:40.000000000 -0400
-@@ -557,6 +557,7 @@ static int ssb_fetch_invariants(struct s
+--- linux-2.6.24.noarch/drivers/ssb/main.c.orig 2008-04-15 16:47:26.000000000 -0400
++++ linux-2.6.24.noarch/drivers/ssb/main.c 2008-04-15 16:48:06.000000000 -0400
+@@ -436,15 +436,18 @@ static int ssb_devices_register(struct s
+ #ifdef CONFIG_SSB_PCIHOST
+ sdev->irq = bus->host_pci->irq;
+ dev->parent = &bus->host_pci->dev;
++ sdev->dma_dev = &bus->host_pci->dev;
+ #endif
+ break;
+ case SSB_BUSTYPE_PCMCIA:
+ #ifdef CONFIG_SSB_PCMCIAHOST
+ sdev->irq = bus->host_pcmcia->irq.AssignedIRQ;
+ dev->parent = &bus->host_pcmcia->dev;
++ sdev->dma_dev = &bus->host_pcmcia->dev;
+ #endif
+ break;
+ case SSB_BUSTYPE_SSB:
++ sdev->dma_dev = dev;
+ break;
+ }
+
+@@ -557,6 +560,7 @@ static int ssb_fetch_invariants(struct s
goto out;
memcpy(&bus->boardinfo, &iv.boardinfo, sizeof(iv.boardinfo));
memcpy(&bus->sprom, &iv.sprom, sizeof(iv.sprom));
@@ -130709,7 +131299,7 @@
out:
return err;
}
-@@ -569,6 +570,9 @@ static int ssb_bus_register(struct ssb_b
+@@ -569,6 +573,9 @@ static int ssb_bus_register(struct ssb_b
spin_lock_init(&bus->bar_lock);
INIT_LIST_HEAD(&bus->list);
@@ -130719,7 +131309,7 @@
/* Powerup the bus */
err = ssb_pci_xtal(bus, SSB_GPIO_XTAL | SSB_GPIO_PLL, 1);
-@@ -872,14 +876,22 @@ EXPORT_SYMBOL(ssb_clockspeed);
+@@ -872,14 +879,22 @@ EXPORT_SYMBOL(ssb_clockspeed);
static u32 ssb_tmslow_reject_bitmask(struct ssb_device *dev)
{
@@ -130743,7 +131333,28 @@
WARN_ON(1);
}
return (SSB_TMSLOW_REJECT_22 | SSB_TMSLOW_REJECT_23);
-@@ -1032,6 +1044,12 @@ int ssb_bus_may_powerdown(struct ssb_bus
+@@ -1006,15 +1021,14 @@ EXPORT_SYMBOL(ssb_dma_translation);
+
+ int ssb_dma_set_mask(struct ssb_device *ssb_dev, u64 mask)
+ {
+- struct device *dev = ssb_dev->dev;
++ struct device *dma_dev = ssb_dev->dma_dev;
+
+ #ifdef CONFIG_SSB_PCIHOST
+- if (ssb_dev->bus->bustype == SSB_BUSTYPE_PCI &&
+- !dma_supported(dev, mask))
+- return -EIO;
++ if (ssb_dev->bus->bustype == SSB_BUSTYPE_PCI)
++ return dma_set_mask(dma_dev, mask);
+ #endif
+- dev->coherent_dma_mask = mask;
+- dev->dma_mask = &dev->coherent_dma_mask;
++ dma_dev->coherent_dma_mask = mask;
++ dma_dev->dma_mask = &dma_dev->coherent_dma_mask;
+
+ return 0;
+ }
+@@ -1032,6 +1046,12 @@ int ssb_bus_may_powerdown(struct ssb_bus
goto out;
cc = &bus->chipco;
@@ -130757,8 +131368,8 @@
err = ssb_pci_xtal(bus, SSB_GPIO_XTAL | SSB_GPIO_PLL, 0);
if (err)
diff -up linux-2.6.24.noarch/drivers/ssb/driver_mipscore.c.orig linux-2.6.24.noarch/drivers/ssb/driver_mipscore.c
---- linux-2.6.24.noarch/drivers/ssb/driver_mipscore.c.orig 2008-01-24 17:58:37.000000000 -0500
-+++ linux-2.6.24.noarch/drivers/ssb/driver_mipscore.c 2008-04-09 16:57:52.000000000 -0400
+--- linux-2.6.24.noarch/drivers/ssb/driver_mipscore.c.orig 2008-04-15 16:47:26.000000000 -0400
++++ linux-2.6.24.noarch/drivers/ssb/driver_mipscore.c 2008-04-15 16:47:31.000000000 -0400
@@ -109,12 +109,13 @@ static void set_irq(struct ssb_device *d
clear_irq(bus, oldirq);
@@ -130780,8 +131391,8 @@
static void ssb_mips_serial_init(struct ssb_mipscore *mcore)
diff -up linux-2.6.24.noarch/drivers/ssb/ssb_private.h.orig linux-2.6.24.noarch/drivers/ssb/ssb_private.h
---- linux-2.6.24.noarch/drivers/ssb/ssb_private.h.orig 2008-04-09 16:57:35.000000000 -0400
-+++ linux-2.6.24.noarch/drivers/ssb/ssb_private.h 2008-04-09 16:57:40.000000000 -0400
+--- linux-2.6.24.noarch/drivers/ssb/ssb_private.h.orig 2008-04-15 16:47:26.000000000 -0400
++++ linux-2.6.24.noarch/drivers/ssb/ssb_private.h 2008-04-15 16:47:31.000000000 -0400
@@ -120,10 +120,10 @@ extern int ssb_devices_thaw(struct ssb_b
extern struct ssb_bus *ssb_pci_dev_to_bus(struct pci_dev *pdev);
@@ -130796,8 +131407,8 @@
{
return 0;
diff -up linux-2.6.24.noarch/drivers/ssb/pci.c.orig linux-2.6.24.noarch/drivers/ssb/pci.c
---- linux-2.6.24.noarch/drivers/ssb/pci.c.orig 2008-04-09 16:57:35.000000000 -0400
-+++ linux-2.6.24.noarch/drivers/ssb/pci.c 2008-04-09 16:57:40.000000000 -0400
+--- linux-2.6.24.noarch/drivers/ssb/pci.c.orig 2008-04-15 16:47:26.000000000 -0400
++++ linux-2.6.24.noarch/drivers/ssb/pci.c 2008-04-15 16:47:31.000000000 -0400
@@ -212,29 +212,29 @@ static inline u8 ssb_crc8(u8 crc, u8 dat
return t[crc ^ data];
}
@@ -131243,8 +131854,8 @@
err = -EINVAL;
goto out_kfree;
diff -up linux-2.6.24.noarch/drivers/ssb/driver_chipcommon.c.orig linux-2.6.24.noarch/drivers/ssb/driver_chipcommon.c
---- linux-2.6.24.noarch/drivers/ssb/driver_chipcommon.c.orig 2008-04-09 16:57:35.000000000 -0400
-+++ linux-2.6.24.noarch/drivers/ssb/driver_chipcommon.c 2008-04-09 16:57:40.000000000 -0400
+--- linux-2.6.24.noarch/drivers/ssb/driver_chipcommon.c.orig 2008-04-15 16:47:26.000000000 -0400
++++ linux-2.6.24.noarch/drivers/ssb/driver_chipcommon.c 2008-04-15 16:47:31.000000000 -0400
@@ -39,12 +39,14 @@ static inline void chipco_write32(struct
ssb_write32(cc->dev, offset, value);
}
@@ -131366,8 +131977,8 @@
else
uart_regs += (i * 256);
diff -up linux-2.6.24.noarch/drivers/ssb/Kconfig.orig linux-2.6.24.noarch/drivers/ssb/Kconfig
---- linux-2.6.24.noarch/drivers/ssb/Kconfig.orig 2008-04-09 16:57:35.000000000 -0400
-+++ linux-2.6.24.noarch/drivers/ssb/Kconfig 2008-04-09 16:57:40.000000000 -0400
+--- linux-2.6.24.noarch/drivers/ssb/Kconfig.orig 2008-04-15 16:47:26.000000000 -0400
++++ linux-2.6.24.noarch/drivers/ssb/Kconfig 2008-04-15 16:47:31.000000000 -0400
@@ -35,6 +35,11 @@ config SSB_PCIHOST
If unsure, say Y
@@ -131394,8 +132005,8 @@
bool "SSB Broadcom EXTIF core driver (EXPERIMENTAL)"
depends on SSB_DRIVER_MIPS && EXPERIMENTAL
diff -up /dev/null linux-2.6.24.noarch/drivers/ssb/embedded.c
---- /dev/null 2008-04-08 08:17:04.746003572 -0400
-+++ linux-2.6.24.noarch/drivers/ssb/embedded.c 2008-04-09 16:57:40.000000000 -0400
+--- /dev/null 2008-04-15 11:42:14.257003479 -0400
++++ linux-2.6.24.noarch/drivers/ssb/embedded.c 2008-04-15 16:47:31.000000000 -0400
@@ -0,0 +1,132 @@
+/*
+ * Sonics Silicon Backplane
@@ -131530,8 +132141,8 @@
+}
+EXPORT_SYMBOL(ssb_gpio_polarity);
diff -up linux-2.6.24.noarch/drivers/ssb/driver_extif.c.orig linux-2.6.24.noarch/drivers/ssb/driver_extif.c
---- linux-2.6.24.noarch/drivers/ssb/driver_extif.c.orig 2008-04-09 16:57:35.000000000 -0400
-+++ linux-2.6.24.noarch/drivers/ssb/driver_extif.c 2008-04-09 16:57:40.000000000 -0400
+--- linux-2.6.24.noarch/drivers/ssb/driver_extif.c.orig 2008-04-15 16:47:26.000000000 -0400
++++ linux-2.6.24.noarch/drivers/ssb/driver_extif.c 2008-04-15 16:47:31.000000000 -0400
@@ -27,12 +27,14 @@ static inline void extif_write32(struct
ssb_write32(extif->dev, offset, value);
}
@@ -131588,8 +132199,8 @@
+ return extif_write32_masked(extif, SSB_EXTIF_GPIO_INTMASK, mask, value);
+}
diff -up linux-2.6.24.noarch/drivers/ssb/driver_pcicore.c.orig linux-2.6.24.noarch/drivers/ssb/driver_pcicore.c
---- linux-2.6.24.noarch/drivers/ssb/driver_pcicore.c.orig 2008-04-09 16:57:35.000000000 -0400
-+++ linux-2.6.24.noarch/drivers/ssb/driver_pcicore.c 2008-04-09 16:57:52.000000000 -0400
+--- linux-2.6.24.noarch/drivers/ssb/driver_pcicore.c.orig 2008-04-15 16:47:26.000000000 -0400
++++ linux-2.6.24.noarch/drivers/ssb/driver_pcicore.c 2008-04-15 16:47:31.000000000 -0400
@@ -11,6 +11,7 @@
#include <linux/ssb/ssb.h>
#include <linux/pci.h>
@@ -131724,8 +132335,8 @@
ssb_write32(pdev, SSB_INTVEC, intvec);
}
diff -up linux-2.6.24.noarch/Documentation/feature-removal-schedule.txt.orig linux-2.6.24.noarch/Documentation/feature-removal-schedule.txt
---- linux-2.6.24.noarch/Documentation/feature-removal-schedule.txt.orig 2008-04-09 16:57:35.000000000 -0400
-+++ linux-2.6.24.noarch/Documentation/feature-removal-schedule.txt 2008-04-09 16:57:40.000000000 -0400
+--- linux-2.6.24.noarch/Documentation/feature-removal-schedule.txt.orig 2008-04-15 16:47:26.000000000 -0400
++++ linux-2.6.24.noarch/Documentation/feature-removal-schedule.txt 2008-04-15 16:47:31.000000000 -0400
@@ -332,4 +332,36 @@ Why: This driver has been marked obsolet
2.4 or later kernels, provides richer features and is more robust.
Who: Stephen Hemminger <shemminger at linux-foundation.org>
More information about the fedora-extras-commits
mailing list