All of lore.kernel.org
 help / color / mirror / Atom feed
From: Hannes Schmelzer <hannes@schmelzer.or.at>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH] arch-mx6: fix MX6_PAD_DECLARE macro to work with MX6 duallite
Date: Thu, 21 Jul 2016 08:10:12 +0200	[thread overview]
Message-ID: <57906744.8010205@schmelzer.or.at> (raw)
In-Reply-To: <578FE43B.1080406@schmelzer.or.at>

On 07/20/2016 10:51 PM, Hannes Schmelzer wrote:
> On 07/20/2016 09:30 AM, Stefano Babic wrote:
>> Hi Hannes,
> Hi Stefano,
>> this patch breaks most i.MX6 boards (the not DL) and I revert it. Maybe
>> I had to ask better before, anyway:
> sorry for inconvenience, i should have done more testing on this.
> I just tried to compile several i.mx6 boards and found out that I did 
> not covered the MX6S which are in trouble now.
>> On 22/06/2016 12:07, Hannes Schmelzer wrote:
>>> if we build for an i.mx6 (d)ual(l)ite CONFIC_MX6DL we shall use
>>> MX6DL_PAD instead the common MX6_PAD.
>>>
>>> Signed-off-by: Hannes Schmelzer<oe5hpm@oevsv.at>
>>> ---
>>>
>>>   arch/arm/include/asm/arch-mx6/mx6-pins.h | 4 ++--
>>>   1 file changed, 2 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/arch/arm/include/asm/arch-mx6/mx6-pins.h 
>>> b/arch/arm/include/asm/arch-mx6/mx6-pins.h
>>> index 4b6bb18..3465205 100644
>>> --- a/arch/arm/include/asm/arch-mx6/mx6-pins.h
>>> +++ b/arch/arm/include/asm/arch-mx6/mx6-pins.h
>>> @@ -18,7 +18,7 @@ enum {
>>>   #include "mx6q_pins.h"
>>>   #undef MX6_PAD_DECL
>>>   #define MX6_PAD_DECL(name, pco, mc, mm, sio, si, pc) \
>>> -    MX6_PAD_DECLARE(MX6DL_PAD_,name, pco, mc, mm, sio, si, pc),
>>> +    MX6_PAD_DECLARE(MX6DL_PAD_, name, pco, mc, mm, sio, si, pc),
>>>   #include "mx6dl_pins.h"
>>>   };
>>>   #elif defined(CONFIG_MX6Q)
>>> @@ -30,7 +30,7 @@ enum {
>>>   #elif defined(CONFIG_MX6DL) || defined(CONFIG_MX6S)
>>>   enum {
>>>   #define MX6_PAD_DECL(name, pco, mc, mm, sio, si, pc) \
>>> -    MX6_PAD_DECLARE(MX6_PAD_,name, pco, mc, mm, sio, si, pc),
>>> +    MX6_PAD_DECLARE(MX6DL_PAD_, name, pco, mc, mm, sio, si, pc),
>>>   #include "mx6dl_pins.h"
>>>   };
>> Can you better explain the problem you had ? The name is not decisive -
>> the important thing is that the correct include file with the right
>> layout is included, that means mx6dl_pins.h. And this was mainlined
>> since a lot of time.
> Maybe all the time nobody had to use I2C #4 on an i.mx6 duallite chip, 
> doing so i encountered this problem.
>
> The name is decisive for sure, have a closer look to the 
> "MX6_PAD_DECLARE" macro,
> In conjunction with the correct include file the prefix used to form 
> the final register table declaration.
>
> Next the iomux-v3.h is from interest,
> the "#define IOMUX_PADS" has dependency on CONFIG_MX6nn, here the 
> previous definition out from mx6-pins.h is used.
>
> I will send some V2 to address this topic fully, ok?
>> We have several boards with 6DL into mainline, so I am missing which is
>> your problem.
>>
>> Best regards,
>> Stefano Babic
> cheers,
> Hannes
Just looked around a bit more about this.
Root cause for failing this patch is, that many boards do not use the 
'IOMUX_PADS' macro, instead they just directly use the definition out of 
"mx6dl_pins.h" for example.
So we get in trouble there if we change the MX6_PAD_DECLARE macro for 
having MX6DL pads instead MX6 pads.

At one point of view it would make sense to me changing all boards to 
use the IOMUX_PADS macro for accessing pads register, because afterwards 
the real accessed register would be fully in dependence of CONFIG_MX6nn.
On the other hand i cannot fully predict every case could happen if we 
simply change that with search/replace.

So it would be OK for me to drop this patch and i will use on my board:

MX6DL_PAD_ENET_TX_EN__I2C4_SCL
MX6DL_PAD_ENET_TXD1__I2C4_SDA

instead

IOMUX_PADS(PAD_ENET_TX_EN__I2C4_SCL)
IOMUX_PADS(MX6DL_PAD_ENET_TXD1__I2C4_SDA )

Whats your thinking about this?

cheers,
Hannes

  reply	other threads:[~2016-07-21  6:10 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-06-22 10:07 [U-Boot] [PATCH] arch-mx6: fix MX6_PAD_DECLARE macro to work with MX6 duallite Hannes Schmelzer
2016-07-11 14:42 ` Stefano Babic
2016-07-11 14:44 ` Otavio Salvador
2016-07-20  7:30 ` Stefano Babic
2016-07-20 20:51   ` Hannes Schmelzer
2016-07-21  6:10     ` Hannes Schmelzer [this message]
2016-07-21  8:28       ` Stefano Babic
2016-07-21 19:02         ` Hannes Schmelzer

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=57906744.8010205@schmelzer.or.at \
    --to=hannes@schmelzer.or.at \
    --cc=u-boot@lists.denx.de \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.