diff mbox series

configs/qemu_riscv{32, 64}_virt_defconfig: Remove BR2_TARGET_GENERIC_GETTY_PORT

Message ID 1583583630-25647-1-git-send-email-bmeng.cn@gmail.com
State Accepted
Headers show
Series configs/qemu_riscv{32, 64}_virt_defconfig: Remove BR2_TARGET_GENERIC_GETTY_PORT | expand

Commit Message

Bin Meng March 7, 2020, 12:20 p.m. UTC
Currently BR2_TARGET_GENERIC_GETTY_PORT is set to ttyS0 in both
qemu_riscv32_virt and qemu_riscv64_virt defconfig files. This
limits usecases when the same one rootfs could be used on QEMU
'sifive_u' machine and SiFive HiFive Unleashed board.

Remove it so that the default boot console can be used.

Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
---

 configs/qemu_riscv32_virt_defconfig | 1 -
 configs/qemu_riscv64_virt_defconfig | 1 -
 2 files changed, 2 deletions(-)

Comments

Bin Meng March 12, 2020, 1:50 a.m. UTC | #1
On Sat, Mar 7, 2020 at 8:20 PM Bin Meng <bmeng.cn@gmail.com> wrote:
>
> Currently BR2_TARGET_GENERIC_GETTY_PORT is set to ttyS0 in both
> qemu_riscv32_virt and qemu_riscv64_virt defconfig files. This
> limits usecases when the same one rootfs could be used on QEMU
> 'sifive_u' machine and SiFive HiFive Unleashed board.
>
> Remove it so that the default boot console can be used.
>
> Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
> ---
>
>  configs/qemu_riscv32_virt_defconfig | 1 -
>  configs/qemu_riscv64_virt_defconfig | 1 -
>  2 files changed, 2 deletions(-)
>

Ping?
Bin Meng March 17, 2020, 1:49 a.m. UTC | #2
On Thu, Mar 12, 2020 at 9:50 AM Bin Meng <bmeng.cn@gmail.com> wrote:
>
> On Sat, Mar 7, 2020 at 8:20 PM Bin Meng <bmeng.cn@gmail.com> wrote:
> >
> > Currently BR2_TARGET_GENERIC_GETTY_PORT is set to ttyS0 in both
> > qemu_riscv32_virt and qemu_riscv64_virt defconfig files. This
> > limits usecases when the same one rootfs could be used on QEMU
> > 'sifive_u' machine and SiFive HiFive Unleashed board.
> >
> > Remove it so that the default boot console can be used.
> >
> > Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
> > ---
> >
> >  configs/qemu_riscv32_virt_defconfig | 1 -
> >  configs/qemu_riscv64_virt_defconfig | 1 -
> >  2 files changed, 2 deletions(-)
> >
>
> Ping?

Ping again?
Romain Naour March 22, 2020, 3:52 p.m. UTC | #3
Hi,

Le 07/03/2020 à 13:20, Bin Meng a écrit :
> Currently BR2_TARGET_GENERIC_GETTY_PORT is set to ttyS0 in both
> qemu_riscv32_virt and qemu_riscv64_virt defconfig files. This
> limits usecases when the same one rootfs could be used on QEMU
> 'sifive_u' machine and SiFive HiFive Unleashed board.
> 
> Remove it so that the default boot console can be used.

By doing this change, we need to check if -nographic is used to start qemu (so
the serial port is the default console) or if console=ttyS0 is used in the
kernel command line.

riscv32 and risc64 are both using -nographic to start Qemu.

Your use case is similar to the one from [1]

[1]
https://git.buildroot.net/buildroot/commit/?id=131300e6f1d0745a1455d246684550e6ecb68549

Reviewed-by: Romain Naour <romain.naour@gmail.com>

Best regards,
Romain


