|
@@ -769,3 +769,177 @@ static const unsigned int cclk_vlev_datasheet[] =
|
|
|
VRPAIR(VLEV_085, 250000000),
|
|
|
VRPAIR(VLEV_090, 376000000),
|
|
|
VRPAIR(VLEV_095, 426000000),
|
|
|
+ VRPAIR(VLEV_100, 426000000),
|
|
|
+ VRPAIR(VLEV_105, 476000000),
|
|
|
+ VRPAIR(VLEV_110, 476000000),
|
|
|
+ VRPAIR(VLEV_115, 476000000),
|
|
|
+ VRPAIR(VLEV_120, 500000000),
|
|
|
+ VRPAIR(VLEV_125, 533000000),
|
|
|
+ VRPAIR(VLEV_130, 600000000),
|
|
|
+};
|
|
|
+
|
|
|
+static struct bfin_dpmc_platform_data bfin_dmpc_vreg_data = {
|
|
|
+ .tuple_tab = cclk_vlev_datasheet,
|
|
|
+ .tabsize = ARRAY_SIZE(cclk_vlev_datasheet),
|
|
|
+ .vr_settling_time = 25 /* us */,
|
|
|
+};
|
|
|
+
|
|
|
+static struct platform_device bfin_dpmc = {
|
|
|
+ .name = "bfin dpmc",
|
|
|
+ .dev = {
|
|
|
+ .platform_data = &bfin_dmpc_vreg_data,
|
|
|
+ },
|
|
|
+};
|
|
|
+
|
|
|
+static struct platform_device *cm_bf537e_devices[] __initdata = {
|
|
|
+
|
|
|
+ &bfin_dpmc,
|
|
|
+
|
|
|
+#if defined(CONFIG_BFIN_SPORT) || defined(CONFIG_BFIN_SPORT_MODULE)
|
|
|
+ &bfin_sport0_device,
|
|
|
+#endif
|
|
|
+
|
|
|
+#if defined(CONFIG_FB_HITACHI_TX09) || defined(CONFIG_FB_HITACHI_TX09_MODULE)
|
|
|
+ &hitachi_fb_device,
|
|
|
+#endif
|
|
|
+
|
|
|
+#if defined(CONFIG_RTC_DRV_BFIN) || defined(CONFIG_RTC_DRV_BFIN_MODULE)
|
|
|
+ &rtc_device,
|
|
|
+#endif
|
|
|
+
|
|
|
+#if defined(CONFIG_SERIAL_BFIN) || defined(CONFIG_SERIAL_BFIN_MODULE)
|
|
|
+#ifdef CONFIG_SERIAL_BFIN_UART0
|
|
|
+ &bfin_uart0_device,
|
|
|
+#endif
|
|
|
+#ifdef CONFIG_SERIAL_BFIN_UART1
|
|
|
+ &bfin_uart1_device,
|
|
|
+#endif
|
|
|
+#endif
|
|
|
+
|
|
|
+#if defined(CONFIG_BFIN_SIR) || defined(CONFIG_BFIN_SIR_MODULE)
|
|
|
+#ifdef CONFIG_BFIN_SIR0
|
|
|
+ &bfin_sir0_device,
|
|
|
+#endif
|
|
|
+#ifdef CONFIG_BFIN_SIR1
|
|
|
+ &bfin_sir1_device,
|
|
|
+#endif
|
|
|
+#endif
|
|
|
+
|
|
|
+#if defined(CONFIG_I2C_BLACKFIN_TWI) || defined(CONFIG_I2C_BLACKFIN_TWI_MODULE)
|
|
|
+ &i2c_bfin_twi_device,
|
|
|
+#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
|
|
|
+
|
|
|
+#if defined(CONFIG_USB_ISP1362_HCD) || defined(CONFIG_USB_ISP1362_HCD_MODULE)
|
|
|
+ &isp1362_hcd_device,
|
|
|
+#endif
|
|
|
+
|
|
|
+#if defined(CONFIG_SMC91X) || defined(CONFIG_SMC91X_MODULE)
|
|
|
+ &smc91x_device,
|
|
|
+#endif
|
|
|
+
|
|
|
+#if defined(CONFIG_BFIN_MAC) || defined(CONFIG_BFIN_MAC_MODULE)
|
|
|
+ &bfin_mii_bus,
|
|
|
+ &bfin_mac_device,
|
|
|
+#endif
|
|
|
+
|
|
|
+#if defined(CONFIG_USB_NET2272) || defined(CONFIG_USB_NET2272_MODULE)
|
|
|
+ &net2272_bfin_device,
|
|
|
+#endif
|
|
|
+
|
|
|
+#if defined(CONFIG_SPI_BFIN5XX) || defined(CONFIG_SPI_BFIN5XX_MODULE)
|
|
|
+ &bfin_spi0_device,
|
|
|
+#endif
|
|
|
+
|
|
|
+#if defined(CONFIG_SPI_BFIN_SPORT) || defined(CONFIG_SPI_BFIN_SPORT_MODULE)
|
|
|
+ &bfin_sport_spi0_device,
|
|
|
+ &bfin_sport_spi1_device,
|
|
|
+#endif
|
|
|
+
|
|
|
+#if defined(CONFIG_PATA_PLATFORM) || defined(CONFIG_PATA_PLATFORM_MODULE)
|
|
|
+ &bfin_pata_device,
|
|
|
+#endif
|
|
|
+
|
|
|
+#if defined(CONFIG_MTD_GPIO_ADDR) || defined(CONFIG_MTD_GPIO_ADDR_MODULE)
|
|
|
+ &cm_flash_device,
|
|
|
+#endif
|
|
|
+};
|
|
|
+
|
|
|
+static int __init net2272_init(void)
|
|
|
+{
|
|
|
+#if defined(CONFIG_USB_NET2272) || defined(CONFIG_USB_NET2272_MODULE)
|
|
|
+ int ret;
|
|
|
+
|
|
|
+ ret = gpio_request(GPIO_PG14, "net2272");
|
|
|
+ if (ret)
|
|
|
+ return ret;
|
|
|
+
|
|
|
+ /* Reset USB Chip, PG14 */
|
|
|
+ gpio_direction_output(GPIO_PG14, 0);
|
|
|
+ mdelay(2);
|
|
|
+ gpio_set_value(GPIO_PG14, 1);
|
|
|
+#endif
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
+static int __init cm_bf537e_init(void)
|
|
|
+{
|
|
|
+ printk(KERN_INFO "%s(): registering device resources\n", __func__);
|
|
|
+ platform_add_devices(cm_bf537e_devices, ARRAY_SIZE(cm_bf537e_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
|
|
|
+
|
|
|
+#if defined(CONFIG_PATA_PLATFORM) || defined(CONFIG_PATA_PLATFORM_MODULE)
|
|
|
+ irq_set_status_flags(PATA_INT, IRQ_NOAUTOEN);
|
|
|
+#endif
|
|
|
+
|
|
|
+ if (net2272_init())
|
|
|
+ pr_warning("unable to configure net2272; it probably won't work\n");
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
+arch_initcall(cm_bf537e_init);
|
|
|
+
|
|
|
+static struct platform_device *cm_bf537e_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(cm_bf537e_early_devices,
|
|
|
+ ARRAY_SIZE(cm_bf537e_early_devices));
|
|
|
+}
|
|
|
+
|
|
|
+int bfin_get_ether_addr(char *addr)
|
|
|
+{
|
|
|
+ return 1;
|
|
|
+}
|
|
|
+EXPORT_SYMBOL(bfin_get_ether_addr);
|