From: gregory.clement@free-electrons.com (Gregory CLEMENT)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v4 3/9] arm: mach-mvebu: add source files
Date: Wed, 27 Jun 2012 09:52:18 +0200 [thread overview]
Message-ID: <4FEABBB2.7040502@free-electrons.com> (raw)
In-Reply-To: <201206261617.20954.arnd@arndb.de>
On 06/26/2012 06:17 PM, Arnd Bergmann wrote:
> On Tuesday 26 June 2012, Gregory Clement wrote:
>> From: Gregory CLEMENT <gregory.clement@free-electrons.com>
>>
>> Signed-off-by: Gregory CLEMENT <gregory.clement@free-electrons.com>
>> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
>> Signed-off-by: Lior Amsalem <alior@marvell.com>
>
> This driver seems to do all the right things now, good work.
>
>> +static void __iomem *system_controller_base;
>> +static void __iomem *reset_base;
>> +static unsigned long rstoutn_mask_reset_out_en;
>> +
>> +/* System controller registers */
>> +#define ARMADA_370_XP_RESET_OFFSET 0x60
>> +#define OTHER_MVEBU_RESET_OFFSET 0x108
>> +#define MVEBU_RSTOUTN_MASK_OFFSET 0x0
>> +#define OTHER_MVEBU_RSTOUTN_MASK_RESET_OUT_EN 0x4
>> +#define ARMADA_370_XP_RSTOUTN_MASK_RESET_OUT_EN 0x1
>> +#define MVEBU_SYSTEM_SOFT_RESET_OFFSET 0x4
>> +#define MVEBU_SYSTEM_SOFT_RESET 0x1
>> +
>> +#define OTHER_MVEBU_VARIANT 1
>> +#define ARMADA_370_XP_VARIANT 2
>
> I think this can be expressed nicer with pointers to data structures,
> like
>
> static void __iomem *system_controller_base;
>
> struct mvebu_system_controller {
> u32 rstoutn_mask_offset;
> u32 system_soft_reset_offset;
>
> u32 rstoutn_mask_reset_out_en;
> u32 system_soft_reset;
> };
>
> const struct mvebu_system_controller armada_370_xp_system_controller = {
> .rstoutn_mask_offset = 0x60,
> .system_soft_reset_offset = 0x64,
> .rstoutn_mask_reset_out_en = 0x1,
> .system_soft_reset = 0x1,
> };
>
> const struct mvebu_system_controller orion_system_controller = {
> .rstoutn_mask_offset = 0x108,
> .system_soft_reset_offset = 0x10c,
> .rstoutn_mask_reset_out_en = 0x4,
> .system_soft_reset = 0x1,
> };
>
> static struct of_device_id of_system_controller_table[] = {
> {.compatible = "marvell,orion-system-controller",
> .data = &orion,system_controller},
> {.compatible = "marvell,armada-370-xp-system-controller",
> .data = &armada_370_xp_system_controller,
> { /* end of list */ },
> };
OK I will make this improvements.
>
>> +void mvebu_restart(char mode, const char *cmd)
>> +{
>> + if (!system_controller_base) {
>> + pr_warn("Cannot restart, system-controller not available\n");
>> + return;
>> + }
>
> I guess returning here is a bug, you should just enter the endless
> loop.
You're right.
>
> Arnd
>
--
Gregory Clement, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
next prev parent reply other threads:[~2012-06-27 7:52 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-06-26 8:28 [PATCH v4] arm: Add basic support for new Marvell Armada 370 and Armada XP SoC Gregory Clement
2012-06-26 8:28 ` [PATCH v4 1/9] clocksource: time-armada-370-xp: Marvell Armada 370/XP SoC timer driver Gregory Clement
2012-06-26 8:28 ` [PATCH v4 2/9] arm: mach-mvebu: add header Gregory Clement
2012-06-26 8:28 ` [PATCH v4 3/9] arm: mach-mvebu: add source files Gregory Clement
2012-06-26 8:47 ` Andrew Lunn
2012-06-26 10:05 ` Gregory CLEMENT
2012-06-26 10:21 ` Andrew Lunn
2012-06-26 16:17 ` Arnd Bergmann
2012-06-27 7:52 ` Gregory CLEMENT [this message]
2012-06-27 9:02 ` Ben Dooks
2012-06-26 8:28 ` [PATCH v4 4/9] arm: mach-mvebu: add support for Armada 370 and Armada XP with DT Gregory Clement
2012-06-26 8:28 ` [PATCH v4 5/9] arm: mach-mvebu: add documentation for new device tree bindings Gregory Clement
2012-06-26 8:53 ` Andrew Lunn
2012-06-26 9:42 ` Gregory CLEMENT
2012-06-26 8:28 ` [PATCH v4 6/9] arm: mach-mvebu: add defconfig Gregory Clement
2012-06-26 8:28 ` [PATCH v4 7/9] arm: mach-mvebu: add compilation/configuration change Gregory Clement
2012-06-26 8:28 ` [PATCH v4 8/9] arm: mach-mvebu: add entry to MAINTAINERS Gregory Clement
2012-06-26 8:28 ` [PATCH v4 9/9] ARM: mvebu: MPIC: read number of interrupts from control register Gregory Clement
2012-06-27 8:57 ` [PATCH v4] arm: Add basic support for new Marvell Armada 370 and Armada XP SoC Ben Dooks
2012-06-27 9:03 ` Gregory CLEMENT
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=4FEABBB2.7040502@free-electrons.com \
--to=gregory.clement@free-electrons.com \
--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.