ARM64: DTS: Add rk3399-firefly uart4 device, node as /dev/ttyS1
[firefly-linux-kernel-4.4.55.git] / arch / arm / mach-davinci / board-dm355-leopard.c
index 139e42da25f061baa0128c7615723da54e068592..680a7a2d9102761c1cdadb1d125b45d92b65d9c0 100644 (file)
 #include <linux/clk.h>
 #include <linux/spi/spi.h>
 #include <linux/spi/eeprom.h>
+#include <linux/platform_data/i2c-davinci.h>
+#include <linux/platform_data/mmc-davinci.h>
+#include <linux/platform_data/mtd-davinci.h>
+#include <linux/platform_data/usb-davinci.h>
 
 #include <asm/mach-types.h>
 #include <asm/mach/arch.h>
 
-#include <linux/platform_data/i2c-davinci.h>
+#include <mach/common.h>
 #include <mach/serial.h>
-#include <linux/platform_data/mtd-davinci.h>
-#include <linux/platform_data/mmc-davinci.h>
-#include <linux/platform_data/usb-davinci.h>
 
 #include "davinci.h"
 
@@ -173,10 +174,6 @@ static struct platform_device *davinci_leopard_devices[] __initdata = {
        &davinci_nand_device,
 };
 
-static struct davinci_uart_config uart_config __initdata = {
-       .enabled_uarts = (1 << 0),
-};
-
 static void __init dm355_leopard_map_io(void)
 {
        dm355_init();
@@ -211,11 +208,7 @@ static struct davinci_mmc_config dm355leopard_mmc_config = {
  * you have proper Mini-B or Mini-A cables (or Mini-A adapters)
  * the ID pin won't need any help.
  */
-#ifdef CONFIG_USB_MUSB_PERIPHERAL
-#define USB_ID_VALUE   0       /* ID pulled high; *should* float */
-#else
 #define USB_ID_VALUE   1       /* ID pulled low */
-#endif
 
 static struct spi_eeprom at25640a = {
        .byte_len       = SZ_64K / 8,
@@ -238,6 +231,11 @@ static struct spi_board_info dm355_leopard_spi_info[] __initconst = {
 static __init void dm355_leopard_init(void)
 {
        struct clk *aemif;
+       int ret;
+
+       ret = dm355_gpio_register();
+       if (ret)
+               pr_warn("%s: GPIO init failed: %d\n", __func__, ret);
 
        gpio_request(9, "dm9000");
        gpio_direction_input(9);
@@ -252,7 +250,7 @@ static __init void dm355_leopard_init(void)
        platform_add_devices(davinci_leopard_devices,
                             ARRAY_SIZE(davinci_leopard_devices));
        leopard_init_i2c();
-       davinci_serial_init(&uart_config);
+       davinci_serial_init(dm355_serial_device);
 
        /* NOTE:  NAND flash timings set by the UBL are slower than
         * needed by MT29F16G08FAA chips ... EMIF.A1CR is 0x40400204