diff mbox

ARM: enable ARMv7 virt support for the Arndale board

Message ID 1406892944-4390-1-git-send-email-christoffer.dall@linaro.org
State New
Headers show

Commit Message

Christoffer Dall Aug. 1, 2014, 11:35 a.m. UTC
From: Andre Przywara <andre.przywara@linaro.org>

To enable hypervisors utilizing the ARMv7 virtualization extension
on the Arndale board, add the simple SMP pen address writer function
and add the required configuration variables to switch all cores to
HYP mode before launching the OS.
This allows booting KVM and Xen directly from u-boot.

Reviewed-by: Christoffer Dall <christoffer.dall@linaro.org>
Signed-off-by: Andre Przywara <andre.przywara@linaro.org>
---

Note that Andre previously reported a board reset on initial boot with
this patch, but I have applied this patch on upstream master of U-Boot
and tested on two separate Arndale boards and it boots perfectly fine
and lets you use KVM, so I recommend taking this patch as is.

 board/samsung/arndale/arndale.c | 10 ++++++++++
 include/configs/arndale.h       |  8 ++++++++
 2 files changed, 18 insertions(+)

Comments

Andreas Färber Aug. 1, 2014, 12:46 p.m. UTC | #1
Hi,

Am 01.08.2014 13:35, schrieb Christoffer Dall:
> From: Andre Przywara <andre.przywara@linaro.org>
> 
> To enable hypervisors utilizing the ARMv7 virtualization extension
> on the Arndale board, add the simple SMP pen address writer function
> and add the required configuration variables to switch all cores to
> HYP mode before launching the OS.
> This allows booting KVM and Xen directly from u-boot.
> 
> Reviewed-by: Christoffer Dall <christoffer.dall@linaro.org>
> Signed-off-by: Andre Przywara <andre.przywara@linaro.org>

You forgot to sign off the patch.

But nice to see progress on this!

Cheers,
Andreas
Christoffer Dall Aug. 1, 2014, 12:53 p.m. UTC | #2
On 1 August 2014 14:46, Andreas Färber <afaerber@suse.de> wrote:
> Hi,
>
> Am 01.08.2014 13:35, schrieb Christoffer Dall:
>> From: Andre Przywara <andre.przywara@linaro.org>
>>
>> To enable hypervisors utilizing the ARMv7 virtualization extension
>> on the Arndale board, add the simple SMP pen address writer function
>> and add the required configuration variables to switch all cores to
>> HYP mode before launching the OS.
>> This allows booting KVM and Xen directly from u-boot.
>>
>> Reviewed-by: Christoffer Dall <christoffer.dall@linaro.org>
>> Signed-off-by: Andre Przywara <andre.przywara@linaro.org>
>
> You forgot to sign off the patch.
>
> But nice to see progress on this!
>
Can you just add when applying the patch?

Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
Andre Przywara Aug. 1, 2014, 12:59 p.m. UTC | #3
On 01/08/14 13:53, Christoffer Dall wrote:
> On 1 August 2014 14:46, Andreas Färber <afaerber@suse.de> wrote:
>> Hi,
>>
>> Am 01.08.2014 13:35, schrieb Christoffer Dall:
>>> From: Andre Przywara <andre.przywara@linaro.org>
>>>
>>> To enable hypervisors utilizing the ARMv7 virtualization extension
>>> on the Arndale board, add the simple SMP pen address writer function
>>> and add the required configuration variables to switch all cores to
>>> HYP mode before launching the OS.
>>> This allows booting KVM and Xen directly from u-boot.
>>>
>>> Reviewed-by: Christoffer Dall <christoffer.dall@linaro.org>
>>> Signed-off-by: Andre Przywara <andre.przywara@linaro.org>
>>
>> You forgot to sign off the patch.
>>
>> But nice to see progress on this!
>>
> Can you just add when applying the patch?
> 
> Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>

Andreas,

