From: mporter@linaro.org (Matt Porter)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v3 RESEND 2/5] ARM: add SMP support for Broadcom mobile SoCs
Date: Thu, 15 May 2014 14:26:20 -0400 [thread overview]
Message-ID: <20140515182620.GN32082@beef> (raw)
In-Reply-To: <CAGVrzca20+3kmJjyGv8Pr-qNNV4n0hhADL6GWvcYVDUL4q28Hg@mail.gmail.com>
On Thu, May 15, 2014 at 11:03:49AM -0700, Florian Fainelli wrote:
> Hi Alex,
>
> 2014-05-15 10:58 GMT-07:00 Alex Elder <elder@linaro.org>:
> > This patch adds SMP support for BCM281XX and BCM21664 family SoCs.
> >
> > This feature is controlled with a distinct config option such that a
> > SMP-enabled multi-v7 binary can be configured to run these SoCs in
> > uniprocessor mode. Since this SMP functionality is used for
> > multiple Broadcom mobile chip families the config option is called
> > ARCH_BCM_MOBILE_SMP (for lack of a better name).
> >
> > On SoCs of this type, the secondary core is not held in reset on
> > power-on. Instead it loops in a ROM-based holding pen. To release
> > it, one must write into a special register a jump address whose
> > low-order bits have been replaced with a secondary core's id, then
> > trigger an event with SEV. On receipt of an event, the ROM code
> > will examine the register's contents, and if the low-order bits
> > match its cpu id, it will clear them and write the value back to the
> > register just prior to jumping to the address specified.
> >
> > The location of the special register is defined in the device tree
> > using a "secondary-boot-reg" property in a node whose "enable-method"
> > matches.
> >
> > Derived from code originally provided by Ray Jui <rjui@broadcom.com>
> >
> > Signed-off-by: Alex Elder <elder@linaro.org>
> > ---
> > arch/arm/mach-bcm/Kconfig | 18 +++-
> > arch/arm/mach-bcm/Makefile | 3 +
> > arch/arm/mach-bcm/platsmp.c | 201 ++++++++++++++++++++++++++++++++++++++++++++
>
> Could we make that name a little bit more specific to the mobile SoCs?
> There are other BCM SoCs either currently supported in this directory
> (BCM5310X), or making their way to be supported (brcmstb, bcm63xx),
> and those share nothing with the Mobile SoC SMP code.
Right.
> Maybe we should create another level directory within mach-bcm...
Let's not go that far. The general direction we need to go is to work
toward removing this code from mach-bcm/ completely. I don't really want
to see us adding directories and encouraging burying a lot of new files
in them.
A unique name will be enough and then we can work toward moving things
out to drivers/ over time.
-Matt
WARNING: multiple messages have this Message-ID (diff)
From: Matt Porter <mporter-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
To: Florian Fainelli <f.fainelli-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Cc: Alex Elder <elder-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
Christian Daudt <bcm-xK7y4jjYLqYh9ZMKESR00Q@public.gmane.org>,
Russell King <linux-lFZ/pmaqli7XmaaqVzeoHQ@public.gmane.org>,
"devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
<devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
Arnd Bergmann <arnd-r2nGTMty4D4@public.gmane.org>,
sboyd-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org,
bcm-kernel-feedback-list-dY08KVG/lbpWk0Htik3J/w@public.gmane.org,
"linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
<linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
"linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org"
<linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org>
Subject: Re: [PATCH v3 RESEND 2/5] ARM: add SMP support for Broadcom mobile SoCs
Date: Thu, 15 May 2014 14:26:20 -0400 [thread overview]
Message-ID: <20140515182620.GN32082@beef> (raw)
In-Reply-To: <CAGVrzca20+3kmJjyGv8Pr-qNNV4n0hhADL6GWvcYVDUL4q28Hg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
On Thu, May 15, 2014 at 11:03:49AM -0700, Florian Fainelli wrote:
> Hi Alex,
>
> 2014-05-15 10:58 GMT-07:00 Alex Elder <elder-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>:
> > This patch adds SMP support for BCM281XX and BCM21664 family SoCs.
> >
> > This feature is controlled with a distinct config option such that a
> > SMP-enabled multi-v7 binary can be configured to run these SoCs in
> > uniprocessor mode. Since this SMP functionality is used for
> > multiple Broadcom mobile chip families the config option is called
> > ARCH_BCM_MOBILE_SMP (for lack of a better name).
> >
> > On SoCs of this type, the secondary core is not held in reset on
> > power-on. Instead it loops in a ROM-based holding pen. To release
> > it, one must write into a special register a jump address whose
> > low-order bits have been replaced with a secondary core's id, then
> > trigger an event with SEV. On receipt of an event, the ROM code
> > will examine the register's contents, and if the low-order bits
> > match its cpu id, it will clear them and write the value back to the
> > register just prior to jumping to the address specified.
> >
> > The location of the special register is defined in the device tree
> > using a "secondary-boot-reg" property in a node whose "enable-method"
> > matches.
> >
> > Derived from code originally provided by Ray Jui <rjui-dY08KVG/lbpWk0Htik3J/w@public.gmane.org>
> >
> > Signed-off-by: Alex Elder <elder-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
> > ---
> > arch/arm/mach-bcm/Kconfig | 18 +++-
> > arch/arm/mach-bcm/Makefile | 3 +
> > arch/arm/mach-bcm/platsmp.c | 201 ++++++++++++++++++++++++++++++++++++++++++++
>
> Could we make that name a little bit more specific to the mobile SoCs?
> There are other BCM SoCs either currently supported in this directory
> (BCM5310X), or making their way to be supported (brcmstb, bcm63xx),
> and those share nothing with the Mobile SoC SMP code.
Right.
> Maybe we should create another level directory within mach-bcm...
Let's not go that far. The general direction we need to go is to work
toward removing this code from mach-bcm/ completely. I don't really want
to see us adding directories and encouraging burying a lot of new files
in them.
A unique name will be enough and then we can work toward moving things
out to drivers/ over time.
-Matt
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
WARNING: multiple messages have this Message-ID (diff)
From: Matt Porter <mporter@linaro.org>
To: Florian Fainelli <f.fainelli@gmail.com>
Cc: Alex Elder <elder@linaro.org>,
Christian Daudt <bcm@fixthebug.org>,
Russell King <linux@arm.linux.org.uk>,
"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
Arnd Bergmann <arnd@arndb.de>,
sboyd@codeaurora.org, bcm-kernel-feedback-list@broadcom.com,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH v3 RESEND 2/5] ARM: add SMP support for Broadcom mobile SoCs
Date: Thu, 15 May 2014 14:26:20 -0400 [thread overview]
Message-ID: <20140515182620.GN32082@beef> (raw)
In-Reply-To: <CAGVrzca20+3kmJjyGv8Pr-qNNV4n0hhADL6GWvcYVDUL4q28Hg@mail.gmail.com>
On Thu, May 15, 2014 at 11:03:49AM -0700, Florian Fainelli wrote:
> Hi Alex,
>
> 2014-05-15 10:58 GMT-07:00 Alex Elder <elder@linaro.org>:
> > This patch adds SMP support for BCM281XX and BCM21664 family SoCs.
> >
> > This feature is controlled with a distinct config option such that a
> > SMP-enabled multi-v7 binary can be configured to run these SoCs in
> > uniprocessor mode. Since this SMP functionality is used for
> > multiple Broadcom mobile chip families the config option is called
> > ARCH_BCM_MOBILE_SMP (for lack of a better name).
> >
> > On SoCs of this type, the secondary core is not held in reset on
> > power-on. Instead it loops in a ROM-based holding pen. To release
> > it, one must write into a special register a jump address whose
> > low-order bits have been replaced with a secondary core's id, then
> > trigger an event with SEV. On receipt of an event, the ROM code
> > will examine the register's contents, and if the low-order bits
> > match its cpu id, it will clear them and write the value back to the
> > register just prior to jumping to the address specified.
> >
> > The location of the special register is defined in the device tree
> > using a "secondary-boot-reg" property in a node whose "enable-method"
> > matches.
> >
> > Derived from code originally provided by Ray Jui <rjui@broadcom.com>
> >
> > Signed-off-by: Alex Elder <elder@linaro.org>
> > ---
> > arch/arm/mach-bcm/Kconfig | 18 +++-
> > arch/arm/mach-bcm/Makefile | 3 +
> > arch/arm/mach-bcm/platsmp.c | 201 ++++++++++++++++++++++++++++++++++++++++++++
>
> Could we make that name a little bit more specific to the mobile SoCs?
> There are other BCM SoCs either currently supported in this directory
> (BCM5310X), or making their way to be supported (brcmstb, bcm63xx),
> and those share nothing with the Mobile SoC SMP code.
Right.
> Maybe we should create another level directory within mach-bcm...
Let's not go that far. The general direction we need to go is to work
toward removing this code from mach-bcm/ completely. I don't really want
to see us adding directories and encouraging burying a lot of new files
in them.
A unique name will be enough and then we can work toward moving things
out to drivers/ over time.
-Matt
next prev parent reply other threads:[~2014-05-15 18:26 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-05-15 17:58 [PATCH v3 RESEND 0/5] ARM: SMP: support Broadcom mobile SoCs Alex Elder
2014-05-15 17:58 ` Alex Elder
2014-05-15 17:58 ` Alex Elder
2014-05-15 17:58 ` [PATCH v3 RESEND 1/5] devicetree: bindings: document Broadcom CPU enable method Alex Elder
2014-05-15 17:58 ` Alex Elder
2014-05-15 17:58 ` Alex Elder
2014-05-15 17:58 ` [PATCH v3 RESEND 2/5] ARM: add SMP support for Broadcom mobile SoCs Alex Elder
2014-05-15 17:58 ` Alex Elder
2014-05-15 18:03 ` Florian Fainelli
2014-05-15 18:03 ` Florian Fainelli
2014-05-15 18:03 ` Florian Fainelli
2014-05-15 18:17 ` Alex Elder
2014-05-15 18:17 ` Alex Elder
2014-05-15 19:19 ` Matt Porter
2014-05-15 19:19 ` Matt Porter
2014-05-15 19:19 ` Matt Porter
2014-05-15 18:26 ` Matt Porter [this message]
2014-05-15 18:26 ` Matt Porter
2014-05-15 18:26 ` Matt Porter
2014-05-15 18:31 ` Florian Fainelli
2014-05-15 18:31 ` Florian Fainelli
2014-05-15 18:31 ` Florian Fainelli
2014-05-15 17:58 ` [PATCH v3 RESEND 3/5] ARM: configs: enable SMP in bcm_defconfig Alex Elder
2014-05-15 17:58 ` Alex Elder
2014-05-15 17:58 ` [PATCH v3 RESEND 4/5] ARM: dts: enable SMP support for bcm28155 Alex Elder
2014-05-15 17:58 ` Alex Elder
2014-05-15 17:58 ` [PATCH v3 RESEND 5/5] ARM: dts: enable SMP support for bcm21664 Alex Elder
2014-05-15 17:58 ` Alex Elder
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=20140515182620.GN32082@beef \
--to=mporter@linaro.org \
--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 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.