-
Notifications
You must be signed in to change notification settings - Fork 60
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
WIP: Implement undocument wifi registers, get AP mode working (QEMU-155) #80
base: esp-develop
Are you sure you want to change the base?
Commits on May 22, 2023
-
Co-authored-by: Anton Maklakov <[email protected]> Co-authored-by: Omar Chebib <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 42a0627 - Browse repository at this point
Copy the full SHA 42a0627View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4f972e5 - Browse repository at this point
Copy the full SHA 4f972e5View commit details -
LOCAL: Revert "tcg: Optimize inline dup_const for MO_64"
This reverts commit 666cc79.
Configuration menu - View commit details
-
Copy full SHA for a9821ff - Browse repository at this point
Copy the full SHA a9821ffView commit details -
xtensa: don't send window registers to GDB
GDB considers window registers as pseudo registers, meaning that they are calculated by GDB using the values of AR registers and windowbase. This patch removes the window registers from the total number of registers that QEMU will send to GDB, making the number of registers match the one that GDB expects to see.
Configuration menu - View commit details
-
Copy full SHA for 19dd0fd - Browse repository at this point
Copy the full SHA 19dd0fdView commit details -
LOCAL: target/xtensa: allow tweaking the list of registers sent to GDB
This commit introduces two environment variables which can be used to adjust the list of registers sent from QEMU to GDB: * If QEMU_XTENSA_CORE_REGS_ONLY is set, only non-privileged registers will be sent to GDB. This behavior is compatible with Espressif builds of GDB up to esp-2021r1. * If QEMU_XTENSA_COUNT_WINDOW_REGS is set, QEMU will send window registers (a0-a15) to GDB. Enable this if you don't have a build of GDB which considers a0-a15 to be "raw" registers.
Configuration menu - View commit details
-
Copy full SHA for fe84285 - Browse repository at this point
Copy the full SHA fe84285View commit details -
Configuration menu - View commit details
-
Copy full SHA for c960a17 - Browse repository at this point
Copy the full SHA c960a17View commit details -
hw/net: opencores_eth: fix handling of DP83848C PHYSTS register
DP83848C PHY emulated by opencores_eth has several vendor-specific MII registers at 0x10-0x1d. Reading these registers resulted in an out-of-bounds access to the regs array. Part of this commit adds bounds checking. Since the PHYSTS vendor-specific register is accessed by some of the embedded DP83848C drivers, the rest of the commit adds simple emulation of this register, setting the bits depending on the link status.
Configuration menu - View commit details
-
Copy full SHA for 1c1c4e9 - Browse repository at this point
Copy the full SHA 1c1c4e9View commit details -
Configuration menu - View commit details
-
Copy full SHA for f5dfe00 - Browse repository at this point
Copy the full SHA f5dfe00View commit details -
Configuration menu - View commit details
-
Copy full SHA for 82063f9 - Browse repository at this point
Copy the full SHA 82063f9View commit details -
Configuration menu - View commit details
-
Copy full SHA for b1d87e7 - Browse repository at this point
Copy the full SHA b1d87e7View commit details -
Configuration menu - View commit details
-
Copy full SHA for aad3a7b - Browse repository at this point
Copy the full SHA aad3a7bView commit details -
Configuration menu - View commit details
-
Copy full SHA for cc04899 - Browse repository at this point
Copy the full SHA cc04899View commit details -
Configuration menu - View commit details
-
Copy full SHA for 72d3396 - Browse repository at this point
Copy the full SHA 72d3396View commit details -
Configuration menu - View commit details
-
Copy full SHA for f379725 - Browse repository at this point
Copy the full SHA f379725View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9377b12 - Browse repository at this point
Copy the full SHA 9377b12View commit details -
Configuration menu - View commit details
-
Copy full SHA for a5a01e6 - Browse repository at this point
Copy the full SHA a5a01e6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2fd9ccd - Browse repository at this point
Copy the full SHA 2fd9ccdView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8c2b319 - Browse repository at this point
Copy the full SHA 8c2b319View commit details -
Co-authored-by: Maksim Naumenko <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 03638c2 - Browse repository at this point
Copy the full SHA 03638c2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3f70bd1 - Browse repository at this point
Copy the full SHA 3f70bd1View commit details -
Configuration menu - View commit details
-
Copy full SHA for e5ef5b2 - Browse repository at this point
Copy the full SHA e5ef5b2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 84a8596 - Browse repository at this point
Copy the full SHA 84a8596View commit details -
hw/misc: add simple PSRAM emulation
This is an SSIPeripheral instance that knows how to respond to read_id command. It doesn't store any data. It is sufficient for the IDF driver to decide to turn on the PSRAM cache. Actual data storage in PSRAM is emulated in DPORT.
Configuration menu - View commit details
-
Copy full SHA for 995725f - Browse repository at this point
Copy the full SHA 995725fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 3371729 - Browse repository at this point
Copy the full SHA 3371729View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3fb8cbf - Browse repository at this point
Copy the full SHA 3fb8cbfView commit details -
Configuration menu - View commit details
-
Copy full SHA for 04439d5 - Browse repository at this point
Copy the full SHA 04439d5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 66fa088 - Browse repository at this point
Copy the full SHA 66fa088View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3fddc2e - Browse repository at this point
Copy the full SHA 3fddc2eView commit details -
target/riscv: implement Espressif RISC-V CPU type
Espressif RISC-V CPU has a different has way of treating interrupts, which is not standard. Thus, this class will override the default RISC-V CPU behavior to have 31 interrupt lines.
Configuration menu - View commit details
-
Copy full SHA for c584eef - Browse repository at this point
Copy the full SHA c584eefView commit details -
hw/char: implement ESP32-C3 UART
C3 UART overrides ESP32's UART
Configuration menu - View commit details
-
Copy full SHA for 167401b - Browse repository at this point
Copy the full SHA 167401bView commit details -
hw/gpio: implement ESP32-C3 GPIO
C3 GPIO overrides ESP32 GPIO driver and modifies the boot strap pin
Configuration menu - View commit details
-
Copy full SHA for 3324f82 - Browse repository at this point
Copy the full SHA 3324f82View commit details -
hw/timer: implement ESP32-C3 Timer Groups
All the features are supported
Configuration menu - View commit details
-
Copy full SHA for 036ba9b - Browse repository at this point
Copy the full SHA 036ba9bView commit details -
hw/timer: implement ESP32-C3 System Timer
Systimer Timer is fully implemented
Configuration menu - View commit details
-
Copy full SHA for 96a20cc - Browse repository at this point
Copy the full SHA 96a20ccView commit details -
Configuration menu - View commit details
-
Copy full SHA for 127b8e4 - Browse repository at this point
Copy the full SHA 127b8e4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 89dea91 - Browse repository at this point
Copy the full SHA 89dea91View commit details -
hw/riscv: implement ESP32-C3 Interrupt Matrix
All features are implemented, except level/edge trigger option.
Configuration menu - View commit details
-
Copy full SHA for 791feae - Browse repository at this point
Copy the full SHA 791feaeView commit details -
Configuration menu - View commit details
-
Copy full SHA for f334898 - Browse repository at this point
Copy the full SHA f334898View commit details -
Configuration menu - View commit details
-
Copy full SHA for 14f8919 - Browse repository at this point
Copy the full SHA 14f8919View commit details -
hw/misc: implement ESP32-C3 USB Serial JTAG as a stub
The module doesn't do much at the moment, it is used as a stub
Configuration menu - View commit details
-
Copy full SHA for 5949e87 - Browse repository at this point
Copy the full SHA 5949e87View commit details -
Configuration menu - View commit details
-
Copy full SHA for edad3a1 - Browse repository at this point
Copy the full SHA edad3a1View commit details -
Configuration menu - View commit details
-
Copy full SHA for a8a86ed - Browse repository at this point
Copy the full SHA a8a86edView commit details -
Configuration menu - View commit details
-
Copy full SHA for 3eb4caf - Browse repository at this point
Copy the full SHA 3eb4cafView commit details -
hw/riscv: implement ESP32-C3 machine
This also includes the C3 BIOS (ROM bootloader)
Configuration menu - View commit details
-
Copy full SHA for 273c5c2 - Browse repository at this point
Copy the full SHA 273c5c2View commit details
Commits on Jun 2, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 8245148 - Browse repository at this point
Copy the full SHA 8245148View commit details -
hw/riscv: modify ESP32-C3 interrupt matrix to only generate interrupt…
…s on signals transitions
Configuration menu - View commit details
-
Copy full SHA for aed84c7 - Browse repository at this point
Copy the full SHA aed84c7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8bae2a3 - Browse repository at this point
Copy the full SHA 8bae2a3View commit details -
hw/ssi: implement SPI flash special commands for ESP32-C3 SPI controller
* Closes espressif#75 These commands are used by when bootstraping the chip. This lets the `esptool` flash any image to the emulated SPI flash.
Configuration menu - View commit details
-
Copy full SHA for 90c8591 - Browse repository at this point
Copy the full SHA 90c8591View commit details
Commits on Jun 26, 2023
-
pc-bios/keymaps: Use the official xkb name for Arabic layout, not the…
… legacy synonym The xkb official name for the Arabic keyboard layout is 'ara'. However xkb has for at least the past 15 years also permitted it to be named via the legacy synonym 'ar'. In xkeyboard-config 2.39 this synoynm was removed, which breaks compilation of QEMU: FAILED: pc-bios/keymaps/ar /home/fred/qemu-git/src/qemu/build-full/qemu-keymap -f pc-bios/keymaps/ar -l ar xkbcommon: ERROR: Couldn't find file "symbols/ar" in include paths xkbcommon: ERROR: 1 include paths searched: xkbcommon: ERROR: /usr/share/X11/xkb xkbcommon: ERROR: 3 include paths could not be added: xkbcommon: ERROR: /home/fred/.config/xkb xkbcommon: ERROR: /home/fred/.xkb xkbcommon: ERROR: /etc/xkb xkbcommon: ERROR: Abandoning symbols file "(unnamed)" xkbcommon: ERROR: Failed to compile xkb_symbols xkbcommon: ERROR: Failed to compile keymap The upstream xkeyboard-config change removing the compat mapping is: https://gitlab.freedesktop.org/xkeyboard-config/xkeyboard-config/-/commit/470ad2cd8fea84d7210377161d86b31999bb5ea6 Make QEMU always ask for the 'ara' xkb layout, which should work on both older and newer xkeyboard-config. We leave the QEMU name for this keyboard layout as 'ar'; it is not the only one where our name for it deviates from the xkb standard name. Cc: [email protected] Signed-off-by: Peter Maydell <[email protected]> Reviewed-by: Richard Henderson <[email protected]> Reviewed-by: Philippe Mathieu-Daudé <[email protected]> Reviewed-by: Daniel P. Berrangé <[email protected]> Message-id: [email protected] Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1709
Configuration menu - View commit details
-
Copy full SHA for efe39d9 - Browse repository at this point
Copy the full SHA efe39d9View commit details
Commits on Jun 27, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 24a669b - Browse repository at this point
Copy the full SHA 24a669bView commit details -
hw/dma: implement GDMA Peripheral-to-Memory interface for ESP32-C3
Implement a first interface for Peripheral-to-Memory and Memory-to-Peripheral transfers.
Configuration menu - View commit details
-
Copy full SHA for 9b36b5d - Browse repository at this point
Copy the full SHA 9b36b5dView commit details -
2
Configuration menu - View commit details
-
Copy full SHA for a00a687 - Browse repository at this point
Copy the full SHA a00a687View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6a8b06c - Browse repository at this point
Copy the full SHA 6a8b06cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 96ab065 - Browse repository at this point
Copy the full SHA 96ab065View commit details
Commits on Jun 29, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 5eda8b6 - Browse repository at this point
Copy the full SHA 5eda8b6View commit details -
hw/misc: fix a bug in ESP32-C3 cache entries fields
Cache entries where incorrectly described, which resulted in wrong values being returned to the guest programs.
Configuration menu - View commit details
-
Copy full SHA for d96ca95 - Browse repository at this point
Copy the full SHA d96ca95View commit details
Commits on Jul 4, 2023
-
Implement undocument wifi registers, get AP mode working
ESP32 as client, QEMU as AP works with the following command: build/qemu-system-xtensa -nic user,model=misc.esp32_wifi,id=u1 -no-reboot -S -s -nographic -machine esp32 -drive file=../http_request/meshtest_http_10.0.0.8.bin,if=mtd,format=raw -object filter-dump,id=f1,file=dump.pcap,netdev=u1 -drive file=../efuse.bin,if=none,format=raw,id=efuse -global driver=nvram.esp32.efuse,property=drive,value=efuse The efuse file was dumped from a real ESP32 with espefuse.py dump The meshtest_http_... file was built from esp-idf/examples/protocols/http_request, configured to connect to one of the APs hardcoded in hw/misc/esp32_wifi_ap.c Co-authored-by: Martin Johnson <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 47ff913 - Browse repository at this point
Copy the full SHA 47ff913View commit details