[PATCH 1/5] UBUNTU: SAUCE: hid: ntrig: remove sysfs nodes

Henrik Rydberg rydberg at euromail.se
Fri Nov 12 08:11:50 UTC 2010


Aiming at a driver that requires no tuning, remove the sysfs nodes
for the filter parameters.

Has been tested succesfully on Dell Studio 17, Dell XT2, HP TX2 and
Lenovo T410s. Not likely to go upstream in its present form. However,
it does help constitue a tuning-free driver which works well together
with Unity, and as such are vital to the MT push.

Signed-off-by: Henrik Rydberg <rydberg at euromail.se>
Acked-by: Chase Douglas <chase.douglas at canonical.com>
Signed-off-by: Leann Ogasawara <leann.ogasawara at canonical.com>
---
 drivers/hid/hid-ntrig.c |  304 -----------------------------------------------
 1 files changed, 0 insertions(+), 304 deletions(-)

diff --git a/drivers/hid/hid-ntrig.c b/drivers/hid/hid-ntrig.c
index 3fdab68..b5302c0 100644
--- a/drivers/hid/hid-ntrig.c
+++ b/drivers/hid/hid-ntrig.c
@@ -25,32 +25,14 @@
 #define NTRIG_DUPLICATE_USAGES	0x001
 
 static unsigned int min_width;
-module_param(min_width, uint, 0644);
-MODULE_PARM_DESC(min_width, "Minimum touch contact width to accept.");
-
 static unsigned int min_height;
-module_param(min_height, uint, 0644);
-MODULE_PARM_DESC(min_height, "Minimum touch contact height to accept.");
 
 static unsigned int activate_slack = 1;
-module_param(activate_slack, uint, 0644);
-MODULE_PARM_DESC(activate_slack, "Number of touch frames to ignore at "
-		 "the start of touch input.");
 
 static unsigned int deactivate_slack = 4;
-module_param(deactivate_slack, uint, 0644);
-MODULE_PARM_DESC(deactivate_slack, "Number of empty frames to ignore before "
-		 "deactivating touch.");
 
 static unsigned int activation_width = 64;
-module_param(activation_width, uint, 0644);
-MODULE_PARM_DESC(activation_width, "Width threshold to immediately start "
-		 "processing touch events.");
-
 static unsigned int activation_height = 32;
-module_param(activation_height, uint, 0644);
-MODULE_PARM_DESC(activation_height, "Height threshold to immediately start "
-		 "processing touch events.");
 
 struct ntrig_data {
 	/* Incoming raw values for a single contact */
@@ -139,286 +121,6 @@ err_free:
 	kfree(data);
 }
 
