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