Commit graph

64 commits

Author SHA1 Message Date
Alex Stewart
0d0d9277db Fix format strings in app_main.c 2015-09-20 14:09:30 -07:00
Alex Stewart
7b353b15d5 Merge branch 'master' into open-startup 2015-09-20 14:05:54 -07:00
Angus Gratton
df8eaeec8c Merge branch 'feature/c++' 2015-09-12 16:27:26 +10:00
Angus Gratton
f585ed8f46 Rename GPIO_CONF_PUSH_PULL to GPIO_CONF_OPEN_DRAIN
Seems I got the functionality of this bit inverted when
initially testing.

In testing it also seems open drain mode is ignored on some pins, which
still source current. Needs more investigation though (may be pullups
internal to the ESP modules or set by default in software.)

Relates to #45
2015-09-12 16:21:26 +10:00
Angus Gratton
d5141b3077 iomux: Fix setting of invalid bits when masking in iomux fields
Fixes regression from 2a939e97

Part of issue #45
2015-09-12 15:23:42 +10:00
Angus Gratton
c55cfd3b2e Merge branch 'fix/int32_t'
Closes #42
2015-09-09 16:23:31 +10:00
Angus Gratton
1221e2117b Rework component makefiles to have a default <component>_ROOT
This fixes a long-standing bug where build directories sometimes
expanded many levels deeper than they should have.

Component names can now no longer contains slashes (ie the component
name for 'extras/i2c' is now just 'i2c')
2015-09-08 09:59:59 +10:00
Angus Gratton
e61e84ca7d libc: Redefine int32_t/uint32_t as 'int' not 'long'
libc built from projectgus/newlib-xtensa@0077776963

Closes #42
2015-09-05 13:37:00 +10:00
Angus Gratton
5aa095298d libc syscalls: ENOSYS implementations for open,fstat,close,lseek
Closes #41
2015-09-03 11:45:52 +10:00
Angus Gratton
006c73c7ba libc read()/write() syscalls - return EBADF if fd is not stdin/stdout as applicable
As discussed in #41

Also fixes indent in _read_r
2015-09-03 11:34:54 +10:00
Alex Stewart
5baa048cbb app_main.c: load correct g_ic sector from flash 2015-08-30 13:37:40 -07:00
Alex Stewart
1454e34496 Bug fix for dump_flash_config_sectors 2015-08-30 12:11:08 -07:00
Alex Stewart
3e138c800f More app_main.c fixups
It's alive! IT'S ALIVE!!
2015-08-28 18:53:43 -07:00
Alex Stewart
f6f57aa81c More app_main fixups from object code comparisons 2015-08-28 18:53:43 -07:00
Alex Stewart
d55da0f09a Various app_main.c bug fixes 2015-08-28 18:53:43 -07:00
Alex Stewart
ec8c3c134a Replace libmain:app_main.o with core/app_main.c 2015-08-28 18:53:43 -07:00
Alex Stewart
78be94744c Fix broken UART(i) definition 2015-08-25 22:31:47 -07:00
Angus Gratton
3408ba6fe9 common_macros: Include sys/cdefs.h, defines _Static_assert among others 2015-08-26 11:11:31 +10:00
Angus Gratton
0720244179 Move c++ operators back to link-time resolutions, part of 'core'
This reverts commit e9b1df5cb5.
2015-08-26 11:07:06 +10:00
Angus Gratton
d7641d0010 gpio.h: Explicit cast to enum type (needed for g++) 2015-08-26 10:49:00 +10:00
Angus Gratton
e43d2dd3de Merge branch 'master' into feature/c++ 2015-08-26 10:46:48 +10:00
Angus Gratton
6e84d08f90 Post-merge cleanup of extras/cpp_support 2015-08-26 10:45:21 +10:00
Alex Stewart
0155632dd3 Remove 'packed' attribute from all regs structs 2015-08-25 17:13:13 -07:00
Alex Stewart
b76bf99d7c Remove unnecessary AND for VAL2FIELD macro
Added VAL2FIELD_M / SET_FIELD_M for rare cases when there might actually be some need for it.
2015-08-25 17:07:06 -07:00
Angus Gratton
76ad427dc2 Merge pull request #29 from foogod/issue_8
Add more *_regs.h definitions
2015-08-24 16:14:19 +10:00
Angus Gratton
08bb9f16e7 Add a comment explaining commented out REG_BASE lines
Change was part of #27
2015-08-22 17:39:25 +10:00
Alex Stewart
9f3f3e5b08 Add esp/rtcmem_regs.h 2015-08-21 14:20:00 -07:00
Alex Stewart
b482a1cc77 Fix a couple of struct def issues with 2 previous commits 2015-08-21 14:06:38 -07:00
Alex Stewart
3f3f257612 Add more regs to esp/dport_regs.h
Added a bunch of definitions based on info in http://esp8266-re.foogod.com/wiki/Memory_Map#dport0
2015-08-21 13:59:20 -07:00
Alex Stewart
af32217805 Add esp/uart_regs.h and esp/spi_regs.h 2015-08-21 13:56:23 -07:00
Alex Stewart
d79c1c3983 rename GPIO_CONF_DRIVER_ENABLE back to GPIO_CONF_PUSH_PULL 2015-08-21 09:54:20 -07:00
Alex Stewart
13b924d259 Fix leftover IOMUX_FUNC_A/D references 2015-08-19 16:53:02 -07:00
Alex Stewart
0d6af96f2d Cleanup a few comments in *_regs.h files 2015-08-19 16:50:56 -07:00
Alex Stewart
c32a6692a0 Add esp/wdt_regs.h 2015-08-19 16:48:11 -07:00
Alex Stewart
eaa090e267 Added esp/timer_regs.h and esp/dport_regs.h 2015-08-19 11:34:18 -07:00
Alex Stewart
3cc5d1fa86 Replace stdint.h with esp/types.h in gpio_regs.h 2015-08-19 09:05:03 -07:00
Alex Stewart
5e6b022e39 Fix cut-paste error in gpio_regs.h comment 2015-08-19 09:03:18 -07:00
Alex Stewart
7fa2817f1b Add esp/gpio_regs.h 2015-08-18 22:46:25 -07:00
Alex Stewart
9727df5f6c Add esp/iomux_regs.h 2015-08-18 17:38:31 -07:00
Angus Gratton
584dc0a69d Add basic C++ new/delete operators, as contributed by @mikejac in #24 2015-08-13 08:33:07 +10:00
Angus Gratton
430d0fbcbc 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
c5bd46dae0 Mostly updated header files for use in C++ 2015-08-10 15:31:03 +10:00
Johan Kanflo
3bacab7c67 Correct prototype for sdk_uart_rx_one_char, kudos to @foogod 2015-08-07 13:26:06 +02: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
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
aed843fc14 exception_vectors: Remove some cruft some the symbol table 2015-07-30 10:10:37 +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
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