- Convert a wrong macro to an inlined function.

svn path=/trunk/; revision=42824
This commit is contained in:
Aleksey Bragin 2009-08-21 13:01:27 +00:00
parent a6407bcf60
commit f6df5d0f26

View file

@ -72,24 +72,28 @@ extern USB_DEV_MANAGER g_dev_mgr;
* The erratum (#4) description is incorrect. AMD's workaround waits * The erratum (#4) description is incorrect. AMD's workaround waits
* till some bits (mostly reserved) are clear; ok for all revs. * till some bits (mostly reserved) are clear; ok for all revs.
*/ */
#define read_roothub(hc, register, mask) ({ \ ULONG
ULONG temp = OHCI_READ_PORT_ULONG(&((hc)->regs->roothub.register)); \ FORCEINLINE
if (temp == -1) \ read_roothub(POHCI_DEV hc, PULONG reg, ULONG mask)
/*disable (hc)*/; \ {
/*else if (hc->flags & OHCI_QUIRK_AMD756) \ ULONG temp = OHCI_READ_PORT_ULONG(reg);
while (temp & mask) \ if (temp == -1)
temp = ohci_readl (hc, &hc->regs->roothub.register); */ \ /*disable (hc)*/;
temp; }) /*else if (hc->flags & OHCI_QUIRK_AMD756)
while (temp & mask)
temp = ohci_readl (hc, &hc->regs->roothub.register); */
return temp;
}
static ULONG roothub_a (POHCI_DEV hc) static ULONG roothub_a (POHCI_DEV hc)
{ return read_roothub (hc, a, 0xfc0fe000); } { return read_roothub (hc, &hc->regs->roothub.a, 0xfc0fe000); }
/* /*
static inline u32 roothub_b (struct ohci_hcd *hc) static inline u32 roothub_b (struct ohci_hcd *hc)
{ return ohci_readl (hc, &hc->regs->roothub.b); } { return ohci_readl (hc, &hc->regs->roothub.b); }
static inline u32 roothub_status (struct ohci_hcd *hc) static inline u32 roothub_status (struct ohci_hcd *hc)
{ return ohci_readl (hc, &hc->regs->roothub.status); } { return ohci_readl (hc, &hc->regs->roothub.status); }
static u32 roothub_portstatus (struct ohci_hcd *hc, int i) static u32 roothub_portstatus (struct ohci_hcd *hc, int i)
{ return read_roothub (hc, portstatus [i], 0xffe0fce0); } { return read_roothub (hc, &hc->regs->roothub.portstatus [i], 0xffe0fce0); }
*/ */