> 
> Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
> ---
> 
>  configs/qemu_riscv32_virt_defconfig | 1 -
>  configs/qemu_riscv64_virt_defconfig | 1 -
>  2 files changed, 2 deletions(-)
> 
> diff --git a/configs/qemu_riscv32_virt_defconfig b/configs/qemu_riscv32_virt_defconfig
> index 914eada..093d888 100644
> --- a/configs/qemu_riscv32_virt_defconfig
> +++ b/configs/qemu_riscv32_virt_defconfig
> @@ -5,7 +5,6 @@ BR2_RISCV_32=y
>  # System
>  BR2_SYSTEM_DHCP="eth0"
>  BR2_TARGET_GENERIC_GETTY=y
> -BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"
>  BR2_GLOBAL_PATCH_DIR="board/qemu/riscv32-virt/patches/"
>  
>  # Filesystem
> diff --git a/configs/qemu_riscv64_virt_defconfig b/configs/qemu_riscv64_virt_defconfig
> index 5c52f7a..54390fc 100644
> --- a/configs/qemu_riscv64_virt_defconfig
> +++ b/configs/qemu_riscv64_virt_defconfig
> @@ -5,7 +5,6 @@ BR2_RISCV_64=y
>  # System
>  BR2_SYSTEM_DHCP="eth0"
>  BR2_TARGET_GENERIC_GETTY=y
> -BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"
>  
>  # Filesystem
>  BR2_TARGET_ROOTFS_EXT2=y
>
Yann E. MORIN March 22, 2020, 4:01 p.m. UTC | #4
Romain, Bin, All,

On 2020-03-22 16:52 +0100, Romain Naour spake thusly:
> Le 07/03/2020 à 13:20, Bin Meng a écrit :
> > Currently BR2_TARGET_GENERIC_GETTY_PORT is set to ttyS0 in both
> > qemu_riscv32_virt and qemu_riscv64_virt defconfig files. This
> > limits usecases when the same one rootfs could be used on QEMU
> > 'sifive_u' machine and SiFive HiFive Unleashed board.
> > 
> > Remove it so that the default boot console can be used.
> 
> By doing this change, we need to check if -nographic is used to start qemu (so
> the serial port is the default console) or if console=ttyS0 is used in the
> kernel command line.
> 
> riscv32 and risc64 are both using -nographic to start Qemu.
> 
> Your use case is similar to the one from [1]
> 
> [1]
> https://git.buildroot.net/buildroot/commit/?id=131300e6f1d0745a1455d246684550e6ecb68549
> 
> Reviewed-by: Romain Naour <romain.naour@gmail.com>

Thanks Romain for this review (and for bringing me in!)

However, I disagree: these defconfig files are for qemu, not the real
hardware.

Additionally, we do have a configuration for the hifive unleashed board
already, hifive_unleashed_defconfig, which is what should be used for
the real hardware.

Regards,
Yann E. MORIN.

> Best regards,
> Romain
> 
> 
> > 
> > Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
> > ---
> > 
> >  configs/qemu_riscv32_virt_defconfig | 1 -
> >  configs/qemu_riscv64_virt_defconfig | 1 -
> >  2 files changed, 2 deletions(-)
> > 
> > diff --git a/configs/qemu_riscv32_virt_defconfig b/configs/qemu_riscv32_virt_defconfig
> > index 914eada..093d888 100644
> > --- a/configs/qemu_riscv32_virt_defconfig
> > +++ b/configs/qemu_riscv32_virt_defconfig
> > @@ -5,7 +5,6 @@ BR2_RISCV_32=y
> >  # System
> >  BR2_SYSTEM_DHCP="eth0"
> >  BR2_TARGET_GENERIC_GETTY=y
> > -BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"
> >  BR2_GLOBAL_PATCH_DIR="board/qemu/riscv32-virt/patches/"
> >  
> >  # Filesystem
> > diff --git a/configs/qemu_riscv64_virt_defconfig b/configs/qemu_riscv64_virt_defconfig
> > index 5c52f7a..54390fc 100644
> > --- a/configs/qemu_riscv64_virt_defconfig
> > +++ b/configs/qemu_riscv64_virt_defconfig
> > @@ -5,7 +5,6 @@ BR2_RISCV_64=y
> >  # System
> >  BR2_SYSTEM_DHCP="eth0"
> >  BR2_TARGET_GENERIC_GETTY=y
> > -BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"
> >  
> >  # Filesystem
> >  BR2_TARGET_ROOTFS_EXT2=y
> > 
> 
> _______________________________________________
> buildroot mailing list
> buildroot@busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
Yann E. MORIN March 22, 2020, 4:13 p.m. UTC | #5
Romain, Bin, All,

