From 17070f242aa989c33b227e61ea060f768a77f2dc Mon Sep 17 00:00:00 2001 From: =?utf8?q?Micha=C5=82=20K=C4=99pie=C5=84?= Date: Fri, 22 Jan 2016 15:27:18 +0100 Subject: [PATCH] dell-smbios: don't pass an SMBIOS buffer to dell_smbios_send_request() MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Passing an SMBIOS buffer pointer to dell_smbios_send_request() is redundant as it should always operate on the SMBIOS buffer exported from the module. Signed-off-by: Michał Kępień Reviewed-by: Pali Rohár Signed-off-by: Darren Hart --- drivers/platform/x86/dell-laptop.c | 42 +++++++++++++++--------------- drivers/platform/x86/dell-smbios.c | 3 +-- drivers/platform/x86/dell-smbios.h | 3 +-- 3 files changed, 23 insertions(+), 25 deletions(-) diff --git a/drivers/platform/x86/dell-laptop.c b/drivers/platform/x86/dell-laptop.c index 9210acf00d47..0bb22114abce 100644 --- a/drivers/platform/x86/dell-laptop.c +++ b/drivers/platform/x86/dell-laptop.c @@ -418,7 +418,7 @@ static int dell_rfkill_set(void *data, bool blocked) dell_smbios_get_buffer(); - dell_smbios_send_request(buffer, 17, 11); + dell_smbios_send_request(17, 11); ret = buffer->output[0]; status = buffer->output[1]; @@ -428,7 +428,7 @@ static int dell_rfkill_set(void *data, bool blocked) dell_smbios_clear_buffer(); buffer->input[0] = 0x2; - dell_smbios_send_request(buffer, 17, 11); + dell_smbios_send_request(17, 11); ret = buffer->output[0]; hwswitch = buffer->output[1]; @@ -441,7 +441,7 @@ static int dell_rfkill_set(void *data, bool blocked) dell_smbios_clear_buffer(); buffer->input[0] = (1 | (radio<<8) | (disable << 16)); - dell_smbios_send_request(buffer, 17, 11); + dell_smbios_send_request(17, 11); ret = buffer->output[0]; out: @@ -458,7 +458,7 @@ static void dell_rfkill_update_sw_state(struct rfkill *rfkill, int radio, int block = rfkill_blocked(rfkill); dell_smbios_clear_buffer(); buffer->input[0] = (1 | (radio << 8) | (block << 16)); - dell_smbios_send_request(buffer, 17, 11); + dell_smbios_send_request(17, 11); } else { /* No hw-switch, sync BIOS state to sw_state */ rfkill_set_sw_state(rfkill, !!(status & BIT(radio + 16))); @@ -481,7 +481,7 @@ static void dell_rfkill_query(struct rfkill *rfkill, void *data) dell_smbios_get_buffer(); - dell_smbios_send_request(buffer, 17, 11); + dell_smbios_send_request(17, 11); ret = buffer->output[0]; status = buffer->output[1]; @@ -493,7 +493,7 @@ static void dell_rfkill_query(struct rfkill *rfkill, void *data) dell_smbios_clear_buffer(); buffer->input[0] = 0x2; - dell_smbios_send_request(buffer, 17, 11); + dell_smbios_send_request(17, 11); ret = buffer->output[0]; hwswitch = buffer->output[1]; @@ -521,14 +521,14 @@ static int dell_debugfs_show(struct seq_file *s, void *data) dell_smbios_get_buffer(); - dell_smbios_send_request(buffer, 17, 11); + dell_smbios_send_request(17, 11); ret = buffer->output[0]; status = buffer->output[1]; dell_smbios_clear_buffer(); buffer->input[0] = 0x2; - dell_smbios_send_request(buffer, 17, 11); + dell_smbios_send_request(17, 11); hwswitch_ret = buffer->output[0]; hwswitch_state = buffer->output[1]; @@ -619,7 +619,7 @@ static void dell_update_rfkill(struct work_struct *ignored) dell_smbios_get_buffer(); - dell_smbios_send_request(buffer, 17, 11); + dell_smbios_send_request(17, 11); ret = buffer->output[0]; status = buffer->output[1]; @@ -629,7 +629,7 @@ static void dell_update_rfkill(struct work_struct *ignored) dell_smbios_clear_buffer(); buffer->input[0] = 0x2; - dell_smbios_send_request(buffer, 17, 11); + dell_smbios_send_request(17, 11); ret = buffer->output[0]; if (ret == 0 && (status & BIT(0))) @@ -710,7 +710,7 @@ static int __init dell_setup_rfkill(void) return 0; dell_smbios_get_buffer(); - dell_smbios_send_request(buffer, 17, 11); + dell_smbios_send_request(17, 11); ret = buffer->output[0]; status = buffer->output[1]; dell_smbios_release_buffer(); @@ -878,9 +878,9 @@ static int dell_send_intensity(struct backlight_device *bd) buffer->input[1] = bd->props.brightness; if (power_supply_is_system_supplied() > 0) - dell_smbios_send_request(buffer, 1, 2); + dell_smbios_send_request(1, 2); else - dell_smbios_send_request(buffer, 1, 1); + dell_smbios_send_request(1, 1); ret = dell_smi_error(buffer->output[0]); @@ -901,9 +901,9 @@ static int dell_get_intensity(struct backlight_device *bd) buffer->input[0] = token; if (power_supply_is_system_supplied() > 0) - dell_smbios_send_request(buffer, 0, 2); + dell_smbios_send_request(0, 2); else - dell_smbios_send_request(buffer, 0, 1); + dell_smbios_send_request(0, 1); if (buffer->output[0]) ret = dell_smi_error(buffer->output[0]); @@ -1160,7 +1160,7 @@ static int kbd_get_info(struct kbd_info *info) dell_smbios_get_buffer(); buffer->input[0] = 0x0; - dell_smbios_send_request(buffer, 4, 11); + dell_smbios_send_request(4, 11); ret = buffer->output[0]; if (ret) { @@ -1248,7 +1248,7 @@ static int kbd_get_state(struct kbd_state *state) dell_smbios_get_buffer(); buffer->input[0] = 0x1; - dell_smbios_send_request(buffer, 4, 11); + dell_smbios_send_request(4, 11); ret = buffer->output[0]; if (ret) { @@ -1284,7 +1284,7 @@ static int kbd_set_state(struct kbd_state *state) buffer->input[1] |= (state->timeout_unit & 0x3) << 30; buffer->input[2] = state->als_setting & 0xFF; buffer->input[2] |= (state->level & 0xFF) << 16; - dell_smbios_send_request(buffer, 4, 11); + dell_smbios_send_request(4, 11); ret = buffer->output[0]; dell_smbios_release_buffer(); @@ -1326,7 +1326,7 @@ static int kbd_set_token_bit(u8 bit) dell_smbios_get_buffer(); buffer->input[0] = da_tokens[id].location; buffer->input[1] = da_tokens[id].value; - dell_smbios_send_request(buffer, 1, 0); + dell_smbios_send_request(1, 0); ret = buffer->output[0]; dell_smbios_release_buffer(); @@ -1348,7 +1348,7 @@ static int kbd_get_token_bit(u8 bit) dell_smbios_get_buffer(); buffer->input[0] = da_tokens[id].location; - dell_smbios_send_request(buffer, 0, 0); + dell_smbios_send_request(0, 0); ret = buffer->output[0]; val = buffer->output[1]; dell_smbios_release_buffer(); @@ -2019,7 +2019,7 @@ static int __init dell_init(void) if (token != -1) { dell_smbios_get_buffer(); buffer->input[0] = token; - dell_smbios_send_request(buffer, 0, 2); + dell_smbios_send_request(0, 2); if (buffer->output[0] == 0) max_intensity = buffer->output[3]; dell_smbios_release_buffer(); diff --git a/drivers/platform/x86/dell-smbios.c b/drivers/platform/x86/dell-smbios.c index b1038325a3fc..ac1cbed12710 100644 --- a/drivers/platform/x86/dell-smbios.c +++ b/drivers/platform/x86/dell-smbios.c @@ -61,8 +61,7 @@ void dell_smbios_release_buffer(void) EXPORT_SYMBOL_GPL(dell_smbios_release_buffer); struct calling_interface_buffer * -dell_smbios_send_request(struct calling_interface_buffer *buffer, - int class, int select) +dell_smbios_send_request(int class, int select) { struct smi_cmd command; diff --git a/drivers/platform/x86/dell-smbios.h b/drivers/platform/x86/dell-smbios.h index 33ed9712430b..4220ac1fe703 100644 --- a/drivers/platform/x86/dell-smbios.h +++ b/drivers/platform/x86/dell-smbios.h @@ -42,8 +42,7 @@ void dell_smbios_get_buffer(void); void dell_smbios_clear_buffer(void); void dell_smbios_release_buffer(void); struct calling_interface_buffer * -dell_smbios_send_request(struct calling_interface_buffer *buffer, - int class, int select); +dell_smbios_send_request(int class, int select); int find_token_id(int tokenid); int find_token_location(int tokenid); -- 2.20.1