diff options
| author | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2023-05-01 15:20:08 -0700 | 
|---|---|---|
| committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2023-05-01 15:20:08 -0700 | 
| commit | 9a87ffc99ec8eb8d35eed7c4f816d75f5cc9662e (patch) | |
| tree | d57f3a63479a07b4e0cece029886e76e04feb984 /include/linux/platform_device.h | |
| parent | 5dc63e56a9cf8df0b59c234a505a1653f1bdf885 (diff) | |
| parent | 53bea86b5712c7491bb3dae12e271666df0a308c (diff) | |
Merge branch 'next' into for-linus
Prepare input updates for 6.4 merge window.
Diffstat (limited to 'include/linux/platform_device.h')
| -rw-r--r-- | include/linux/platform_device.h | 11 | 
1 files changed, 11 insertions, 0 deletions
diff --git a/include/linux/platform_device.h b/include/linux/platform_device.h index b0d5a253156e..b845fd83f429 100644 --- a/include/linux/platform_device.h +++ b/include/linux/platform_device.h @@ -207,7 +207,18 @@ extern void platform_device_put(struct platform_device *pdev);  struct platform_driver {  	int (*probe)(struct platform_device *); + +	/* +	 * Traditionally the remove callback returned an int which however is +	 * ignored by the driver core. This led to wrong expectations by driver +	 * authors who thought returning an error code was a valid error +	 * handling strategy. To convert to a callback returning void, new +	 * drivers should implement .remove_new() until the conversion it done +	 * that eventually makes .remove() return void. +	 */  	int (*remove)(struct platform_device *); +	void (*remove_new)(struct platform_device *); +  	void (*shutdown)(struct platform_device *);  	int (*suspend)(struct platform_device *, pm_message_t state);  	int (*resume)(struct platform_device *);  | 
