Re: [PATCH 05/12] dt-bindings: soc: rockchip: grf: Add RV1106 compatibles
From: Jonas Karlman
Date: Fri Jul 10 2026 - 16:00:25 EST
Hi Simon,
On 7/6/2026 9:58 PM, Simon Glass wrote:
> Add the compatibles for the general register files of the Rockchip
> RV1106: the main GRF with its clock-controller child, which provides
> the MMC drive and sample phase clocks, and the IOC and PMU IOC blocks
> used by the pin controller.
>
> Signed-off-by: Simon Glass <sjg@xxxxxxxxxxxx>
> ---
>
> .../devicetree/bindings/soc/rockchip/grf.yaml | 30 +++++++++++++++++++
> 1 file changed, 30 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/soc/rockchip/grf.yaml b/Documentation/devicetree/bindings/soc/rockchip/grf.yaml
> index 2cc43742b8e3..349fd3393ac4 100644
> --- a/Documentation/devicetree/bindings/soc/rockchip/grf.yaml
> +++ b/Documentation/devicetree/bindings/soc/rockchip/grf.yaml
> @@ -64,6 +64,8 @@ properties:
> - rockchip,rk3588-vo1-grf
> - rockchip,rk3588-vop-grf
> - rockchip,rv1103b-ioc
> + - rockchip,rv1106-ioc
Do we possible need a different compatible for each GPIO IOC?
GRF address mapping table over all different GRF regs used by this SoC:
Name Address Base
PERI_GRF 0xFF000000
VENC_GRF 0xFF010000
NPU_GRF 0xFF018000
PMU_GRF 0xFF020000
DDR_GRF 0xFF030000
CORE_GRF 0xFF040000
VI_GRF 0xFF050000
VO_GRF 0xFF060000
GPIO0_IOC 0xFF388000
GPIO1_IOC 0xFF538000
GPIO2_IOC 0xFF548000
GPIO3_IOC 0xFF558000
GPIO4_IOC 0xFF568000
> + - rockchip,rv1106-pmuioc
> - rockchip,rv1108-usbgrf
> - const: syscon
> - items:
> @@ -100,6 +102,7 @@ properties:
> - rockchip,rk3576-usb2phy-grf
> - rockchip,rk3588-usb2phy-grf
> - rockchip,rv1103b-pmu-grf
> + - rockchip,rv1106-grf
What GRF in the table above is this referring to?
Vendor kernel went the easy route and declared a single mega GRF block.
Mainline should probably declare each GRF individually to correctly
describe HW?
> - rockchip,rv1108-grf
> - rockchip,rv1108-pmugrf
> - rockchip,rv1126-grf
> @@ -244,6 +247,33 @@ allOf:
>
> unevaluatedProperties: false
>
> + - if:
> + properties:
> + compatible:
> + contains:
> + const: rockchip,rv1106-grf
> +
> + then:
> + properties:
> + clock-controller:
> + type: object
> + additionalProperties: false
> +
> + properties:
> + compatible:
> + const: rockchip,rv1106-grf-cru
> +
> + "#clock-cells":
> + const: 1
> +
> + required:
> + - compatible
> + - "#clock-cells"
> +
> + description:
> + Clock provider for the MMC drive and sample phase clocks,
> + whose control registers live in the GRF region.
As mentioned in CRU patch, please take a look at RK3528, it exposes
similar similar 'GRF' clocks from the CRU. Do not blindly follow what
has been done in the vendor kernel.
Regards,
Jonas
> +
> - if:
> properties:
> compatible: