Skip to content

Commit 775a15e

Browse files
committed
Merge tag 'platform-drivers-x86-v6.13-6' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86
Pull x86 platform driver fixes from Ilpo Järvinen: - dell-uart-backlight: Fix serdev race - lenovo-yoga-tab2-pro-1380-fastcharger: Fix serdev race * tag 'platform-drivers-x86-v6.13-6' of git://git.kernel.org/pub/scm/linux/kernel/git/pdx86/platform-drivers-x86: platform/x86: lenovo-yoga-tab2-pro-1380-fastcharger: fix serdev race platform/x86: dell-uart-backlight: fix serdev race
2 parents 42f38cc + 59616a9 commit 775a15e

File tree

2 files changed

+6
-4
lines changed

2 files changed

+6
-4
lines changed

drivers/platform/x86/dell/dell-uart-backlight.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -283,15 +283,16 @@ static int dell_uart_bl_serdev_probe(struct serdev_device *serdev)
283283
init_waitqueue_head(&dell_bl->wait_queue);
284284
dell_bl->dev = dev;
285285

286+
serdev_device_set_drvdata(serdev, dell_bl);
287+
serdev_device_set_client_ops(serdev, &dell_uart_bl_serdev_ops);
288+
286289
ret = devm_serdev_device_open(dev, serdev);
287290
if (ret)
288291
return dev_err_probe(dev, ret, "opening UART device\n");
289292

290293
/* 9600 bps, no flow control, these are the default but set them to be sure */
291294
serdev_device_set_baudrate(serdev, 9600);
292295
serdev_device_set_flow_control(serdev, false);
293-
serdev_device_set_drvdata(serdev, dell_bl);
294-
serdev_device_set_client_ops(serdev, &dell_uart_bl_serdev_ops);
295296

296297
get_version[0] = DELL_SOF(GET_CMD_LEN);
297298
get_version[1] = CMD_GET_VERSION;

drivers/platform/x86/lenovo-yoga-tab2-pro-1380-fastcharger.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -199,14 +199,15 @@ static int yt2_1380_fc_serdev_probe(struct serdev_device *serdev)
199199
if (ret)
200200
return ret;
201201

202+
serdev_device_set_drvdata(serdev, fc);
203+
serdev_device_set_client_ops(serdev, &yt2_1380_fc_serdev_ops);
204+
202205
ret = devm_serdev_device_open(dev, serdev);
203206
if (ret)
204207
return dev_err_probe(dev, ret, "opening UART device\n");
205208

206209
serdev_device_set_baudrate(serdev, 600);
207210
serdev_device_set_flow_control(serdev, false);
208-
serdev_device_set_drvdata(serdev, fc);
209-
serdev_device_set_client_ops(serdev, &yt2_1380_fc_serdev_ops);
210211

211212
ret = devm_extcon_register_notifier_all(dev, fc->extcon, &fc->nb);
212213
if (ret)

0 commit comments

Comments
 (0)