Message ID | acebc88db3e5fcd2a2607b56842af7443a6e1289.1704694903.git.unicorn_wang@outlook.com |
---|---|
State | New |
Headers |
Return-Path: <linux-kernel+bounces-19115-ouuuleilei=gmail.com@vger.kernel.org> Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:7300:37c1:b0:101:2151:f287 with SMTP id y1csp862329dyq; Sun, 7 Jan 2024 22:48:59 -0800 (PST) X-Google-Smtp-Source: AGHT+IEWJMIBgknbmglDIBHxIfIf/FNkzfRSPO+o1GU66LgSED7xEIPtCDxlHh6+kaHEcvPD9Yej X-Received: by 2002:a17:902:7804:b0:1d4:e308:d70b with SMTP id p4-20020a170902780400b001d4e308d70bmr3392684pll.92.1704696538875; Sun, 07 Jan 2024 22:48:58 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1704696538; cv=none; d=google.com; s=arc-20160816; b=dkz45W/V/2Pk2b1PZVOVk3XRMfRnBgJOW2bYoJ6k3xqpHVBM1C/e3vzs/dBWXXAzPa dbLKS3iD3f7fciQlRmKAakSf+PEeRwc2Rgf1X/MPi7/AcvofLZ0ZmvRCQF/bRR5fdjlp lvTQ+XeUBnGadZ4NnkhZnDYoqOAN1OxBqYXzbsd0ZQwqS8+1wyQmqXmScELeFALCE2Ks OigPHXVTsvanQPrQrsrwYmIoslXsx4Rto68d7VtWTGzjyPadN62eOta4EbqyNuCzGoko a39mnRCIKrSslxbfhy3AwDcS6UCDGfXrIqQfg6YYOn6TISQy6IZ5TvI9Rs4pUp8s4JW6 r06A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:references:in-reply-to:message-id :date:subject:cc:to:from:dkim-signature; bh=+Wg3vTVI+KNNtCZ40tO4THN1Rc/sssddRQwHLFYhkAc=; fh=UgnadZx6rDvWjaYrhztjxltBzJxOCaFnpu2EybmIvlM=; b=jJoAAL8zLDb0cqf6cNAN9B/xhSdI8fMYfMj6Woow5gsfhUl+snU3hPwbzDCFMtw+tT s7pgJK1aSGNmefRKKwuOz0p6Orl2IWMmD8X4RPEdgVcsoUtG/eM4iv9e29MyggvTYq0+ nfaKbJF+ulUMf9UVI2tMOVRge/kbxc/yZG/9xtIxT8Dse+5bmJ+k9XTFEGxZMGAnyS8F OR6QgNKuYCyE4OX/UHcSTPG1yXtSWEBCWYFAwgJpE/171ZDKvezZZf/7FqaXul/xKxay AvQGfOeuO4VNg0ELjMPduaknYRC84+AURUtZK9UgQkHK7jt2r+uZK4T8L8EFwWGK47GZ Ppuw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20230601 header.b=jAfdRT5H; spf=pass (google.com: domain of linux-kernel+bounces-19115-ouuuleilei=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-19115-ouuuleilei=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org. [2604:1380:45e3:2400::1]) by mx.google.com with ESMTPS id k10-20020a170902c40a00b001d3cc53ea88si5710718plk.555.2024.01.07.22.48.58 for <ouuuleilei@gmail.com> (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 07 Jan 2024 22:48:58 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-19115-ouuuleilei=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) client-ip=2604:1380:45e3:2400::1; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20230601 header.b=jAfdRT5H; spf=pass (google.com: domain of linux-kernel+bounces-19115-ouuuleilei=gmail.com@vger.kernel.org designates 2604:1380:45e3:2400::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-19115-ouuuleilei=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sv.mirrors.kernel.org (Postfix) with ESMTPS id A17882820CC for <ouuuleilei@gmail.com>; Mon, 8 Jan 2024 06:48:58 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id F35BC8C09; Mon, 8 Jan 2024 06:48:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="jAfdRT5H" X-Original-To: linux-kernel@vger.kernel.org Received: from mail-oo1-f53.google.com (mail-oo1-f53.google.com [209.85.161.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 24EFE881F; Mon, 8 Jan 2024 06:48:40 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-oo1-f53.google.com with SMTP id 006d021491bc7-594196f5081so234904eaf.2; Sun, 07 Jan 2024 22:48:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1704696520; x=1705301320; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=+Wg3vTVI+KNNtCZ40tO4THN1Rc/sssddRQwHLFYhkAc=; b=jAfdRT5Hh610Y61w/5CxRpooCrhvtabBhPSierWEX+E4hHIt9iuDS43cK8/5gMD35z 0AOAOMqU5XFqAJ9zZO08yaaaH4RhwIAYLKbwtiSfJrt7NdyE4e6+0V4O3xlEBr5JNZNT +5WcN5t2RCCi4kU1/bWnEbnlViFG/1IOzbjEnjKcoqvuMl6S4WroebqCUXEwO+rpwmkt sUQwX46tFuMgBsjkJWbJ59kOMoikc8FBqAYZk1c8tV59GOKnivnseJZGXXoS7UKtFlBr KDlwCnYFC+HhezatOKWdt9yvjirMazdCoCtsGEcJ9NckuxmoVpSMmI5Us3fMaHLXeqML P64A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1704696520; x=1705301320; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=+Wg3vTVI+KNNtCZ40tO4THN1Rc/sssddRQwHLFYhkAc=; b=VPa/DxhJeiT6sQqCsBYsYkOSBkZTAbC8x/X2he0rLYc97JHHM0jP4cLEMelKwZlxWt m2LrhdMoi9bNA1pd2oLjMxIj8sIZyq6+SU6NsFd0Mi1y1jS2e/RzC0ABNgEhV/8kj/nw 2ysbA4GdtgySPoCmFJqlI1ZTjXZZQmYoFjo9lS530TQ9L5Ht6uihbB24ZrSsF2zlAgS0 hNI6dDm1JMOCz8t8MMPDKLD/ESTdrUk08QbPHqznLQDUo77N/afqPZCmKasJ14B2FVLs 2PH2+WS6nURywihYhGHjY6k0oUedn2ivZ5vhkfiZp4jxv2LO5mEByNB0YGVqQHhfZi3Z Un4w== X-Gm-Message-State: AOJu0Yxgj08kzyz+dFSx/RxVBRD9pA9TBKo6WKlMCopPA2AP61/0dbSK ihL5I60a9dyyg3AxJgPkrHI= X-Received: by 2002:a4a:5187:0:b0:598:4255:2292 with SMTP id s129-20020a4a5187000000b0059842552292mr382392ooa.2.1704696520158; Sun, 07 Jan 2024 22:48:40 -0800 (PST) Received: from localhost.localdomain ([122.8.183.87]) by smtp.gmail.com with ESMTPSA id s26-20020a4adb9a000000b005981f6d8f94sm1038203oou.21.2024.01.07.22.48.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 07 Jan 2024 22:48:39 -0800 (PST) From: Chen Wang <unicornxw@gmail.com> To: aou@eecs.berkeley.edu, chao.wei@sophgo.com, conor@kernel.org, krzysztof.kozlowski+dt@linaro.org, mturquette@baylibre.com, palmer@dabbelt.com, paul.walmsley@sifive.com, richardcochran@gmail.com, robh+dt@kernel.org, sboyd@kernel.org, devicetree@vger.kernel.org, linux-clk@vger.kernel.org, linux-kernel@vger.kernel.org, linux-riscv@lists.infradead.org, haijiao.liu@sophgo.com, xiaoguang.xing@sophgo.com, guoren@kernel.org, jszhang@kernel.org, inochiama@outlook.com, samuel.holland@sifive.com Cc: Chen Wang <unicorn_wang@outlook.com>, Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Subject: [PATCH v7 1/4] dt-bindings: soc: sophgo: Add Sophgo system control module Date: Mon, 8 Jan 2024 14:48:32 +0800 Message-Id: <acebc88db3e5fcd2a2607b56842af7443a6e1289.1704694903.git.unicorn_wang@outlook.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <cover.1704694903.git.unicorn_wang@outlook.com> References: <cover.1704694903.git.unicorn_wang@outlook.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: <linux-kernel.vger.kernel.org> List-Subscribe: <mailto:linux-kernel+subscribe@vger.kernel.org> List-Unsubscribe: <mailto:linux-kernel+unsubscribe@vger.kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1787503878046818428 X-GMAIL-MSGID: 1787503878046818428 |
Series |
riscv: sophgo: add clock support for sg2042
|
|
Commit Message
Chen Wang
Jan. 8, 2024, 6:48 a.m. UTC
From: Chen Wang <unicorn_wang@outlook.com> Add documentation to describe Sophgo System Controller for SG2042. Signed-off-by: Chen Wang <unicorn_wang@outlook.com> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> --- .../soc/sophgo/sophgo,sg2042-sysctrl.yaml | 34 +++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml
Comments
On 08/01/2024 07:48, Chen Wang wrote: > From: Chen Wang <unicorn_wang@outlook.com> > > Add documentation to describe Sophgo System Controller for SG2042. > > Signed-off-by: Chen Wang <unicorn_wang@outlook.com> > Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> > --- > .../soc/sophgo/sophgo,sg2042-sysctrl.yaml | 34 +++++++++++++++++++ > 1 file changed, 34 insertions(+) > create mode 100644 Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml > > diff --git a/Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml b/Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml > new file mode 100644 > index 000000000000..1ec1eaa55598 > --- /dev/null > +++ b/Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml > @@ -0,0 +1,34 @@ > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/soc/sophgo/sophgo,sg2042-sysctrl.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Sophgo SG2042 SoC system controller > + > +maintainers: > + - Chen Wang <unicorn_wang@outlook.com> > + > +description: > + The Sophgo SG2042 SoC system controller provides register information such > + as offset, mask and shift that can be used by other modules, such as clocks. "offset, mask and shift" is not a register information stored in syscons. Are you really sure, that your system controller hardware stores offsets of some other registers? Show as some example of such offsets, masks and shifts provided by this hardware. Best regards, Krzysztof
On 2024/1/8 15:03, Krzysztof Kozlowski wrote: > On 08/01/2024 07:48, Chen Wang wrote: >> From: Chen Wang <unicorn_wang@outlook.com> >> >> Add documentation to describe Sophgo System Controller for SG2042. >> >> Signed-off-by: Chen Wang <unicorn_wang@outlook.com> >> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> >> --- >> .../soc/sophgo/sophgo,sg2042-sysctrl.yaml | 34 +++++++++++++++++++ >> 1 file changed, 34 insertions(+) >> create mode 100644 Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml >> >> diff --git a/Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml b/Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml >> new file mode 100644 >> index 000000000000..1ec1eaa55598 >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml >> @@ -0,0 +1,34 @@ >> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) >> +%YAML 1.2 >> +--- >> +$id: http://devicetree.org/schemas/soc/sophgo/sophgo,sg2042-sysctrl.yaml# >> +$schema: http://devicetree.org/meta-schemas/core.yaml# >> + >> +title: Sophgo SG2042 SoC system controller >> + >> +maintainers: >> + - Chen Wang <unicorn_wang@outlook.com> >> + >> +description: >> + The Sophgo SG2042 SoC system controller provides register information such >> + as offset, mask and shift that can be used by other modules, such as clocks. > "offset, mask and shift" is not a register information stored in > syscons. Are you really sure, that your system controller hardware > stores offsets of some other registers? > > Show as some example of such offsets, masks and shifts provided by this > hardware. The system control module is defined here: https://github.com/sophgo/sophgo-doc/blob/main/SG2042/TRM/source/system-control.rst. It contains some registers related to pll and gates. Some other clocks registars are defined in https://github.com/sophgo/sophgo-doc/blob/main/SG2042/TRM/source/clock.rst. memory-map is defined in https://github.com/sophgo/sophgo-doc/blob/main/SG2042/TRM/source/mmap.rst > > > Best regards, > Krzysztof >
On 08/01/2024 08:20, Chen Wang wrote: > > On 2024/1/8 15:03, Krzysztof Kozlowski wrote: >> On 08/01/2024 07:48, Chen Wang wrote: >>> From: Chen Wang <unicorn_wang@outlook.com> >>> >>> Add documentation to describe Sophgo System Controller for SG2042. >>> >>> Signed-off-by: Chen Wang <unicorn_wang@outlook.com> >>> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> >>> --- >>> .../soc/sophgo/sophgo,sg2042-sysctrl.yaml | 34 +++++++++++++++++++ >>> 1 file changed, 34 insertions(+) >>> create mode 100644 Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml >>> >>> diff --git a/Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml b/Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml >>> new file mode 100644 >>> index 000000000000..1ec1eaa55598 >>> --- /dev/null >>> +++ b/Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml >>> @@ -0,0 +1,34 @@ >>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) >>> +%YAML 1.2 >>> +--- >>> +$id: http://devicetree.org/schemas/soc/sophgo/sophgo,sg2042-sysctrl.yaml# >>> +$schema: http://devicetree.org/meta-schemas/core.yaml# >>> + >>> +title: Sophgo SG2042 SoC system controller >>> + >>> +maintainers: >>> + - Chen Wang <unicorn_wang@outlook.com> >>> + >>> +description: >>> + The Sophgo SG2042 SoC system controller provides register information such >>> + as offset, mask and shift that can be used by other modules, such as clocks. >> "offset, mask and shift" is not a register information stored in >> syscons. Are you really sure, that your system controller hardware >> stores offsets of some other registers? >> >> Show as some example of such offsets, masks and shifts provided by this >> hardware. > > The system control module is defined here: > https://github.com/sophgo/sophgo-doc/blob/main/SG2042/TRM/source/system-control.rst. > It contains some registers related to pll and gates. I do not see there registers providing shifts and offsets... just values. > > Some other clocks registars are defined in > https://github.com/sophgo/sophgo-doc/blob/main/SG2042/TRM/source/clock.rst. > > memory-map is defined in > https://github.com/sophgo/sophgo-doc/blob/main/SG2042/TRM/source/mmap.rst Please fix the wording because it does not make sense. System controller does not provide register information. Your datasheet provides register information. Best regards, Krzysztof
On 2024/1/9 3:36, Krzysztof Kozlowski wrote: > On 08/01/2024 08:20, Chen Wang wrote: >> On 2024/1/8 15:03, Krzysztof Kozlowski wrote: >>> On 08/01/2024 07:48, Chen Wang wrote: >>>> From: Chen Wang <unicorn_wang@outlook.com> >>>> >>>> Add documentation to describe Sophgo System Controller for SG2042. >>>> >>>> Signed-off-by: Chen Wang <unicorn_wang@outlook.com> >>>> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> >>>> --- >>>> .../soc/sophgo/sophgo,sg2042-sysctrl.yaml | 34 +++++++++++++++++++ >>>> 1 file changed, 34 insertions(+) >>>> create mode 100644 Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml >>>> >>>> diff --git a/Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml b/Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml >>>> new file mode 100644 >>>> index 000000000000..1ec1eaa55598 >>>> --- /dev/null >>>> +++ b/Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml >>>> @@ -0,0 +1,34 @@ >>>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) >>>> +%YAML 1.2 >>>> +--- >>>> +$id: http://devicetree.org/schemas/soc/sophgo/sophgo,sg2042-sysctrl.yaml# >>>> +$schema: http://devicetree.org/meta-schemas/core.yaml# >>>> + >>>> +title: Sophgo SG2042 SoC system controller >>>> + >>>> +maintainers: >>>> + - Chen Wang <unicorn_wang@outlook.com> >>>> + >>>> +description: >>>> + The Sophgo SG2042 SoC system controller provides register information such >>>> + as offset, mask and shift that can be used by other modules, such as clocks. >>> "offset, mask and shift" is not a register information stored in >>> syscons. Are you really sure, that your system controller hardware >>> stores offsets of some other registers? >>> >>> Show as some example of such offsets, masks and shifts provided by this >>> hardware. >> The system control module is defined here: >> https://github.com/sophgo/sophgo-doc/blob/main/SG2042/TRM/source/system-control.rst. >> It contains some registers related to pll and gates. > I do not see there registers providing shifts and offsets... just values. Let me first clarify more what the "offset"/"shift"/"mask" I meant, Use https://github.com/sophgo/sophgo-doc/blob/main/SG2042/TRM/source/system-control.rst#mpll_control-offset-0x0e8 as example, this register is used to control Main PLL: - Offset: 0x0E8, to my understand, it is the offest between this MPLL_CONTROL register and the start of system-control base - Shift: the conlumn "LSB", for example, to locate the field MPLL_CONTROL.MPLL_FBDIV, we can first use system-control base + offset to get the address of MPLL_CONTROL, then use LSB(16) as shift to get the start position of this field. - Mask: still use MPLL_CONTROL.MPLL_FBDIV as example, use MSB(27) and LSB(16), this means the width of this field is 12 and with this we can get bit-mask for this field. For SG2042, IC define clock related registers in two parts, one is in https://github.com/sophgo/sophgo-doc/blob/main/SG2042/TRM/source/clock.rst, and another in https://github.com/sophgo/sophgo-doc/blob/main/SG2042/TRM/source/system-control.rst. I define the system control node in DTS and just treat it as a block of registers array and after regmap I can get some registers address such as MPLL_CONTROL to access it from my driver code. >> Some other clocks registars are defined in >> https://github.com/sophgo/sophgo-doc/blob/main/SG2042/TRM/source/clock.rst. >> >> memory-map is defined in >> https://github.com/sophgo/sophgo-doc/blob/main/SG2042/TRM/source/mmap.rst > > Please fix the wording because it does not make sense. System controller > does not provide register information. Your datasheet provides register > information. Sorry, I don't understand why you say "System controller does not provide register information."? As I explained above, I did see the information about these clock-related registers from the system control module, such as the offset/shift/mask I mentioned above. That's why I wrote "that can be used by other modules, such as clocks". How should I express, please enlighten me. Thanks, Chen > Best regards, > Krzysztof >
On 2024/1/9 3:36, Krzysztof Kozlowski wrote: > On 08/01/2024 08:20, Chen Wang wrote: >> On 2024/1/8 15:03, Krzysztof Kozlowski wrote: >>> On 08/01/2024 07:48, Chen Wang wrote: >>>> From: Chen Wang <unicorn_wang@outlook.com> >>>> >>>> Add documentation to describe Sophgo System Controller for SG2042. >>>> >>>> Signed-off-by: Chen Wang <unicorn_wang@outlook.com> >>>> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> >>>> --- >>>> .../soc/sophgo/sophgo,sg2042-sysctrl.yaml | 34 +++++++++++++++++++ >>>> 1 file changed, 34 insertions(+) >>>> create mode 100644 Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml >>>> >>>> diff --git a/Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml b/Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml >>>> new file mode 100644 >>>> index 000000000000..1ec1eaa55598 >>>> --- /dev/null >>>> +++ b/Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml >>>> @@ -0,0 +1,34 @@ >>>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) >>>> +%YAML 1.2 >>>> +--- >>>> +$id: http://devicetree.org/schemas/soc/sophgo/sophgo,sg2042-sysctrl.yaml# >>>> +$schema: http://devicetree.org/meta-schemas/core.yaml# >>>> + >>>> +title: Sophgo SG2042 SoC system controller >>>> + >>>> +maintainers: >>>> + - Chen Wang <unicorn_wang@outlook.com> >>>> + >>>> +description: >>>> + The Sophgo SG2042 SoC system controller provides register information such >>>> + as offset, mask and shift that can be used by other modules, such as clocks. >>> "offset, mask and shift" is not a register information stored in >>> syscons. Are you really sure, that your system controller hardware >>> stores offsets of some other registers? >>> >>> Show as some example of such offsets, masks and shifts provided by this >>> hardware. >> The system control module is defined here: >> https://github.com/sophgo/sophgo-doc/blob/main/SG2042/TRM/source/system-control.rst. >> It contains some registers related to pll and gates. > I do not see there registers providing shifts and offsets... just values. > >> Some other clocks registars are defined in >> https://github.com/sophgo/sophgo-doc/blob/main/SG2042/TRM/source/clock.rst. >> >> memory-map is defined in >> https://github.com/sophgo/sophgo-doc/blob/main/SG2042/TRM/source/mmap.rst > > Please fix the wording because it does not make sense. System controller > does not provide register information. Your datasheet provides register > information. Could it be that what I said "that can be used by other modules, such as clocks." may cause misunderstanding. I plan to change it to "The Sophgo SG2042 SoC system controller provides register information such as offset, mask and shift to configure related modules such as clock." Is this better? > > Best regards, > Krzysztof >
On 09/01/2024 09:52, Chen Wang wrote: > > On 2024/1/9 3:36, Krzysztof Kozlowski wrote: >> On 08/01/2024 08:20, Chen Wang wrote: >>> On 2024/1/8 15:03, Krzysztof Kozlowski wrote: >>>> On 08/01/2024 07:48, Chen Wang wrote: >>>>> From: Chen Wang <unicorn_wang@outlook.com> >>>>> >>>>> Add documentation to describe Sophgo System Controller for SG2042. >>>>> >>>>> Signed-off-by: Chen Wang <unicorn_wang@outlook.com> >>>>> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> >>>>> --- >>>>> .../soc/sophgo/sophgo,sg2042-sysctrl.yaml | 34 +++++++++++++++++++ >>>>> 1 file changed, 34 insertions(+) >>>>> create mode 100644 Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml >>>>> >>>>> diff --git a/Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml b/Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml >>>>> new file mode 100644 >>>>> index 000000000000..1ec1eaa55598 >>>>> --- /dev/null >>>>> +++ b/Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml >>>>> @@ -0,0 +1,34 @@ >>>>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) >>>>> +%YAML 1.2 >>>>> +--- >>>>> +$id: http://devicetree.org/schemas/soc/sophgo/sophgo,sg2042-sysctrl.yaml# >>>>> +$schema: http://devicetree.org/meta-schemas/core.yaml# >>>>> + >>>>> +title: Sophgo SG2042 SoC system controller >>>>> + >>>>> +maintainers: >>>>> + - Chen Wang <unicorn_wang@outlook.com> >>>>> + >>>>> +description: >>>>> + The Sophgo SG2042 SoC system controller provides register information such >>>>> + as offset, mask and shift that can be used by other modules, such as clocks. >>>> "offset, mask and shift" is not a register information stored in >>>> syscons. Are you really sure, that your system controller hardware >>>> stores offsets of some other registers? >>>> >>>> Show as some example of such offsets, masks and shifts provided by this >>>> hardware. >>> The system control module is defined here: >>> https://github.com/sophgo/sophgo-doc/blob/main/SG2042/TRM/source/system-control.rst. >>> It contains some registers related to pll and gates. >> I do not see there registers providing shifts and offsets... just values. >> >>> Some other clocks registars are defined in >>> https://github.com/sophgo/sophgo-doc/blob/main/SG2042/TRM/source/clock.rst. >>> >>> memory-map is defined in >>> https://github.com/sophgo/sophgo-doc/blob/main/SG2042/TRM/source/mmap.rst >> >> Please fix the wording because it does not make sense. System controller >> does not provide register information. Your datasheet provides register >> information. > > Could it be that what I said "that can be used by other modules, such as modules as Linux modules should not be involved in this description. > clocks." may cause misunderstanding. I plan to change it to "The Sophgo > SG2042 SoC system controller provides register information such as > offset, mask and shift to configure related modules such as clock." Is > this better? > Still does not make sense. To provide "offset" means that some other hardware reads sophgo module to get the value of offset. That's not the case here. Best regards, Krzysztof
On 2024/1/9 16:56, Krzysztof Kozlowski wrote: > On 09/01/2024 09:52, Chen Wang wrote: >> On 2024/1/9 3:36, Krzysztof Kozlowski wrote: >>> On 08/01/2024 08:20, Chen Wang wrote: >>>> On 2024/1/8 15:03, Krzysztof Kozlowski wrote: >>>>> On 08/01/2024 07:48, Chen Wang wrote: >>>>>> From: Chen Wang <unicorn_wang@outlook.com> >>>>>> >>>>>> Add documentation to describe Sophgo System Controller for SG2042. >>>>>> >>>>>> Signed-off-by: Chen Wang <unicorn_wang@outlook.com> >>>>>> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> >>>>>> --- >>>>>> .../soc/sophgo/sophgo,sg2042-sysctrl.yaml | 34 +++++++++++++++++++ >>>>>> 1 file changed, 34 insertions(+) >>>>>> create mode 100644 Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml >>>>>> >>>>>> diff --git a/Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml b/Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml >>>>>> new file mode 100644 >>>>>> index 000000000000..1ec1eaa55598 >>>>>> --- /dev/null >>>>>> +++ b/Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml >>>>>> @@ -0,0 +1,34 @@ >>>>>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) >>>>>> +%YAML 1.2 >>>>>> +--- >>>>>> +$id: http://devicetree.org/schemas/soc/sophgo/sophgo,sg2042-sysctrl.yaml# >>>>>> +$schema: http://devicetree.org/meta-schemas/core.yaml# >>>>>> + >>>>>> +title: Sophgo SG2042 SoC system controller >>>>>> + >>>>>> +maintainers: >>>>>> + - Chen Wang <unicorn_wang@outlook.com> >>>>>> + >>>>>> +description: >>>>>> + The Sophgo SG2042 SoC system controller provides register information such >>>>>> + as offset, mask and shift that can be used by other modules, such as clocks. >>>>> "offset, mask and shift" is not a register information stored in >>>>> syscons. Are you really sure, that your system controller hardware >>>>> stores offsets of some other registers? >>>>> >>>>> Show as some example of such offsets, masks and shifts provided by this >>>>> hardware. >>>> The system control module is defined here: >>>> https://github.com/sophgo/sophgo-doc/blob/main/SG2042/TRM/source/system-control.rst. >>>> It contains some registers related to pll and gates. >>> I do not see there registers providing shifts and offsets... just values. >>> >>>> Some other clocks registars are defined in >>>> https://github.com/sophgo/sophgo-doc/blob/main/SG2042/TRM/source/clock.rst. >>>> >>>> memory-map is defined in >>>> https://github.com/sophgo/sophgo-doc/blob/main/SG2042/TRM/source/mmap.rst >>> Please fix the wording because it does not make sense. System controller >>> does not provide register information. Your datasheet provides register >>> information. >> Could it be that what I said "that can be used by other modules, such as > modules as Linux modules should not be involved in this description. > >> clocks." may cause misunderstanding. I plan to change it to "The Sophgo >> SG2042 SoC system controller provides register information such as >> offset, mask and shift to configure related modules such as clock." Is >> this better? >> > Still does not make sense. To provide "offset" means that some other > hardware reads sophgo module to get the value of offset. That's not the > case here. I'm probably starting to understand what you mean. How about changing it to the following? The Sophgo system controller is a registers block, providing multiple low level platform functions like chip configuration, clock control, etc. > > Best regards, > Krzysztof >
On 10/01/2024 01:44, Chen Wang wrote: >>> clocks." may cause misunderstanding. I plan to change it to "The Sophgo >>> SG2042 SoC system controller provides register information such as >>> offset, mask and shift to configure related modules such as clock." Is >>> this better? >>> >> Still does not make sense. To provide "offset" means that some other >> hardware reads sophgo module to get the value of offset. That's not the >> case here. > > I'm probably starting to understand what you mean. How about changing it > to the following? > > The Sophgo system controller is a registers block, providing multiple > low level platform functions like chip configuration, clock control, etc. Yes, that sounds good. Best regards, Krzysztof
diff --git a/Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml b/Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml new file mode 100644 index 000000000000..1ec1eaa55598 --- /dev/null +++ b/Documentation/devicetree/bindings/soc/sophgo/sophgo,sg2042-sysctrl.yaml @@ -0,0 +1,34 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/soc/sophgo/sophgo,sg2042-sysctrl.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Sophgo SG2042 SoC system controller + +maintainers: + - Chen Wang <unicorn_wang@outlook.com> + +description: + The Sophgo SG2042 SoC system controller provides register information such + as offset, mask and shift that can be used by other modules, such as clocks. + +properties: + compatible: + const: sophgo,sg2042-sysctrl + + reg: + maxItems: 1 + +required: + - compatible + - reg + +additionalProperties: false + +examples: + - | + system-controller@30010000 { + compatible = "sophgo,sg2042-sysctrl"; + reg = <0x30010000 0x1000>; + };