Message ID | 20230608072819.25930-2-zhuyinbo@loongson.cn |
---|---|
State | Superseded |
Headers | show |
Series | spi: loongson: add bus driver for the loongson spi | expand |
On 08/06/2023 09:28, Yinbo Zhu wrote: > Add the Loongson platform spi binding with DT schema format using > json-schema. Please use subject prefixes matching the subsystem. You can get them for example with `git log --oneline -- DIRECTORY_OR_FILE` on the directory your patch is touching. The prefix for SPI should be: "spi: dt-bindings: ". In the same time last "bindings" are redundant. > > 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..423ee851edd5 > --- /dev/null > +++ b/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml Filename based on compatible. > @@ -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,ls2k1000-spi No compatibles for other devices? Didn't we have big discussion about this? https://elixir.bootlin.com/linux/v6.1-rc1/source/Documentation/devicetree/bindings/writing-bindings.rst#L42 Best regards, Krzysztof
在 2023/6/8 下午3:45, Krzysztof Kozlowski 写道: > On 08/06/2023 09:28, Yinbo Zhu wrote: >> Add the Loongson platform spi binding with DT schema format using >> json-schema. > > Please use subject prefixes matching the subsystem. You can get them for > example with `git log --oneline -- DIRECTORY_OR_FILE` on the directory > your patch is touching. > > The prefix for SPI should be: "spi: dt-bindings: ". In the same time > last "bindings" are redundant. okay, I got it. > >> >> 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..423ee851edd5 >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml > > Filename based on compatible. There will be more ls2k series SoC spi device in the future thus I still use "loongson,ls2k-spi.yaml" for cover it. > >> @@ -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,ls2k1000-spi > > No compatibles for other devices? Didn't we have big discussion about this? > > https://elixir.bootlin.com/linux/v6.1-rc1/source/Documentation/devicetree/bindings/writing-bindings.rst#L42 There are other ls2k SPI devices compatible, such as, "loongson,ls2k0500-spi", "loongson,ls2k2000-spi" but currently I plan to add ls2k1000 spi device first, Other ls2k SoC spi device adaptation may require some additional work and I will add it later. Thanks
On 08/06/2023 10:39, zhuyinbo wrote: >>> >>> 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..423ee851edd5 >>> --- /dev/null >>> +++ b/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml >> >> Filename based on compatible. > > > There will be more ls2k series SoC spi device in the future thus I still > use "loongson,ls2k-spi.yaml" for cover it. Add them now. > >> >>> @@ -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,ls2k1000-spi >> >> No compatibles for other devices? Didn't we have big discussion about this? >> >> https://elixir.bootlin.com/linux/v6.1-rc1/source/Documentation/devicetree/bindings/writing-bindings.rst#L42 > > > There are other ls2k SPI devices compatible, such as, > "loongson,ls2k0500-spi", "loongson,ls2k2000-spi" but currently I plan to > add ls2k1000 spi device first, Other ls2k SoC spi device adaptation may > require some additional work and I will add it later. Previously you claimed this serves entire family, so I don't understand why you need to fix something. Why previously it was working for entire family but now it does not? Best regards, Krzysztof
在 2023/6/8 下午4:53, Krzysztof Kozlowski 写道: > On 08/06/2023 10:39, zhuyinbo wrote: >>>> >>>> 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..423ee851edd5 >>>> --- /dev/null >>>> +++ b/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml >>> >>> Filename based on compatible. >> >> >> There will be more ls2k series SoC spi device in the future thus I still >> use "loongson,ls2k-spi.yaml" for cover it. > > Add them now. The 2k0500 doesn't support CCF and not use CCF to gain clock and We internally tend to prioritize supporting 2k1000. > >> >>> >>>> @@ -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,ls2k1000-spi >>> >>> No compatibles for other devices? Didn't we have big discussion about this? >>> >>> https://elixir.bootlin.com/linux/v6.1-rc1/source/Documentation/devicetree/bindings/writing-bindings.rst#L42 >> >> >> There are other ls2k SPI devices compatible, such as, >> "loongson,ls2k0500-spi", "loongson,ls2k2000-spi" but currently I plan to >> add ls2k1000 spi device first, Other ls2k SoC spi device adaptation may >> require some additional work and I will add it later. > > Previously you claimed this serves entire family, so I don't understand > why you need to fix something. Why previously it was working for entire > family but now it does not? It can work was for ls2k1000 and ls2k0500 and it specifically refers to spi driver. but 2k0500 doesn't implementing a clock driver and doesn't use CCF to gain clock but can use "clock-frequency". Is it necessary to obtain a clock based on CCF? If it's necessary, then it seems that it can only added 2k1000 spi first. Thanks, Yinbo
On 08/06/2023 12:00, zhuyinbo wrote: > > > 在 2023/6/8 下午4:53, Krzysztof Kozlowski 写道: >> On 08/06/2023 10:39, zhuyinbo wrote: >>>>> >>>>> 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..423ee851edd5 >>>>> --- /dev/null >>>>> +++ b/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml >>>> >>>> Filename based on compatible. >>> >>> >>> There will be more ls2k series SoC spi device in the future thus I still >>> use "loongson,ls2k-spi.yaml" for cover it. >> >> Add them now. > > > The 2k0500 doesn't support CCF and not use CCF to gain clock and We > internally tend to prioritize supporting 2k1000. Don't you refer now to drivers? Because how hardware can not support clocks if it has them? How CCF is anyhow related to hardware? > >> >>> >>>> >>>>> @@ -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,ls2k1000-spi >>>> >>>> No compatibles for other devices? Didn't we have big discussion about this? >>>> >>>> https://elixir.bootlin.com/linux/v6.1-rc1/source/Documentation/devicetree/bindings/writing-bindings.rst#L42 >>> >>> >>> There are other ls2k SPI devices compatible, such as, >>> "loongson,ls2k0500-spi", "loongson,ls2k2000-spi" but currently I plan to >>> add ls2k1000 spi device first, Other ls2k SoC spi device adaptation may >>> require some additional work and I will add it later. >> >> Previously you claimed this serves entire family, so I don't understand >> why you need to fix something. Why previously it was working for entire >> family but now it does not? > > > It can work was for ls2k1000 and ls2k0500 and it specifically refers to > spi driver. but 2k0500 doesn't implementing a clock driver and doesn't We do not discuss here drivers, but bindings. Whatever your drivers are not supporting, matters less. > use CCF to gain clock but can use "clock-frequency". Is it necessary to > obtain a clock based on CCF? If it's necessary, then it seems that it > can only added 2k1000 spi first. Not related to bindings... Best regards, Krzysztof
在 2023/6/8 下午6:02, Krzysztof Kozlowski 写道: > On 08/06/2023 12:00, zhuyinbo wrote: >> >> >> 在 2023/6/8 下午4:53, Krzysztof Kozlowski 写道: >>> On 08/06/2023 10:39, zhuyinbo wrote: >>>>>> >>>>>> 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..423ee851edd5 >>>>>> --- /dev/null >>>>>> +++ b/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml >>>>> >>>>> Filename based on compatible. >>>> >>>> >>>> There will be more ls2k series SoC spi device in the future thus I still >>>> use "loongson,ls2k-spi.yaml" for cover it. >>> >>> Add them now. >> >> >> The 2k0500 doesn't support CCF and not use CCF to gain clock and We >> internally tend to prioritize supporting 2k1000. > > Don't you refer now to drivers? Because how hardware can not support > clocks if it has them? How CCF is anyhow related to hardware? The CCF (common clock framework) driver only affects the clock parameter pass method and isn't related to clock hardware. and if dts pass a "clock-frequency" that not need a clock driver but if dts pass a "clocks" that need a clock driver. Currently, only 2k1000 has implemented a clock driver. > >> >>> >>>> >>>>> >>>>>> @@ -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,ls2k1000-spi >>>>> >>>>> No compatibles for other devices? Didn't we have big discussion about this? >>>>> >>>>> https://elixir.bootlin.com/linux/v6.1-rc1/source/Documentation/devicetree/bindings/writing-bindings.rst#L42 >>>> >>>> >>>> There are other ls2k SPI devices compatible, such as, >>>> "loongson,ls2k0500-spi", "loongson,ls2k2000-spi" but currently I plan to >>>> add ls2k1000 spi device first, Other ls2k SoC spi device adaptation may >>>> require some additional work and I will add it later. >>> >>> Previously you claimed this serves entire family, so I don't understand >>> why you need to fix something. Why previously it was working for entire >>> family but now it does not? >> >> >> It can work was for ls2k1000 and ls2k0500 and it specifically refers to >> spi driver. but 2k0500 doesn't implementing a clock driver and doesn't > > We do not discuss here drivers, but bindings. Whatever your drivers are > not supporting, matters less. > >> use CCF to gain clock but can use "clock-frequency". Is it necessary to >> obtain a clock based on CCF? If it's necessary, then it seems that it >> can only added 2k1000 spi first. > > Not related to bindings... I may understand that what you said, and the dt-bindings only cover hardware and not involve the drivers. if so, I will add following: --- a/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml +++ b/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml @@ -16,6 +16,7 @@ properties: compatible: enum: - loongson,ls2k1000-spi + - loongson,ls2k0500-spi Thanks, Yinbo
On 08/06/2023 13:42, zhuyinbo wrote: >> >>> It can work was for ls2k1000 and ls2k0500 and it specifically refers to >>> spi driver. but 2k0500 doesn't implementing a clock driver and doesn't >> >> We do not discuss here drivers, but bindings. Whatever your drivers are >> not supporting, matters less. >> >>> use CCF to gain clock but can use "clock-frequency". Is it necessary to >>> obtain a clock based on CCF? If it's necessary, then it seems that it >>> can only added 2k1000 spi first. >> >> Not related to bindings... > > > I may understand that what you said, and the dt-bindings only cover > hardware and not involve the drivers. if so, I will add following: > > > --- a/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml > +++ b/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml > @@ -16,6 +16,7 @@ properties: > compatible: > enum: > - loongson,ls2k1000-spi > + - loongson,ls2k0500-spi Aren't they compatible? Best regards, Krzysztof
在 2023/6/8 下午7:45, Krzysztof Kozlowski 写道: > On 08/06/2023 13:42, zhuyinbo wrote: >> --- a/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml >> +++ b/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml >> @@ -16,6 +16,7 @@ properties: >> compatible: >> enum: >> - loongson,ls2k1000-spi >> + - loongson,ls2k0500-spi > > Aren't they compatible? > Are you saying that the spi driver is compatible with 2k0500 ? Yes. and the 2k1000 spi hardware was same with 2k0500 common type spi hardware. but afterwards, it may be necessary to implement a clock drvier for 2k0500, because the spi driver was use "devm_clk_get_optional()" to get clock and not use "of_property_read_u32(np, "clock-frequency", &clk)", But this seems to have nothing to do with bindings. Thanks, Yinbo
On 08/06/2023 14:10, zhuyinbo wrote: > > > 在 2023/6/8 下午7:45, Krzysztof Kozlowski 写道: >> On 08/06/2023 13:42, zhuyinbo wrote: >>> --- a/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml >>> +++ b/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml >>> @@ -16,6 +16,7 @@ properties: >>> compatible: >>> enum: >>> - loongson,ls2k1000-spi >>> + - loongson,ls2k0500-spi >> >> Aren't they compatible? >> > > > Are you saying that the spi driver is compatible with 2k0500 ? Didn't you say this through 11 previous revisions? > Yes. and the 2k1000 spi hardware was same with 2k0500 common type spi > hardware. > > but afterwards, it may be necessary to implement a clock drvier for > 2k0500, because the spi driver was use "devm_clk_get_optional()" to > get clock and not use "of_property_read_u32(np, "clock-frequency", > &clk)", But this seems to have nothing to do with bindings. > Best regards, Krzysztof
在 2023/6/8 下午9:26, Krzysztof Kozlowski 写道: > On 08/06/2023 14:10, zhuyinbo wrote: >> >> >> 在 2023/6/8 下午7:45, Krzysztof Kozlowski 写道: >>> On 08/06/2023 13:42, zhuyinbo wrote: >>>> --- a/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml >>>> +++ b/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml >>>> @@ -16,6 +16,7 @@ properties: >>>> compatible: >>>> enum: >>>> - loongson,ls2k1000-spi >>>> + - loongson,ls2k0500-spi >>> >>> Aren't they compatible? >>> >> >> >> Are you saying that the spi driver is compatible with 2k0500 ? > > Didn't you say this through 11 previous revisions? Yes, did I understand your meaning incorrectly ? Thanks, Yinbo > >> Yes. and the 2k1000 spi hardware was same with 2k0500 common type spi >> hardware. >> >> but afterwards, it may be necessary to implement a clock drvier for >> 2k0500, because the spi driver was use "devm_clk_get_optional()" to >> get clock and not use "of_property_read_u32(np, "clock-frequency", >> &clk)", But this seems to have nothing to do with bindings.
On 09/06/2023 05:13, zhuyinbo wrote: > > > 在 2023/6/8 下午9:26, Krzysztof Kozlowski 写道: >> On 08/06/2023 14:10, zhuyinbo wrote: >>> >>> >>> 在 2023/6/8 下午7:45, Krzysztof Kozlowski 写道: >>>> On 08/06/2023 13:42, zhuyinbo wrote: >>>>> --- a/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml >>>>> +++ b/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml >>>>> @@ -16,6 +16,7 @@ properties: >>>>> compatible: >>>>> enum: >>>>> - loongson,ls2k1000-spi >>>>> + - loongson,ls2k0500-spi >>>> >>>> Aren't they compatible? >>>> >>> >>> >>> Are you saying that the spi driver is compatible with 2k0500 ? >> >> Didn't you say this through 11 previous revisions? > > > Yes, did I understand your meaning incorrectly ? If they are compatible, then they are not part of one enum. They could not be as this would easily fail in testing of your DTS. Best regards, Krzysztof
在 2023/6/10 上午12:45, Krzysztof Kozlowski 写道: > On 09/06/2023 05:13, zhuyinbo wrote: >> >> >> 在 2023/6/8 下午9:26, Krzysztof Kozlowski 写道: >>> On 08/06/2023 14:10, zhuyinbo wrote: >>>> >>>> >>>> 在 2023/6/8 下午7:45, Krzysztof Kozlowski 写道: >>>>> On 08/06/2023 13:42, zhuyinbo wrote: >>>>>> --- a/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml >>>>>> +++ b/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml >>>>>> @@ -16,6 +16,7 @@ properties: >>>>>> compatible: >>>>>> enum: >>>>>> - loongson,ls2k1000-spi >>>>>> + - loongson,ls2k0500-spi >>>>> >>>>> Aren't they compatible? >>>>> >>>> >>>> >>>> Are you saying that the spi driver is compatible with 2k0500 ? >>> >>> Didn't you say this through 11 previous revisions? >> >> >> Yes, did I understand your meaning incorrectly ? > > If they are compatible, then they are not part of one enum. They could > not be as this would easily fail in testing of your DTS. > The "loongson,ls2k0500-spi" wasn't a compatible in previous version and I will add "loongson,ls2k0500-spi" as a compatible in spi driver and added it as a part of the one enum in dt-binding. Thanks, Yinbo
On 12/06/2023 09:13, zhuyinbo wrote: > > > 在 2023/6/10 上午12:45, Krzysztof Kozlowski 写道: >> On 09/06/2023 05:13, zhuyinbo wrote: >>> >>> >>> 在 2023/6/8 下午9:26, Krzysztof Kozlowski 写道: >>>> On 08/06/2023 14:10, zhuyinbo wrote: >>>>> >>>>> >>>>> 在 2023/6/8 下午7:45, Krzysztof Kozlowski 写道: >>>>>> On 08/06/2023 13:42, zhuyinbo wrote: >>>>>>> --- a/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml >>>>>>> +++ b/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml >>>>>>> @@ -16,6 +16,7 @@ properties: >>>>>>> compatible: >>>>>>> enum: >>>>>>> - loongson,ls2k1000-spi >>>>>>> + - loongson,ls2k0500-spi >>>>>> >>>>>> Aren't they compatible? >>>>>> >>>>> >>>>> >>>>> Are you saying that the spi driver is compatible with 2k0500 ? >>>> >>>> Didn't you say this through 11 previous revisions? >>> >>> >>> Yes, did I understand your meaning incorrectly ? >> >> If they are compatible, then they are not part of one enum. They could >> not be as this would easily fail in testing of your DTS. >> > > > The "loongson,ls2k0500-spi" wasn't a compatible in previous version and > I will add "loongson,ls2k0500-spi" as a compatible in spi driver and > added it as a part of the one enum in dt-binding. No, because you claimed - if I understood correctly - that they are compatible. Don't add fake entries to the driver. Best regards, Krzysztof
在 2023/6/12 下午3:17, Krzysztof Kozlowski 写道: > On 12/06/2023 09:13, zhuyinbo wrote: >> >> >> 在 2023/6/10 上午12:45, Krzysztof Kozlowski 写道: >>> On 09/06/2023 05:13, zhuyinbo wrote: >>>> >>>> >>>> 在 2023/6/8 下午9:26, Krzysztof Kozlowski 写道: >>>>> On 08/06/2023 14:10, zhuyinbo wrote: >>>>>> >>>>>> >>>>>> 在 2023/6/8 下午7:45, Krzysztof Kozlowski 写道: >>>>>>> On 08/06/2023 13:42, zhuyinbo wrote: >>>>>>>> --- a/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml >>>>>>>> +++ b/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml >>>>>>>> @@ -16,6 +16,7 @@ properties: >>>>>>>> compatible: >>>>>>>> enum: >>>>>>>> - loongson,ls2k1000-spi >>>>>>>> + - loongson,ls2k0500-spi >>>>>>> >>>>>>> Aren't they compatible? >>>>>>> >>>>>> >>>>>> >>>>>> Are you saying that the spi driver is compatible with 2k0500 ? >>>>> >>>>> Didn't you say this through 11 previous revisions? >>>> >>>> >>>> Yes, did I understand your meaning incorrectly ? >>> >>> If they are compatible, then they are not part of one enum. They could >>> not be as this would easily fail in testing of your DTS. >>> >> >> >> The "loongson,ls2k0500-spi" wasn't a compatible in previous version and >> I will add "loongson,ls2k0500-spi" as a compatible in spi driver and >> added it as a part of the one enum in dt-binding. > > No, because you claimed - if I understood correctly - that they are > compatible. Don't add fake entries to the driver. > I'm a bit confused, and I just need to add 'loongson,ls2k0500-spi' as one enum in dt-bindings, but driver don't add this entry ? Thanks, Yinbo
On 12/06/2023 09:40, zhuyinbo wrote: > > > 在 2023/6/12 下午3:17, Krzysztof Kozlowski 写道: >> On 12/06/2023 09:13, zhuyinbo wrote: >>> >>> >>> 在 2023/6/10 上午12:45, Krzysztof Kozlowski 写道: >>>> On 09/06/2023 05:13, zhuyinbo wrote: >>>>> >>>>> >>>>> 在 2023/6/8 下午9:26, Krzysztof Kozlowski 写道: >>>>>> On 08/06/2023 14:10, zhuyinbo wrote: >>>>>>> >>>>>>> >>>>>>> 在 2023/6/8 下午7:45, Krzysztof Kozlowski 写道: >>>>>>>> On 08/06/2023 13:42, zhuyinbo wrote: >>>>>>>>> --- a/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml >>>>>>>>> +++ b/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml >>>>>>>>> @@ -16,6 +16,7 @@ properties: >>>>>>>>> compatible: >>>>>>>>> enum: >>>>>>>>> - loongson,ls2k1000-spi >>>>>>>>> + - loongson,ls2k0500-spi >>>>>>>> >>>>>>>> Aren't they compatible? >>>>>>>> >>>>>>> >>>>>>> >>>>>>> Are you saying that the spi driver is compatible with 2k0500 ? >>>>>> >>>>>> Didn't you say this through 11 previous revisions? >>>>> >>>>> >>>>> Yes, did I understand your meaning incorrectly ? >>>> >>>> If they are compatible, then they are not part of one enum. They could >>>> not be as this would easily fail in testing of your DTS. >>>> >>> >>> >>> The "loongson,ls2k0500-spi" wasn't a compatible in previous version and >>> I will add "loongson,ls2k0500-spi" as a compatible in spi driver and >>> added it as a part of the one enum in dt-binding. >> >> No, because you claimed - if I understood correctly - that they are >> compatible. Don't add fake entries to the driver. >> > > > I'm a bit confused, and I just need to add 'loongson,ls2k0500-spi' as > one enum in dt-bindings, but driver don't add this entry ? Compatibility is expressed with a list: https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#compatible so it cannot be just one enum, but "items". There are hundreds of examples including example-schema. Best regards, Krzysztof
在 2023/6/12 下午4:16, Krzysztof Kozlowski 写道: >>>>>>>> 在 2023/6/8 下午7:45, Krzysztof Kozlowski 写道: >>>>>>>>> On 08/06/2023 13:42, zhuyinbo wrote: >>>>>>>>>> --- a/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml >>>>>>>>>> +++ b/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml >>>>>>>>>> @@ -16,6 +16,7 @@ properties: >>>>>>>>>> compatible: >>>>>>>>>> enum: >>>>>>>>>> - loongson,ls2k1000-spi >>>>>>>>>> + - loongson,ls2k0500-spi >>>>>>>>> >>>>>>>>> Aren't they compatible? >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> Are you saying that the spi driver is compatible with 2k0500 ? >>>>>>> >>>>>>> Didn't you say this through 11 previous revisions? >>>>>> >>>>>> >>>>>> Yes, did I understand your meaning incorrectly ? >>>>> >>>>> If they are compatible, then they are not part of one enum. They could >>>>> not be as this would easily fail in testing of your DTS. >>>>> >>>> >>>> >>>> The "loongson,ls2k0500-spi" wasn't a compatible in previous version and >>>> I will add "loongson,ls2k0500-spi" as a compatible in spi driver and >>>> added it as a part of the one enum in dt-binding. >>> >>> No, because you claimed - if I understood correctly - that they are >>> compatible. Don't add fake entries to the driver. >>> >> >> >> I'm a bit confused, and I just need to add 'loongson,ls2k0500-spi' as >> one enum in dt-bindings, but driver don't add this entry ? > > Compatibility is expressed with a list: > https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#compatible > so it cannot be just one enum, but "items". There are hundreds of > examples including example-schema. Is it a description like the following? properties: compatible: - enum: - - loongson,ls2k1000-spi + oneOf: + - enum: + - loongson,ls2k1000-spi + - items: + - enum: + - loongson,ls2k1000-spi + - const: loongson,ls2k1000-spi + - items: + - enum: + - loongson,ls2k0500-spi + - const: loongson,ls2k1000-spi reg: Thanks, Yinbo
On 12/06/2023 13:29, zhuyinbo wrote: > > > 在 2023/6/12 下午4:16, Krzysztof Kozlowski 写道: >>>>>>>>> 在 2023/6/8 下午7:45, Krzysztof Kozlowski 写道: >>>>>>>>>> On 08/06/2023 13:42, zhuyinbo wrote: >>>>>>>>>>> --- a/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml >>>>>>>>>>> +++ b/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml >>>>>>>>>>> @@ -16,6 +16,7 @@ properties: >>>>>>>>>>> compatible: >>>>>>>>>>> enum: >>>>>>>>>>> - loongson,ls2k1000-spi >>>>>>>>>>> + - loongson,ls2k0500-spi >>>>>>>>>> >>>>>>>>>> Aren't they compatible? >>>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> Are you saying that the spi driver is compatible with 2k0500 ? >>>>>>>> >>>>>>>> Didn't you say this through 11 previous revisions? >>>>>>> >>>>>>> >>>>>>> Yes, did I understand your meaning incorrectly ? >>>>>> >>>>>> If they are compatible, then they are not part of one enum. They could >>>>>> not be as this would easily fail in testing of your DTS. >>>>>> >>>>> >>>>> >>>>> The "loongson,ls2k0500-spi" wasn't a compatible in previous version and >>>>> I will add "loongson,ls2k0500-spi" as a compatible in spi driver and >>>>> added it as a part of the one enum in dt-binding. >>>> >>>> No, because you claimed - if I understood correctly - that they are >>>> compatible. Don't add fake entries to the driver. >>>> >>> >>> >>> I'm a bit confused, and I just need to add 'loongson,ls2k0500-spi' as >>> one enum in dt-bindings, but driver don't add this entry ? >> >> Compatibility is expressed with a list: >> https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#compatible >> so it cannot be just one enum, but "items". There are hundreds of >> examples including example-schema. > > > Is it a description like the following? > > properties: > compatible: > - enum: > - - loongson,ls2k1000-spi > + oneOf: > + - enum: > + - loongson,ls2k1000-spi > + - items: > + - enum: > + - loongson,ls2k1000-spi > + - const: loongson,ls2k1000-spi Remove this items part - it does not make sense. Device is not compatible with itself. Rest looks ok. Best regards, Krzysztof
在 2023/6/13 上午2:03, Krzysztof Kozlowski 写道: > On 12/06/2023 13:29, zhuyinbo wrote: >> >> >> 在 2023/6/12 下午4:16, Krzysztof Kozlowski 写道: >>>>>>>>>> 在 2023/6/8 下午7:45, Krzysztof Kozlowski 写道: >>>>>>>>>>> On 08/06/2023 13:42, zhuyinbo wrote: >>>>>>>>>>>> --- a/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml >>>>>>>>>>>> +++ b/Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml >>>>>>>>>>>> @@ -16,6 +16,7 @@ properties: >>>>>>>>>>>> compatible: >>>>>>>>>>>> enum: >>>>>>>>>>>> - loongson,ls2k1000-spi >>>>>>>>>>>> + - loongson,ls2k0500-spi >>>>>>>>>>> >>>>>>>>>>> Aren't they compatible? >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> Are you saying that the spi driver is compatible with 2k0500 ? >>>>>>>>> >>>>>>>>> Didn't you say this through 11 previous revisions? >>>>>>>> >>>>>>>> >>>>>>>> Yes, did I understand your meaning incorrectly ? >>>>>>> >>>>>>> If they are compatible, then they are not part of one enum. They could >>>>>>> not be as this would easily fail in testing of your DTS. >>>>>>> >>>>>> >>>>>> >>>>>> The "loongson,ls2k0500-spi" wasn't a compatible in previous version and >>>>>> I will add "loongson,ls2k0500-spi" as a compatible in spi driver and >>>>>> added it as a part of the one enum in dt-binding. >>>>> >>>>> No, because you claimed - if I understood correctly - that they are >>>>> compatible. Don't add fake entries to the driver. >>>>> >>>> >>>> >>>> I'm a bit confused, and I just need to add 'loongson,ls2k0500-spi' as >>>> one enum in dt-bindings, but driver don't add this entry ? >>> >>> Compatibility is expressed with a list: >>> https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#compatible >>> so it cannot be just one enum, but "items". There are hundreds of >>> examples including example-schema. >> >> >> Is it a description like the following? >> >> properties: >> compatible: >> - enum: >> - - loongson,ls2k1000-spi >> + oneOf: >> + - enum: >> + - loongson,ls2k1000-spi >> + - items: >> + - enum: >> + - loongson,ls2k1000-spi >> + - const: loongson,ls2k1000-spi > > Remove this items part - it does not make sense. Device is not > compatible with itself. Rest looks ok. okay, I got it. Thanks, Yinbo
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..423ee851edd5 --- /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,ls2k1000-spi + + reg: + maxItems: 1 + + clocks: + maxItems: 1 + +required: + - compatible + - reg + - clocks + +unevaluatedProperties: false + +examples: + - | + spi0: spi@1fff0220{ + compatible = "loongson,ls2k1000-spi"; + reg = <0x1fff0220 0x10>; + clocks = <&clk 17>; + #address-cells = <1>; + #size-cells = <0>; + }; diff --git a/MAINTAINERS b/MAINTAINERS index bc201627c2e0..5e604dddd87b 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -12186,6 +12186,12 @@ F: Documentation/devicetree/bindings/clock/loongson,ls2k-clk.yaml F: drivers/clk/clk-loongson2.c F: include/dt-bindings/clock/loongson,ls2k-clk.h +LOONGSON SPI DRIVER +M: Yinbo Zhu <zhuyinbo@loongson.cn> +L: linux-spi@vger.kernel.org +S: Maintained +F: Documentation/devicetree/bindings/spi/loongson,ls2k-spi.yaml + LOONGSON-2 SOC SERIES GUTS DRIVER M: Yinbo Zhu <zhuyinbo@loongson.cn> L: loongarch@lists.linux.dev