提交 a67fb441 编写于 作者: N Nicolas Saenz Julienne 提交者: Greg Kroah-Hartman

USB: xhci: fix 'broken_suspend' placement in struct xchi_hcd

commit 2419f30a4a4fcaa5f35111563b4c61f1b2b26841 upstream.

As commented in the struct's definition there shouldn't be anything
underneath its 'priv[0]' member as it would break some macros.

The patch converts the broken_suspend into a bit-field and relocates it
next to to the rest of bit-fields.

Fixes: a7d57abcc8a5 ("xhci: workaround CSS timeout on AMD SNPS 3.0 xHC")
Reported-by: NOliver Neukum  <oneukum@suse.com>
Signed-off-by: NNicolas Saenz Julienne <nsaenzjulienne@suse.de>
Acked-by: NMathias Nyman <mathias.nyman@linux.intel.com>
Cc: stable <stable@vger.kernel.org>
Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
上级 e13bfb35
...@@ -1860,6 +1860,8 @@ struct xhci_hcd { ...@@ -1860,6 +1860,8 @@ struct xhci_hcd {
unsigned sw_lpm_support:1; unsigned sw_lpm_support:1;
/* support xHCI 1.0 spec USB2 hardware LPM */ /* support xHCI 1.0 spec USB2 hardware LPM */
unsigned hw_lpm_support:1; unsigned hw_lpm_support:1;
/* Broken Suspend flag for SNPS Suspend resume issue */
unsigned broken_suspend:1;
/* cached usb2 extened protocol capabilites */ /* cached usb2 extened protocol capabilites */
u32 *ext_caps; u32 *ext_caps;
unsigned int num_ext_caps; unsigned int num_ext_caps;
...@@ -1877,8 +1879,6 @@ struct xhci_hcd { ...@@ -1877,8 +1879,6 @@ struct xhci_hcd {
void *dbc; void *dbc;
/* platform-specific data -- must come last */ /* platform-specific data -- must come last */
unsigned long priv[0] __aligned(sizeof(s64)); unsigned long priv[0] __aligned(sizeof(s64));
/* Broken Suspend flag for SNPS Suspend resume issue */
u8 broken_suspend;
}; };
/* Platform specific overrides to generic XHCI hc_driver ops */ /* Platform specific overrides to generic XHCI hc_driver ops */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册