Thread (51 messages) 51 messages, 8 authors, 2025-03-13

Re: [PATCH hyperv-next v5 07/11] dt-bindings: microsoft,vmbus: Add interrupts and DMA coherence

From: Krzysztof Kozlowski <krzk@kernel.org>
Date: 2025-03-10 17:40:39
Also in: kvmarm, linux-acpi, linux-arch, linux-arm-kernel, linux-devicetree, linux-pci, lkml

On 10/03/2025 18:05, Roman Kisel wrote:

On 3/10/2025 2:28 AM, Krzysztof Kozlowski wrote:
quoted
On Fri, Mar 07, 2025 at 02:02:59PM -0800, Roman Kisel wrote:
quoted
To boot on ARM64, VMBus requires configuring interrupts. Missing
DMA coherence property is sub-optimal as the VMBus transations are
cache-coherent.

Add interrupts to be able to boot on ARM64. Add DMA coherence to
avoid doing extra work on maintaining caches on ARM64.
How do you add it?
I added properties to the node. Should I fix the description, or I am
misunderstanding the question?
I saw interrupts in the schema, but I did not see dma-coherence. I also
did not see any DTS patches here, so I don't understand what node you
are referring to.
quoted
quoted
Signed-off-by: Roman Kisel <redacted>
---
  .../devicetree/bindings/bus/microsoft,vmbus.yaml          | 8 +++++++-
  1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/Documentation/devicetree/bindings/bus/microsoft,vmbus.yaml b/Documentation/devicetree/bindings/bus/microsoft,vmbus.yaml
index a8d40c766dcd..3ab7d0116626 100644
--- a/Documentation/devicetree/bindings/bus/microsoft,vmbus.yaml
+++ b/Documentation/devicetree/bindings/bus/microsoft,vmbus.yaml
@@ -28,13 +28,16 @@ properties:
  required:
    - compatible
    - ranges
+  - interrupts
    - '#address-cells'
    - '#size-cells'
  
-additionalProperties: false
+additionalProperties: true
This is neither explained in commit msg nor correct.
Not explained, as there is no good explanation as described below.
quoted
Drop the change. You cannot have device bindings ending with 'true'
here - see talks, example-bindings, writing-schema and whatever resource
is there.
Thanks, I'll put more effort into bringing this into a better form!
If you have time, could you comment on the below?

The Documentation says

   * additionalProperties: true
     Rare case, used for schemas implementing common set of properties.
Such schemas are supposed to be referenced by other schemas, which then 
use 'unevaluatedProperties: false'.  Typically bus or common-part schemas.

This is a bus so I added that line to the YAML, and I saw it in many
If this is a bus, then where is schema using it for
bus-attached-devices? You cannot have bus without devices.

You *must* fulfill that part:
"Such schemas are supposed to be referenced by other schemas, which then"

instead of calling it bus...

Please upstream bindings for the bus devices and extend the example here
with these devices.

Or this is not bus (calling something vmpony does not make it a pony).


Best regards,
Krzysztof
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help