Browse Source

usb: ehci: mxs: Add board-specific callbacks

Add board-specific callbacks for enabling/disabling port power
into the MXS EHCI controller driver. This is in-line with the
names of callbacks on other systems.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Stefano Babic <sbabic@denx.de>
Marek Vasut 11 years ago
parent
commit
dd24b57bb7
1 changed files with 16 additions and 0 deletions
  1. 16 0
      drivers/usb/host/ehci-mxs.c

+ 16 - 0
drivers/usb/host/ehci-mxs.c

@@ -77,6 +77,16 @@ static int ehci_mxs_toggle_clock(const struct ehci_mxs_port *port, int enable)
 	return 0;
 }
 
+int __weak board_ehci_hcd_init(int port)
+{
+	return 0;
+}
+
+int __weak board_ehci_hcd_exit(int port)
+{
+	return 0;
+}
+
 int ehci_hcd_init(int index, enum usb_init_type init,
 		struct ehci_hccr **hccr, struct ehci_hcor **hcor)
 {
@@ -90,6 +100,10 @@ int ehci_hcd_init(int index, enum usb_init_type init,
 		return -EINVAL;
 	}
 
+	ret = board_ehci_hcd_init(index);
+	if (ret)
+		return ret;
+
 	port = &mxs_port[index];
 
 	/* Reset the PHY block */
@@ -154,5 +168,7 @@ int ehci_hcd_stop(int index)
 	/* Disable USB clock */
 	ret = ehci_mxs_toggle_clock(port, 0);
 
+	board_ehci_hcd_exit(index);
+
 	return ret;
 }