[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v1 1/2] semihosting: defer connect_chardevs a little more to
From: |
Alex Bennée |
Subject: |
Re: [PATCH v1 1/2] semihosting: defer connect_chardevs a little more to use serialx |
Date: |
Thu, 16 Jul 2020 11:14:00 +0100 |
User-agent: |
mu4e 1.5.4; emacs 28.0.50 |
Fred Konrad <konrad@adacore.com> writes:
> Le 6/26/20 à 12:06 PM, Fred Konrad a écrit :
>>
>>
>> Le 6/16/20 à 4:52 PM, Alex Bennée a écrit :
>>>
>>> konrad@adacore.com writes:
>>>
>>>> From: KONRAD Frederic <frederic.konrad@adacore.com>
>>>>
>>>> With that we can just use chardev=serial0.
>>>
>>> I don't quite follow what this means.
>>>
>>> ./aarch64-softmmu/qemu-system-aarch64 -cpu max -monitor none
>>> -chardev=serial0
>>> -M virt -display none -semihosting -kernel
>>> ./tests/tcg/aarch64-softmmu/memory
>>> qemu-system-aarch64: -chardev=serial0: invalid option
>>>
>>> ./aarch64-softmmu/qemu-system-aarch64 -cpu max -monitor none -chardev
>>> id=serial0 -M virt -display none -semihosting -kernel
>>> ./tests/tcg/aarch64-softmmu/memory
>>> qemu-system-aarch64: -chardev id=serial0: chardev: "serial0" missing backend
>>>
>>> The run:
>>>
>>> ./aarch64-softmmu/qemu-system-aarch64 -cpu max -serial mon:stdio -M virt
>>> -display none -semihosting -kernel ./tests/tcg/aarch64-softmmu/memory
>>>
>>> works fine without this patch.
>>
>> Hi Alex, and sorry for the delay,
>>
>> I meant `-semihosting-config chardev=serial0`. I suspect your last
>> command-line
>> will print any string sent to semihosting to stderr by default.
>
> Does that make sense? BTW the second patch fixes a bug, it might be
> interesting
> to have it in 5.1.
Right - can confirm the difference between:
./aarch64-softmmu/qemu-system-aarch64 -cpu max -serial mon:stdio -M virt
-display none -semihosting -kernel ./tests/tcg/aarch64-softmmu/memory
and
./aarch64-softmmu/qemu-system-aarch64 -cpu max -serial mon:stdio -M virt
-display none -semihosting-config chardev=serial0 -kernel
./tests/tcg/aarch64-softmmu/memory
is where the data ends up. I've slightly amended the commit message for
the 1/1 to make it clearer.
Queued to for-5.1/fixes-for-rc1, thanks.
>
> Cheers,
> Fred
>
>>
>>>
>>>>
>>>> Signed-off-by: KONRAD Frederic <frederic.konrad@adacore.com>
>>>> ---
>>>> softmmu/vl.c | 5 +++--
>>>> 1 file changed, 3 insertions(+), 2 deletions(-)
>>>>
>>>> diff --git a/softmmu/vl.c b/softmmu/vl.c
>>>> index f669c06..9b8b48a 100644
>>>> --- a/softmmu/vl.c
>>>> +++ b/softmmu/vl.c
>>>> @@ -4123,8 +4123,6 @@ void qemu_init(int argc, char **argv, char **envp)
>>>> qemu_opts_foreach(qemu_find_opts("chardev"),
>>>> chardev_init_func, NULL, &error_fatal);
>>>> - /* now chardevs have been created we may have semihosting to connect
>>>> */
>>>> - qemu_semihosting_connect_chardevs();
>>>> #ifdef CONFIG_VIRTFS
>>>> qemu_opts_foreach(qemu_find_opts("fsdev"),
>>>> @@ -4271,6 +4269,9 @@ void qemu_init(int argc, char **argv, char **envp)
>>>> if (foreach_device_config(DEV_DEBUGCON, debugcon_parse) < 0)
>>>> exit(1);
>>>> + /* now chardevs have been created we may have semihosting to connect
>>>> */
>>>> + qemu_semihosting_connect_chardevs();
>>>> +
>>>> /* If no default VGA is requested, the default is "none". */
>>>> if (default_vga) {
>>>> vga_model = get_default_vga_model(machine_class);
>>>
>>>
--
Alex Bennée