Blob Blame History Raw
From 7addb4724db6fb1cdf02f5a04cbd296d9b53c26e Mon Sep 17 00:00:00 2001
From: Oliver Neukum <oneukum@suse.de>
Date: Thu, 7 Feb 2013 17:29:03 +0100
Subject: [PATCH 2/3] Add a void* suse_kabi_padding placeholder to some USB
 structures
Patch-mainline: Never, kabi
References: fate#312013

---
 include/linux/usb.h        |    7 +++++++
 include/linux/usb/hcd.h    |    2 ++
 include/linux/usb/usbnet.h |    3 +++
 3 files changed, 12 insertions(+)

--- a/include/linux/usb.h
+++ b/include/linux/usb.h
@@ -257,6 +257,7 @@ struct usb_interface {
 	struct device dev;		/* interface specific device info */
 	struct device *usb_dev;
 	struct work_struct reset_ws;	/* for resets in atomic context */
+	void *suse_kabi_padding;
 };
 #define	to_usb_interface(d) container_of(d, struct usb_interface, dev)
 
@@ -402,6 +403,7 @@ struct usb_host_bos {
 	struct usb_ssp_cap_descriptor	*ssp_cap;
 	struct usb_ss_container_id_descriptor	*ss_id;
 	struct usb_ptm_cap_descriptor	*ptm_cap;
+	void *suse_kabi_padding;
 };
 
 int __usb_get_extra_descriptor(char *buffer, unsigned size,
@@ -466,6 +468,7 @@ struct usb_bus {
 	struct mon_bus *mon_bus;	/* non-null when associated */
 	int monitored;			/* non-zero when monitored */
 #endif
+	void *suse_kabi_padding;
 };
 
 struct usb_dev_state;
@@ -709,6 +712,8 @@ struct usb_device {
 	unsigned lpm_disable_count;
 
 	u16 hub_delay;
+
+	void *suse_kabi_padding;
 };
 #define	to_usb_device(d) container_of(d, struct usb_device, dev)
 
@@ -1201,6 +1206,7 @@ struct usb_driver {
 
 	struct usb_dynids dynids;
 	struct usbdrv_wrap drvwrap;
+	void *suse_kabi_padding;
 	unsigned int no_dynamic_id:1;
 	unsigned int supports_autosuspend:1;
 	unsigned int disable_hub_initiated_lpm:1;
@@ -1579,6 +1585,7 @@ struct urb {
 	usb_complete_t complete;	/* (in) completion routine */
 	struct usb_iso_packet_descriptor iso_frame_desc[0];
 					/* (in) ISO ONLY */
+	void *suse_kabi_padding;
 };
 
 /* ----------------------------------------------------------------------- */
--- a/include/linux/usb/hcd.h
+++ b/include/linux/usb/hcd.h
@@ -225,6 +225,7 @@ struct usb_hcd {
 	 * (ohci 32, uhci 1024, ehci 256/512/1024).
 	 */
 
+	void *suse_kabi_padding;
 	/* The HC driver's private data is stored at the end of
 	 * this structure.
 	 */
@@ -409,6 +410,7 @@ struct hc_driver {
 	/* Call for power on/off the port if necessary */
 	int	(*port_power)(struct usb_hcd *hcd, int portnum, bool enable);
 
+	void *suse_kabi_padding;
 };
 
 static inline int hcd_giveback_urb_in_bh(struct usb_hcd *hcd)
--- a/include/linux/usb/usbnet.h
+++ b/include/linux/usb/usbnet.h
@@ -83,6 +83,8 @@ struct usbnet {
 #		define EVENT_LINK_CHANGE	11
 #		define EVENT_SET_RX_MODE	12
 #		define EVENT_NO_IP_ALIGN	13
+
+	void *suse_kabi_padding;
 };
 
 static inline struct usb_driver *driver_of(struct usb_interface *intf)
@@ -172,6 +174,7 @@ struct driver_info {
 	int		out;		/* tx endpoint */
 
 	unsigned long	data;		/* Misc driver specific data */
+	void *suse_kabi_padding;
 };
 
 /* Minidrivers are just drivers using the "usbnet" core as a powerful