Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

soc: apple: sart: drop device reference after lookup

Holding a reference to a device does not prevent its driver data from
going away so there is no point in keeping the reference after looking
up the sart device.

Signed-off-by: Johan Hovold <johan@kernel.org>
Reviewed-by: Neal Gompa <neal@gompa.dev>
Signed-off-by: Sven Peter <sven@kernel.org>

authored by

Johan Hovold and committed by
Sven Peter
f95f3bce f401671e

+2 -11
+2 -11
drivers/soc/apple/sart.c
··· 214 214 return 0; 215 215 } 216 216 217 - static void apple_sart_put_device(void *dev) 218 - { 219 - put_device(dev); 220 - } 221 - 222 217 struct apple_sart *devm_apple_sart_get(struct device *dev) 223 218 { 224 219 struct device_node *sart_node; 225 220 struct platform_device *sart_pdev; 226 221 struct apple_sart *sart; 227 - int ret; 228 222 229 223 sart_node = of_parse_phandle(dev->of_node, "apple,sart", 0); 230 224 if (!sart_node) ··· 236 242 return ERR_PTR(-EPROBE_DEFER); 237 243 } 238 244 239 - ret = devm_add_action_or_reset(dev, apple_sart_put_device, 240 - &sart_pdev->dev); 241 - if (ret) 242 - return ERR_PTR(ret); 243 - 244 245 device_link_add(dev, &sart_pdev->dev, 245 246 DL_FLAG_PM_RUNTIME | DL_FLAG_AUTOREMOVE_SUPPLIER); 247 + 248 + put_device(&sart_pdev->dev); 246 249 247 250 return sart; 248 251 }