From: Ley Foon Tan <ley.foon.tan@intel.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 01/20] arm: socfpga: restructure clock manager driver
Date: Mon, 27 Feb 2017 16:36:29 +0800 [thread overview]
Message-ID: <1488184589.2424.6.camel@intel.com> (raw)
In-Reply-To: <3e88c26c-134f-1b5e-e222-303bafb88701@denx.de>
On Sab, 2017-02-25 at 22:18 +0100, Marek Vasut wrote:
> On 02/22/2017 10:47 AM, Ley Foon Tan wrote:
> >
> > Restructure clock manager driver in the preparation to support A10.
> > Move the Gen5 specific code to _gen5 files. No functional change.
> >
> > Change all uint32_t to u32 and change to use macro BIT(n) for bit
> > shift.
> >
> > Signed-off-by: Ley Foon Tan <ley.foon.tan@intel.com>
> [...]
>
> >
> > --- a/arch/arm/mach-socfpga/clock_manager.c
> > +++ b/arch/arm/mach-socfpga/clock_manager.c
> > @@ -1,5 +1,5 @@
> > ?/*
> > - *??Copyright (C) 2013 Altera Corporation <www.altera.com>
> > + *??Copyright (C) 2013-2017 Altera Corporation <www.altera.com>
> > ? *
> > ? * SPDX-License-Identifier: GPL-2.0+
> > ? */
> > @@ -13,10 +13,10 @@ DECLARE_GLOBAL_DATA_PTR;
> > ?static const struct socfpga_clock_manager *clock_manager_base =
> > ? (struct socfpga_clock_manager *)SOCFPGA_CLKMGR_ADDRESS;
> > ?
> > -static void cm_wait_for_lock(uint32_t mask)
> > +void cm_wait_for_lock(u32 mask)
> > ?{
> > - register uint32_t inter_val;
> We should probably drop this "register" altogether.
Okay.
>
> >
> > - uint32_t retry = 0;
> > + register u32 inter_val;
> > + u32 retry = 0;
> > ? do {
> > ? inter_val = readl(&clock_manager_base->inter) &
> > mask;
> > ? if (inter_val == mask)
> [...]
>
> >
> > ?static void cm_print_clock_quick_summary(void)
> > ?{
> > ? printf("MPU???????%10ld kHz\n", cm_get_mpu_clk_hz() /
> > 1000);
> > diff --git a/arch/arm/mach-socfpga/clock_manager_gen5.c
> > b/arch/arm/mach-socfpga/clock_manager_gen5.c
> > new file mode 100755
> > index 0000000..1df2ed4
> > --- /dev/null
> > +++ b/arch/arm/mach-socfpga/clock_manager_gen5.c
> > @@ -0,0 +1,495 @@
> > +/*
> > + *??Copyright (C) 2013-2017 Altera Corporation <www.altera.com>
> > + *
> > + * SPDX-License-Identifier: GPL-2.0+
> > + */
> > +
> > +#include <common.h>
> > +#include <asm/io.h>
> > +#include <asm/arch/clock_manager.h>
> > +
> > +DECLARE_GLOBAL_DATA_PTR;
> > +
> > +static const struct socfpga_clock_manager *clock_manager_base =
> > + (struct socfpga_clock_manager *)SOCFPGA_CLKMGR_ADDRESS;
> > +
> > +/*
> > + * function to write the bypass register which requires a poll of
> > the
> > + * busy bit
> > + */
> > +static void cm_write_bypass(u32 val)
> > +{
> > + writel(val, &clock_manager_base->bypass);
> > + cm_wait_for_fsm();
> > +}
> > +
> > +/* function to write the ctrl register which requires a poll of
> > the busy bit */
> > +static void cm_write_ctrl(u32 val)
> > +{
> > + writel(val, &clock_manager_base->ctrl);
> > + cm_wait_for_fsm();
> > +}
> > +
> > +/* function to write a clock register that has phase information
> > */
> > +static void cm_write_with_phase(u32 value,
> > + u32 reg_address, u32 mask)
> > +{
> > + /* poll until phase is zero */
> > + while (readl(reg_address) & mask)
> > + ;
> This polling should be bounded, in fact, wait_for_bit() might be what
> you want .
Okay, will change to wait_for_bit() here.
>
> >
> > + writel(value, reg_address);
> > +
> > + while (readl(reg_address) & mask)
> > + ;
> DTTO
Same here.
>
Regards
Ley Foon
next prev parent reply other threads:[~2017-02-27 8:36 UTC|newest]
Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-02-22 9:47 [U-Boot] [PATCH 00/20] Add Intel Arria 10 SoC support Ley Foon Tan
2017-02-22 9:47 ` [U-Boot] [PATCH 01/20] arm: socfpga: restructure clock manager driver Ley Foon Tan
2017-02-25 21:18 ` Marek Vasut
2017-02-27 8:36 ` Ley Foon Tan [this message]
2017-02-22 9:47 ` [U-Boot] [PATCH 02/20] arm: socfpga: restructure reset " Ley Foon Tan
2017-02-22 9:47 ` [U-Boot] [PATCH 03/20] arm: socfpga: restructure misc driver Ley Foon Tan
2017-02-22 9:47 ` [U-Boot] [PATCH 04/20] arm: socfpga: restructure system manager Ley Foon Tan
2017-02-22 9:47 ` [U-Boot] [PATCH 05/20] arm: socfpga: add A10 defines Ley Foon Tan
2017-02-25 21:20 ` Marek Vasut
[not found] ` <1488188711.2424.10.camel@intel.com>
2017-02-27 10:00 ` Marek Vasut
2017-02-22 9:47 ` [U-Boot] [PATCH 06/20] arm: socfpga: add reset driver support for Arria 10 Ley Foon Tan
2017-02-25 21:28 ` Marek Vasut
2017-02-27 10:14 ` Ley Foon Tan
2017-02-27 10:19 ` Marek Vasut
2017-02-28 2:31 ` Ley Foon Tan
2017-02-28 8:27 ` Ley Foon Tan
2017-02-28 8:39 ` Marek Vasut
2017-02-22 9:47 ` [U-Boot] [PATCH 07/20] arm: socfpga: add clock driver " Ley Foon Tan
2017-02-25 21:35 ` Marek Vasut
2017-03-06 7:10 ` Ley Foon Tan
2017-03-07 3:48 ` Marek Vasut
2017-02-22 9:47 ` [U-Boot] [PATCH 08/20] arm: socfpga: add system manager " Ley Foon Tan
2017-02-25 21:36 ` Marek Vasut
2017-03-06 7:39 ` Ley Foon Tan
2017-03-07 3:49 ` Marek Vasut
2017-03-07 9:07 ` Ley Foon Tan
2017-02-22 9:47 ` [U-Boot] [PATCH 09/20] arm: socfpga: add sdram header file " Ley Foon Tan
2017-02-22 9:47 ` [U-Boot] [PATCH 10/20] arm: socfpga: add misc support " Ley Foon Tan
2017-02-25 21:40 ` Marek Vasut
2017-03-06 8:00 ` Ley Foon Tan
2017-03-07 3:50 ` Marek Vasut
2017-02-22 9:47 ` [U-Boot] [PATCH 11/20] arm: socfpga: add pinmux " Ley Foon Tan
2017-02-25 21:41 ` Marek Vasut
2017-03-06 8:08 ` Ley Foon Tan
2017-02-22 9:47 ` [U-Boot] [PATCH 12/20] fdt: add compatible strings " Ley Foon Tan
2017-02-22 9:47 ` [U-Boot] [PATCH 13/20] arm: dts: add dts and dtsi " Ley Foon Tan
2017-02-22 9:47 ` [U-Boot] [PATCH 14/20] arm: socfpga: add SPL support " Ley Foon Tan
2017-02-25 21:43 ` Marek Vasut
2017-02-27 5:36 ` Chee, Tien Fong
2017-03-07 2:51 ` Ley Foon Tan
2017-02-22 9:47 ` [U-Boot] [PATCH 15/20] drivers: Makefile: include fpga build in SPL Ley Foon Tan
2017-02-25 21:44 ` Marek Vasut
2017-02-27 16:06 ` Michal Simek
2017-03-07 2:52 ` Ley Foon Tan
2017-02-22 9:47 ` [U-Boot] [PATCH 16/20] drivers: fpga: add compile switch for Gen5 only registers Ley Foon Tan
2017-02-22 9:47 ` [U-Boot] [PATCH 17/20] arm: socfpga: convert Altera ddr driver to use Kconfig Ley Foon Tan
2017-02-22 9:47 ` [U-Boot] [PATCH 18/20] arm: socfpga: add config and defconfig for Arria 10 Ley Foon Tan
2017-02-22 9:47 ` [U-Boot] [PATCH 19/20] arm: socfpga: add board files for the Arria10 Ley Foon Tan
2017-02-22 9:47 ` [U-Boot] [PATCH 20/20] arm: socfpga: enable build for Arria 10 Ley Foon Tan
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=1488184589.2424.6.camel@intel.com \
--to=ley.foon.tan@intel.com \
--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.