On Thu, Aug 08, 2024 at 07:22:19PM +0800, Keguang Zhang via B4 Relay wrote: > From: Keguang Zhang <keguang.zhang@xxxxxxxxx> > > Add devicetree binding document for Loongson-1 NAND Controller. > > Signed-off-by: Keguang Zhang <keguang.zhang@xxxxxxxxx> > --- > Changes in v8: > - Add a description part. > - Adjust the compatible because the match data for ls1c-nfc differs from ls1b-nfc. > - Mark 'nand-use-soft-ecc-engine' and 'nand-ecc-algo' as mandatory. > - Delete the superfluous blank lines. > > Changes in v7: > - rename the file to loongson,ls1b-nfc.yaml > > Changes in v6: > - A newly added patch > --- > .../devicetree/bindings/mtd/loongson,ls1b-nfc.yaml | 75 ++++++++++++++++++++++ > 1 file changed, 75 insertions(+) > > diff --git a/Documentation/devicetree/bindings/mtd/loongson,ls1b-nfc.yaml b/Documentation/devicetree/bindings/mtd/loongson,ls1b-nfc.yaml > new file mode 100644 > index 000000000000..7ce335324a29 > --- /dev/null > +++ b/Documentation/devicetree/bindings/mtd/loongson,ls1b-nfc.yaml When I first read "nfc" here I thought it was a copy-paste mistake, as "nfc" is a technology of it's own. I think it would make sense to rename to "loongson,ls1b-nand-controller" etc to remove that sort of confusion. These devices might not implement NFC, but what's to say that a future device will not? Cheers, Conor. > @@ -0,0 +1,75 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/mtd/loongson,ls1b-nfc.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Loongson-1 NAND Controller > + > +maintainers: > + - Keguang Zhang <keguang.zhang@xxxxxxxxx> > + > +description: | This | is not needed. > + The Loongson-1 NAND controller abstracts all supported operations, > + meaning it does not support low-level access to raw NAND flash chips. > + Moreover, the controller is paired with the DMA engine to perform > + READ and PROGRAM functions. > + > +allOf: > + - $ref: nand-controller.yaml > + > +properties: > + compatible: > + oneOf: > + - enum: > + - loongson,ls1b-nfc > + - loongson,ls1c-nfc > + - items: > + - enum: > + - loongson,ls1a-nfc > + - const: loongson,ls1b-nfc > + > + reg: > + maxItems: 1 > + > + dmas: > + maxItems: 1 > + > + dma-names: > + const: rxtx > + > +patternProperties: > + "^nand@[0-3]$": > + type: object > + $ref: raw-nand-chip.yaml > + > + required: > + - nand-use-soft-ecc-engine > + - nand-ecc-algo > + > + unevaluatedProperties: false > + > +required: > + - compatible > + - reg > + - dmas > + - dma-names > + > +unevaluatedProperties: false > + > +examples: > + - | > + nand-controller@1fe78000 { > + compatible = "loongson,ls1b-nfc"; > + reg = <0x1fe78000 0x40>; > + #address-cells = <1>; > + #size-cells = <0>; > + dmas = <&dma 0>; > + dma-names = "rxtx"; > + > + nand@0 { > + reg = <0>; > + nand-use-soft-ecc-engine; > + nand-ecc-algo = "hamming"; > + }; > + }; > > -- > 2.43.0 > >
Attachment:
signature.asc
Description: PGP signature