-static ssize_t show_phys_width(struct device *dev,
-			       struct device_attribute *attr,
-			       char *buf)
-{
-	struct hid_device *hdev = container_of(dev, struct hid_device, dev);
-	struct ntrig_data *nd = hid_get_drvdata(hdev);
-
-	return sprintf(buf, "%d\n", nd->sensor_physical_width);
-}
-
-static DEVICE_ATTR(sensor_physical_width, S_IRUGO, show_phys_width, NULL);
-
-static ssize_t show_phys_height(struct device *dev,
-				struct device_attribute *attr,
-				char *buf)
-{
-	struct hid_device *hdev = container_of(dev, struct hid_device, dev);
-	struct ntrig_data *nd = hid_get_drvdata(hdev);
-
-	return sprintf(buf, "%d\n", nd->sensor_physical_height);
-}
-
-static DEVICE_ATTR(sensor_physical_height, S_IRUGO, show_phys_height, NULL);
-
-static ssize_t show_log_width(struct device *dev,
-			      struct device_attribute *attr,
-			      char *buf)
-{
-	struct hid_device *hdev = container_of(dev, struct hid_device, dev);
-	struct ntrig_data *nd = hid_get_drvdata(hdev);
-
-	return sprintf(buf, "%d\n", nd->sensor_logical_width);
-}
-
-static DEVICE_ATTR(sensor_logical_width, S_IRUGO, show_log_width, NULL);
-
-static ssize_t show_log_height(struct device *dev,
-			       struct device_attribute *attr,
-			       char *buf)
-{
-	struct hid_device *hdev = container_of(dev, struct hid_device, dev);
-	struct ntrig_data *nd = hid_get_drvdata(hdev);
-
-	return sprintf(buf, "%d\n", nd->sensor_logical_height);
-}
-
-static DEVICE_ATTR(sensor_logical_height, S_IRUGO, show_log_height, NULL);
-
-static ssize_t show_min_width(struct device *dev,
-			      struct device_attribute *attr,
-			      char *buf)
-{
-	struct hid_device *hdev = container_of(dev, struct hid_device, dev);
-	struct ntrig_data *nd = hid_get_drvdata(hdev);
-
-	return sprintf(buf, "%d\n", nd->min_width *
-				    nd->sensor_physical_width /
-				    nd->sensor_logical_width);
-}
-
-static ssize_t set_min_width(struct device *dev,
-			     struct device_attribute *attr,
-			     const char *buf, size_t count)
-{
-	struct hid_device *hdev = container_of(dev, struct hid_device, dev);
-	struct ntrig_data *nd = hid_get_drvdata(hdev);
-
-	unsigned long val;
-
-	if (strict_strtoul(buf, 0, &val))
-		return -EINVAL;
-
-	if (val > nd->sensor_physical_width)
-		return -EINVAL;
-
-	nd->min_width = val * nd->sensor_logical_width /
-			      nd->sensor_physical_width;
-
-	return count;
-}
-
-static DEVICE_ATTR(min_width, S_IWUSR | S_IRUGO, show_min_width, set_min_width);
-
-static ssize_t show_min_height(struct device *dev,
-			       struct device_attribute *attr,
-			       char *buf)
-{
-	struct hid_device *hdev = container_of(dev, struct hid_device, dev);
-	struct ntrig_data *nd = hid_get_drvdata(hdev);
-
-	return sprintf(buf, "%d\n", nd->min_height *
-				    nd->sensor_physical_height /
-				    nd->sensor_logical_height);
-}
-
-static ssize_t set_min_height(struct device *dev,
-			      struct device_attribute *attr,
-			      const char *buf, size_t count)
-{
-	struct hid_device *hdev = container_of(dev, struct hid_device, dev);
-	struct ntrig_data *nd = hid_get_drvdata(hdev);
-
-	unsigned long val;
-
-	if (strict_strtoul(buf, 0, &val))
-		return -EINVAL;
-
-	if (val > nd->sensor_physical_height)
-		return -EINVAL;
-
-	nd->min_height = val * nd->sensor_logical_height /
-			       nd->sensor_physical_height;
-
-	return count;
-}
-
-static DEVICE_ATTR(min_height, S_IWUSR | S_IRUGO, show_min_height,
-		   set_min_height);
-
-static ssize_t show_activate_slack(struct device *dev,
-				   struct device_attribute *attr,
-				   char *buf)
-{
-	struct hid_device *hdev = container_of(dev, struct hid_device, dev);
-	struct ntrig_data *nd = hid_get_drvdata(hdev);
-
-	return sprintf(buf, "%d\n", nd->activate_slack);
-}
-
-static ssize_t set_activate_slack(struct device *dev,
-				  struct device_attribute *attr,
-				  const char *buf, size_t count)
-{
-	struct hid_device *hdev = container_of(dev, struct hid_device, dev);
-	struct ntrig_data *nd = hid_get_drvdata(hdev);
-
-	unsigned long val;
-
-	if (strict_strtoul(buf, 0, &val))
-		return -EINVAL;
-
-	if (val > 0x7f)
-		return -EINVAL;
-
-	nd->activate_slack = val;
-
-	return count;
-}
-
-static DEVICE_ATTR(activate_slack, S_IWUSR | S_IRUGO, show_activate_slack,
-		   set_activate_slack);
-
-static ssize_t show_activation_width(struct device *dev,
-				     struct device_attribute *attr,
-				     char *buf)
-{
-	struct hid_device *hdev = container_of(dev, struct hid_device, dev);
-	struct ntrig_data *nd = hid_get_drvdata(hdev);
-
-	return sprintf(buf, "%d\n", nd->activation_width *
-				    nd->sensor_physical_width /
-				    nd->sensor_logical_width);
-}
-
-static ssize_t set_activation_width(struct device *dev,
-				    struct device_attribute *attr,
-				    const char *buf, size_t count)
-{
-	struct hid_device *hdev = container_of(dev, struct hid_device, dev);
-	struct ntrig_data *nd = hid_get_drvdata(hdev);
-
-	unsigned long val;
-
-	if (strict_strtoul(buf, 0, &val))
-		return -EINVAL;
-
-	if (val > nd->sensor_physical_width)
-		return -EINVAL;
-
-	nd->activation_width = val * nd->sensor_logical_width /
-				     nd->sensor_physical_width;
-
-	return count;
-}
-
-static DEVICE_ATTR(activation_width, S_IWUSR | S_IRUGO, show_activation_width,
-		   set_activation_width);
-
-static ssize_t show_activation_height(struct device *dev,
-				      struct device_attribute *attr,
-				      char *buf)
-{
-	struct hid_device *hdev = container_of(dev, struct hid_device, dev);
-	struct ntrig_data *nd = hid_get_drvdata(hdev);
-
-	return sprintf(buf, "%d\n", nd->activation_height *
-				    nd->sensor_physical_height /
-				    nd->sensor_logical_height);
-}
-
-static ssize_t set_activation_height(struct device *dev,
-				     struct device_attribute *attr,
-				     const char *buf, size_t count)
-{
-	struct hid_device *hdev = container_of(dev, struct hid_device, dev);
-	struct ntrig_data *nd = hid_get_drvdata(hdev);
-
-	unsigned long val;
-
-	if (strict_strtoul(buf, 0, &val))
-		return -EINVAL;
-
-	if (val > nd->sensor_physical_height)
-		return -EINVAL;
-
-	nd->activation_height = val * nd->sensor_logical_height /
-				      nd->sensor_physical_height;
-
-	return count;
-}
-
-static DEVICE_ATTR(activation_height, S_IWUSR | S_IRUGO,
-		   show_activation_height, set_activation_height);
-
-static ssize_t show_deactivate_slack(struct device *dev,
-				     struct device_attribute *attr,
-				     char *buf)
-{
-	struct hid_device *hdev = container_of(dev, struct hid_device, dev);
-	struct ntrig_data *nd = hid_get_drvdata(hdev);
-
-	return sprintf(buf, "%d\n", -nd->deactivate_slack);
-}
-
-static ssize_t set_deactivate_slack(struct device *dev,
-				    struct device_attribute *attr,
-				    const char *buf, size_t count)
-{
-	struct hid_device *hdev = container_of(dev, struct hid_device, dev);
-	struct ntrig_data *nd = hid_get_drvdata(hdev);
-
-	unsigned long val;
-
-	if (strict_strtoul(buf, 0, &val))
-		return -EINVAL;
-
-	/*
-	 * No more than 8 terminal frames have been observed so far
-	 * and higher slack is highly likely to leave the single
-	 * touch emulation stuck down.
-	 */
-	if (val > 7)
-		return -EINVAL;
-
-	nd->deactivate_slack = -val;
-
-	return count;
-}
-
-static DEVICE_ATTR(deactivate_slack, S_IWUSR | S_IRUGO, show_deactivate_slack,
-		   set_deactivate_slack);
-
-static struct attribute *sysfs_attrs[] = {
-	&dev_attr_sensor_physical_width.attr,
-	&dev_attr_sensor_physical_height.attr,
-	&dev_attr_sensor_logical_width.attr,
-	&dev_attr_sensor_logical_height.attr,
-	&dev_attr_min_height.attr,
-	&dev_attr_min_width.attr,
-	&dev_attr_activate_slack.attr,
-	&dev_attr_activation_width.attr,
-	&dev_attr_activation_height.attr,
-	&dev_attr_deactivate_slack.attr,
-	NULL
-};
-
-static struct attribute_group ntrig_attribute_group = {
-	.attrs = sysfs_attrs
-};
-
 /*
  * this driver is aimed at two firmware versions in circulation:
  *  - dual pen/finger single touch
@@ -891,9 +593,6 @@ static int ntrig_probe(struct hid_device *hdev, const struct hid_device_id *id)
 
 	ntrig_report_version(hdev);
 
-	ret = sysfs_create_group(&hdev->dev.kobj,
-			&ntrig_attribute_group);
-
 	return 0;
 err_free:
 	kfree(nd);
@@ -902,12 +601,9 @@ err_free:
 
 static void ntrig_remove(struct hid_device *hdev)
 {
-	sysfs_remove_group(&hdev->dev.kobj,
-			   &ntrig_attribute_group);
 	hid_hw_stop(hdev);
 	kfree(hid_get_drvdata(hdev));
 }
-
 #define NTRIG_DEVICE(id)						\
 	{ HID_USB_DEVICE(USB_VENDOR_ID_NTRIG, id),			\
 			.driver_data = NTRIG_DUPLICATE_USAGES  }
-- 
1.7.1





More information about the kernel-team mailing list