Add Pine64 support
Get series with b4
b4 am [email protected]Versions newest first
- v1 Latest0 of 6 patches 0 repliesNew
Patches in v1 No applies recorded yet
None of the 6 patches the cover letter announces are in this archive.
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.
Cover letter [U-Boot] [PATCH 0/6] Add Pine64 support
Hi,
Quoted 100 lines · Hans de Goede
Hi,
Quoted 88 lines · Alexander Graf
Quoted 50 lines
Am 31.03.2016 um 20:53 schrieb Hans de Goede <[email protected]>:
Hi,
Quoted 37 lines · Alexander Graf
Quoted 12 lines · Hans de Goede
Hi,
Quoted 7 lines · Alexander Graf
The Pine64 is a kickstarter backed SBC that runs on the Allwinner A64 SoC.
This SoC can run AArch64 code, so this patch set lifts all arm version indepenent sunxi code into a mach directory and builds the A64 code as armv8 (aarch64) code.Quoted 6 lines
Quoted 2 lines
With these patches applied, I can successfully boot my 1GB Pine64+ board with an openSUSE EFI image.
Can you provide some quick instructions on how to test this ? Bonus point for a link to a boot0.bin which I can dd to a sdcard and use with a u-boot.bin build with these patches.
Sure. Grab these all the files in this directory:
http://csgraf.de/agraf/pine64Then do
$ gcc pine64_image.c -o pine64_image $ cat bl31.bin <u-boot-dir>/u-boot.bin > bl31uboot.bin $ ./pine64_image scp.bin bl31uboot.bin u-boot.img $ dd if=boot0.bin of=/dev/mmcblk0 seek=16 $ dd if=u-boot.img of=/dev/mmcblk0 seek=80That should give you a working system. The scp.bin and boot0.bin are from the Allwinner binary distribution. ATF (bl31.bin) is built from these sources:
Quoted 4 lines
https://build.opensuse.org/package/show/devel:ARM:Factory:Contrib:Pine64/firmware-pine64
Enjoy,
Thanks, works like a charm.
Quoted 8 lines
I've applied the entire series to my tree, except for "[PATCH 3/6] arm: Allow u32 as addrs for readX/writeX" instead I've added 2 extra casts to your
"[PATCH 4/6] sunxi: Explicitly cast u32 pointer conversions" patch, which is enough to build warning free for me.I still have some other patches to process, I'll send a pull-req tomorrow morning.
Thanks :)
Quoted 27 lines
Note I've squashed the following fixes into "[PATCH 5/6] sunxi: Add support for Allwinner A64 SoCs" :
arch/arm/include/asm/arch-sunxi/clock_sun6i.h +3
-3@@ -352,10 +352,10 @@ struct sunxi_ccm_reg {#if defined(CONFIG_MACH_SUN50I )#define MBUS_CLK_DEFAULT 0x81000002/* PLL6x2 / 3 */ -#elif !defined(CONFIG_MACH_SUN8I ) -#define MBUS_CLK_DEFAULT 0x81000001/* PLL6 / 2 */ -#else +#elif defined(CONFIG_MACH_SUN8I )#define MBUS_CLK_DEFAULT 0x81000003/* PLL6 / 4 */ +#else +#define MBUS_CLK_DEFAULT 0x81000001/* PLL6 / 2 */ #endif #define MBUS_CLK_GATE (0x1 << 31)arch/arm/include/asm/system.h +0
-0@@ -92,12 +92,6 @@ static inline unsigned long read_mpidr(void)#define BSP_COREID 0Quoted 8 lines
arch/arm/include/asm/system.h static inline unsigned long read_mpidr(void) · line 100
Quoted 6 lines
arch/arm/include/asm/system.h +0
-6-static inline void sdelay (unsigned long n) -{ -int i; -for (i =0 ; i < n; i++) asmvolatile ("" ); -} -How did you manage to build without sdelay? The sun6i clock code used it, no? Or is something there guarded with
CONFIG_SPL_BUILD?
Quoted 3 lines
The code in question is #ifdef
CONFIG_SPL_BUILDI guess we will need to fix this somehow when we get SPL support, I'm pretty sure the above is not the right solution.
p.s.
This patchset broke every other sunxi board! 2 very minor issues, already fixed up in my tree. I always build all sunxi builds before sending out a pull-req :)
Regards,
Hans