From: Andre Przywara <andre.przywara@linaro.org>
To: Julien Grall <julien.grall@linaro.org>
Cc: "xen-devel@lists.xen.org" <xen-devel@lists.xen.org>,
Ian Campbell <Ian.Campbell@citrix.com>,
Patch Tracking <patches@linaro.org>,
Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Subject: Re: [PATCH] ARM: add Calxeda Midway platform
Date: Wed, 14 Aug 2013 11:54:22 +0200 [thread overview]
Message-ID: <520B53CE.3090204@linaro.org> (raw)
In-Reply-To: <CAPnVf8y3Xnk0EFPqXoTDDOFL5XK8vjrc18CK0i8m0Xw2siMkqA@mail.gmail.com>
On 08/14/2013 11:44 AM, Julien Grall wrote:
> On 13 August 2013 16:13, Andre Przywara <andre.przywara@linaro.org> wrote:
>> Calxeda Midway is an ARMv7 server platform with Cortex-A15 cores.
>> The peripheral side has many similarities with the machine known as
>> Highbank.
>> Add Calxeda Midway to the list of supported platforms to avoid a
>> warning on boot and provide the proper reset method.
>
> Thanks for this patch. With the 2 others patches, are you able to boot
> further Xen on the board? :)
Well, I get to the point where it loads and starts Dom0. Then it breaks
with a Data Abort, will investigate this next.
If there are no other complaints, I will send a v2 with the fix for
below later today.
Regards,
Andre.
>>
>> Signed-off-by: Andre Przywara <andre.przywara@linaro.org>
>> ---
>> xen/arch/arm/platforms/Makefile | 1 +
>> xen/arch/arm/platforms/midway.c | 62 ++++++++++++++++++++++++++++++++++
>> xen/include/asm-arm/platforms/midway.h | 21 ++++++++++++
>> 3 files changed, 84 insertions(+)
>> create mode 100644 xen/arch/arm/platforms/midway.c
>> create mode 100644 xen/include/asm-arm/platforms/midway.h
>>
>> diff --git a/xen/arch/arm/platforms/Makefile b/xen/arch/arm/platforms/Makefile
>> index ff2b65b..6ee8e6a 100644
>> --- a/xen/arch/arm/platforms/Makefile
>> +++ b/xen/arch/arm/platforms/Makefile
>> @@ -1,2 +1,3 @@
>> obj-y += vexpress.o
>> obj-y += exynos5.o
>> +obj-y += midway.o
>> diff --git a/xen/arch/arm/platforms/midway.c b/xen/arch/arm/platforms/midway.c
>> new file mode 100644
>> index 0000000..2d3be1b
>> --- /dev/null
>> +++ b/xen/arch/arm/platforms/midway.c
>> @@ -0,0 +1,62 @@
>> +/*
>> + * xen/arch/arm/platforms/midway.c
>> + *
>> + * Calxeda Midway specific settings
>> + *
>> + * Andre Przywara <andre.przywara@linaro.org>
>> + * Copyright (c) 2013 Linaro Limited.
>> + *
>> + * This program is free software; you can redistribute it and/or modify
>> + * it under the terms of the GNU General Public License as published by
>> + * the Free Software Foundation; either version 2 of the License, or
>> + * (at your option) any later version.
>> + *
>> + * This program is distributed in the hope that it will be useful,
>> + * but WITHOUT ANY WARRANTY; without even the implied warranty of
>> + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
>> + * GNU General Public License for more details.
>> + */
>> +
>> +#include <xen/mm.h>
>> +#include <xen/vmap.h>
>> +#include <asm/platforms/midway.h>
>> +#include <asm/platform.h>
>> +
>> +static void midway_reset(void)
>> +{
>> + void __iomem *pmu;
>> +
>> + BUILD_BUG_ON((MW_SREG_PWR_REQ & PAGE_MASK) !=
>> + (MW_SREG_A15_PWR_CTRL & PAGE_MASK));
>> +
>> + pmu = ioremap_nocache(MW_SREG_PWR_REQ & PAGE_MASK, PAGE_SIZE);
>> + if ( !pmu )
>> + {
>> + dprintk(XENLOG_ERR, "Unable to map PMU\n");
>> + return;
>> + }
>> +
>> + iowritel(pmu + (MW_SREG_PWR_REQ & ~PAGE_MASK), MW_PWR_HARD_RESET);
>> + iowritel(pmu + (MW_SREG_A15_PWR_CTRL & ~PAGE_MASK), 1);
>> + iounmap(pmu);
>> +}
>> +
>> +static const char const *midway_dt_compat[] __initdata =
>
> const char * const. This is an error on the other platform code.
>
>> +{
>> + "calxeda,ecx-2000",
>> + NULL
>> +};
>> +
>> +PLATFORM_START(midway, "CALXEDA MIDWAY")
>> + .compatible = midway_dt_compat,
>> + .reset = midway_reset,
>> +PLATFORM_END
>> +
>> +/*
>> + * Local variables:
>> + * mode: C
>> + * c-file-style: "BSD"
>> + * c-basic-offset: 4
>> + * indent-tabs-mode: nil
>> + * End:
>> + */
>> diff --git a/xen/include/asm-arm/platforms/midway.h b/xen/include/asm-arm/platforms/midway.h
>> new file mode 100644
>> index 0000000..099e435
>> --- /dev/null
>> +++ b/xen/include/asm-arm/platforms/midway.h
>> @@ -0,0 +1,21 @@
>> +#ifndef __ASM_ARM_PLATFORMS_MIDWAY_H
>> +#define __ASM_ASM_PLATFORMS_MIDWAY_H
>> +
>> +/* addresses of SREG registers for resetting the SoC */
>> +#define MW_SREG_PWR_REQ 0xfff3cf00
>> +#define MW_SREG_A15_PWR_CTRL 0xfff3c200
>> +
>> +#define MW_PWR_SUSPEND 0
>> +#define MW_PWR_SOFT_RESET 1
>> +#define MW_PWR_HARD_RESET 2
>> +#define MW_PWR_SHUTDOWN 3
>> +
>> +#endif /* __ASM_ARM_PLATFORMS_MIDWAY_H */
>> +/*
>> + * Local variables:
>> + * mode: C
>> + * c-file-style: "BSD"
>> + * c-basic-offset: 4
>> + * indent-tabs-mode: nil
>> + * End:
>> + */
>
next prev parent reply other threads:[~2013-08-14 9:54 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-08-13 15:13 [PATCH] ARM: add Calxeda Midway platform Andre Przywara
2013-08-13 22:02 ` Ian Campbell
2013-08-14 9:33 ` Julien Grall
2013-08-15 14:52 ` Ian Campbell
2013-08-14 9:44 ` Julien Grall
2013-08-14 9:54 ` Andre Przywara [this message]
2013-08-20 15:03 ` Ian Campbell
2013-08-20 19:01 ` Julien Grall
2013-08-21 7:23 ` Ian Campbell
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=520B53CE.3090204@linaro.org \
--to=andre.przywara@linaro.org \
--cc=Ian.Campbell@citrix.com \
--cc=julien.grall@linaro.org \
--cc=patches@linaro.org \
--cc=stefano.stabellini@eu.citrix.com \
--cc=xen-devel@lists.xen.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).