On 2020-03-22 17:01 +0100, Yann E. MORIN spake thusly:
> On 2020-03-22 16:52 +0100, Romain Naour spake thusly:
> > Le 07/03/2020 à 13:20, Bin Meng a écrit :
> > > Currently BR2_TARGET_GENERIC_GETTY_PORT is set to ttyS0 in both
> > > qemu_riscv32_virt and qemu_riscv64_virt defconfig files. This
> > > limits usecases when the same one rootfs could be used on QEMU
> > > 'sifive_u' machine and SiFive HiFive Unleashed board.
> > > 
> > > Remove it so that the default boot console can be used.
> > 
> > By doing this change, we need to check if -nographic is used to start qemu (so
> > the serial port is the default console) or if console=ttyS0 is used in the
> > kernel command line.
> > 
> > riscv32 and risc64 are both using -nographic to start Qemu.
> > 
> > Your use case is similar to the one from [1]
> > 
> > [1]
> > https://git.buildroot.net/buildroot/commit/?id=131300e6f1d0745a1455d246684550e6ecb68549
> > 
> > Reviewed-by: Romain Naour <romain.naour@gmail.com>
> 
> Thanks Romain for this review (and for bringing me in!)
> 
> However, I disagree: these defconfig files are for qemu, not the real
> hardware.
> 
> Additionally, we do have a configuration for the hifive unleashed board
> already, hifive_unleashed_defconfig, which is what should be used for
> the real hardware.

Romain pointed out on IRC that this change is in fact dual-sided:

  - it allows the generic riscv defconfigs to boot on the real hardware
    HiFive Unleashed board

  - it allows the generic riscv defconfigs to boot on the emulated
    HiFive Unleashed board which is known to qemu as sifive_u.

Still, my position does not change: if one wants to boot something in
the sifive_u which emulates a HiFive Unleashed board, then one better
use the original hifive_unleashed_defconfig, rather than the generic
riscv one.

Regards,
Yann E. MORIN.

