[v3] board: Add PowerPC mac99
diff mbox series

Message ID 20190625012652.21853-1-joel@jms.id.au
State Accepted
Commit a8fac3fcfc2c71c8a30d28c3d2e74646490502c2
Headers show
Series
  • [v3] board: Add PowerPC mac99
Related show

Commit Message

Joel Stanley June 25, 2019, 1:26 a.m. UTC
PowerPC kernel developers were after a userspace for testing 32-bit
powerpc kernels. This machine both suits that requirement and has
support in qemu. It's also a fairly common piece of 32-bit ppc hardware.

Signed-off-by: Joel Stanley <joel@jms.id.au>
Tested-by: Daniel Axtens <dja@axtens.net>
---
v3: Add ROOTFS_CPIO output as well as ext
v2: Use default output directory for qemu command line in readme

 DEVELOPERS                          |  2 ++
 board/qemu/ppc-mac99/linux.fragment |  3 +++
 board/qemu/ppc-mac99/readme.txt     |  5 +++++
 configs/qemu_ppc_mac99_defconfig    | 11 +++++++++++
 4 files changed, 21 insertions(+)
 create mode 100644 board/qemu/ppc-mac99/linux.fragment
 create mode 100644 board/qemu/ppc-mac99/readme.txt
 create mode 100644 configs/qemu_ppc_mac99_defconfig

Comments

Joel Stanley July 18, 2019, 6:41 a.m. UTC | #1
On Tue, 25 Jun 2019 at 01:26, Joel Stanley <joel@jms.id.au> wrote:
>
> PowerPC kernel developers were after a userspace for testing 32-bit
> powerpc kernels. This machine both suits that requirement and has
> support in qemu. It's also a fairly common piece of 32-bit ppc hardware.
>
> Signed-off-by: Joel Stanley <joel@jms.id.au>
> Tested-by: Daniel Axtens <dja@axtens.net>

Ping

> ---
> v3: Add ROOTFS_CPIO output as well as ext
> v2: Use default output directory for qemu command line in readme
>
>  DEVELOPERS                          |  2 ++
>  board/qemu/ppc-mac99/linux.fragment |  3 +++
>  board/qemu/ppc-mac99/readme.txt     |  5 +++++
>  configs/qemu_ppc_mac99_defconfig    | 11 +++++++++++
>  4 files changed, 21 insertions(+)
>  create mode 100644 board/qemu/ppc-mac99/linux.fragment
>  create mode 100644 board/qemu/ppc-mac99/readme.txt
>  create mode 100644 configs/qemu_ppc_mac99_defconfig
>
> diff --git a/DEVELOPERS b/DEVELOPERS
> index ce3fcb2de8c1..29a560f4a398 100644
> --- a/DEVELOPERS
> +++ b/DEVELOPERS
> @@ -1147,6 +1147,8 @@ N:        Joel Stanley <joel@jms.id.au>
>  F:     package/pdbg/
>  F:     board/qemu/ppc64le-pseries/
>  F:     configs/qemu_ppc64le_pseries_defconfig
> +F:     board/qemu/ppc-mac99/
> +F:     configs/qemu_ppc_mac99_defconfig
>
>  N:     Johan Derycke <johanderycke@gmail.com>
>  F:     package/python-libconfig/
> diff --git a/board/qemu/ppc-mac99/linux.fragment b/board/qemu/ppc-mac99/linux.fragment
> new file mode 100644
> index 000000000000..b1975f8253f7
> --- /dev/null
> +++ b/board/qemu/ppc-mac99/linux.fragment
> @@ -0,0 +1,3 @@
> +CONFIG_SERIAL_PMACZILOG=y
> +CONFIG_SERIAL_PMACZILOG_TTYS=y
> +CONFIG_SERIAL_PMACZILOG_CONSOLE=y
> diff --git a/board/qemu/ppc-mac99/readme.txt b/board/qemu/ppc-mac99/readme.txt
> new file mode 100644
> index 000000000000..a8a18db5b9ab
> --- /dev/null
> +++ b/board/qemu/ppc-mac99/readme.txt
> @@ -0,0 +1,5 @@
> +Run the emulation with:
> +
> +  qemu-system-ppc -nographic -vga none -M mac99 -cpu g4 -m 1G -kernel output/images/vmlinux -drive file=output/images/rootfs.ext2,format=raw -net nic,model=sungem -net user -append "root=/dev/sda"
> +
> +Tested with QEMU 3.1.0
> diff --git a/configs/qemu_ppc_mac99_defconfig b/configs/qemu_ppc_mac99_defconfig
> new file mode 100644
> index 000000000000..7a6a279c5399
> --- /dev/null
> +++ b/configs/qemu_ppc_mac99_defconfig
> @@ -0,0 +1,11 @@
> +BR2_powerpc=y
> +BR2_powerpc_7400=y
> +BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"
> +BR2_SYSTEM_DHCP="eth0"
> +BR2_LINUX_KERNEL=y
> +BR2_LINUX_KERNEL_DEFCONFIG="pmac32"
> +BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/qemu/ppc-mac99/linux.fragment"
> +BR2_LINUX_KERNEL_VMLINUX=y
> +BR2_TARGET_ROOTFS_CPIO=y
> +BR2_TARGET_ROOTFS_EXT2=y
> +# BR2_TARGET_ROOTFS_TAR is not set
> --
> 2.20.1
>
Peter Korsgaard Aug. 1, 2019, 3:54 p.m. UTC | #2
>>>>> "Joel" == Joel Stanley <joel@jms.id.au> writes:

 > PowerPC kernel developers were after a userspace for testing 32-bit
 > powerpc kernels. This machine both suits that requirement and has
 > support in qemu. It's also a fairly common piece of 32-bit ppc hardware.

 > Signed-off-by: Joel Stanley <joel@jms.id.au>
 > Tested-by: Daniel Axtens <dja@axtens.net>
 > ---
 > v3: Add ROOTFS_CPIO output as well as ext
 > v2: Use default output directory for qemu command line in readme

 > +++ b/configs/qemu_ppc_mac99_defconfig
 > @@ -0,0 +1,11 @@
 > +BR2_powerpc=y
 > +BR2_powerpc_7400=y
 > +BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"
 > +BR2_SYSTEM_DHCP="eth0"
 > +BR2_LINUX_KERNEL=y
 > +BR2_LINUX_KERNEL_DEFCONFIG="pmac32"
 > +BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/qemu/ppc-mac99/linux.fragment"
 > +BR2_LINUX_KERNEL_VMLINUX=y

