|
@@ -194,3 +194,89 @@ static struct platform_nand_data h2_nand_platdata = {
|
|
.nr_chips = 1,
|
|
.nr_chips = 1,
|
|
.chip_offset = 0,
|
|
.chip_offset = 0,
|
|
.nr_partitions = ARRAY_SIZE(h2_nand_partitions),
|
|
.nr_partitions = ARRAY_SIZE(h2_nand_partitions),
|
|
|
|
+ .partitions = h2_nand_partitions,
|
|
|
|
+ .options = NAND_SAMSUNG_LP_OPTIONS,
|
|
|
|
+ },
|
|
|
|
+ .ctrl = {
|
|
|
|
+ .cmd_ctrl = omap1_nand_cmd_ctl,
|
|
|
|
+ .dev_ready = h2_nand_dev_ready,
|
|
|
|
+ },
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+static struct resource h2_nand_resource = {
|
|
|
|
+ .flags = IORESOURCE_MEM,
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+static struct platform_device h2_nand_device = {
|
|
|
|
+ .name = "gen_nand",
|
|
|
|
+ .id = 0,
|
|
|
|
+ .dev = {
|
|
|
|
+ .platform_data = &h2_nand_platdata,
|
|
|
|
+ },
|
|
|
|
+ .num_resources = 1,
|
|
|
|
+ .resource = &h2_nand_resource,
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+static struct smc91x_platdata h2_smc91x_info = {
|
|
|
|
+ .flags = SMC91X_USE_16BIT | SMC91X_NOWAIT,
|
|
|
|
+ .leda = RPC_LED_100_10,
|
|
|
|
+ .ledb = RPC_LED_TX_RX,
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+static struct resource h2_smc91x_resources[] = {
|
|
|
|
+ [0] = {
|
|
|
|
+ .start = OMAP1610_ETHR_START, /* Physical */
|
|
|
|
+ .end = OMAP1610_ETHR_START + 0xf,
|
|
|
|
+ .flags = IORESOURCE_MEM,
|
|
|
|
+ },
|
|
|
|
+ [1] = {
|
|
|
|
+ .flags = IORESOURCE_IRQ | IORESOURCE_IRQ_LOWEDGE,
|
|
|
|
+ },
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+static struct platform_device h2_smc91x_device = {
|
|
|
|
+ .name = "smc91x",
|
|
|
|
+ .id = 0,
|
|
|
|
+ .dev = {
|
|
|
|
+ .platform_data = &h2_smc91x_info,
|
|
|
|
+ },
|
|
|
|
+ .num_resources = ARRAY_SIZE(h2_smc91x_resources),
|
|
|
|
+ .resource = h2_smc91x_resources,
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+static struct resource h2_kp_resources[] = {
|
|
|
|
+ [0] = {
|
|
|
|
+ .start = INT_KEYBOARD,
|
|
|
|
+ .end = INT_KEYBOARD,
|
|
|
|
+ .flags = IORESOURCE_IRQ,
|
|
|
|
+ },
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+static const struct matrix_keymap_data h2_keymap_data = {
|
|
|
|
+ .keymap = h2_keymap,
|
|
|
|
+ .keymap_size = ARRAY_SIZE(h2_keymap),
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+static struct omap_kp_platform_data h2_kp_data = {
|
|
|
|
+ .rows = 8,
|
|
|
|
+ .cols = 8,
|
|
|
|
+ .keymap_data = &h2_keymap_data,
|
|
|
|
+ .rep = true,
|
|
|
|
+ .delay = 9,
|
|
|
|
+ .dbounce = true,
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+static struct platform_device h2_kp_device = {
|
|
|
|
+ .name = "omap-keypad",
|
|
|
|
+ .id = -1,
|
|
|
|
+ .dev = {
|
|
|
|
+ .platform_data = &h2_kp_data,
|
|
|
|
+ },
|
|
|
|
+ .num_resources = ARRAY_SIZE(h2_kp_resources),
|
|
|
|
+ .resource = h2_kp_resources,
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+#define H2_IRDA_FIRSEL_GPIO_PIN 17
|
|
|
|
+
|
|
|
|
+static struct omap_irda_config h2_irda_data = {
|
|
|
|
+ .transceiver_cap = IR_SIRMODE | IR_MIRMODE | IR_FIRMODE,
|