From: s.hauer@pengutronix.de (Sascha Hauer)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 3/6] arm/imx6q: add core drivers clock, gpc, mmdc and src
Date: Mon, 12 Sep 2011 11:46:34 +0200 [thread overview]
Message-ID: <20110912094634.GP31404@pengutronix.de> (raw)
In-Reply-To: <1315303120-24203-4-git-send-email-shawn.guo@linaro.org>
On Tue, Sep 06, 2011 at 05:58:37PM +0800, Shawn Guo wrote:
> It adds a number of core drivers support for imx6q, including clock,
> General Power Controller (gpc), Multi Mode DDR Controller(mmdc) and
> System Reset Controller (src).
>
> Signed-off-by: Ranjani Vaidyanathan <ra5478@freescale.com>
> Signed-off-by: Shawn Guo <shawn.guo@linaro.org>
> ---
> diff --git a/arch/arm/mach-imx/src.c b/arch/arm/mach-imx/src.c
> new file mode 100644
> index 0000000..95fdd65
> --- /dev/null
> +++ b/arch/arm/mach-imx/src.c
> @@ -0,0 +1,52 @@
> +/*
> + * Copyright 2011 Freescale Semiconductor, Inc.
> + * Copyright 2011 Linaro Ltd.
> + *
> + * The code contained herein is licensed under the GNU General Public
> + * License. You may obtain a copy of the GNU General Public License
> + * Version 2 or later at the following locations:
> + *
> + * http://www.opensource.org/licenses/gpl-license.html
> + * http://www.gnu.org/copyleft/gpl.html
> + */
> +
> +#include <linux/init.h>
> +#include <linux/io.h>
> +#include <linux/of.h>
> +#include <linux/of_address.h>
> +#include <asm/unified.h>
> +
> +#define SRC_SCR 0x000
> +#define SRC_GPR1 0x020
> +#define BP_SRC_SCR_CORE1_RST 14
> +#define BP_SRC_SCR_CORE1_ENABLE 22
> +
> +static void __iomem *src_base;
> +
> +void imx_enable_cpu(int cpu, bool enable)
> +{
> + u32 mask, val;
> +
> + mask = 1 << (BP_SRC_SCR_CORE1_ENABLE + cpu - 1);
> + val = __raw_readl(src_base + SRC_SCR);
> + val = enable ? val | mask : val & ~mask;
> + __raw_writel(val, src_base + SRC_SCR);
> +}
> +
> +void imx_set_cpu_jump(int cpu, void *jump_addr)
> +{
> + __raw_writel(BSYM(virt_to_phys(jump_addr)),
> + src_base + SRC_GPR1 + cpu * 8);
> +}
> +
> +static int __init imx_src_init(void)
> +{
> + struct device_node *np;
> +
> + np = of_find_compatible_node(NULL, NULL, "fsl,imx6q-src");
> + src_base = of_iomap(np, 0);
> + WARN_ON(!src_base);
> +
> + return 0;
> +}
> +early_initcall(imx_src_init);
What I'm concerned about is that we carefully removed all assumptions
about which SoC the code runs on in the past. Now with this patchset
many of them come back. Here we have a initcall without any check
whether we really run on i.MX6. Above we have a imx_enable_cpu function
but this is really a imx6 specific function. Nevertheless it is called
from generic code in arch/arm/mach-imx/platsmp.c.
We've been there before and it was hard to remove all the implicit
assumptions on which SoC we are on. Please do not reintroduce it.
Sascha
--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
next prev parent reply other threads:[~2011-09-12 9:46 UTC|newest]
Thread overview: 69+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-09-06 9:58 [PATCH 0/6] add initial imx6q support Shawn Guo
2011-09-06 9:58 ` [PATCH 1/6] arm/imx6q: add device tree source Shawn Guo
2011-09-06 18:31 ` Arnd Bergmann
2011-09-07 11:16 ` Shawn Guo
2011-09-06 9:58 ` [PATCH 2/6] arm/imx6q: add core definitions and low-level debug uart Shawn Guo
2011-09-06 18:39 ` Arnd Bergmann
2011-09-07 8:50 ` Shawn Guo
2011-09-06 20:25 ` Uwe Kleine-König
2011-09-07 11:00 ` Shawn Guo
2011-09-07 12:36 ` Uwe Kleine-König
2011-09-07 14:23 ` Russell King - ARM Linux
2011-09-07 15:36 ` Nicolas Pitre
2011-09-08 14:56 ` Arnd Bergmann
2011-09-09 17:28 ` Tony Lindgren
2011-09-12 2:30 ` Shawn Guo
2011-09-12 7:41 ` Uwe Kleine-König
2011-09-12 8:43 ` Shawn Guo
2011-09-12 8:44 ` Sascha Hauer
2011-09-12 11:36 ` Shawn Guo
2011-09-12 14:14 ` Russell King - ARM Linux
2011-09-17 11:59 ` Russell King - ARM Linux
2011-09-15 1:24 ` Shawn Guo
2011-09-06 9:58 ` [PATCH 3/6] arm/imx6q: add core drivers clock, gpc, mmdc and src Shawn Guo
2011-09-06 19:14 ` Arnd Bergmann
2011-09-07 6:05 ` Shawn Guo
2011-09-07 7:56 ` Arnd Bergmann
2011-09-12 16:12 ` Shawn Guo
2011-09-12 19:40 ` Grant Likely
2011-09-12 20:28 ` Arnd Bergmann
2011-09-12 21:04 ` Grant Likely
2011-09-13 0:07 ` Shawn Guo
2011-09-07 12:43 ` Barry Song
2011-09-08 6:48 ` Shawn Guo
2011-09-11 2:28 ` Barry Song
2011-09-12 19:16 ` Grant Likely
2011-09-12 9:46 ` Sascha Hauer [this message]
2011-09-12 11:49 ` Shawn Guo
2011-09-12 12:36 ` Uwe Kleine-König
2011-09-12 12:40 ` Arnd Bergmann
2011-09-12 14:27 ` Shawn Guo
2011-09-15 1:26 ` Shawn Guo
2011-09-06 9:58 ` [PATCH 4/6] arm/imx6q: add smp and cpu hotplug support Shawn Guo
2011-09-06 18:53 ` Arnd Bergmann
2011-09-07 4:41 ` Shawn Guo
2011-09-07 5:08 ` Shilimkar, Santosh
2011-09-07 7:46 ` Shawn Guo
2011-09-06 9:58 ` [PATCH 5/6] arm/imx6q: add device tree machine support Shawn Guo
2011-09-06 18:55 ` Arnd Bergmann
2011-09-07 3:07 ` Shawn Guo
2011-09-07 7:26 ` Arnd Bergmann
2011-09-06 9:58 ` [PATCH 6/6] arm/imx6q: add suspend/resume support Shawn Guo
2011-09-06 18:56 ` Arnd Bergmann
2011-09-07 13:50 ` Barry Song
2011-09-08 6:23 ` Shawn Guo
2011-09-08 7:47 ` Russell King - ARM Linux
2011-09-08 15:22 ` Shawn Guo
2011-09-08 16:24 ` Russell King - ARM Linux
2011-09-08 17:09 ` Lorenzo Pieralisi
2011-09-09 7:40 ` Shawn Guo
2011-09-09 6:31 ` Barry Song
2011-09-09 7:32 ` Shawn Guo
2011-09-09 8:15 ` Russell King - ARM Linux
2011-09-09 10:15 ` Shawn Guo
2011-09-09 18:47 ` Russell King - ARM Linux
2011-09-06 18:28 ` [PATCH 0/6] add initial imx6q support Arnd Bergmann
2011-09-06 19:42 ` Uwe Kleine-König
2011-09-07 2:55 ` Shawn Guo
2011-09-07 9:39 ` Arnd Bergmann
2011-09-07 2:51 ` Shawn Guo
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=20110912094634.GP31404@pengutronix.de \
--to=s.hauer@pengutronix.de \
--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).