[PATCH v4 14/14] Documentation: KHO: Add memblock bindings
Krzysztof Kozlowski
krzk at kernel.org
Sun Feb 9 12:50:37 PST 2025
On 09/02/2025 21:49, Krzysztof Kozlowski wrote:
>>>>
>>>> These are not devicetree binding for communicating data from firmware to
>>>> the kernel. These bindings are specific to KHO which is perfectly
>>>> reflected by the subject.
>>>
>>> No, it is not. None of the bindings use above subject prefix.
>>>
>>>>
>>>> Just a brief reminder from v2 discussion:
>>>> (https://lore.kernel.org/linux-mm/20231222193607.15474-1-graf@amazon.com/)
>>>>
>>>> "For quick reference: KHO is a new mechanism this patch set introduces
>>>> which allows Linux to pass arbitrary memory and metadata between kernels
>>>> on kexec. I'm reusing FDTs to implement the hand over protocol, as
>>>> Linux-to-Linux boot communication holds very similar properties to
>>>> firmware-to-Linux boot communication. So this binding is not about
>>>> hardware; it's about preserving Linux subsystem state across kexec.
>>>
>>> does not matter. You added file to ABI documentation so you must follow
>>> that ABI documentation rules. One rule is proper subject prefix.
>>
>> No, it does not. It's a different ABI.
>>
>> FDT is a _data structure_ that provides cross platform unified, versioned,
>> introspectable data format.
>>
>> Documentation/devicetree/bindings standardizes it's use for describing
>> hardware, but KHO uses FDT _data structure_ to describe state of the kernel
>> components that will be reused by the kexec'ed kernel.
>>
>> KHO is a different namespace from Open Firmware Device Tree, with different
>> requirements and different stakeholders. Putting descriptions of KHO data
>> formats in Documentation/kho rather than in
>> Documentation/devicetree/bindings was not done to evade review of Open
>> Firmware Device Tree maintainers, but rather to emphasize that KHO FDT _is
>> not_ Open Firmware Device Tree.
>
>
> Ah, neat, that would almost solve the problem but you wrote:
>
> +$id: http://devicetree.org/schemas/memblock/reserve_mem.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>
> so no, this does not work like that. You use devicetree here namespace
> and ignore its rules.
... and that obviously is barely parseable, so maybe one more try:
"You use here devicetree namespace but ignore its rules."
>
> You cannot pretend this is not devicetree if you put it into devicetree
> schemas.
Best regards,
Krzysztof
More information about the kexec
mailing list