diff options
author | Patrick Georgi <patrick.georgi@secunet.com> | 2011-11-18 14:44:16 +0100 |
---|---|---|
committer | Patrick Georgi <patrick@georgi-clan.de> | 2011-12-24 12:05:36 +0100 |
commit | f42fdabe651ab327a5c76d672781d60bd9124e94 (patch) | |
tree | 7c19c378bc5d811eb9ded4790bbc4467bd86dd11 /payloads/libpayload/drivers/usb/uhci.c | |
parent | 44bf6fcbb2ca9cca24038b29afb695db41a629f0 (diff) | |
download | coreboot-f42fdabe651ab327a5c76d672781d60bd9124e94.tar.xz |
libpayload: remove uhci_reg_maskX
Not that good an idea to start with.
Coccinelle patch:
@@
@@
-void
(
-uhci_reg_mask8
|
-uhci_reg_mask16
|
-uhci_reg_mask32
)
- (...) { ... }
@@
@@
-void
(
-uhci_reg_mask8
|
-uhci_reg_mask16
|
-uhci_reg_mask32
)
- (...);
@@
expression ctrl, reg, ormask;
@@
-uhci_reg_mask32 (ctrl, reg, ~0, ormask)
+uhci_reg_write32 (ctrl, reg, uhci_reg_read32 (ctrl, reg) | ormask)
@@
expression ctrl, reg, ormask;
@@
-uhci_reg_mask16 (ctrl, reg, ~0, ormask)
+uhci_reg_write16 (ctrl, reg, uhci_reg_read16 (ctrl, reg) | ormask)
@@
expression ctrl, reg, ormask;
@@
-uhci_reg_mask8 (ctrl, reg, ~0, ormask)
+uhci_reg_write8 (ctrl, reg, uhci_reg_read8 (ctrl, reg) | ormask)
@@
expression ctrl, reg, andmask;
@@
-uhci_reg_mask32 (ctrl, reg, andmask, 0)
+uhci_reg_write32 (ctrl, reg, uhci_reg_read32 (ctrl, reg) & andmask)
@@
expression ctrl, reg, andmask;
@@
-uhci_reg_mask16 (ctrl, reg, andmask, 0)
+uhci_reg_write16 (ctrl, reg, uhci_reg_read16 (ctrl, reg) & andmask)
@@
expression ctrl, reg, andmask;
@@
-uhci_reg_mask16 (ctrl, reg, andmask, 0)
+uhci_reg_write16 (ctrl, reg, uhci_reg_read16 (ctrl, reg) & andmask)
Change-Id: Id0eb8327293831e54249d43fd06d50963c793699
Signed-off-by: Patrick Georgi <patrick.georgi@secunet.com>
Reviewed-on: http://review.coreboot.org/477
Tested-by: build bot (Jenkins)
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Diffstat (limited to 'payloads/libpayload/drivers/usb/uhci.c')
-rw-r--r-- | payloads/libpayload/drivers/usb/uhci.c | 36 |
1 files changed, 10 insertions, 26 deletions
diff --git a/payloads/libpayload/drivers/usb/uhci.c b/payloads/libpayload/drivers/usb/uhci.c index 779098b168..b964ee7a0b 100644 --- a/payloads/libpayload/drivers/usb/uhci.c +++ b/payloads/libpayload/drivers/usb/uhci.c @@ -120,7 +120,8 @@ uhci_reset (hci_t *controller) /* reset framelist index */ uhci_reg_write16 (controller, FRNUM, 0); - uhci_reg_mask16 (controller, USBCMD, ~0, 0xc0); // max packets, configure flag + uhci_reg_write16(controller, USBCMD, + uhci_reg_read16(controller, USBCMD) | 0xc0); // max packets, configure flag uhci_start (controller); } @@ -240,7 +241,8 @@ uhci_shutdown (hci_t *controller) detach_controller (controller); UHCI_INST (controller)->roothub->destroy (UHCI_INST (controller)-> roothub); - uhci_reg_mask16 (controller, USBCMD, 0, 0); // stop work + uhci_reg_write16(controller, USBCMD, + uhci_reg_read16(controller, USBCMD) & 0); // stop work free (UHCI_INST (controller)->framelistptr); free (UHCI_INST (controller)->qh_prei); free (UHCI_INST (controller)->qh_intr); @@ -253,13 +255,15 @@ uhci_shutdown (hci_t *controller) static void uhci_start (hci_t *controller) { - uhci_reg_mask16 (controller, USBCMD, ~0, 1); // start work on schedule + uhci_reg_write16(controller, USBCMD, + uhci_reg_read16(controller, USBCMD) | 1); // start work on schedule } static void uhci_stop (hci_t *controller) { - uhci_reg_mask16 (controller, USBCMD, ~1, 0); // stop work on schedule + uhci_reg_write16(controller, USBCMD, + uhci_reg_read16(controller, USBCMD) & ~1); // stop work on schedule } #define GET_TD(x) ((void*)(((unsigned int)(x))&~0xf)) @@ -274,7 +278,8 @@ wait_for_completed_qh (hci_t *controller, qh_t *qh) current = GET_TD (qh->elementlinkptr.ptr); timeout = 1000000; } - uhci_reg_mask16 (controller, USBSTS, ~0, 0); // clear resettable registers + uhci_reg_write16(controller, USBSTS, + uhci_reg_read16(controller, USBSTS) | 0); // clear resettable registers udelay (30); } return (GET_TD (qh->elementlinkptr.ptr) == @@ -636,24 +641,3 @@ uhci_reg_read8 (hci_t *ctrl, usbreg reg) { return inb (ctrl->reg_base + reg); } - -void -uhci_reg_mask32 (hci_t *ctrl, usbreg reg, u32 andmask, u32 ormask) -{ - uhci_reg_write32 (ctrl, reg, - (uhci_reg_read32 (ctrl, reg) & andmask) | ormask); -} - -void -uhci_reg_mask16 (hci_t *ctrl, usbreg reg, u16 andmask, u16 ormask) -{ - uhci_reg_write16 (ctrl, reg, - (uhci_reg_read16 (ctrl, reg) & andmask) | ormask); -} - -void -uhci_reg_mask8 (hci_t *ctrl, usbreg reg, u8 andmask, u8 ormask) -{ - uhci_reg_write8 (ctrl, reg, - (uhci_reg_read8 (ctrl, reg) & andmask) | ormask); -} |