[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-ppc] [PATCH] ppc: virtex_ml507: QEMU_OPTION_dtb support for th
From: |
Alexander Graf |
Subject: |
Re: [Qemu-ppc] [PATCH] ppc: virtex_ml507: QEMU_OPTION_dtb support for this machine. |
Date: |
Wed, 14 Aug 2013 12:03:34 +0200 |
On 14.08.2013, at 11:56, Edgar E. Iglesias wrote:
> On Wed, Aug 14, 2013 at 11:51:19AM +0200, Alexander Graf wrote:
>>
>> On 13.08.2013, at 13:09, Efimov Vasily wrote:
>>
>>>
>>> Signed-off-by: Efimov Vasily <address@hidden>
>>
>> Please provide a patch description :).
>>
>>> ---
>>> hw/ppc/virtex_ml507.c | 13 ++++++++++---
>>> 1 file changed, 10 insertions(+), 3 deletions(-)
>>>
>>> diff --git a/hw/ppc/virtex_ml507.c b/hw/ppc/virtex_ml507.c
>>> index 08e77fb..a00f709 100644
>>> --- a/hw/ppc/virtex_ml507.c
>>> +++ b/hw/ppc/virtex_ml507.c
>>> @@ -141,11 +141,18 @@ static int xilinx_load_device_tree(hwaddr addr,
>>> {
>>> char *path;
>>> int fdt_size;
>>> - void *fdt;
>>> + void *fdt = 0;
>>
>> This should be NULL. NULL doesn't have to be 0 according to C IIRC.
>>
>>> int r;
>>> + const char *dtb_filename;
>>>
>>> - /* Try the local "ppc.dtb" override. */
>>> - fdt = load_device_tree("ppc.dtb", &fdt_size);
>>> + dtb_filename = qemu_opt_get(qemu_get_machine_opts(), "dtb");
>>> + if (dtb_filename) {
>>> + fdt = load_device_tree(dtb_filename, &fdt_size);
>>> + }
>>> + if (!fdt) {
>>> + /* Try the local "ppc.dtb" override. */
>>> + fdt = load_device_tree("ppc.dtb", &fdt_size);
>>> + }
>>
>> Could you please just remove the ppc.dtb override option? It's superfluous
>> once we have proper -dtb support.
>>
>> Edgar, any objections?
>
> Hi,
>
> No objections from my side, I tested the patch and it works fine.
> I'd prefer to keep the ppc.dtb fallback for backwards compatibility,
> for example the test image on the wiki relies on it.
Ah, ok. Then let's make the logic work like this:
if (user provided -dtb) {
if (load_dtb(user provided dtb)) {
abort();
}
} else {
if (load_dtb("ppc.dtb")) {
if (load_dtb(find_file(BINARY_DEVICE_TREE_FILE))) {
abort();
}
}
}
Alex