99
1010#define pr_fmt (fmt ) "ACPI: video: " fmt
1111
12+ #include <linux/auxiliary_bus.h>
1213#include <linux/kernel.h>
1314#include <linux/module.h>
1415#include <linux/init.h>
2122#include <linux/sort.h>
2223#include <linux/pci.h>
2324#include <linux/pci_ids.h>
24- #include <linux/platform_device.h>
2525#include <linux/slab.h>
2626#include <linux/dmi.h>
2727#include <linux/suspend.h>
@@ -77,8 +77,9 @@ static int register_count;
7777static DEFINE_MUTEX (register_count_mutex );
7878static DEFINE_MUTEX (video_list_lock );
7979static LIST_HEAD (video_bus_head );
80- static int acpi_video_bus_probe (struct platform_device * pdev );
81- static void acpi_video_bus_remove (struct platform_device * pdev );
80+ static int acpi_video_bus_probe (struct auxiliary_device * aux_dev ,
81+ const struct auxiliary_device_id * id );
82+ static void acpi_video_bus_remove (struct auxiliary_device * aux );
8283static void acpi_video_bus_notify (acpi_handle handle , u32 event , void * data );
8384
8485/*
@@ -93,19 +94,16 @@ enum acpi_video_level_idx {
9394 ACPI_VIDEO_FIRST_LEVEL , /* actual supported levels begin here */
9495};
9596
96- static const struct acpi_device_id video_device_ids [] = {
97- {ACPI_VIDEO_HID , 0 },
98- {"" , 0 },
97+ static const struct auxiliary_device_id video_bus_auxiliary_id_table [] = {
98+ { . name = "acpi.video_bus" },
99+ {},
99100};
100- MODULE_DEVICE_TABLE (acpi , video_device_ids );
101+ MODULE_DEVICE_TABLE (auxiliary , video_bus_auxiliary_id_table );
101102
102- static struct platform_driver acpi_video_bus = {
103+ static struct auxiliary_driver acpi_video_bus = {
103104 .probe = acpi_video_bus_probe ,
104105 .remove = acpi_video_bus_remove ,
105- .driver = {
106- .name = "acpi-video" ,
107- .acpi_match_table = video_device_ids ,
108- },
106+ .id_table = video_bus_auxiliary_id_table ,
109107};
110108
111109struct acpi_video_bus_flags {
@@ -1885,7 +1883,7 @@ static void acpi_video_dev_add_notify_handler(struct acpi_video_device *device)
18851883}
18861884
18871885static int acpi_video_bus_add_notify_handler (struct acpi_video_bus * video ,
1888- struct platform_device * pdev )
1886+ struct device * parent )
18891887{
18901888 struct input_dev * input ;
18911889 struct acpi_video_device * dev ;
@@ -1908,7 +1906,7 @@ static int acpi_video_bus_add_notify_handler(struct acpi_video_bus *video,
19081906 input -> phys = video -> phys ;
19091907 input -> id .bustype = BUS_HOST ;
19101908 input -> id .product = 0x06 ;
1911- input -> dev .parent = & pdev -> dev ;
1909+ input -> dev .parent = parent ;
19121910 input -> evbit [0 ] = BIT (EV_KEY );
19131911 set_bit (KEY_SWITCHVIDEOMODE , input -> keybit );
19141912 set_bit (KEY_VIDEO_NEXT , input -> keybit );
@@ -1980,9 +1978,10 @@ static int acpi_video_bus_put_devices(struct acpi_video_bus *video)
19801978
19811979static int instance ;
19821980
1983- static int acpi_video_bus_probe (struct platform_device * pdev )
1981+ static int acpi_video_bus_probe (struct auxiliary_device * aux_dev ,
1982+ const struct auxiliary_device_id * id_unused )
19841983{
1985- struct acpi_device * device = ACPI_COMPANION (& pdev -> dev );
1984+ struct acpi_device * device = ACPI_COMPANION (& aux_dev -> dev );
19861985 struct acpi_video_bus * video ;
19871986 bool auto_detect ;
19881987 int error ;
@@ -2019,7 +2018,7 @@ static int acpi_video_bus_probe(struct platform_device *pdev)
20192018 instance ++ ;
20202019 }
20212020
2022- platform_set_drvdata ( pdev , video );
2021+ auxiliary_set_drvdata ( aux_dev , video );
20232022
20242023 video -> device = device ;
20252024 strscpy (acpi_device_name (device ), ACPI_VIDEO_BUS_NAME );
@@ -2068,7 +2067,7 @@ static int acpi_video_bus_probe(struct platform_device *pdev)
20682067 !auto_detect )
20692068 acpi_video_bus_register_backlight (video );
20702069
2071- error = acpi_video_bus_add_notify_handler (video , pdev );
2070+ error = acpi_video_bus_add_notify_handler (video , & aux_dev -> dev );
20722071 if (error )
20732072 goto err_del ;
20742073
@@ -2096,10 +2095,10 @@ static int acpi_video_bus_probe(struct platform_device *pdev)
20962095 return error ;
20972096}
20982097
2099- static void acpi_video_bus_remove (struct platform_device * pdev )
2098+ static void acpi_video_bus_remove (struct auxiliary_device * aux_dev )
21002099{
2101- struct acpi_video_bus * video = platform_get_drvdata ( pdev );
2102- struct acpi_device * device = ACPI_COMPANION (& pdev -> dev );
2100+ struct acpi_video_bus * video = auxiliary_get_drvdata ( aux_dev );
2101+ struct acpi_device * device = ACPI_COMPANION (& aux_dev -> dev );
21032102
21042103 acpi_dev_remove_notify_handler (device , ACPI_DEVICE_NOTIFY ,
21052104 acpi_video_bus_notify );
@@ -2163,7 +2162,7 @@ int acpi_video_register(void)
21632162
21642163 dmi_check_system (video_dmi_table );
21652164
2166- ret = platform_driver_register (& acpi_video_bus );
2165+ ret = auxiliary_driver_register (& acpi_video_bus );
21672166 if (ret )
21682167 goto leave ;
21692168
@@ -2183,7 +2182,7 @@ void acpi_video_unregister(void)
21832182{
21842183 mutex_lock (& register_count_mutex );
21852184 if (register_count ) {
2186- platform_driver_unregister (& acpi_video_bus );
2185+ auxiliary_driver_unregister (& acpi_video_bus );
21872186 register_count = 0 ;
21882187 may_report_brightness_keys = false;
21892188 }
0 commit comments