Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

TI Real Time Clock

Required properties:
- compatible:
	- "ti,da830-rtc"  - for RTC IP used similar to that on DA8xx SoC family.
	- "ti,am3352-rtc" - for RTC IP used similar to that on AM335x SoC family.
			    This RTC IP has special WAKE-EN Register to enable
			    Wakeup generation for event Alarm. It can also be
			    used to control an external PMIC via the
			    pmic_power_en pin.
	- "ti,am4372-rtc" - for RTC IP used similar to that on AM437X SoC family.
- reg: Address range of rtc register set
- interrupts: rtc timer, alarm interrupts in order
- interrupt-parent: phandle for the interrupt controller

Optional properties:
- system-power-controller: whether the rtc is controlling the system power
  through pmic_power_en
- clocks: Any internal or external clocks feeding in to rtc
- clock-names: Corresponding names of the clocks
- pinctrl-0: a phandle pointing to the pin settings for the device
- pinctrl-names: should be "default"

Optional subnodes:
- generic pinctrl node

Required pinctrl subnodes properties:
- pins - Names of ext_wakeup pins to configure

Optional pinctrl subnodes properties:
- input-enable - Enables ext_wakeup
- ti,active-high - Set input active high (by default active low)

Example:

rtc@1c23000 {
	compatible = "ti,da830-rtc";
	reg = <0x23000 0x1000>;
	interrupts = <19
		      19>;
	interrupt-parent = <&intc>;
	system-power-controller;
	clocks = <&clk_32k_rtc>, <&clk_32768_ck>;
	clock-names = "ext-clk", "int-clk";

	pinctrl-0 = <&ext_wakeup>;
	pinctrl-names = "default";

	ext_wakeup: ext-wakeup {
		pins = "ext_wakeup0";
		input-enable;
		ti,active-high;
	};
};