diff options
Diffstat (limited to 'drivers/platform/chrome')
| -rw-r--r-- | drivers/platform/chrome/chromeos_of_hw_prober.c | 2 | ||||
| -rw-r--r-- | drivers/platform/chrome/cros_ec_chardev.c | 4 | ||||
| -rw-r--r-- | drivers/platform/chrome/cros_ec_debugfs.c | 4 | ||||
| -rw-r--r-- | drivers/platform/chrome/cros_ec_lightbar.c | 4 | ||||
| -rw-r--r-- | drivers/platform/chrome/cros_ec_sensorhub.c | 4 | ||||
| -rw-r--r-- | drivers/platform/chrome/cros_ec_sensorhub_ring.c | 17 | ||||
| -rw-r--r-- | drivers/platform/chrome/cros_ec_sysfs.c | 4 | ||||
| -rw-r--r-- | drivers/platform/chrome/cros_ec_typec.c | 6 | ||||
| -rw-r--r-- | drivers/platform/chrome/cros_ec_vbc.c | 4 | ||||
| -rw-r--r-- | drivers/platform/chrome/cros_kbd_led_backlight.c | 4 | ||||
| -rw-r--r-- | drivers/platform/chrome/cros_usbpd_logger.c | 4 | ||||
| -rw-r--r-- | drivers/platform/chrome/cros_usbpd_notify.c | 4 | ||||
| -rw-r--r-- | drivers/platform/chrome/wilco_ec/core.c | 4 | ||||
| -rw-r--r-- | drivers/platform/chrome/wilco_ec/debugfs.c | 4 | ||||
| -rw-r--r-- | drivers/platform/chrome/wilco_ec/telemetry.c | 4 |
15 files changed, 47 insertions, 26 deletions
diff --git a/drivers/platform/chrome/chromeos_of_hw_prober.c b/drivers/platform/chrome/chromeos_of_hw_prober.c index f3cd612e5584..8562a0e89dc6 100644 --- a/drivers/platform/chrome/chromeos_of_hw_prober.c +++ b/drivers/platform/chrome/chromeos_of_hw_prober.c @@ -100,7 +100,7 @@ static const struct hw_prober_entry hw_prober_platforms[] = { }, { .compatible = "google,spherion", .prober = chromeos_i2c_component_prober, - .data = &chromeos_i2c_probe_hana_trackpad, + .data = &chromeos_i2c_probe_dumb_trackpad, }, { .compatible = "google,squirtle", .prober = chromeos_i2c_component_prober, diff --git a/drivers/platform/chrome/cros_ec_chardev.c b/drivers/platform/chrome/cros_ec_chardev.c index 399ab85b6191..18763947aaa7 100644 --- a/drivers/platform/chrome/cros_ec_chardev.c +++ b/drivers/platform/chrome/cros_ec_chardev.c @@ -484,8 +484,8 @@ static void cros_ec_chardev_remove(struct platform_device *pdev) } static const struct platform_device_id cros_ec_chardev_id[] = { - { DRV_NAME, 0 }, - {} + { .name = DRV_NAME }, + { } }; MODULE_DEVICE_TABLE(platform, cros_ec_chardev_id); diff --git a/drivers/platform/chrome/cros_ec_debugfs.c b/drivers/platform/chrome/cros_ec_debugfs.c index 139cab6fcba1..a1c76e6552f0 100644 --- a/drivers/platform/chrome/cros_ec_debugfs.c +++ b/drivers/platform/chrome/cros_ec_debugfs.c @@ -557,8 +557,8 @@ static SIMPLE_DEV_PM_OPS(cros_ec_debugfs_pm_ops, cros_ec_debugfs_suspend, cros_ec_debugfs_resume); static const struct platform_device_id cros_ec_debugfs_id[] = { - { DRV_NAME, 0 }, - {} + { .name = DRV_NAME }, + { } }; MODULE_DEVICE_TABLE(platform, cros_ec_debugfs_id); diff --git a/drivers/platform/chrome/cros_ec_lightbar.c b/drivers/platform/chrome/cros_ec_lightbar.c index ac919c14c631..b0a31c6ef5fd 100644 --- a/drivers/platform/chrome/cros_ec_lightbar.c +++ b/drivers/platform/chrome/cros_ec_lightbar.c @@ -683,8 +683,8 @@ static SIMPLE_DEV_PM_OPS(cros_ec_lightbar_pm_ops, cros_ec_lightbar_suspend, cros_ec_lightbar_resume); static const struct platform_device_id cros_ec_lightbar_id[] = { - { DRV_NAME, 0 }, - {} + { .name = DRV_NAME }, + { } }; MODULE_DEVICE_TABLE(platform, cros_ec_lightbar_id); diff --git a/drivers/platform/chrome/cros_ec_sensorhub.c b/drivers/platform/chrome/cros_ec_sensorhub.c index f7019fb80a76..a8395ab0a12a 100644 --- a/drivers/platform/chrome/cros_ec_sensorhub.c +++ b/drivers/platform/chrome/cros_ec_sensorhub.c @@ -267,8 +267,8 @@ static SIMPLE_DEV_PM_OPS(cros_ec_sensorhub_pm_ops, cros_ec_sensorhub_resume); static const struct platform_device_id cros_ec_sensorhub_id[] = { - { DRV_NAME, 0 }, - {} + { .name = DRV_NAME }, + { } }; MODULE_DEVICE_TABLE(platform, cros_ec_sensorhub_id); diff --git a/drivers/platform/chrome/cros_ec_sensorhub_ring.c b/drivers/platform/chrome/cros_ec_sensorhub_ring.c index a10579144c34..92941924c347 100644 --- a/drivers/platform/chrome/cros_ec_sensorhub_ring.c +++ b/drivers/platform/chrome/cros_ec_sensorhub_ring.c @@ -825,8 +825,15 @@ static void cros_ec_sensorhub_ring_handler(struct cros_ec_sensorhub *sensorhub) sensorhub->msg->outsize = 1; sensorhub->msg->insize = fifo_info_length; - if (cros_ec_cmd_xfer_status(ec->ec_dev, sensorhub->msg) < 0) + ret = cros_ec_cmd_xfer_status(ec->ec_dev, sensorhub->msg); + if (ret < 0) + goto error; + if (ret != fifo_info_length) { + dev_warn_ratelimited(sensorhub->dev, + "Mismatch read length: size %d - expected %d\n", + ret, fifo_info_length); goto error; + } memcpy(fifo_info, &sensorhub->resp->fifo_info, fifo_info_length); @@ -890,6 +897,14 @@ static void cros_ec_sensorhub_ring_handler(struct cros_ec_sensorhub *sensorhub) for (in = sensorhub->resp->fifo_read.data, j = 0; j < number_data; j++, in++) { + /* Skip event if sensor_num from EC is out of bounds. */ + if (in->sensor_num >= sensorhub->sensor_num) { + dev_warn_ratelimited(sensorhub->dev, + "Invalid sensor number %u from EC\n", + in->sensor_num); + continue; + } + if (cros_ec_sensor_ring_process_event( sensorhub, fifo_info, fifo_timestamp, diff --git a/drivers/platform/chrome/cros_ec_sysfs.c b/drivers/platform/chrome/cros_ec_sysfs.c index b668a3cc118e..fad593df3b58 100644 --- a/drivers/platform/chrome/cros_ec_sysfs.c +++ b/drivers/platform/chrome/cros_ec_sysfs.c @@ -420,8 +420,8 @@ static void cros_ec_sysfs_remove(struct platform_device *pd) } static const struct platform_device_id cros_ec_sysfs_id[] = { - { DRV_NAME, 0 }, - {} + { .name = DRV_NAME }, + { } }; MODULE_DEVICE_TABLE(platform, cros_ec_sysfs_id); diff --git a/drivers/platform/chrome/cros_ec_typec.c b/drivers/platform/chrome/cros_ec_typec.c index c0806c562bb9..50a68819ceb7 100644 --- a/drivers/platform/chrome/cros_ec_typec.c +++ b/drivers/platform/chrome/cros_ec_typec.c @@ -1119,6 +1119,12 @@ static void cros_typec_register_partner_pdos(struct cros_typec_data *typec, if (!resp->source_cap_count && !resp->sink_cap_count) return; + if (resp->source_cap_count > PDO_MAX_OBJECTS || + resp->sink_cap_count > PDO_MAX_OBJECTS) { + dev_warn(typec->dev, "Invalid PDO count from EC, port: %d\n", port_num); + return; + } + port->partner_pd = typec_partner_usb_power_delivery_register(port->partner, &desc); if (IS_ERR(port->partner_pd)) { dev_warn(typec->dev, "Failed to register partner PD device, port: %d\n", port_num); diff --git a/drivers/platform/chrome/cros_ec_vbc.c b/drivers/platform/chrome/cros_ec_vbc.c index 061e84b32b04..c21e1f85f2fb 100644 --- a/drivers/platform/chrome/cros_ec_vbc.c +++ b/drivers/platform/chrome/cros_ec_vbc.c @@ -134,8 +134,8 @@ static void cros_ec_vbc_remove(struct platform_device *pd) } static const struct platform_device_id cros_ec_vbc_id[] = { - { DRV_NAME, 0 }, - {} + { .name = DRV_NAME }, + { } }; MODULE_DEVICE_TABLE(platform, cros_ec_vbc_id); diff --git a/drivers/platform/chrome/cros_kbd_led_backlight.c b/drivers/platform/chrome/cros_kbd_led_backlight.c index 906eb490e506..94888db1c00e 100644 --- a/drivers/platform/chrome/cros_kbd_led_backlight.c +++ b/drivers/platform/chrome/cros_kbd_led_backlight.c @@ -220,8 +220,8 @@ MODULE_DEVICE_TABLE(acpi, keyboard_led_acpi_match); #endif static const struct platform_device_id keyboard_led_id[] = { - { "cros-keyboard-leds", 0 }, - {} + { .name = "cros-keyboard-leds" }, + { } }; MODULE_DEVICE_TABLE(platform, keyboard_led_id); diff --git a/drivers/platform/chrome/cros_usbpd_logger.c b/drivers/platform/chrome/cros_usbpd_logger.c index 060a49f2b962..0eb714d679c8 100644 --- a/drivers/platform/chrome/cros_usbpd_logger.c +++ b/drivers/platform/chrome/cros_usbpd_logger.c @@ -248,8 +248,8 @@ static SIMPLE_DEV_PM_OPS(cros_usbpd_logger_pm_ops, cros_usbpd_logger_suspend, cros_usbpd_logger_resume); static const struct platform_device_id cros_usbpd_logger_id[] = { - { DRV_NAME, 0 }, - {} + { .name = DRV_NAME }, + { } }; MODULE_DEVICE_TABLE(platform, cros_usbpd_logger_id); diff --git a/drivers/platform/chrome/cros_usbpd_notify.c b/drivers/platform/chrome/cros_usbpd_notify.c index 828f00a3191b..d842c05f4db0 100644 --- a/drivers/platform/chrome/cros_usbpd_notify.c +++ b/drivers/platform/chrome/cros_usbpd_notify.c @@ -232,8 +232,8 @@ static void cros_usbpd_notify_remove_plat(struct platform_device *pdev) } static const struct platform_device_id cros_usbpd_notify_id[] = { - { DRV_NAME, 0 }, - {} + { .name = DRV_NAME }, + { } }; MODULE_DEVICE_TABLE(platform, cros_usbpd_notify_id); diff --git a/drivers/platform/chrome/wilco_ec/core.c b/drivers/platform/chrome/wilco_ec/core.c index fd2a9bc8327c..9d4521889d40 100644 --- a/drivers/platform/chrome/wilco_ec/core.c +++ b/drivers/platform/chrome/wilco_ec/core.c @@ -151,8 +151,8 @@ static const struct acpi_device_id wilco_ec_acpi_device_ids[] = { MODULE_DEVICE_TABLE(acpi, wilco_ec_acpi_device_ids); static const struct platform_device_id wilco_ec_id[] = { - { DRV_NAME, 0 }, - {} + { .name = DRV_NAME }, + { } }; MODULE_DEVICE_TABLE(platform, wilco_ec_id); diff --git a/drivers/platform/chrome/wilco_ec/debugfs.c b/drivers/platform/chrome/wilco_ec/debugfs.c index e43ad67b9bcb..32fb11939b9b 100644 --- a/drivers/platform/chrome/wilco_ec/debugfs.c +++ b/drivers/platform/chrome/wilco_ec/debugfs.c @@ -265,8 +265,8 @@ static void wilco_ec_debugfs_remove(struct platform_device *pdev) } static const struct platform_device_id wilco_ec_debugfs_id[] = { - { DRV_NAME, 0 }, - {} + { .name = DRV_NAME }, + { } }; MODULE_DEVICE_TABLE(platform, wilco_ec_debugfs_id); diff --git a/drivers/platform/chrome/wilco_ec/telemetry.c b/drivers/platform/chrome/wilco_ec/telemetry.c index 05e35d1b16a6..45be318b05f6 100644 --- a/drivers/platform/chrome/wilco_ec/telemetry.c +++ b/drivers/platform/chrome/wilco_ec/telemetry.c @@ -409,8 +409,8 @@ static void telem_device_remove(struct platform_device *pdev) } static const struct platform_device_id telem_id[] = { - { DRV_NAME, 0 }, - {} + { .name = DRV_NAME }, + { } }; MODULE_DEVICE_TABLE(platform, telem_id); |
