]> git.sur5r.net Git - u-boot/blobdiff - board/samsung/arndale/arndale.c
dt: socfpga: Replace num-chipselect with num-cs
[u-boot] / board / samsung / arndale / arndale.c
index 052fecdd5b3bb0158f24e9c391ee7607f199384a..881d080522563912da43a96e90a7a66a6fa4866a 100644 (file)
@@ -5,12 +5,32 @@
  */
 
 #include <common.h>
+#include <usb.h>
+#include <asm/gpio.h>
 #include <asm/arch/pinmux.h>
 #include <asm/arch/dwmmc.h>
 #include <asm/arch/power.h>
 
 DECLARE_GLOBAL_DATA_PTR;
 
+#ifdef CONFIG_USB_EHCI_EXYNOS
+int board_usb_init(int index, enum usb_init_type init)
+{
+       /* Configure gpios for usb 3503 hub:
+        * disconnect, toggle reset and connect
+        */
+       gpio_request(EXYNOS5_GPIO_D17, "usb_connect");
+       gpio_request(EXYNOS5_GPIO_X35, "usb_reset");
+       gpio_direction_output(EXYNOS5_GPIO_D17, 0);
+       gpio_direction_output(EXYNOS5_GPIO_X35, 0);
+
+       gpio_direction_output(EXYNOS5_GPIO_X35, 1);
+       gpio_direction_output(EXYNOS5_GPIO_D17, 1);
+
+       return 0;
+}
+#endif
+
 int board_init(void)
 {
        gd->bd->bi_boot_params = (PHYS_SDRAM_1 + 0x100UL);
@@ -99,3 +119,13 @@ int checkboard(void)
        return 0;
 }
 #endif
+
+#ifdef CONFIG_S5P_PA_SYSRAM
+void smp_set_core_boot_addr(unsigned long addr, int corenr)
+{
+       writel(addr, CONFIG_S5P_PA_SYSRAM);
+
+       /* make sure this write is really executed */
+       __asm__ volatile ("dsb\n");
+}
+#endif