Allwinner A64: Issue on external rtc clock to wifi chip

Maxime Ripard maxime.ripard at bootlin.com
Mon May 14 04:17:26 PDT 2018


On Mon, May 14, 2018 at 03:12:49PM +0530, Jagan Teki wrote:
> On Mon, May 14, 2018 at 2:36 PM, Maxime Ripard
> <maxime.ripard at bootlin.com> wrote:
> > On Mon, May 14, 2018 at 02:34:22PM +0530, Jagan Teki wrote:
> >> On Mon, May 14, 2018 at 1:57 PM, Maxime Ripard
> >> <maxime.ripard at bootlin.com> wrote:
> >> > On Mon, May 14, 2018 at 01:34:56PM +0530, Jagan Teki wrote:
> >> >> On Mon, May 14, 2018 at 1:27 PM, Maxime Ripard
> >> >> <maxime.ripard at bootlin.com> wrote:
> >> >> > Hi,
> >> >> >
> >> >> > On Mon, May 14, 2018 at 12:37:49PM +0530, Jagan Teki wrote:
> >> >> >> Hi Maxime and All,
> >> >> >>
> >> >> >> We are trying to bring-up AP6330 Wifi chip for A64 board. We noticed
> >> >> >> to have an external rtc clock has driven from wifi chip.
> >> >> >>
> >> >> >> So the devicetree is configured according to this as below.
> >> >> >>
> >> >> >> / {
> >> >> >>         wifi_pwrseq: wifi-pwrseq {
> >> >> >>                 compatible = "mmc-pwrseq-simple";
> >> >> >>                 clocks = <&rtc 1>;
> >> >> >>                 clock-names = "ext_clock";
> >> >> >>                 reset-gpios = <&r_pio 0 2 GPIO_ACTIVE_LOW>; /* PL2 */
> >> >> >>                 post-power-on-delay-ms = <400>;
> >> >> >>         };
> >> >> >> };
> >> >> >>
> >> >> >> &rtc {
> >> >> >>         clock-output-names = "rtc-osc32k", "rtc-osc32k-out";
> >> >> >>         clocks = <&osc32k>;
> >> >> >>         #clock-cells = <1>;
> >> >> >> };
> >> >> >>
> >> >> >> &mmc1 {
> >> >> >>         pinctrl-names = "default";
> >> >> >>         pinctrl-0 = <&mmc1_pins>;
> >> >> >>         vmmc-supply = <&reg_dcdc1>;
> >> >> >>         vqmmc-supply = <&reg_eldo1>;
> >> >> >>         mmc-pwrseq = <&wifi_pwrseq>;
> >> >> >>         bus-width = <4>;
> >> >> >>         non-removable;
> >> >> >>         status = "okay";
> >> >> >>
> >> >> >>         brcmf: wifi at 1 {
> >> >> >>                 reg = <1>;
> >> >> >>                 compatible = "brcm,bcm4329-fmac";
> >> >> >>                 interrupt-parent = <&r_pio>;
> >> >> >>                 interrupts = <0 3 IRQ_TYPE_LEVEL_LOW>;  /* WL-WAKE-AP: PL3 */
> >> >> >>                 interrupt-names = "host-wake";
> >> >> >>         };
> >> >> >> };
> >> >> >>
> >> >> >> And observed rtc-osc32k-out clock is never enabled[1] and the value of
> >> >> >> LOSC_OUT_GATING is 0x0 which eventually not enabling
> >> >> >> LOSC_OUT_GATING_EN
> >> >> >>
> >> >> >> Pls. let us know if we miss anything here?
> >> >> >>
> >> >> >> [1] https://paste.ubuntu.com/p/X2By4q8kD2/
> >> >> >
> >> >> > Could you paste your config and the logs from a boot to?
> >> >>
> >> >> .config
> >> >> https://paste.ubuntu.com/p/w9w2KB7RFc/
> >> >>
> >> >> dmesg
> >> >> https://paste.ubuntu.com/p/mrZGk5bWRR/
> >> >
> >> > This is kind of weird. Have you tested with a 4.17 kernel? We have
> >> > runtime_pm changes lined up in next, so that might be a regression
> >> > there, even though we tested it with Quentin at some point.
> >>
> >> This is 4.17-rc4 do you want to try it on 4.16 ?
> >
> > No, this is next-20180503. Please try with 4.17-rc4
> 
> Couldn't find any different in behaviour [2]
> 
> [2] https://paste.ubuntu.com/p/m3PGBwrv6W/

It's hard to tell without the board, but have you looked at the return
value of devm_clk_get in the pwrseq code?

Enabling the clk ftrace events would also help.

Maxime

-- 
Maxime Ripard, Bootlin (formerly Free Electrons)
Embedded Linux and Kernel engineering
https://bootlin.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20180514/4e65385a/attachment.sig>


More information about the linux-arm-kernel mailing list