Re: [PATCH v12 1/2] spi: add loongson spi bindings

From: zhuyinbo
Date: Thu Jun 08 2023 - 07:43:22 EST




在 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@xxxxxxxxxxx>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx>
---
.../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@xxxxxxxxxxx>
+
+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