Re: [PATCH v2 2/2] i2c: aspeed: added documentation for Aspeed I2C driver

Brendan Higgins
2016-09-20T23:03:49Z

To be clear, these bus numbers are defined as part of the hardware
specification. I am not sure if that was clear before.

On Tue, Sep 20, 2016 at 11:08 AM, Brendan Higgins
<brendanhiggins@google.com> wrote:
> (sorry if you get a duplicate, I forgot to send plain text)
>
> First off, someone pointed out to me that the mapping that I used
> between addresses and bus numbers is not actually valid for busses
> 8-14.
>
> This could be fixed by checking the offset, but I am wondering if that
> is the right way to do it. It seems like this is not completely
> trivial so maybe this should be specified in the device tree? If that
> is the case, should I do this as another reg entry or go back to the
> way I was doing it before?
>
> On Mon, Sep 19, 2016 at 4:26 PM, Brendan Higgins
> <brendanhiggins@google.com> wrote:
>> Addressed in v3.
>>
>> Thanks!
>>
>> On Mon, Sep 19, 2016 at 2:35 PM, Rob Herring <robh@kernel.org> wrote:
>>> On Fri, Sep 09, 2016 at 06:55:51PM -0700, Brendan Higgins wrote:
>>>> Added device tree binding documentation for Aspeed I2C controller and
>>>> busses.
>>>>
>>>> Signed-off-by: Brendan Higgins <brendanhiggins@google.com>
>>>> ---
>>>> Changes for v2:
>>>> - None
>>>> ---
>>>> .../devicetree/bindings/i2c/i2c-aspeed.txt | 63 ++++++++++++++++++++++
>>>> 1 file changed, 63 insertions(+)
>>>> create mode 100644 Documentation/devicetree/bindings/i2c/i2c-aspeed.txt
>>>>
>>>> diff --git a/Documentation/devicetree/bindings/i2c/i2c-aspeed.txt b/Documentation/devicetree/bindings/i2c/i2c-aspeed.txt
>>>> new file mode 100644
>>>> index 0000000..df68f2a
>>>> --- /dev/null
>>>> +++ b/Documentation/devicetree/bindings/i2c/i2c-aspeed.txt
>>>> @@ -0,0 +1,63 @@
>>>> +Device tree configuration for the I2C controller and busses on the AST24XX
>>>> +and AST25XX SoCs.
>>>> +
>>>> +Controller:
>>>> +
>>>> + Required Properties:
>>>> + - #address-cells : should be 1
>>>> + - #size-cells : should be 1
>>>> + - #interrupt-cells : should be 1
>>>> + - compatible : should be "aspeed,ast2400-i2c-controller"
>>>> + or "aspeed,ast2500-i2c-controller"
>>>> + - reg : address start and range of controller
>>>> + - ranges : defines address offset and range for busses
>>>> + - interrupts : interrupt number
>>>> + - clocks : root clock of bus, should reference the APB
>>>> + clock
>>>> + - clock-ranges : specifies that child busses can inherit clocks
>>>> + - interrupt-controller : denotes that the controller receives and fires
>>>> + new interrupts for child busses
>>>> +
>>>> +Bus:
>>>> +
>>>> + Required Properties:
>>>> + - #address-cells : should be 1
>>>> + - #size-cells : should be 0
>>>> + - reg : address offset and range of bus
>>>> + - compatible : should be "aspeed,ast2400-i2c-bus"
>>>> + or "aspeed,ast2500-i2c-bus"
>>>> + - bus : the bus's number
>>>
>>> Don't use indexes. The reg property is enough to id which bus is which.