Alex Stewart
b84a69168f
Fix cut-paste error in gpio_regs.h comment
2015-08-19 09:03:18 -07:00
Alex Stewart
fc1a1a7d0a
Add esp/gpio_regs.h
2015-08-18 22:46:25 -07:00
Alex Stewart
2ffd3da71e
Add esp/iomux_regs.h
2015-08-18 17:38:31 -07:00
Angus Gratton
491bf900c4
espressif/esp_wifi.h: Add prereq includes
2015-08-13 17:12:02 +10:00
Angus Gratton
7d480876fa
Add basic C++ new/delete operators, as contributed by @mikejac in #24
2015-08-13 08:33:07 +10:00
Angus Gratton
7f338e66cb
Unaligned load: Remove debugging variables
2015-08-11 16:25:35 +10:00
Angus Gratton
e3b24df043
Unaligned load: Shave a few more instructions off
2015-08-11 16:25:11 +10:00
Angus Gratton
3b3f5ea771
Unaligned loads: Only save working registers, use jump table to load non-working registers
2015-08-11 15:29:53 +10:00
Angus Gratton
8ea4ae27e2
Unaligned loader: Support l16si
2015-08-11 15:03:53 +10:00
Angus Gratton
773a046dc3
Unaligned loader: clean up, reduce number of registers
2015-08-11 14:23:41 +10:00
Angus Gratton
424dc0f3b0
Add C++ support to Makefile, and proof-of-concept simple.cpp example
...
This is a work in progress based on @mikejac's work.
Missing:
* No 'new' operator.
* I don't think STL is currently supported.
2015-08-10 16:14:30 +10:00
Michael Jacobsen
da6b5f74bb
Mostly updated header files for use in C++
2015-08-10 15:31:03 +10:00
Angus Gratton
3eee1a9845
Examples: Fix printf argument flags for older example programs
2015-08-10 14:50:56 +10:00
Angus Gratton
72670be012
Update work with WiFi credentials
...
PR #16
2015-08-10 14:50:32 +10:00
Angus Gratton
bfd38cd1e2
Experimental support for storing const strings in SPI flash or IRAM
...
As discussed in #11
Known limitations:
- Only supports l8ui/l16ui
- Unoptimised load routine
- Not called from DoubleExceptionHandler but should be
- Doesn't restore state properly when falling through to fatal exception handler
2015-08-10 12:03:03 +10:00
Angus Gratton
25e124a612
ld: Link memmove into IRAM (used by sprintf, etc.)
2015-08-10 11:54:30 +10:00
Angus Gratton
d685581829
Syscall hander: Fix a3 save address
...
(SDK doesn't use syscall exception so bug probably never hit?)
2015-08-10 11:54:30 +10:00
Johan Kanflo
64a1e5598b
Correct prototype for sdk_uart_rx_one_char, kudos to @foogod
2015-08-07 13:26:06 +02:00
Johan Kanflo
0e521a74a9
WiFi credentials
...
Changed local.h to include/ssid_config.h and added instructions on how
to keep your WiFi credentials safe from Github.
2015-08-07 13:26:06 +02:00
Angus Gratton
1cb2de5b96
spi_flash.h: Correct comment regarding flashchip structure
...
From ed0a079d9b
2015-08-07 18:19:09 +10:00
Angus Gratton
e7460de0a1
esp_system.h: Fix return type of sdk_system_get_rst_info
2015-08-06 16:35:20 +10:00
Angus Gratton
ed0a079d9b
Expose SDK flashchip parameter
...
More thanks due to @foogod's RE work for this.
2015-08-06 11:40:44 +10:00
Angus Gratton
d703f8eae0
esptool.py: Ensure flash size args are passed at each step
...
('esptool.py write_image' will override the flash size in your binaries with the
default, given the chance)
2015-08-06 11:40:44 +10:00
Angus Gratton
bed6907d22
Exception vector address must be 256 byte aligned
...
Not actually a problem with the current linker script as the address is
predetermined there at start of IRAM, but might as well be accurate
about it.
As per advice from @foogod on esp8266-re mailing list:
https://groups.google.com/d/msg/esp8266-re/1ljIY3Zttbo/HvzHSWOLCgAJ
2015-08-06 09:54:46 +10:00
Angus Gratton
5f82b3c27f
Merge branch 'master' of github.com:SuperHouse/esp-open-rtos
2015-08-05 14:24:10 +10:00
Angus Gratton
19b8383069
Working TFTP server based OTA updates
...
Tested with 16MBit flash configuration, two rboot update slots.
Closes #10
2015-08-05 14:10:14 +10:00
Angus Gratton
6887a8119a
Simple example: Fix printf modifier
2015-08-05 14:04:12 +10:00
Angus Gratton
dd538b2889
Makefile: Pass flash size & speed flags to both esptool.py & esptool2
2015-08-05 14:04:12 +10:00
Angus Gratton
6bbd6736a4
Add SDK set_sleep_type/get_sleep_time functions (undocumented in 0.9.9, may not workas expected)
2015-08-03 12:52:42 +10:00
Angus Gratton
aed843fc14
exception_vectors: Remove some cruft some the symbol table
2015-07-30 10:10:37 +10:00
Angus Gratton
147257efa4
Almost functional OTA support
...
ota_basic example can receive new image via TCP.
However - writing to flash with interrupts disabled causes data loss,
and the TCP flow is very slow to recover. Linux sender quickly ramps up
RTT timer to very long retry intervals, crippling performance &
throughput.
Running the update without the flash writes causes the data to be
received quickly, so this is definitely an issue with the time taken for
the erase cycle.
Progress towards #10
2015-07-29 16:50:23 +10:00
Angus Gratton
3797cf5357
lwip: Ignore some compiler warnings when debugging is on
2015-07-29 16:50:23 +10:00
Angus Gratton
efc454035c
Move all code paths touched by NMI to IRAM
...
Prerequisite for calling Cache_Read_Disable() for OTA updates.
Massive thanks due to @foogod and their xtobjdis tool, creating the call
graph of where the wDev_ProcessFiq touched (including in newlib, etc.)
would have otherwise been very painful:
https://bitbucket.org/foogod/xtobjdis
2015-07-29 16:47:33 +10:00
Angus Gratton
28fdebee92
gpio: Change gpio_write argument to bool
2015-07-29 10:35:15 +10:00
Angus Gratton
9c7c94f96d
Makefile: When assembling, add the source dir to the assembler include path
2015-07-28 11:42:56 +10:00
Angus Gratton
30877f4ef0
Makefile: Assemble any .s files files found in SRC_DIRs
2015-07-28 11:27:41 +10:00
Angus Gratton
2440ba526a
Makefiles: Allow for EXTRA_COMPONENTS and EXTRA_LDFLAGS to append to either variable
2015-07-28 11:20:18 +10:00
Angus Gratton
265cef7e00
Add some LED debugging assembler macros
...
Not used directly in esp-open-rtos but useful to keep around.
2015-07-28 11:19:01 +10:00
Angus Gratton
ed7ba52c9a
Add exception vectors & low-level handlers
...
At the moment these are almost bit-for-bit copies of the vector
behaviour in the RTOS SDK, but hopefully that will start to change.
Progress towards #2
2015-07-28 11:01:57 +10:00
Angus Gratton
4d91d4432e
Merge pull request #14 from kanflo/master
...
Changed flashing order
2015-07-24 09:57:10 +10:00
Johan Kanflo
d4873379a9
Changed flashing order
...
Workaround for a ESP8266 ROM bug that cuases SPI flash erase
to sometimes erase an extra sector. See
https://github.com/themadinventor/esptool/issues/33
2015-07-23 14:13:07 +02:00
Angus Gratton
d4a503f320
Fix bug with blank OTA binary file name
2015-07-23 15:19:30 +10:00
Angus Gratton
87dc2317f5
Support building an OTA-compatible flash image
...
Image is suitable for SDK v1.2 bootloader or rBoot.
2015-07-21 15:27:19 +10:00
Angus Gratton
5bbbc1f144
Run linker scripts via C preprocessor
2015-07-21 15:27:19 +10:00
Angus Gratton
c95369e86c
emacs dir-locals.el: Only disable tabs in c-mode (Makefiles need tabs)
2015-07-21 15:26:11 +10:00
Angus Gratton
e0e7814856
Update README, including removing references to esp8266-wiki
...
Closes #9
2015-07-15 16:15:35 +10:00
Angus Gratton
86188c01fd
Merge branch 'newlib'
2015-07-15 16:01:18 +10:00
Angus Gratton
689cf874b2
Provide our own newlib libc
...
Newlib 2.2.0 w/ nan ofeatures, xtensa patches, locking
implementation.
Built from https://github.com/projectgus/newlib-xtensa
branch xtensa-2_2_0-lock
commit daa6ae40cdc8099f54c3e68a586fc1b906169c5a
For more details, see:
https://github.com/SuperHouse/esp-open-rtos/wiki/libc-configuration
Closes #1
2015-07-15 15:17:59 +10:00
Angus Gratton
a566a51c09
Use linker scripts rather than libcirom/objcopy tricks to arrange
...
IRAM/IROM sections.
esp-open-rtos compiled code: .text goes into irom by default, symbols
explicitly marked with IRAM attribute go into iram.
SDK code: .text goes into iram by default, symbols marked with
ICACHE_FLASH_ATTR go into irom.
libgcc functions also go into iram by default.
2015-07-09 13:58:41 +10:00
Angus Gratton
1d72ed3f70
Hardware timer support
2015-07-09 12:29:40 +10:00