a5300ca3094b90c54af2083f46799e41519b7886
[openwrt/staging/rmilecki.git] /
1 From 7ba7db27d18d141973ad7eaf1f339218d81a31a4 Mon Sep 17 00:00:00 2001
2 From: Stefan Wahren <stefan.wahren@i2se.com>
3 Date: Sat, 13 Oct 2018 20:51:23 +0200
4 Subject: [PATCH] staging: vchiq_arm: Fix platform device
5 unregistration
6
7 In error case platform_device_register_data would return an ERR_PTR
8 instead of NULL. So we better check this before unregistration.
9
10 Fixes: 37b7b3087a2f ("staging/vc04_services: Register a platform device for the camera driver.")
11 Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
12 ---
13 drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.c | 3 ++-
14 1 file changed, 2 insertions(+), 1 deletion(-)
15
16 --- a/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.c
17 +++ b/drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.c
18 @@ -3258,7 +3258,8 @@ failed_platform_init:
19
20 static int vchiq_remove(struct platform_device *pdev)
21 {
22 - platform_device_unregister(bcm2835_camera);
23 + if (!IS_ERR(bcm2835_camera))
24 + platform_device_unregister(bcm2835_camera);
25 vchiq_debugfs_deinit();
26 device_destroy(vchiq_class, vchiq_devid);
27 cdev_del(&vchiq_cdev);