Re: [PATCH 1/3] ARM: dts: omap5-board-common: enable rtc and charging of backup battery
From: H. Nikolaus Schaller
Date: Tue Jan 12 2016 - 08:30:47 EST
Hi Tony,
Am 12.01.2016 um 01:09 schrieb Tony Lindgren <tony@xxxxxxxxxxx>:
> * Tony Lindgren <tony@xxxxxxxxxxx> [160111 12:27]:
>>
>> OK so the issue is that the twl msecure pin should be high to enable
>> the RTC registers. We used to have that code with platform_data, but
>> no longer have it with device tree based booting. I'll send a patch
>> for that.
>>
>> Curiously setting jumper j5 on beagle-x15 that controls what used to
>> be the msecure and now is powerhold, does the opposite.. The
>> device boots automatically but RTC is stopped?
>
> And here's a fix the issue for omap5. Beagle-x15 needs to be
> investigated more.
>
> Care to test it with your RTC enabling patch?
yes, I will test asap.
Reminds me on some issues we did have with msecure and twl4030 rtc some years ago.
BR,
Nikolaus
>
> Regards,
>
> Tony
>
> 8< ---------------
> From: Tony Lindgren <tony@xxxxxxxxxxx>
> Date: Mon, 11 Jan 2016 14:35:24 -0800
> Subject: [PATCH] ARM: dts: Fix omap5 PMIC control lines for RTC writes
>
> The palmas PMIC has some control lines that need to be muxed properly
> for things to work. The sys_nirq pin is used for interrupts, and msecure
> pin is used for enabling writes to some PMIC registers.
>
> Without these pins configured properly things can fail in mysterious
> ways. For example, we can't update the RTC registers on palmas PMIC
> unless the msecure pin is configured. And this is probably the reason
> why we had RTC missing from the omap5 dts file.
>
> According to "OMAP5430 ES2.0 Data Manual [Public] VErsion A (Rev. F)"
> swps052f.pdf, mux mode 1 is for sys_drm_msecure so there's no need to
> configure it as a GPIO pin.
>
> Signed-off-by: Tony Lindgren <tony@xxxxxxxxxxx>
>
> --- a/arch/arm/boot/dts/omap5-board-common.dtsi
> +++ b/arch/arm/boot/dts/omap5-board-common.dtsi
> @@ -213,6 +213,12 @@
> >;
> };
>
> + palmas_msecure_pins: palmas_msecure_pins {
> + pinctrl-single,pins = <
> + OMAP5_IOPAD(0x180, PIN_OUTPUT | MUX_MODE1) /* gpio8_234.sys_drm_msecure */
> + >;
> + };
> +
> usbhost_pins: pinmux_usbhost_pins {
> pinctrl-single,pins = <
> 0x84 (PIN_INPUT | MUX_MODE0) /* usbb2_hsic_strobe */
> @@ -278,6 +284,12 @@
> &usbhost_wkup_pins
> >;
>
> + palmas_sys_nirq_pins: pinmux_palmas_sys_nirq_pins {
> + pinctrl-single,pins = <
> + OMAP5_IOPAD(0x068, PIN_INPUT_PULLUP | MUX_MODE0) /* sys_nirq1 */
> + >;
> + };
> +
> usbhost_wkup_pins: pinmux_usbhost_wkup_pins {
> pinctrl-single,pins = <
> 0x1A (PIN_OUTPUT | MUX_MODE0) /* fref_clk1_out, USB hub clk */
> @@ -345,6 +357,8 @@
> interrupt-controller;
> #interrupt-cells = <2>;
> ti,system-power-controller;
> + pinctrl-names = "default";
> + pinctrl-0 = <&palmas_sys_nirq_pins &palmas_msecure_pins>;
>
> extcon_usb3: palmas_usb {
> compatible = "ti,palmas-usb-vid";