ehci-mx5/6: Make board_ehci_hcd_init() optional
authorBenoît Thébaudeau <benoit.thebaudeau@advansee.com>
Tue, 13 Nov 2012 09:58:35 +0000 (09:58 +0000)
committerStefano Babic <sbabic@denx.de>
Fri, 16 Nov 2012 08:16:46 +0000 (09:16 +0100)
A custom board_ehci_hcd_init() may be unneeded, so add a weak default
implementation doing nothing.

By the way, use simple __weak from linux/compiler.h for
board_ehci_hcd_postinit() instead of weak alias with full attribute.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
Cc: Marek Vasut <marex@denx.de>
Cc: Stefano Babic <sbabic@denx.de>
drivers/usb/host/ehci-mx5.c
drivers/usb/host/ehci-mx6.c

index 7e60c3c3bf20e75f00e0a79286304de747590708..adbed5c90ca54717baa7e42d42a41fdf3599716f 100644 (file)
@@ -290,12 +290,14 @@ int mxc_set_usbcontrol(int port, unsigned int flags)
        return ret;
 }
 
-void __board_ehci_hcd_postinit(struct usb_ehci *ehci, int port)
+int __weak board_ehci_hcd_init(int port)
 {
+       return 0;
 }
 
-void board_ehci_hcd_postinit(struct usb_ehci *ehci, int port)
-       __attribute((weak, alias("__board_ehci_hcd_postinit")));
+void __weak board_ehci_hcd_postinit(struct usb_ehci *ehci, int port)
+{
+}
 
 int ehci_hcd_init(int index, struct ehci_hccr **hccr, struct ehci_hcor **hcor)
 {
index 9ce25da5980637ed9ebbd147da96af62497fc74a..1b20e4185cfc3cdb60d6a7f64bdf81462cbe48a6 100644 (file)
@@ -159,6 +159,11 @@ static void usbh1_oc_config(void)
        __raw_writel(val, usbother_base + USB_H1_CTRL_OFFSET);
 }
 
+int __weak board_ehci_hcd_init(int port)
+{
+       return 0;
+}
+
 int ehci_hcd_init(int index, struct ehci_hccr **hccr, struct ehci_hcor **hcor)
 {
        struct usb_ehci *ehci;