You forgot to specify the version of the Linux kernel /
kernel-headers. Committed with those set to 5.2.4, thanks.

With that said, we now have 4 32bit ppc qemu defconfigs which sounds
like a lot to me. Are they all still interesting / useful?

cd configs && ls qemu_ppc_*
qemu_ppc_g3beige_defconfig
qemu_ppc_mac99_defconfig
qemu_ppc_mpc8544ds_defconfig
qemu_ppc_virtex_ml507_defconfig
Joel Stanley Aug. 2, 2019, 6:42 a.m. UTC | #3
On Thu, 1 Aug 2019 at 15:54, Peter Korsgaard <peter@korsgaard.com> wrote:
>
> >>>>> "Joel" == Joel Stanley <joel@jms.id.au> writes:
>
>  > PowerPC kernel developers were after a userspace for testing 32-bit
>  > powerpc kernels. This machine both suits that requirement and has
>  > support in qemu. It's also a fairly common piece of 32-bit ppc hardware.
>
>  > Signed-off-by: Joel Stanley <joel@jms.id.au>
>  > Tested-by: Daniel Axtens <dja@axtens.net>
>  > ---
>  > v3: Add ROOTFS_CPIO output as well as ext
>  > v2: Use default output directory for qemu command line in readme
>
>  > +++ b/configs/qemu_ppc_mac99_defconfig
>  > @@ -0,0 +1,11 @@
>  > +BR2_powerpc=y
>  > +BR2_powerpc_7400=y
>  > +BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"
>  > +BR2_SYSTEM_DHCP="eth0"
>  > +BR2_LINUX_KERNEL=y
>  > +BR2_LINUX_KERNEL_DEFCONFIG="pmac32"
>  > +BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/qemu/ppc-mac99/linux.fragment"
>  > +BR2_LINUX_KERNEL_VMLINUX=y
>
> You forgot to specify the version of the Linux kernel /
> kernel-headers. Committed with those set to 5.2.4, thanks.

I didn't forget, I omitted them so the config would use the latest default.

Is there a reason we specify a fixed version?

> With that said, we now have 4 32bit ppc qemu defconfigs which sounds
> like a lot to me. Are they all still interesting / useful?

I am not familiar with them. Michael?

They all target different CPUs which means there is no overlap at least:

$ grep -r BR2_powerpc_ configs/qemu_ppc_*
configs/qemu_ppc_g3beige_defconfig:BR2_powerpc_750=y
configs/qemu_ppc_mac99_defconfig:BR2_powerpc_7400=y
configs/qemu_ppc_mpc8544ds_defconfig:BR2_powerpc_8548=y
configs/qemu_ppc_virtex_ml507_defconfig:BR2_powerpc_440=y

Cheers,

