Commit 9a5d3e98 authored by David Brownell's avatar David Brownell Committed by Greg K-H

[PATCH] USB: hcd suspend uses pm_message_t

This patch includes minor "sparse -Wbitwise" updates for the PCI based
HCDs.  Almost all of them involve just changing the second parameter of the
suspend() method to a pm_message_t ...  the others relate to how the EHCI
code walks in-memory data structures.  (There's a minor bug fixed there too
...  affecting the big-endian sysfs async schedule dump.)
Signed-off-by: default avatarDavid Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>


Index: gregkh-2.6/drivers/usb/core/hcd.h
===================================================================
parent 27d72e85
...@@ -177,7 +177,7 @@ struct hc_driver { ...@@ -177,7 +177,7 @@ struct hc_driver {
* a whole, not just the root hub; they're for bus glue. * a whole, not just the root hub; they're for bus glue.
*/ */
/* called after all devices were suspended */ /* called after all devices were suspended */
int (*suspend) (struct usb_hcd *hcd, u32 state); int (*suspend) (struct usb_hcd *hcd, pm_message_t message);
/* called before any devices get resumed */ /* called before any devices get resumed */
int (*resume) (struct usb_hcd *hcd); int (*resume) (struct usb_hcd *hcd);
...@@ -226,7 +226,7 @@ extern int usb_hcd_pci_probe (struct pci_dev *dev, ...@@ -226,7 +226,7 @@ extern int usb_hcd_pci_probe (struct pci_dev *dev,
extern void usb_hcd_pci_remove (struct pci_dev *dev); extern void usb_hcd_pci_remove (struct pci_dev *dev);
#ifdef CONFIG_PM #ifdef CONFIG_PM
extern int usb_hcd_pci_suspend (struct pci_dev *dev, u32 state); extern int usb_hcd_pci_suspend (struct pci_dev *dev, pm_message_t state);
extern int usb_hcd_pci_resume (struct pci_dev *dev); extern int usb_hcd_pci_resume (struct pci_dev *dev);
#endif /* CONFIG_PM */ #endif /* CONFIG_PM */
......
...@@ -394,7 +394,7 @@ static void qh_lines ( ...@@ -394,7 +394,7 @@ static void qh_lines (
mark = ' '; mark = ' ';
if (hw_curr == td->qtd_dma) if (hw_curr == td->qtd_dma)
mark = '*'; mark = '*';
else if (qh->hw_qtd_next == td->qtd_dma) else if (qh->hw_qtd_next == cpu_to_le32(td->qtd_dma))
mark = '+'; mark = '+';
else if (QTD_LENGTH (scratch)) { else if (QTD_LENGTH (scratch)) {
if (td->hw_alt_next == ehci->async->hw_alt_next) if (td->hw_alt_next == ehci->async->hw_alt_next)
......
...@@ -721,7 +721,7 @@ static int ehci_get_frame (struct usb_hcd *hcd) ...@@ -721,7 +721,7 @@ static int ehci_get_frame (struct usb_hcd *hcd)
* the right sort of wakeup. * the right sort of wakeup.
*/ */
static int ehci_suspend (struct usb_hcd *hcd, u32 state) static int ehci_suspend (struct usb_hcd *hcd, pm_message_t message)
{ {
struct ehci_hcd *ehci = hcd_to_ehci (hcd); struct ehci_hcd *ehci = hcd_to_ehci (hcd);
...@@ -729,7 +729,7 @@ static int ehci_suspend (struct usb_hcd *hcd, u32 state) ...@@ -729,7 +729,7 @@ static int ehci_suspend (struct usb_hcd *hcd, u32 state)
msleep (100); msleep (100);
#ifdef CONFIG_USB_SUSPEND #ifdef CONFIG_USB_SUSPEND
(void) usb_suspend_device (hcd->self.root_hub, state); (void) usb_suspend_device (hcd->self.root_hub, message);
#else #else
usb_lock_device (hcd->self.root_hub); usb_lock_device (hcd->self.root_hub);
(void) ehci_hub_suspend (hcd); (void) ehci_hub_suspend (hcd);
......
...@@ -310,9 +310,9 @@ static int qh_link_periodic (struct ehci_hcd *ehci, struct ehci_qh *qh) ...@@ -310,9 +310,9 @@ static int qh_link_periodic (struct ehci_hcd *ehci, struct ehci_qh *qh)
for (i = qh->start; i < ehci->periodic_size; i += period) { for (i = qh->start; i < ehci->periodic_size; i += period) {
union ehci_shadow *prev = &ehci->pshadow [i]; union ehci_shadow *prev = &ehci->pshadow [i];
u32 *hw_p = &ehci->periodic [i]; __le32 *hw_p = &ehci->periodic [i];
union ehci_shadow here = *prev; union ehci_shadow here = *prev;
u32 type = 0; __le32 type = 0;
/* skip the iso nodes at list head */ /* skip the iso nodes at list head */
while (here.ptr) { while (here.ptr) {
......
...@@ -364,7 +364,7 @@ union ehci_shadow { ...@@ -364,7 +364,7 @@ union ehci_shadow {
struct ehci_itd *itd; /* Q_TYPE_ITD */ struct ehci_itd *itd; /* Q_TYPE_ITD */
struct ehci_sitd *sitd; /* Q_TYPE_SITD */ struct ehci_sitd *sitd; /* Q_TYPE_SITD */
struct ehci_fstn *fstn; /* Q_TYPE_FSTN */ struct ehci_fstn *fstn; /* Q_TYPE_FSTN */
u32 *hw_next; /* (all types) */ __le32 *hw_next; /* (all types) */
void *ptr; void *ptr;
}; };
......
...@@ -102,7 +102,7 @@ ohci_pci_start (struct usb_hcd *hcd) ...@@ -102,7 +102,7 @@ ohci_pci_start (struct usb_hcd *hcd)
#ifdef CONFIG_PM #ifdef CONFIG_PM
static int ohci_pci_suspend (struct usb_hcd *hcd, u32 state) static int ohci_pci_suspend (struct usb_hcd *hcd, pm_message_t message)
{ {
struct ohci_hcd *ohci = hcd_to_ohci (hcd); struct ohci_hcd *ohci = hcd_to_ohci (hcd);
...@@ -111,7 +111,7 @@ static int ohci_pci_suspend (struct usb_hcd *hcd, u32 state) ...@@ -111,7 +111,7 @@ static int ohci_pci_suspend (struct usb_hcd *hcd, u32 state)
msleep (100); msleep (100);
#ifdef CONFIG_USB_SUSPEND #ifdef CONFIG_USB_SUSPEND
(void) usb_suspend_device (hcd->self.root_hub, state); (void) usb_suspend_device (hcd->self.root_hub, message);
#else #else
usb_lock_device (hcd->self.root_hub); usb_lock_device (hcd->self.root_hub);
(void) ohci_hub_suspend (hcd); (void) ohci_hub_suspend (hcd);
......
...@@ -716,7 +716,7 @@ static void uhci_stop(struct usb_hcd *hcd) ...@@ -716,7 +716,7 @@ static void uhci_stop(struct usb_hcd *hcd)
} }
#ifdef CONFIG_PM #ifdef CONFIG_PM
static int uhci_suspend(struct usb_hcd *hcd, u32 state) static int uhci_suspend(struct usb_hcd *hcd, pm_message_t message)
{ {
struct uhci_hcd *uhci = hcd_to_uhci(hcd); struct uhci_hcd *uhci = hcd_to_uhci(hcd);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment