- 27 May, 2021 1 commit
-
-
Lee Jones authored
Fixes the following W=1 kernel build warning(s): drivers/i2c/busses/i2c-nomadik.c:184: warning: Function parameter or member 'timeout' not described in 'nmk_i2c_dev' Signed-off-by:
Lee Jones <lee.jones@linaro.org> Reviewed-by:
Linus Walleij <linus.walleij@linaro.org> Signed-off-by:
Wolfram Sang <wsa@kernel.org>
-
- 15 Apr, 2021 1 commit
-
-
Tian Tao authored
Fix the following checkpatch errors: ERROR: space prohibited before that ',' (ctx:WxW) #280: FILE: drivers/i2c/busses/i2c-nomadik.c:280: + i2c_clr_bit(dev->virtbase + I2C_CR , I2C_CR_PE); ^ ERROR: space prohibited before that ',' (ctx:WxW) #528: FILE: drivers/i2c/busses/i2c-nomadik.c:528: + i2c_set_bit(dev->virtbase + I2C_CR , I2C_CR_PE); ^ No functional changes. Signed-off-by:
Tian Tao <tiantao6@hisilicon.com> Signed-off-by:
Zihao Tang <tangzihao1@hisilicon.com> Signed-off-by:
Wolfram Sang <wsa@kernel.org>
-
- 02 Feb, 2021 1 commit
-
-
Uwe Kleine-König authored
All amba drivers return 0 in their remove callback. Together with the driver core ignoring the return value anyhow, it doesn't make sense to return a value here. Change the remove prototype to return void, which makes it explicit that returning an error value doesn't work as expected. This simplifies changing the core remove callback to return void, too. Reviewed-by:
Ulf Hansson <ulf.hansson@linaro.org> Reviewed-by:
Arnd Bergmann <arnd@arndb.de> Acked-by:
Alexandre Belloni <alexandre.belloni@bootlin.com> Acked-by:
Dmitry Torokhov <dmitry.torokhov@gmail.com> Acked-by: Krzysztof Kozlowski <krzk@kernel.org> # for drivers/memory Acked-by:
Mark Brown <broonie@kernel.org> Acked-by:
Linus Walleij <linus.walleij@linaro.org> Acked-by: Suzuki K Poulose <suzuki.poulose@arm.com> # for hwtracing/coresight Acked-By: Vinod Koul <vkoul@kernel.org> # for dmaengine Acked-by: Guenter Roeck <linux@roeck-us.net> # for watchdog Acked-by: Wolfram Sang <wsa@kernel.org> # for I2C Acked-by: Takashi Iwai <tiwai@suse.de> # for sound Acked-by: Vladimir Zapolskiy <vz@mleia.com> # for memory/pl172 Acked-by:
Greg Kroah-Hartman <gregkh@linuxfoundation.org> Link: https://lore.kernel.org/r/20210126165835.687514-5-u.kleine-koenig@pengutronix.de Signed-off-by:
Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
-
- 04 Jul, 2020 1 commit
-
-
Jarkko Nikula authored
Modules with multiple authors should use multiple MODULE_AUTHOR() statements according to comment in include/linux/module.h. Split the i2c modules with multiple authors to use multiple MODULE_AUTHOR() statements. Signed-off-by:
Jarkko Nikula <jarkko.nikula@linux.intel.com> Reviewed-by:
Jean Delvare <jdelvare@suse.de> Signed-off-by:
Wolfram Sang <wsa@kernel.org>
-
- 24 Mar, 2020 1 commit
-
-
Andy Shevchenko authored
Since we have generic definitions for bus frequencies, let's use them. Reviewed-by:
Nicolas Saenz Julienne <nsaenzjulienne@suse.de> Acked-by:
Robert Richter <rrichter@marvell.com> Reviewed-by:
Thor Thayer <thor.thayer@linux.intel.com> Acked-by:
Elie Morisse <syniurge@gmail.com> Acked-by:
Nehal Shah <nehal-bakulchandra.shah@amd.com> Reviewed-by:
Brendan Higgins <brendanhiggins@google.com> Acked-by:
Scott Branden <scott.branden@broadcom.com> Reviewed-by:
Mika Westerberg <mika.westerberg@linux.intel.com> Acked-by:
Jarkko Nikula <jarkko.nikula@linux.intel.com> Acked-by:
Baruch Siach <baruch@tkos.co.il> Reviewed-by:
Guenter Roeck <linux@roeck-us.net> Acked-by:
Oleksij Rempel <o.rempel@pengutronix.de> Acked-by:
Vladimir Zapolskiy <vz@mleia.com> Acked-by:
Gregory CLEMENT <gregory.clement@bootlin.com> Reviewed-by:
Linus Walleij <linus.walleij@linaro.org> Reviewed-by:
Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org> Reviewed-by:
Chris Brandt <chris.brandt@renesas.com> Reviewed-by:
Baolin Wang <baolin.wang7@gmail.com> Reviewed-by:
Pierre-Yves MORDRET <pierre-yves.mordret@st.com> Acked-by:
Patrice Chotard <patrice.chotard@st.com> Acked-by:
Ard Biesheuvel <ardb@kernel.org> Reviewed-by:
Dmitry Osipenko <digetx@gmail.com> Acked-by:
Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by:
Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by:
Wolfram Sang <wsa@the-dreams.de>
-
- 19 Jun, 2019 1 commit
-
-
Thomas Gleixner authored
Based on 2 normalized pattern(s): this program is free software you can redistribute it and or modify it under the terms of the gnu general public license version 2 as published by the free software foundation this program is free software you can redistribute it and or modify it under the terms of the gnu general public license version 2 as published by the free software foundation # extracted by the scancode license scanner the SPDX license identifier GPL-2.0-only has been chosen to replace the boilerplate/reference in 4122 file(s). Signed-off-by:
Thomas Gleixner <tglx@linutronix.de> Reviewed-by:
Enrico Weigelt <info@metux.net> Reviewed-by:
Kate Stewart <kstewart@linuxfoundation.org> Reviewed-by:
Allison Randal <allison@lohutok.net> Cc: linux-spdx@vger.kernel.org Link: https://lkml.kernel.org/r/20190604081206.933168790@linutronix.de Signed-off-by:
Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-
- 03 Apr, 2019 1 commit
-
-
Dan Carpenter authored
"res" can't be NULL because it's a pointer to somewhere in the middle of the "adev" struct. Also probe() succeeded so there is no need to check here. Signed-off-by:
Dan Carpenter <dan.carpenter@oracle.com> Acked-by:
Linus Walleij <linus.walleij@linaro.org> Signed-off-by:
Wolfram Sang <wsa@the-dreams.de>
-
- 08 May, 2018 1 commit
-
-
Wolfram Sang authored
These days, the I2C core ensures that the embedded adapter device ignores the PM states of its children already. Because the adapter device is an opaque logical device, there is no need for drivers to repeat that again. Signed-off-by:
Wolfram Sang <wsa+renesas@sang-engineering.com> Reviewed-by:
Linus Walleij <linus.walleij@linaro.org> Reviewed-by:
Ulf Hansson <ulf.hansson@linaro.org> Signed-off-by:
Wolfram Sang <wsa@the-dreams.de>
-
- 29 Aug, 2017 1 commit
-
-
Arvind Yadav authored
amba_id are not supposed to change at runtime. All functions working with const amba_id. So mark the non-const structs as const. Signed-off-by:
Arvind Yadav <arvind.yadav.cs@gmail.com> Signed-off-by:
Wolfram Sang <wsa@the-dreams.de>
-
- 22 Aug, 2016 1 commit
-
-
Wolfram Sang authored
The core will do this for us now. Signed-off-by:
Wolfram Sang <wsa-dev@sang-engineering.com> Reviewed-by:
Grygorii Strashko <grygorii.strashko@ti.com> Acked-by:
Peter Korsgaard <peter@korsgaard.com> Acked-by:
Heiko Stuebner <heiko@sntech.de> Acked-by:
Neil Horman <nhorman@tuxdriver.com> Acked-by:
Thierry Reding <treding@nvidia.com> Acked-by:
Ray Jui <ray.jui@broadcom.com> Acked-by:
Vladimir Zapolskiy <vz@mleia.com> Acked-by:
Ludovic Desroches <ludovic.desroches@atmel.com> Acked-by:
Krzysztof Kozlowski <k.kozlowski@samsung.com> Acked-by:
Laxman Dewangan <ldewangan@nvidia.com> Signed-off-by:
Wolfram Sang <wsa@the-dreams.de>
-
- 15 Mar, 2015 2 commits
-
-
Nicholas Mc Guire authored
return type of read_i2c() is int not u32. As the assignments to status are consistent with int here its type is changed to int. Signed-off-by:
Nicholas Mc Guire <hofrat@osadl.org> Acked-by:
Linus Walleij <linus.walleij@linaro.org> Signed-off-by:
Wolfram Sang <wsa@the-dreams.de>
-
Nicholas Mc Guire authored
return type of wait_for_completion_timeout is unsigned long not int. as timeout is used for wait_for_completion_timeout exclusively here its type is simply changed to unsigned long. Signed-off-by:
Nicholas Mc Guire <hofrat@osadl.org> Acked-by:
Linus Walleij <linus.walleij@linaro.org> Signed-off-by:
Wolfram Sang <wsa@the-dreams.de>
-
- 03 Dec, 2014 1 commit
-
-
Rafael J. Wysocki authored
The SET_PM_RUNTIME_PM_OPS() and SET_RUNTIME_PM_OPS() macros are identical except that one of them is not empty for CONFIG_PM set, while the other one is not empty for CONFIG_PM_RUNTIME set, respectively. However, after commit b2b49ccb (PM: Kconfig: Set PM_RUNTIME if PM_SLEEP is selected) PM_RUNTIME is always set if PM is set, so one of these macros is now redundant. For this reason, replace SET_PM_RUNTIME_PM_OPS() with SET_RUNTIME_PM_OPS() everywhere and redefine the SET_PM_RUNTIME_PM_OPS symbol as SET_RUNTIME_PM_OPS in case new code is starting to use the macro being removed here. Reviewed-by:
Ulf Hansson <ulf.hansson@linaro.org> Acked-by:
Kevin Hilman <khilman@linaro.org> Signed-off-by:
Rafael J. Wysocki <rafael.j.wysocki@intel.com>
-
- 16 Jul, 2014 1 commit
-
-
Wolfram Sang authored
This driver has been flagged to drop class based instantiation. The removal improves boot-up time and is unneeded for embedded controllers. Users have been warned to switch for some time now, so we can actually do the removal. Keep the DEPRECATED flag, so the core can inform users that the behaviour finally changed now. After another transition period, this flag can go, too. While we are here, remove the indentation for the array setup because such things always break after some time. Signed-off-by:
Wolfram Sang <wsa@the-dreams.de> Acked-by:
Linus Walleij <linus.walleij@linaro.org>
-
- 22 May, 2014 1 commit
-
-
Ulf Hansson authored
For !CONFIG_PM_RUNTIME, the device were never put back into active state while resuming. For CONFIG_PM_RUNTIME, we blindly trusted the device to be inactive while we were about to handle it at suspend late, which is just too optimistic. Even if the driver uses pm_runtime_put_sync() after each tranfer to return it's runtime PM resources, there are no guarantees this will actually mean the device will inactivated. The reason is that the PM core will prevent runtime suspend during system suspend, and thus when a transfer occurs during the early phases of system suspend the device will be kept active after the transfer. To handle both issues above, use pm_runtime_force_suspend|resume() from the system suspend|resume callbacks. Signed-off-by:
Ulf Hansson <ulf.hansson@linaro.org> Acked-by:
Linus Walleij <linus.walleij@linaro.org> Signed-off-by:
Wolfram Sang <wsa@the-dreams.de>
-
- 14 May, 2014 1 commit
-
-
Ulf Hansson authored
devm_ioremap() returns NULL on error, not an error. Signed-off-by:
Ulf Hansson <ulf.hansson@linaro.org> Acked-by:
Linus Walleij <linus.walleij@linaro.org> Signed-off-by:
Wolfram Sang <wsa@the-dreams.de> Cc: stable@kernel.org
-
- 05 Mar, 2014 7 commits
-
-
Wolfram Sang authored
Warn users that class based instantiation is going away soon in favour of more robust probing and faster bootup times. Signed-off-by:
Wolfram Sang <wsa@the-dreams.de> Acked-by:
Linus Walleij <linus.walleij@linaro.org>
-
Ulf Hansson authored
We should never be busy performing transfers at suspend late, thus there are no reason to check for it. Signed-off-by:
Ulf Hansson <ulf.hansson@linaro.org> Signed-off-by:
Wolfram Sang <wsa@the-dreams.de>
-
Ulf Hansson authored
At system suspend_late, runtime PM has been disabled by the PM core which means we can safely operate on these resources. Consequentially we no longer have to wait until the noirq phase of the system suspend. Signed-off-by:
Ulf Hansson <ulf.hansson@linaro.org> Signed-off-by:
Wolfram Sang <wsa@the-dreams.de>
-
Ulf Hansson authored
Since the runtime PM state is expected to be active according to the amba bus, we must align our behaviour while probing to it. Moreover, this is needed to be able to have the driver fully functional without depending on CONFIG_RUNTIME_PM. Since the device is active while a successful probe has been completed, the reference counting for the clock will be screwed up and never reach zero. We resolve this by implementing runtime PM callbacks and let them handle the resources accordingly, including the clock. Signed-off-by:
Ulf Hansson <ulf.hansson@linaro.org> [wsa: s/#if/#ifdef/] Signed-off-by:
Wolfram Sang <wsa@the-dreams.de>
-
Ulf Hansson authored
The amba bus are responsible for pm_runtime_enable|disable, remove the redundant pm_runtime_disable at driver removal. Signed-off-by:
Ulf Hansson <ulf.hansson@linaro.org> Signed-off-by:
Wolfram Sang <wsa@the-dreams.de>
-
Ulf Hansson authored
Use devm_* functions to simplify code and error handling. Signed-off-by:
Ulf Hansson <ulf.hansson@linaro.org> Signed-off-by:
Wolfram Sang <wsa@the-dreams.de>
-
Linus Walleij authored
Move the former platform data struct nmk_i2c_controller into the per-device state container struct i2c_nmk_client, and remove all the platform data probe path hacks. Signed-off-by:
Linus Walleij <linus.walleij@linaro.org> [wsa: use 100kHz as default] Signed-off-by:
Wolfram Sang <wsa@the-dreams.de>
-
- 09 Jan, 2014 2 commits
-
-
Linus Walleij authored
The Nomadik I2C is now configured from the device tree on all platforms using this controller. Delete the platform data header and move the definitions into the driver so it is all contained in one single file. Signed-off-by:
Linus Walleij <linus.walleij@linaro.org> Signed-off-by:
Wolfram Sang <wsa@the-dreams.de>
-
Linus Walleij authored
The Nomadik I2C controller needs to have the slave set-up time configured based off the clock used to drive the I2C bus block. Currently this is done with static assignments assuming that the block is clocked 48MHz which is pretty likely to be bug-prone. Calculate the SLSU from the equation given in the datasheet instead. Signed-off-by:
Linus Walleij <linus.walleij@linaro.org> Signed-off-by:
Wolfram Sang <wsa@the-dreams.de>
-
- 23 Aug, 2013 1 commit
-
-
Wolfram Sang authored
I2C of helpers used to live in of_i2c.c but experience (from SPI) shows that it is much cleaner to have this in the core. This also removes a circular dependency between the helpers and the core, and so we can finally register child nodes in the core instead of doing this manually in each driver. So, fix the drivers and documentation, too. Signed-off-by:
Wolfram Sang <wsa@the-dreams.de>
-
- 19 Aug, 2013 1 commit
-
-
Jingoo Han authored
Use the wrapper function for retrieving the platform data instead of accessing dev->platform_data directly. Signed-off-by:
Jingoo Han <jg1.han@samsung.com> Signed-off-by:
Wolfram Sang <wsa@the-dreams.de>
-
- 16 Jun, 2013 1 commit
-
-
Linus Walleij authored
This utilize the new pinctrl core PM helpers to transition the driver to "sleep" and "idle" states, cutting away some boilerplate code. Cc: Hebbar Gururaja <gururaja.hebbar@ti.com> Cc: Mark Brown <broonie@kernel.org> Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com> Cc: Kevin Hilman <khilman@linaro.org> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Cc: Stephen Warren <swarren@wwwdotorg.org> Acked-by:
Wolfram Sang <wsa@the-dreams.de> Signed-off-by:
Linus Walleij <linus.walleij@linaro.org>
-
- 15 Jun, 2013 2 commits
-
-
Linus Walleij authored
The Nomadik I2C was using a local atomic counter to number the I2C adapters. This does not work on configurations where you also add, say a GPIO bit-banged adapter to the system. They will start to conflict about being adapter 0. There is no reason to use the numbered adapter function, and the semantic effect on systems with only Nomadik I2C blocks will be none - instead of increasing the number atomically in the driver itself, it is done in the I2C core. Signed-off-by:
Linus Walleij <linus.walleij@linaro.org> Signed-off-by:
Wolfram Sang <wsa@the-dreams.de>
-
Linus Walleij authored
The Nomadik I2C block was introduced with the Nomadik STn8815 SoC (the STn8810 incidentally is identical to the one named i2c-stu300.c). However as developments have only been tested on the DB8500 family, it was not properly working with the STn8815 anymore. Rectify this by adding some vendor variant data in the same manner as other PrimeCells, and switch code path depending on version. Tested on the S8815 Nomadik dongle. Signed-off-by:
Linus Walleij <linus.walleij@linaro.org> Signed-off-by:
Wolfram Sang <wsa@the-dreams.de>
-
- 21 Feb, 2013 1 commit
-
-
Doug Anderson authored
There is simply no reason to be manually setting the private driver data to NULL in the remove/fail to probe cases. This is just extra cruft code that can be removed. A few notes: * Nothing relies on drvdata being set to NULL. * The __device_release_driver() function eventually calls dev_set_drvdata(dev, NULL) anyway, so there's no need to do it twice. * I verified that there were no cases where xxx_get_drvdata() was being called in these drivers and checking for / relying on the NULL return value. This could be cleaned up kernel-wide but for now just take the baby step and remove from the i2c subsystem. Reported-by:
Wolfram Sang <wsa@the-dreams.de> Reported-by:
Stephen Warren <swarren@wwwdotorg.org> Signed-off-by:
Doug Anderson <dianders@chromium.org> Reviewed-by:
Jean Delvare <khali@linux-fr.org> Acked-by:
Peter Korsgaard <jacmet@sunsite.dk> Reviewed-by:
Mika Westerberg <mika.westerberg@linux.intel.com> Reviewed-by:
Marek Vasut <marex@denx.de> Signed-off-by:
Wolfram Sang <wolfram@the-dreams.de>
-
- 28 Jan, 2013 2 commits
-
-
Wolfram Sang authored
cppcheck rightfully reports those as "reassigned a value before the old one has been used." Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de> Cc: Linus Walleij <linus.walleij@stericsson.com>
-
Patrice Chotard authored
Amend the I2C nomadik pin controller to optionally take a pin control handle and set the state of the pins to: - "default" on boot, resume and before performing an i2c transfer - "idle" after initial default, after resume default, and after each i2c xfer - "sleep" on suspend() This should make it possible to optimize energy usage for the pins both for the suspend/resume cycle, and for runtime cases inbetween I2C transfers. Signed-off-by:
Patrice Chotard <patrice.chotard@stericsson.com> Signed-off-by:
Linus Walleij <linus.walleij@linaro.org> [wsa: fixed braces on one else-branch] Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de>
-
- 12 Nov, 2012 1 commit
-
-
Chuansheng Liu authored
The return value of wait_for_completion_timeout() is always >= 0 with unsigned int type. So the condition "ret < 0" or "ret >= 0" is pointless. Signed-off-by:
liu chuansheng <chuansheng.liu@intel.com> Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de>
-
- 02 Nov, 2012 1 commit
-
-
Philippe Begnic authored
Make sure to clk_prepare as well as clk_enable. Signed-off-by:
Philippe Begnic <philippe.begnic@stericsson.com> Signed-off-by:
Ulf Hansson <ulf.hansson@linaro.org> Signed-off-by:
Linus Walleij <linus.walleij@linaro.org> Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de>
-
- 06 Oct, 2012 1 commit
-
-
Lee Jones authored
Here we apply the bindings required for successful Device Tree probing of the i2c-nomadik driver. Signed-off-by:
Lee Jones <lee.jones@linaro.org> Acked-by:
Linus Walleij <linus.walleij@linaro.org> Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de>
-
- 12 Sep, 2012 1 commit
-
-
Linus Walleij authored
The regulator fetched by the Nomadik I2C driver is actually a voltage domain regulator. Stop doing this in the driver and let the power domain code handle any regulators, as discussed on the list. Cc: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by:
Linus Walleij <linus.walleij@linaro.org> Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de>
-
- 18 Aug, 2012 1 commit
-
-
Lee Jones authored
At this moment in time there is only one known configuration for the Nomadik I2C driver. By not holding that configuration in the driver adds some unnecessary overhead in platform code. The configuration has already been removed from platform code, this patch checks for any over-riding configurations. If there aren't any, the default is used. [LinusW says: "Right now this is causing boot regressions so we need it badly..."] Acked-by:
srinidhi kasagar <srinidhi.kasagar@stericsson.com> Acked-by:
Linus Walleij <linus.walleij@linaro.org> Signed-off-by:
Lee Jones <lee.jones@linaro.org> Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de>
-
- 13 Jul, 2012 1 commit
-
-
Lee Jones authored
Now that u5500 is obsolete, u8500 is the only user of the Nomadik i2c driver. As such there is no requirement to differentiate between initialisation values. By the time a new SoC is released, almost all of the ux500 platform will be DT:ed, so we can make decisions based on the compatible property instead. Acked-by:
Linus Walleij <linus.walleij@linaro.org> Signed-off-by:
Lee Jones <lee.jones@linaro.org>
-
- 09 Jul, 2012 1 commit
-
-
Virupax Sadashivpetimath authored
Signed-off-by:
Virupax Sadashivpetimath <virupax.sadashivpetimath@stericsson.com> Signed-off-by:
Srinidhi KASAGAR <srinidhi.kasagar@stericsson.com> Acked-by:
Linus Walleij <linus.walleij@linaro.org> Signed-off-by:
Wolfram Sang <w.sang@pengutronix.de>
-