static struct gpio_pin gpio_pins_mtr_0_0[] = { { .name = "NETH_RST", .pin = { .gpio = AT91_PIN_PC6, .flags = GPIOF_OUT_INIT_HIGH, .label = "eth0-enabled", }, }, { .name = "PWRMON", .pin = { .gpio = AT91_PIN_PA23, .flags = GPIOF_IN, .label = "radio-power", }, }, { .name = "3G_RST", .pin = { .gpio = AT91_PIN_PA22, .flags = GPIOF_OPEN_DRAIN | GPIOF_INIT_HIGH, .label = "radio-reset", }, }, { .name = "3G_ONOFF", .pin = { .gpio = AT91_PIN_PA21, .flags = GPIOF_OPEN_DRAIN | GPIOF_INIT_HIGH, .label = "radio-enabled", }, }, { .name = "DEVICE_RESET", .pin = { .gpio = AT91_PIN_PC4, .flags = GPIOF_IN, .label = "reset", }, .active_low = 1, }, { .name = "LS_LED", .pin = { .gpio = AT91_PIN_PC16, #if LED_LS_CONTROLLABLE .flags = GPIOF_OUT_INIT_HIGH, #else .flags = GPIOF_IN, #endif .label = "led-ls", }, .active_low = 1, }, { .name = "STATUS_LED", .pin = { .gpio = AT91_PIN_PC21, .flags = GPIOF_OUT_INIT_LOW, .label = "led-status", }, .active_low = 1, }, { .name = "STATUS_LED", .pin = { .gpio = AT91_PIN_PC21, .flags = GPIOF_OUT_INIT_LOW, .label = "led-a", }, .active_low = 1, }, { .name = "LED3", .pin = { .gpio = AT91_PIN_PC15, .flags = GPIOF_OUT_INIT_HIGH, .label = "led-wifi", }, .active_low = 1, }, { .name = "LED3", .pin = { .gpio = AT91_PIN_PC15, .flags = GPIOF_OUT_INIT_HIGH, .label = "led-b", }, .active_low = 1, }, { .name = "LED4", .pin = { .gpio = AT91_PIN_PC20, .flags = GPIOF_OUT_INIT_HIGH, .label = "led-cd", }, .active_low = 1, }, { .name = "LED4", .pin = { .gpio = AT91_PIN_PC20, .flags = GPIOF_OUT_INIT_HIGH, .label = "led-c", }, .active_low = 1, }, { .name = "LED6", .pin = { .gpio = AT91_PIN_PC19, .flags = GPIOF_OUT_INIT_HIGH, .label = "led-sig1", }, .active_low = 1, }, { .name = "LED6", .pin = { .gpio = AT91_PIN_PC19, .flags = GPIOF_OUT_INIT_HIGH, .label = "led-d", }, .active_low = 1, }, { .name = "LED7", .pin = { .gpio = AT91_PIN_PC18, .flags = GPIOF_OUT_INIT_HIGH, .label = "led-sig2", }, .active_low = 1, }, { .name = "LED7", .pin = { .gpio = AT91_PIN_PC18, .flags = GPIOF_OUT_INIT_HIGH, .label = "led-e", }, .active_low = 1, }, { .name = "LED8", .pin = { .gpio = AT91_PIN_PC17, .flags = GPIOF_OUT_INIT_HIGH, .label = "led-sig3", }, .active_low = 1, }, { .name = "LED8", .pin = { .gpio = AT91_PIN_PC17, .flags = GPIOF_OUT_INIT_HIGH, .label = "led-f", }, .active_low = 1, }, { .name = "RI_B", .pin = { .gpio = AT91_PIN_PC25, .flags = GPIOF_OUT_INIT_HIGH, .label = "extserial-ri", }, .active_low = 1, }, { .name = "DTR_B", .pin = { .gpio = AT91_PIN_PC26, .flags = GPIOF_IN, .label = "extserial-dtr", }, .active_low = 1, }, { .name = "DSR_B", .pin = { .gpio = AT91_PIN_PC27, .flags = GPIOF_OUT_INIT_HIGH, .label = "extserial-dsr", }, .active_low = 1, }, { .name = "DCD_B", .pin = { .gpio = AT91_PIN_PC28, .flags = GPIOF_OUT_INIT_HIGH, .label = "extserial-dcd", }, .active_low = 1, }, { .name = "BT_EN", .pin = { .gpio = AT91_PIN_PA28, .flags = GPIOF_OUT_INIT_LOW, .label = "bt-enabled", }, }, { .name = "WLAN_EN", .pin = { .gpio = AT91_PIN_PA27, .flags = GPIOF_OUT_INIT_LOW, .label = "wlan-enabled", }, }, { }, }; static struct gpio_pin gpio_pins_mtr_0_1[] = { { .name = "NETH_RST", .pin = { .gpio = AT91_PIN_PC6, .flags = GPIOF_OUT_INIT_HIGH, .label = "eth0-enabled", }, }, { .name = "PWRMON", .pin = { .gpio = AT91_PIN_PA23, .flags = GPIOF_IN, .label = "radio-power", }, }, { .name = "3G_RST", .pin = { .gpio = AT91_PIN_PA22, .flags = GPIOF_OUT_INIT_HIGH | GPIOF_PULLUP, .label = "radio-reset", }, }, { .name = "3G_ONOFF", .pin = { .gpio = AT91_PIN_PA21, .flags = GPIOF_OUT_INIT_HIGH | GPIOF_PULLUP, .label = "radio-enabled", }, }, { .name = "DEVICE_RESET", .pin = { .gpio = AT91_PIN_PC4, .flags = GPIOF_IN, .label = "reset", }, .active_low = 1, }, { .name = "LS_LED", .pin = { .gpio = AT91_PIN_PC16, #if LED_LS_CONTROLLABLE .flags = GPIOF_OUT_INIT_HIGH, #else .flags = GPIOF_IN, #endif .label = "led-ls", }, .active_low = 1, }, { .name = "STATUS_LED", .pin = { .gpio = AT91_PIN_PC21, .flags = GPIOF_OUT_INIT_LOW, .label = "led-status", }, .active_low = 1, }, { .name = "LED3", .pin = { .gpio = AT91_PIN_PC15, .flags = GPIOF_OUT_INIT_HIGH, .label = "led-wifi", }, .active_low = 1, }, { .name = "LED3", .pin = { .gpio = AT91_PIN_PC15, .flags = GPIOF_OUT_INIT_HIGH, .label = "led-b", }, .active_low = 1, }, { .name = "LED4", .pin = { .gpio = AT91_PIN_PC20, .flags = GPIOF_OUT_INIT_HIGH, .label = "led-cd", }, .active_low = 1, }, { .name = "LED4", .pin = { .gpio = AT91_PIN_PC20, .flags = GPIOF_OUT_INIT_HIGH, .label = "led-c", }, .active_low = 1, }, { .name = "LED6", .pin = { .gpio = AT91_PIN_PC19, .flags = GPIOF_OUT_INIT_HIGH, .label = "led-sig1", }, .active_low = 1, }, { .name = "LED6", .pin = { .gpio = AT91_PIN_PC19, .flags = GPIOF_OUT_INIT_HIGH, .label = "led-d", }, .active_low = 1, }, { .name = "LED7", .pin = { .gpio = AT91_PIN_PC18, .flags = GPIOF_OUT_INIT_HIGH, .label = "led-sig2", }, .active_low = 1, }, { .name = "LED7", .pin = { .gpio = AT91_PIN_PC18, .flags = GPIOF_OUT_INIT_HIGH, .label = "led-e", }, .active_low = 1, }, { .name = "LED8", .pin = { .gpio = AT91_PIN_PC17, .flags = GPIOF_OUT_INIT_HIGH, .label = "led-sig3", }, .active_low = 1, }, { .name = "LED8", .pin = { .gpio = AT91_PIN_PC17, .flags = GPIOF_OUT_INIT_HIGH, .label = "led-f", }, .active_low = 1, }, { .name = "RI_B", .pin = { .gpio = AT91_PIN_PC25, .flags = GPIOF_OUT_INIT_HIGH, .label = "extserial-ri", }, .active_low = 1, }, { .name = "DTR_B", .pin = { .gpio = AT91_PIN_PC26, .flags = GPIOF_IN, .label = "extserial-dtr", }, .active_low = 1, }, { .name = "DSR_B", .pin = { .gpio = AT91_PIN_PC27, .flags = GPIOF_OUT_INIT_HIGH, .label = "extserial-dsr", }, .active_low = 1, }, { .name = "DCD_B", .pin = { .gpio = AT91_PIN_PC28, .flags = GPIOF_OUT_INIT_HIGH, .label = "extserial-dcd", }, .active_low = 1, }, { .name = "BT_EN", .pin = { .gpio = AT91_PIN_PA28, .flags = GPIOF_OUT_INIT_LOW, .label = "bt-enabled", }, }, { .name = "WLAN_EN", .pin = { .gpio = AT91_PIN_PA27, .flags = GPIOF_OUT_INIT_LOW, .label = "wlan-enabled", }, }, { }, }; static struct attribute *mtr_platform_attributes[] = { &dev_attr_vendor_id.attr, &dev_attr_product_id.attr, &dev_attr_device_id.attr, &dev_attr_hw_version.attr, &dev_attr_imei.attr, &dev_attr_eth_mac.attr, &dev_attr_wifi_mac.attr, &dev_attr_reset.attr, &dev_attr_reset_monitor.attr, &dev_attr_radio_power_telit.attr, &dev_attr_radio_reset_telit.attr, &dev_attr_extserial_ri_gpio.attr, &dev_attr_extserial_dtr.attr, &dev_attr_extserial_dsr_gpio.attr, &dev_attr_extserial_dcd_gpio.attr, &dev_attr_eth0_enabled.attr, &dev_attr_bt_enabled.attr, &dev_attr_wlan_enabled.attr, &dev_attr_led_status.attr, &dev_attr_led_sig1_gpio.attr, &dev_attr_led_sig2_gpio.attr, &dev_attr_led_sig3_gpio.attr, &dev_attr_led_cd_gpio.attr, &dev_attr_led_wifi_gpio.attr, &dev_attr_led_a_gpio.attr, &dev_attr_led_b_gpio.attr, &dev_attr_led_c_gpio.attr, &dev_attr_led_d_gpio.attr, &dev_attr_led_e_gpio.attr, &dev_attr_led_f_gpio.attr, NULL, }; static struct attribute_group mtr_platform_attribute_group = { .attrs = mtr_platform_attributes };