I wonder if you could change (or add) my new address, as my Linaro
address does not work any more (just tested).

Signed-off-by: Andre Przywara <andre.przywara@arm.com>

Christoffer,
thanks for taking care of this!

Cheers,
Andre.
Christoffer Dall Aug. 1, 2014, 1:02 p.m. UTC | #4
On 1 August 2014 14:59, Andre Przywara <andre.przywara@arm.com> wrote:
>
>
> On 01/08/14 13:53, Christoffer Dall wrote:
>> On 1 August 2014 14:46, Andreas Färber <afaerber@suse.de> wrote:
>>> Hi,
>>>
>>> Am 01.08.2014 13:35, schrieb Christoffer Dall:
>>>> From: Andre Przywara <andre.przywara@linaro.org>
>>>>
>>>> To enable hypervisors utilizing the ARMv7 virtualization extension
>>>> on the Arndale board, add the simple SMP pen address writer function
>>>> and add the required configuration variables to switch all cores to
>>>> HYP mode before launching the OS.
>>>> This allows booting KVM and Xen directly from u-boot.
>>>>
>>>> Reviewed-by: Christoffer Dall <christoffer.dall@linaro.org>
>>>> Signed-off-by: Andre Przywara <andre.przywara@linaro.org>
>>>
>>> You forgot to sign off the patch.
>>>
>>> But nice to see progress on this!
>>>
>> Can you just add when applying the patch?
>>
>> Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
>
> Andreas,
>
> I wonder if you could change (or add) my new address, as my Linaro
> address does not work any more (just tested).
>
> Signed-off-by: Andre Przywara <andre.przywara@arm.com>
>
So I actually did not know the policy here, given that you did the
work under your linaro.org address, so I decided to keep this as they
were and just cc your arm address. If you're fine with using the
@arm.com address I can respin the patch with the right addresses and
signed-off-by's.

-Christoffer
Andre Przywara Aug. 1, 2014, 1:29 p.m. UTC | #5
On 01/08/14 14:02, Christoffer Dall wrote:
> On 1 August 2014 14:59, Andre Przywara <andre.przywara@arm.com> wrote:
>>
>>
>> On 01/08/14 13:53, Christoffer Dall wrote:
>>> On 1 August 2014 14:46, Andreas Färber <afaerber@suse.de> wrote:
>>>> Hi,
>>>>
>>>> Am 01.08.2014 13:35, schrieb Christoffer Dall:
>>>>> From: Andre Przywara <andre.przywara@linaro.org>
>>>>>
>>>>> To enable hypervisors utilizing the ARMv7 virtualization extension
>>>>> on the Arndale board, add the simple SMP pen address writer function
>>>>> and add the required configuration variables to switch all cores to
>>>>> HYP mode before launching the OS.
>>>>> This allows booting KVM and Xen directly from u-boot.
>>>>>
>>>>> Reviewed-by: Christoffer Dall <christoffer.dall@linaro.org>
>>>>> Signed-off-by: Andre Przywara <andre.przywara@linaro.org>
>>>>
>>>> You forgot to sign off the patch.
>>>>
>>>> But nice to see progress on this!
>>>>
>>> Can you just add when applying the patch?
>>>
>>> Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
>>
>> Andreas,
>>
>> I wonder if you could change (or add) my new address, as my Linaro
>> address does not work any more (just tested).
>>
>> Signed-off-by: Andre Przywara <andre.przywara@arm.com>
>>
> So I actually did not know the policy here, given that you did the
> work under your linaro.org address, so I decided to keep this as they
> were and just cc your arm address. If you're fine with using the
> @arm.com address I can respin the patch with the right addresses and
> signed-off-by's.

I don't know about the policy either - actually I hoped you could help
here ;-) I am perfectly fine with giving Linaro as a sponsor credit for
this, but I am just concerned about potential feedback, which would
bounce and at best annoy people. As long as a post goes to a list also I
catch it, but private only email would be stuck.
This said I am fine both ways - maybe we keep both addresses for
reference in?

