Re: [PATCH v8 1/2] dt-bindings: embedded-controller: Add synology microp devices

From: Markus Probst

Date: Tue Apr 21 2026 - 10:57:54 EST


On Tue, 2026-04-21 at 09:07 +0200, Krzysztof Kozlowski wrote:
> On Mon, Apr 20, 2026 at 02:24:20PM +0000, Markus Probst wrote:
> > Add the Synology Microp devicetree bindings. Those devices are
> > microcontrollers found on Synology NAS devices. They are connected to a
> > serial port on the host device.
> >
> > Those devices are used to control certain LEDs, fan speeds, a beeper, to
> > handle buttons, fan failures and to properly shutdown and reboot the
> > device.
> >
> > The device has a different feature set depending on the Synology NAS
> > model, like having different number of fans, buttons and leds. Depending
> > on the architecture of the model, they also need a different system
> > shutdown behaviour.
> >
> > Signed-off-by: Markus Probst <markus.probst@xxxxxxxxx>
> > ---
> > .../synology,ds1825p-microp.yaml | 108 +++++++++++++++++++++
> > 1 file changed, 108 insertions(+)
> >
> > diff --git a/Documentation/devicetree/bindings/embedded-controller/synology,ds1825p-microp.yaml b/Documentation/devicetree/bindings/embedded-controller/synology,ds1825p-microp.yaml
> > new file mode 100644
> > index 000000000000..76c671a42fbf
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/embedded-controller/synology,ds1825p-microp.yaml
> > @@ -0,0 +1,108 @@
> > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> > +%YAML 1.2
> > +---
> > +$id: http://devicetree.org/schemas/embedded-controller/synology,ds1825p-microp.yaml#
> > +$schema: http://devicetree.org/meta-schemas/core.yaml#
> > +
> > +title: Synology NAS on-board Microcontroller
> > +
> > +maintainers:
> > + - Markus Probst <markus.probst@xxxxxxxxx>
> > +
> > +description: |
> > + Synology Microp is a microcontroller found in Synology NAS devices.
> > + It is connected to a serial port on the host device.
> > +
> > + It is necessary to properly shutdown and reboot the NAS device and
> > + provides additional functionality such as led control, fan speed control,
> > + a beeper and buttons on the NAS device.
> > +
> > +properties:
> > + compatible:
> > + oneOf:
> > + - const: synology,ds223-microp
> > + - const: synology,ds411p-microp
> > + - const: synology,ds1010p-microp
> > + - const: synology,ds710p-microp
> > + - const: synology,ds723p-microp
> > + - const: synology,ds225p-microp
> > + - const: synology,rs422p-microp
>
> That's one enum.
>
> > + - maxItems: 2
> > + minItems: 2
>
> There is no such syntax foro compatibles. Please use any existing file
> as example or look at example-schema.
In the example schema, another device is used as fallback. This is what
I did here.


Other sources suggest, I should add fallbacks that are less specific
about the device:

e. g.
- items:
- enum:
- synology,ds923p-microp
- synology,ds723p-microp
- synology,ds1522p-microp
- synology,rs422p-microp
- const: synology,r1000-microp
- const: synology,x86-microp

- items:
- enum:
- synology,ds225p-microp
- synology,ds425p-microp
- const: synology,geminilakenk-microp
- const: synology,x86-microp
...


If thisisn't fine either, replying to my previous message would
probably the most efficient way to move forward [1].

>
> > + items:
> > + enum:
>
> No, why the list is randomly ordered.
>
> > + - synology,ds923p-microp
> > + - synology,ds1522p-microp
>
> And fallback, whichever is that, is not documented alone.
>
> > + - minItems: 4
> > + maxItems: 4

Those are devices with the exactly same known feature set.
i. e. ds1522p can act as a fallback for ds923p, and ds923p could act as
a fallback for ds1522p.

Thanks
- Markus Probst

[1]
https://lore.kernel.org/all/8c8555b3375375dac47a22fad40080fd5b4228a5.camel@xxxxxxxxx/

>
> Best regards,
> Krzysztof

Attachment: signature.asc
Description: This is a digitally signed message part