> Regards,
> Yann E. MORIN.
> 
> > Best regards,
> > Romain
> > 
> > 
> > > 
> > > Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
> > > ---
> > > 
> > >  configs/qemu_riscv32_virt_defconfig | 1 -
> > >  configs/qemu_riscv64_virt_defconfig | 1 -
> > >  2 files changed, 2 deletions(-)
> > > 
> > > diff --git a/configs/qemu_riscv32_virt_defconfig b/configs/qemu_riscv32_virt_defconfig
> > > index 914eada..093d888 100644
> > > --- a/configs/qemu_riscv32_virt_defconfig
> > > +++ b/configs/qemu_riscv32_virt_defconfig
> > > @@ -5,7 +5,6 @@ BR2_RISCV_32=y
> > >  # System
> > >  BR2_SYSTEM_DHCP="eth0"
> > >  BR2_TARGET_GENERIC_GETTY=y
> > > -BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"
> > >  BR2_GLOBAL_PATCH_DIR="board/qemu/riscv32-virt/patches/"
> > >  
> > >  # Filesystem
> > > diff --git a/configs/qemu_riscv64_virt_defconfig b/configs/qemu_riscv64_virt_defconfig
> > > index 5c52f7a..54390fc 100644
> > > --- a/configs/qemu_riscv64_virt_defconfig
> > > +++ b/configs/qemu_riscv64_virt_defconfig
> > > @@ -5,7 +5,6 @@ BR2_RISCV_64=y
> > >  # System
> > >  BR2_SYSTEM_DHCP="eth0"
> > >  BR2_TARGET_GENERIC_GETTY=y
> > > -BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"
> > >  
> > >  # Filesystem
> > >  BR2_TARGET_ROOTFS_EXT2=y
> > > 
> > 
> > _______________________________________________
> > buildroot mailing list
> > buildroot@busybox.net
> > http://lists.busybox.net/mailman/listinfo/buildroot
> 
> -- 
> .-----------------.--------------------.------------------.--------------------.
> |  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
> | +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
> | +33 561 099 427 `------------.-------:  X  AGAINST      |  \e/  There is no  |
> | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
> '------------------------------^-------^------------------^--------------------'
> _______________________________________________
> buildroot mailing list
> buildroot@busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
Bin Meng March 23, 2020, 5:38 a.m. UTC | #6
Hi Yann,

On Mon, Mar 23, 2020 at 12:13 AM Yann E. MORIN <yann.morin.1998@free.fr> wrote:
>
> Romain, Bin, All,
>
> On 2020-03-22 17:01 +0100, Yann E. MORIN spake thusly:
> > On 2020-03-22 16:52 +0100, Romain Naour spake thusly:
> > > Le 07/03/2020 à 13:20, Bin Meng a écrit :
> > > > Currently BR2_TARGET_GENERIC_GETTY_PORT is set to ttyS0 in both
> > > > qemu_riscv32_virt and qemu_riscv64_virt defconfig files. This
> > > > limits usecases when the same one rootfs could be used on QEMU
> > > > 'sifive_u' machine and SiFive HiFive Unleashed board.
> > > >
> > > > Remove it so that the default boot console can be used.
> > >
> > > By doing this change, we need to check if -nographic is used to start qemu (so
> > > the serial port is the default console) or if console=ttyS0 is used in the
> > > kernel command line.
> > >
> > > riscv32 and risc64 are both using -nographic to start Qemu.
> > >
> > > Your use case is similar to the one from [1]
> > >
> > > [1]
> > > https://git.buildroot.net/buildroot/commit/?id=131300e6f1d0745a1455d246684550e6ecb68549
> > >
> > > Reviewed-by: Romain Naour <romain.naour@gmail.com>
> >
> > Thanks Romain for this review (and for bringing me in!)
> >
> > However, I disagree: these defconfig files are for qemu, not the real
> > hardware.
> >

I understand your points.

> > Additionally, we do have a configuration for the hifive unleashed board
> > already, hifive_unleashed_defconfig, which is what should be used for
> > the real hardware.
>
> Romain pointed out on IRC that this change is in fact dual-sided:
>
>   - it allows the generic riscv defconfigs to boot on the real hardware
>     HiFive Unleashed board

The changes wanted to make the rootfs be generic so that it can be
reusable among all RISC-V targets. IMO QEMU RISC-V config is the best
candidate to do such things.

>
>   - it allows the generic riscv defconfigs to boot on the emulated
>     HiFive Unleashed board which is known to qemu as sifive_u.
>

That's correct.

> Still, my position does not change: if one wants to boot something in
> the sifive_u which emulates a HiFive Unleashed board, then one better
> use the original hifive_unleashed_defconfig, rather than the generic
> riscv one.
>

The hifive_unleashed_defconfig can do something specific to one
particular board (eg: generating a workable flash or SD card image),
but the proposed change in this patch is for generic RISC-V boards'
rootfs.

Regards,
Bin
Thomas Petazzoni April 21, 2020, 9:19 p.m. UTC | #7
On Sat,  7 Mar 2020 04:20:30 -0800
Bin Meng <bmeng.cn@gmail.com> wrote:

> Currently BR2_TARGET_GENERIC_GETTY_PORT is set to ttyS0 in both
> qemu_riscv32_virt and qemu_riscv64_virt defconfig files. This
> limits usecases when the same one rootfs could be used on QEMU
> 'sifive_u' machine and SiFive HiFive Unleashed board.
> 
> Remove it so that the default boot console can be used.
> 
> Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
> ---

Applied to master with a reworked commit log. Indeed, these options are
not really needed, but the idea that these defconfigs should be used on
other HW platforms than the Qemu emulation is not a good idea, as
pointed out by other reviewers.

Thanks!

Thomas
diff mbox series

Patch

diff --git a/configs/qemu_riscv32_virt_defconfig b/configs/qemu_riscv32_virt_defconfig
index 914eada..093d888 100644
--- a/configs/qemu_riscv32_virt_defconfig
+++ b/configs/qemu_riscv32_virt_defconfig
@@ -5,7 +5,6 @@  BR2_RISCV_32=y
 # System
 BR2_SYSTEM_DHCP="eth0"
 BR2_TARGET_GENERIC_GETTY=y
-BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"
 BR2_GLOBAL_PATCH_DIR="board/qemu/riscv32-virt/patches/"
 
 # Filesystem
diff --git a/configs/qemu_riscv64_virt_defconfig b/configs/qemu_riscv64_virt_defconfig
index 5c52f7a..54390fc 100644
--- a/configs/qemu_riscv64_virt_defconfig
+++ b/configs/qemu_riscv64_virt_defconfig
@@ -5,7 +5,6 @@  BR2_RISCV_64=y
 # System
 BR2_SYSTEM_DHCP="eth0"
 BR2_TARGET_GENERIC_GETTY=y
-BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"
 
 # Filesystem
 BR2_TARGET_ROOTFS_EXT2=y