Drop few unused omap board files. The support for ti81xx is known to
be incomplete and broken, and the 3430sdp is only used in few automated boot test systems AFAIK and those have been booting in device tree only mode for quite some time now. Note that this branch has a dependency to the related device tree changes and GPMC changes sent in a separate pull request. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQIcBAABAgAGBQJUY5y3AAoJEBvUPslcq6Vz8ooP/0aqtqBGZpAR5oI+WUrvA8OH 5Z9S0r23eMr7MPtvur/i9JEAPg8svU2QZcJkI2Ap7sTECCYwccZuoK3KPSDNDBHz oTje63iYl+3ZQwzIsbCS69AEMms7+J+kvP4DcUMLN7Xgy4xh1wjujY4p2q2ayu+b MTQuCHF3LAoM/VZuqSI9pghu8W66eGnRoYWY2054+JR9YjG8SF7gqMkuw+iWwVZ8 8vupI/phiAKaJ6eF/NvjYh3gNWHjxnqnLym8+JUJd/M/t1irge9Qa9ppNGmdgqrN lh26KyXypYwZRAxwPCRN0gq8hVZPOvwEKUN/x4kcLoK3TI1YESj0NtCDjTKknBTN y69pZRmm4kFl2m+52yoMqYGaajZ7NlVuWMHA+2TKLDe1Y0w92PLlB8InXKmrqqkV fXjBMBXgLy6kYkqvP+qVeIa+7UVrpvS/loyuTu4VfYwvajIYy7JMs57ryhm0A2H+ XXZ4owl98hTVAVXZ8hh3YDc1pIFlgI4GEb2N+r2vHUgifohhO+4OiG2evwUwVBZi Fc+ySkWH0WuPnR0rGQvoAbUcmSKE2ir7HH+Q4gKQvGISl3EuUnqsbFrtqY9kS3iI /xAz3UFCZ/3oe6EeyasvuGt3l9vHyzC1j2W4M57WxmFFrwqxm44A6km+UQfvmaCP g2tVua3TNdoTtoh+Zhox =yb48 -----END PGP SIGNATURE----- Merge tag 'omap-for-v3.19/cleanup-part1' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap into next/omap-gpmc Pull "omap clean-up for v3.19" from Tony Lindgren: Drop few unused omap board files. The support for ti81xx is known to be incomplete and broken, and the 3430sdp is only used in few automated boot test systems AFAIK and those have been booting in device tree only mode for quite some time now. Note that this branch has a dependency to the related device tree changes and GPMC changes sent in a separate pull request. * tag 'omap-for-v3.19/cleanup-part1' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap: ARM: OMAP2+: Drop board file for 3430sdp ARM: OMAP2+: Drop board file for ti8168evm Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
commit
594b5d51c6
|
@ -235,12 +235,6 @@ config MACH_TOUCHBOOK
|
|||
default y
|
||||
select OMAP_PACKAGE_CBB
|
||||
|
||||
config MACH_OMAP_3430SDP
|
||||
bool "OMAP 3430 SDP board"
|
||||
depends on ARCH_OMAP3
|
||||
default y
|
||||
select OMAP_PACKAGE_CBB
|
||||
|
||||
config MACH_NOKIA_N810
|
||||
bool
|
||||
|
||||
|
@ -282,16 +276,6 @@ config MACH_SBC3530
|
|||
default y
|
||||
select OMAP_PACKAGE_CUS
|
||||
|
||||
config MACH_TI8168EVM
|
||||
bool "TI8168 Evaluation Module"
|
||||
depends on SOC_TI81XX
|
||||
default y
|
||||
|
||||
config MACH_TI8148EVM
|
||||
bool "TI8148 Evaluation Module"
|
||||
depends on SOC_TI81XX
|
||||
default y
|
||||
|
||||
config OMAP3_EMU
|
||||
bool "OMAP3 debugging peripherals"
|
||||
depends on ARCH_OMAP3
|
||||
|
|
|
@ -246,7 +246,6 @@ obj-$(CONFIG_MACH_OMAP3530_LV_SOM) += board-omap3logic.o
|
|||
obj-$(CONFIG_MACH_OMAP3_TORPEDO) += board-omap3logic.o
|
||||
obj-$(CONFIG_MACH_OVERO) += board-overo.o
|
||||
obj-$(CONFIG_MACH_OMAP3_PANDORA) += board-omap3pandora.o
|
||||
obj-$(CONFIG_MACH_OMAP_3430SDP) += board-3430sdp.o
|
||||
obj-$(CONFIG_MACH_NOKIA_N8X0) += board-n8x0.o
|
||||
obj-$(CONFIG_MACH_NOKIA_RX51) += board-rx51.o sdram-nokia.o
|
||||
obj-$(CONFIG_MACH_NOKIA_RX51) += board-rx51-peripherals.o
|
||||
|
@ -260,8 +259,6 @@ obj-$(CONFIG_MACH_OMAP3517EVM) += board-am3517evm.o
|
|||
obj-$(CONFIG_MACH_CRANEBOARD) += board-am3517crane.o
|
||||
|
||||
obj-$(CONFIG_MACH_SBC3530) += board-omap3stalker.o
|
||||
obj-$(CONFIG_MACH_TI8168EVM) += board-ti8168evm.o
|
||||
obj-$(CONFIG_MACH_TI8148EVM) += board-ti8168evm.o
|
||||
|
||||
# Platform specific device init code
|
||||
|
||||
|
|
|
@ -1,604 +0,0 @@
|
|||
/*
|
||||
* linux/arch/arm/mach-omap2/board-3430sdp.c
|
||||
*
|
||||
* Copyright (C) 2007 Texas Instruments
|
||||
*
|
||||
* Modified from mach-omap2/board-generic.c
|
||||
*
|
||||
* Initial code: Syed Mohammed Khasim
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 as
|
||||
* published by the Free Software Foundation.
|
||||
*/
|
||||
|
||||
#include <linux/kernel.h>
|
||||
#include <linux/init.h>
|
||||
#include <linux/platform_device.h>
|
||||
#include <linux/delay.h>
|
||||
#include <linux/input.h>
|
||||
#include <linux/input/matrix_keypad.h>
|
||||
#include <linux/spi/spi.h>
|
||||
#include <linux/i2c/twl.h>
|
||||
#include <linux/regulator/machine.h>
|
||||
#include <linux/io.h>
|
||||
#include <linux/gpio.h>
|
||||
#include <linux/mmc/host.h>
|
||||
#include <linux/platform_data/spi-omap2-mcspi.h>
|
||||
#include <linux/platform_data/omap-twl4030.h>
|
||||
#include <linux/usb/phy.h>
|
||||
|
||||
#include <asm/mach-types.h>
|
||||
#include <asm/mach/arch.h>
|
||||
#include <asm/mach/map.h>
|
||||
|
||||
#include "common.h"
|
||||
#include <linux/omap-dma.h>
|
||||
#include <video/omapdss.h>
|
||||
#include <video/omap-panel-data.h>
|
||||
|
||||
#include "gpmc.h"
|
||||
|
||||
#include "soc.h"
|
||||
#include "board-flash.h"
|
||||
#include "mux.h"
|
||||
#include "sdram-qimonda-hyb18m512160af-6.h"
|
||||
#include "hsmmc.h"
|
||||
#include "pm.h"
|
||||
#include "control.h"
|
||||
#include "common-board-devices.h"
|
||||
|
||||
#define CONFIG_DISABLE_HFCLK 1
|
||||
|
||||
#define SDP3430_TS_GPIO_IRQ_SDPV1 3
|
||||
#define SDP3430_TS_GPIO_IRQ_SDPV2 2
|
||||
|
||||
#define ENABLE_VAUX3_DEDICATED 0x03
|
||||
#define ENABLE_VAUX3_DEV_GRP 0x20
|
||||
|
||||
#define TWL4030_MSECURE_GPIO 22
|
||||
|
||||
static uint32_t board_keymap[] = {
|
||||
KEY(0, 0, KEY_LEFT),
|
||||
KEY(0, 1, KEY_RIGHT),
|
||||
KEY(0, 2, KEY_A),
|
||||
KEY(0, 3, KEY_B),
|
||||
KEY(0, 4, KEY_C),
|
||||
KEY(1, 0, KEY_DOWN),
|
||||
KEY(1, 1, KEY_UP),
|
||||
KEY(1, 2, KEY_E),
|
||||
KEY(1, 3, KEY_F),
|
||||
KEY(1, 4, KEY_G),
|
||||
KEY(2, 0, KEY_ENTER),
|
||||
KEY(2, 1, KEY_I),
|
||||
KEY(2, 2, KEY_J),
|
||||
KEY(2, 3, KEY_K),
|
||||
KEY(2, 4, KEY_3),
|
||||
KEY(3, 0, KEY_M),
|
||||
KEY(3, 1, KEY_N),
|
||||
KEY(3, 2, KEY_O),
|
||||
KEY(3, 3, KEY_P),
|
||||
KEY(3, 4, KEY_Q),
|
||||
KEY(4, 0, KEY_R),
|
||||
KEY(4, 1, KEY_4),
|
||||
KEY(4, 2, KEY_T),
|
||||
KEY(4, 3, KEY_U),
|
||||
KEY(4, 4, KEY_D),
|
||||
KEY(5, 0, KEY_V),
|
||||
KEY(5, 1, KEY_W),
|
||||
KEY(5, 2, KEY_L),
|
||||
KEY(5, 3, KEY_S),
|
||||
KEY(5, 4, KEY_H),
|
||||
0
|
||||
};
|
||||
|
||||
static struct matrix_keymap_data board_map_data = {
|
||||
.keymap = board_keymap,
|
||||
.keymap_size = ARRAY_SIZE(board_keymap),
|
||||
};
|
||||
|
||||
static struct twl4030_keypad_data sdp3430_kp_data = {
|
||||
.keymap_data = &board_map_data,
|
||||
.rows = 5,
|
||||
.cols = 6,
|
||||
.rep = 1,
|
||||
};
|
||||
|
||||
#define SDP3430_LCD_PANEL_BACKLIGHT_GPIO 8
|
||||
#define SDP3430_LCD_PANEL_ENABLE_GPIO 5
|
||||
|
||||
static void __init sdp3430_display_init(void)
|
||||
{
|
||||
int r;
|
||||
|
||||
/*
|
||||
* the backlight GPIO doesn't directly go to the panel, it enables
|
||||
* an internal circuit on 3430sdp to create the signal V_BKL_28V,
|
||||
* this is connected to LED+ pin of the sharp panel. This GPIO
|
||||
* is left enabled in the board file, and not passed to the panel
|
||||
* as platform_data.
|
||||
*/
|
||||
r = gpio_request_one(SDP3430_LCD_PANEL_BACKLIGHT_GPIO,
|
||||
GPIOF_OUT_INIT_HIGH, "LCD Backlight");
|
||||
if (r)
|
||||
pr_err("failed to get LCD Backlight GPIO\n");
|
||||
|
||||
}
|
||||
|
||||
static struct panel_sharp_ls037v7dw01_platform_data sdp3430_lcd_pdata = {
|
||||
.name = "lcd",
|
||||
.source = "dpi.0",
|
||||
|
||||
.data_lines = 16,
|
||||
|
||||
.resb_gpio = SDP3430_LCD_PANEL_ENABLE_GPIO,
|
||||
.ini_gpio = -1,
|
||||
.mo_gpio = -1,
|
||||
.lr_gpio = -1,
|
||||
.ud_gpio = -1,
|
||||
};
|
||||
|
||||
static struct platform_device sdp3430_lcd_device = {
|
||||
.name = "panel-sharp-ls037v7dw01",
|
||||
.id = 0,
|
||||
.dev.platform_data = &sdp3430_lcd_pdata,
|
||||
};
|
||||
|
||||
static struct connector_dvi_platform_data sdp3430_dvi_connector_pdata = {
|
||||
.name = "dvi",
|
||||
.source = "tfp410.0",
|
||||
.i2c_bus_num = -1,
|
||||
};
|
||||
|
||||
static struct platform_device sdp3430_dvi_connector_device = {
|
||||
.name = "connector-dvi",
|
||||
.id = 0,
|
||||
.dev.platform_data = &sdp3430_dvi_connector_pdata,
|
||||
};
|
||||
|
||||
static struct encoder_tfp410_platform_data sdp3430_tfp410_pdata = {
|
||||
.name = "tfp410.0",
|
||||
.source = "dpi.0",
|
||||
.data_lines = 24,
|
||||
.power_down_gpio = -1,
|
||||
};
|
||||
|
||||
static struct platform_device sdp3430_tfp410_device = {
|
||||
.name = "tfp410",
|
||||
.id = 0,
|
||||
.dev.platform_data = &sdp3430_tfp410_pdata,
|
||||
};
|
||||
|
||||
static struct connector_atv_platform_data sdp3430_tv_pdata = {
|
||||
.name = "tv",
|
||||
.source = "venc.0",
|
||||
.connector_type = OMAP_DSS_VENC_TYPE_SVIDEO,
|
||||
.invert_polarity = false,
|
||||
};
|
||||
|
||||
static struct platform_device sdp3430_tv_connector_device = {
|
||||
.name = "connector-analog-tv",
|
||||
.id = 0,
|
||||
.dev.platform_data = &sdp3430_tv_pdata,
|
||||
};
|
||||
|
||||
static struct omap_dss_board_info sdp3430_dss_data = {
|
||||
.default_display_name = "lcd",
|
||||
};
|
||||
|
||||
static struct omap2_hsmmc_info mmc[] = {
|
||||
{
|
||||
.mmc = 1,
|
||||
/* 8 bits (default) requires S6.3 == ON,
|
||||
* so the SIM card isn't used; else 4 bits.
|
||||
*/
|
||||
.caps = MMC_CAP_4_BIT_DATA | MMC_CAP_8_BIT_DATA,
|
||||
.gpio_wp = 4,
|
||||
.deferred = true,
|
||||
},
|
||||
{
|
||||
.mmc = 2,
|
||||
.caps = MMC_CAP_4_BIT_DATA | MMC_CAP_8_BIT_DATA,
|
||||
.gpio_wp = 7,
|
||||
.deferred = true,
|
||||
},
|
||||
{} /* Terminator */
|
||||
};
|
||||
|
||||
static struct omap_tw4030_pdata omap_twl4030_audio_data = {
|
||||
.voice_connected = true,
|
||||
.custom_routing = true,
|
||||
|
||||
.has_hs = OMAP_TWL4030_LEFT | OMAP_TWL4030_RIGHT,
|
||||
.has_hf = OMAP_TWL4030_LEFT | OMAP_TWL4030_RIGHT,
|
||||
|
||||
.has_mainmic = true,
|
||||
.has_submic = true,
|
||||
.has_hsmic = true,
|
||||
.has_linein = OMAP_TWL4030_LEFT | OMAP_TWL4030_RIGHT,
|
||||
};
|
||||
|
||||
static int sdp3430_twl_gpio_setup(struct device *dev,
|
||||
unsigned gpio, unsigned ngpio)
|
||||
{
|
||||
/* gpio + 0 is "mmc0_cd" (input/IRQ),
|
||||
* gpio + 1 is "mmc1_cd" (input/IRQ)
|
||||
*/
|
||||
mmc[0].gpio_cd = gpio + 0;
|
||||
mmc[1].gpio_cd = gpio + 1;
|
||||
omap_hsmmc_late_init(mmc);
|
||||
|
||||
/* gpio + 7 is "sub_lcd_en_bkl" (output/PWM1) */
|
||||
gpio_request_one(gpio + 7, GPIOF_OUT_INIT_LOW, "sub_lcd_en_bkl");
|
||||
|
||||
/* gpio + 15 is "sub_lcd_nRST" (output) */
|
||||
gpio_request_one(gpio + 15, GPIOF_OUT_INIT_LOW, "sub_lcd_nRST");
|
||||
|
||||
omap_twl4030_audio_data.jack_detect = gpio + 2;
|
||||
omap_twl4030_audio_init("SDP3430", &omap_twl4030_audio_data);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static struct twl4030_gpio_platform_data sdp3430_gpio_data = {
|
||||
.pulldowns = BIT(2) | BIT(6) | BIT(8) | BIT(13)
|
||||
| BIT(16) | BIT(17),
|
||||
.setup = sdp3430_twl_gpio_setup,
|
||||
};
|
||||
|
||||
/* regulator consumer mappings */
|
||||
|
||||
/* ads7846 on SPI */
|
||||
static struct regulator_consumer_supply sdp3430_vaux3_supplies[] = {
|
||||
REGULATOR_SUPPLY("vcc", "spi1.0"),
|
||||
};
|
||||
|
||||
static struct regulator_consumer_supply sdp3430_vmmc1_supplies[] = {
|
||||
REGULATOR_SUPPLY("vmmc", "omap_hsmmc.0"),
|
||||
};
|
||||
|
||||
static struct regulator_consumer_supply sdp3430_vsim_supplies[] = {
|
||||
REGULATOR_SUPPLY("vmmc_aux", "omap_hsmmc.0"),
|
||||
};
|
||||
|
||||
static struct regulator_consumer_supply sdp3430_vmmc2_supplies[] = {
|
||||
REGULATOR_SUPPLY("vmmc", "omap_hsmmc.1"),
|
||||
};
|
||||
|
||||
/*
|
||||
* Apply all the fixed voltages since most versions of U-Boot
|
||||
* don't bother with that initialization.
|
||||
*/
|
||||
|
||||
/* VAUX1 for mainboard (irda and sub-lcd) */
|
||||
static struct regulator_init_data sdp3430_vaux1 = {
|
||||
.constraints = {
|
||||
.min_uV = 2800000,
|
||||
.max_uV = 2800000,
|
||||
.apply_uV = true,
|
||||
.valid_modes_mask = REGULATOR_MODE_NORMAL
|
||||
| REGULATOR_MODE_STANDBY,
|
||||
.valid_ops_mask = REGULATOR_CHANGE_MODE
|
||||
| REGULATOR_CHANGE_STATUS,
|
||||
},
|
||||
};
|
||||
|
||||
/* VAUX2 for camera module */
|
||||
static struct regulator_init_data sdp3430_vaux2 = {
|
||||
.constraints = {
|
||||
.min_uV = 2800000,
|
||||
.max_uV = 2800000,
|
||||
.apply_uV = true,
|
||||
.valid_modes_mask = REGULATOR_MODE_NORMAL
|
||||
| REGULATOR_MODE_STANDBY,
|
||||
.valid_ops_mask = REGULATOR_CHANGE_MODE
|
||||
| REGULATOR_CHANGE_STATUS,
|
||||
},
|
||||
};
|
||||
|
||||
/* VAUX3 for LCD board */
|
||||
static struct regulator_init_data sdp3430_vaux3 = {
|
||||
.constraints = {
|
||||
.min_uV = 2800000,
|
||||
.max_uV = 2800000,
|
||||
.apply_uV = true,
|
||||
.valid_modes_mask = REGULATOR_MODE_NORMAL
|
||||
| REGULATOR_MODE_STANDBY,
|
||||
.valid_ops_mask = REGULATOR_CHANGE_MODE
|
||||
| REGULATOR_CHANGE_STATUS,
|
||||
},
|
||||
.num_consumer_supplies = ARRAY_SIZE(sdp3430_vaux3_supplies),
|
||||
.consumer_supplies = sdp3430_vaux3_supplies,
|
||||
};
|
||||
|
||||
/* VAUX4 for OMAP VDD_CSI2 (camera) */
|
||||
static struct regulator_init_data sdp3430_vaux4 = {
|
||||
.constraints = {
|
||||
.min_uV = 1800000,
|
||||
.max_uV = 1800000,
|
||||
.apply_uV = true,
|
||||
.valid_modes_mask = REGULATOR_MODE_NORMAL
|
||||
| REGULATOR_MODE_STANDBY,
|
||||
.valid_ops_mask = REGULATOR_CHANGE_MODE
|
||||
| REGULATOR_CHANGE_STATUS,
|
||||
},
|
||||
};
|
||||
|
||||
/* VMMC1 for OMAP VDD_MMC1 (i/o) and MMC1 card */
|
||||
static struct regulator_init_data sdp3430_vmmc1 = {
|
||||
.constraints = {
|
||||
.min_uV = 1850000,
|
||||
.max_uV = 3150000,
|
||||
.valid_modes_mask = REGULATOR_MODE_NORMAL
|
||||
| REGULATOR_MODE_STANDBY,
|
||||
.valid_ops_mask = REGULATOR_CHANGE_VOLTAGE
|
||||
| REGULATOR_CHANGE_MODE
|
||||
| REGULATOR_CHANGE_STATUS,
|
||||
},
|
||||
.num_consumer_supplies = ARRAY_SIZE(sdp3430_vmmc1_supplies),
|
||||
.consumer_supplies = sdp3430_vmmc1_supplies,
|
||||
};
|
||||
|
||||
/* VMMC2 for MMC2 card */
|
||||
static struct regulator_init_data sdp3430_vmmc2 = {
|
||||
.constraints = {
|
||||
.min_uV = 1850000,
|
||||
.max_uV = 1850000,
|
||||
.apply_uV = true,
|
||||
.valid_modes_mask = REGULATOR_MODE_NORMAL
|
||||
| REGULATOR_MODE_STANDBY,
|
||||
.valid_ops_mask = REGULATOR_CHANGE_MODE
|
||||
| REGULATOR_CHANGE_STATUS,
|
||||
},
|
||||
.num_consumer_supplies = ARRAY_SIZE(sdp3430_vmmc2_supplies),
|
||||
.consumer_supplies = sdp3430_vmmc2_supplies,
|
||||
};
|
||||
|
||||
/* VSIM for OMAP VDD_MMC1A (i/o for DAT4..DAT7) */
|
||||
static struct regulator_init_data sdp3430_vsim = {
|
||||
.constraints = {
|
||||
.min_uV = 1800000,
|
||||
.max_uV = 3000000,
|
||||
.valid_modes_mask = REGULATOR_MODE_NORMAL
|
||||
| REGULATOR_MODE_STANDBY,
|
||||
.valid_ops_mask = REGULATOR_CHANGE_VOLTAGE
|
||||
| REGULATOR_CHANGE_MODE
|
||||
| REGULATOR_CHANGE_STATUS,
|
||||
},
|
||||
.num_consumer_supplies = ARRAY_SIZE(sdp3430_vsim_supplies),
|
||||
.consumer_supplies = sdp3430_vsim_supplies,
|
||||
};
|
||||
|
||||
static struct twl4030_platform_data sdp3430_twldata = {
|
||||
/* platform_data for children goes here */
|
||||
.gpio = &sdp3430_gpio_data,
|
||||
.keypad = &sdp3430_kp_data,
|
||||
|
||||
.vaux1 = &sdp3430_vaux1,
|
||||
.vaux2 = &sdp3430_vaux2,
|
||||
.vaux3 = &sdp3430_vaux3,
|
||||
.vaux4 = &sdp3430_vaux4,
|
||||
.vmmc1 = &sdp3430_vmmc1,
|
||||
.vmmc2 = &sdp3430_vmmc2,
|
||||
.vsim = &sdp3430_vsim,
|
||||
};
|
||||
|
||||
static int __init omap3430_i2c_init(void)
|
||||
{
|
||||
/* i2c1 for PMIC only */
|
||||
omap3_pmic_get_config(&sdp3430_twldata,
|
||||
TWL_COMMON_PDATA_USB | TWL_COMMON_PDATA_BCI |
|
||||
TWL_COMMON_PDATA_MADC | TWL_COMMON_PDATA_AUDIO,
|
||||
TWL_COMMON_REGULATOR_VDAC | TWL_COMMON_REGULATOR_VPLL2);
|
||||
sdp3430_twldata.vdac->constraints.apply_uV = true;
|
||||
sdp3430_twldata.vpll2->constraints.apply_uV = true;
|
||||
sdp3430_twldata.vpll2->constraints.name = "VDVI";
|
||||
|
||||
sdp3430_twldata.audio->codec->hs_extmute = 1;
|
||||
sdp3430_twldata.audio->codec->hs_extmute_gpio = -EINVAL;
|
||||
|
||||
omap3_pmic_init("twl4030", &sdp3430_twldata);
|
||||
|
||||
/* i2c2 on camera connector (for sensor control) and optional isp1301 */
|
||||
omap_register_i2c_bus(2, 400, NULL, 0);
|
||||
/* i2c3 on display connector (for DVI, tfp410) */
|
||||
omap_register_i2c_bus(3, 400, NULL, 0);
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void enable_board_wakeup_source(void)
|
||||
{
|
||||
/* T2 interrupt line (keypad) */
|
||||
omap_mux_init_signal("sys_nirq",
|
||||
OMAP_WAKEUP_EN | OMAP_PIN_INPUT_PULLUP);
|
||||
}
|
||||
|
||||
static struct usbhs_phy_data phy_data[] __initdata = {
|
||||
{
|
||||
.port = 1,
|
||||
.reset_gpio = 57,
|
||||
.vcc_gpio = -EINVAL,
|
||||
},
|
||||
{
|
||||
.port = 2,
|
||||
.reset_gpio = 61,
|
||||
.vcc_gpio = -EINVAL,
|
||||
},
|
||||
};
|
||||
|
||||
static struct usbhs_omap_platform_data usbhs_bdata __initdata = {
|
||||
|
||||
.port_mode[0] = OMAP_EHCI_PORT_MODE_PHY,
|
||||
.port_mode[1] = OMAP_EHCI_PORT_MODE_PHY,
|
||||
};
|
||||
|
||||
#ifdef CONFIG_OMAP_MUX
|
||||
static struct omap_board_mux board_mux[] __initdata = {
|
||||
{ .reg_offset = OMAP_MUX_TERMINATOR },
|
||||
};
|
||||
#else
|
||||
#define board_mux NULL
|
||||
#endif
|
||||
|
||||
/*
|
||||
* SDP3430 V2 Board CS organization
|
||||
* Different from SDP3430 V1. Now 4 switches used to specify CS
|
||||
*
|
||||
* See also the Switch S8 settings in the comments.
|
||||
*/
|
||||
static char chip_sel_3430[][GPMC_CS_NUM] = {
|
||||
{PDC_NOR, PDC_NAND, PDC_ONENAND, DBG_MPDB, 0, 0, 0, 0}, /* S8:1111 */
|
||||
{PDC_ONENAND, PDC_NAND, PDC_NOR, DBG_MPDB, 0, 0, 0, 0}, /* S8:1110 */
|
||||
{PDC_NAND, PDC_ONENAND, PDC_NOR, DBG_MPDB, 0, 0, 0, 0}, /* S8:1101 */
|
||||
};
|
||||
|
||||
static struct mtd_partition sdp_nor_partitions[] = {
|
||||
/* bootloader (U-Boot, etc) in first sector */
|
||||
{
|
||||
.name = "Bootloader-NOR",
|
||||
.offset = 0,
|
||||
.size = SZ_256K,
|
||||
.mask_flags = MTD_WRITEABLE, /* force read-only */
|
||||
},
|
||||
/* bootloader params in the next sector */
|
||||
{
|
||||
.name = "Params-NOR",
|
||||
.offset = MTDPART_OFS_APPEND,
|
||||
.size = SZ_256K,
|
||||
.mask_flags = 0,
|
||||
},
|
||||
/* kernel */
|
||||
{
|
||||
.name = "Kernel-NOR",
|
||||
.offset = MTDPART_OFS_APPEND,
|
||||
.size = SZ_2M,
|
||||
.mask_flags = 0
|
||||
},
|
||||
/* file system */
|
||||
{
|
||||
.name = "Filesystem-NOR",
|
||||
.offset = MTDPART_OFS_APPEND,
|
||||
.size = MTDPART_SIZ_FULL,
|
||||
.mask_flags = 0
|
||||
}
|
||||
};
|
||||
|
||||
static struct mtd_partition sdp_onenand_partitions[] = {
|
||||
{
|
||||
.name = "X-Loader-OneNAND",
|
||||
.offset = 0,
|
||||
.size = 4 * (64 * 2048),
|
||||
.mask_flags = MTD_WRITEABLE /* force read-only */
|
||||
},
|
||||
{
|
||||
.name = "U-Boot-OneNAND",
|
||||
.offset = MTDPART_OFS_APPEND,
|
||||
.size = 2 * (64 * 2048),
|
||||
.mask_flags = MTD_WRITEABLE /* force read-only */
|
||||
},
|
||||
{
|
||||
.name = "U-Boot Environment-OneNAND",
|
||||
.offset = MTDPART_OFS_APPEND,
|
||||
.size = 1 * (64 * 2048),
|
||||
},
|
||||
{
|
||||
.name = "Kernel-OneNAND",
|
||||
.offset = MTDPART_OFS_APPEND,
|
||||
.size = 16 * (64 * 2048),
|
||||
},
|
||||
{
|
||||
.name = "File System-OneNAND",
|
||||
.offset = MTDPART_OFS_APPEND,
|
||||
.size = MTDPART_SIZ_FULL,
|
||||
},
|
||||
};
|
||||
|
||||
static struct mtd_partition sdp_nand_partitions[] = {
|
||||
/* All the partition sizes are listed in terms of NAND block size */
|
||||
{
|
||||
.name = "X-Loader-NAND",
|
||||
.offset = 0,
|
||||
.size = 4 * (64 * 2048),
|
||||
.mask_flags = MTD_WRITEABLE, /* force read-only */
|
||||
},
|
||||
{
|
||||
.name = "U-Boot-NAND",
|
||||
.offset = MTDPART_OFS_APPEND, /* Offset = 0x80000 */
|
||||
.size = 10 * (64 * 2048),
|
||||
.mask_flags = MTD_WRITEABLE, /* force read-only */
|
||||
},
|
||||
{
|
||||
.name = "Boot Env-NAND",
|
||||
|
||||
.offset = MTDPART_OFS_APPEND, /* Offset = 0x1c0000 */
|
||||
.size = 6 * (64 * 2048),
|
||||
},
|
||||
{
|
||||
.name = "Kernel-NAND",
|
||||
.offset = MTDPART_OFS_APPEND, /* Offset = 0x280000 */
|
||||
.size = 40 * (64 * 2048),
|
||||
},
|
||||
{
|
||||
.name = "File System - NAND",
|
||||
.size = MTDPART_SIZ_FULL,
|
||||
.offset = MTDPART_OFS_APPEND, /* Offset = 0x780000 */
|
||||
},
|
||||
};
|
||||
|
||||
static struct flash_partitions sdp_flash_partitions[] = {
|
||||
{
|
||||
.parts = sdp_nor_partitions,
|
||||
.nr_parts = ARRAY_SIZE(sdp_nor_partitions),
|
||||
},
|
||||
{
|
||||
.parts = sdp_onenand_partitions,
|
||||
.nr_parts = ARRAY_SIZE(sdp_onenand_partitions),
|
||||
},
|
||||
{
|
||||
.parts = sdp_nand_partitions,
|
||||
.nr_parts = ARRAY_SIZE(sdp_nand_partitions),
|
||||
},
|
||||
};
|
||||
|
||||
static void __init omap_3430sdp_init(void)
|
||||
{
|
||||
int gpio_pendown;
|
||||
|
||||
omap3_mux_init(board_mux, OMAP_PACKAGE_CBB);
|
||||
omap_hsmmc_init(mmc);
|
||||
omap3430_i2c_init();
|
||||
omap_display_init(&sdp3430_dss_data);
|
||||
platform_device_register(&sdp3430_lcd_device);
|
||||
platform_device_register(&sdp3430_tfp410_device);
|
||||
platform_device_register(&sdp3430_dvi_connector_device);
|
||||
platform_device_register(&sdp3430_tv_connector_device);
|
||||
|
||||
if (omap_rev() > OMAP3430_REV_ES1_0)
|
||||
gpio_pendown = SDP3430_TS_GPIO_IRQ_SDPV2;
|
||||
else
|
||||
gpio_pendown = SDP3430_TS_GPIO_IRQ_SDPV1;
|
||||
omap_ads7846_init(1, gpio_pendown, 310, NULL);
|
||||
omap_serial_init();
|
||||
omap_sdrc_init(hyb18m512160af6_sdrc_params, NULL);
|
||||
usb_bind_phy("musb-hdrc.0.auto", 0, "twl4030_usb");
|
||||
usb_musb_init(NULL);
|
||||
board_flash_init(sdp_flash_partitions, chip_sel_3430, 0);
|
||||
sdp3430_display_init();
|
||||
enable_board_wakeup_source();
|
||||
|
||||
usbhs_init_phys(phy_data, ARRAY_SIZE(phy_data));
|
||||
usbhs_init(&usbhs_bdata);
|
||||
}
|
||||
|
||||
MACHINE_START(OMAP_3430SDP, "OMAP3430 3430SDP board")
|
||||
/* Maintainer: Syed Khasim - Texas Instruments Inc */
|
||||
.atag_offset = 0x100,
|
||||
.reserve = omap_reserve,
|
||||
.map_io = omap3_map_io,
|
||||
.init_early = omap3430_init_early,
|
||||
.init_irq = omap3_init_irq,
|
||||
.init_machine = omap_3430sdp_init,
|
||||
.init_late = omap3430_init_late,
|
||||
.init_time = omap3_sync32k_timer_init,
|
||||
.restart = omap3xxx_restart,
|
||||
MACHINE_END
|
|
@ -1,62 +0,0 @@
|
|||
/*
|
||||
* Code for TI8168/TI8148 EVM.
|
||||
*
|
||||
* Copyright (C) 2010 Texas Instruments, Inc. - http://www.ti.com/
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU General Public License as
|
||||
* published by the Free Software Foundation version 2.
|
||||
*
|
||||
* This program is distributed "as is" WITHOUT ANY WARRANTY of any
|
||||
* kind, whether express or implied; without even the implied warranty
|
||||
* of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*/
|
||||
#include <linux/kernel.h>
|
||||
#include <linux/init.h>
|
||||
#include <linux/platform_device.h>
|
||||
#include <linux/usb/musb.h>
|
||||
|
||||
#include <asm/mach-types.h>
|
||||
#include <asm/mach/arch.h>
|
||||
#include <asm/mach/map.h>
|
||||
|
||||
#include "common.h"
|
||||
|
||||
static struct omap_musb_board_data musb_board_data = {
|
||||
.set_phy_power = ti81xx_musb_phy_power,
|
||||
.interface_type = MUSB_INTERFACE_ULPI,
|
||||
.mode = MUSB_OTG,
|
||||
.power = 500,
|
||||
};
|
||||
|
||||
static void __init ti81xx_evm_init(void)
|
||||
{
|
||||
omap_serial_init();
|
||||
omap_sdrc_init(NULL, NULL);
|
||||
usb_musb_init(&musb_board_data);
|
||||
}
|
||||
|
||||
MACHINE_START(TI8168EVM, "ti8168evm")
|
||||
/* Maintainer: Texas Instruments */
|
||||
.atag_offset = 0x100,
|
||||
.map_io = ti81xx_map_io,
|
||||
.init_early = ti81xx_init_early,
|
||||
.init_irq = ti81xx_init_irq,
|
||||
.init_time = omap3_sync32k_timer_init,
|
||||
.init_machine = ti81xx_evm_init,
|
||||
.init_late = ti81xx_init_late,
|
||||
.restart = omap44xx_restart,
|
||||
MACHINE_END
|
||||
|
||||
MACHINE_START(TI8148EVM, "ti8148evm")
|
||||
/* Maintainer: Texas Instruments */
|
||||
.atag_offset = 0x100,
|
||||
.map_io = ti81xx_map_io,
|
||||
.init_early = ti81xx_init_early,
|
||||
.init_irq = ti81xx_init_irq,
|
||||
.init_time = omap3_sync32k_timer_init,
|
||||
.init_machine = ti81xx_evm_init,
|
||||
.init_late = ti81xx_init_late,
|
||||
.restart = omap44xx_restart,
|
||||
MACHINE_END
|
Loading…
Reference in a new issue