diff options
Diffstat (limited to 'drivers/platform/x86')
| -rw-r--r-- | drivers/platform/x86/chromeos_laptop.c | 41 | ||||
| -rw-r--r-- | drivers/platform/x86/thinkpad_acpi.c | 4 | ||||
| -rw-r--r-- | drivers/platform/x86/toshiba_acpi.c | 18 | 
3 files changed, 50 insertions, 13 deletions
diff --git a/drivers/platform/x86/chromeos_laptop.c b/drivers/platform/x86/chromeos_laptop.c index 93d66809355..3e5b4497a1d 100644 --- a/drivers/platform/x86/chromeos_laptop.c +++ b/drivers/platform/x86/chromeos_laptop.c @@ -23,6 +23,9 @@  #include <linux/dmi.h>  #include <linux/i2c.h> +#include <linux/i2c/atmel_mxt_ts.h> +#include <linux/input.h> +#include <linux/interrupt.h>  #include <linux/module.h>  #define ATMEL_TP_I2C_ADDR	0x4b @@ -67,15 +70,49 @@ static struct i2c_board_info __initdata tsl2563_als_device = {  	I2C_BOARD_INFO("tsl2563", TAOS_ALS_I2C_ADDR),  }; +static struct mxt_platform_data atmel_224s_tp_platform_data = { +	.x_line			= 18, +	.y_line			= 12, +	.x_size			= 102*20, +	.y_size			= 68*20, +	.blen			= 0x80,	/* Gain setting is in upper 4 bits */ +	.threshold		= 0x32, +	.voltage		= 0,	/* 3.3V */ +	.orient			= MXT_VERTICAL_FLIP, +	.irqflags		= IRQF_TRIGGER_FALLING, +	.is_tp			= true, +	.key_map		= { KEY_RESERVED, +				    KEY_RESERVED, +				    KEY_RESERVED, +				    BTN_LEFT }, +	.config			= NULL, +	.config_length		= 0, +}; +  static struct i2c_board_info __initdata atmel_224s_tp_device = {  	I2C_BOARD_INFO("atmel_mxt_tp", ATMEL_TP_I2C_ADDR), -	.platform_data = NULL, +	.platform_data = &atmel_224s_tp_platform_data,  	.flags		= I2C_CLIENT_WAKE,  }; +static struct mxt_platform_data atmel_1664s_platform_data = { +	.x_line			= 32, +	.y_line			= 50, +	.x_size			= 1700, +	.y_size			= 2560, +	.blen			= 0x89,	/* Gain setting is in upper 4 bits */ +	.threshold		= 0x28, +	.voltage		= 0,	/* 3.3V */ +	.orient			= MXT_ROTATED_90_COUNTER, +	.irqflags		= IRQF_TRIGGER_FALLING, +	.is_tp			= false, +	.config			= NULL, +	.config_length		= 0, +}; +  static struct i2c_board_info __initdata atmel_1664s_device = {  	I2C_BOARD_INFO("atmel_mxt_ts", ATMEL_TS_I2C_ADDR), -	.platform_data = NULL, +	.platform_data = &atmel_1664s_platform_data,  	.flags		= I2C_CLIENT_WAKE,  }; diff --git a/drivers/platform/x86/thinkpad_acpi.c b/drivers/platform/x86/thinkpad_acpi.c index 9a907567f41..05272e676a2 100644 --- a/drivers/platform/x86/thinkpad_acpi.c +++ b/drivers/platform/x86/thinkpad_acpi.c @@ -844,14 +844,14 @@ static int dispatch_proc_show(struct seq_file *m, void *v)  static int dispatch_proc_open(struct inode *inode, struct file *file)  { -	return single_open(file, dispatch_proc_show, PDE(inode)->data); +	return single_open(file, dispatch_proc_show, PDE_DATA(inode));  }  static ssize_t dispatch_proc_write(struct file *file,  			const char __user *userbuf,  			size_t count, loff_t *pos)  { -	struct ibm_struct *ibm = PDE(file_inode(file))->data; +	struct ibm_struct *ibm = PDE_DATA(file_inode(file));  	char *kernbuf;  	int ret; diff --git a/drivers/platform/x86/toshiba_acpi.c b/drivers/platform/x86/toshiba_acpi.c index 242abac62d8..eb3467ea6d8 100644 --- a/drivers/platform/x86/toshiba_acpi.c +++ b/drivers/platform/x86/toshiba_acpi.c @@ -553,7 +553,7 @@ static int lcd_proc_show(struct seq_file *m, void *v)  static int lcd_proc_open(struct inode *inode, struct file *file)  { -	return single_open(file, lcd_proc_show, PDE(inode)->data); +	return single_open(file, lcd_proc_show, PDE_DATA(inode));  }  static int set_lcd_brightness(struct toshiba_acpi_dev *dev, int value) @@ -583,7 +583,7 @@ static int set_lcd_status(struct backlight_device *bd)  static ssize_t lcd_proc_write(struct file *file, const char __user *buf,  			      size_t count, loff_t *pos)  { -	struct toshiba_acpi_dev *dev = PDE(file_inode(file))->data; +	struct toshiba_acpi_dev *dev = PDE_DATA(file_inode(file));  	char cmd[42];  	size_t len;  	int value; @@ -644,13 +644,13 @@ static int video_proc_show(struct seq_file *m, void *v)  static int video_proc_open(struct inode *inode, struct file *file)  { -	return single_open(file, video_proc_show, PDE(inode)->data); +	return single_open(file, video_proc_show, PDE_DATA(inode));  }  static ssize_t video_proc_write(struct file *file, const char __user *buf,  				size_t count, loff_t *pos)  { -	struct toshiba_acpi_dev *dev = PDE(file_inode(file))->data; +	struct toshiba_acpi_dev *dev = PDE_DATA(file_inode(file));  	char *cmd, *buffer;  	int ret;  	int value; @@ -744,13 +744,13 @@ static int fan_proc_show(struct seq_file *m, void *v)  static int fan_proc_open(struct inode *inode, struct file *file)  { -	return single_open(file, fan_proc_show, PDE(inode)->data); +	return single_open(file, fan_proc_show, PDE_DATA(inode));  }  static ssize_t fan_proc_write(struct file *file, const char __user *buf,  			      size_t count, loff_t *pos)  { -	struct toshiba_acpi_dev *dev = PDE(file_inode(file))->data; +	struct toshiba_acpi_dev *dev = PDE_DATA(file_inode(file));  	char cmd[42];  	size_t len;  	int value; @@ -816,13 +816,13 @@ static int keys_proc_show(struct seq_file *m, void *v)  static int keys_proc_open(struct inode *inode, struct file *file)  { -	return single_open(file, keys_proc_show, PDE(inode)->data); +	return single_open(file, keys_proc_show, PDE_DATA(inode));  }  static ssize_t keys_proc_write(struct file *file, const char __user *buf,  			       size_t count, loff_t *pos)  { -	struct toshiba_acpi_dev *dev = PDE(file_inode(file))->data; +	struct toshiba_acpi_dev *dev = PDE_DATA(file_inode(file));  	char cmd[42];  	size_t len;  	int value; @@ -859,7 +859,7 @@ static int version_proc_show(struct seq_file *m, void *v)  static int version_proc_open(struct inode *inode, struct file *file)  { -	return single_open(file, version_proc_show, PDE(inode)->data); +	return single_open(file, version_proc_show, PDE_DATA(inode));  }  static const struct file_operations version_proc_fops = {  |