Andreas,
could you just add Christoffer's Signed-off-by and my Signed-off-by
@arm.com without a respin?

Regards,
Andre.
Christoffer Dall Aug. 1, 2014, 1:37 p.m. UTC | #6
On 1 August 2014 15:29, Andre Przywara <andre.przywara@arm.com> wrote:
>
>
> On 01/08/14 14:02, Christoffer Dall wrote:
>> On 1 August 2014 14:59, Andre Przywara <andre.przywara@arm.com> wrote:
>>>
>>>
>>> On 01/08/14 13:53, Christoffer Dall wrote:
>>>> On 1 August 2014 14:46, Andreas Färber <afaerber@suse.de> wrote:
>>>>> Hi,
>>>>>
>>>>> Am 01.08.2014 13:35, schrieb Christoffer Dall:
>>>>>> From: Andre Przywara <andre.przywara@linaro.org>
>>>>>>
>>>>>> To enable hypervisors utilizing the ARMv7 virtualization extension
>>>>>> on the Arndale board, add the simple SMP pen address writer function
>>>>>> and add the required configuration variables to switch all cores to
>>>>>> HYP mode before launching the OS.
>>>>>> This allows booting KVM and Xen directly from u-boot.
>>>>>>
>>>>>> Reviewed-by: Christoffer Dall <christoffer.dall@linaro.org>
>>>>>> Signed-off-by: Andre Przywara <andre.przywara@linaro.org>
>>>>>
>>>>> You forgot to sign off the patch.
>>>>>
>>>>> But nice to see progress on this!
>>>>>
>>>> Can you just add when applying the patch?
>>>>
>>>> Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
>>>
>>> Andreas,
>>>
>>> I wonder if you could change (or add) my new address, as my Linaro
>>> address does not work any more (just tested).
>>>
>>> Signed-off-by: Andre Przywara <andre.przywara@arm.com>
>>>
>> So I actually did not know the policy here, given that you did the
>> work under your linaro.org address, so I decided to keep this as they
>> were and just cc your arm address. If you're fine with using the
>> @arm.com address I can respin the patch with the right addresses and
>> signed-off-by's.
>
> I don't know about the policy either - actually I hoped you could help
> here ;-) I am perfectly fine with giving Linaro as a sponsor credit for
> this, but I am just concerned about potential feedback, which would
> bounce and at best annoy people. As long as a post goes to a list also I
> catch it, but private only email would be stuck.
> This said I am fine both ways - maybe we keep both addresses for
> reference in?
>
> Andreas,
> could you just add Christoffer's Signed-off-by and my Signed-off-by
> @arm.com without a respin?
>
Andreas pointed out that he's not the maintainer, so let's see what
the maintainer says :)

all this policy stuff seems to be bikeshedding anyhow.

