From: Marek Vasut <marex@denx.de>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 1/6] am33xx: Enable UART{1,2,4,5} clocks
Date: Sat, 20 Oct 2012 20:57:04 +0200 [thread overview]
Message-ID: <201210202057.05056.marex@denx.de> (raw)
In-Reply-To: <20121020174808.GI5854@bill-the-cat>
Dear Tom Rini,
> On Fri, Oct 19, 2012 at 08:25:46PM -0400, Andrew Bradford wrote:
> > Tom & Marek,
> >
> > On Thu, 27 Sep 2012 10:53:05 -0700
> >
> > Tom Rini <trini@ti.com> wrote:
> > > -----BEGIN PGP SIGNED MESSAGE-----
> > > Hash: SHA1
> > >
> > > On 09/27/12 10:27, Marek Vasut wrote:
> > > > Dear Tom Rini,
> > > >
> > > >> On 09/27/12 10:11, Marek Vasut wrote:
> > > >>> Dear Tom Rini,
> > > >>>
> > > >>>> On 09/27/12 09:45, Marek Vasut wrote:
> > > >>>>> Dear Tom Rini,
> > > >>>>>
> > > >>>>>> On Thu, Sep 27, 2012 at 06:13:36PM +0200, Marek Vasut
> > > >>>>>>
> > > >>>>>> wrote:
> > > >>>>>>> Dear Andrew Bradford,
> > > >>>>>>>
> > > >>>>>>>> If configured to use UART{1,2,4,5}, such as on the
> > > >>>>>>>> Beaglebone RS232 cape, enable the required clocks
> > > >>>>>>>> for the UART in use.
> > > >>>>>>>>
> > > >>>>>>>> Signed-off-by: Andrew Bradford
> > > >>>>>>>> <andrew@bradfordembedded.com> ---
> > > >>>>>>>>
> > > >>>>>>>> arch/arm/cpu/armv7/am33xx/clock.c | 28
> > > >>>>>>>> ++++++++++++++++++++++++++++ 1 file changed, 28
> > > >>>>>>>> insertions(+)
> > > >>>>>>>>
> > > >>>>>>>> diff --git a/arch/arm/cpu/armv7/am33xx/clock.c
> > > >>>>>>>> b/arch/arm/cpu/armv7/am33xx/clock.c index
> > > >>>>>>>> 2b19506..4eb9226 100644 ---
> > > >>>>>>>> a/arch/arm/cpu/armv7/am33xx/clock.c +++
> > > >>>>>>>> b/arch/arm/cpu/armv7/am33xx/clock.c @@ -114,6
> > > >>>>>>>> +114,34 @@ static void enable_per_clocks(void)
> > > >>>>>>>>
> > > >>>>>>>> while (readl(&cmwkup->wkup_uart0ctrl) !=
> > > >>>>>>>> PRCM_MOD_EN) ;
> > > >>>>>>>>
> > > >>>>>>>> + /* UART1 */ +#ifdef CONFIG_SERIAL2 +
> > > >>>>>>>> writel(PRCM_MOD_EN, &cmper->uart1clkctrl); + while
> > > >>>>>>>> (readl(&cmper->uart1clkctrl) != PRCM_MOD_EN)
> > > >>>>>>>> + ;
> > > >>>>>>>
> > > >>>>>>> Call WATCHDOG_RESET() here, fix glboally
> > > >>>>>>
> > > >>>>>> We don't have WATCHDOG_RESET...
> > > >>>>>
> > > >>>>> You do, and it opts-out to udelay(1) is most cases.
> > > >>>>
> > > >>>> It looks like it opts-out to {} in most cases, in
> > > >>>> <watchdog.h>
> > > >>>
> > > >>> Correct, we use it to retrigger watchdog timer if implemented.
> > > >>
> > > >> Which the SoC support isn't doing and the rest of the code also
> > > >> isn't trying to use. Arguably the whole file should be doing
> > > >> udelay(1) in each of these instances and a clean up patch which
> > > >> this series depends on might be useful.
> > > >
> > > > So we're changing the practice from doing WATCHDOG_RESET() to
> > > > udelay(1) ? And we're doing so in generic code?
> > >
> > > I think we should use WATCHDOG_RESET where it makes sense and udelay
> > > where we're just delaying. I don't see WATCHDOG_RESET() being used
> > > for enable this-or-that clock. But maybe I'm just really missing
> > > something about how we use WATCHDOG_RESET in the case where it's not a
> > > nop.
> >
> > Is there a consensus on the use of WATCHDOG_RESET vs. udelay(1) in this
> > instance?
> >
> > Looking through the arch/arm/cpu/armv7/{omap-common,omap3}/clock files
> > shows no use of either WATCHDOG_RESET or udelay(1) in the ways
> > mentioned. In fact, I can't easily find a use of WATCHDOG_RESET at all
> > within arch/arm/cpu/armv7 code.
> >
> > What is the goal of using either udelay(1) or WATCHDOG_RESET as
> > recommended here?
>
> Lets just match the rest of the SoC code and have the empty loop. We
> can have the discussion about what kind of delay or macro makes most
> sense another time.
WATCHDOG_RESET() shall obviously be called, just enable watchdog and your uboot
will keep restarting in such loops.
Best regards,
Marek Vasut
next prev parent reply other threads:[~2012-10-20 18:57 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-09-26 20:04 [U-Boot] [PATCH 0/6] am335x_evm: Enable UART{1,2,4,5} Andrew Bradford
2012-09-26 20:04 ` [U-Boot] [PATCH 1/6] am33xx: Enable UART{1,2,4,5} clocks Andrew Bradford
2012-09-27 12:48 ` Matt Porter
2012-09-27 16:13 ` Marek Vasut
2012-09-27 16:25 ` Tom Rini
2012-09-27 16:45 ` Marek Vasut
2012-09-27 17:07 ` Tom Rini
2012-09-27 17:11 ` Marek Vasut
2012-09-27 17:22 ` Tom Rini
2012-09-27 17:27 ` Marek Vasut
2012-09-27 17:53 ` Tom Rini
2012-10-20 0:25 ` Andrew Bradford
2012-10-20 17:48 ` Tom Rini
2012-10-20 18:57 ` Marek Vasut [this message]
2012-10-21 14:54 ` Tom Rini
2012-09-26 20:04 ` [U-Boot] [PATCH 2/6] am33xx: Enable UART{1,2,4,5} pin-mux Andrew Bradford
2012-09-27 12:49 ` Matt Porter
2012-09-26 20:04 ` [U-Boot] [PATCH 3/6] serial: Enable up to 6 eserial devices Andrew Bradford
2012-09-26 20:04 ` [U-Boot] [PATCH 4/6] console & omap-common/spl: Enable use of eserial Andrew Bradford
2012-09-27 16:34 ` Marek Vasut
[not found] ` <20121010091028.01de813d@brick>
2012-10-10 14:53 ` Marek Vasut
2012-10-10 16:00 ` Tom Rini
2012-09-26 20:04 ` [U-Boot] [PATCH 5/6] am33xx: Enable eserial device usage for ns16550 Andrew Bradford
2012-09-26 20:04 ` [U-Boot] [PATCH 6/6] am335x_evm: Enable use of UART{1,2,4,5} Andrew Bradford
2012-09-27 12:50 ` Matt Porter
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=201210202057.05056.marex@denx.de \
--to=marex@denx.de \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox