-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
esp32c6-devkit - uninitialized variable in nuttx/arch/risc-v/src/common/espressif/esp_irq.c #11980
Comments
When I look into code then initial value should ensure the fail when the --- a/arch/risc-v/src/common/espressif/esp_irq.c
+++ b/arch/risc-v/src/common/espressif/esp_irq.c
@@ -153,7 +153,7 @@ static int esp_cpuint_alloc(int irq)
{
uint32_t bitmask;
uint32_t intset;
- int cpuint;
+ int cpuint = ESP_NCPUINTS;
/* Check if there are CPU interrupts with the requested properties
* available. But anyway when I compile the Nuttx with above described default configuration, flash it by
then I can see on the serial port on output only
and then no more information is printed nor any character is accepted, echoed etc. |
The chip identification is
May it be I have made error that I have flashed RISC-V GCC used from Debian stable
|
Hi @ppisa, Our internal tests are building without any problems. Seems you are not using correct toolchain and version. Could you please try to test with suggested toolchain? Output should be like this:
|
Thanks for the response. I have setup temporarily account, loaded entrusted GCC binaries and compiled actual NuttX sources with added esptool
This GCC toolchain does not report evident bug in the code so build goes through, flashing works but there is no output on serial console nor USB serial after power-up. If I press reset button, I obtain
but then the board is stuck. No NSH promp etc. I can test OpenOCD I hope that bootloader binaries are taken from
If you think that some procedure how to restore boot, could help, please inform me. As for the warinig/error I can send pull to correct uninitialized variable to mainline if the solution to set it up to Problem is that we need to decide really soon if we can dare to use ESP32C6 as the target for the microprocessor architectures course starting right now or not. We can use ESP32C3 where in legacy mode we know everything and are able to add peripherals, demonstrate CAN communication with drivers we have contributed into NuttX etc. But we want to use platform with some DC motors and encoder peripheral and motor control PWM of ESP32C6 is promising. We cannot afford to buy 30+ ICE-V kits which would be ideal for many tasks but on the other hand are too expensive to provide to each student and relative complex. I believe we can demonstrate motion control on ESP32C6 even without NuttX drivers by direct code in application which could be even educative how to access and setup MCU peripherals. We show that to our students on our own kits based one Xilinx Zynq SBC. But we need to provide solution for course for foreign university now and want RISC-V based solution to match lectures. I have realized may be 20 or 30 motion control systems on all possible targets from eight-bit MCUs to 64-bit FPGA, PCIe, data acquisition based, GNU/Linux, assembly, NuttX, RTEMS etc. sometimes including own QEMU based matching HW models etc. But we need at least base OS to work reliably and problem is that we are tight with time now. |
Hi @ppisa! First of all, thank you for reporting the issue regarding the non-initialized variable and the outdated documentation. We'll fix this ASAP. We'll be very thankful if you can send the pull-request fixing the non-initialized variable. About the toolchain, NuttX uses a single toolchain for all RISC-V implementations and that's not different for our Espressif's SoCs. We highly recommend using the same, as we ensure that our SoCs are compatible with these toolchains. You can check it here which toolchain we use and how to download it (or even use NuttX's CI docker image to build NuttX without messing with your local GCC versions). As @eren-terzioglu told you, our internal CI tests the build and the HW, so I can assure you that this configuration is known to be working without any problems (actual NSH commands are tested with HW in the loop). About the bootloader, it isn't required anymore. NuttX boots directly: no binaries are required. Don't worry if you followed the instructions to download and flash the 2nd stage bootloader, once you re-flash the device with newer NuttX versions, it will be overwritten. General considerations/recommendations
|
Unfortunately even even when I have re-build with reference binary from scratch on empty account the board does not work, as I have informed in previous post. So it is not toolchain problem. We try another piece. |
I am trying Espressif provided ESP32-C6-DevKitC-1 , standard configuration
even without any configuration change I receive
I can build after quick hack
Please @tmedicci , @eren-terzioglu or somebody other from Espressif team, have you noticed this problem.
The text was updated successfully, but these errors were encountered: