static void dm365evm_usb_configure(void) { davinci_cfg_reg(DM365_GPIO33); gpio_request(33, "usb"); gpio_direction_output(33, 1); setup_usb(500, 8); }
int main(void) { setup_mcu(); keyboard_setup(); setup_usb(); sei(); /* init modules */ serial_init(); keyboard_init(); host_set_driver(&lufa_driver); #ifdef SLEEP_LED_ENABLE sleep_led_init(); #endif print("Keyboard start.\n"); while (1) { while (USB_DeviceState == DEVICE_STATE_Suspended) { print("[s]"); matrix_power_down(); suspend_power_down(); if (USB_Device_RemoteWakeupEnabled && suspend_wakeup_condition()) { USB_Device_SendRemoteWakeup(); } } keyboard_task(); #if !defined(INTERRUPT_CONTROL_ENDPOINT) USB_USBTask(); #endif } }
int board_init(void) { /* Address of boot parameters */ gd->bd->bi_boot_params = PHYS_SDRAM + 0x100; imx_iomux_v3_setup_multiple_pads(iox_pads, ARRAY_SIZE(iox_pads)); iox74lv_init(); #ifdef CONFIG_SYS_I2C_MXC setup_i2c(0, CONFIG_SYS_I2C_SPEED, 0x7f, &i2c_pad_info1); #endif #ifdef CONFIG_FEC_MXC setup_fec(CONFIG_FEC_ENET_DEV); #endif #ifdef CONFIG_USB_EHCI_MX6 setup_usb(); #endif #ifdef CONFIG_FSL_QSPI board_qspi_init(); #endif #ifdef CONFIG_VIDEO_MXS setup_lcd(); #endif return 0; }
int board_init(void) { /* Address of boot parameters */ gd->bd->bi_boot_params = PHYS_SDRAM + 0x100; #ifdef CONFIG_SYS_I2C_MXC setup_i2c(1, CONFIG_SYS_I2C_SPEED, 0x7f, &i2c_pad_info2); setup_i2c(2, CONFIG_SYS_I2C_SPEED, 0x7f, &i2c_pad_info3); #endif /* Reset CPU_PER_RST_B signal for enet phy and PCIE */ port_exp_direction_output(CPU_PER_RST_B, 0); udelay(500); port_exp_direction_output(CPU_PER_RST_B, 1); /* Set steering signal to L for selecting B0 */ port_exp_direction_output(STEER_ENET, 0); #ifdef CONFIG_USB_EHCI_MX6 setup_usb(); #endif #ifdef CONFIG_FSL_QSPI board_qspi_init(); #endif #ifdef CONFIG_NAND_MXS setup_gpmi_nand(); #endif return 0; }
int main(void) { printf("USB Device Demo\n"); printf("Setting up CDC device\n"); init_usb_device(&acm); setup_usb(); return 0; }
void initialize_io_interface(unsigned char *input_buffer) { #ifdef USE_USB #ifndef FAKE_IT setup_usb(); //Clear the input buffer usb_ClearEndpnt((IN_ADDR | LIBUSB_ENDPOINT_IN), input_buffer, MAXIMUM_PACKET_SIZE_IN_WORDS, TM_OUT); #endif #endif }
int board_init(void) { /* Address of boot parameters */ gd->bd->bi_boot_params = PHYS_SDRAM + 0x100; setup_usb(); return 0; }
static void mainboard_init(device_t dev) { soc_configure_pads(padcfgs, ARRAY_SIZE(padcfgs)); soc_configure_funits(funitcfgs, ARRAY_SIZE(funitcfgs)); setup_ec_spi(); setup_usb(); setup_audio(); i2c_init(I2C1_BUS); /* for max98090 codec */ }
int board_init(void) { /* address of boot parameters */ gd->bd->bi_boot_params = PHYS_SDRAM + 0x100; #ifdef CONFIG_USB_EHCI_MX6 setup_usb(); #endif return 0; }
int board_early_init_f(void) { setup_iomux_uart(); #ifdef CONFIG_CMD_SATA setup_sata(); #endif #ifdef CONFIG_USB_EHCI_MX6 setup_usb(); #endif return 0; }
int board_init(void) { /* address of boot parameters */ gd->bd->bi_boot_params = PHYS_SDRAM + 0x100; setup_i2c(1, CONFIG_SYS_I2C_SPEED, 0x7f, &i2c_pad_info1); #ifdef CONFIG_USB_EHCI_MX6 setup_usb(); #endif return 0; }
int board_early_init_f(void) { int ret = 0; setup_iomux_uart(); #ifdef CONFIG_VIDEO_IPUV3 ret = setup_display(); #endif #ifdef CONFIG_USB_EHCI_MX6 setup_usb(); #endif return ret; }
int board_init(void) { /* Address of boot parameters */ gd->bd->bi_boot_params = PHYS_SDRAM + 0x100; setup_i2c(0, CONFIG_SYS_I2C_SPEED, 0x7f, &i2c_pad_info1); setup_i2c(1, CONFIG_SYS_I2C_SPEED, 0x7f, &i2c_pad_info2); setup_i2c(3, CONFIG_SYS_I2C_SPEED, 0x7f, &i2c_pad_info4); setup_fec(CONFIG_FEC_ENET_DEV); setup_usb(); return 0; }
static __init void davinci_sffsdr_init(void) { struct davinci_soc_info *soc_info = &davinci_soc_info; platform_add_devices(davinci_sffsdr_devices, ARRAY_SIZE(davinci_sffsdr_devices)); sffsdr_init_i2c(); davinci_serial_init(&uart_config); soc_info->emac_pdata->phy_mask = SFFSDR_PHY_MASK; soc_info->emac_pdata->mdio_max_freq = SFFSDR_MDIO_FREQUENCY; setup_usb(0, 0); /* We support only peripheral mode. */ /* mux VLYNQ pins */ davinci_cfg_reg(DM644X_VLYNQEN); davinci_cfg_reg(DM644X_VLYNQWD); }
void Reset_Handler() { // Copy the data segment initializers from flash to SRAM. uint32_t *src=_sidata; for(uint32_t *dest=_sdata;dest<_edata;dest++) *dest=*src++; // Zero fill the bss segment. for(uint32_t *dest=_sbss;dest<_ebss;dest++) *dest=0; #ifdef CCM_MEMORY // Zero fill the CCM segment also. this is used by kernels to check if they're initialized (bad) for(uint32_t *dest=_sccm;dest<_eccm;dest++) *dest=0; #endif // misc initializations system_init(); // in board.c board_init(); // USB first since it can be lengthy and should not be interrupted #ifndef NO_USB setup_usb(); #endif #ifndef NO_AUDIO audio_init(); #endif #if VGA_MODE!=NONE // be careful to initialize everything before (line callbacks ..) vga_setup(); #endif // Call the application's entry point. main(); // If main ever exits, lock up. for(;;); }
int board_init(void) { /* address of boot parameters */ gd->bd->bi_boot_params = PHYS_SDRAM + 0x100; #ifdef CONFIG_MXC_SPI setup_spi(); #endif if (is_mx6dq() || is_mx6dqp()) setup_i2c(1, CONFIG_SYS_I2C_SPEED, 0x7f, &mx6q_i2c_pad_info1); else setup_i2c(1, CONFIG_SYS_I2C_SPEED, 0x7f, &mx6dl_i2c_pad_info1); #if defined(CONFIG_VIDEO_IPUV3) setup_display(); #endif #ifdef CONFIG_USB_EHCI_MX6 setup_usb(); #endif return 0; }
static int evm_u35_setup(struct i2c_client *client, int gpio, unsigned ngpio, void *c) { /* p0 = nDRV_VBUS (initial: don't supply it) */ gpio_request(gpio + 0, "nDRV_VBUS"); gpio_direction_output(gpio + 0, 1); /* p1 = VDDIMX_EN */ gpio_request(gpio + 1, "VDDIMX_EN"); gpio_direction_output(gpio + 1, 1); /* p2 = VLYNQ_EN */ gpio_request(gpio + 2, "VLYNQ_EN"); gpio_direction_output(gpio + 2, 1); /* p3 = n3V3_CF_RESET (initial: stay in reset) */ gpio_request(gpio + 3, "nCF_RESET"); gpio_direction_output(gpio + 3, 0); /* (p4 unused) */ /* p5 = 1V8_WLAN_RESET (initial: stay in reset) */ gpio_request(gpio + 5, "WLAN_RESET"); gpio_direction_output(gpio + 5, 1); /* p6 = nATA_SEL (initial: select) */ gpio_request(gpio + 6, "nATA_SEL"); gpio_direction_output(gpio + 6, 0); /* p7 = nCF_SEL (initial: deselect) */ gpio_request(gpio + 7, "nCF_SEL"); gpio_direction_output(gpio + 7, 1); /* irlml6401 switches over 1A, in under 8 msec; * now it can be managed by nDRV_VBUS ... */ setup_usb(500, 8); return 0; }
static void mainboard_init(device_t dev) { /* disable mmu and d-cache before setting up secure world.*/ dcache_mmu_disable(); start_tzbsp(); /* Setup mmu and d-cache again as non secure entries. */ setup_mmu(DRAM_INITIALIZED); setup_usb(); if (IS_ENABLED(CONFIG_CHROMEOS)) { /* Copy WIFI calibration data into CBMEM. */ cbmem_add_vpd_calibration_data(); } /* * Make sure bootloader can issue sounds The frequency is calculated * as "<frame_rate> * <bit_width> * <channels> * 4", i.e. * * 48000 * 2 * 16 * 4 = 6144000 */ //audio_clock_config(6144000); }
static __init void ntosd_644xa_init(void) { davinci_psc_init(); #if defined(CONFIG_BLK_DEV_DAVINCI) || defined(CONFIG_BLK_DEV_DAVINCI_MODULE) printk(KERN_WARNING "WARNING: both IDE and NOR flash are enabled, " "but share pins.\n\t Disable IDE for NOR support.\n"); #endif platform_add_devices(ntosd_644xa_devices, ARRAY_SIZE(ntosd_644xa_devices)); setup_usb(); #if defined(CONFIG_LEDS_GPIO) || defined(CONFIG_LEDS_GPIO_MODULE) davinci_mux_peripheral(DAVINCI_MUX_AEAW0, 0); davinci_mux_peripheral(DAVINCI_MUX_AEAW1, 0); davinci_mux_peripheral(DAVINCI_MUX_AEAW2, 0); davinci_mux_peripheral(DAVINCI_MUX_AEAW3, 0); davinci_mux_peripheral(DAVINCI_MUX_AEAW4, 0); davinci_mux_peripheral(DAVINCI_MUX_VLYNQEN, 0); #endif }
int main(void) { /* Setup the LED's for output. */ ioinit(); setup_usb(); GlobalInterruptEnable(); prvIncrementResetCount(); xTaskCreate(VirtualSerialTask, (const portCHAR *) "ViSeTask", configMINIMAL_STACK_SIZE, NULL, ViSe_TASK_PRIORITY, NULL); xTaskCreate(vLedPwm, ( const portCHAR * )"Ape", configMINIMAL_STACK_SIZE, NULL, tskIDLE_PRIORITY + 1, NULL); xTaskCreate(vUserInput, ( const portCHAR * )"ui", configMINIMAL_STACK_SIZE*2, NULL, tskIDLE_PRIORITY + 2, NULL); vTaskStartScheduler(); return 0; }
int board_init(void) { /* address of boot parameters */ gd->bd->bi_boot_params = PHYS_SDRAM + 0x100; #ifdef CONFIG_SYS_I2C_MXC setup_i2c(0, CONFIG_SYS_I2C_SPEED, 0x7f, &i2c_pad_info1); setup_elan_pads(); #endif #ifdef CONFIG_FEC_MXC setup_fec(); #endif #ifdef CONFIG_MXC_EPDC setup_epdc(); #endif #ifdef CONFIG_USB_EHCI_MX6 setup_usb(); #endif return 0; }
int board_init(void) { /* address of boot parameters */ gd->bd->bi_boot_params = PHYS_SDRAM + 0x100; #ifdef CONFIG_MXC_SPI setup_spi(); #endif setup_i2c(1, CONFIG_SYS_I2C_SPEED, 0x7f, &i2c_pad_info1); #ifdef CONFIG_USB_EHCI_MX6 setup_usb(); #endif #if defined(CONFIG_MX6DL) && defined(CONFIG_MXC_EPDC) setup_epdc(); #endif #ifdef CONFIG_CMD_SATA setup_sata(); #endif return 0; }
/* this happens after cpu_init where exynos resources are set */ static void mainboard_init(device_t dev) { int dp_tries; struct s5p_dp_device dp_device = { .base = exynos_dp1, .video_info = &dp_video_info, }; void *fb_addr = (void *)(get_fb_base_kb() * KiB); prepare_usb(); gpio_init(); setup_storage(); i2c_init(TPS65090_BUS, I2C_0_SPEED, I2C_SLAVE); i2c_init(7, I2C_0_SPEED, I2C_SLAVE); tmu_init(&exynos5250_tmu_info); /* Clock Gating all the unused IP's to save power */ clock_gate(); /* Disable USB3.0 PLL to save 250mW of power */ disable_usb30_pll(); sdmmc_vdd(); set_vbe_mode_info_valid(&edid, (uintptr_t)fb_addr); lcd_vdd(); // FIXME: should timeout do { udelay(50); } while (!exynos_dp_hotplug()); exynos_dp_bridge_setup(); for (dp_tries = 1; dp_tries <= MAX_DP_TRIES; dp_tries++) { exynos_dp_bridge_init(); if (exynos_dp_hotplug()) { exynos_dp_reset(); continue; } if (dp_controller_init(&dp_device)) continue; udelay(LCD_T3_DELAY_MS * 1000); backlight_vdd(); backlight_pwm(); backlight_en(); /* if we're here, we're successful */ break; } if (dp_tries > MAX_DP_TRIES) printk(BIOS_ERR, "%s: Failed to set up displayport\n", __func__); setup_usb(); // Uncomment to get excessive GPIO output: // gpio_info(); }