Message ID | 20231209233106.147416-1-peter.griffin@linaro.org |
---|---|
Headers | show |
Series | Add minimal Tensor/GS101 SoC support and Oriole/Pixel6 board | expand |
On 10/12/2023 00:30, Peter Griffin wrote: > GS101 has three different SYSREG controllers, add dedicated > compatibles for them to the documentation. > > Reviewed-by: Sam Protsenko <semen.protsenko@linaro.org> > Signed-off-by: Peter Griffin <peter.griffin@linaro.org> > --- > .../bindings/soc/samsung/samsung,exynos-sysreg.yaml | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/Documentation/devicetree/bindings/soc/samsung/samsung,exynos-sysreg.yaml b/Documentation/devicetree/bindings/soc/samsung/samsung,exynos-sysreg.yaml > index 2de4301a467d..127f4ffde76a 100644 > --- a/Documentation/devicetree/bindings/soc/samsung/samsung,exynos-sysreg.yaml > +++ b/Documentation/devicetree/bindings/soc/samsung/samsung,exynos-sysreg.yaml > @@ -22,6 +22,12 @@ properties: > - tesla,fsd-fsys1-sysreg > - tesla,fsd-peric-sysreg > - const: syscon > + - items: > + - enum: > + - google,gs101-apm-sysreg > + - google,gs101-peric0-sysreg > + - google,gs101-peric1-sysreg This should be part of the first enum. No need for new list for every new SoC. I'll fix it while applying. Best regards, Krzysztof
On 10/12/2023 00:30, Peter Griffin wrote: > + Likewise there are a couple of names for the actual device > + - Marketing name ("Pixel 6") > + - Codename ("Oriole") > + > + Devicetrees should use the lowercased SoC ID and lowercased board codename, > + e.g. gs101 and gs101-oriole. > + > +properties: > + $nodename: > + const: '/' > + compatible: > + oneOf: > + - description: Google Pixel 6 / Oriole > + items: > + - enum: > + - google,gs101-oriole > + - const: google,gs101 > + > + # Bootloader requires empty ect node to be present > + ect: > + type: object > + additionalProperties: false This is a major change, thus Rob's review should be dropped with short explanation. No new properties post-review. Rob, Please re-review the "ect" part. I suggested it to Peter to solve the bootloader requirements. Best regards, Krzysztof
On Sat, 09 Dec 2023 23:30:53 +0000, Peter Griffin wrote: > gs101 is similar to newer Exynos SoCs like Exynos850 and ExynosAutov9 > where more than one pin controller can do external wake-up interrupt. > So add a dedicated compatible for it. > > Applied, thanks! [07/20] dt-bindings: pinctrl: samsung: add gs101-wakeup-eint compatible https://git.kernel.org/pinctrl/samsung/c/abc73e50b394f248aa8e7ecdfbd4dfa52f8e8355 Best regards,
On Sat, 09 Dec 2023 23:30:47 +0000, Peter Griffin wrote: > Add gs101-pmu compatible to the bindings documentation. > > Applied, thanks! [01/20] dt-bindings: soc: samsung: exynos-pmu: Add gs101 compatible https://git.kernel.org/krzk/linux/c/fdd78ff04ccc96f628c2f93e0d48ab0a74bf34ef Best regards,
On Sat, 09 Dec 2023 23:30:49 +0000, Peter Griffin wrote: > GS101 has three different SYSREG controllers, add dedicated > compatibles for them to the documentation. > > Applied, thanks! [03/20] dt-bindings: soc: google: exynos-sysreg: add dedicated SYSREG compatibles to GS101 https://git.kernel.org/krzk/linux/c/d9232785858eafde8553932f96fb7e25c2191ed2 Best regards,
On 10/12/2023 00:31, Peter Griffin wrote: > This patch adds the compatibles and drvdata for the Google > gs101 SoC found in Pixel 6, Pixel 6a & Pixel 6 pro phones. > > Similar to Exynos850 it has two watchdog instances, one for > each cluster and has some control bits in PMU registers. > > + > static const struct of_device_id s3c2410_wdt_match[] = { > { .compatible = "samsung,s3c2410-wdt", > .data = &drv_data_s3c2410 }, > @@ -285,6 +318,8 @@ static const struct of_device_id s3c2410_wdt_match[] = { > .data = &drv_data_exynos850_cl0 }, > { .compatible = "samsung,exynosautov9-wdt", > .data = &drv_data_exynosautov9_cl0 }, > + { .compatible = "google,gs101-wdt", > + .data = &drv_data_gs101_cl0 }, Keep some alphabetical order by compatible, so this should be probably the first entry in the table. Same for s3c2410_wdt_variant structures. > {}, Best regards, Krzysztof
On 10/12/2023 00:30, Peter Griffin wrote: > Hi folks, > > This series adds initial SoC support for the GS101 SoC and also initial board > support for Pixel 6 phone (Oriole). > I started applying few reviewed bindings. We are getting close to end of merging time for SoC. Top-level arm/google.yaml needs ack or re-review from Rob. Best regards, Krzysztof
On Sat, Dec 9, 2023 at 5:31 PM Peter Griffin <peter.griffin@linaro.org> wrote: > > Specifying samsung,uart-fifosize in both DT and driver static data is error > prone and relies on driver probe order and dt aliases to be correct. > > Additionally on many Exynos platforms these are (USI) universal serial > interfaces which can be uart, spi or i2c, so it can change per board. > > For google,gs101-uart make samsung,uart-fifosize a required property. > For this platform fifosize now *only* comes from DT. > > Signed-off-by: Peter Griffin <peter.griffin@linaro.org> > --- Reviewed-by: Sam Protsenko <semen.protsenko@linaro.org> > .../devicetree/bindings/serial/samsung_uart.yaml | 10 ++++++++++ > 1 file changed, 10 insertions(+) > > diff --git a/Documentation/devicetree/bindings/serial/samsung_uart.yaml b/Documentation/devicetree/bindings/serial/samsung_uart.yaml > index ccc3626779d9..65d5d361e8f4 100644 > --- a/Documentation/devicetree/bindings/serial/samsung_uart.yaml > +++ b/Documentation/devicetree/bindings/serial/samsung_uart.yaml > @@ -133,6 +133,16 @@ allOf: > - const: uart > - const: clk_uart_baud0 > > + - if: > + properties: > + compatible: > + contains: > + enum: > + - google,gs101-uart > + then: > + required: > + - samsung,uart-fifosize > + > unevaluatedProperties: false > > examples: > -- > 2.43.0.472.g3155946c3a-goog >
On Sat, Dec 9, 2023 at 5:31 PM Peter Griffin <peter.griffin@linaro.org> wrote: > > cmu_top is the top level clock management unit which contains PLLs, muxes, > dividers and gates that feed the other clock management units. > > cmu_misc clocks IPs such as Watchdog and cmu_apm clocks ips part of the > APM module. > > Acked-by: Chanwoo Choi <cw00.choi@samsung.com> > Tested-by: Will McVicker <willmcvicker@google.com> > Signed-off-by: Peter Griffin <peter.griffin@linaro.org> > --- Reviewed-by: Sam Protsenko <semen.protsenko@linaro.org> [snip]
On Sat, Dec 9, 2023 at 5:31 PM Peter Griffin <peter.griffin@linaro.org> wrote: > > Update the remaining QUIRK macros to use the BIT macro. > > Signed-off-by: Peter Griffin <peter.griffin@linaro.org> > --- Reviewed-by: Sam Protsenko <semen.protsenko@linaro.org> > drivers/watchdog/s3c2410_wdt.c | 10 +++++----- > 1 file changed, 5 insertions(+), 5 deletions(-) > > diff --git a/drivers/watchdog/s3c2410_wdt.c b/drivers/watchdog/s3c2410_wdt.c > index 7ecb762a371d..b7a03668f743 100644 > --- a/drivers/watchdog/s3c2410_wdt.c > +++ b/drivers/watchdog/s3c2410_wdt.c > @@ -107,11 +107,11 @@ > * DBGACK_MASK bit disables the watchdog outputs when the SoC is in debug mode. > * Debug mode is determined by the DBGACK CPU signal. > */ > -#define QUIRK_HAS_WTCLRINT_REG (1 << 0) > -#define QUIRK_HAS_PMU_MASK_RESET (1 << 1) > -#define QUIRK_HAS_PMU_RST_STAT (1 << 2) > -#define QUIRK_HAS_PMU_AUTO_DISABLE (1 << 3) > -#define QUIRK_HAS_PMU_CNT_EN (1 << 4) > +#define QUIRK_HAS_WTCLRINT_REG BIT(0) > +#define QUIRK_HAS_PMU_MASK_RESET BIT(1) > +#define QUIRK_HAS_PMU_RST_STAT BIT(2) > +#define QUIRK_HAS_PMU_AUTO_DISABLE BIT(3) > +#define QUIRK_HAS_PMU_CNT_EN BIT(4) > #define QUIRK_HAS_DBGACK_BIT BIT(5) > > /* These quirks require that we have a PMU register map */ > -- > 2.43.0.472.g3155946c3a-goog >
Hi Krzysztof, On Sun, 10 Dec 2023 at 13:49, Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> wrote: > > On 10/12/2023 00:30, Peter Griffin wrote: > > GS101 has three different SYSREG controllers, add dedicated > > compatibles for them to the documentation. > > > > Reviewed-by: Sam Protsenko <semen.protsenko@linaro.org> > > Signed-off-by: Peter Griffin <peter.griffin@linaro.org> > > --- > > .../bindings/soc/samsung/samsung,exynos-sysreg.yaml | 6 ++++++ > > 1 file changed, 6 insertions(+) > > > > diff --git a/Documentation/devicetree/bindings/soc/samsung/samsung,exynos-sysreg.yaml b/Documentation/devicetree/bindings/soc/samsung/samsung,exynos-sysreg.yaml > > index 2de4301a467d..127f4ffde76a 100644 > > --- a/Documentation/devicetree/bindings/soc/samsung/samsung,exynos-sysreg.yaml > > +++ b/Documentation/devicetree/bindings/soc/samsung/samsung,exynos-sysreg.yaml > > @@ -22,6 +22,12 @@ properties: > > - tesla,fsd-fsys1-sysreg > > - tesla,fsd-peric-sysreg > > - const: syscon > > + - items: > > + - enum: > > + - google,gs101-apm-sysreg > > + - google,gs101-peric0-sysreg > > + - google,gs101-peric1-sysreg > > This should be part of the first enum. No need for new list for every > new SoC. I'll fix it while applying. Noted, thanks! Peter
Hi Krzysztof, Thanks for the review. On Sun, 10 Dec 2023 at 14:26, Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> wrote: > > On 10/12/2023 00:31, Peter Griffin wrote: > > This patch adds the compatibles and drvdata for the Google > > gs101 SoC found in Pixel 6, Pixel 6a & Pixel 6 pro phones. > > > > Similar to Exynos850 it has two watchdog instances, one for > > each cluster and has some control bits in PMU registers. > > > > > > + > > static const struct of_device_id s3c2410_wdt_match[] = { > > { .compatible = "samsung,s3c2410-wdt", > > .data = &drv_data_s3c2410 }, > > @@ -285,6 +318,8 @@ static const struct of_device_id s3c2410_wdt_match[] = { > > .data = &drv_data_exynos850_cl0 }, > > { .compatible = "samsung,exynosautov9-wdt", > > .data = &drv_data_exynosautov9_cl0 }, > > + { .compatible = "google,gs101-wdt", > > + .data = &drv_data_gs101_cl0 }, > > Keep some alphabetical order by compatible, so this should be probably > the first entry in the table. > > Same for s3c2410_wdt_variant structures. Will fix in v7. Thanks, Peter