int board_app_initialize(void) { #ifdef NSH_HAVEMMCSD FAR struct spi_dev_s *ssp; int ret; /* Get the SSP port */ ssp = lpc17_sspinitialize(CONFIG_NSH_MMCSDSPIPORTNO); if (!ssp) { syslog(LOG_ERR, "ERROR: Failed to initialize SSP port %d\n", CONFIG_NSH_MMCSDSPIPORTNO); return -ENODEV; } syslog(LOG_INFO, "Successfully initialized SSP port %d\n", CONFIG_NSH_MMCSDSPIPORTNO); /* Bind the SSP port to the slot */ ret = mmcsd_spislotinitialize(CONFIG_NSH_MMCSDMINOR, CONFIG_NSH_MMCSDSLOTNO, ssp); if (ret < 0) { syslog(LOG_ERR, "ERROR: Failed to bind SSP port %d to MMC/SD slot %d: %d\n", CONFIG_NSH_MMCSDSPIPORTNO, CONFIG_NSH_MMCSDSLOTNO, ret); return ret; } syslog(LOG_INFO, "Successfuly bound SSP port %d to MMC/SD slot %d\n", CONFIG_NSH_MMCSDSPIPORTNO, CONFIG_NSH_MMCSDSLOTNO); #endif return OK; }
void lpc17_boardinitialize(void) { /* Enable +5V needed for CAN */ #if defined(CONFIG_LPC17_CAN1) || defined(CONFIG_LPC17_CAN2) lpc17_configgpio(NUCLEUS2G_5V_ENABLE); #else lpc17_configgpio(NUCLEUS2G_5V_DISABLE); #endif /* If UART0 is used, enabled the MAX232 driver */ #ifdef CONFIG_LPC17_UART0 lpc17_configgpio(NUCLEUS2G_232_ENABLE); #else lpc17_configgpio(NUCLEUS2G_232_POWERSAVE); #endif /* Configure SSP chip selects if 1) at least one SSP is enabled, and 2) the weak * function lpc17_sspinitialize() has been brought into the link. */ #if defined(CONFIG_LPC17_SSP0) || defined(CONFIG_LPC17_SSP1) if (lpc17_sspinitialize) { lpc17_sspinitialize(); } #endif /* Configure on-board LEDs if LED support has been selected. */ #ifdef CONFIG_ARCH_LEDS up_ledinit(); #endif }
FAR struct lcd_dev_s *up_nxdrvinit(unsigned int devno) { FAR struct spi_dev_s *spi; FAR struct lcd_dev_s *dev; /* Configure the LCD GPIOs */ lcd_dumpgpio("up_nxdrvinit: On entry"); lpc17_configgpio(LPC1766STK_LCD_RST); lpc17_configgpio(LPC1766STK_LCD_BL); lcd_dumpgpio("up_nxdrvinit: After GPIO setup"); /* Reset the LCD */ lpc17_gpiowrite(LPC1766STK_LCD_RST, false); up_udelay(10); lpc17_gpiowrite(LPC1766STK_LCD_RST, true); up_mdelay(5); /* Configure PWM1 to support the backlight */ nokia_blinitialize(); /* Get the SSP0 port (configure as a Freescale SPI port) */ spi = lpc17_sspinitialize(0); if (!spi) { glldbg("Failed to initialize SSP port 0\n"); } else { /* Bind the SSP port to the LCD */ dev = nokia_lcdinitialize(spi, devno); if (!dev) { glldbg("Failed to bind SSP port 0 to LCD %d: %d\n", devno); } else { gllvdbg("Bound SSP port 0 to LCD %d\n", devno); /* And turn the LCD on (CONFIG_LCD_MAXPOWER should be 1) */ (void)dev->setpower(dev, CONFIG_LCD_MAXPOWER); return dev; } } return NULL; }
int usbmsc_archinitialize(void) { FAR struct spi_dev_s *spi; int ret; /* Enable power to the SD/MMC via a GPIO. LOW enables SD/MMC. */ lpc17_gpiowrite(LPC1766STK_MMC_PWR, false); /* Get the SPI port */ message("usbmsc_archinitialize: Initializing SPI port %d\n", LPC17XX_MMCSDSPIPORTNO); spi = lpc17_sspinitialize(LPC17XX_MMCSDSPIPORTNO); if (!spi) { message("usbmsc_archinitialize: Failed to initialize SPI port %d\n", LPC17XX_MMCSDSPIPORTNO); ret = -ENODEV; goto errout; } message("usbmsc_archinitialize: Successfully initialized SPI port %d\n", LPC17XX_MMCSDSPIPORTNO); /* Bind the SPI port to the slot */ message("usbmsc_archinitialize: Binding SPI port %d to MMC/SD slot %d\n", LPC17XX_MMCSDSPIPORTNO, LPC17XX_MMCSDSLOTNO); ret = mmcsd_spislotinitialize(CONFIG_EXAMPLES_USBMSC_DEVMINOR1, LPC17XX_MMCSDSLOTNO, spi); if (ret < 0) { message("usbmsc_archinitialize: Failed to bind SPI port %d to MMC/SD slot %d: %d\n", LPC17XX_MMCSDSPIPORTNO, LPC17XX_MMCSDSLOTNO, ret); goto errout; } message("usbmsc_archinitialize: Successfuly bound SPI port %d to MMC/SD slot %d\n", LPC17XX_MMCSDSPIPORTNO, LPC17XX_MMCSDSLOTNO); return OK; /* Disable power to the SD/MMC via a GPIO. HIGH disables SD/MMC. */ errout: lpc17_gpiowrite(LPC1766STK_MMC_PWR, true); return ret;}
static int nsh_sdinitialize(void) { FAR struct spi_dev_s *ssp; int ret; /* Enable power to the SD/MMC via a GPIO. LOW enables SD/MMC. */ lpc17_gpiowrite(LPC1766STK_MMC_PWR, false); /* Get the SSP port */ ssp = lpc17_sspinitialize(CONFIG_NSH_MMCSDSPIPORTNO); if (!ssp) { message("nsh_archinitialize: Failed to initialize SSP port %d\n", CONFIG_NSH_MMCSDSPIPORTNO); ret = -ENODEV; goto errout; } message("Successfully initialized SSP port %d\n", CONFIG_NSH_MMCSDSPIPORTNO); /* Bind the SSP port to the slot */ ret = mmcsd_spislotinitialize(CONFIG_NSH_MMCSDMINOR, CONFIG_NSH_MMCSDSLOTNO, ssp); if (ret < 0) { message("nsh_sdinitialize: " "Failed to bind SSP port %d to MMC/SD slot %d: %d\n", CONFIG_NSH_MMCSDSPIPORTNO, CONFIG_NSH_MMCSDSLOTNO, ret); goto errout; } message("Successfuly bound SSP port %d to MMC/SD slot %d\n", CONFIG_NSH_MMCSDSPIPORTNO, CONFIG_NSH_MMCSDSLOTNO); return OK; /* Disable power to the SD/MMC via a GPIO. HIGH disables SD/MMC. */ errout: lpc17_gpiowrite(LPC1766STK_MMC_PWR, true); return ret; }
void lpc17_boardinitialize(void) { /* Configure SSP chip selects if 1) at least one SSP is enabled, and 2) the weak * function lpc17_sspinitialize() has been brought into the link. */ #if defined(CONFIG_LPC17_SSP0) || defined(CONFIG_LPC17_SSP1) if (lpc17_sspinitialize) { lpc17_sspinitialize(); } #endif /* Configure on-board LEDs if LED support has been selected. */ #ifdef CONFIG_ARCH_LEDS up_ledinit(); #endif }
int up_lcdinitialize(void) { lpc17_configgpio(ZKITARM_OLED_RST); lpc17_configgpio(ZKITARM_OLED_RS); lpc17_gpiowrite(ZKITARM_OLED_RST, 1); lpc17_gpiowrite(ZKITARM_OLED_RS, 1); zkit_sspinitialize(); spi = lpc17_sspinitialize(0); if (!spi) { glldbg("Failed to initialize SSP port 0\n"); return 0; } lpc17_gpiowrite(ZKITARM_OLED_RST, 0); up_mdelay(1); lpc17_gpiowrite(ZKITARM_OLED_RST, 1); return 1; }
int usbmsc_archinitialize(void) { FAR struct spi_dev_s *spi; int ret; /* Get the SPI port */ syslog(LOG_INFO, "Initializing SPI port %d\n", LPC17XX_MMCSDSPIPORTNO); spi = lpc17_sspinitialize(LPC17XX_MMCSDSPIPORTNO); if (!spi) { syslog(LOG_ERR, "ERROR: Failed to initialize SPI port %d\n", LPC17XX_MMCSDSPIPORTNO); return -ENODEV; } syslog(LOG_INFO, "Successfully initialized SPI port %d\n", LPC17XX_MMCSDSPIPORTNO); /* Bind the SPI port to the slot */ syslog(LOG_INFO, "Binding SPI port %d to MMC/SD slot %d\n", LPC17XX_MMCSDSPIPORTNO, LPC17XX_MMCSDSLOTNO); ret = mmcsd_spislotinitialize(CONFIG_SYSTEM_USBMSC_DEVMINOR1, LPC17XX_MMCSDSLOTNO, spi); if (ret < 0) { syslog(LOG_ERR, "ERROR: Failed to bind SPI port %d to MMC/SD slot %d: %d\n", LPC17XX_MMCSDSPIPORTNO, LPC17XX_MMCSDSLOTNO, ret); return ret; } syslog(LOG_INFO, "Successfully bound SPI port %d to MMC/SD slot %d\n", LPC17XX_MMCSDSPIPORTNO, LPC17XX_MMCSDSLOTNO); return OK; }
int usbmsc_archinitialize(void) { FAR struct spi_dev_s *spi; int ret; /* Get the SPI port */ message("usbmsc_archinitialize: Initializing SPI port %d\n", LPC17XX_MMCSDSPIPORTNO); spi = lpc17_sspinitialize(LPC17XX_MMCSDSPIPORTNO); if (!spi) { message("usbmsc_archinitialize: Failed to initialize SPI port %d\n", LPC17XX_MMCSDSPIPORTNO); return -ENODEV; } message("usbmsc_archinitialize: Successfully initialized SPI port %d\n", LPC17XX_MMCSDSPIPORTNO); /* Bind the SPI port to the slot */ message("usbmsc_archinitialize: Binding SPI port %d to MMC/SD slot %d\n", LPC17XX_MMCSDSPIPORTNO, LPC17XX_MMCSDSLOTNO); ret = mmcsd_spislotinitialize(CONFIG_EXAMPLES_USBMSC_DEVMINOR1, LPC17XX_MMCSDSLOTNO, spi); if (ret < 0) { message("usbmsc_archinitialize: Failed to bind SPI port %d to MMC/SD slot %d: %d\n", LPC17XX_MMCSDSPIPORTNO, LPC17XX_MMCSDSLOTNO, ret); return ret; } message("usbmsc_archinitialize: Successfuly bound SPI port %d to MMC/SD slot %d\n", LPC17XX_MMCSDSPIPORTNO, LPC17XX_MMCSDSLOTNO); return OK; }