@@ -947,6 +947,15 @@ static int watchdog_cdev_register(struct watchdog_device *wdd)
947
947
if (IS_ERR_OR_NULL (watchdog_kworker ))
948
948
return - ENODEV ;
949
949
950
+ device_initialize (& wd_data -> dev );
951
+ wd_data -> dev .devt = MKDEV (MAJOR (watchdog_devt ), wdd -> id );
952
+ wd_data -> dev .class = & watchdog_class ;
953
+ wd_data -> dev .parent = wdd -> parent ;
954
+ wd_data -> dev .groups = wdd -> groups ;
955
+ wd_data -> dev .release = watchdog_core_data_release ;
956
+ dev_set_drvdata (& wd_data -> dev , wdd );
957
+ dev_set_name (& wd_data -> dev , "watchdog%d" , wdd -> id );
958
+
950
959
kthread_init_work (& wd_data -> work , watchdog_ping_work );
951
960
hrtimer_init (& wd_data -> timer , CLOCK_MONOTONIC , HRTIMER_MODE_REL );
952
961
wd_data -> timer .function = watchdog_timer_expired ;
@@ -967,15 +976,6 @@ static int watchdog_cdev_register(struct watchdog_device *wdd)
967
976
}
968
977
}
969
978
970
- device_initialize (& wd_data -> dev );
971
- wd_data -> dev .devt = MKDEV (MAJOR (watchdog_devt ), wdd -> id );
972
- wd_data -> dev .class = & watchdog_class ;
973
- wd_data -> dev .parent = wdd -> parent ;
974
- wd_data -> dev .groups = wdd -> groups ;
975
- wd_data -> dev .release = watchdog_core_data_release ;
976
- dev_set_drvdata (& wd_data -> dev , wdd );
977
- dev_set_name (& wd_data -> dev , "watchdog%d" , wdd -> id );
978
-
979
979
/* Fill in the data structures */
980
980
cdev_init (& wd_data -> cdev , & watchdog_fops );
981
981
0 commit comments