Commit graph

219 commits

Author SHA1 Message Date
Our Air Quality
b6fc58b743 spi_write: use uint32_t for the page iteration counter.
The page counter was using an uint8_t which seems unnecessary and might wrap.
2017-08-30 13:51:32 +10:00
Our Air Quality
af4ac44cb5 libc: update to a recent newlib version. 2017-08-30 13:51:32 +10:00
Our Air Quality
cd23acaa4a LwIP v2 support 2017-08-30 13:51:32 +10:00
Our Air Quality
5583543f14 Add an argument to ISRs. Disable interrupts while masking them. 2017-08-30 13:51:32 +10:00
Our Air Quality
ec5dabd237 sysparam: reserve one more flash sector before placing the sysparams
This is to help work with recent SDKs that add a RF cal sector by
default in the fifth last sector - just so the sysparam sectors do not
jump around when using different SDK versions.
2017-08-30 13:51:32 +10:00
Our Air Quality
6a0da03809 Use hwrand for the sdk uses of rand, in particular with the NMI.
The fiq NMI calls rand() from lmac:lmac.a:sdk_lmacTxFrame and the NMI
must not touch the newlib reent structure or enter critical regions
etc, so just use the simple and safe hwrand implementation as a
substitute.
2017-07-20 16:24:45 +10:00
UncleRus
852ed2f1ad Fixes unaligned writes to SPI data register 2017-04-20 01:49:46 +05:00
UncleRus
31ef50c9a9 Revert SPI memcpy() 2017-03-22 10:50:54 +05:00
sheinz
a91ec6eb61 sysparam fixes, tests, spi flash refactoring (#299)
Original work by @ourairquality
* Sysparam threadsafe and SPI access
* Sysparam test cases
* Fix for negative int8
* Sysparam getting bool without memory allocation. Bool tests.
* SPI flash refactoring.
* Extract common spiflash.c into core.
* Use spiflash.c in sysparam.
* Use memcpy in spiflash.c insted of hand-written version.
* Tests for spiflash.c
2017-03-22 02:18:04 +05:00
Andrew Clink
03597d9162 Make FreeRTOS hooks weak; Add example 2017-03-20 12:56:17 -07:00
Ruslan V. Uss
1457a3ed19 Fixed error of writing to SPI registers with memcpy (#352)
fixed memcpy() writing registers bug
2017-03-15 18:18:32 +05:00
Tuan PM
2b915c11c7 add some missing include & fixed display output on sh1104 (#319)
* add some missing include

* Fixed display on SH1106
2017-01-03 00:40:54 +02:00
otopetrik
8f5d49de81 Allow changing write function of stdout (#304)
* Allow changing write function of stdout.

Required for stdout redirection.
Works on blocks, not chars - does _not_ use sdk_os_putc !
Should work even when linking with SPIFFS.
2016-12-19 20:55:26 +05:00
Ruslan V. Uss
61c3d509e5 Merge pull request #302 from Zaltora/spi_fixes
Fixes SPI Bug(s)
2016-12-05 19:08:17 +06:00
lilian
8767a8a0a9 Readable option 2016-12-05 12:45:40 +01:00
lilian
47cd73ae02 Fix status with bus. 2016-12-05 12:05:18 +01:00
lilian
762f73515b Second bug. fix attempt. 2016-12-05 09:03:02 +01:00
lilian
199237ec6e Fixes Bug(s) 2016-11-30 08:19:25 +01:00
UncleRus
c3b6aff41d gpio_interrupt_handler() can now be overriden 2016-11-30 02:54:07 +05:00
UncleRus
a61af52d96 More convenient GPIO interrupt handlers 2016-11-30 01:07:46 +05:00
lilian
20ab2176fb fix tab 2016-11-26 15:14:40 +01:00
lilian
f19fdc37be adjustements 2016-11-26 12:26:42 +01:00
lilian
71bce674a0 Spi features 2016-11-26 12:19:53 +01:00
Our Air Quality
5c885c7722 sysparam: export the 'compact' function, added it to the editor. (#213) 2016-11-24 00:41:39 +02:00
Our Air Quality
1728ef3dfc Flush the uart tx fifo before a restart. (#274)
Also comment the point at which the bus clock that drives the uart changes on startup and comment out the change in the uart divisor. This at least allows a consistent uart baud rate during a restart if using the rate 115200.
2016-11-18 11:34:03 +02:00
Our Air Quality
e48910ea3b Update and re-organise the sdk internal definitions. (#267) 2016-11-14 00:05:13 +02:00
Our Air Quality
a5cc728079 FreeRTOS type updates. (#261) 2016-11-05 12:04:03 +02:00
sheinz
e2e6f35288 Fix spiff and stdin_uart_interrupt overiding the same read function (#249)
* Fix spiff and stdin_uart_interrupt overiding the same read function

* Make strong function defninition replace a weak one
2016-11-01 17:14:34 +02:00
OurAirQuality
7bab80c33d FreeRTOS v9.0.0 upgrade 2016-10-25 23:35:51 +11:00
sheinz
29bd8d832a Merge pull request #222 from resetnow/phy-regs
core: add phy regs definition
2016-10-10 22:16:46 +03:00
Vlad Ivanov
94237f0ecd core: add phy regs definition 2016-09-15 22:31:45 +03:00
Vlad Ivanov
12d0da0c58 core: exception_vectors: initial esp-gdbstub support (#205) 2016-09-15 08:26:38 +02:00
Our Air Quality
4c78db81d8 sysparams: get/set int32 and int8 apis. (#209)
Rename the get/set_int api functions to get/set_int32.

Add get/set_int8 api functions too in anticipation of more efficient implementations for these.
2016-09-15 08:17:26 +02:00
sheinz
c2953eda38 Merge pull request #215 from pfalcon/pfalcon
esp/gpio_regs.h: Add info about strapping pins captured in GPIO.IN register.
2016-09-05 09:23:56 +03:00
sheinz
ad8764b9c6 Merge pull request #211 from ourairquality/gpio16
GPIO16 support.
2016-09-05 09:20:26 +03:00
Paul Sokolovsky
285dedd8f5 esp/gpio_regs.h: Add info about strapping pins captured in GPIO.IN register.
Specifically, in the high 16 bits of GPIO.IN register.
2016-09-04 23:20:29 +03:00
ourairquality
c52890eed7 GPIO16 support. 2016-08-31 11:30:32 +10:00
Paul Sokolovsky
0962255d91 esp/interrupts.h: Add RTC interrupt number.
40002a58     $a3 = rtc_intr_handler
40002a5e     $a4 = 0x0
40002a60     $a2 = 0x3
40002a62     call ets_isr_attach
2016-08-31 01:51:23 +03:00
sheinz
46840baed4 Merge pull request #196 from pfalcon/pfalcon
esp8266 headers: A new interrupt no and a new WDT register
2016-08-22 07:58:38 +03:00
Our Air Quality
762eced543 sysparam: add a semaphore to synchronize writers. (#194) 2016-08-21 07:47:40 +02:00
Paul Sokolovsky
0aabbea16f esp/wdt_regs.h: Add "current value" register.
WDT is countdown timer. Current value is accessible via VAL register. At
this time it's unclear if it's RO or RW (common sense says it shoul be RO).

Source: looking at the WDT registers on a running chip.
2016-08-20 16:13:07 +03:00
Paul Sokolovsky
458a6813c8 esp/interrupts.h: Add wDev FIQ interrupt number.
40251dd9     $a2 = 0x0
40251ddb     $a3 = wDev_ProcessFiq
40251dde     $a4 = 0x0
40251de0     $a0 = ets_isr_attach
40251de3     call $a0
2016-08-20 16:06:09 +03:00
Johan Kanflo
40dc3bf945 Sysparam by @foogod (#180)
* Sysparam implementation

sysparam improvements

Mostly done, a few minor cleanups left.

Add sysparam_editor example

Sysparam code cleanup

Add documentation to sysparam.h

Fix up sysparam.h docs

Added a couple more debug statements

Fix potential memory leak if realloc() fails

Major sysparam overhaul

Add sysparam_get_info function

Add sysparam initialization to app_main.c

* Fixed warnings, added license
2016-08-18 12:07:46 +02:00
sheinz
0875e5d55b Merge branch 'iomux-set-func' of https://github.com/ourairquality/esp-open-rtos into ourairquality-iomux-set-func
Conflicts:
	core/include/esp/iomux.h
2016-08-17 14:36:46 +03:00
sheinz
27135d6252 i2s_dma: Implementation of I2S + DMA wrapper library 2016-08-16 10:19:33 +03:00
ourairquality
4b77138f71 Add gpio_set_iomux_function(). 2016-08-15 22:23:45 +10:00
ourairquality
8405b989f9 iomux_set_function: remove the IOMUX_FUNC transform of the func argument.
The allows the IOMUX_GPIO<n>_FUNC_<function> definitions to be used here.
2016-08-15 22:10:59 +10:00
sheinz
22654a4de7 SPIFFS: Support lseek, stat, fstat
Support for lseek, stat, fstat added.
Test extended to covert those functions.
2016-07-14 16:13:03 +03:00
sheinz
6484c57737 Merge branch 'experiments/posix_fs' into feature/spiffs 2016-07-14 15:26:32 +03:00
Angus Gratton
678b59babf Honour values of configCPU_CLOCK_HZ & configTICK_RATE_HZ for tick rate
Fixes #147

* Can vary tick rate from 100Hz via configTICK_RATE_HZ. Note that the
  SDK binary libraries are hard-coded to assume the tick rate is 100Hz,
  so changing the tick rate may have unexpected consequences for lower
  layer WiFi behaviour (such as certain kinds of timeouts happening
  faster/slower.)

* Setting configCPU_CLOCK_HZ to 160MHz means ESP will set 160MHz during
  initialisation. Only 80MHz and 160MHz are supported.

* Timing of tasks is no longer affected by current CPU freq (whether set
  via configCPU_CLOCK_HZ or via sdk_system_update_cpu_freq().)
  Previously doubling the CPU frequency would double the tick rate.
2016-07-06 17:22:09 +10:00