linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: zhuyinbo <zhuyinbo@loongson.cn>
To: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>,
	Conor Dooley <conor.dooley@microchip.com>
Cc: Mark Brown <broonie@kernel.org>, Rob Herring <robh+dt@kernel.org>,
	Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	linux-spi@vger.kernel.org, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org, Jianmin Lv <lvjianmin@loongson.cn>,
	wanghongliang@loongson.cn, Liu Peibao <liupeibao@loongson.cn>,
	loongson-kernel@lists.loongnix.cn, zhuyinbo@loongson.cn
Subject: Re: [PATCH v11 1/2] dt-bindings: spi: add loongson spi
Date: Thu, 1 Jun 2023 17:51:51 +0800	[thread overview]
Message-ID: <1b141df2-3e31-089e-1e05-0e268b60d074@loongson.cn> (raw)
In-Reply-To: <2196dd29-93ee-00f7-65b4-ede73aa8ba77@linaro.org>



在 2023/6/1 上午3:46, Krzysztof Kozlowski 写道:
> On 25/05/2023 04:22, zhuyinbo wrote:
>>
>>
>> 在 2023/5/24 下午6:29, Conor Dooley 写道:
>>> On Wed, May 24, 2023 at 05:44:38PM +0800, zhuyinbo wrote:
>>>>
>>>>
>>>> 在 2023/5/24 下午4:56, Conor Dooley 写道:
>>>>> On Mon, May 22, 2023 at 03:10:29PM +0800, Yinbo Zhu wrote:
>>>>>> Add the Loongson platform spi binding with DT schema format using
>>>>>> json-schema.
>>>>>>
>>>>>> Signed-off-by: Yinbo Zhu <zhuyinbo@loongson.cn>
>>>>>> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
>>>>>> ---
>>>>>>     .../bindings/spi/loongson,ls2k-spi.yaml       | 41 +++++++++++++++++++
>>>>>>     MAINTAINERS                                   |  6 +++
>>>>>>     2 files changed, 47 insertions(+)
>>>>>>     create mode 100644 Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml
>>>>>>
>>>>>> diff --git a/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml b/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml
>>>>>> new file mode 100644
>>>>>> index 000000000000..d0be6e5378d7
>>>>>> --- /dev/null
>>>>>> +++ b/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml
>>>>>> @@ -0,0 +1,41 @@
>>>>>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
>>>>>> +%YAML 1.2
>>>>>> +---
>>>>>> +$id: http://devicetree.org/schemas/spi/loongson,ls2k-spi.yaml#
>>>>>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>>>>>> +
>>>>>> +title: Loongson SPI controller
>>>>>> +
>>>>>> +maintainers:
>>>>>> +  - Yinbo Zhu <zhuyinbo@loongson.cn>
>>>>>> +
>>>>>> +allOf:
>>>>>> +  - $ref: /schemas/spi/spi-controller.yaml#
>>>>>> +
>>>>>> +properties:
>>>>>> +  compatible:
>>>>>> +    enum:
>>>>>> +      - loongson,ls2k-spi
>>>>>
>>>>> I am sorry to jump in here at such a late stage with a (potentially)
>>>>> trivial question. "ls2k" is the SoC family rather than a specific model
>>>>> as far as I understand.
>>>>> The answer is probably yes, but do all SoCs in the family have an
>>>>> identical version of the IP?
>>>>
>>>>
>>>> No, but the spi supported by this loongson spi driver are all the same
>>>> identical version, and other type or verion spi will be supported as
>>>> needed in the future.
>>>
>>> Does having a catch-all compatible make sense then when not all SoCs in
>>> the ls2k family will actually be able to use this driver?
>>
>>
>> Yes, it is make sense as it can reduce the workload of the community.
>> For the Loongson platform, the versions of spi peripherals are almost
>> the same, except for a few  or individual SoCs.  And we have also
>> discussed compatible internally, and we tend to define it this way.
> 
> So you have chosen different path than what's clearly recommended by
> community, existing experience and documentation:
> 
> https://elixir.bootlin.com/linux/v6.1-rc1/source/Documentation/devicetree/bindings/writing-bindings.rst#L42
> 
> Family names are not accepted as specific compatibles. Whenever they
> were accepted, it lead to problems. All the time.


Thank you for your documentation and advice and the Loongson platform
have loongson-2h (ls2h), loongson-2k (ls2k), loongson-2p (ls2p) or other
series SoC, which loongson-2 seems to be the family name you mentioned
and the "loongson,ls2k-spi" should be a speific compatible name.

