| Message ID | 20260513-upstream_i2c-v29-1-fe9926964d55@aspeedtech.com |
|---|---|
| State | New |
| Headers | show |
| Series | Add ASPEED AST2600 I2C controller driver | expand |
On Wed, 13 May 2026 13:32:00 +0800, Ryan Chen wrote: > The AST2600 I2C controller introduces a completely new register layout > with separate controller and target register blocks, unlike the mixed > register layout used by AST2400/AST2500. > > Move AST2600 I2C binding from aspeed,i2c.yaml to a dedicated > aspeed,ast2600-i2c.yaml schema. > > Besides the split, this also adjusts for AST2600-specific requirements. > - require two reg regions (controller register block + buffer block) > - use clock-frequency for bus speed description > - interrupts are required on AST2600 > - use correct DTS coding style in example > > No compatible strings are changed. > > Signed-off-by: Ryan Chen <ryan_chen@aspeedtech.com> > --- > Changes in v26: > - commit message: include details of changes from original binding > - fix example property ordering to follow DTS coding style > - use consistent "AST2600" naming > --- > .../bindings/i2c/aspeed,ast2600-i2c.yaml | 62 ++++++++++++++++++++++ > .../devicetree/bindings/i2c/aspeed,i2c.yaml | 3 +- > 2 files changed, 63 insertions(+), 2 deletions(-) > Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
diff --git a/Documentation/devicetree/bindings/i2c/aspeed,ast2600-i2c.yaml b/Documentation/devicetree/bindings/i2c/aspeed,ast2600-i2c.yaml new file mode 100644 index 000000000000..de2c359037da --- /dev/null +++ b/Documentation/devicetree/bindings/i2c/aspeed,ast2600-i2c.yaml @@ -0,0 +1,62 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/i2c/aspeed,ast2600-i2c.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: ASPEED I2C on the AST2600 SoCs + +maintainers: + - Ryan Chen <ryan_chen@aspeedtech.com> + +allOf: + - $ref: /schemas/i2c/i2c-controller.yaml# + +properties: + compatible: + enum: + - aspeed,ast2600-i2c-bus + + reg: + items: + - description: controller registers + - description: controller buffer space + + interrupts: + maxItems: 1 + + clocks: + maxItems: 1 + + clock-frequency: + description: Desired operating frequency of the I2C bus in Hz. + minimum: 500 + maximum: 4000000 + default: 100000 + + resets: + maxItems: 1 + +required: + - reg + - compatible + - clocks + - resets + - interrupts + +unevaluatedProperties: false + +examples: + - | + #include <dt-bindings/clock/aspeed-clock.h> + #include <dt-bindings/interrupt-controller/arm-gic.h> + i2c@80 { + compatible = "aspeed,ast2600-i2c-bus"; + reg = <0x80 0x80>, <0xc00 0x20>; + #address-cells = <1>; + #size-cells = <0>; + clocks = <&syscon ASPEED_CLK_APB>; + resets = <&syscon ASPEED_RESET_I2C>; + clock-frequency = <100000>; + interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>; + }; diff --git a/Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml b/Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml index 5b9bd2feda3b..d4e4f412feba 100644 --- a/Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml +++ b/Documentation/devicetree/bindings/i2c/aspeed,i2c.yaml @@ -4,7 +4,7 @@ $id: http://devicetree.org/schemas/i2c/aspeed,i2c.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# -title: ASPEED I2C on the AST24XX, AST25XX, and AST26XX SoCs +title: ASPEED I2C on the AST24XX, AST25XX SoCs maintainers: - Rayn Chen <rayn_chen@aspeedtech.com> @@ -17,7 +17,6 @@ properties: enum: - aspeed,ast2400-i2c-bus - aspeed,ast2500-i2c-bus - - aspeed,ast2600-i2c-bus reg: minItems: 1
The AST2600 I2C controller introduces a completely new register layout with separate controller and target register blocks, unlike the mixed register layout used by AST2400/AST2500. Move AST2600 I2C binding from aspeed,i2c.yaml to a dedicated aspeed,ast2600-i2c.yaml schema. Besides the split, this also adjusts for AST2600-specific requirements. - require two reg regions (controller register block + buffer block) - use clock-frequency for bus speed description - interrupts are required on AST2600 - use correct DTS coding style in example No compatible strings are changed. Signed-off-by: Ryan Chen <ryan_chen@aspeedtech.com> --- Changes in v26: - commit message: include details of changes from original binding - fix example property ordering to follow DTS coding style - use consistent "AST2600" naming --- .../bindings/i2c/aspeed,ast2600-i2c.yaml | 62 ++++++++++++++++++++++ .../devicetree/bindings/i2c/aspeed,i2c.yaml | 3 +- 2 files changed, 63 insertions(+), 2 deletions(-)