diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..ba5aa84
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,11 @@
+.idea/
+*.iml
+*.iws
+*.eml
+out/
+.DS_Store
+.svn
+log/*.log
+tmp/**
+node_modules/
+.sass-cache
\ No newline at end of file
diff --git a/.npmignore b/.npmignore
new file mode 100644
index 0000000..50c12b9
--- /dev/null
+++ b/.npmignore
@@ -0,0 +1,7 @@
+/test
+/examples
+.github
+.gulpfile
+.sass-cache
+gulpfile.js
+CONTRIBUTING.md
\ No newline at end of file
diff --git a/img/esp32s3-more-boot.png b/img/esp32s3-more-boot.png
new file mode 100644
index 0000000..44dfbc2
Binary files /dev/null and b/img/esp32s3-more-boot.png differ
diff --git a/img/esp32s3-uart.png b/img/esp32s3-uart.png
new file mode 100644
index 0000000..d3c1baa
Binary files /dev/null and b/img/esp32s3-uart.png differ
diff --git a/img/gdb-with-elf.png b/img/gdb-with-elf.png
new file mode 100644
index 0000000..b3e218d
Binary files /dev/null and b/img/gdb-with-elf.png differ
diff --git a/img/memory-maps.png b/img/memory-maps.png
new file mode 100644
index 0000000..fcf0ba1
Binary files /dev/null and b/img/memory-maps.png differ
diff --git a/index.html b/index.html
index 2cca87b..e1ac05c 100644
--- a/index.html
+++ b/index.html
@@ -18,12 +18,12 @@
Emulating the Badge Under Renode
- (Eventually)
+ (Eventually)
Sean "xobs" Cross
@@ -261,39 +261,98 @@
It Doesn't
- Xtensa is a New Architecture
+ Xtensa is an Uncommon Architecture
- - Added support for ESP32 family
- - Merged quickly
- - Few others use Xtensa
+ - Audio DSPs
+ - Possibly Intel?
+ - NXP
Extensive use of Boot ROM
- - Pulled ROM off device with esptool
- - Load into RAM
- - Set entrypoint
+
- Add a serial port
+ Extensive use of Boot ROM
+ $ esptool.py dump_mem \
+ 0x3ff90000 \
+ 65536 \
+ irom.bin
+
+
+
+
+ Add a serial port
+
+namespace Antmicro.Renode.Peripherals.UART {
+ public class ESP32_UART : UARTBase, IDoubleWordPeripheral,
+ IKnownSize {
+ private readonly DoubleWordRegisterCollection registers;
+ public ESP32_UART(Machine machine) : base(machine) {
+ registers = new DoubleWordRegisterCollection(this,
+ new Dictionary<long, DoubleWordRegister> {
+ {0x00, new DoubleWordRegister(this).WithValueField(0,8,
+ writeCallback: (_, v) => TransmitCharacter((byte)v))}
+ });
+ }
+
+
+ Add a serial port
+
+{0x00, new DoubleWordRegister(this)
+ .WithValueField(0, 8,
+ writeCallback: (_, v) => TransmitCharacter((byte)v))}
+
+
+
Load SVD file
+ sysbus:
+ init:
+ ApplySVD @esp32s3.svd
+
+
+ Load SVD file
+
+extmem: Unhandled read from offset 0x64.
+extmem: Unhandled write to offset 0x64, value 0x3.
+sysbus: Read from an unimplemented register SYSTEM:SYSCLK_CONF
+ (0x600C0060), returning a value from SVD: 0x1. (3)
+sysbus: Read from an unimplemented register SYSTEM:PERIP_CLK_EN0
+ (0x600C0018), returning a value from SVD: 0xF9C1E06F.
+sysbus: Write of value 0xF9C1E06F to an unimplemented register
+ SYSTEM:PERIP_CLK_EN0 (0x600C0018) generated from SVD.
+sysbus: Read from an unimplemented register SYSTEM:PERIP_RST_EN0
+ (0x600C0020), returning a value from SVD: 0x0.
+sysbus: Write of value 0x0 to an unimplemented register SYSTEM:PERIP_RST_EN0
+ 0x600C0020) generated from SVD.
+sysbus: Read from an unimplemented register SYSTEM:PERIP_RST_EN0
+ (0x600C0020), returning a value from SVD: 0x0.
+sysbus: Write of value 0x4 to an unimplemented register SYSTEM:PERIP_RST_EN0 (0x600C0020) generated from SVD.
+
Slowly Advance
+
- What's Left
+ GDB with ELF
+
+
+
+ What's Left?
- SPI Controller
- Interrupt Controller
@@ -385,7 +444,7 @@
multiplex: {
// Example values. To generate your own, see the socket.io server instructions.
secret: getQueryHash().s || null,
- id: '54917777254025e5',
+ id: '863f0948d18284f3',
url: 'https://p.xobs.io/'
},