Message ID | 1522592130-25157-1-git-send-email-matthew.weber@rockwellcollins.com |
---|---|
State | Changes Requested |
Headers | show |
Series | ppc64 e5500 arch: new qemu target | expand |
All, On Sun, Apr 1, 2018 at 9:15 AM, Matt Weber <matthew.weber@rockwellcollins.com> wrote: > Adding basic support modeled after the Freescale/NXP > T1040RDBD4 board. > > This target is used to support testing of the bootlin e5500 > toolchain. > > Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com> > --- > DEVELOPERS | 1 + > board/qemu/ppc64-e5500/linux.fragment | 2 ++ > board/qemu/ppc64-e5500/readme.txt | 7 +++++++ > configs/qemu_ppc64_e5500_defconfig | 18 ++++++++++++++++++ > 4 files changed, 28 insertions(+) > create mode 100644 board/qemu/ppc64-e5500/linux.fragment > create mode 100644 board/qemu/ppc64-e5500/readme.txt > create mode 100644 configs/qemu_ppc64_e5500_defconfig > > diff --git a/DEVELOPERS b/DEVELOPERS > index ac7a47f..dd7e389 100644 > --- a/DEVELOPERS > +++ b/DEVELOPERS > @@ -1165,6 +1165,7 @@ F: package/ts4900-fpga/ > N: Matt Weber <matthew.weber@rockwellcollins.com> > F: board/freescale/p* > F: board/freescale/t* > +F: board/qemu/ppc64-e5500/ > F: configs/freescale_p* > F: configs/freescale_t* Just noticed I should have added myself to configs/qemu_ppc64_e5500_defconfig > F: package/argp-standalone/ > diff --git a/board/qemu/ppc64-e5500/linux.fragment b/board/qemu/ppc64-e5500/linux.fragment > new file mode 100644 > index 0000000..81993d2 > --- /dev/null > +++ b/board/qemu/ppc64-e5500/linux.fragment > @@ -0,0 +1,2 @@ > +# Enables generic e500 arch support for QEMU > +CONFIG_PPC_QEMU_E500=y > diff --git a/board/qemu/ppc64-e5500/readme.txt b/board/qemu/ppc64-e5500/readme.txt > new file mode 100644 > index 0000000..8da23f9 > --- /dev/null > +++ b/board/qemu/ppc64-e5500/readme.txt > @@ -0,0 +1,7 @@ > +Run the emulation with: > + > + qemu-system-ppc64 -M ppce500 -cpu e5500 -m 256 -kernel output/images/uImage -append 'console=ttyS0 root=/dev/ram' -initrd output/images/rootfs.cpio.gz -serial mon:stdio -nographic > + This arch seems like it had good support back to QEMU 2.0.0. However, I'll be submitting a bootlin e6500 arch variant toolchain but I'm still working out what version of QEMU can even boot that arch. As of 2.11.x support hasn't been merged. (Working on pull request for e5500 testing in the toolchain-builder repo now) Matt
Hello, On Sun, 1 Apr 2018 09:25:47 -0500, Matthew Weber wrote: > > diff --git a/board/qemu/ppc64-e5500/linux.fragment b/board/qemu/ppc64-e5500/linux.fragment > > new file mode 100644 > > index 0000000..81993d2 > > --- /dev/null > > +++ b/board/qemu/ppc64-e5500/linux.fragment > > @@ -0,0 +1,2 @@ > > +# Enables generic e500 arch support for QEMU > > +CONFIG_PPC_QEMU_E500=y > > diff --git a/board/qemu/ppc64-e5500/readme.txt b/board/qemu/ppc64-e5500/readme.txt > > new file mode 100644 > > index 0000000..8da23f9 > > --- /dev/null > > +++ b/board/qemu/ppc64-e5500/readme.txt > > @@ -0,0 +1,7 @@ > > +Run the emulation with: > > + > > + qemu-system-ppc64 -M ppce500 -cpu e5500 -m 256 -kernel output/images/uImage -append 'console=ttyS0 root=/dev/ram' -initrd output/images/rootfs.cpio.gz -serial mon:stdio -nographic > > + > > This arch seems like it had good support back to QEMU 2.0.0. However, > I'll be submitting a bootlin e6500 arch variant toolchain but I'm > still working out what version of QEMU can even boot that arch. As of > 2.11.x support hasn't been merged. I don't get it. In the same paragraph you say "it had good support back to Qemu 2.0.0" and "as of 2.11.x support hasn't been merged". Could you clarify ? Best regards, Thomas
Hello, Commit title should be: configs/qemu_ppc64_e5500: new defconfig On Sun, 1 Apr 2018 09:15:30 -0500, Matt Weber wrote: > diff --git a/DEVELOPERS b/DEVELOPERS > index ac7a47f..dd7e389 100644 > --- a/DEVELOPERS > +++ b/DEVELOPERS > @@ -1165,6 +1165,7 @@ F: package/ts4900-fpga/ > N: Matt Weber <matthew.weber@rockwellcollins.com> > F: board/freescale/p* > F: board/freescale/t* > +F: board/qemu/ppc64-e5500/ > F: configs/freescale_p* > F: configs/freescale_t* As you mentioned, missing entry for the defconfig file itself. > F: package/argp-standalone/ > diff --git a/board/qemu/ppc64-e5500/linux.fragment b/board/qemu/ppc64-e5500/linux.fragment > new file mode 100644 > index 0000000..81993d2 > --- /dev/null > +++ b/board/qemu/ppc64-e5500/linux.fragment > @@ -0,0 +1,2 @@ > +# Enables generic e500 arch support for QEMU > +CONFIG_PPC_QEMU_E500=y E500, while it's E5500 ? > diff --git a/configs/qemu_ppc64_e5500_defconfig b/configs/qemu_ppc64_e5500_defconfig > new file mode 100644 > index 0000000..55c5644 > --- /dev/null > +++ b/configs/qemu_ppc64_e5500_defconfig > @@ -0,0 +1,18 @@ > +# Architecture > +BR2_powerpc64=y > +BR2_powerpc_e5500=y You need an option here to specify the version of the kernel headers being used. > + > +# Serial port config > +BR2_TARGET_GENERIC_GETTY_PORT="ttyS0" > + > +# Kernel > +BR2_LINUX_KERNEL=y > +BR2_LINUX_KERNEL_CUSTOM_VERSION=y > +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.15.7" > +BR2_LINUX_KERNEL_DEFCONFIG="corenet64_smp" > +BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/qemu/ppc64-e5500/linux.fragment" > + > +# Filesystem > +BR2_TARGET_ROOTFS_CPIO=y > +BR2_TARGET_ROOTFS_CPIO_GZIP=y The Qemu emulation doesn't support emulating some hard drive, to use a more regular ext4 setup ? Thanks! Thomas
Thomas, On Sun, Apr 1, 2018 at 9:39 AM, Thomas Petazzoni <thomas.petazzoni@bootlin.com> wrote: > Hello, > > On Sun, 1 Apr 2018 09:25:47 -0500, Matthew Weber wrote: > >> > diff --git a/board/qemu/ppc64-e5500/linux.fragment b/board/qemu/ppc64-e5500/linux.fragment >> > new file mode 100644 >> > index 0000000..81993d2 >> > --- /dev/null >> > +++ b/board/qemu/ppc64-e5500/linux.fragment >> > @@ -0,0 +1,2 @@ >> > +# Enables generic e500 arch support for QEMU >> > +CONFIG_PPC_QEMU_E500=y >> > diff --git a/board/qemu/ppc64-e5500/readme.txt b/board/qemu/ppc64-e5500/readme.txt >> > new file mode 100644 >> > index 0000000..8da23f9 >> > --- /dev/null >> > +++ b/board/qemu/ppc64-e5500/readme.txt >> > @@ -0,0 +1,7 @@ >> > +Run the emulation with: >> > + >> > + qemu-system-ppc64 -M ppce500 -cpu e5500 -m 256 -kernel output/images/uImage -append 'console=ttyS0 root=/dev/ram' -initrd output/images/rootfs.cpio.gz -serial mon:stdio -nographic >> > + >> >> This arch seems like it had good support back to QEMU 2.0.0. However, >> I'll be submitting a bootlin e6500 arch variant toolchain but I'm >> still working out what version of QEMU can even boot that arch. As of >> 2.11.x support hasn't been merged. > > I don't get it. In the same paragraph you say "it had good support back > to Qemu 2.0.0" and "as of 2.11.x support hasn't been merged". > The e5500 has good support in 2.0.0 but I've been looking at adding a new e6500 which does not. Matt
Thomas, On Sun, Apr 1, 2018 at 9:40 AM, Thomas Petazzoni <thomas.petazzoni@bootlin.com> wrote: > Hello, > > Commit title should be: > > configs/qemu_ppc64_e5500: new defconfig > > On Sun, 1 Apr 2018 09:15:30 -0500, Matt Weber wrote: > >> diff --git a/DEVELOPERS b/DEVELOPERS >> index ac7a47f..dd7e389 100644 >> --- a/DEVELOPERS >> +++ b/DEVELOPERS >> @@ -1165,6 +1165,7 @@ F: package/ts4900-fpga/ >> N: Matt Weber <matthew.weber@rockwellcollins.com> >> F: board/freescale/p* >> F: board/freescale/t* >> +F: board/qemu/ppc64-e5500/ >> F: configs/freescale_p* >> F: configs/freescale_t* > > As you mentioned, missing entry for the defconfig file itself. Yep. > >> F: package/argp-standalone/ >> diff --git a/board/qemu/ppc64-e5500/linux.fragment b/board/qemu/ppc64-e5500/linux.fragment >> new file mode 100644 >> index 0000000..81993d2 >> --- /dev/null >> +++ b/board/qemu/ppc64-e5500/linux.fragment >> @@ -0,0 +1,2 @@ >> +# Enables generic e500 arch support for QEMU >> +CONFIG_PPC_QEMU_E500=y > > E500, while it's E5500 ? e5500 is a variant of e500 base architecture. I can add to my comment to express that. > >> diff --git a/configs/qemu_ppc64_e5500_defconfig b/configs/qemu_ppc64_e5500_defconfig >> new file mode 100644 >> index 0000000..55c5644 >> --- /dev/null >> +++ b/configs/qemu_ppc64_e5500_defconfig >> @@ -0,0 +1,18 @@ >> +# Architecture >> +BR2_powerpc64=y >> +BR2_powerpc_e5500=y > > You need an option here to specify the version of the kernel headers > being used. Ok. > >> + >> +# Serial port config >> +BR2_TARGET_GENERIC_GETTY_PORT="ttyS0" >> + >> +# Kernel >> +BR2_LINUX_KERNEL=y >> +BR2_LINUX_KERNEL_CUSTOM_VERSION=y >> +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.15.7" >> +BR2_LINUX_KERNEL_DEFCONFIG="corenet64_smp" >> +BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/qemu/ppc64-e5500/linux.fragment" >> + >> +# Filesystem >> +BR2_TARGET_ROOTFS_CPIO=y >> +BR2_TARGET_ROOTFS_CPIO_GZIP=y > > The Qemu emulation doesn't support emulating some hard drive, to use a > more regular ext4 setup ? I debated on this. I'll have to add more support to the kernel fragment to enable the options so I can mount it. I'm good either way. Matt
diff --git a/DEVELOPERS b/DEVELOPERS index ac7a47f..dd7e389 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -1165,6 +1165,7 @@ F: package/ts4900-fpga/ N: Matt Weber <matthew.weber@rockwellcollins.com> F: board/freescale/p* F: board/freescale/t* +F: board/qemu/ppc64-e5500/ F: configs/freescale_p* F: configs/freescale_t* F: package/argp-standalone/ diff --git a/board/qemu/ppc64-e5500/linux.fragment b/board/qemu/ppc64-e5500/linux.fragment new file mode 100644 index 0000000..81993d2 --- /dev/null +++ b/board/qemu/ppc64-e5500/linux.fragment @@ -0,0 +1,2 @@ +# Enables generic e500 arch support for QEMU +CONFIG_PPC_QEMU_E500=y diff --git a/board/qemu/ppc64-e5500/readme.txt b/board/qemu/ppc64-e5500/readme.txt new file mode 100644 index 0000000..8da23f9 --- /dev/null +++ b/board/qemu/ppc64-e5500/readme.txt @@ -0,0 +1,7 @@ +Run the emulation with: + + qemu-system-ppc64 -M ppce500 -cpu e5500 -m 256 -kernel output/images/uImage -append 'console=ttyS0 root=/dev/ram' -initrd output/images/rootfs.cpio.gz -serial mon:stdio -nographic + +The login prompt will appear in the terminal that started Qemu. + +Tested with QEMU 2.0.0 diff --git a/configs/qemu_ppc64_e5500_defconfig b/configs/qemu_ppc64_e5500_defconfig new file mode 100644 index 0000000..55c5644 --- /dev/null +++ b/configs/qemu_ppc64_e5500_defconfig @@ -0,0 +1,18 @@ +# Architecture +BR2_powerpc64=y +BR2_powerpc_e5500=y + +# Serial port config +BR2_TARGET_GENERIC_GETTY_PORT="ttyS0" + +# Kernel +BR2_LINUX_KERNEL=y +BR2_LINUX_KERNEL_CUSTOM_VERSION=y +BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.15.7" +BR2_LINUX_KERNEL_DEFCONFIG="corenet64_smp" +BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/qemu/ppc64-e5500/linux.fragment" + +# Filesystem +BR2_TARGET_ROOTFS_CPIO=y +BR2_TARGET_ROOTFS_CPIO_GZIP=y +# BR2_TARGET_ROOTFS_TAR is not set
Adding basic support modeled after the Freescale/NXP T1040RDBD4 board. This target is used to support testing of the bootlin e5500 toolchain. Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com> --- DEVELOPERS | 1 + board/qemu/ppc64-e5500/linux.fragment | 2 ++ board/qemu/ppc64-e5500/readme.txt | 7 +++++++ configs/qemu_ppc64_e5500_defconfig | 18 ++++++++++++++++++ 4 files changed, 28 insertions(+) create mode 100644 board/qemu/ppc64-e5500/linux.fragment create mode 100644 board/qemu/ppc64-e5500/readme.txt create mode 100644 configs/qemu_ppc64_e5500_defconfig