void lradc_setup_channels_for_polling() { unsigned char i; int trigger_bitmap = 0; imx233_lradc_init(); for (i=0; i<MAX_USER_LRADC; i++) { imx233_lradc_setup_channel(i, 1, 0, 0, i); imx233_lradc_enable_channel_irq(i, false); imx233_lradc_clear_channel_irq(i); trigger_bitmap |= 1<<i; } imx233_lradc_setup_delay(LRADC_DELAY_INDEX, trigger_bitmap, 1<<LRADC_DELAY_INDEX, 0, 100); imx233_lradc_kick_delay(LRADC_DELAY_INDEX); }
void system_init(void) { /* NOTE: don't use anything here that might require tick task ! * It is initialized by kernel_init *after* system_init(). * The main() will naturally set cpu speed to normal after kernel_init() * so don't bother if the cpu is running at 24MHz here. * Make sure IO clock is running at expected speed */ imx233_clkctrl_init(); imx233_clkctrl_enable(CLK_PLL, true); #if IMX233_SUBTARGET >= 3700 imx233_clkctrl_set_frac_div(CLK_IO, 18); // clk_io@clk_pll #endif imx233_rtc_init(); imx233_icoll_init(); imx233_pinctrl_init(); imx233_timrot_init(); imx233_dma_init(); imx233_ssp_init(); #if IMX233_SUBTARGET >= 3700 imx233_dcp_init(); #endif imx233_pwm_init(); imx233_lradc_init(); imx233_power_init(); imx233_i2c_init(); imx233_powermgmt_init(); /* setup watchdog */ watchdog_init(); /* make sure auto-slow is disable now, we don't know at which frequency we * are running and auto-slow could violate constraints on {xbus,hbus} */ imx233_clkctrl_enable_auto_slow(false); imx233_clkctrl_set_auto_slow_div(BV_CLKCTRL_HBUS_SLOW_DIV__BY8); cpu_frequency = imx233_clkctrl_get_freq(CLK_CPU); #if !defined(BOOTLOADER) && CONFIG_TUNER != 0 fmradio_i2c_init(); #endif }