Re: [PATCH 0/2] arm64: tegra: add wp-gpio to P2957 board

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

 



On Fri, Aug 30, 2024 at 11:20:45AM GMT, Diogo Ivo wrote:
> Hi Thierry,
> 
> On Thu, Aug 29, 2024 at 05:31:23PM GMT, Thierry Reding wrote:
> > From: Thierry Reding <treding@xxxxxxxxxx>
> > 
> > 
> > On Thu, 15 Aug 2024 16:50:38 +0100, Diogo Ivo wrote:
> > > Define the wp-gpio for the P2597 board.
> > > 
> > > For this, patch 1 fixes the assignment of the vmmc supply's gpio that
> > > was incorrectly assigned to the wp-gpio of the external slot.
> > > 
> > > Patch 2 adds the definition of the wp-gpio.
> > > 
> > > [...]
> > 
> > Applied, thanks!
> 
> Thanks for picking up the patches! In my testing around SD/MMC I found that
> currently UHS-I cards are broken on the P2597. When trying to use one
> the system shows somewhat erratic behaviour where it sometimes hangs and
> some other times it simply fails to read from the SD card. I have
> tracked the point at which this happens to be around
> tegra_sdhci_pad_autocalib() when switching to SDR104 mode, where there
> is the possibility of using specific offsets for this mode. Currently
> there are no values specified in tegra210.dtsi, so the 1.8V values are
> being used. However, when I tried specifying them as
> 
> 	nvidia,pad-autocal-pull-up-offset-sdr104 = <0>;
> 	nvidia,pad-autocal-pull-down-offset-sdr104 = <0>;
> 
> in the DT things started working fine. I did not send a patch with these
> values since I could not find what they should be on the X1 TRM, are
> there any recommended values for these parameters so that we can have
> this fixed?

Sorry for the late reply. Looking at the Tegra X1 TRM, section 32.7
"Programming Guidelines" (starting on page 2473), I see there are a
few subsections called "Run Auto-Calibration", which list recommended
values for the auto-calibration pull-down/-up offsets, depending on the
signaling mode (3.3V vs. 1.8V).

They are:

          3.3V    1.8V
          PD  PU  PD  PU
  SDMMC1  125  0  123 123
  SDMMC2  n/a n/a  5   5
  SDMMC3  125  0  123 123
  SDMMC4  n/a n/a  5   5

Now these aren't the ones you've been using, but it is what we have in
the Tegra210 DTSI file. Interestingly the TRM doesn't make those
specific to the mode (such as SDR104 and HS400 like the DT bindings
suggest they should be).

Also interestingly, on Tegra234 the recommended values in the TRM for
these fields is 0 (like you're using), irrespective of mode.

It's not entirely clear to me why we need these offsets during auto-
calibration, so 0 makes as much sense as any other value. The
documentation isn't very clear on what these values do, either. So I'd
be inclined to accept a patch such as yours based purely on the fact
that it makes things work.

Thierry

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [ARM Kernel]     [Linux ARM]     [Linux ARM MSM]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux