summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorJosua Mayer <josua@solid-run.com>2024-03-07 12:06:58 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2024-04-13 12:50:06 +0200
commitf6b084787b7d9bd4009e0d6d1f0cc79349f7efcd (patch)
tree5d137632b675118cfd166c53a858fd9bc1080291 /drivers
parent14db3446d26511191088a941069bcdec97223728 (diff)
downloadlinux-stable-f6b084787b7d9bd4009e0d6d1f0cc79349f7efcd.tar.gz
linux-stable-f6b084787b7d9bd4009e0d6d1f0cc79349f7efcd.tar.bz2
linux-stable-f6b084787b7d9bd4009e0d6d1f0cc79349f7efcd.zip
hwmon: (amc6821) add of_match table
[ Upstream commit 3f003fda98a7a8d5f399057d92e6ed56b468657c ] Add of_match table for "ti,amc6821" compatible string. This fixes automatic driver loading by userspace when using device-tree, and if built as a module like major linux distributions do. While devices probe just fine with i2c_device_id table, userspace can't match the "ti,amc6821" compatible string from dt with the plain "amc6821" device id. As a result, the kernel module can not be loaded. Cc: stable@vger.kernel.org Signed-off-by: Josua Mayer <josua@solid-run.com> Link: https://lore.kernel.org/r/20240307-amc6821-of-match-v1-1-5f40464a3110@solid-run.com [groeck: Cleaned up patch description] Signed-off-by: Guenter Roeck <linux@roeck-us.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/hwmon/amc6821.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/hwmon/amc6821.c b/drivers/hwmon/amc6821.c
index 46b4e35fd555..b562337df7b3 100644
--- a/drivers/hwmon/amc6821.c
+++ b/drivers/hwmon/amc6821.c
@@ -1003,10 +1003,21 @@ static const struct i2c_device_id amc6821_id[] = {
MODULE_DEVICE_TABLE(i2c, amc6821_id);
+static const struct of_device_id __maybe_unused amc6821_of_match[] = {
+ {
+ .compatible = "ti,amc6821",
+ .data = (void *)amc6821,
+ },
+ { }
+};
+
+MODULE_DEVICE_TABLE(of, amc6821_of_match);
+
static struct i2c_driver amc6821_driver = {
.class = I2C_CLASS_HWMON,
.driver = {
.name = "amc6821",
+ .of_match_table = of_match_ptr(amc6821_of_match),
},
.probe = amc6821_probe,
.id_table = amc6821_id,