Messages in this thread | | | Subject | Re: [PATCH 03/16] dt-bindings: spi: Add spi peripheral specific property | From | William Zhang <> | Date | Mon, 9 Jan 2023 00:06:13 -0800 |
| |
Hi Rob,
On 01/07/2023 07:38 AM, Rob Herring wrote: > On Fri, Jan 6, 2023 at 9:27 PM William Zhang <william.zhang@broadcom.com> wrote: >> >> Hi Mark, >> >> On 01/06/2023 01:14 PM, Mark Brown wrote: >>> On Fri, Jan 06, 2023 at 12:07:55PM -0800, William Zhang wrote: >>> >>>> brcm,no-clk-gate is a Broadcom Broadband HS SPI controller specific >>>> property for certain SPI device such as Broadcom ISI voice daughtercard >>>> to work properly. It disables the clock gating feature when the chip >>>> select is deasserted for any device that wants to keep the clock >>>> running. >>> >>> Why would this property be Broadcom specific? Other devices could in >>> theory implement this. >>> >> It does not need to be Broadcom specific if other SoC's SPI bus >> controller support such function. I am not aware of such case but >> certainly I am no expert on other chips. I can put it in the generic >> spi-peripheral-props.yaml if that is what you suggest. >> >>>> +properties: >>>> + brcm,no-clk-gate: >>>> + $ref: /schemas/types.yaml#/definitions/flag >>>> + description: >>>> + Some SPI device such as Broadcom ISI based voice daughtercard requires SPI >>>> + clock running even when chip select is deasserted. By default the >>>> + controller turns off or gate the clock when cs is not active to save >>>> + power. This flag tells the controller driver to keep the clock running >>>> + when chip select is not active. >>> >>> This seems problematic with any host controlled chip select support... >>> >> Yes those ISI chip based voice cards do need such strange requirement >> and will not work with other controller. That is one of the reason I >> put this as Broadcom specific option. > > Keeping the clock on or not would affect all devices unless you have a > per device clock you can gate, so making this a per device flag > doesn't make sense. > This applies only to each chip select. There is only one device under each chip select. So won't impact any other devices under other cs.
> If this is a requirement of the slave device, then the device's > compatible string can imply the need for this and its driver can tell > the host controller in some way. That is true but spi host controller driver reads and parses these slave device flag directly. > > Rob > [unhandled content-type:application/pkcs7-signature] | |