From: Lars Povlsen <lars.povlsen@microchip.com>
To: Rob Herring <robh@kernel.org>
Cc: Lars Povlsen <lars.povlsen@microchip.com>,
Mark Brown <broonie@kernel.org>, Peter Rosin <peda@axentia.se>,
"Microchip Linux Driver Support" <UNGLinuxDriver@microchip.com>,
<linux-spi@vger.kernel.org>, <devicetree@vger.kernel.org>,
<linux-kernel@vger.kernel.org>,
<linux-arm-kernel@lists.infradead.org>,
Serge Semin <fancer.lancer@gmail.com>,
Serge Semin <Sergey.Semin@baikalelectronics.ru>
Subject: Re: [PATCH v3 6/8] dt-bindings: microchip,sparx5-spi-mux: Add Sparx5 SPI mux driver bindings
Date: Tue, 14 Jul 2020 10:52:01 +0200 [thread overview]
Message-ID: <87y2nmjx72.fsf@soft-dev15.microsemi.net> (raw)
In-Reply-To: <20200713192902.GA587038@bogus>
Rob Herring writes:
> On Thu, Jul 02, 2020 at 12:13:29PM +0200, Lars Povlsen wrote:
>> The Microchip Sparx5 SPI controller has two bus segments, and use this
>> mux to control the bus interface mapping for any chip selects. This
>> decribes the bindings used to configure the mux driver.
>>
>> Signed-off-by: Lars Povlsen <lars.povlsen@microchip.com>
>> ---
>> .../mux/microchip,sparx5-spi-mux.yaml | 71 +++++++++++++++++++
>> 1 file changed, 71 insertions(+)
>> create mode 100644 Documentation/devicetree/bindings/mux/microchip,sparx5-spi-mux.yaml
>>
>> diff --git a/Documentation/devicetree/bindings/mux/microchip,sparx5-spi-mux.yaml b/Documentation/devicetree/bindings/mux/microchip,sparx5-spi-mux.yaml
>> new file mode 100644
>> index 0000000000000..b0ce3b15a69e5
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/mux/microchip,sparx5-spi-mux.yaml
>> @@ -0,0 +1,71 @@
>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/mux/microchip,sparx5-spi-mux.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: Microchip Sparx5 SPI mux
>> +
>> +maintainers:
>> + - Lars Povlsen <lars.povlsen@microchip.com>
>> +
>> +description: |
>> + The Microchip Sparx5 SPI controller has two bus segments. In order
>> + to switch between the appropriate bus for any given SPI slave
>> + (defined by a chip select), this mux driver is used. The device tree
>> + node for the mux will define the bus mapping for any chip
>> + selects. The default bus mapping for any chip select is "0", such
>> + that only non-default mappings need to be explicitly defined.
>> +
>> +properties:
>> + compatible:
>> + enum:
>> + - microchip,sparx5-spi-mux
>> +
>> + '#address-cells':
>> + const: 1
>> +
>> + '#size-cells':
>> + const: 0
>> +
>> + '#mux-control-cells':
>> + const: 0
>> +
>> +required:
>> + - compatible
>> +
>> +additionalProperties: false
>> +
>> +patternProperties:
>> + "^mux@[0-9a-f]$":
>> + type: object
>> +
>> + properties:
>> + reg:
>> + description:
>> + Chip select to define bus mapping for.
>> + minimum: 0
>> + maximum: 15
>> +
>> + microchip,bus-interface:
>> + description:
>> + The bus interface to use for this chip select.
>> + $ref: /schemas/types.yaml#/definitions/uint32
>> + enum: [0, 1]
>> +
>> + required:
>> + - reg
>> + - microchip,bus-interface
>> +
>> +examples:
>> + - |
>> + mux: mux-controller {
>> + compatible = "microchip,sparx5-spi-mux";
>> + #address-cells = <1>;
>> + #size-cells = <0>;
>> + #mux-control-cells = <0>;
>
> How is this mux accessed? You have no control interface defined.
>
>> + mux@e {
>> + reg = <14>;
>> + microchip,bus-interface = <1>;
>
> This looks odd. I take it that there's 2 muxes for this h/w? If so then
> #mux-control-cells should be 1 and the cell value can be whatever you
> want that is meaningful for the mux controller. Could be 0,1 or perhaps
> 0xe if that's more useful.
>
Rob,
The intended use was for the SPI driver to use mux_control_select(mux,
<cs>) and then have the mux driver translate the <cs> to the right bus
interface, according to its configuration. The SPI driver would have a
"mux-controls" property bound to this mux.
Anyway, I am getting pushed in the direction of using the "mux-mmio" and
"spi-mux" combo, so this driver and bindings are being dropped again.
I am currently awaiting the "rx-sample-delay-ns" issue to be clarified
such that I can refresh the series.
Thank you for your comments!
> Rob
--
Lars Povlsen,
Microchip
next prev parent reply other threads:[~2020-07-14 8:52 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-07-02 10:13 [PATCH v3 0/8] spi: Adding support for Microchip Sparx5 SoC Lars Povlsen
2020-07-02 10:13 ` [PATCH v3 1/8] spi: dw: Add support for RX sample delay register Lars Povlsen
2020-07-02 10:13 ` [PATCH v3 2/8] arm64: dts: sparx5: Add SPI controller and SPI mux Lars Povlsen
2020-07-02 10:13 ` [PATCH v3 3/8] spi: dw: Add Microchip Sparx5 support Lars Povlsen
2020-07-02 10:13 ` [PATCH v3 4/8] mux: sparx5: Add Sparx5 SPI mux driver Lars Povlsen
2020-07-02 11:33 ` Lars Povlsen
2020-07-02 11:36 ` Peter Rosin
2020-07-03 9:14 ` Lars Povlsen
2020-07-02 10:13 ` [PATCH v3 5/8] dt-bindings: snps,dw-apb-ssi: Add sparx5 support, plus snps,rx-sample-delay-ns property Lars Povlsen
2020-07-13 19:22 ` Rob Herring
2020-07-13 19:52 ` Serge Semin
2020-07-14 8:30 ` Lars Povlsen
2020-07-02 10:13 ` [PATCH v3 6/8] dt-bindings: microchip,sparx5-spi-mux: Add Sparx5 SPI mux driver bindings Lars Povlsen
2020-07-13 19:29 ` Rob Herring
2020-07-14 8:52 ` Lars Povlsen [this message]
2020-07-02 10:13 ` [PATCH v3 7/8] arm64: dts: sparx5: Add spi-nor support Lars Povlsen
2020-07-02 10:13 ` [PATCH v3 8/8] arm64: dts: sparx5: Add spi-nand devices Lars Povlsen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87y2nmjx72.fsf@soft-dev15.microsemi.net \
--to=lars.povlsen@microchip.com \
--cc=Sergey.Semin@baikalelectronics.ru \
--cc=UNGLinuxDriver@microchip.com \
--cc=broonie@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=fancer.lancer@gmail.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-spi@vger.kernel.org \
--cc=peda@axentia.se \
--cc=robh@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox