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$(echo .)com \
--cc=linux-arm-kernel@lists$(echo .)infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
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