aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2016-03-23dell-smbios: rename dell_smi_error() to dell_smbios_error()Michał Kępień3-11/+11
As dell_smi_error() is exported by dell-smbios, its prefix should be consistent with other exported symbols, so change function name to dell_smbios_error(). Signed-off-by: Michał Kępień <[email protected]> Reviewed-by: Pali Rohár <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23dell-laptop: move dell_smi_error() to dell-smbiosMichał Kępień3-14/+18
The dell_smi_error() method could be used by modules other than dell-laptop for convenient translation of SMBIOS request errors into errno values. Thus, move it to dell-smbios. Signed-off-by: Michał Kępień <[email protected]> Reviewed-by: Pali Rohár <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23ideapad-laptop: Add ideapad Y700 (15) to the no_hw_rfkill DMI listJohn Dahlstrom1-0/+14
Some Lenovo ideapad models lack a physical rfkill switch. On Lenovo models ideapad Y700 Touch-15ISK and ideapad Y700-15ISK, ideapad-laptop would wrongly report all radios as blocked by hardware which caused wireless network connections to fail. Add these models without an rfkill switch to the no_hw_rfkill list. Signed-off-by: John Dahlstrom <[email protected]> Cc: <[email protected]> # 3.17.x-: 4fa9dab: ideapad_laptop: Lenovo G50-30 fix rfkill reports wireless blocked Cc: <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23fujitsu-laptop: Support radio toggle buttonMichał Kępień1-1/+7
Lifebook E734/E744/E754 has a radio toggle button which uses code 0x420. Map it to KEY_RFKILL. Signed-off-by: Michał Kępień <[email protected]> Acked-by: Jonathan Woithe <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23intel-hid: allocate correct amount of memory for private structWolfram Sang1-2/+1
We want the size of the struct, not of a pointer to it. To be future proof, just dereference the pointer to get the desired type. Signed-off-by: Wolfram Sang <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23platform/x86: Make intel_scu_ipc explicitly non-modularPaul Gortmaker1-31/+4
The Kconfig currently controlling compilation of this code is: drivers/platform/x86/Kconfig:config INTEL_SCU_IPC drivers/platform/x86/Kconfig: bool "Intel SCU IPC Support" ...meaning that it currently is not being built as a module by anyone. Lets remove the modular code that is essentially orphaned, so that when reading the driver there is no doubt it is builtin-only. We explicitly disallow a driver unbind, since that doesn't have a sensible use case anyway, and it allows us to drop the ".remove" code for non-modular drivers. Since module_pci_driver() uses the same init level priority as builtin_pci_driver() the init ordering remains unchanged with this commit. Also note that MODULE_DEVICE_TABLE is a no-op for non-modular code. We don't replace module.h with init.h since the file already has that. We also delete the MODULE_LICENSE tag etc. since all that information is already contained at the top of the file in the comments. Cc: [email protected] Signed-off-by: Paul Gortmaker <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23intel_pmc_ipc: Avoid pending IPC1 command during legacy suspendQipeng Zha1-1/+2
During legacy suspend flow, IPC1 commands are being requested from opregion driver. But the PMC_IPC1 command will timeout as example: [ 281.444600] ipc_debug##: ipc_send_command: cmd=0x201ff, [ 281.444648] wbuf[0]=0x4ea6 [ 281.444668] wbuf[1]=0x0 [ 281.444674] wbuf[2]=0x0 [ 281.444676] wbuf[3]=0x0 [ 284.446467] pmc-ipc-plat INT34D2:00: IPC timed out, TS=0x4, CMD=0x200ff This is because before the opregion driver could send IPC1 commands, the PMC_IPC irq is already suspended. Which makes the IPC command to timeout. Solution: register pmc_ipc irq as IRQF_NO_SUSPEND Signed-off-by: Ananth Krishna R <[email protected]> Signed-off-by: Bharath K Veera <[email protected]> Signed-off-by: Qipeng Zha <[email protected]> Acked-by: Andy Shevchenko <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23intel_pmc_ipc: Fix GCR register base address and lengthQipeng Zha1-2/+3
GCR register (pmc_cfg register) is at offset 0x1008, and remapping of 0x4 bytes is enough. Signed-off-by: Francois-Nicolas Muller <[email protected]> Signed-off-by: Qipeng Zha <[email protected]> Acked-by: Andy Shevchenko <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23asus-nb-wmi: add wapf=4 quirk for ASUS X75VDOleksandr Natalenko1-0/+9
Wi-Fi on ASUS X75VD laptop does not work unless asus_nb_wmi module is loaded with wapf=4 option. Add quirk for this. Signed-off-by: Oleksandr Natalenko <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23intel_telemetry_pltdrv: Change verbosity control bitsSouvik Kumar Chakravarty1-1/+12
Due to a recent fix in the firmware, the Punit verbosity control bits now adhere to the correct pattern. Hence remove the workaround and do a read-modify-write of the register. Signed-off-by: Souvik Kumar Chakravarty <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23dell-rbtn: Add a comment about the XPS 13 9350Andy Lutomirski1-0/+15
On the XPS 13 9350, the dell-rbtn mechanism has a new device id, and the DSDT turns it off if a new enough _OSI is supported. Add a comment about why we don't bother supporting it. Signed-off-by: Andy Lutomirski <[email protected]> Acked-by: Pali Rohár <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23dell-wmi: Support new hotkeys on the XPS 13 9350 (Skylake)Andy Lutomirski1-7/+64
The XPS 13 9350 sends WMI keypress events that aren't enumerated in the DMI table. Add a table listing them. To avoid breaking things that worked before, these un-enumerated hotkeys won't be used if the DMI table maps them to something else. FWIW, it appears that the DMI table may be a legacy thing and we might want to rethink how we handle events in general. As an example, a whole lot of things map to KEY_PROG3 via the DMI table. This doesn't send keypress events for any of the new events. They appear to all be handled by other means (keyboard illumination is handled automatically and rfkill is handled by intel-hid). Signed-off-by: Andy Lutomirski <[email protected]> Acked-by: Pali Rohár <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23dell-wmi: Clean up hotkey table size checkAndy Lutomirski1-2/+13
Checking the table for a minimum size of 7 bytes makes no sense: any valid hotkey table has a size that's a multiple of 4. Clean this up: replace the hardcoded header length with a sizeof and change the check to ignore an empty hotkey table. The only behavior change is that a 7-byte table (which is nonsensical) will now be treated as absent instead of as valid but empty. Reported-by: Jean Delvare <[email protected]> Signed-off-by: Andy Lutomirski <[email protected]> Acked-by: Pali Rohár <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23dell-wmi, dell-laptop: depends DMIAndy Lutomirski1-0/+2
dell-wmi and dell-laptop will compile but won't work right if DMI isn't selected. Signed-off-by: Andy Lutomirski <[email protected]> Acked-by: Pali Rohár <[email protected]> [arnd: Use depends instead of selects to avoid recursive dependencies] Signed-off-by: Arnd Bergmann <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23dell-wmi: Stop storing pointers to DMI tablesAndy Lutomirski1-28/+46
The dmi_walk function maps the DMI table, walks it, and unmaps it. This means that the dell_bios_hotkey_table that find_hk_type stores points to unmapped memory by the time it gets read. I've been able to trigger crashes caused by the stale pointer a couple of times, but never on a stock kernel. Fix it by generating the keymap in the dmi_walk callback instead of storing a pointer. Signed-off-by: Andy Lutomirski <[email protected]> Acked-by: Pali Rohár <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23dell-led: use dell_smbios_send_request() for performing SMBIOS callsMichał Kępień1-59/+6
Instead of using the WMI wrapper, dell-led can take advantage of dell_smbios_send_request() for performing the SMBIOS calls required to change the state of the microphone LED. Signed-off-by: Michał Kępień <[email protected]> Reviewed-by: Pali Rohár <[email protected]> Acked-by: Jacek Anaszewski <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23dell-led: use dell_smbios_find_token() for finding mic DMI tokensMichał Kępień2-54/+10
With the advent of dell_smbios_find_token(), dell-led does not need to perform any DMI walking on its own, but it can rather ask dell-smbios to look up the DMI tokens it needs for changing the state of the microphone LED. Signed-off-by: Michał Kępień <[email protected]> Reviewed-by: Pali Rohár <[email protected]> Acked-by: Jacek Anaszewski <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23dell-smbios: make da_tokens staticMichał Kępień2-4/+1
As dell-laptop has been changed to use dell_smbios_find_token() instead of directly accessing members of the da_tokens table, the latter can be marked static. Signed-off-by: Michał Kępień <[email protected]> Reviewed-by: Pali Rohár <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23dell-smbios: remove find_token_{id,location}()Michał Kępień2-28/+0
As dell-laptop has been changed to use dell_smbios_find_token() instead of find_token_id() and find_token_location(), these functions can be safely removed. Signed-off-by: Michał Kępień <[email protected]> Reviewed-by: Pali Rohár <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23dell-laptop: use dell_smbios_find_token() instead of find_token_location()Michał Kępień1-12/+12
Replace all uses of find_token_location() with dell_smbios_find_token() to avoid directly accessing the da_tokens table. Signed-off-by: Michał Kępień <[email protected]> Reviewed-by: Pali Rohár <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23dell-laptop: use dell_smbios_find_token() instead of find_token_id()Michał Kępień1-11/+11
Replace all uses of find_token_id() with dell_smbios_find_token() to avoid directly accessing the da_tokens table. Signed-off-by: Michał Kępień <[email protected]> Reviewed-by: Pali Rohár <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23dell-smbios: implement new function for finding DMI table 0xDA tokensMichał Kępień2-0/+15
Ultimately, the da_tokens table should not be exported from dell-smbios. Currently, in some cases, dell-laptop accesses that table's members directly, so implement a new function, dell_smbios_find_token(), which returns a pointer to an entry inside the da_tokens table with the given token ID (or NULL if it is not found). Signed-off-by: Michał Kępień <[email protected]> Reviewed-by: Pali Rohár <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23dell-smbios: make the SMBIOS buffer staticMichał Kępień2-3/+1
As dell-laptop has been changed to always retrieve a pointer to the SMBIOS buffer using dell_smbios_get_buffer(), the SMBIOS buffer can be marked static. Signed-off-by: Michał Kępień <[email protected]> Reviewed-by: Pali Rohár <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23dell-smbios: return the SMBIOS buffer from dell_smbios_get_buffer()Michał Kępień3-19/+35
Ultimately, the SMBIOS buffer should not be exported from dell-smbios. Currently, dell-laptop accesses it directly using a global variable, so make dell_smbios_get_buffer() return a pointer to the SMBIOS buffer and replace all uses of the global variable with local variables. Signed-off-by: Michał Kępień <[email protected]> Reviewed-by: Pali Rohár <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23dell-smbios: don't return an SMBIOS buffer from dell_smbios_send_request()Michał Kępień2-6/+2
An SMBIOS buffer pointer does not need to be returned by dell_smbios_send_request(), because SMBIOS call results are stored in the buffer exported by the module. Signed-off-by: Michał Kępień <[email protected]> Reviewed-by: Pali Rohár <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23dell-smbios: don't pass an SMBIOS buffer to dell_smbios_send_request()Michał Kępień3-25/+23
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ń <[email protected]> Reviewed-by: Pali Rohár <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23dell-smbios: rename dell_send_request() to dell_smbios_send_request()Michał Kępień3-26/+26
As dell_send_request() is exported from the module, its prefix should be consistent with other exported symbols, so change function name to dell_smbios_send_request(). Signed-off-by: Michał Kępień <[email protected]> Reviewed-by: Pali Rohár <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23dell-smbios: rename release_buffer() to dell_smbios_release_buffer()Michał Kępień3-17/+17
As release_buffer() is exported from the module, it has to be renamed to something less generic, so add a "dell_smbios_" prefix to the function name. Signed-off-by: Michał Kępień <[email protected]> Reviewed-by: Pali Rohár <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23dell-smbios: rename clear_buffer() to dell_smbios_clear_buffer()Michał Kępień3-10/+10
As clear_buffer() is exported from the module, it has to be renamed to something less generic, so add a "dell_smbios_" prefix to the function name. Signed-off-by: Michał Kępień <[email protected]> Reviewed-by: Pali Rohár <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23dell-smbios: rename get_buffer() to dell_smbios_get_buffer()Michał Kępień3-16/+16
As get_buffer() is exported from the module, it has to be renamed to something less generic, so add a "dell_smbios_" prefix to the function name. Signed-off-by: Michał Kępień <[email protected]> Reviewed-by: Pali Rohár <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23dell-laptop: extract SMBIOS-related code to a separate moduleMichał Kępień5-163/+257
Extract SMBIOS-related code from dell-laptop to a new kernel module, dell-smbios. The static specifier is removed from exported symbols, otherwise code is just moved around. Signed-off-by: Michał Kępień <[email protected]> Reviewed-by: Pali Rohár <[email protected]> [dvhart: Include linux/io.h in dell-smbios.c as caught by lkp] Signed-off-by: Darren Hart <[email protected]>
2016-03-23toshiba_acpi: Add a module parameter to disable hotkeys registrationAzael Avalos1-0/+10
Some laptop models have working hotkeys without the need of the driver to activate them. This patch adds a module parameter to tell the driver not to register the hotkeys. The new parameter is useful in DE less installations or where the DE does not handle the hotkeys (see bug 99501). Signed-off-by: Azael Avalos <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23Documentation/ABI: Update sysfs-driver-toshiba_acpi fileAzael Avalos1-0/+16
This patch updates the documentation file adding the Cooling Method entry. Signed-off-by: Azael Avalos <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23toshiba_acpi: Add sysfs entries for the Cooling Method featureAzael Avalos1-0/+51
This patch adds the sysfs entry Signed-off-by: Azael Avalos <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23toshiba_acpi: Add support for cooling method featureAzael Avalos1-0/+54
This patch adds support to query and set the "Cooling Method" feature, which basically changes how the system fan behaves, depending on the supported cooling methods. Depending on the laptop model, these are the (so far...) available cooling methods: - Maximum Performance - Performance - Battery Optimized Signed-off-by: Azael Avalos <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23thinkpad_acpi: Remove ambiguous logging for "Unsupported brightness interface"Eric Curtin1-3/+1
"Unsupported brightness interface" message gets logged on machines that are well supported. Signed-off-by: Eric Curtin <[email protected]> Acked-by: Henrique de Moraes Holschuh <[email protected]> Signed-off-by: Darren Hart <[email protected]>
2016-03-23pwm: omap-dmtimer: Add debug message for effective period and duty cycleDavid Rivshin1-1/+8
After going through the math and constraints checking to compute load and match values, it is helpful to know what the resultant period and duty cycle are. Signed-off-by: David Rivshin <[email protected]> Acked-by: Neil Armstrong <[email protected]> Signed-off-by: Thierry Reding <[email protected]>
2016-03-23pwm: omap-dmtimer: Round load and match values rather than truncateDavid Rivshin1-5/+1
When converting period and duty_cycle from nanoseconds to fclk cycles, the error introduced by the integer division can be appreciable, especially in the case of slow fclk or short period. Use DIV_ROUND_CLOSEST_ULL() so that the error is kept to +/- 0.5 clock cycles. Fixes: 6604c6556db9 ("pwm: Add PWM driver for OMAP using dual-mode timers") Signed-off-by: David Rivshin <[email protected]> Acked-by: Neil Armstrong <[email protected]> Signed-off-by: Thierry Reding <[email protected]>
2016-03-23pwm: omap-dmtimer: Add sanity checking for load and match valuesDavid Rivshin1-4/+30
Add sanity checking to ensure that we do not program load or match values that are out of range if a user requests period or duty_cycle values which are not achievable. The match value cannot be less than the load value (but can be equal), and neither can be 0xffffffff. This means that there must be at least one fclk cycle between load and match, and another between match and overflow. Fixes: 6604c6556db9 ("pwm: Add PWM driver for OMAP using dual-mode timers") Signed-off-by: David Rivshin <[email protected]> Acked-by: Neil Armstrong <[email protected]> [[email protected]: minor coding style cleanups] Signed-off-by: Thierry Reding <[email protected]>
2016-03-23pwm: omap-dmtimer: Fix inaccurate period and duty cycle calculationsDavid Rivshin1-7/+20
Fix the calculation of load_value and match_value. Currently they are slightly too low, which produces a noticeably wrong PWM rate with sufficiently short periods (i.e. when 1/period approaches clk_rate/2). Example: clk_rate=32768Hz, period=122070ns, duty_cycle=61035ns (8192Hz/50% PWM) Correct values: load = 0xfffffffc, match = 0xfffffffd Current values: load = 0xfffffffa, match = 0xfffffffc effective PWM: period=183105ns, duty_cycle=91553ns (5461Hz/50% PWM) Fixes: 6604c6556db9 ("pwm: Add PWM driver for OMAP using dual-mode timers") Signed-off-by: David Rivshin <[email protected]> Acked-by: Neil Armstrong <[email protected]> Tested-by: Adam Ford <[email protected]> Signed-off-by: Thierry Reding <[email protected]>
2016-03-23pwm: brcmstb: Fix check of devm_ioremap_resource() return codeVladimir Zapolskiy1-2/+2
The change fixes potential oops while accessing iomem on invalid address if devm_ioremap_resource() fails due to some reason. The devm_ioremap_resource() function returns ERR_PTR() and never returns NULL, which makes useless a following check for NULL. Signed-off-by: Vladimir Zapolskiy <[email protected]> Fixes: 3a9f5957020f ("pwm: Add Broadcom BCM7038 PWM controller support") Acked-by: Florian Fainelli <[email protected]> Signed-off-by: Thierry Reding <[email protected]>
2016-03-23pwm: rcar: Depend on ARCH_RENESAS instead of ARCH_SHMOBILESimon Horman1-1/+1
This is part of an ongoing process to migrate from ARCH_SHMOBILE to ARCH_RENESAS the motivation for which being that RENESAS seems to be a more appropriate name than SHMOBILE for the majority of Renesas ARM based SoCs. Signed-off-by: Simon Horman <[email protected]> Acked-by: Geert Uytterhoeven <[email protected]> Signed-off-by: Thierry Reding <[email protected]>
2016-03-23pwm: lpc18xx-sct: Test clock rate to avoid division by 0Wolfram Sang1-0/+5
The clk API may return 0 on clk_get_rate(), so we should check the result before using it as a divisor. Signed-off-by: Wolfram Sang <[email protected]> Acked-by: Joachim Eastwood <[email protected]> Signed-off-by: Thierry Reding <[email protected]>
2016-03-23pwm: img: Test clock rate to avoid division by 0Wolfram Sang1-0/+5
The clk API may return 0 on clk_get_rate(), so we should check the result before using it as a divisor. Signed-off-by: Wolfram Sang <[email protected]> Signed-off-by: Thierry Reding <[email protected]>
2016-03-23perf tools: Simplify die() mechanismArnaldo Carvalho de Melo2-8/+1
This should die altogether, but for now lets remove a bit of this stuff, as it is not used at all. Cc: Adrian Hunter <[email protected]> Cc: Jiri Olsa <[email protected]> Cc: Namhyung Kim <[email protected]> Cc: Wang Nan <[email protected]> Link: http://lkml.kernel.org/n/[email protected] Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
2016-03-23perf tools: Remove unused DIE_IF macroArnaldo Carvalho de Melo1-7/+0
Cc: Adrian Hunter <[email protected]> Cc: Jiri Olsa <[email protected]> Cc: Namhyung Kim <[email protected]> Cc: Wang Nan <[email protected]> Link: http://lkml.kernel.org/n/[email protected] Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
2016-03-23parisc: Wire up preadv2 and pwritev2 syscallsHelge Deller2-1/+5
Signed-off-by: Helge Deller <[email protected]>
2016-03-23perf script: Remove lots of unused argumentsArnaldo Carvalho de Melo1-23/+14
Cc: Adrian Hunter <[email protected]> Cc: David Ahern <[email protected]> Cc: Jiri Olsa <[email protected]> Cc: Namhyung Kim <[email protected]> Cc: Wang Nan <[email protected]> Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
2016-03-23perf thread: Rename perf_event__preprocess_sample_addr to thread__resolveArnaldo Carvalho de Melo4-11/+7
Since none of the perf_event fields are used anymore, just the perf_sample ones, and since this resolves to (map, symbol) from data structures within struct thread, rename it to thread__resolve and make the argument ordering similar to the one in machine__resolve(). Cc: Adrian Hunter <[email protected]> Cc: Hemant Kumar <[email protected]> Cc: Jiri Olsa <[email protected]> Cc: Namhyung Kim <[email protected]> Cc: Naveen N. Rao <[email protected]> Cc: Ravi Bangoria <[email protected]> Cc: Wang Nan <[email protected]> Link: http://lkml.kernel.org/n/[email protected] Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
2016-03-23perf machine: Rename perf_event__preprocess_sample to machine__resolveArnaldo Carvalho de Melo13-52/+17
Since we only deal with fields in the passed struct perf_sample move this method to struct machine, that is where the perf_sample fields will be resolved to a struct addr_location, i.e. thread, map, symbol, etc. Cc: Adrian Hunter <[email protected]> Cc: Hemant Kumar <[email protected]> Cc: Jiri Olsa <[email protected]> Cc: Namhyung Kim <[email protected]> Cc: Naveen N. Rao <[email protected]> Cc: Ravi Bangoria <[email protected]> Cc: Wang Nan <[email protected]> Link: http://lkml.kernel.org/n/[email protected] Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>