- 10 10月, 2015 3 次提交
-
-
由 Wolfram Sang 提交于
We make sure to reinit the HW in the timeout case; then we know that interrupts are always disabled in the sections protected by the spinlock. Thus, we can simply remove it which is a preparation for further refactoring. While here, rename the timeout variable to time_left which is way more readable. Signed-off-by: NWolfram Sang <wsa+renesas@sang-engineering.com> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
由 Wolfram Sang 提交于
Signed-off-by: NWolfram Sang <wsa+renesas@sang-engineering.com> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
由 Wolfram Sang 提交于
We don't need to init HW before every transfer since we know the HW state then. HW init at probe time is enough. While here, add setting the clock register which belongs to init HW. Also, set MDBS bit since not setting it is prohibited according to the manual. Signed-off-by: NWolfram Sang <wsa+renesas@sang-engineering.com> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
- 24 6月, 2015 2 次提交
-
-
由 Wolfram Sang 提交于
wait_event_timeout returns long, not int. Signed-off-by: NWolfram Sang <wsa+renesas@sang-engineering.com> Acked-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
由 Wolfram Sang 提交于
5 seconds is a very large timeout, and it is hardcoded. Use the default timeout from 'struct adapter' which is 1 second. It can also be modified from userspace for specific workloads via i2c-dev. Signed-off-by: NWolfram Sang <wsa+renesas@sang-engineering.com> Acked-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
- 01 6月, 2015 1 次提交
-
-
由 Wolfram Sang 提交于
Signed-off-by: NWolfram Sang <wsa+renesas@sang-engineering.com> Acked-by: NGeert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
- 13 5月, 2015 1 次提交
-
-
由 Krzysztof Kozlowski 提交于
The platform_device_id is not modified by these drivers and core uses it as const. Signed-off-by: NKrzysztof Kozlowski <k.kozlowski.k@gmail.com> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
- 27 3月, 2015 1 次提交
-
-
由 Wolfram Sang 提交于
After more discussion, brave users, and additional datasheet evaluation, some API updates for the new I2C slave framework became imminent. The slave events now get some easier to understand naming. Also, the event handling has been simplified to only need a single call to the slave callback when an action by the backend is required. Reported-by: NUwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: NWolfram Sang <wsa+renesas@sang-engineering.com> Acked-by: NGeert Uytterhoeven <geert+renesas@glider.be> Acked-by: NUwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
- 12 12月, 2014 1 次提交
-
-
由 Wolfram Sang 提交于
The first I2C slave provider using the new generic interface. Signed-off-by: NWolfram Sang <wsa+renesas@sang-engineering.com> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
- 20 10月, 2014 1 次提交
-
-
由 Wolfram Sang 提交于
A platform_driver does not need to set an owner, it will be populated by the driver core. Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
- 30 9月, 2014 4 次提交
-
-
由 Wolfram Sang 提交于
gcc rightfully says: drivers/i2c/busses/i2c-rcar.c:198:10: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] Signed-off-by: NWolfram Sang <wsa+renesas@sang-engineering.com> Acked-by: NLaurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
由 Sergei Shtylyov 提交于
Check if the ICMSR register (masked with the ICMIER register) evaluates to 0 in the driver's interrupt handler and return IRQ_NONE in that case, like many other drivers do. Signed-off-by: NSergei Shtylyov <sergei.shtylyov@cogentembedded.com> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
由 Sergei Shtylyov 提交于
rcar_i2c_prepare_msg() always returns 0, so we can make this function return *void* and thus remove the result check in rcar_i2c_master_xfer(). Signed-off-by: NSergei Shtylyov <sergei.shtylyov@cogentembedded.com> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
由 Sergei Shtylyov 提交于
rcar_i2c_master_xfer() needlessly compares the message pointers (using indirect addressing) in order to detect the last I2C message, while it's enough to only compare the message indexes. Signed-off-by: NSergei Shtylyov <sergei.shtylyov@cogentembedded.com> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
- 20 9月, 2014 1 次提交
-
-
由 Sergei Shtylyov 提交于
Bits 8-31 of all registers reflect the value of bits 0-7 on reads and should be 0 on writes, according to the manuals. RCAR_IRQ_ACK_{RECV|SEND} macros have all 1's in bits 8-31, thus going against the manuals, so fix them. Signed-off-by: NSergei Shtylyov <sergei.shtylyov@cogentembedded.com> Cc: stable@vger.kernel.org Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
- 05 9月, 2014 1 次提交
-
-
由 Sergei Shtylyov 提交于
This reverts commit 150b8be3. The I2C core's per-adapter locks can't protect from IRQs, so the driver still needs a spinlock to protect the register accesses. Signed-off-by: NSergei Shtylyov <sergei.shtylyov@cogentembedded.com> Cc: stable@vger.kernel.org # 3.16+ Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
- 02 9月, 2014 1 次提交
-
-
由 Sergei Shtylyov 提交于
Sometimes the MNR and MST interrupts happen simultaneously (stop automatically follows NACK, according to the manuals) and in such case the ID_NACK flag isn't set since the MST interrupt handling precedes MNR and all interrupts are cleared and disabled then, so that MNR interrupt is never noticed -- this causes NACK'ed transfers to be falsely reported as successful. Exchanging MNR and MST handlers fixes this issue, however the MNR bit somehow gets set again even after being explicitly cleared, so I decided to completely suppress handling of all disabled interrupts (which is a good thing anyway)... Signed-off-by: NSergei Shtylyov <sergei.shtylyov@cogentembedded.com> Cc: stable@vger.kernel.org Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
- 17 7月, 2014 1 次提交
-
-
由 Wolfram Sang 提交于
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: NWolfram Sang <wsa@the-dreams.de>
-
- 03 6月, 2014 1 次提交
-
-
由 Jingoo Han 提交于
The site-specific OOM messages are unnecessary, because they duplicate the MM subsystem generic OOM message. For example, k.alloc and v.alloc failures use dump_stack(). Signed-off-by: NJingoo Han <jg1.han@samsung.com> Acked-by: NGuenter Roeck <linux@roeck-us.net> Reviewed-by: NJean Delvare <jdelvare@suse.de> Acked-by: NUwe Kleine-König <u.kleine-koenig@pengutronix.de> Acked-by: NFelipe Balbi <balbi@ti.com> Acked-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: NLinus Walleij <linus.walleij@linaro.org> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
- 02 6月, 2014 12 次提交
-
-
由 Wolfram Sang 提交于
Make clear that the driver is GPL v2 only. Remove FSF address. Remove filename in comment. Update copyright information. Signed-off-by: NWolfram Sang <wsa+renesas@sang-engineering.com> Acked-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Acked-by: NGeert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
由 Wolfram Sang 提交于
Remove some obvious comments, remove some superfluous debug output (the error code carries the same information), some white space fixing... Signed-off-by: NWolfram Sang <wsa+renesas@sang-engineering.com> Acked-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Acked-by: NGeert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
由 Wolfram Sang 提交于
Status register and enable register are identical regarding their layout. Use the bit definitions for both. Signed-off-by: NWolfram Sang <wsa+renesas@sang-engineering.com> Acked-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Acked-by: NGeert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
由 Wolfram Sang 提交于
The i2c core has per-adapter locks, so no need to protect again. Signed-off-by: NWolfram Sang <wsa+renesas@sang-engineering.com> Acked-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Acked-by: NGeert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
由 Wolfram Sang 提交于
The old macros made it harder to see what was actually happening. Replace them with something more readable. Signed-off-by: NWolfram Sang <wsa+renesas@sang-engineering.com> Acked-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Acked-by: NGeert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
由 Wolfram Sang 提交于
Setting up a read or write message is similar enough to be done in one function. Also, move a helper function into the new function since it is only used here. Signed-off-by: NWolfram Sang <wsa+renesas@sang-engineering.com> Acked-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Acked-by: NGeert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
由 Wolfram Sang 提交于
We should always check if the bus is free, independently if it is a read or write. It should be done before the first message, though. After that, we ourselves keep the bus busy. Remove a 'ret' assignment which only silenced a build warning. Signed-off-by: NWolfram Sang <wsa+renesas@sang-engineering.com> Acked-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Acked-by: NGeert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
由 Wolfram Sang 提交于
Remove the seperate functions and use designated constants. As readable but less overhead. Actually, this is even more readable since the old function used a mix of "=" and "|=". Signed-off-by: NWolfram Sang <wsa+renesas@sang-engineering.com> Acked-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Acked-by: NGeert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
由 Wolfram Sang 提交于
Remove the seperate functions and use designated constants. As readable but less overhead. Signed-off-by: NWolfram Sang <wsa+renesas@sang-engineering.com> Acked-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Acked-by: NGeert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
由 Wolfram Sang 提交于
We use devm, so irq number is only needed during probe. Signed-off-by: NWolfram Sang <wsa+renesas@sang-engineering.com> Acked-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Acked-by: NGeert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
由 Wolfram Sang 提交于
Very basic operations, just called once, can also go to the caller. Signed-off-by: NWolfram Sang <wsa+renesas@sang-engineering.com> Acked-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Acked-by: NGeert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
由 Wolfram Sang 提交于
Signed-off-by: NWolfram Sang <wsa@sang-engineering.com> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
- 15 5月, 2014 1 次提交
-
-
由 Wolfram Sang 提交于
This hardware does not support zero length transfers. Instead, the driver does one (random) byte transfers currently with undefined results for the slaves. We now bail out. Signed-off-by: NWolfram Sang <wsa+renesas@sang-engineering.com> Signed-off-by: NWolfram Sang <wsa@the-dreams.de> Cc: stable@kernel.org
-
- 06 3月, 2014 1 次提交
-
-
由 Wolfram Sang 提交于
Warn users that class based instantiation is going away soon in favour of more robust probing and faster bootup times. Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
- 27 2月, 2014 1 次提交
-
-
由 Wolfram Sang 提交于
While we are here, also brush up the devicetree binding documentation. The example was an inappropriate copy from the sh_mobile driver. Signed-off-by: NWolfram Sang <wsa@sang-engineering.com> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
- 27 1月, 2014 3 次提交
-
-
由 Ben Dooks 提交于
The response to a bus NACK is to return -ENXIO instead of the -EREMOTEIO being currently returned by the driver. Signed-off-by: NBen Dooks <ben.dooks@codethink.co.uk> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
由 Ben Dooks 提交于
The current i2c-rcar driver does clk_get() without a corresponding clk_put(). Add the clk to the driver private data and then get it with the devm functions so that it is released when the driver is unbound. Note, we do not call clk_prepare_enable() at this point due to the very possible magic that is being done by the pm_runtime system underneath the driver. Signed-off-by: NBen Dooks <ben.dooks@codethink.co.uk> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
由 Ben Dooks 提交于
The i2c-rcar driver currently prints an error message if the master_xfer callback fails. However if the bus is being probed then lots of NAKs will be generated, causing the output of a number of errors printed. To solve this, disable the print if the error is not -EREMOTEIO. An example of running i2cdetect: 10: i2c-rcar e6530000.i2c: error -121 : 15 -- i2c-rcar e6530000.i2c: error -121 : 15 -- 12 i2c-rcar e6530000.i2c: error -121 : 15 -- i2c-rcar e6530000.i2c: error -121 : 15 -- i2c-rcar e6530000.i2c: error -121 : 15 -- i2c-rcar e6530000.i2c: error -121 : 15 -- i2c-rcar e6530000.i2c: error -121 : 15 -- i2c-rcar e6530000.i2c: error -121 : 15 Signed-off-by: NBen Dooks <ben.dooks@codethink.co.uk> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
- 25 1月, 2014 1 次提交
-
-
由 Paul Gortmaker 提交于
None of these files are actually using any __init type directives and hence don't need to include <linux/init.h>. Most are just a left over from __devinit and __cpuinit removal, or simply due to code getting copied from one driver to the next. Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com> Acked-by: NJean Delvare <khali@linux-fr.org> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
- 01 11月, 2013 1 次提交
-
-
由 Kuninori Morimoto 提交于
b720423a (i2c: rcar: add rcar-H2 support) added R-Car H2 support on i2c-rcar. The R-Car I2C type is based on SoC generation (Gen1 = E1/M1/H1, Gen2 = E2/M2/H2), but added naming was H1/H2 instead of Gen1/Gen2. Gen1/Gen2 is better naming on this driver. Signed-off-by: NKuninori Morimoto <kuninori.morimoto.gx@renesas.com> Acked-by: NSimon Horman <horms+renesas@verge.net.au> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-
- 30 9月, 2013 1 次提交
-
-
由 Guennadi Liakhovetski 提交于
Using the same clock for all device instances is non-portable and obtaining clock references by an ID without using a device pointer is discouraged. This is also not needed, because on platforms, where this driver is used, suitable clocks are available for the I2C controllers, that are children of the peripheral clock and just pass its rate 1-to-1 to controllers. This patch switches the driver to obtain references to correct clocks. Signed-off-by: NGuennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Signed-off-by: NWolfram Sang <wsa@the-dreams.de>
-