Re: SDHCI: linux-6.11: mmc0: Reset 0x2 never completed

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Ulf/Isheng/Shawn/Liming,

For reference please find my dts changes for  sdhci:

====================================================
sdmmc: sdhci@48102000 {
                        compatible = "snps,dwcmshc-sdhci";
                        reg = <0x48102000 0x1000>;
                        interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>,
                                     <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>;
                        clocks = <&syst_hclk>, <&syst_hclk>;
                        clock-names = "core", "bus";
                        bus-width = <4>;
                        max-frequency = <25000000>;
                        pinctrl-names = "default";
                        pinctrl-0 = <&pinctrl_sdhci>;
                        status = "okay";
                };
====================================================

My Soc is based on Cortex-A32 processor.  Clock feeding to SD clk is
200MHz and max-frequency supported is 25Mhz.
For reference please find mmc debug messages from sys fs during card
detect stage:

==========================================================================
root@devkit-e7:~# cat /sys/kernel/debug/mmc0/ios
clock:          400000 Hz
actual clock:   400000 Hz
vdd:            21 (3.3 ~ 3.4 V)
bus mode:       2 (push-pull)
chip select:    1 (active high)
power mode:     2 (on)
bus width:      0 (1 bits)
timing spec:    0 (legacy)
signal voltage: 0 (3.30 V)
driver type:    0 (driver type B)

=====================================================================

If you have any pointers please suggest,  your  inputs are  highly appreciated..

Regards,
Pankaj Pandey

