提交 60043428 编写于 作者: T tonyj@suse.de 提交者: Greg Kroah-Hartman

Convert from class_device to device for drivers/video

Convert from class_device to device for drivers/video.
Signed-off-by: NTony Jones <tonyj@suse.de>
Signed-off-by: NKay Sievers <kay.sievers@vrfy.org>
Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
上级 34b51f39
...@@ -316,7 +316,7 @@ static int acpi_video_output_get(struct output_device *od) ...@@ -316,7 +316,7 @@ static int acpi_video_output_get(struct output_device *od)
{ {
unsigned long state; unsigned long state;
struct acpi_video_device *vd = struct acpi_video_device *vd =
(struct acpi_video_device *)class_get_devdata(&od->class_dev); (struct acpi_video_device *)dev_get_drvdata(&od->dev);
acpi_video_device_get_state(vd, &state); acpi_video_device_get_state(vd, &state);
return (int)state; return (int)state;
} }
...@@ -325,7 +325,7 @@ static int acpi_video_output_set(struct output_device *od) ...@@ -325,7 +325,7 @@ static int acpi_video_output_set(struct output_device *od)
{ {
unsigned long state = od->request_state; unsigned long state = od->request_state;
struct acpi_video_device *vd= struct acpi_video_device *vd=
(struct acpi_video_device *)class_get_devdata(&od->class_dev); (struct acpi_video_device *)dev_get_drvdata(&od->dev);
return acpi_video_device_set_state(vd, state); return acpi_video_device_set_state(vd, state);
} }
......
...@@ -31,7 +31,8 @@ MODULE_DESCRIPTION("Display Output Switcher Lowlevel Control Abstraction"); ...@@ -31,7 +31,8 @@ MODULE_DESCRIPTION("Display Output Switcher Lowlevel Control Abstraction");
MODULE_LICENSE("GPL"); MODULE_LICENSE("GPL");
MODULE_AUTHOR("Luming Yu <luming.yu@intel.com>"); MODULE_AUTHOR("Luming Yu <luming.yu@intel.com>");
static ssize_t video_output_show_state(struct class_device *dev,char *buf) static ssize_t video_output_show_state(struct device *dev,
struct device_attribute *attr, char *buf)
{ {
ssize_t ret_size = 0; ssize_t ret_size = 0;
struct output_device *od = to_output_device(dev); struct output_device *od = to_output_device(dev);
...@@ -40,8 +41,9 @@ static ssize_t video_output_show_state(struct class_device *dev,char *buf) ...@@ -40,8 +41,9 @@ static ssize_t video_output_show_state(struct class_device *dev,char *buf)
return ret_size; return ret_size;
} }
static ssize_t video_output_store_state(struct class_device *dev, static ssize_t video_output_store_state(struct device *dev,
const char *buf,size_t count) struct device_attribute *attr,
const char *buf,size_t count)
{ {
char *endp; char *endp;
struct output_device *od = to_output_device(dev); struct output_device *od = to_output_device(dev);
...@@ -60,21 +62,22 @@ static ssize_t video_output_store_state(struct class_device *dev, ...@@ -60,21 +62,22 @@ static ssize_t video_output_store_state(struct class_device *dev,
return count; return count;
} }
static void video_output_class_release(struct class_device *dev) static void video_output_release(struct device *dev)
{ {
struct output_device *od = to_output_device(dev); struct output_device *od = to_output_device(dev);
kfree(od); kfree(od);
} }
static struct class_device_attribute video_output_attributes[] = { static struct device_attribute video_output_attributes[] = {
__ATTR(state, 0644, video_output_show_state, video_output_store_state), __ATTR(state, 0644, video_output_show_state, video_output_store_state),
__ATTR_NULL, __ATTR_NULL,
}; };
static struct class video_output_class = { static struct class video_output_class = {
.name = "video_output", .name = "video_output",
.release = video_output_class_release, .dev_release = video_output_release,
.class_dev_attrs = video_output_attributes, .dev_attrs = video_output_attributes,
}; };
struct output_device *video_output_register(const char *name, struct output_device *video_output_register(const char *name,
...@@ -91,11 +94,11 @@ struct output_device *video_output_register(const char *name, ...@@ -91,11 +94,11 @@ struct output_device *video_output_register(const char *name,
goto error_return; goto error_return;
} }
new_dev->props = op; new_dev->props = op;
new_dev->class_dev.class = &video_output_class; new_dev->dev.class = &video_output_class;
new_dev->class_dev.dev = dev; new_dev->dev.parent = dev;
strlcpy(new_dev->class_dev.class_id,name,KOBJ_NAME_LEN); strlcpy(new_dev->dev.bus_id,name, BUS_ID_SIZE);
class_set_devdata(&new_dev->class_dev,devdata); dev_set_drvdata(&new_dev->dev, devdata);
ret_code = class_device_register(&new_dev->class_dev); ret_code = device_register(&new_dev->dev);
if (ret_code) { if (ret_code) {
kfree(new_dev); kfree(new_dev);
goto error_return; goto error_return;
...@@ -111,7 +114,7 @@ void video_output_unregister(struct output_device *dev) ...@@ -111,7 +114,7 @@ void video_output_unregister(struct output_device *dev)
{ {
if (!dev) if (!dev)
return; return;
class_device_unregister(&dev->class_dev); device_unregister(&dev->dev);
} }
EXPORT_SYMBOL(video_output_unregister); EXPORT_SYMBOL(video_output_unregister);
......
...@@ -31,9 +31,9 @@ struct output_properties { ...@@ -31,9 +31,9 @@ struct output_properties {
struct output_device { struct output_device {
int request_state; int request_state;
struct output_properties *props; struct output_properties *props;
struct class_device class_dev; struct device dev;
}; };
#define to_output_device(obj) container_of(obj, struct output_device, class_dev) #define to_output_device(obj) container_of(obj, struct output_device, dev)
struct output_device *video_output_register(const char *name, struct output_device *video_output_register(const char *name,
struct device *dev, struct device *dev,
void *devdata, void *devdata,
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册