aboutsummaryrefslogtreecommitdiffstats
path: root/f2.patch
diff options
authorGreg Kroah-Hartman <gregkh@suse.de>2008-02-20 15:01:27 -0800
committerGreg Kroah-Hartman <gregkh@suse.de>2008-02-20 15:01:27 -0800
commit85551636d01cf3f86e8428e280c75c1bb5af02b0 (patch)
treef3e5fb18778cfa5c97fc9ede1ace3ca2dc70c19e /f2.patch
parent736966b630dd3c9c28ca49aa90b3bc77e5fbf22a (diff)
downloadpatches-85551636d01cf3f86e8428e280c75c1bb5af02b0.tar.gz
more patches
Diffstat (limited to 'f2.patch')
-rw-r--r--f2.patch110
1 files changed, 110 insertions, 0 deletions
diff --git a/f2.patch b/f2.patch
new file mode 100644
index 00000000000000..47c6b064b81e40
--- /dev/null
+++ b/f2.patch
@@ -0,0 +1,110 @@
+---
+ samples/firmware_class/firmware_sample_firmware_class.c | 44 ++++++----------
+ 1 file changed, 18 insertions(+), 26 deletions(-)
+
+--- a/samples/firmware_class/firmware_sample_firmware_class.c
++++ b/samples/firmware_class/firmware_sample_firmware_class.c
+@@ -23,16 +23,8 @@ MODULE_AUTHOR("Manuel Estrada Sainz");
+ MODULE_DESCRIPTION("Hackish sample for using firmware class directly");
+ MODULE_LICENSE("GPL");
+
+-static inline struct class_device *to_class_dev(struct kobject *obj)
+-{
+- return container_of(obj, struct class_device, kobj);
+-}
+-
+-static inline
+-struct class_device_attribute *to_class_dev_attr(struct attribute *_attr)
+-{
+- return container_of(_attr, struct class_device_attribute, attr);
+-}
++#define to_dev(obj) container_of(obj, struct device, kobj)
++#define to_class_dev_attr(_attr) container_of(_attr, struct class_device_attribute, attr)
+
+ struct firmware_priv {
+ char fw_id[FIRMWARE_NAME_MAX];
+@@ -40,16 +32,18 @@ struct firmware_priv {
+ u32 abort:1;
+ };
+
+-static ssize_t firmware_loading_show(struct class_device *class_dev, char *buf)
++static ssize_t firmware_loading_show(struct device *dev,
++ struct device_attribute *attr, char *buf)
+ {
+- struct firmware_priv *fw_priv = class_get_devdata(class_dev);
++ struct firmware_priv *fw_priv = dev_get_drvdata(dev);
+ return sprintf(buf, "%d\n", fw_priv->loading);
+ }
+
+-static ssize_t firmware_loading_store(struct class_device *class_dev,
++static ssize_t firmware_loading_store(struct device *dev,
++ struct device_attribute *attr,
+ const char *buf, size_t count)
+ {
+- struct firmware_priv *fw_priv = class_get_devdata(class_dev);
++ struct firmware_priv *fw_priv = dev_get_drvdata(dev);
+ int prev_loading = fw_priv->loading;
+
+ fw_priv->loading = simple_strtol(buf, NULL, 10);
+@@ -71,15 +65,15 @@ static ssize_t firmware_loading_store(st
+
+ return count;
+ }
+-static CLASS_DEVICE_ATTR(loading, 0644,
+- firmware_loading_show, firmware_loading_store);
++static DEVICE_ATTR(loading, 0644,
++ firmware_loading_show, firmware_loading_store);
+
+ static ssize_t firmware_data_read(struct kobject *kobj,
+ struct bin_attribute *bin_attr,
+ char *buffer, loff_t offset, size_t count)
+ {
+- struct class_device *class_dev = to_class_dev(kobj);
+- struct firmware_priv *fw_priv = class_get_devdata(class_dev);
++ struct device *dev = to_dev(kobj);
++ struct firmware_priv *fw_priv = dev_get_drvdata(dev);
+
+ /* read from the devices firmware memory */
+
+@@ -89,8 +83,8 @@ static ssize_t firmware_data_write(struc
+ struct bin_attribute *bin_attr,
+ char *buffer, loff_t offset, size_t count)
+ {
+- struct class_device *class_dev = to_class_dev(kobj);
+- struct firmware_priv *fw_priv = class_get_devdata(class_dev);
++ struct device *dev = to_dev(kobj);
++ struct firmware_priv *fw_priv = dev_get_drvdata(dev);
+
+ /* write to the devices firmware memory */
+
+@@ -102,9 +96,8 @@ static struct bin_attribute firmware_att
+ .read = firmware_data_read,
+ .write = firmware_data_write,
+ };
+-static int fw_setup_class_device(struct class_device *class_dev,
+- const char *fw_name,
+- struct device *device)
++static int fw_setup_device(struct device *dev, const char *fw_name,
++ struct device *parent)
+ {
+ int retval;
+ struct firmware_priv *fw_priv;
+@@ -115,7 +108,7 @@ static int fw_setup_class_device(struct
+ goto out;
+ }
+
+- memset(class_dev, 0, sizeof(*class_dev));
++ memset(dev, 0, sizeof(*dev));
+
+ strncpy(fw_priv->fw_id, fw_name, FIRMWARE_NAME_MAX);
+ fw_priv->fw_id[FIRMWARE_NAME_MAX-1] = '\0';
+@@ -183,8 +176,7 @@ static int __init firmware_sample_init(v
+ if (!class_dev)
+ return -ENOMEM;
+
+- error = fw_setup_class_device(class_dev, "my_firmware_image",
+- &my_device);
++ error = fw_setup_device(class_dev, "my_firmware_image", &my_device);
+ if (error) {
+ kfree(class_dev);
+ return error;