aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/firmware/dmi_scan.c
diff options
context:
space:
mode:
authorIvan Khoronzhuk <ivan.khoronzhuk@linaro.org>2015-02-18 06:33:21 -0500
committerMatt Fleming <matt.fleming@intel.com>2015-03-26 10:00:15 -0400
commit552e19d8764aeea3ecdf6cf29e22d6b99a505091 (patch)
tree6174dd9aeae063a12001455cbb6c6772bc69fbc2 /drivers/firmware/dmi_scan.c
parent95be58df74a5b21e5a78e45fddb2fd59112524c5 (diff)
firmware: dmi_scan: Use direct access to static vars
There is no reason to pass static vars to function that can use only them. The dmi_table() can use only dmi_len and dmi_num static vars, so use them directly. In this case we can freely change their type in one place and slightly decrease redundancy. Signed-off-by: Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org> Signed-off-by: Matt Fleming <matt.fleming@intel.com>
Diffstat (limited to 'drivers/firmware/dmi_scan.c')
-rw-r--r--drivers/firmware/dmi_scan.c17
1 files changed, 9 insertions, 8 deletions
diff --git a/drivers/firmware/dmi_scan.c b/drivers/firmware/dmi_scan.c
index c8f9e9d3bf91..c9cb725520c5 100644
--- a/drivers/firmware/dmi_scan.c
+++ b/drivers/firmware/dmi_scan.c
@@ -18,6 +18,8 @@
18static const char dmi_empty_string[] = " "; 18static const char dmi_empty_string[] = " ";
19 19
20static u32 dmi_ver __initdata; 20static u32 dmi_ver __initdata;
21static u32 dmi_len;
22static u16 dmi_num;
21/* 23/*
22 * Catch too early calls to dmi_check_system(): 24 * Catch too early calls to dmi_check_system():
23 */ 25 */
@@ -78,7 +80,7 @@ static const char * __init dmi_string(const struct dmi_header *dm, u8 s)
78 * We have to be cautious here. We have seen BIOSes with DMI pointers 80 * We have to be cautious here. We have seen BIOSes with DMI pointers
79 * pointing to completely the wrong place for example 81 * pointing to completely the wrong place for example
80 */ 82 */
81static void dmi_table(u8 *buf, u32 len, int num, 83static void dmi_table(u8 *buf,
82 void (*decode)(const struct dmi_header *, void *), 84 void (*decode)(const struct dmi_header *, void *),
83 void *private_data) 85 void *private_data)
84{ 86{
@@ -89,7 +91,8 @@ static void dmi_table(u8 *buf, u32 len, int num,
89 * Stop when we see all the items the table claimed to have 91 * Stop when we see all the items the table claimed to have
90 * OR we run off the end of the table (also happens) 92 * OR we run off the end of the table (also happens)
91 */ 93 */
92 while ((i < num) && (data - buf + sizeof(struct dmi_header)) <= len) { 94 while ((i < dmi_num) && (data - buf + sizeof(struct dmi_header))
95 <= dmi_len) {
93 const struct dmi_header *dm = (const struct dmi_header *)data; 96 const struct dmi_header *dm = (const struct dmi_header *)data;
94 97
95 /* 98 /*
@@ -98,9 +101,9 @@ static void dmi_table(u8 *buf, u32 len, int num,
98 * table in dmi_decode or dmi_string 101 * table in dmi_decode or dmi_string
99 */ 102 */
100 data += dm->length; 103 data += dm->length;
101 while ((data - buf < len - 1) && (data[0] || data[1])) 104 while ((data - buf < dmi_len - 1) && (data[0] || data[1]))
102 data++; 105 data++;
103 if (data - buf < len - 1) 106 if (data - buf < dmi_len - 1)
104 decode(dm, private_data); 107 decode(dm, private_data);
105 108
106 /* 109 /*
@@ -115,8 +118,6 @@ static void dmi_table(u8 *buf, u32 len, int num,
115} 118}
116 119
117static phys_addr_t dmi_base; 120static phys_addr_t dmi_base;
118static u32 dmi_len;
119static u16 dmi_num;
120 121
121static int __init dmi_walk_early(void (*decode)(const struct dmi_header *, 122static int __init dmi_walk_early(void (*decode)(const struct dmi_header *,
122 void *)) 123 void *))
@@ -127,7 +128,7 @@ static int __init dmi_walk_early(void (*decode)(const struct dmi_header *,
127 if (buf == NULL) 128 if (buf == NULL)
128 return -1; 129 return -1;
129 130
130 dmi_table(buf, dmi_len, dmi_num, decode, NULL); 131 dmi_table(buf, decode, NULL);
131 132
132 add_device_randomness(buf, dmi_len); 133 add_device_randomness(buf, dmi_len);
133 134
@@ -905,7 +906,7 @@ int dmi_walk(void (*decode)(const struct dmi_header *, void *),
905 if (buf == NULL) 906 if (buf == NULL)
906 return -1; 907 return -1;
907 908
908 dmi_table(buf, dmi_len, dmi_num, decode, private_data); 909 dmi_table(buf, decode, private_data);
909 910
910 dmi_unmap(buf); 911 dmi_unmap(buf);
911 return 0; 912 return 0;