mvebu: usb: xhci: a38x support
authorJon Nettleton <jon@solid-run.com>
Mon, 6 Nov 2017 08:33:19 +0000 (10:33 +0200)
committerStefan Roese <sr@denx.de>
Thu, 16 Nov 2017 10:45:20 +0000 (11:45 +0100)
This makes the initial changes need to support the
a38x series of SOCs.  It adds the device-tree identifier
as well as changing the board_support function to take
the IO address designated by device-tree.

Signed-off-by: Jon Nettleton <jon@solid-run.com>
[baruch: use fdt_addr_t; update 37xx and 8K implementations]
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Stefan Roese <sr@denx.de>
board/Marvell/mvebu_armada-37xx/board.c
board/Marvell/mvebu_armada-8k/board.c
drivers/usb/host/xhci-mvebu.c

index 8dc1f46..ac3e3a3 100644 (file)
@@ -123,7 +123,7 @@ int board_ahci_enable(void)
 }
 
 /* Board specific xHCI enable code */
 }
 
 /* Board specific xHCI enable code */
-int board_xhci_enable(void)
+int board_xhci_enable(fdt_addr_t base)
 {
        struct udevice *dev;
        int ret;
 {
        struct udevice *dev;
        int ret;
index 7d1b5d9..f4eabfb 100644 (file)
@@ -95,7 +95,7 @@ int board_xhci_config(void)
        return 0;
 }
 
        return 0;
 }
 
-int board_xhci_enable(void)
+int board_xhci_enable(fdt_addr_t base)
 {
        struct udevice *dev;
        int ret;
 {
        struct udevice *dev;
        int ret;
index b9201a5..dbdfce3 100644 (file)
@@ -35,7 +35,7 @@ struct mvebu_xhci {
  * Dummy implementation that can be overwritten by a board
  * specific function
  */
  * Dummy implementation that can be overwritten by a board
  * specific function
  */
-__weak int board_xhci_enable(void)
+__weak int board_xhci_enable(fdt_addr_t base)
 {
        return 0;
 }
 {
        return 0;
 }
@@ -62,7 +62,7 @@ static int xhci_usb_probe(struct udevice *dev)
        }
 
        /* Enable USB xHCI (VBUS, reset etc) in board specific code */
        }
 
        /* Enable USB xHCI (VBUS, reset etc) in board specific code */
-       board_xhci_enable();
+       board_xhci_enable(devfdt_get_addr_index(dev, 1));
 
        return xhci_register(dev, ctx->hcd, hcor);
 }
 
        return xhci_register(dev, ctx->hcd, hcor);
 }
@@ -85,6 +85,7 @@ static int xhci_usb_ofdata_to_platdata(struct udevice *dev)
 
 static const struct udevice_id xhci_usb_ids[] = {
        { .compatible = "marvell,armada3700-xhci" },
 
 static const struct udevice_id xhci_usb_ids[] = {
        { .compatible = "marvell,armada3700-xhci" },
+       { .compatible = "marvell,armada-380-xhci" },
        { .compatible = "marvell,armada-8k-xhci" },
        { }
 };
        { .compatible = "marvell,armada-8k-xhci" },
        { }
 };