- 16 Apr, 2019 40 commits
-
-
Guenter Roeck authored
Use SENSOR[_DEVICE]_ATTR[_2]_{RO,RW,WO} to simplify the source code, to improve readbility, and to reduce the chance of inconsistencies. Also replace any remaining S_<PERMS> in the driver with octal values. The conversion was done automatically with coccinelle. The semantic patches and the scripts used to generate this commit log are available at https://github.com/groeck/coccinelle-patches/. This patch does not introduce functional changes. It was verified by compiling the old and new files and comparing text and data sizes. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
Super-IO accesses may fail on a system with no or unmapped LPC bus. Also, other drivers may attempt to access the LPC bus at the same time, resulting in undefined behavior. Use request_muxed_region() to ensure that IO access on the requested address space is supported, and to ensure that access by multiple drivers is synchronized. Fixes: 8d5d45fb ("I2C: Move hwmon drivers (2/3)") Reported-by: Kefeng Wang <wangkefeng.wang@huawei.com> Reported-by: John Garry <john.garry@huawei.com> Cc: John Garry <john.garry@huawei.com> Acked-by: John Garry <john.garry@huawei.com> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
Super-IO accesses may fail on a system with no or unmapped LPC bus. Also, other drivers may attempt to access the LPC bus at the same time, resulting in undefined behavior. Use request_muxed_region() to ensure that IO access on the requested address space is supported, and to ensure that access by multiple drivers is synchronized. Fixes: ba224e2c ("hwmon: New PC87427 hardware monitoring driver") Reported-by: Kefeng Wang <wangkefeng.wang@huawei.com> Reported-by: John Garry <john.garry@huawei.com> Cc: John Garry <john.garry@huawei.com> Acked-by: John Garry <john.garry@huawei.com> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
Super-IO accesses may fail on a system with no or unmapped LPC bus. Unable to handle kernel paging request at virtual address ffffffbffee0002e pgd = ffffffc1d68d4000 [ffffffbffee0002e] *pgd=0000000000000000, *pud=0000000000000000 Internal error: Oops: 94000046 [#1] PREEMPT SMP Modules linked in: f71805f(+) hwmon CPU: 3 PID: 1659 Comm: insmod Not tainted 4.5.0+ #88 Hardware name: linux,dummy-virt (DT) task: ffffffc1f6665400 ti: ffffffc1d6418000 task.ti: ffffffc1d6418000 PC is at f71805f_find+0x6c/0x358 [f71805f] Also, other drivers may attempt to access the LPC bus at the same time, resulting in undefined behavior. Use request_muxed_region() to ensure that IO access on the requested address space is supported, and to ensure that access by multiple drivers is synchronized. Fixes: e53004e2 ("hwmon: New f71805f driver") Reported-by: Kefeng Wang <wangkefeng.wang@huawei.com> Reported-by: John Garry <john.garry@huawei.com> Cc: John Garry <john.garry@huawei.com> Acked-by: John Garry <john.garry@huawei.com> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
The following build warning is seen if CONFIG_OF is disabled. drivers/hwmon/ina2xx.c:510:34: warning: ‘ina2xx_of_match’ defined but not used Mark ina2xx_of_match as __maybe_unused to fix the problem. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
The following build warning is seen if CONFIG_OF is disabled. drivers/hwmon/lm63.c:1156:34: warning: ‘lm63_of_match’ defined but not used Mark lm63_of_match as __maybe_unused to fix the problem. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
The following build warning is seen if CONFIG_OF is disabled. drivers/hwmon/lm95245.c:626:34: warning: ‘lm95245_of_match’ defined but not used Mark lm95245_of_match as __maybe_unused to fix the problem. The following build warning is always seen. drivers/hwmon/lm95245.c:95:17: warning: ‘lm95245_reg_address’ defined but not used The array is no longer used since commit c0a4b9ec ("hwmon: (lm95245) Use new hwmon registration API"). Remove it. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
The following build warning is seen if CONFIG_OF is disabled. drivers/hwmon/tmp421.c:73:34: warning: ‘tmp421_of_match’ defined but not used Mark tmp421_of_match as __maybe_unused to fix the problem. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
The following build warning is seen if CONFIG_OF is disabled. drivers/hwmon/stts751.c:88:34: warning: ‘stts751_of_match’ defined but not used Mark stts751_of_match as __maybe_unused to fix the problem. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
The following build warning is seen if CONFIG_OF is disabled. drivers/hwmon/max6621.c:573:34: warning: ‘max6621_of_match’ defined but not used Mark max6621_of_match as __maybe_unused to fix the problem. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
The following build warning is seen if CONFIG_OF is disabled. drivers/hwmon/lm85.c:1645:34: warning: ‘lm85_of_match’ defined but not used Mark lm85_of_match as __maybe_unused to ix the problem. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
If CONFIG_OF is not enabled, the following build warning is observed. drivers/hwmon/max6650.c:137:34: warning: ‘max6650_dt_match’ defined but not used Mark max6650_dt_match as __maybe_unused to fix the problem. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
If CONFIG_OF is not enabled, the following build warning is observed. drivers/hwmon/max6697.c:653:34: warning: ‘max6697_of_match’ defined but not used Mark max6697_of_match as __maybe_unused to fix the problem. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
If CONFIG_OF is not enabled, the following build warning is observed. drivers/hwmon/ina209.c:590:34: warning: ‘ina209_of_match’ defined but not used Mark ina209_of_match as __maybe_unused to fix the problem. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
If CONFIG_OF is not enabled, the following build warning is observed. drivers/hwmon/lm75.c:446:34: warning: ‘lm75_of_match’ defined but not used Mark lm75_of_match as __maybe_unused to fix the problem. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
If CONFIG_OF is not enabled, the following build warning is observed. drivers/hwmon/w83773g.c:47:34: warning: ‘w83773_of_match’ defined but not used Mark w83773_of_match as __maybe_unused to fix the problem. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
If CONFIG_OF is not enabled, the following build warning is observed. drivers/hwmon/ads7828.c:203:34: warning: ‘ads7828_of_match’ defined but not used Mark ads7828_of_match as __maybe_unused to fix the problem. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
If CONFIG_OF is not enabled, the following build warning is observed. drivers/hwmon/hih6130.c:255:34: warning: ‘hih6130_of_match’ defined but not used Mark hih6130_of_match as __maybe_unused to fix the problem. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
If CONFIG_OF is not enabled, the following build warning is observed. drivers/hwmon/adt7475.c:171:34: warning: ‘adt7475_of_match’ defined but not used Mark adt7475_of_match as __maybe_unused to fix the problem. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
If CONFIG_OF is not enabled, the following build warning is observed. drivers/hwmon/ads1015.c:310:34: warning: ‘ads1015_of_match’ defined but not used Marking ads1015_of_match as __maybe_unused fixes the problem. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
If CONFIG_OF is not enabled, the following build warning is observed. drivers/hwmon/tmp103.c:173:34: warning: ‘tmp103_of_match’ defined but not used Marking tmp103_of_match as __maybe_unused fixes the problem. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
If CONFIG_OF is not enabled, the following build warning is observed. drivers/hwmon/tmp102.c:324:34: warning: ‘tmp102_of_match’ defined but not used Mark it as __maybe_unused to fix the problem. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
If CONFIG_OF is not enabled, the following build warning is observed. drivers/hwmon/ad7414.c:218:34: warning: ‘ad7414_of_match’ defined but not used Marking ad7414_of_match as __mayybe_unused fixes the problem. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
If CONFIG_OF is not enabled, the following build warning is observed. drivers/hwmon/adc128d818.c:524:34: warning: ‘adc128_of_match’ defined but not used Mark adc128_of_match as __maybe_unused to fix the problem. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
If CONFIG_OF is not enabled, the following build warning is observed. drivers/hwmon/lm90.c:239:34: warning: ‘lm90_of_match’ defined but not used Mark lm90_of_match as __maybe_unused to fix the problem. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
If CONFIG_OF is not enabled, the following build warning is observed. drivers/hwmon/ltc4151.c:211:34: warning: ‘ltc4151_match’ defined but not used Mark ltc4151_match as __maybe_unused to fix the problem. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
If CONFIG_OF is not enabled, the following build warning is observed. drivers/hwmon/pmbus/ucd9000.c:154:34: warning: ‘ucd9000_of_match’ defined but not used Mark ucd9000_of_match as __maybe_unused to fix the problem. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
If CONFIG_OF is not enabled, the following build warning is observed. drivers/hwmon/pmbus/tps53679.c:100:34: warning: ‘tps53679_of_match’ defined but not used Marking tps53679_of_match as __maybe_unused fixes the problem. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
If CONFIG_OF is not enabled, the following build warning is observed. drivers/hwmon/pmbus/ucd9200.c:50:34: warning: ‘ucd9200_of_match’ defined but not used Mark it as __maybe_unused to fix the problem. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Andrey Smirnov authored
Since every call to devm_kasprintf() in the switch statement is mostly the same, we can move all of the shared code outside and capture differencies with two helper variables. No functional change intended. Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com> Cc: Guenter Roeck <linux@roeck-us.net> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
The new helper devm_platform_ioremap_resource() wraps platform_get_resource() and devm_ioremap_resource() together. Use it to simplify the code. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
The HWMON_CHANNEL_INFO macro simplifies the code, reduces the likelihood of errors, and makes the code easier to read. The conversion was done automatically with coccinelle. The semantic patch used to make this change is as follows. @r@ initializer list elements; identifier i; @@ -u32 i[] = { - elements, - 0 -}; @s@ identifier r.i,j,ty; @@ -struct hwmon_channel_info j = { - .type = ty, - .config = i, -}; @script:ocaml t@ ty << s.ty; elements << r.elements; shorter; elems; @@ shorter := make_ident (List.hd(List.rev (Str.split (Str.regexp "_") ty))); elems := make_ident (String.concat "," (List.map (fun x -> Printf.sprintf "\n\t\t\t %s" x) (Str.split (Str.regexp " , ") elements))) @@ identifier s.j,t.shorter; identifier t.elems; @@ - &j + HWMON_CHANNEL_INFO(shorter,elems) This patch does not introduce functional changes. Many thanks to Julia Lawall for providing the semantic patch. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
The HWMON_CHANNEL_INFO macro simplifies the code, reduces the likelihood of errors, and makes the code easier to read. The conversion was done automatically with coccinelle. The semantic patch used to make this change is as follows. @r@ initializer list elements; identifier i; @@ -u32 i[] = { - elements, - 0 -}; @s@ identifier r.i,j,ty; @@ -struct hwmon_channel_info j = { - .type = ty, - .config = i, -}; @script:ocaml t@ ty << s.ty; elements << r.elements; shorter; elems; @@ shorter := make_ident (List.hd(List.rev (Str.split (Str.regexp "_") ty))); elems := make_ident (String.concat "," (List.map (fun x -> Printf.sprintf "\n\t\t\t %s" x) (Str.split (Str.regexp " , ") elements))) @@ identifier s.j,t.shorter; identifier t.elems; @@ - &j + HWMON_CHANNEL_INFO(shorter,elems) This patch does not introduce functional changes. Many thanks to Julia Lawall for providing the semantic patch. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
The HWMON_CHANNEL_INFO macro simplifies the code, reduces the likelihood of errors, and makes the code easier to read. The conversion was done automatically with coccinelle. The semantic patch used to make this change is as follows. @r@ initializer list elements; identifier i; @@ -u32 i[] = { - elements, - 0 -}; @s@ identifier r.i,j,ty; @@ -struct hwmon_channel_info j = { - .type = ty, - .config = i, -}; @script:ocaml t@ ty << s.ty; elements << r.elements; shorter; elems; @@ shorter := make_ident (List.hd(List.rev (Str.split (Str.regexp "_") ty))); elems := make_ident (String.concat "," (List.map (fun x -> Printf.sprintf "\n\t\t\t %s" x) (Str.split (Str.regexp " , ") elements))) @@ identifier s.j,t.shorter; identifier t.elems; @@ - &j + HWMON_CHANNEL_INFO(shorter,elems) This patch does not introduce functional changes. Many thanks to Julia Lawall for providing the semantic patch. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
The HWMON_CHANNEL_INFO macro simplifies the code, reduces the likelihood of errors, and makes the code easier to read. The conversion was done automatically with coccinelle. The semantic patch used to make this change is as follows. @r@ initializer list elements; identifier i; @@ -u32 i[] = { - elements, - 0 -}; @s@ identifier r.i,j,ty; @@ -struct hwmon_channel_info j = { - .type = ty, - .config = i, -}; @script:ocaml t@ ty << s.ty; elements << r.elements; shorter; elems; @@ shorter := make_ident (List.hd(List.rev (Str.split (Str.regexp "_") ty))); elems := make_ident (String.concat "," (List.map (fun x -> Printf.sprintf "\n\t\t\t %s" x) (Str.split (Str.regexp " , ") elements))) @@ identifier s.j,t.shorter; identifier t.elems; @@ - &j + HWMON_CHANNEL_INFO(shorter,elems) This patch does not introduce functional changes. Many thanks to Julia Lawall for providing the semantic patch. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
The HWMON_CHANNEL_INFO macro simplifies the code, reduces the likelihood of errors, and makes the code easier to read. The conversion was done automatically with coccinelle. The semantic patch used to make this change is as follows. @r@ initializer list elements; identifier i; @@ -u32 i[] = { - elements, - 0 -}; @s@ identifier r.i,j,ty; @@ -struct hwmon_channel_info j = { - .type = ty, - .config = i, -}; @script:ocaml t@ ty << s.ty; elements << r.elements; shorter; elems; @@ shorter := make_ident (List.hd(List.rev (Str.split (Str.regexp "_") ty))); elems := make_ident (String.concat "," (List.map (fun x -> Printf.sprintf "\n\t\t\t %s" x) (Str.split (Str.regexp " , ") elements))) @@ identifier s.j,t.shorter; identifier t.elems; @@ - &j + HWMON_CHANNEL_INFO(shorter,elems) This patch does not introduce functional changes. Many thanks to Julia Lawall for providing the semantic patch. Cc: Avi Fishman <avifishman70@gmail.com> Cc: Tomer Maimon <tmaimon77@gmail.com> Cc: Patrick Venture <venture@google.com> Cc: Nancy Yuen <yuenn@google.com> Cc: Brendan Higgins <brendanhiggins@google.com> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
The HWMON_CHANNEL_INFO macro simplifies the code, reduces the likelihood of errors, and makes the code easier to read. The conversion was done automatically with coccinelle. The semantic patch used to make this change is as follows. @r@ initializer list elements; identifier i; @@ -u32 i[] = { - elements, - 0 -}; @s@ identifier r.i,j,ty; @@ -struct hwmon_channel_info j = { - .type = ty, - .config = i, -}; @script:ocaml t@ ty << s.ty; elements << r.elements; shorter; elems; @@ shorter := make_ident (List.hd(List.rev (Str.split (Str.regexp "_") ty))); elems := make_ident (String.concat "," (List.map (fun x -> Printf.sprintf "\n\t\t\t %s" x) (Str.split (Str.regexp " , ") elements))) @@ identifier s.j,t.shorter; identifier t.elems; @@ - &j + HWMON_CHANNEL_INFO(shorter,elems) This patch does not introduce functional changes. Many thanks to Julia Lawall for providing the semantic patch. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
The HWMON_CHANNEL_INFO macro simplifies the code, reduces the likelihood of errors, and makes the code easier to read. The conversion was done automatically with coccinelle. The semantic patch used to make this change is as follows. @r@ initializer list elements; identifier i; @@ -u32 i[] = { - elements, - 0 -}; @s@ identifier r.i,j,ty; @@ -struct hwmon_channel_info j = { - .type = ty, - .config = i, -}; @script:ocaml t@ ty << s.ty; elements << r.elements; shorter; elems; @@ shorter := make_ident (List.hd(List.rev (Str.split (Str.regexp "_") ty))); elems := make_ident (String.concat "," (List.map (fun x -> Printf.sprintf "\n\t\t\t %s" x) (Str.split (Str.regexp " , ") elements))) @@ identifier s.j,t.shorter; identifier t.elems; @@ - &j + HWMON_CHANNEL_INFO(shorter,elems) This patch does not introduce functional changes. Many thanks to Julia Lawall for providing the semantic patch. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
The HWMON_CHANNEL_INFO macro simplifies the code, reduces the likelihood of errors, and makes the code easier to read. The conversion was done automatically with coccinelle. The semantic patch used to make this change is as follows. @r@ initializer list elements; identifier i; @@ -u32 i[] = { - elements, - 0 -}; @s@ identifier r.i,j,ty; @@ -struct hwmon_channel_info j = { - .type = ty, - .config = i, -}; @script:ocaml t@ ty << s.ty; elements << r.elements; shorter; elems; @@ shorter := make_ident (List.hd(List.rev (Str.split (Str.regexp "_") ty))); elems := make_ident (String.concat "," (List.map (fun x -> Printf.sprintf "\n\t\t\t %s" x) (Str.split (Str.regexp " , ") elements))) @@ identifier s.j,t.shorter; identifier t.elems; @@ - &j + HWMON_CHANNEL_INFO(shorter,elems) This patch does not introduce functional changes. Many thanks to Julia Lawall for providing the semantic patch. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
The HWMON_CHANNEL_INFO macro simplifies the code, reduces the likelihood of errors, and makes the code easier to read. The conversion was done automatically with coccinelle. The semantic patch used to make this change is as follows. @r@ initializer list elements; identifier i; @@ -u32 i[] = { - elements, - 0 -}; @s@ identifier r.i,j,ty; @@ -struct hwmon_channel_info j = { - .type = ty, - .config = i, -}; @script:ocaml t@ ty << s.ty; elements << r.elements; shorter; elems; @@ shorter := make_ident (List.hd(List.rev (Str.split (Str.regexp "_") ty))); elems := make_ident (String.concat "," (List.map (fun x -> Printf.sprintf "\n\t\t\t %s" x) (Str.split (Str.regexp " , ") elements))) @@ identifier s.j,t.shorter; identifier t.elems; @@ - &j + HWMON_CHANNEL_INFO(shorter,elems) This patch does not introduce functional changes. Many thanks to Julia Lawall for providing the semantic patch. Signed-off-by: Guenter Roeck <linux@roeck-us.net>
-