board-rk3066b-m701: use new iomux api

This commit is contained in:
黄涛
2013-01-17 18:09:19 +08:00
parent ab20ea947e
commit f93b23932e

View File

@@ -119,10 +119,6 @@ static int goodix_init_platform_hw(void)
{
int ret;
rk30_mux_api_set(GPIO2C0_LCDC1DATA16_SMCADDR0_TRACECLK_NAME, GPIO2C_GPIO2C0);
rk30_mux_api_set(GPIO2B4_LCDC1DATA12_SMCDATA12_TRACEDATA12_NAME, GPIO2B_GPIO2B4);
printk("%s:0x%x,0x%x\n",__func__,rk30_mux_api_get(GPIO2C0_LCDC1DATA16_SMCADDR0_TRACECLK_NAME),rk30_mux_api_get(GPIO2B4_LCDC1DATA12_SMCDATA12_TRACEDATA12_NAME));
if (TOUCH_PWR_PIN != INVALID_GPIO) {
ret = gpio_request(TOUCH_PWR_PIN, "goodix power pin");
if (ret != 0) {
@@ -164,16 +160,9 @@ struct goodix_platform_data goodix_info = {
#define TOUCH_RESET_PIN RK30_PIN2_PC0
#define TOUCH_INT_PIN RK30_PIN0_PD4
#define TOUCH_PWR_PIN RK30_PIN2_PB4
static int ft5306_init_platform_hw(void)
{
rk30_mux_api_set(GPIO2C0_LCDC1DATA16_SMCADDR0_TRACECLK_NAME, GPIO2C_GPIO2C0);
rk30_mux_api_set(GPIO0D4_SPI1RXD_NAME, GPIO0D_GPIO0D4);
rk30_mux_api_set(GPIO2B4_LCDC1DATA12_SMCDATA12_TRACEDATA12_NAME, GPIO2B_GPIO2B4);
//printk("%s:0x%x,0x%x\n",__func__,rk30_mux_api_get(GPIO2C0_LCDC1DATA16_SMCADDR0_TRACECLK_NAME),rk30_mux_api_get(GPIO2B4_LCDC1DATA12_SMCDATA12_TRACEDATA12_NAME));
printk("ft5306_init_platform_hw \n");
if(gpio_request(TOUCH_RESET_PIN,NULL) != 0){
gpio_free(TOUCH_RESET_PIN);
@@ -239,10 +228,7 @@ static struct spi_board_info board_spi_devices[] = {
************************************************************/
#ifdef CONFIG_BACKLIGHT_RK29_BL
#define PWM_ID 2
#define PWM_MUX_NAME GPIO3D5_PWM2_JTAGTCK_OTGDRVVBUS_NAME
#define PWM_MUX_MODE GPIO3D_PWM2
#define PWM_MUX_MODE_GPIO GPIO3D_GPIO3D5
#define PWM_GPIO RK30_PIN3_PD5
#define PWM_MODE PWM2
#define PWM_EFFECT_VALUE 0
#define LCD_DISP_ON_PIN
@@ -254,59 +240,56 @@ static struct spi_board_info board_spi_devices[] = {
static int rk29_backlight_io_init(void)
{
int ret = 0;
rk30_mux_api_set(PWM_MUX_NAME, PWM_MUX_MODE);
iomux_set(PWM_MODE);
#ifdef LCD_DISP_ON_PIN
// rk30_mux_api_set(BL_EN_MUX_NAME, BL_EN_MUX_MODE);
ret = gpio_request(BL_EN_PIN, NULL);
if (ret != 0) {
gpio_free(BL_EN_PIN);
ret = gpio_request(BL_EN_PIN, "bl_en");
if (ret == 0) {
gpio_direction_output(BL_EN_PIN, BL_EN_VALUE);
}
gpio_direction_output(BL_EN_PIN, 0);
gpio_set_value(BL_EN_PIN, BL_EN_VALUE);
#endif
return ret;
}
static int rk29_backlight_io_deinit(void)
{
int ret = 0;
int ret = 0, pwm_gpio;
#ifdef LCD_DISP_ON_PIN
gpio_direction_output(BL_EN_PIN, 0);
gpio_set_value(BL_EN_PIN, !BL_EN_VALUE);
gpio_free(BL_EN_PIN);
#endif
rk30_mux_api_set(PWM_MUX_NAME, PWM_MUX_MODE_GPIO);
gpio_request(PWM_GPIO, NULL);
gpio_direction_output(PWM_GPIO, GPIO_LOW);
pwm_gpio = iomux_mode_to_gpio(PWM_MODE);
gpio_request(pwm_gpio, "bl_pwm");
gpio_direction_output(pwm_gpio, GPIO_LOW);
return ret;
}
static int rk29_backlight_pwm_suspend(void)
{
int ret = 0;
rk30_mux_api_set(PWM_MUX_NAME, PWM_MUX_MODE_GPIO);
if (gpio_request(PWM_GPIO, NULL)) {
int ret, pwm_gpio = iomux_mode_to_gpio(PWM_MODE);
ret = gpio_request(pwm_gpio, "bl_pwm");
if (ret) {
printk("func %s, line %d: request gpio fail\n", __FUNCTION__, __LINE__);
return -1;
return ret;
}
gpio_direction_output(PWM_GPIO, GPIO_LOW);
gpio_direction_output(pwm_gpio, GPIO_LOW);
#ifdef LCD_DISP_ON_PIN
gpio_direction_output(BL_EN_PIN, 0);
gpio_set_value(BL_EN_PIN, !BL_EN_VALUE);
gpio_direction_output(BL_EN_PIN, !BL_EN_VALUE);
#endif
return ret;
}
static int rk29_backlight_pwm_resume(void)
{
gpio_free(PWM_GPIO);
rk30_mux_api_set(PWM_MUX_NAME, PWM_MUX_MODE);
int pwm_gpio = iomux_mode_to_gpio(PWM_MODE);
gpio_free(pwm_gpio);
iomux_set(PWM_MODE);
#ifdef LCD_DISP_ON_PIN
msleep(30);
gpio_direction_output(BL_EN_PIN, 1);
gpio_set_value(BL_EN_PIN, BL_EN_VALUE);
gpio_direction_output(BL_EN_PIN, BL_EN_VALUE);
#endif
return 0;
}
@@ -833,7 +816,6 @@ static int rk610_power_on_init(void)
int ret;
if(RK610_RST_PIN != INVALID_GPIO)
{
rk30_mux_api_set(RK610_RST_PIN_MUX_NAME,RK610_RST_PIN_MUX_MODE);
ret = gpio_request(RK610_RST_PIN, "rk610 reset");
if (ret)
{
@@ -1297,9 +1279,8 @@ static struct pwm_platform_data pwm_regulator_info[1] = {
{
.pwm_id = 3,
.pwm_gpio = RK30_PIN3_PD6,
.pwm_iomux_name = GPIO3D6_PWM3_JTAGTMS_HOSTDRVVBUS_NAME,
.pwm_iomux_pwm = GPIO3D_PWM3,
.pwm_iomux_gpio = GPIO3D_GPIO3D6,
.pwm_iomux_pwm = PWM3,
.pwm_iomux_gpio = GPIO3_D6,
.pwm_voltage = 1000000,
.suspend_voltage = 1050000,
.min_uV = 950000,
@@ -1335,8 +1316,8 @@ static struct rfkill_rk_platform_data rfkill_rk_platdata = {
.io = RK30_PIN3_PC7,
.enable = GPIO_HIGH,
.iomux = {
.name = GPIO3C7_SDMMC1WRITEPRT_RMIICRS_NAME,
.fgpio = GPIO3C_GPIO3C7,
.name = "bt_poweron",
.fgpio = GPIO3_C7,
},
},
@@ -1344,8 +1325,8 @@ static struct rfkill_rk_platform_data rfkill_rk_platdata = {
.io = RK30_PIN3_PD1, // set io to INVALID_GPIO for disable it
.enable = GPIO_LOW,
.iomux = {
.name = GPIO3D1_SDMMC1BACKENDPWR_MIIMDCLK_NAME,
.fgpio = GPIO3D_GPIO3D1,
.name = "bt_reset",
.fgpio = GPIO3_D1,
},
},
@@ -1353,8 +1334,8 @@ static struct rfkill_rk_platform_data rfkill_rk_platdata = {
.io = RK30_PIN3_PC6, // set io to INVALID_GPIO for disable it
.enable = GPIO_HIGH,
.iomux = {
.name = GPIO3C6_SDMMC1DETECTN_RMIIRXERR_NAME,
.fgpio = GPIO3C_GPIO3C6,
.name = "bt_wake",
.fgpio = GPIO3_C6,
},
},
@@ -1372,9 +1353,9 @@ static struct rfkill_rk_platform_data rfkill_rk_platdata = {
.io = RK30_PIN1_PA3, // set io to INVALID_GPIO for disable it
.enable = GPIO_LOW,
.iomux = {
.name = GPIO1A3_UART0RTSN_NAME,
.fgpio = GPIO1A_GPIO1A3,
.fmux = GPIO1A_UART0RTSN,
.name = "bt_rts",
.fgpio = GPIO1_A3,
.fmux = UART0_RTSN,
},
},
};