-Christoffer
Andreas Färber Aug. 1, 2014, 1:39 p.m. UTC | #7
Am 01.08.2014 15:29, schrieb Andre Przywara:
> On 01/08/14 14:02, Christoffer Dall wrote:
>> On 1 August 2014 14:59, Andre Przywara <andre.przywara@arm.com> wrote:
>>> On 01/08/14 13:53, Christoffer Dall wrote:
>>>> On 1 August 2014 14:46, Andreas Färber <afaerber@suse.de> wrote:
>>>>> Hi,
>>>>>
>>>>> Am 01.08.2014 13:35, schrieb Christoffer Dall:
>>>>>> From: Andre Przywara <andre.przywara@linaro.org>
>>>>>>
>>>>>> To enable hypervisors utilizing the ARMv7 virtualization extension
>>>>>> on the Arndale board, add the simple SMP pen address writer function
>>>>>> and add the required configuration variables to switch all cores to
>>>>>> HYP mode before launching the OS.
>>>>>> This allows booting KVM and Xen directly from u-boot.
>>>>>>
>>>>>> Reviewed-by: Christoffer Dall <christoffer.dall@linaro.org>
>>>>>> Signed-off-by: Andre Przywara <andre.przywara@linaro.org>
>>>>>
>>>>> You forgot to sign off the patch.
>>>>>
>>>>> But nice to see progress on this!
>>>>>
>>>> Can you just add when applying the patch?
>>>>
>>>> Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
>>>
>>> Andreas,
>>>
>>> I wonder if you could change (or add) my new address, as my Linaro
>>> address does not work any more (just tested).
>>>
>>> Signed-off-by: Andre Przywara <andre.przywara@arm.com>
>>>
>> So I actually did not know the policy here, given that you did the
>> work under your linaro.org address, so I decided to keep this as they
>> were and just cc your arm address. If you're fine with using the
>> @arm.com address I can respin the patch with the right addresses and
>> signed-off-by's.
> 
> I don't know about the policy either - actually I hoped you could help
> here ;-) I am perfectly fine with giving Linaro as a sponsor credit for
> this, but I am just concerned about potential feedback, which would
> bounce and at best annoy people. As long as a post goes to a list also I
> catch it, but private only email would be stuck.
> This said I am fine both ways - maybe we keep both addresses for
> reference in?
> 
> Andreas,
> could you just add Christoffer's Signed-off-by and my Signed-off-by
> @arm.com without a respin?

Guys, I just reacted to this patch because I spotted "virt" and we have
a small farm of Arndale boards for OBS.

Please take a look at http://www.denx.de/wiki/U-Boot/Custodians, which
lists Albert for ARM and Minkyu for Samsung (CC'ed).

Regards,
Andreas
Tom Rini Aug. 30, 2014, 3:14 p.m. UTC | #8
On Fri, Aug 01, 2014 at 01:35:44PM +0200, Christoffer Dall wrote:

> From: Andre Przywara <andre.przywara@linaro.org>
> 
> To enable hypervisors utilizing the ARMv7 virtualization extension
> on the Arndale board, add the simple SMP pen address writer function
> and add the required configuration variables to switch all cores to
> HYP mode before launching the OS.
> This allows booting KVM and Xen directly from u-boot.
> 
> Reviewed-by: Christoffer Dall <christoffer.dall@linaro.org>
> Signed-off-by: Andre Przywara <andre.przywara@linaro.org>
> Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
> Signed-off-by: Andre Przywara <andre.przywara@arm.com>

Applied to u-boot/master, thanks!
diff mbox

Patch

diff --git a/board/samsung/arndale/arndale.c b/board/samsung/arndale/arndale.c
index ef88314..83fd3bd 100644
--- a/board/samsung/arndale/arndale.c
+++ b/board/samsung/arndale/arndale.c
@@ -117,3 +117,13 @@  int checkboard(void)
 	return 0;
 }
 #endif
+
+#ifdef CONFIG_S5P_PA_SYSRAM
+void smp_set_core_boot_addr(unsigned long addr, int corenr)
+{
+	writel(addr, CONFIG_S5P_PA_SYSRAM);
+
+	/* make sure this write is really executed */
+	__asm__ volatile ("dsb\n");
+}
+#endif
diff --git a/include/configs/arndale.h b/include/configs/arndale.h
index 64b54ab..75f9933 100644
--- a/include/configs/arndale.h
+++ b/include/configs/arndale.h
@@ -250,4 +250,12 @@ 
 /* Enable Time Command */
 #define CONFIG_CMD_TIME
 
+#define CONFIG_S5P_PA_SYSRAM	0x02020000
+#define CONFIG_SMP_PEN_ADDR	CONFIG_S5P_PA_SYSRAM
+
+/* The PERIPHBASE in the CBAR register is wrong on the Arndale, so override it */
+#define CONFIG_ARM_GIC_BASE_ADDRESS	0x10480000
+
+#define CONFIG_ARMV7_VIRT
+
 #endif	/* __CONFIG_H */