[U-Boot] Writes to FAT broken by bcm2835 sdhost driver

[resending, forgot to subscribe from this address]
Hi,
For some reasons I need to save environment on RaspberryPi 3 and it worked well for me in older versions of u-boot, but stopped working in newer ones. Using bisect I figured out that the commits responsible for that were c8a73a26d6dd9b7d489e66529fe1412425d8f2d1 and caf2233b281c03e3e359061a3dfa537d8a25c273, introducing sdhost and pinctrl drivers respectively.
Versions before these two work well wrt. writing to FAT/saving the environment.
After these patches when compiled with rpi_3_32b_defconfig, reading works well, but fatwrite gives
wait_transfer_complete - still waiting after 10001 retries
and saveenv
fsm 1, hsts 00000001
When I try to compile with CONFIG_MMC_BCM2835=n (CONFIG_MMC_SDHCI_BCM2835 is still enabled), neither read nor write works:
Saving Environment to FAT... Card did not respond to voltage select! ** Bad device mmc 0 ** Failed (1)
Finally with CONFIG_PINCTRL=n u-boot doesn't compile at all (not sure if it was intended behavior):
serial_bcm283x_mu.c:162: undefined reference to `pinctrl_get_gpio_mux' serial_bcm283x_pl011.c:30: undefined reference to `pinctrl_get_gpio_mux'
Would be grateful for any help with these issues.
Best regargs, Anton Gerasimov

On 06/28/2018 10:53 AM, Anton Gerasimov wrote:
[resending, forgot to subscribe from this address]
Hi,
For some reasons I need to save environment on RaspberryPi 3 and it worked well for me in older versions of u-boot, but stopped working in newer ones. Using bisect I figured out that the commits responsible for that were c8a73a26d6dd9b7d489e66529fe1412425d8f2d1 and caf2233b281c03e3e359061a3dfa537d8a25c273, introducing sdhost and pinctrl drivers respectively.
Versions before these two work well wrt. writing to FAT/saving the environment.
After these patches when compiled with rpi_3_32b_defconfig, reading works well, but fatwrite gives
wait_transfer_complete - still waiting after 10001 retries
and saveenv
fsm 1, hsts 00000001
This should be fixed in 2018.07. Please try to run with latest git.
Alex

Thank you, I should have checked the master instead of relying on what's in poky.
Unrelated: now I can't load FIT image, but I don't have enough data do tell what the reason is yet.
Thanks, Anton
On 06/28/2018 11:49 AM, Alexander Graf wrote:
On 06/28/2018 10:53 AM, Anton Gerasimov wrote:
[resending, forgot to subscribe from this address]
Hi,
For some reasons I need to save environment on RaspberryPi 3 and it worked well for me in older versions of u-boot, but stopped working in newer ones. Using bisect I figured out that the commits responsible for that were c8a73a26d6dd9b7d489e66529fe1412425d8f2d1 and caf2233b281c03e3e359061a3dfa537d8a25c273, introducing sdhost and pinctrl drivers respectively.
Versions before these two work well wrt. writing to FAT/saving the environment.
After these patches when compiled with rpi_3_32b_defconfig, reading works well, but fatwrite gives
wait_transfer_complete - still waiting after 10001 retries
and saveenv
fsm 1, hsts 00000001
This should be fixed in 2018.07. Please try to run with latest git.
Alex

On 28.06.18 10:53, Anton Gerasimov wrote:
[resending, forgot to subscribe from this address]
Hi,
For some reasons I need to save environment on RaspberryPi 3 and it worked well for me in older versions of u-boot, but stopped working in newer ones. Using bisect I figured out that the commits responsible for that were c8a73a26d6dd9b7d489e66529fe1412425d8f2d1 and caf2233b281c03e3e359061a3dfa537d8a25c273, introducing sdhost and pinctrl drivers respectively.
Versions before these two work well wrt. writing to FAT/saving the environment.
After these patches when compiled with rpi_3_32b_defconfig, reading works well, but fatwrite gives
wait_transfer_complete - still waiting after 10001 retries
and saveenv
fsm 1, hsts 00000001
I think my previous reply must've gone missing, so let me send it again :).
This is a known issue with 2018.05. Can you please try 2018.07 (just use the latest git master) instead and see if the problem disappears for you?
Thanks!
Alex
participants (2)
-
Alexander Graf
-
Anton Gerasimov