> 
> https://lore.kernel.org/all/20220822181701.GA89665-robh@kernel.org/
> https://lore.kernel.org/all/78651e07-6b3e-4243-8e1f-fcd1dfb3ffe1@www.fastmail.com/
> https://lore.kernel.org/all/288f56ba9cfad46354203b7698babe91@walle.cc/
> https://lore.kernel.org/all/106e443a-e765-51fe-b556-e4e7e2aa771c@linaro.org/
> and many many more discussions.
> 
> You should choose carefully, because we will keep NAK-ing adding
> properties to circumvent missing compatibles.


I have read the documention and patch link that you mentioned and it
seems to advice that We don't have wildcard names in the compatible
string and use wildcard names that will cause issue. and the compatible
"loongson,ls2k-spi" that wasn't a wildcard names, and if the loongson-2k
spi controller hardware upgraded or changed the I will use
"loongson,ls2k-spi-version" as a compatible, such as,
"loongson,ls2k-spi-v1.1", "loongson,ls2k-spi-v1.1a" or other.

>>
>>> Or am I misunderstanding and all ls2k SoCs do work with this driver and
>>> you were talking about other, future products?
>>
>> Actually, in 2k500 has one special type spi was only one cs and their's
>> register definition was different from common type spi thus this driver
>> doesn't support but this driver can support another common type spi in
>> 2k500.  for this special type spi I will add support as needed in the
>> future.
> 
> Bindings are for hardware, not driver. What does your driver support or
> does not, matters less.


okay, I got it, and the loongson spi bindings was for loongson spi
controller hardware. if the spi controller hardware not changed in
different ls2k SoC and the spi compatible should be same thus loongson
spi compatible seems to be adhere to the bindings aggrement.

Thanks


  parent reply	other threads:[~2023-06-01  9:52 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-05-22  7:10 [PATCH v11 0/2] spi: loongson: add bus driver for the loongson spi Yinbo Zhu
2023-05-22  7:10 ` [PATCH v11 1/2] dt-bindings: spi: add " Yinbo Zhu
2023-05-24  8:56   ` Conor Dooley
2023-05-24  9:44     ` zhuyinbo
2023-05-24 10:29       ` Conor Dooley
2023-05-25  2:22         ` zhuyinbo
     [not found]           ` <2196dd29-93ee-00f7-65b4-ede73aa8ba77@linaro.org>
2023-06-01  9:51             ` zhuyinbo [this message]
2023-06-01 15:30               ` Krzysztof Kozlowski
2023-06-02  6:46                 ` zhuyinbo
     [not found]           ` <69d355ff-90e1-09d2-d4ff-0d7dedc8addb@linaro.org>
2023-06-01 11:38             ` zhuyinbo
2023-05-22  7:10 ` [PATCH v11 2/2] spi: loongson: add bus driver for the loongson spi controller Yinbo Zhu
2023-05-23 12:54   ` andy.shevchenko
2023-05-24  7:52     ` zhuyinbo
2023-05-24  8:42       ` Andy Shevchenko
2023-05-24 10:19         ` Mark Brown
2023-05-25  3:34         ` zhuyinbo
2023-05-25  9:16           ` Andy Shevchenko
2023-05-25  9:28             ` zhuyinbo
2023-05-22 10:34 ` [PATCH v11 0/2] spi: loongson: add bus driver for the loongson spi Mark Brown
2023-05-22 11:44   ` zhuyinbo
2023-05-22 11:56     ` Mark Brown
2023-05-22 13:07       ` zhuyinbo
2023-05-22 13:10         ` Mark Brown
2023-05-23  2:08           ` zhuyinbo
2023-05-23  9:57             ` Mark Brown
2023-05-23 11:01               ` zhuyinbo
2023-07-31 19:57 ` Mark Brown

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=1b141df2-3e31-089e-1e05-0e268b60d074@loongson.cn \
    --to=zhuyinbo@loongson.cn \
    --cc=broonie@kernel.org \
    --cc=conor.dooley@microchip.com \
    --cc=devicetree@vger.kernel.org \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=krzysztof.kozlowski@linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-spi@vger.kernel.org \
    --cc=liupeibao@loongson.cn \
    --cc=loongson-kernel@lists.loongnix.cn \
    --cc=lvjianmin@loongson.cn \
    --cc=robh+dt@kernel.org \
    --cc=wanghongliang@loongson.cn \
    /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;
as well as URLs for NNTP newsgroup(s).