-
Notifications
You must be signed in to change notification settings - Fork 6.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
dts: ti: cc13xx_cc26xx: devicetree sysclk alignment #59965
dts: ti: cc13xx_cc26xx: devicetree sysclk alignment #59965
Conversation
@cfriedt @niflostancu You'll probably also want to review this. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's possible that this may be usable as a RTC in spite of the fact that it's missing separate year, month, day of month, etc registers.
In particular, the fact that it has support for compensation indicates to me that it might actually work.
I wouldn't mind hearing @vaishnavachath's thoughts here.
@cfriedt True, the hardware peripheral has the capability for system_timer.h, rtc.h, counter.h and PPS for clock synchronization. Got some help from Brix on Discord, I guess the correct solution would then be rtc: rtc@... following the "peripheral-name-from-datasheet: generic-function@address" pattern? The same is probably true for the compat-String which was fine as it represents hardware, not the driver software. Will update the PR accordingly. |
@cfriedt Update: As only one driver can be attached per dt node using the _rtc_timer suffix for the compatible property is correct as we'd clutter the namespace otherwise. Do you agree? Just updated the PR accordingly. |
c7e431e
to
0eed9f9
Compare
0eed9f9
to
ff62820
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@fgrandel can we split the changes to two separate commits? one for the binding/DT update and another for the rename/include fixes?
ff62820
to
8c9ccab
Compare
@vaishnavachath Yes, of course. Makes sense. Done. |
Echo client/server regression test result on real hardware to verify that nothing fundamental broke:
|
Removes duplicate code and inconsistencies in the naming of the cc13xx_cc26xx devicetree and RTC driver hierarchy and alignes it with the actual TI product series naming hierarchy. Signed-off-by: Florian Grandel <fgrandel@code-for-humans.de>
This change introduces the "_rtc_timer" suffix for the system tick timer driver "compatible" property and aligns naming conventions with the actual CC13/26xx SoC series product policy. This frees up the "_rtc" namespace to introduce additional APIs based on the same peripheral in the future (not part of this PR): rtc: rtc@... { compatible = "ti,cc13xx-cc26xx-rtc"; ... timer { compatible = "ti,cc13xx-cc26xx-rtc-timer"; ... }; counter { compatible = "ti,cc13xx-cc26xx-rtc-counter"; ... }; pps { compatible = "ti,cc13xx-cc26xx-rtc-pps"; ... }; }; Or alternatively an MFD pattern with similar requirements. Fixing the namespacing now makes sense standalone as it reduces the chance of custom drivers being broken in the future. Redundant extension of the mandatory system clock devicetree node is replaced with a single `status = "okay"` which seems to be the more sensible default to avoid user error when defining custom boards. Knowledgeable users can still override this if really needed. Signed-off-by: Florian Grandel <fgrandel@code-for-humans.de>
8c9ccab
to
e89c6ea
Compare
@cfriedt I think this one is ready for re-reviewing now. |
I'm obviously late here, but shouldn't these changes be added to the release notes? Renaming the compatible and Kconfig options may break things for people. |
This change introduces the "_rtc_timer" suffix for the system tick timer driver "compatible" property and aligns naming conventions with the actual CC13/26xx SoC series product policy.
This frees up the "_rtc" namespace to introduce additional APIs based on the same peripheral in the future:
Or alternatively an MFD pattern with similar requirements.
To enable this change, some duplicate devicetree nodes were removed and inconsistencies in the naming and include hierarchy of the cc13xx_cc26xx devicetree and RTC system clock driver fixed.