On Thu, Aug 31, 2017 at 4:40 PM, Philippe Mathieu-Daudé <f4...@amsat.org> wrote:
> Hi Alistair,
>
>
> On 08/31/2017 08:02 PM, Alistair Francis wrote:
>>
>> On Wed, Aug 30, 2017 at 7:47 AM, Philippe Mathieu-Daudé <f4...@amsat.org>
>> wrote:
>>>
>>> On 08/30/2017 09:26 AM, Peter Maydell wrote:
>>>>
>>>>
>>>> On 30 August 2017 at 03:45, Philippe Mathieu-Daudé <f4...@amsat.org>
>>>> wrote:
>>>>>
>>>>>
>>>>> I think they might be issues if you start QEMU without -serial and then
>>>>> use
>>>>> a firmware polling for an uart, the device won't be mapped and the
>>>>> memory
>>>>> accesses are mostly ignored.
>>>>>
>>>>> I'd rather use:
>>>>>
>>>>>       for (i = 0; i < MSF2_NUM_UARTS && i < MAX_SERIAL_PORTS; i++) {
>>>>>           static const char *serial[] = {"serial0", "serial1"};
>>>>>
>>>>>           if (!serial_hds[i]) {
>>>>>               serial_hds[i] = qemu_chr_new(serial[i], "null");
>>>>>
>>>>>           }
>>>>>
>>>>>> +            serial_mm_init(get_system_memory(), uart_addr[i], 2,
>>>>>> +                           qdev_get_gpio_in(armv7m, uart_irq[i]),
>>>>>> +                           115200, serial_hds[i],
>>>>>> DEVICE_NATIVE_ENDIAN);
>>>>>> +        }
>>>>>> +    }
>>>>
>>>>
>>>>
>>>> It would be better to fix serial_mm_init() to handle having
>>>> a NULL chardev pointer, because we already have a lot of
>>>> SoC code that just passes it serial_hds[] regardless.
>>>
>>>
>>>
>>> clever :)
>>>
>>>> I'd leave this code as it is and we can fix serial_mm_init
>>>> separately (somebody pointed out this issue for a xilinx
>>>> board recently).
>>
>>
>> Ah, I'll look into this then.
>
>
> I already sent a series to take care of this:
>
> http://lists.nongnu.org/archive/html/qemu-devel/2017-08/msg06325.html

That was quick.

Can you CC me on the next version?

Thanks,
Alistair

>
> I'll respin a v2 shortly.

Reply via email to