-
Notifications
You must be signed in to change notification settings - Fork 174
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
esp-hosted-fg SDIO questions #229
Comments
|
Hi @mantriyogesh, Thanks for the answer. I do have additional questions about the first question/answer, to have a clear picture of what I have to do to prepare the WROVER-kit (ESP-WROVER-B module onboard) correctly. First question, the ESP-HOSTED implementation uses 4-bit SD mode, as we have to connect the 4 data lines, correct? Second question, you state:
Do you mean I have to add additional external pull-ups to the CMD and DATA (DAT0 - DAT3) lines, even when the WROVER kit should have these pull-ups onboard? As the pull-ups are already there, I would think I do not have to add them. In the SDIO hardware setup picture, I don't see any extra resistors added? Third question, should one always resolve these issues ("Conflicts Between Bootstrap and SDIO on DAT2" and Pull-up Conflicts on GPIO13") first before trying the ESP-HOSTED-FG over SDIO? Or is it possible that is also works without fixing them? In other words, are all WROVER kits always affected by these issues, or it depends from board to board? Fourth question, to resolve "Conflicts Between Bootstrap and SDIO on DAT2", I can just burn the efuse, that's not a problem. But what option should I choose to resolve this issue "Pull-up Conflicts on GPIO13"? The given options are: I guess the first 2 are not an options as we want to use 4-bit SDIO mode? What approach did you take, what is your advised option here to be compatible with ESP-HOSTED-FG? Thanks in advance. |
If you have exact same board, you can use the same board without any pull-ups, as same board without any modifications worked for us with Raspberry Pi. Can you please send the complete textual logs for esp and host (dmesg or /var/log/kern.log) to understand current situation? |
Hi @mantriyogesh, Indeed, we have the same WROVER kit. Some snippets of our dmesg:
mmc1 is used for another attached microSD card. We should see activity for mmc0, but that is not happening. These are the ESP32 logs:
I do see the reset of the happening at the ESP32 side. The complete dmesg file. This is the ESP32 log (after the reset): esp32.txt. It seems that the ESP32 sdio slave is not detected. |
I don't think it is mmc1 node. Please revisit your device tree changes and enable mmc which you are trying to connect with ESP32. |
Just to be sure, add/enable sdmmc node mapped to sdio port you connected with ESP. add that note as hot pluggable. you may also want to use 'broken-cd;' or similar sdio parameters to your device tree. once your mmc is detectedfor esp, you can just power off -> power on and the mmc detection prints should be displayed in /var/log/kern/log or dmesg. Please note, these are prerequisite to get the platform up for ESP-Hosted. |
Indeed, that is what I mean. The sdmmc node that should be enabled is mmc0, not mmc1 (as this used by another sd card slot). So the log shows that nothing happens for mmc0, meaning there is something wrong with the detection of the ESP32 over SDIO. When I try this slot with a normal (micro)SD card, the card is detected without a problem. So I guess there is still an issue in my device tree so SDIO devices are not detected (indeed, maybe something with the CD line that is not there). At the moment, my device tree looks like this:
This was inspired by this Yocto port issue. I am still in the process of checking that there are conflicts/issues in the device tree. Do you notice important (device tree) properties missing? |
Actually, all SoCs will have different instance names. Even the device tree properties could be implemented by different SoCs differently. No single size fits all. |
Hi, I've got an update: I found out that I still had to enable the pull-ups flag I am now running the raw TP test over SDIO, but the output is not what I was expecting:
Obviously something is still wrong, any ideas what could be the issue? Thanks in advance. |
Data throughput may be affected by the debug prints added. I think better to do Raw throughput test, which will show you max throughput you can attain with current setup at transport |
Unsupported tag event , seems fishy. Possible to add Rx and TX in esp and host if any packets are getting dropped. On different note wrt data rate, |
If raw throughput is less (fails the test) |
Hi, I disabled all debugging output (and Bluetooth support).
When running the raw throughput test from ESP32 to iMX6, I get:
From iMX6 to ESP32, I get:
Are these numbers to be expected? From ESP32 to iMX6 is significantly lower than the other direction. Concerning the clock speed, looking at:
Should this be higher, 50 MHz? I've also set the speed flag to
|
Hello @gdaneels Yes the throughput will be lower at Linux Rx because of kernel slow path. Linux to Esp will be higher always. |
Your might wish to check your SoC's Device tree as well to check what is max limit configured there. |
please use STATION_MODE_LISTEN_INTERVAL as 3 when you come to Wi-Fi as station mode testing. File: |
JFYI, ESP32-C6 support for SDIO is added for Linux. |
Hi,
I am trying out the esp-hosted first generation with SDIO.
I have 3 questions:
When compiling the kernel module out-of-the-box (for iMX6UL, kernel 5.4.210+gf2663e3, yocto build (dunfell)), I get the error that
LINUX_VERSION_CODE
andKERNEL_VERSION
are not defined (see attached log). This is easily fixed by including<linux/version.h>
inesp.h
(see attached patch). Am I the only experiencing this issue?Concerning SDIO support, I've read on the issues threads and in the docs, that SDIO support will come for ESP32-C6. Is there any update on this? This support will be for both the first and next generation esp-hosted? In addition, is there any particular reason there will not be any SDIO support for the ESP32-C3 and ESP32-S3 (or will they also be supported)?
Thanks in advance.
linux-version.log
esp_linux_version_patch.txt
The text was updated successfully, but these errors were encountered: