aboutsummaryrefslogtreecommitdiff
path: root/drivers
AgeCommit message (Collapse)AuthorFilesLines
2015-09-05Merge branch 'akpm' (patches from Andrew)Linus Torvalds4-6/+16
Merge patch-bomb from Andrew Morton: - a few misc things - Andy's "ambient capabilities" - fs/nofity updates - the ocfs2 queue - kernel/watchdog.c updates and feature work. - some of MM. Includes Andrea's userfaultfd feature. [ Hadn't noticed that userfaultfd was 'default y' when applying the patches, so that got fixed in this merge instead. We do _not_ mark new features that nobody uses yet 'default y' - Linus ] * emailed patches from Andrew Morton <[email protected]>: (118 commits) mm/hugetlb.c: make vma_has_reserves() return bool mm/madvise.c: make madvise_behaviour_valid() return bool mm/memory.c: make tlb_next_batch() return bool mm/dmapool.c: change is_page_busy() return from int to bool mm: remove struct node_active_region mremap: simplify the "overlap" check in mremap_to() mremap: don't do uneccesary checks if new_len == old_len mremap: don't do mm_populate(new_addr) on failure mm: move ->mremap() from file_operations to vm_operations_struct mremap: don't leak new_vma if f_op->mremap() fails mm/hugetlb.c: make vma_shareable() return bool mm: make GUP handle pfn mapping unless FOLL_GET is requested mm: fix status code which move_pages() returns for zero page mm: memcontrol: bring back the VM_BUG_ON() in mem_cgroup_swapout() genalloc: add support of multiple gen_pools per device genalloc: add name arg to gen_pool_get() and devm_gen_pool_create() mm/memblock: WARN_ON when nid differs from overlap region Documentation/features/vm: add feature description and arch support status for batched TLB flush after unmap mm: defer flush of writable TLB entries mm: send one IPI per CPU to TLB flush all entries after unmapping pages ...
2015-09-05Input: imx_keypad - remove obsolete commentFabio Estevam1-2/+0
Since commit 81e8f2bc (Input: imx_keypad - add pm suspend and resume support) the imx_keypad driver supports power management, so let's remove the obsolete comment. Signed-off-by: Fabio Estevam <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2015-09-05Input: touchscreen - add imx6ul_tsc driver supportHaibo Chen3-0/+536
Freescale i.MX6UL contains a internal touchscreen controller, this patch add a driver to support this controller. Signed-off-by: Haibo Chen <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2015-09-05Input: Add touchscreen support for Colibri VF50Sanchayan Maity3-0/+399
The Colibri Vybrid VF50 module supports 4-wire touchscreens using FETs and ADC inputs. This driver uses the IIO consumer interface and relies on the vf610_adc driver based on the IIO framework. Signed-off-by: Sanchayan Maity <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2015-09-05Input: i8042 - lower log level for "no controller" messageTakashi Iwai1-1/+1
Nowadays the machines without i8042 controller is popular, and no need to print "No controller found" message in the error log level, which annoys at booting in quiet mode. Let's lower it info level. Signed-off-by: Takashi Iwai <[email protected]> Signed-off-by: Dmitry Torokhov <[email protected]>
2015-09-05rtc: abx80x: fix RTC write bitMitja Spes1-1/+1
Fix RTC write bit as per application manual Cc: [email protected] # 4.1+ Signed-off-by: Mitja Spes <[email protected]> Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: ab8500: Add a sentinel to ab85xx_rtc_ids[]Fabio Estevam1-0/+1
Add a sentinel to ab85xx_rtc_ids[] in order to fix the following error: drivers/rtc/rtc-ab8500: struct platform_device_id is 24 bytes. The last of 2 is: 0x61 0x62 0x38 0x35 0x34 0x30 0x2d 0x72 0x74 0x63 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x8c FATAL: drivers/rtc/rtc-ab8500: struct platform_device_id is not terminated with a NULL entry! Reported-by: Andrey Ryabinin <[email protected]> Reported-by: Olof's autobuilder <[email protected]> Signed-off-by: Fabio Estevam <[email protected]> Reviewed-by: Krzysztof Kozlowski <[email protected]> Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: ds1374: Remove unused variableFabio Estevam1-2/+0
Remove unused variable 'res' and fix the following build warning: drivers/rtc/rtc-ds1374.c:667:6: warning: unused variable 'res' [-Wunused-variable] Reported-by: Olof's autobuilder <[email protected]> Signed-off-by: Fabio Estevam <[email protected]> Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: Fix module autoload for OF platform driversJavier Martinez Canillas8-0/+8
These platform drivers have a OF device ID table but the OF module alias information is not created so module autoloading won't work. Signed-off-by: Javier Martinez Canillas <[email protected]> Acked-by: Andrew Lunn <[email protected]> Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: Fix module autoload for rtc-{ab8500,max8997,s5m} driversJavier Martinez Canillas3-0/+3
These platform drivers have a platform device ID table but the module alias information is not created so module autoloading will not work. Signed-off-by: Javier Martinez Canillas <[email protected]> Reviewed-by: Krzysztof Kozlowski <[email protected]> Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: omap: Add external clock enabling supportKeerthy1-1/+24
Configure the clock source to external clock if available. External clock is preferred as it can be ticking during suspend. Signed-off-by: Keerthy <[email protected]> Acked-by: Tony Lindgren <[email protected]> Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: omap: Add internal clock enabling supportKeerthy1-0/+10
The rtc can be clocked by an internal 32K clock. Adding the support to enable the same. Signed-off-by: Keerthy <[email protected]> Acked-by: Tony Lindgren <[email protected]> Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: s5m: fix to update ctrl registerJoonyoung Shim1-0/+10
According to datasheet, the S2MPS13X and S2MPS14X should update write buffer via setting WUDR bit to high after ctrl register is written. If not, ALARM interrupt of rtc-s5m doesn't happen first time when i use tools/testing/selftests/timers/rtctest.c test program and hour format is used to 12 hour mode in Odroid-XU3 board. One more issue is the RTC doesn't keep time on Odroid-XU3 board when i turn on board after power off even if RTC battery is connected. It can be solved as setting WUDR & RUDR bits to high at the same time after RTC_CTRL register is written. It's same with condition of only writing ALARM registers, so this is for only S2MPS14 and we should set WUDR & A_UDR bits to high on S2MPS13. I can't find any reasonable description about this like fix from datasheet, but can find similar codes from rtc driver source of hardkernel kernel and vendor kernel. Signed-off-by: Joonyoung Shim <[email protected]> Cc: <[email protected]> # v3.16 Reviewed-by: Krzysztof Kozlowski <[email protected]> Tested-by: Krzysztof Kozlowski <[email protected]> Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: add xilinx zynqmp rtc driverSuneel Garapati3-0/+287
Add support for RTC controller found on Xilinx Zynq Ultrascale+ MPSoC platform. Signed-off-by: Suneel Garapati <[email protected]> Acked-by: Moritz Fischer <[email protected]> Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: as3722: correct month valueBibek Basu1-2/+2
The RTC month value is 1-indexed, but the kernel assumes it is 0-indexed. This may result in the RTC not rolling over correctly. Signed-off-by: Bibek Basu <[email protected]> Signed-off-by: Felix Janda <[email protected]> Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: sa1100/pxa: convert to run-time register mappingRob Herring3-27/+63
SA1100 and PXA differ only in register offsets which are currently hardcoded in a machine specific header. Some arm64 platforms (PXA1928) have this RTC block as well (and not the PXA270 variant). Convert the driver to use ioremap and set the register offsets dynamically. Since we are touching all the register accesses, convert them all to readl_relaxed/writel_relaxed. Signed-off-by: Rob Herring <[email protected]> Acked-by: Robert Jarzmik <[email protected]> Cc: Alessandro Zummo <[email protected]> Cc: Alexandre Belloni <[email protected]> Cc: [email protected] Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: pxa: convert to use shared sa1100 functionsRob Herring2-32/+31
Currently, the rtc-sa1100 and rtc-pxa drivers co-exist as rtc-pxa has a superset of functionality. Having 2 drivers sharing the same memory resource is not allowed by the driver model if resources are properly declared. This problem was avoided by not adding memory resources to the SA1100 RTC driver, but that prevents clean-up of the SA1100 driver. This commit converts the PXA RTC to use the exported SA1100 RTC functions. Now the sa1100-rtc and pxa-rtc devices are mutually exclusive, so we must remove the sa1100-rtc from pxa27x and pxa3xx. Signed-off-by: Rob Herring <[email protected]> Cc: Daniel Mack <[email protected]> Cc: Haojian Zhuang <[email protected]> Cc: Robert Jarzmik <[email protected]> Cc: Russell King <[email protected]> Cc: Alessandro Zummo <[email protected]> Cc: Alexandre Belloni <[email protected]> Cc: [email protected] Cc: [email protected] Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: sa1100: prepare to share sa1100_rtc_opsRob Herring2-29/+49
Factor out the RTC initialization from the platform device specific parts in order to share the RTC device ops with other drivers. Specifically, it will be shared with rtc-pxa driver. Signed-off-by: Rob Herring <[email protected]> Cc: Robert Jarzmik <[email protected]> Cc: Russell King <[email protected]> Cc: Alessandro Zummo <[email protected]> Cc: Alexandre Belloni <[email protected]> Cc: [email protected] Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: ds3232: fix WARNING trace in resume functionWang Dongsheng1-1/+4
If ds3232 work on some platform that is not implementing irq_set_wake, ds3232 will get a WARNING trace in resume. So fix ds3232->suspended state to false when irq_set_irq_wake return error. WARNING: CPU: 0 PID: 729 at kernel/irq/manage.c:604 irq_set_irq_wake+0x4b/0x8c() Unbalanced IRQ 201 wake disable Modules linked in: CPU: 0 PID: 729 Comm: sh Not tainted 3.12.19-rt30+ #25 [<800107d9>] (unwind_backtrace+0x1/0x88) from [<8000e4ef>] (show_stack+0xb/0xc) [<8000e4ef>] (show_stack+0xb/0xc) from [<802b5fa9>] (dump_stack+0x4d/0x60) [<802b5fa9>] (dump_stack+0x4d/0x60) from [<800186dd>] (warn_slowpath_common+0x45/0x64) [<800186dd>] (warn_slowpath_common+0x45/0x64) from [<80018717>] (warn_slowpath_fmt+0x1b/0x24) [<80018717>] (warn_slowpath_fmt+0x1b/0x24) from [<8003a8d3>] (irq_set_irq_wake+0x4b/0x8c) [<8003a8d3>] (irq_set_irq_wake+0x4b/0x8c) from [<80204fcb>] (ds3232_resume+0x2d/0x36) [<80204fcb>] (ds3232_resume+0x2d/0x36) from [<801954c7>] (dpm_run_callback.isra.13+0xb/0x28) [<801954c7>] (dpm_run_callback.isra.13+0xb/0x28) from [<80195b1b>] (device_resume+0x7b/0xa2) [<80195b1b>] (device_resume+0x7b/0xa2) from [<80195f0f>] (dpm_resume+0xbb/0x19c) [<80195f0f>] (dpm_resume+0xbb/0x19c) from [<801960d9>] (dpm_resume_end+0x9/0x12) [<801960d9>] (dpm_resume_end+0x9/0x12) from [<80037e1d>] (suspend_devices_and_enter+0x17d/0x1d0) [<80037e1d>] (suspend_devices_and_enter+0x17d/0x1d0) from [<80037ee1>] (pm_suspend+0x71/0x128) [<80037ee1>] (pm_suspend+0x71/0x128) from [<80037449>] (state_store+0x6d/0x80) [<80037449>] (state_store+0x6d/0x80) from [<800af4d5>] (sysfs_write_file+0x9f/0xde) [<800af4d5>] (sysfs_write_file+0x9f/0xde) from [<8007a437>] (vfs_write+0x7b/0x104) [<8007a437>] (vfs_write+0x7b/0x104) from [<8007a7f7>] (SyS_write+0x27/0x48) [<8007a7f7>] (SyS_write+0x27/0x48) from [<8000c121>] (ret_fast_syscall+0x1/0x44) Signed-off-by: Wang Dongsheng <[email protected]> Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: s3c: remove unnecessary NULL assignmentJoonyoung Shim1-1/+0
It's unnecessary the code that assigns info->rtc_clk to NULL in s3c_rtc_remove. Signed-off-by: Joonyoung Shim <[email protected]> Reviewed-by: Krzysztof Kozlowski <[email protected]> Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: s3c: add missing clk controlJoonyoung Shim1-0/+3
It's missed to call clk_unprepare() about info->rtc_src_clk in s3c_rtc_remove and to call clk_disable_unprepare about info->rtc_clk in error routine of s3c_rtc_probe. Signed-off-by: Joonyoung Shim <[email protected]> Reviewed-by: Krzysztof Kozlowski <[email protected]> Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: s3c: fix disabled clocks for alarmJoonyoung Shim1-6/+18
The clock enable/disable codes for alarm have been removed from commit 24e1455493da ("drivers/rtc/rtc-s3c.c: delete duplicate clock control") and the clocks are disabled even if alarm is set, so alarm interrupt can't happen. The s3c_rtc_setaie function can be called several times with 'enabled' argument having same value, so it needs to check whether clocks are enabled or not. Signed-off-by: Joonyoung Shim <[email protected]> Cc: <[email protected]> # v4.1 Reviewed-by: Krzysztof Kozlowski <[email protected]> Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: at91sam9: remove useless includeAlexandre Belloni1-1/+0
Definitions from linux/platform_data/atmel.h are not used, remove the include. Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: at91sam9: include linux/of.hAlexandre Belloni1-0/+1
This driver is using device tree but is not including of.h Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: armada38x: Align RTC set time procedure with the official errataNadav Haklai1-20/+12
According to the Armada38x functional errata FE-3124064, writing to the RTC TIME register may fail. As a workaround, after writing to RTC TIME register, issue a dummy write of 0x0 twice to the RTC Status register. This is the updated implementation of the Errata that eliminates the need of the long 100ms delay during the RTC set time procedure. [[email protected]]: removed the mutex and use the spinlock again Signed-off-by: Nadav Haklai <[email protected]> Reviewed-by: Neta Zur Hershkovits <[email protected]> Signed-off-by: Gregory CLEMENT <[email protected]> Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: rx8025: check time validity when necessaryAlexandre Belloni1-29/+29
Check time validity when reading time as this is when we need to know. Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: rx8025: fix RX8025_BIT_CTRL2_CTFG initializationAlexandre Belloni1-1/+1
RX8025_BIT_CTRL2_CTFG was set to 0 only when it was already 0. Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: rx8025: remove useless initializationAlexandre Belloni1-1/+0
irq_freq is already initialized to 1 in rtc_device_register() Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: rx8025: reset validity when setting timeAlexandre Belloni1-11/+20
Wait for the user to set the time to reset the validity bits. Until then, the time may be invalid. Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: rx8025: fix rx8025_init_client()Alexandre Belloni1-1/+1
rx8025_init_client is modifying ctrl[0] and writing it to RX8025_REG_CTRL2 but ctrl[0] is actually RX8025_REG_CTRL1. Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: rx8025: continue without alarm when irq request failsAlexandre Belloni1-2/+2
Instead of bailing out, disable alarms and continue when devm_request_threaded_irq() fails. This allows to still provide some functionality. Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: rx8025: cleanup accessorsAlexandre Belloni1-54/+31
Remove useless error messages, at that point, the user already knows something went wrong but will not be able to do anything about it anyway. It is also highly unlikely that some registers are readable/writable but not some other ones. Also, transform rx8025_read_reg to be more resemblant to i2c_smbus_read_byte_data() Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: rx8025: don't reset the timeAlexandre Belloni1-16/+22
Stop setting the time to epoch when it is invalid. The proper way to handle that is to return an error when it is invalid instead of returning an incorrect value. Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: rx8025: fix transfer modeAlexandre Belloni1-3/+3
The datasheet specifies that transfer mode must be 0 for write and either 0x4 (simplified read) or 0 (standard read). 0x8 is not specified, use standard mode. Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: rx8025: only handle dates between 2000 and 2099Alexandre Belloni1-10/+4
The hardware is only capable of handling dates between 2000 and 2099, enforce that. Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: rx8025: use BIT()Alexandre Belloni1-11/+12
Use BIT() instead of hand coding. Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: rx8025: remove useless probe error messageAlexandre Belloni1-16/+6
It is useless to print a message when probe fails as the user is already aware that it failed. Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: rx8025: switch to managed irq allocationAlexandre Belloni1-10/+4
Use devm_request_threaded_irq() so it is not necessary to call free_irq() explicitly. Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: rx8025: Convert to threaded IRQAlexandre Belloni1-33/+4
The driver currently emulates the concept of threaded IRQ using a workqueue, switch to threaded IRQ instead. Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: rx8025: remove useless headers and reorder themAlexandre Belloni1-5/+2
Remove the useless includes and order the remaining ones alphabetically. Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: tx4939: clean up tx4939_rtc_nvram_read()/tx4939_rtc_nvram_write()Vladimir Zapolskiy1-4/+2
The change removes redundant sysfs binary file boundary checks, since this task is already done on caller side in fs/sysfs/file.c Signed-off-by: Vladimir Zapolskiy <[email protected]> Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: stk17ta8: clean up stk17ta8_nvram_read()/stk17ta8_nvram_write()Vladimir Zapolskiy1-2/+2
The change removes redundant sysfs binary file boundary checks, since this task is already done on caller side in fs/sysfs/file.c Signed-off-by: Vladimir Zapolskiy <[email protected]> Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: rp5c01: clean up rp5c01_nvram_read()/rp5c01_nvram_write()Vladimir Zapolskiy1-2/+2
The change removes redundant sysfs binary file boundary checks, since this task is already done on caller side in fs/sysfs/file.c Signed-off-by: Vladimir Zapolskiy <[email protected]> Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: m48t59: clean up m48t59_nvram_read()/m48t59_nvram_write()Vladimir Zapolskiy1-8/+10
The change removes redundant sysfs binary file boundary checks, since this task is already done on caller side in fs/sysfs/file.c Spinlock acquisition/release is moved out of the loop body to get atomic states of NVRAM reading and writing operations. Signed-off-by: Vladimir Zapolskiy <[email protected]> Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: ds1742: clean up ds1742_nvram_read()/ds1742_nvram_write()Vladimir Zapolskiy1-2/+2
The change removes redundant sysfs binary file boundary checks, since this task is already done on caller side in fs/sysfs/file.c Signed-off-by: Vladimir Zapolskiy <[email protected]> Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: ds1553: clean up ds1553_nvram_read()/ds1553_nvram_write()Vladimir Zapolskiy1-2/+2
The change removes redundant sysfs binary file boundary checks, since this task is already done on caller side in fs/sysfs/file.c Signed-off-by: Vladimir Zapolskiy <[email protected]> Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: ds1511: clean up ds1511_nvram_read()/ds1511_nvram_write()Vladimir Zapolskiy1-37/+5
The change removes redundant sysfs binary file boundary checks, since this task is already done on caller side in fs/sysfs/file.c The change enables burst mode of access to SRAM for any read()/write() operations, it is worth to mention that this may influence on userspace, for instance prior to the change read(fd, buf, 1); read(fd, buf + 1, 1); and read(fd, buf, 2); sequences of syscalls over DS1511's sysfs "nvram" fd led to different DS1511 state changes and/or buf content, if some userspace applications are written specifically for DS1511 and exploit this strange "feature", they may be impacted. Also the change corrects NVRAM size accessible to userspace from 255 bytes to 256 bytes. Signed-off-by: Vladimir Zapolskiy <[email protected]> Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: ds1343: clean up ds1343_nvram_read()/ds1343_nvram_write()Vladimir Zapolskiy1-12/+0
The change removes redundant sysfs binary file boundary checks, since this task is already done on caller side in fs/sysfs/file.c Signed-off-by: Vladimir Zapolskiy <[email protected]> Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: ds1307: clean up ds1307_nvram_read()/ds1307_nvram_write()Vladimir Zapolskiy1-14/+0
The change removes redundant sysfs binary file boundary checks, since this task is already done on caller side in fs/sysfs/file.c Signed-off-by: Vladimir Zapolskiy <[email protected]> Signed-off-by: Alexandre Belloni <[email protected]>
2015-09-05rtc: ds1305: clean up ds1305_nvram_read()/ds1305_nvram_write()Vladimir Zapolskiy1-18/+0
The change removes redundant sysfs binary file boundary checks, since this task is already done on caller size in fs/sysfs/file.c Signed-off-by: Vladimir Zapolskiy <[email protected]> Signed-off-by: Alexandre Belloni <[email protected]>