Message ID | 20230226031321.3126756-2-ryan_chen@aspeedtech.com |
---|---|
State | New |
Headers | show |
Series | Add ASPEED AST2600 I2Cv2 controller driver | expand |
Hi Ryan, On Sun, Feb 26, 2023 at 11:13:20AM +0800, Ryan Chen wrote: > Add ast2600-i2cv2 compatible and aspeed,global-regs, aspeed,timeout > aspeed,xfer-mode description for ast2600-i2cv2. > > Signed-off-by: Ryan Chen <ryan_chen@aspeedtech.com> > --- > .../devicetree/bindings/i2c/aspeed,i2c.yaml | 44 +++++++++++++++++++ > 1 file changed, 44 insertions(+) > > diff --git a/Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml b/Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml > index f597f73ccd87..75de3ce41cf5 100644 > --- a/Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml > +++ b/Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml > @@ -49,6 +49,25 @@ properties: > description: > states that there is another master active on this bus > > + aspeed,timeout: > + type: boolean > + description: I2C bus timeout enable for master/slave mode Finally you can proceed with this. Please remove "aspeed,timeout" and use "i2c-scl-has-clk-low-timeout" instead. Andi
Hello, > -----Original Message----- > From: Andi Shyti <andi.shyti@kernel.org> > Sent: Saturday, March 18, 2023 5:10 PM > To: Ryan Chen <ryan_chen@aspeedtech.com> > Cc: Andrew Jeffery <andrew@aj.id.au>; Brendan Higgins > <brendan.higgins@linux.dev>; Benjamin Herrenschmidt > <benh@kernel.crashing.org>; Joel Stanley <joel@jms.id.au>; Rob Herring > <robh+dt@kernel.org>; Krzysztof Kozlowski > <krzysztof.kozlowski+dt@linaro.org>; Philipp Zabel > <p.zabel@pengutronix.de>; linux-i2c@vger.kernel.org; > openbmc@lists.ozlabs.org; devicetree@vger.kernel.org; > linux-arm-kernel@lists.infradead.org; linux-aspeed@lists.ozlabs.org; > linux-kernel@vger.kernel.org > Subject: Re: [PATCH v6 1/2] dt-bindings: i2c: aspeed: support for > AST2600-i2cv2 > > Hi Ryan, > > On Sun, Feb 26, 2023 at 11:13:20AM +0800, Ryan Chen wrote: > > Add ast2600-i2cv2 compatible and aspeed,global-regs, aspeed,timeout > > aspeed,xfer-mode description for ast2600-i2cv2. > > > > Signed-off-by: Ryan Chen <ryan_chen@aspeedtech.com> > > --- > > .../devicetree/bindings/i2c/aspeed,i2c.yaml | 44 > +++++++++++++++++++ > > 1 file changed, 44 insertions(+) > > > > diff --git a/Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml > > b/Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml > > index f597f73ccd87..75de3ce41cf5 100644 > > --- a/Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml > > +++ b/Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml > > @@ -49,6 +49,25 @@ properties: > > description: > > states that there is another master active on this bus > > > > + aspeed,timeout: > > + type: boolean > > + description: I2C bus timeout enable for master/slave mode > > Finally you can proceed with this. Please remove "aspeed,timeout" > and use "i2c-scl-has-clk-low-timeout" instead. Thanks a lot, I will start progress this. Best Regards Ryan
diff --git a/Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml b/Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml index f597f73ccd87..75de3ce41cf5 100644 --- a/Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml +++ b/Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml @@ -49,6 +49,25 @@ properties: description: states that there is another master active on this bus + aspeed,timeout: + type: boolean + description: I2C bus timeout enable for master/slave mode + + aspeed,xfer-mode: + description: | + I2C bus transfer mode selection. + - "byte": I2C bus byte transfer mode. + - "buffered": I2C bus buffer register transfer mode. + - "dma": I2C bus dma transfer mode (default) + items: + enum: [byte, buffered, dma] + maxItems: 1 + $ref: /schemas/types.yaml#/definitions/non-unique-string-array + + aspeed,global-regs: + $ref: /schemas/types.yaml#/definitions/phandle + description: The phandle of i2c global register node. + required: - reg - compatible @@ -57,6 +76,19 @@ required: unevaluatedProperties: false +if: + properties: + compatible: + contains: + const: aspeed,ast2600-i2cv2 + +then: + properties: + reg: + minItems: 2 + required: + - aspeed,global-regs + examples: - | #include <dt-bindings/clock/aspeed-clock.h> @@ -71,3 +103,15 @@ examples: interrupts = <0>; interrupt-parent = <&i2c_ic>; }; + - | + #include <dt-bindings/interrupt-controller/arm-gic.h> + i2c1: i2c@80 { + #address-cells = <1>; + #size-cells = <0>; + compatible = "aspeed,ast2600-i2cv2"; + reg = <0x80 0x80>, <0xc00 0x20>; + interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>; + aspeed,global-regs = <&i2c_global>; + clocks = <&syscon ASPEED_CLK_APB>; + resets = <&syscon ASPEED_RESET_I2C>; + };
Add ast2600-i2cv2 compatible and aspeed,global-regs, aspeed,timeout aspeed,xfer-mode description for ast2600-i2cv2. Signed-off-by: Ryan Chen <ryan_chen@aspeedtech.com> --- .../devicetree/bindings/i2c/aspeed,i2c.yaml | 44 +++++++++++++++++++ 1 file changed, 44 insertions(+)