|
@@ -528,3 +528,60 @@ static struct platform_device *minotaur_devices[] __initdata = {
|
|
|
#endif
|
|
|
|
|
|
#if defined(CONFIG_SERIAL_BFIN_SPORT) || defined(CONFIG_SERIAL_BFIN_SPORT_MODULE)
|
|
|
+#ifdef CONFIG_SERIAL_BFIN_SPORT0_UART
|
|
|
+ &bfin_sport0_uart_device,
|
|
|
+#endif
|
|
|
+#ifdef CONFIG_SERIAL_BFIN_SPORT1_UART
|
|
|
+ &bfin_sport1_uart_device,
|
|
|
+#endif
|
|
|
+#endif
|
|
|
+
|
|
|
+};
|
|
|
+
|
|
|
+static int __init minotaur_init(void)
|
|
|
+{
|
|
|
+ printk(KERN_INFO "%s(): registering device resources\n", __func__);
|
|
|
+ platform_add_devices(minotaur_devices, ARRAY_SIZE(minotaur_devices));
|
|
|
+#if defined(CONFIG_SPI_BFIN5XX) || defined(CONFIG_SPI_BFIN5XX_MODULE)
|
|
|
+ spi_register_board_info(bfin_spi_board_info,
|
|
|
+ ARRAY_SIZE(bfin_spi_board_info));
|
|
|
+#endif
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
+arch_initcall(minotaur_init);
|
|
|
+
|
|
|
+static struct platform_device *minotaur_early_devices[] __initdata = {
|
|
|
+#if defined(CONFIG_SERIAL_BFIN_CONSOLE) || defined(CONFIG_EARLY_PRINTK)
|
|
|
+#ifdef CONFIG_SERIAL_BFIN_UART0
|
|
|
+ &bfin_uart0_device,
|
|
|
+#endif
|
|
|
+#ifdef CONFIG_SERIAL_BFIN_UART1
|
|
|
+ &bfin_uart1_device,
|
|
|
+#endif
|
|
|
+#endif
|
|
|
+
|
|
|
+#if defined(CONFIG_SERIAL_BFIN_SPORT_CONSOLE)
|
|
|
+#ifdef CONFIG_SERIAL_BFIN_SPORT0_UART
|
|
|
+ &bfin_sport0_uart_device,
|
|
|
+#endif
|
|
|
+#ifdef CONFIG_SERIAL_BFIN_SPORT1_UART
|
|
|
+ &bfin_sport1_uart_device,
|
|
|
+#endif
|
|
|
+#endif
|
|
|
+};
|
|
|
+
|
|
|
+void __init native_machine_early_platform_add_devices(void)
|
|
|
+{
|
|
|
+ printk(KERN_INFO "register early platform devices\n");
|
|
|
+ early_platform_add_devices(minotaur_early_devices,
|
|
|
+ ARRAY_SIZE(minotaur_early_devices));
|
|
|
+}
|
|
|
+
|
|
|
+void native_machine_restart(char *cmd)
|
|
|
+{
|
|
|
+ /* workaround reboot hang when booting from SPI */
|
|
|
+ if ((bfin_read_SYSCR() & 0x7) == 0x3)
|
|
|
+ bfin_reset_boot_spi_cs(P_DEFAULT_BOOT_SPI_CS);
|
|
|
+}
|