From: Siva Durga Prasad Paladugu Date: Thu, 20 Feb 2014 04:58:25 +0000 (+0530) Subject: zynq: usb: Runtime detection of usb connected through slcr X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=9edf743ae75e3db6c4c0c51a801776e9f23fd6af;p=thirdparty%2Fu-boot.git zynq: usb: Runtime detection of usb connected through slcr This patch adds support to check the connected usb at runtime based on nand MIO configurations. User needs to correctly configure the MIO's based on the usb connected on the board. Signed-off-by: Siva Durga Prasad Paladugu Signed-off-by: Michal Simek --- diff --git a/arch/arm/cpu/armv7/zynq/slcr.c b/arch/arm/cpu/armv7/zynq/slcr.c index 1152dc4a625..3d474bfc576 100644 --- a/arch/arm/cpu/armv7/zynq/slcr.c +++ b/arch/arm/cpu/armv7/zynq/slcr.c @@ -17,6 +17,7 @@ #define SLCR_QSPI_ENABLE_MASK 0x03 #define SLCR_NAND_L2_SEL 0x10 #define SLCR_NAND_L2_SEL_MASK 0x1F +#define SLCR_USB_L1_SEL 0x04 #define SLCR_IDCODE_MASK 0x1F000 #define SLCR_IDCODE_SHIFT 12 @@ -58,6 +59,14 @@ static const int nand16_pins[] = { 16, 17, 18, 19, 20, 21, 22, 23 }; +static const int usb0_pins[] = { + 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39 +}; + +static const int usb1_pins[] = { + 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51 +}; + static const struct zynq_slcr_mio_get_status mio_periphs[] = { { "qspi0", @@ -94,6 +103,20 @@ static const struct zynq_slcr_mio_get_status mio_periphs[] = { SLCR_NAND_L2_SEL_MASK, SLCR_NAND_L2_SEL, }, + { + "usb0", + usb0_pins, + ARRAY_SIZE(usb0_pins), + SLCR_USB_L1_SEL, + SLCR_USB_L1_SEL, + }, + { + "usb1", + usb1_pins, + ARRAY_SIZE(usb1_pins), + SLCR_USB_L1_SEL, + SLCR_USB_L1_SEL, + }, }; static int slcr_lock = 1; /* 1 means locked, 0 means unlocked */