Re: [PATCH] i2c-eg20t: fix race between i2c init and interrupt enable

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Yadi,

On Tue, 23 Aug 2016 17:07:19 +0800, Yadi Hu wrote:
> From: Hu Yadi <Yadi.hu@xxxxxxxxxxxxx>
> 
> The driver executes request_irq() function before the base address
> of i2c registers is remapped in kernel space. If i2c controller
> shares an interrupt line with other devices,it is possible that
> an interrupt arrives immediately after request_irq() is called.
> Since the interrupt handler pch_i2c_handler() is active, it will
> read its own register to determine if this interrupt was from
> its device.
> At this moment, base address of i2c registers is not remapped
> in kernel space yet,so the INT handler access a unknown address
> and a error occurs.
> 
> Signed-off-by: Hu Yadi <Yadi.hu@xxxxxxxxxxxxx>
> ---
>  drivers/i2c/busses/i2c-eg20t.c |   25 ++++++++++++++-----------
>  1 files changed, 14 insertions(+), 11 deletions(-)
> (...)

ERROR: trailing whitespace
#66: FILE: drivers/i2c/busses/i2c-eg20t.c:896:
+^I$

ERROR: code indent should use tabs where possible
#67: FILE: drivers/i2c/busses/i2c-eg20t.c:897:
+        for (i = 0; i < adap_info->ch_num; i++) {$

WARNING: please, no spaces at the start of a line
#67: FILE: drivers/i2c/busses/i2c-eg20t.c:897:
+        for (i = 0; i < adap_info->ch_num; i++) {$

total: 2 errors, 1 warnings, 44 lines checked

I'll review your patch when it passes ./scripts/checkpatch.pl.

Also note (not reported by the script): please do not add random blank
lines in the source code, it lowers readability.

-- 
Jean Delvare
SUSE L3 Support
--
To unsubscribe from this list: send the line "unsubscribe linux-i2c" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux GPIO]     [Linux SPI]     [Linux Hardward Monitoring]     [LM Sensors]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux