public inbox for linux-omap@vger.kernel.org
 help / color / mirror / Atom feed
From: "Raphaël Assénat" <raph@8d.com>
To: Tony Lindgren <tony@atomide.com>
Cc: linux-omap@vger.kernel.org
Subject: Re: AM3505/3517 support
Date: Tue, 05 Jul 2011 10:35:47 -0400	[thread overview]
Message-ID: <4E132143.7040802@8d.com> (raw)
In-Reply-To: <20110705111952.GG5783@atomide.com>

On 05/07/11 07:19 AM, Tony Lindgren wrote:
> * Raphaël Assénat <raph@8d.com> [110704 12:51]:
>>
>> The am3505 is apparently so similar to the 3430 that it was treated as such 
>> (omap_chip.oc was being set to CHIP_IS_OMAP3430ES3_1). There are however a
>> few differences that need to be addressed. I have therefore created a new
>> CHIP_IS and patched clocks, hwmod and power management related files
>> consequently. My system now boots until it complains that it is unable 
>> to mount its root filesystem.
> 
> Can you please describe where you need CHIP_IS for am3505? It seems that
> your patches just enable the same CHIP_IS_OMAP3430 features for am3505 too?
Actually it's only needed for the 3505/3517 specific UART 4 which should
not be registered on real OMAP3430's. (see struct omap_hwmod 
am35xx_uart4_hwmod; in omap_hwmod_3xxx_data.c)

But there are also cases where OMAP3430 hwmods must not be registered
on AM35xx. For instance, omap3xxx_timer12_hwmod since timer12 does
not exist general purpose AM3505's.

> I'd rather see us improve the code so we can support am3505 properly without
> a need to patch all over the place..
Maybe instead of having one big array of hwmods registered for
all CPUs in omap_hwmod_3xxx_data we could have a separate
one for am35xx (and maybe, eventually others) such as:

static __initdata struct omap_hwmod *omap3xxx_hwmods[]
static __initdata struct omap_hwmod *am35xx_hwmods[]

...and maybe also a 'common' array.

The init function would then register the appropriate hwmod array(s). The only 
thing I don't like is that for this to work we would have to keep setting 
CHIP_IS_OMAP3430 even on AM35xx CPUs. But maybe we could change the behaviour of
omap_hwmod_register to trust the caller and accept the hwmods without looking 
at the omap_chip member. By doing this I think we could drop all the 
.omap_chip = OMAP_CHIP_INIT(...) instances.

Otherwise I think the current approach, despite the size of the initial patch,
has at least the benefit of being explicit and less confusing than (ab)using the
CHIP_IS from a different CPU.

Best regards,
Raphaël Assénat
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

  reply	other threads:[~2011-07-05 14:35 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-07-04 19:29 AM3505/3517 support Raphaël Assénat
2011-07-05  9:59 ` Premi, Sanjeev
2011-07-06 13:59   ` Raphaël Assénat
2011-07-06 16:15     ` Premi, Sanjeev
2011-07-05 11:19 ` Tony Lindgren
2011-07-05 14:35   ` Raphaël Assénat [this message]
2011-07-06  6:56     ` Tony Lindgren
2011-07-06  8:54       ` Premi, Sanjeev
2011-07-06 13:51         ` Raphaël Assénat
2011-07-07  9:14       ` Paul Walmsley
2011-07-07 11:54         ` Tony Lindgren

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=4E132143.7040802@8d.com \
    --to=raph@8d.com \
    --cc=linux-omap@vger.kernel.org \
    --cc=tony@atomide.com \
    /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