Exemple #1
0
int lcd_io_enable(void)
{
	if(RK_LCD_STANDBY_PIN != INVALID_GPIO){
		gpio_set_value(RK_LCD_STANDBY_PIN, RK_LCD_STANDBY_VALUE);
		mdelay(5);
	}	
	if(RK_LCD_EN_PIN != INVALID_GPIO){
		gpio_set_value(RK_LCD_EN_PIN, RK_LCD_EN_VALUE);
	}
	if(RK_LCD_RESET_PIN != INVALID_GPIO){
		mdelay(50);
		gpio_set_value(RK_LCD_RESET_PIN, RK_LCD_RESET_VALUE);
	}
	if(LCD_CS_PIN != INVALID_GPIO){
		gpio_set_value(LCD_CS_PIN, LCD_CS_VALUE);
	}

	td043_init();
	
	return 0;
}
Exemple #2
0
static void LCD_panel_init(__u32 sel)
{
	td043_init(sel);
}
Exemple #3
0
int lcd_io_init(void)
{
	int ret = 0;

	if(RK_LCD_STANDBY_PIN != INVALID_GPIO){
		rk30_mux_api_set(RK_LCD_STANDBY_MUX_NAME, RK_LCD_STANDBY_MUX_MODE);
		ret = gpio_request(RK_LCD_STANDBY_PIN, NULL);
		if(ret !=0){
			printk(KERN_ERR "request lcd standby pin failed!\n");
		}else{
			gpio_direction_output(RK_LCD_STANDBY_PIN, GPIO_HIGH);
			gpio_set_value(RK_LCD_STANDBY_PIN, RK_LCD_STANDBY_VALUE);
			mdelay(5);
		}
	}

	if(RK_LCD_EN_PIN != INVALID_GPIO){
		rk30_mux_api_set(RK_LCD_EN_MUX_NAME, RK_LCD_EN_MUX_MODE);
		ret = gpio_request(RK_LCD_EN_PIN, NULL);
		if (ret != 0){
			printk(KERN_ERR "request lcd en2 pin fail!\n");
		}
		else{
			gpio_direction_output(RK_LCD_EN_PIN, 1);
			gpio_set_value(RK_LCD_EN_PIN, RK_LCD_EN_VALUE);
		}
	}

	if(RK_LCD_RESET_PIN != INVALID_GPIO){
		rk30_mux_api_set(RK_LCD_RESET_MUX_NAME, RK_LCD_RESET_MUX_MODE);
		ret = gpio_request(RK_LCD_RESET_PIN, NULL);
		if(ret !=0){
			printk(KERN_ERR "request lcd reset pin failed!\n");
		}else{
			mdelay(50);
			gpio_pull_updown(RK_LCD_RESET_PIN, GPIOPullUp);
			gpio_direction_output(RK_LCD_RESET_PIN, GPIO_HIGH);
			gpio_set_value(RK_LCD_RESET_PIN, RK_LCD_RESET_VALUE);
		}
	}

	if(LCD_CS_PIN != INVALID_GPIO){
		rk30_mux_api_set(LCD_CS_MUX_NAME, LCD_CS_MUX_MODE);
		ret = gpio_request(LCD_CS_PIN, NULL);
		if (ret != 0){
			printk(KERN_ERR "request lcd en pin fail!\n");
		}
		else{
			gpio_direction_output(LCD_CS_PIN, 1);
			gpio_set_value(LCD_CS_PIN, LCD_CS_VALUE);
		}
	}

	if(LCD_SPI_CS_PIN != INVALID_GPIO){
		rk30_mux_api_set(LCD_SPI_CS_MUX_NAME, LCD_SPI_CS_MUX_MODE);
		ret = gpio_request(LCD_SPI_CS_PIN, NULL);
		if (ret != 0){
			printk(KERN_ERR "request lcd spi cs pin fail!\n");
		}else{
			gpio_direction_output(LCD_SPI_CS_PIN, 1);
			gpio_set_value(LCD_SPI_CS_PIN, GPIO_LOW);
		}
	}

	if(LCD_SPI_SCL_PIN != INVALID_GPIO){
		rk30_mux_api_set(LCD_SPI_SCL_MUX_NAME, LCD_SPI_SCL_MUX_MODE);
		ret = gpio_request(LCD_SPI_SCL_PIN, NULL);
		if (ret != 0){
			printk(KERN_ERR "request lcd spi scl pin fail!\n");
		}else{
			gpio_direction_output(LCD_SPI_SCL_PIN, 1);
			gpio_set_value(LCD_SPI_SCL_PIN, GPIO_LOW);
		}
	}

	if(LCD_SPI_SDA_PIN != INVALID_GPIO){
		rk30_mux_api_set(LCD_SPI_SDA_MUX_NAME, LCD_SPI_SDA_MUX_MODE);
		ret = gpio_request(LCD_SPI_SDA_PIN, NULL);
		if (ret != 0){
			printk(KERN_ERR "request lcd spi sda pin fail!\n");
		}else{
			gpio_direction_output(LCD_SPI_SDA_PIN, 1);
			gpio_set_value(LCD_SPI_SDA_PIN, GPIO_LOW);
		}
	}

	td043_init();
	
	return 0;
}