- 15 7月, 2015 1 次提交
-
-
由 Robin Gong 提交于
add snvs power key driver. It work in imx chips after i.mx6sx ON/OFF key used power on/off whole system. This driver make it wakeup from suspend state when short press ON/OFF key. Long time press will trig SNVS power off chip without software intervention. Signed-off-by: NRobin Gong <b38343@freescale.com> Signed-off-by: NFrank Li <Frank.Li@freescale.com> Acked-by: NDmitry Torokhov <dmitry.torokhov@gmail.com> Signed-off-by: NShawn Guo <shawn.guo@linaro.org>
-
- 23 6月, 2015 1 次提交
-
-
由 Fabio Estevam 提交于
clk_prepare_enable() may fail, so we should better check its return value and propagate it in the case of error. Signed-off-by: NFabio Estevam <fabio.estevam@freescale.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 17 6月, 2015 1 次提交
-
-
由 Uwe Kleine-König 提交于
Since 39b2bbe3 (gpio: add flags argument to gpiod_get*() functions) which appeared in v3.17-rc1, the gpiod_get* functions take an additional parameter that allows to specify direction and initial value for output. Simplify drivers accordingly. Note that in the case of the drv260x driver error checking is more strict now because -ENOSYS is reported to the caller now. But this should only be returned if GPIOLIB is disabled which shouldn't happen as the driver depends on GPIOLIB. Signed-off-by: NUwe Kleine-König <u.kleine-koenig@pengutronix.de> Reviewed-by: NLinus Walleij <linus.walleij@linaro.org> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 15 6月, 2015 3 次提交
-
-
由 Gwendal Grignou 提交于
Chromebooks can have more than one Embedded Controller so the cros_ec device id has to be incremented for each EC registered. Add a new structure to represent multiple EC as different char devices (e.g: /dev/cros_ec, /dev/cros_pd). It connects to cros_ec_device and allows sysfs inferface for cros_pd. Also reduce number of allocated objects, make chromeos sysfs class object a static and add refcounting to prevent object deletion while command is in progress. Signed-off-by: NGwendal Grignou <gwendal@chromium.org> Reviewed-by: NDmitry Torokhov <dtor@chromium.org> Signed-off-by: NJavier Martinez Canillas <javier.martinez@collabora.co.uk> Tested-by: NHeiko Stuebner <heiko@sntech.de> Acked-by: NLee Jones <lee.jones@linaro.org> Acked-by: NOlof Johansson <olof@lixom.net> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Javier Martinez Canillas 提交于
The MFD driver should only have the logic to instantiate its child devices and setup any shared resources that will be used by the subdevices drivers. The cros_ec MFD is more complex than expected since it also has helpers to communicate with the EC. So the driver will only get more bigger as other protocols are supported in the future. So move the communication protocol helpers to its own driver as drivers/platform/chrome/cros_ec_proto.c. Suggested-by: NLee Jones <lee.jones@linaro.org> Signed-off-by: NJavier Martinez Canillas <javier.martinez@collabora.co.uk> Tested-by: NHeiko Stuebner <heiko@sntech.de> Acked-by: NLee Jones <lee.jones@linaro.org> Acked-by: NOlof Johansson <olof@lixom.net> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Javier Martinez Canillas 提交于
Commit 1b84f2a4 ("mfd: cros_ec: Use fixed size arrays to transfer data with the EC") modified the struct cros_ec_command fields to not use pointers for the input and output buffers and use fixed length arrays instead. This change was made because the cros_ec ioctl API uses that struct cros_ec_command to allow user-space to send commands to the EC and to get data from the EC. So using pointers made the API not 64-bit safe. Unfortunately this approach was not flexible enough for all the use-cases since there may be a need to send larger commands on newer versions of the EC command protocol. So to avoid to choose a constant length that it may be too big for most commands and thus wasting memory and CPU cycles on copy from and to user-space or having a size that is too small for some big commands, use a zero-length array that is both 64-bit safe and flexible. The same buffer is used for both output and input data so the maximum of these values should be used to allocate it. Suggested-by: NGwendal Grignou <gwendal@chromium.org> Signed-off-by: NJavier Martinez Canillas <javier.martinez@collabora.co.uk> Tested-by: NHeiko Stuebner <heiko@sntech.de> Acked-by: NLee Jones <lee.jones@linaro.org> Acked-by: NOlof Johansson <olof@lixom.net> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
- 23 5月, 2015 1 次提交
-
-
由 Rajeev Kumar 提交于
rajeev-dlh.kumar@st.com email-id doesn't exist anymore as I have left the company. Signed-off-by: NRajeev Kumar <rajeevkumar.linux@gmail.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 16 5月, 2015 2 次提交
-
-
由 Evgeniy Dushistov 提交于
max7359_build_keycode() does the same thing as matrix_keypad_build_keymap(), but the latter can also handle DT bindings. Tested on beagleboard-xm. Signed-off-by: NEvgeniy A. Dushistov <dushistov@mail.ru> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Evgeniy Dushistov 提交于
In datasheet of max7359 there is the following description of this flag: 0 - INT cleared when FIFO empty, 1 - INT cleared after host read. In this mode, I2C should read FIFO until interrupt condition removed, or further INT may be lost. So, if we set this flag, we have to read FIFO until it becomes empty. But in interrupt we read FIFO just once. This lead to "keyboard" hang until reboot, if we press several keys, because of interrupt handler read just one "press" from FIFO and clear interrupt. Signed-off-by: NEvgeniy A. Dushistov <dushistov@mail.ru> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 07 5月, 2015 3 次提交
-
-
由 Krzysztof Kozlowski 提交于
The platform_device_id is not modified by the driver and core uses it as const. Signed-off-by: NKrzysztof Kozlowski <k.kozlowski.k@gmail.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Guido Martínez 提交于
The event mask was specified as 0xF (4 bits) when in reality is 0x1F (5 bits) in order to be capable of representing all FIFO length values from 0 to 16. This caused a problem: when the keypad reported 16 pending events the driver took it as 0, and did nothing. This in turn caused the keypad to re-issue the interrupt over and over again. Signed-off-by: NGuido Martínez <guido@vanguardiasur.com.ar> Acked-by: NMichael Hennerich <michael.hennerich@analog.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Guido Martínez 提交于
The pull mask is created by looping each row (column) and building an 8-bit integer with the configuration. It is written byte-by-byte, when we reach the end of the rows (columns) or we're at the 3rd line (which finishes the first byte, since each pin is 2bits on the mask). However, this only works if we have at most 8 pins (2 bytes), which is not the case for the ADP5589. So, write the byte at each boundary (every 4 rows/columns). Signed-off-by: NGuido Martínez <guido@vanguardiasur.com.ar> Acked-by: NMichael Hennerich <michael.hennerich@analog.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 21 4月, 2015 1 次提交
-
-
由 Wolfram Sang 提交于
My Pengutronix address is not valid anymore, redirect people to the Pengutronix kernel team. Reported-by: NHarald Geyer <harald@ccbib.org> Signed-off-by: NWolfram Sang <wsa@the-dreams.de> Acked-by: NRobert Schwebel <r.schwebel@pengutronix.de> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 11 4月, 2015 1 次提交
-
-
由 Dmitry Torokhov 提交于
To save people some time let's document that we do not want new quirks for "force-release" keys in the kernel and that they should patch userspace (udev) instead. Suggested-by: NPali Rohár <pali.rohar@gmail.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 07 4月, 2015 1 次提交
-
-
由 Tomeu Vizoso 提交于
As the comment right before explains, the keyboard state is to be cleared only if the EC wasn't a wakeup source in the last suspend. Without this commit, there's an unneeded delay when resuming from suspend and we also lose the key that was pressed while suspended. Signed-off-by: NTomeu Vizoso <tomeu.vizoso@collabora.com> Reviewed-by: NJavier Martinez Canillas <javier.martinez@collabora.co.uk> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 04 4月, 2015 2 次提交
-
-
由 Linus Walleij 提交于
All systems using the TC3589x multifunction expander uses devicetree, so don't clutter the place with a lot of and assume it is there. Signed-off-by: NLinus Walleij <linus.walleij@linaro.org> Acked-by: NLee Jones <lee.jones@linaro.org> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Linus Walleij 提交于
This driver can only get its platform data from the device tree, and all platforms using it do that. Localize the platform data for the keypad. A later patch will enforce the device tree / OF dependence. Signed-off-by: NLinus Walleij <linus.walleij@linaro.org> Acked-by: NLee Jones <lee.jones@linaro.org> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 26 3月, 2015 1 次提交
-
-
由 Linus Walleij 提交于
All systems using the TC3589x multifunction expander uses devicetree, so don't clutter the place with a lot of and assume it is there. Signed-off-by: NLinus Walleij <linus.walleij@linaro.org> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
- 07 3月, 2015 1 次提交
-
-
由 Linus Walleij 提交于
This adds a key input driver for the keys found on the h3xxx iPAQ series. Based on a driver from handhelds.org 2.6.21 kernel, written by Alessandro GARDICH. Signed-off-by: NAlessandro GARDICH <gremlin@gremlin.it> Signed-off-by: NDmitry Artamonow <mad_soft@inbox.ru> Signed-off-by: NLinus Walleij <linus.walleij@linaro.org> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 05 3月, 2015 1 次提交
-
-
由 Valentin Rothberg 提交于
Since commit 1c6c6952 ("genirq: Reject bogus threaded irq requests") threaded IRQs without a primary handler need to be requested with IRQF_ONESHOT, otherwise the request will fail. Currently, plat->irqtype is only set to IRQF_TRIGGER_FALLING. This patch sets the ONESHOT flag directly in request_threaded_irq() to enforce the flag without being affected by future changes to plat->irqtype. Generated by: scripts/coccinelle/misc/irqf_oneshot.cocci Signed-off-by: NValentin Rothberg <Valentin.Rothberg@lip6.fr> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 04 3月, 2015 1 次提交
-
-
由 Olliver Schinagl 提交于
The gpio binding document says that new code should always use named gpios. Patch 40b73183 added support to parse a list of gpios from child nodes, but does not make it possible to use named gpios. This patch adds the con_id property and implements it is done in gpiolib.c, where the old-style of using unnamed gpios still works. Signed-off-by: NOlliver Schinagl <oliver@schinagl.nl> Acked-by: NBryan Wu <cooloney@gmail.com> Acked-by: NDmitry Torokhov <dmitry.torokhov@gmail.com> Reviewed-by: NAlexandre Courbot <acourbot@nvidia.com> Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
-
- 03 3月, 2015 1 次提交
-
-
由 Scott Branden 提交于
Broadcom Keypad controller is used to interface a SoC with a matrix-type keypad device. The keypad controller supports multiple row and column lines. A key can be placed at each intersection of a unique row and a unique column. The keypad controller can sense a key-press and key-release and report the event using an interrupt to the CPU. Reviewed-by: NRay Jui <rjui@broadcom.com> Signed-off-by: NScott Branden <sbranden@broadcom.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 27 2月, 2015 1 次提交
-
-
由 Javier Martinez Canillas 提交于
The struct cros_ec_command will be used as an ioctl() argument for the API to control the ChromeOS EC from user-space. So the data structure has to be 64-bit safe to make it compatible between 32 and 64 avoiding the need for a compat ioctl interface. Since pointers are self-aligned to different byte boundaries, use fixed size arrays instead of pointers for transferring ingoing and outgoing data with the Embedded Controller. Also, re-arrange struct members by decreasing alignment requirements to reduce the needing padding size. Signed-off-by: NJavier Martinez Canillas <javier.martinez@collabora.co.uk> Acked-by: NLee Jones <lee.jones@linaro.org> Tested-by: NGwendal Grignou <gwendal@chromium.org> Reviewed-by: NGwendal Grignou <gwendal@chromium.org> Signed-off-by: NOlof Johansson <olof@lixom.net>
-
- 14 2月, 2015 1 次提交
-
-
由 Tejun Heo 提交于
printk and friends can now format bitmaps using '%*pb[l]'. cpumask and nodemask also provide cpumask_pr_args() and nodemask_pr_args() respectively which can be used to generate the two printf arguments necessary to format the specified cpu/nodemask. * Line termination only requires one extra space at the end of the buffer. Use PAGE_SIZE - 1 instead of PAGE_SIZE - 2 when formatting. Signed-off-by: NTejun Heo <tj@kernel.org> Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com> Signed-off-by: NAndrew Morton <akpm@linux-foundation.org> Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
-
- 12 2月, 2015 1 次提交
-
-
由 Dan Carpenter 提交于
Static checkers complain about this NULL check because we dereference it without checking a couple lines later. This function is only called when "keypad->pdata" is non-NULL so we can just delete the NULL test. Signed-off-by: NDan Carpenter <dan.carpenter@oracle.com> [Dmitry: remove the variable altogether given that it is used just once and dereference directly.] Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 04 2月, 2015 1 次提交
-
-
由 Rob Herring 提交于
Remove some left-over ARM only includes in order to enable building on ARM64. __raw_{read,write}l were getting implicitly included, so add linux/io.h include. Signed-off-by: NRob Herring <robh@kernel.org> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 02 2月, 2015 1 次提交
-
-
由 Axel Lin 提交于
This is a I2C driver, so it's wrong to use platform prefix for the modalias. We have all needed i2c aliases coming form MODULE_DEVICE_TABLE, so let's remove the wrong and unneeded cap11xx modalias. Signed-off-by: NAxel Lin <axel.lin@ingics.com> Acked-by: NDaniel Mack <linux@zonque.org> Reviewed-by: NMatt Ranostay <mranostay@gmail.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 18 1月, 2015 1 次提交
-
-
由 Michael Karcher 提交于
Signed-off-by: NMichael Karcher <kernel@mkarcher.dialup.fu-berlin.de> Acked-by: NThorsten Glaser <tg@mirbsd.org> Tested-by: NStefan Niestegge <beetle@atari.org> Signed-off-by: NGeert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 08 1月, 2015 1 次提交
-
-
由 Fabio Estevam 提交于
According to Documentation/CodingStyle - Chapter 14: "The preferred form for passing a size of a struct is the following: p = kmalloc(sizeof(*p), ...); The alternative form where struct name is spelled out hurts readability and introduces an opportunity for a bug when the pointer variable type is changed but the corresponding sizeof that is passed to a memory allocator is not." So do it as recommended. Signed-off-by: NFabio Estevam <fabio.estevam@freescale.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 28 12月, 2014 1 次提交
-
-
由 Nicholas Mc Guire 提交于
The successive init_completion calls should be reinit_completion calls. Signed-off-by: NNicholas Mc Guire <der.herr@hofr.at> Acked-by: NHelge Deller <deller@gmx.de> Tested-by: NHelge Deller <deller@gmx.de> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 22 12月, 2014 1 次提交
-
-
由 Hans de Goede 提交于
Allwinnner sunxi SoCs have a low resolution adc (called lradc) which is specifically designed to have various (tablet) keys (ie home, back, search, etc). attached to it using a resistor network. This adds a driver for this. There are 2 channels, currently this driver only supports chan0 since there are no boards known to use chan1. This has been tested on an olimex a10s-olinuxino-micro, a13-olinuxino, and a20-olinuxino-micro. Signed-off-by: NHans de Goede <hdegoede@redhat.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 16 12月, 2014 4 次提交
-
-
由 Linus Walleij 提交于
All keypad column pins used as inputs should be pulled up on the STMPE24xx, but this is not done by the current driver. Add some logic that will do this properly. The STMPE1601 also has a keypad controller, but explicitly does *NOT* require you to set up any pull-ups. Signed-off-by: NLinus Walleij <linus.walleij@linaro.org> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Linus Walleij 提交于
The STMPE keypad controller is only used with device tree configured systems, so force the configuration to come from device tree only, and now actually get the rows and cols from the device tree too. Signed-off-by: NLinus Walleij <linus.walleij@linaro.org> Acked-by: NLee Jones <lee.jones@linaro.org> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Dmitry Torokhov 提交于
We do not need to roll our own implementation of delayed work now that we have proper implementation of mod_delayed_work. For interrupt-only driven buttons we retain the timer, but we rename it to release_timer to better reflect its purpose. Tested-by: NAndy Shevchenko <andriy.shevchenko@linux.intel.com> Reviewed-by: NLinus Walleij <linus.walleij@linaro.org> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Dmitry Torokhov 提交于
This change allows specify interrupt for buttons separately form gpio, potentially allowing to form several "clusters" of buttons on different interrupts. Button defined without both gpio and irq in device tree is a hared error instead of a warning now. Tested-by: NAndy Shevchenko <andriy.shevchenko@linux.intel.com> Reviewed-by: NLinus Walleij <linus.walleij@linaro.org> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 15 12月, 2014 1 次提交
-
-
由 Fabio Estevam 提交于
Commit af906faa ("Input: gpio_keys - fix warning regarding uninitialized 'irq' variable") introduced the following build warning: drivers/input/keyboard/gpio_keys.c:625:16: warning: 'button' may be used uninitialized in this function [-Wmaybe-uninitialized] Move the 'button' initialization to a proper location to avoid such warning. Reported-by: NOlof's autobuilder <build@lixom.net> Signed-off-by: NFabio Estevam <fabio.estevam@freescale.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 08 12月, 2014 1 次提交
-
-
由 Dmitry Torokhov 提交于
Commit f2d347ff ("Input: gpio_keys - add device tree support for interrupt only keys") caused the following build warning: drivers/input/keyboard/gpio_keys.c: In function 'gpio_keys_probe': drivers/input/keyboard/gpio_keys.c:647:15: warning: 'irq' may be used uninitialized in this function [-Wmaybe-uninitialized] drivers/input/keyboard/gpio_keys.c:622:7: note: 'irq' was declared here Move button->irq initialization into proper branch and get rid of the temporary. Reported-by: NOlof's autobuilder <build@lixom.net> Reported-by: NFabio Estevam <fabio.estevam@freescale.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 05 12月, 2014 1 次提交
-
-
由 Rafael J. Wysocki 提交于
After commit b2b49ccb (PM: Kconfig: Set PM_RUNTIME if PM_SLEEP is selected) PM_RUNTIME is always set if PM is set, so #ifdef blocks depending on CONFIG_PM_RUNTIME may now be changed to depend on CONFIG_PM. The alternative of CONFIG_PM_SLEEP and CONFIG_PM_RUNTIME may be replaced with CONFIG_PM too. Make these changes in 2 files under drivers/input/. Signed-off-by: NRafael J. Wysocki <rafael.j.wysocki@intel.com> Reviewed-by: NJingoo Han <jg1.han@samsung.com> Reviewed-by: NFerruh Yigit <fery@cypress.com> Acked-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
- 04 12月, 2014 2 次提交
-
-
由 Alexander Stein 提交于
This features already exists for board config setups. Add support for device tree based systems. Signed-off-by: NAlexander Stein <alexander.stein@systec-electronic.com> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-
由 Geert Uytterhoeven 提交于
Allocate the temporary buffer needed for initialization of the console keyboard maps (512 bytes, as NR_KEYS = 256) on the stack instead of statically, to reduce kernel size. add/remove: 0/1 grow/shrink: 0/0 up/down: 0/-512 (-512) function old new delta temp_map 512 - -512 Signed-off-by: NGeert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: NDmitry Torokhov <dmitry.torokhov@gmail.com>
-