[PATCH v2 2/4] rtc: s32g: add NXP S32G2/S32G3 SoC support
Ciprian Marian Costea
ciprianmarian.costea at oss.nxp.com
Fri Oct 18 01:45:00 PDT 2024
On 10/16/2024 12:04 AM, Rob Herring wrote:
Hello Rob,
Thanks for your careful review!
> On Tue, Oct 15, 2024 at 01:51:31PM +0300, Ciprian Costea wrote:
>> From: Ciprian Marian Costea <ciprianmarian.costea at oss.nxp.com>
>>
>> Add a RTC driver for NXP S32G2/S32G3 SoCs.
>>
>> The RTC module is used to enable Suspend to RAM (STR) support
>> on NXP S32G2/S32G3 SoC based boards.
>> RTC tracks clock time during system suspend.
>>
>> RTC from S32G2/S32G3 is not battery-powered and it is not
>> kept alive during system reset.
>>
>> Co-developed-by: Bogdan Hamciuc <bogdan.hamciuc at nxp.com>
>> Signed-off-by: Bogdan Hamciuc <bogdan.hamciuc at nxp.com>
>> Co-developed-by: Ghennadi Procopciuc <Ghennadi.Procopciuc at nxp.com>
>> Signed-off-by: Ghennadi Procopciuc <Ghennadi.Procopciuc at nxp.com>
>> Signed-off-by: Ciprian Marian Costea <ciprianmarian.costea at oss.nxp.com>
>> ---
>> drivers/rtc/Kconfig | 11 +
>> drivers/rtc/Makefile | 1 +
>> drivers/rtc/rtc-s32g.c | 778 +++++++++++++++++++++++++++++++++++++++++
>> 3 files changed, 790 insertions(+)
>> create mode 100644 drivers/rtc/rtc-s32g.c
>
>
>> diff --git a/drivers/rtc/Makefile b/drivers/rtc/Makefile
>> index 8ee79cb18322..a63d010a753c 100644
>> --- a/drivers/rtc/Makefile
>> +++ b/drivers/rtc/Makefile
>> @@ -158,6 +158,7 @@ obj-$(CONFIG_RTC_DRV_RX8025) += rtc-rx8025.o
>> obj-$(CONFIG_RTC_DRV_RX8111) += rtc-rx8111.o
>> obj-$(CONFIG_RTC_DRV_RX8581) += rtc-rx8581.o
>> obj-$(CONFIG_RTC_DRV_RZN1) += rtc-rzn1.o
>> +obj-$(CONFIG_RTC_DRV_S32G) += rtc-s32g.o
>> obj-$(CONFIG_RTC_DRV_S35390A) += rtc-s35390a.o
>> obj-$(CONFIG_RTC_DRV_S3C) += rtc-s3c.o
>> obj-$(CONFIG_RTC_DRV_S5M) += rtc-s5m.o
>> diff --git a/drivers/rtc/rtc-s32g.c b/drivers/rtc/rtc-s32g.c
>> new file mode 100644
>> index 000000000000..d6502d8bf616
>> --- /dev/null
>> +++ b/drivers/rtc/rtc-s32g.c
>
>
>> +static const struct of_device_id rtc_dt_ids[] = {
>> + { .compatible = "nxp,s32g2-rtc", .data = &rtc_s32g2_data},
>> + { .compatible = "nxp,s32g3-rtc", .data = &rtc_s32g2_data},
>
> Considering the data is the same and g3 has a fallback to g2 in the
> binding, you can drop this line.
Correct, I will update in V2.
>
> And really you don't need rtc_s32g2_data because there is only 1
> possible value. But maybe you know some differences which are coming
> soon? Then it's probably okay. Up to the RTC maintainer though.
>
I understand your point. I've considered adding 'rtc_s32g2_data' because
for both S32G2 and S32G3 SoCs, one entry in the clock source mux is
reserved.
Since this is IMHO a SoC limiation, and future SoCs which may use this
driver may not have this limitation I've considered adding this
limitation as a quirk.
> Rob
Best Regards,
Ciprian
More information about the linux-arm-kernel
mailing list