On Fri, Nov 22, 2024 at 9:45 PM Ulf Hansson <ulf.hansson@xxxxxxxxxx> wrote:
>
> + Shawn, Liming, Yifeng,
>
> On Fri, 22 Nov 2024 at 08:09, Pankaj Pandey <pankaj.embedded@xxxxxxxxx> wrote:
> >
> > Hi Ulf,
> >
> > Tried in linux-6.12 but observed same issue there also:
> >
> > =========================================================
> > devkit-e7 login: mmc0: Timeout waiting for hardware cmd interrupt.
> > mmc0: sdhci: ============ SDHCI REGISTER DUMP ===========
> > mmc0: sdhci: Sys addr:  0x00000000 | Version:  0x00000005
> > mmc0: sdhci: Blk size:  0x00000000 | Blk cnt:  0x00000000
> > mmc0: sdhci: Argument:  0x00000c00 | Trn mode: 0x00000000
> > mmc0: sdhci: Present:   0x03ff0000 | Host ctl: 0x00000001
> > mmc0: sdhci: Power:     0x0000000f | Blk gap:  0x00000000
> > mmc0: sdhci: Wake-up:   0x00000000 | Clock:    0x0000fa07
> > mmc0: sdhci: Timeout:   0x00000000 | Int stat: 0x00000000
> > mmc0: sdhci: Int enab:  0x00ff1003 | Sig enab: 0x00ff1003
> > mmc0: sdhci: ACmd stat: 0x00000000 | Slot int: 0x00000000
> > mmc0: sdhci: Caps:      0x276e648a | Caps_1:   0x08008071
> > mmc0: sdhci: Cmd:       0x0000341a | Max curr: 0x00000000
> > mmc0: sdhci: Resp[0]:   0x00000000 | Resp[1]:  0x00000000
> > mmc0: sdhci: Resp[2]:   0x00000000 | Resp[3]:  0x00000000
> > mmc0: sdhci: Host ctl2: 0x00000000
> > mmc0: sdhci: ADMA Err:  0x00000000 | ADMA Ptr: 0x00000000
> > mmc0: sdhci: ============================================
> > mmc0: Reset 0x2 never completed.
> > =======================================================
> >
> > Regards,
> > Pankaj Pandey
>
> Thanks Pankaj,
>
> It's not entirely easy to tell what goes wrong - and a lot of changes
> have happened since v5.4.
>
> I guess a git bisect would help us to narrow down when things got
> screwed up. If you have the time to do that, that would greatly help I
> think.
>
> I have looped in some more of the driver authors to see if someone has
> an idea where to start looking.
>
> In the meantime, it would be useful to get some more information about
> your platform and a pointer to some DTS files.
>
> Kind regards
> Uffe
>
> >
> > On Wed, Nov 20, 2024 at 6:34 PM Ulf Hansson <ulf.hansson@xxxxxxxxxx> wrote:
> > >
> > > On Wed, 20 Nov 2024 at 09:28, Pankaj Pandey <pankaj.embedded@xxxxxxxxx> wrote:
> > > >
> > > > Hi All,
> > > >
> > > > My target board(ARMv8-A AArch32 processor), supports the "Synopsys DWC
> > > > MSHC controller." I am using the Linux 5.4 kernel and have enabled the
> > > > following configurations to support the "SDHCI platform driver for
> > > > Synopsys DWC MSHC":
> > > >
> > > > CONFIG_MMC_SDHCI=y
> > > > CONFIG_MMC_SDHCI_PLTFM=y
> > > > CONFIG_MMC_SDHCI_OF_DWCMSHC=y
> > > >
> > > > This setup works perfectly on Linux 5.4, successfully detecting all
> > > > microSD cards. However, when I use the same driver configuration with
> > > > Linux 6.11.0, I encounter the below mentioned error:
> > > >
> > > > sdhci: Secure Digital Host Controller Interface driver
> > > > sdhci: Copyright(c) Pierre Ossman
> > > > sdhci-pltfm: SDHCI platform and OF driver helper
> > > > mmc0: sdhci: Version:   0x00000005 | Present:  0x020f0000
> > > > mmc0: sdhci: Caps:      0x276e648a | Caps_1:   0x08008071
> > > > SMCCC: SOC_ID: ARCH_SOC_ID not implemented, skipping ....
> > > > mmc0: sdhci: Auto-CMD23 available
> > > > mmc0: SDHCI controller on 48102000.sdhci [48102000.sdhci] using ADMA
> > > > mmc0: Timeout waiting for hardware cmd interrupt.
> > > > mmc0: sdhci: ============ SDHCI REGISTER DUMP ===========
> > > > mmc0: sdhci: Sys addr:  0x00000000 | Version:  0x00000005
> > > > mmc0: sdhci: Blk size:  0x00000000 | Blk cnt:  0x00000000
> > > > mmc0: sdhci: Argument:  0x00000c00 | Trn mode: 0x00000000
> > > > mmc0: sdhci: Present:   0x020f0000 | Host ctl: 0x00000001
> > > > mmc0: sdhci: Power:     0x0000000f | Blk gap:  0x00000000
> > > > mmc0: sdhci: Wake-up:   0x00000000 | Clock:    0x0000fa07
> > > > mmc0: sdhci: Timeout:   0x00000000 | Int stat: 0x00000000
> > > > mmc0: sdhci: Int enab:  0x00ff1083 | Sig enab: 0x00ff1083
> > > > mmc0: sdhci: ACmd stat: 0x00000000 | Slot int: 0x00000000
> > > > mmc0: sdhci: Caps:      0x276e648a | Caps_1:   0x08008071
> > > > mmc0: sdhci: Cmd:       0x0000341a | Max curr: 0x00000000
> > > > mmc0: sdhci: Resp[0]:   0x00000000 | Resp[1]:  0x00000000
> > > > mmc0: sdhci: Resp[2]:   0x00000000 | Resp[3]:  0x00000000
> > > > mmc0: sdhci: Host ctl2: 0x00000000
> > > > mmc0: sdhci: ADMA Err:  0x00000000 | ADMA Ptr: 0x00000000
> > > > mmc0: sdhci: ============================================
> > > > mmc0: Reset 0x2 never completed.
> > > >
> > > > =====================================================
> > > >
> > > > Please find mmc debug info and dts file changes for references:-
> > > >
> > > > root@devkit-e7:~# cat /sys/kernel/debug/mmc0/ios
> > > > clock:          400000 Hz
> > > > actual clock:   400000 Hz
> > > > vdd:            21 (3.3 ~ 3.4 V)
> > > > bus mode:       2 (push-pull)
> > > > chip select:    1 (active high)
> > > > power mode:     2 (on)
> > > > bus width:      0 (1 bits)
> > > > timing spec:    0 (legacy)
> > > > signal voltage: 0 (3.30 V)
> > > > driver type:    0 (driver type B)
> > > >
> > > > sdmmc: sdhci@48102000 {
> > > >                         compatible = "snps,dwcmshc-sdhci";
> > > >                         reg = <0x48102000 0x1000>;
> > > >                         interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>,
> > > >                                      <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>;
> > > >                         clocks = <&syst_hclk>, <&syst_hclk>;
> > > >                         clock-names = "core", "bus";
> > > >                         bus-width = <4>;
> > > > max-frequency = <25000000>;
> > > >                         status = "okay";
> > > >                 };
> > > >
> > > > Kindly request you to please let me know if I am missing anything.
> > >
> > > Would it be possible for you to do a "git bisect" to see if we can
> > > find if there is a particular commit causing the problem?
> > >
> > > Moreover, we have v6.12 now, so it seems reasonable to give that a try too.
> > >
> > > Kind regards
> > > Uffe





[Index of Archives]     [Linux Memonry Technology]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux