Hello Geert,
Στις 2021-06-15 16:19, Geert Uytterhoeven έγραψε:
This does not match
https://github.com/devicetree-org/dt-schema/blob/master/schemas/chosen.yaml#L77:
$ref: types.yaml#/definitions/uint64-array
maxItems: 2
description:
This property (currently used only on arm64) holds the memory
range,
the address and the size, of the elf core header which mainly
describes
the panicked kernel\'s memory layout as PT_LOAD segments of elf
format.
Hence "linux,elfcorehdr" should be a property of the /chosen node,
instead of a memory node with a compatible value of "linux,elfcorehdr".
That's a binding for a property on the /chosen node, that as the text
says it's defined for arm64 only and the code that handled it was also
on arm64. Instead the reserved-region binding I used is a standard
binding, if you don't like the name used for the compatible string
because it overlaps with that property we can change it. I want to use a
reserved-region for this because we'll have to reserve it anyway so
using a property on /chosen and then using that property to reserve the
region seemed suboptimal.
v2:
* Use linux,usable-memory on /memory instead of a new binding
This part seems to have been removed in v3 and later?
Note that "linux,usable-memory-range" should be a property of the
/chosen node, too, cfr.
https://github.com/devicetree-org/dt-schema/blob/master/schemas/chosen.yaml#L85
No special handling is needed when using linux,usable-memory on /memory,
limiting the available memory is handled by generic code at
drivers/of/fdt.c
Regards,
Nick