Joel
Peter Korsgaard Aug. 2, 2019, 9:30 a.m. UTC | #4
>>>>> "Joel" == Joel Stanley <joel@jms.id.au> writes:

Hi,

 >> You forgot to specify the version of the Linux kernel /
 >> kernel-headers. Committed with those set to 5.2.4, thanks.

 > I didn't forget, I omitted them so the config would use the latest default.

 > Is there a reason we specify a fixed version?

Yes, reproducibility. If the defconfig is tested and working today, then
it should preferably still work in (say) 6 months from now.


 >> With that said, we now have 4 32bit ppc qemu defconfigs which sounds
 >> like a lot to me. Are they all still interesting / useful?

 > I am not familiar with them. Michael?

 > They all target different CPUs which means there is no overlap at least:

 > $ grep -r BR2_powerpc_ configs/qemu_ppc_*
 > configs/qemu_ppc_g3beige_defconfig:BR2_powerpc_750=y
 > configs/qemu_ppc_mac99_defconfig:BR2_powerpc_7400=y
 > configs/qemu_ppc_mpc8544ds_defconfig:BR2_powerpc_8548=y
 > configs/qemu_ppc_virtex_ml507_defconfig:BR2_powerpc_440=y

Correct. Ok, lets leave them for now then.
Peter Korsgaard Aug. 4, 2019, 12:24 p.m. UTC | #5
>>>>> "Michael" == Michael Ellerman <mpe@ellerman.id.au> writes:

Hi,

 >>> With that said, we now have 4 32bit ppc qemu defconfigs which sounds
 >>> like a lot to me. Are they all still interesting / useful?
 >> 
 >> I am not familiar with them. Michael?

 > Well the kernel has ~100 different configs, so 4 seems like a fairly
 > small number in comparison :)

So do we ;)

ls configs/*_defconfig | wc -l
213

 > None of the 32-bit powerpc platforms are really under heavy development
 > any more, but they are still used by various people. It's hard to say
 > how many of those people are also using buildroot.

Ok, lets just leave them for now. Thanks!

Patch
diff mbox series

diff --git a/DEVELOPERS b/DEVELOPERS
index ce3fcb2de8c1..29a560f4a398 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -1147,6 +1147,8 @@  N:	Joel Stanley <joel@jms.id.au>
 F:	package/pdbg/
 F:	board/qemu/ppc64le-pseries/
 F:	configs/qemu_ppc64le_pseries_defconfig
+F:	board/qemu/ppc-mac99/
+F:	configs/qemu_ppc_mac99_defconfig
 
 N:	Johan Derycke <johanderycke@gmail.com>
 F:	package/python-libconfig/
diff --git a/board/qemu/ppc-mac99/linux.fragment b/board/qemu/ppc-mac99/linux.fragment
new file mode 100644
index 000000000000..b1975f8253f7
--- /dev/null
+++ b/board/qemu/ppc-mac99/linux.fragment
@@ -0,0 +1,3 @@ 
+CONFIG_SERIAL_PMACZILOG=y
+CONFIG_SERIAL_PMACZILOG_TTYS=y
+CONFIG_SERIAL_PMACZILOG_CONSOLE=y
diff --git a/board/qemu/ppc-mac99/readme.txt b/board/qemu/ppc-mac99/readme.txt
new file mode 100644
index 000000000000..a8a18db5b9ab
--- /dev/null
+++ b/board/qemu/ppc-mac99/readme.txt
@@ -0,0 +1,5 @@ 
+Run the emulation with:
+
+  qemu-system-ppc -nographic -vga none -M mac99 -cpu g4 -m 1G -kernel output/images/vmlinux -drive file=output/images/rootfs.ext2,format=raw -net nic,model=sungem -net user -append "root=/dev/sda"
+
+Tested with QEMU 3.1.0
diff --git a/configs/qemu_ppc_mac99_defconfig b/configs/qemu_ppc_mac99_defconfig
new file mode 100644
index 000000000000..7a6a279c5399
--- /dev/null
+++ b/configs/qemu_ppc_mac99_defconfig
@@ -0,0 +1,11 @@ 
+BR2_powerpc=y
+BR2_powerpc_7400=y
+BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"
+BR2_SYSTEM_DHCP="eth0"
+BR2_LINUX_KERNEL=y
+BR2_LINUX_KERNEL_DEFCONFIG="pmac32"
+BR2_LINUX_KERNEL_CONFIG_FRAGMENT_FILES="board/qemu/ppc-mac99/linux.fragment"
+BR2_LINUX_KERNEL_VMLINUX=y
+BR2_TARGET_ROOTFS_CPIO=y
+BR2_TARGET_ROOTFS_EXT2=y
+# BR2_TARGET_ROOTFS_TAR is not set