Hi, On Fri, Nov 28, 2014 at 7:50 PM, Hans de Goede <hdego...@redhat.com> wrote: > Hi ChenYu, > > On 11/28/2014 10:20 AM, wens Tsai wrote: >> >> Hi Hans, >> >> Thanks for completing SPL support on the A31. >> I've managed to boot mainline U-boot on my Hummingbird A31. >> >> One issue I ran into is that with DCDC1 set at 3.0V, >> mmc0 is very unstable in the kernel. All operations >> timeout and the kernel panics because the rootfs isn't >> available. >> >> Raising the voltage to 3.3V gets rid of the problem, >> but I'm not sure that is the correct solution. > > > The fex file for the mele boards says dcdc1 should be 3.3V not > 3.0V and that makes sense really, since 3.3V is a standard > voltage, while 3.0V is not. > > However the fex file for the Hummingbird says 3.0V and my > Mele M9 works fine with the current u-boot setting of 3.0V. > > I've just booted my M9 into the original firmware and that is > actually using 3.3V so changing things to 3.3V does seem to > be the right thing. > > Maxime, I seem to remember you telling me that the Colombus > is really using 3.0V. > > Maxime can you confirm this? Is that routed to the mmc power ? > > It could be that 3.0V is enough for the A31 itself, but that > on boards which do not have a separate power-supply for the > mmc 3.3V is used ? > > I'm fine with moving to 3.3V, I'm wondering if we should > make it configurable like the DLDO# and ALDO# voltages, > see drivers/power/Kconfig, with a 3.3V voltage and an > override in the Colombus defconfig ? > > ChenYu, can you check which voltage the original firmware > is actually using ? You should see boot1 printing the > voltage, and you can check it from a root shell by doing:
This is during boot: U-Boot 2011.09-rc1 (Jun 17 2014 - 17:30:56) Allwinner Technology [ 0.213]version: 1.1.0 [ 0.216]pmbus: ready [ 0.218]PMU: AXP221 [ 0.220]PMU: AXP22x found [ 0.223]PMU: bat ratio = 100 [ 0.226]PMU: dcdc3 1260 [ 0.229]PMU: pll1 1008 Mhz dcdc1_vol = 3000 dcdc2_vol = 1200 dcdc3_vol = 1260 dcdc4_vol = 1200 dcdc5_vol = 1500 aldo1_vol = 3000 aldo2_vol = 1800 aldo3_vol = 3000 eldo3_vol = 1800 > cat /sys/class/regulator/regulator.13/name > cat /sys/class/regulator/regulator.13/microvolts > > (The first one is just to check your regulators are numbered > the same). This is just a dump of all the regulators from the firmware: axp22_DCDC1 3000000 enabled axp22_DCDC2 1200000 enabled axp22_DCDC3 1260000 enabled axp22_DCDC4 1200000 enabled axp22_DCDC5 1500000 enabled axp22_ldoio0 2800000 disabled axp22_ldoio1 1800000 enabled axp22_ldo1 3000000 enabled axp22_ldo2 3300000 enabled axp22_ldo3 1800000 enabled axp22_ldo4 3000000 enabled axp22_ldo5 700000 disabled axp22_ldo6 700000 disabled axp22_ldo7 2800000 disabled axp22_ldo8 2800000 enabled axp22_ldo9 1500000 disabled axp22_ldo10 700000 disabled axp22_ldo11 1800000 disabled axp22_ldo12 1100000 enabled As you can see it is indeed set to 3.0V. And it does work. So I'm kind of confused. Plus 3.0V doesn't seem to be a valid I/O voltage level for SD/MMC. BTW, I see you're working on RSB support for U-boot. Thanks in advance. ChenYu -- You received this message because you are subscribed to the Google Groups "linux-sunxi" group. To unsubscribe from this group and stop receiving emails from it, send an email to linux-sunxi+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.