From: maxime.coquelin@st.com (Maxime COQUELIN)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v5 1/4] i2c: busses: i2c-st: Add ST I2C controller
Date: Thu, 17 Oct 2013 18:48:35 +0200 [thread overview]
Message-ID: <526014E3.70505@st.com> (raw)
In-Reply-To: <20131017141627.GD14104@ns203013.ovh.net>
On 10/17/2013 04:16 PM, Jean-Christophe PLAGNIOL-VILLARD wrote:
> On 09:27 Thu 17 Oct , Maxime COQUELIN wrote:
>> Hi Jean-Christophe,
>>
>> On 10/16/2013 05:14 PM, Jean-Christophe PLAGNIOL-VILLARD wrote:
>>
>>
>> ...
>>>> +
>>>> +static inline void st_i2c_set_bits(void __iomem *reg, u32 mask)
>>>> +{
>>>> + writel(readl(reg) | mask, reg);
>>>> +}
>>>> +
>>>> +static inline void st_i2c_clr_bits(void __iomem *reg, u32 mask)
>>>> +{
>>>> + writel(readl(reg) & ~mask, reg);
>>> use set_bit api and use relaxed version
>> Using the set_bit api here does not match with the purpose of these
>> functions.
>> We want to be able to set/clear multiple bits, and AFAICS the set_bit
>> api does not
>> provide this possibility.
>>
>> I took example on i2c-nomadik for these functions.
>>
> so factorize the code not copy and paste
I won't create a new API for this.
If this is blocking for you, then I will just remove this functions.
>>>> +}
>>>> +
>>>> +/* From I2C Specifications v0.5 */
>>>> +static struct st_i2c_timings i2c_timings[] = {
>>>> use readsl
>> Since the read content is flushed, I prefer keeping it as it is instead
>> of allocating
>> a buffer of the FIFO's size.
> keep point is to speedup the bus
I meant I will use readl_relaxed, not readl.
>>> use relaxed version as much as possible
>> I was not comfortable with the different possibilities (_raw_readl,
>> readl_relaxed, readl...).
>> I found this interresting discussion:
>> _http://comments.gmane.org/gmane.linux.ports.arm.kernel/117626
>> From what I understood, you are right, I should be able to use
>> readl_relaxed everywhere.
>>
>> Maybe I should perform a readl on the interrupt mask register before
>> returning from the interrupt handler,
>> in order to ensure that the write to the IEN register is effective
>> before the IRQ for the device is re-enabled at GIC level.
>> Maybe this could avoid the few spurious interrupts I face sometimes, I
>> will have a try.
> ok
I failed to reproduce the spurious interrupt without the patch, so I
can't say
whether performing a readl at this stage helps.
>>>> +}
next prev parent reply other threads:[~2013-10-17 16:48 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-10-14 12:46 [PATCH v5 0/4] Add I2C support to ST SoCs Maxime COQUELIN
2013-10-14 12:46 ` [PATCH v5 1/4] i2c: busses: i2c-st: Add ST I2C controller Maxime COQUELIN
2013-10-16 15:14 ` Jean-Christophe PLAGNIOL-VILLARD
2013-10-17 7:27 ` Maxime COQUELIN
2013-10-17 9:33 ` srinivas kandagatla
2013-10-17 14:19 ` Jean-Christophe PLAGNIOL-VILLARD
2013-10-17 14:30 ` srinivas kandagatla
2013-10-17 14:49 ` Lucas Stach
2013-10-18 8:22 ` srinivas kandagatla
2013-10-28 15:02 ` Maxime Coquelin
2013-11-01 12:50 ` srinivas kandagatla
2013-10-17 15:53 ` Lee Jones
2013-10-17 16:09 ` Jean-Christophe PLAGNIOL-VILLARD
2013-10-17 14:16 ` Jean-Christophe PLAGNIOL-VILLARD
2013-10-17 16:48 ` Maxime COQUELIN [this message]
2013-10-28 19:25 ` Kumar Gala
2013-10-29 13:19 ` Maxime Coquelin
2013-10-29 15:49 ` Kumar Gala
2013-11-01 11:16 ` Wolfram Sang
2013-11-04 14:28 ` Maxime Coquelin
2013-10-14 12:46 ` [PATCH v5 2/4] ARM: STi: Supply I2C configuration to STiH416 SoC Maxime COQUELIN
2013-10-14 12:46 ` [PATCH v5 3/4] ARM: STi: Supply I2C configuration to STiH415 SoC Maxime COQUELIN
2013-10-14 12:46 ` [PATCH v5 4/4] ARM: STi: Add I2C config to B2000 and B2020 boards Maxime COQUELIN
2013-10-16 14:54 ` [PATCH v5 0/4] Add I2C support to ST SoCs Maxime COQUELIN
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=526014E3.70505@st.com \
--to=maxime.coquelin@st.com \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).