From: Alexandre Belloni <alexandre.belloni@free-electrons.com>
To: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
Cc: Boris Brezillon <boris.brezillon@free-electrons.com>,
Nicolas FERRE <nicolas.ferre@atmel.com>,
Arnd Bergmann <arnd@arndb.de>,
linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH 1/6] ARM: at91: pm: rework cpu detection
Date: Wed, 14 Jan 2015 22:07:34 +0100 [thread overview]
Message-ID: <20150114210734.GO3843@piout.net> (raw)
In-Reply-To: <217DB987-13E3-4D5D-A9BE-D17662A19E26@jcrosoft.com>
Hi,
(Adding Arnd in Cc)
On 15/01/2015 at 04:37:14 +0800, Jean-Christophe PLAGNIOL-VILLARD wrote :
> >>> - /* AT91RM9200 SDRAM low-power mode cannot be used with self-refresh. */
> >>> - if (cpu_is_at91rm9200())
> >>> + at91_pm_data.memctrl = AT91_MEMCTRL_SDRAMC;
> >>> +
> >>> + if (of_machine_is_compatible("atmel,at91rm9200")) {
> >>> + /*
> >>> + * AT91RM9200 SDRAM low-power mode cannot be used with
> >>> + * self-refresh.
> >>> + */
> >>> at91_ramc_write(0, AT91RM9200_SDRAMC_LPR, 0);
> >>> -
> >>> +
> >>> + at91_pm_data.uhp_udp_mask = AT91RM9200_PMC_UHP |
> >>> + AT91RM9200_PMC_UDP;
> >>> + at91_pm_data.memctrl = AT91_MEMCTRL_MC;
> >>> + } else if (of_machine_is_compatible("atmel,at91sam9260") ||
> >>> + of_machine_is_compatible("atmel,at91sam9g20") ||
> >>> + of_machine_is_compatible("atmel,at91sam9261") ||
> >>> + of_machine_is_compatible("atmel,at91sam9g10") ||
> >>> + of_machine_is_compatible("atmel,at91sam9263")) {
> >> nack here
> >>
> >> you switch for runtime information from the SOC register store in ram to DT
> >>
> >> DT is great but I do prefer to rely on the SoC register here as the whole was
> >> also to check that the is correct
> >
> > Well, cpu_is_xxx macros are defined in a mach specific header, and we're
> > currently trying to enable multi platform support.
>
> Yes does not mean we can not move this, use the REAL hardware detected cpu is better
> as you can check that the DT is valid for this SoC and also have fixup for a specific
> SoC version without having to have x DT per SoC
>
> >
> >>
> >> wihich is way slower
> >
> > Hmm, this SoC detection has been move from the suspend path (where, as
> > you stated, speed is a real concern) to the pm init function (which is
> > only called once at startup), and I doubt the boot time penalty will
> > even be noticeable…
>
> except if your table is boot as quick as possible avoid useless string compare is always a good choice
>
> IIRC we had in the past RFC to have the drivers compatible compare switch to HASH
> for this purpose too
>
Following a discussion with Arnd, the whole SoC detection will be remove
which will be completely faster than mapping the dbgu registers.
Also, the of_machine_is_compatible are supposed to be removed soon,
waiting for the pm code to be reworked. What is done here is to allow us
to go forward with switching to multiplatform and cleaning up the
mach-at91 directory.
I have follow up patches coming up and they already remove some of the
of_machine_is_compatible.
--
Alexandre Belloni, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
next prev parent reply other threads:[~2015-01-14 21:07 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-01-12 21:23 [PATCH 0/6] AT91 cleanup for 3.20 #2 Alexandre Belloni
2015-01-12 21:23 ` [PATCH 1/6] ARM: at91: pm: rework cpu detection Alexandre Belloni
2015-01-14 19:14 ` Jean-Christophe PLAGNIOL-VILLARD
2015-01-14 20:21 ` Boris Brezillon
2015-01-14 20:37 ` Jean-Christophe PLAGNIOL-VILLARD
2015-01-14 21:07 ` Alexandre Belloni [this message]
2015-01-14 22:12 ` Arnd Bergmann
2015-01-12 21:23 ` [PATCH 2/6] ARM: at91: pm: use the mmio-sram pool to access SRAM Alexandre Belloni
2015-01-15 8:53 ` Yang, Wenyou
2015-01-15 9:14 ` Alexandre Belloni
2015-01-12 21:23 ` [PATCH 3/6] ARM: at91: remove useless map_io Alexandre Belloni
2015-01-12 21:23 ` [PATCH 4/6] ARM: at91: sama5d4: remove useless call to at91_init_sram Alexandre Belloni
2015-01-12 21:23 ` [PATCH 5/6] ARM: at91: remove unused at91_init_sram Alexandre Belloni
2015-01-12 21:23 ` [PATCH 6/6] ARM: at91: move at91rm9200_idle() to clk/at91/pmc.c Alexandre Belloni
2015-01-12 22:57 ` Mike Turquette
2015-01-13 9:25 ` Boris Brezillon
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=20150114210734.GO3843@piout.net \
--to=alexandre.belloni@free-electrons.com \
--cc=arnd@arndb.de \
--cc=boris.brezillon@free-electrons.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=nicolas.ferre@atmel.com \
--cc=plagnioj@jcrosoft.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