void at91_add_device_i2c(short i2c_id, struct i2c_board_info *devices, int nr_devices) { struct i2c_gpio_platform_data *pdata; i2c_register_board_info(i2c_id, devices, nr_devices); switch (i2c_id) { case 0: pdata = &pdata_i2c0; break; case 1: pdata = &pdata_i2c1; break; case 2: pdata = &pdata_i2c2; break; default: return; } at91_set_GPIO_periph(pdata->sda_pin, 1); /* TWD (SDA) */ at91_set_multi_drive(pdata->sda_pin, 1); at91_set_GPIO_periph(pdata->scl_pin, 1); /* TWCK (SCL) */ at91_set_multi_drive(pdata->scl_pin, 1); add_generic_device_res("i2c-gpio", i2c_id, NULL, 0, pdata); }
static void __init ek_add_device_buttons(void) { at91_set_GPIO_periph(AT91_PIN_PC5, 1); at91_set_deglitch(AT91_PIN_PC5, 1); at91_set_GPIO_periph(AT91_PIN_PC4, 1); at91_set_deglitch(AT91_PIN_PC4, 1); platform_device_register(&ek_button_device); }
static void __init neocore926_add_device_buttons(void) { at91_set_GPIO_periph(AT91_PIN_PC5, 0); /* left button */ at91_set_deglitch(AT91_PIN_PC5, 1); at91_set_GPIO_periph(AT91_PIN_PC4, 0); /* right button */ at91_set_deglitch(AT91_PIN_PC4, 1); platform_device_register(&neocore926_button_device); }
void __init at91_add_device_i2c(struct i2c_board_info *devices, int nr_devices) { at91_set_GPIO_periph(AT91_PIN_PA25, 1); /* TWD (SDA) */ at91_set_multi_drive(AT91_PIN_PA25, 1); at91_set_GPIO_periph(AT91_PIN_PA26, 1); /* TWCK (SCL) */ at91_set_multi_drive(AT91_PIN_PA26, 1); i2c_register_board_info(0, devices, nr_devices); platform_device_register(&at91rm9200_twi_device); }
void __init at91_add_device_i2c(struct i2c_board_info *devices, int nr_devices) { at91_set_GPIO_periph(AT91_PIN_PA23, 1); /* */ at91_set_multi_drive(AT91_PIN_PA23, 1); at91_set_GPIO_periph(AT91_PIN_PA24, 1); /* */ at91_set_multi_drive(AT91_PIN_PA24, 1); i2c_register_board_info(0, devices, nr_devices); platform_device_register(&at91sam9rl_twi_device); }
void at91_add_device_i2c(short i2c_id, struct i2c_board_info *devices, int nr_devices) { struct i2c_gpio_platform_data *pdata = &pdata_i2c; i2c_register_board_info(0, devices, nr_devices); at91_set_GPIO_periph(pdata->sda_pin, 1); /* TWD (SDA) */ at91_set_multi_drive(pdata->sda_pin, 1); at91_set_GPIO_periph(pdata->scl_pin, 1); /* TWCK (SCL) */ at91_set_multi_drive(pdata->scl_pin, 1); add_generic_device_res("i2c-gpio", 0, NULL, 0, pdata); }
static void __init ek_add_device_buttons(void) { at91_set_GPIO_periph(AT91_PIN_PB10, 1); /* user push button, pull up enabled */ at91_set_deglitch(AT91_PIN_PB10, 1); platform_device_register(&ek_button_device); }
static void __init ek_add_device_button(void) { at91_set_GPIO_periph(AT91_PIN_PB10, 1); /* user push button, pull up enabled */ at91_set_deglitch(AT91_PIN_PB10, 1); export_env_ull("dfu_button", AT91_PIN_PB10); }
static void __init ek_add_device_buttons(void) { int i; for (i = 0; i < ARRAY_SIZE(ek_buttons); i++) { at91_set_GPIO_periph(ek_buttons[i].gpio, 1); at91_set_deglitch(ek_buttons[i].gpio, 1); } platform_device_register(&ek_button_device); }
void __init at91_add_device_i2c(short i2c_id, struct i2c_board_info *devices, int nr_devices) { i2c_register_board_info(i2c_id, devices, nr_devices); if (i2c_id == 0) { at91_set_GPIO_periph(AT91_PIN_PA20, 1); /* TWD (SDA) */ at91_set_multi_drive(AT91_PIN_PA20, 1); at91_set_GPIO_periph(AT91_PIN_PA21, 1); /* TWCK (SCL) */ at91_set_multi_drive(AT91_PIN_PA21, 1); platform_device_register(&at91sam9g45_twi0_device); } else { at91_set_GPIO_periph(AT91_PIN_PB10, 1); /* TWD (SDA) */ at91_set_multi_drive(AT91_PIN_PB10, 1); at91_set_GPIO_periph(AT91_PIN_PB11, 1); /* TWCK (SCL) */ at91_set_multi_drive(AT91_PIN_PB11, 1); platform_device_register(&at91sam9g45_twi1_device); } }
static void ek_device_add_keyboard(void) { int i; for (i = 0; i < gk_pdata.nbuttons; i++) { /* user push button, pull up enabled */ keys[i].active_low = 1; at91_set_GPIO_periph(keys[i].gpio, keys[i].active_low); at91_set_deglitch(keys[i].gpio, 1); } add_gpio_keys_device(DEVICE_ID_DYNAMIC, &gk_pdata); }
static void usb_a9260_keyboard_device_dab_mmx(void) { int i; for (i = 0; i < gk_pdata.nbuttons; i++) { /* user push button, pull up enabled */ keys[i].active_low = 1; at91_set_GPIO_periph(keys[i].gpio, keys[i].active_low); at91_set_deglitch(keys[i].gpio, 1); } add_gpio_keys_device(-1, &gk_pdata); }
void add_w1(void) { at91_set_GPIO_periph(w1_gpio_pdata.pin, 1); at91_set_multi_drive(w1_gpio_pdata.pin, 1); platform_device_register(&w1_device); }