Commit graph

5034 commits

Author SHA1 Message Date
Ivan Grokhotkov
c6829fa5b8 sdmmc: improve error handling during SPI mode init
- In SPI mode, the card will respond to the initial SDIO reset (done
using CMD52) with “invalid command” error. Handle this correctly.

- sdmmc_card_init had a hack where GO_IDLE_STATE (CMD0) command was
sent twice. Add explanation why this is done, and don’t expect
correct response from the card on first CMD0.

- improve logs printed at debug level by adding CMD index
2018-04-11 11:11:17 +08:00
Ivan Grokhotkov
e148c2a12c docs: update SDMMC and SDSPI documentation
- Split SDMMC page into pages about SDMMC/SDSPI hosts and a page about
   the protocol layer.
- Use autogenerated API reference instead of manually generated one.
- Add information about SDIO APIs.
2018-04-11 11:07:13 +08:00
Ivan Grokhotkov
ee600784c5 sdmmc: add SDIO support
- Add SDIO support at protocol layer (probing, data transfer, interrupts)
- Add SDIO interrupts support in SDMMC host
- Add test (communicate with ESP32 in SDIO download mode)
2018-04-11 11:07:13 +08:00
Ivan Grokhotkov
5f97e6bebb sdmmc: fill as many DMA descriptors as possible 2018-04-11 11:06:50 +08:00
Ivan Grokhotkov
20a8c3318a sdmmc: do expect CMD_DONE interrupt after response timeout
Existing code assumed that response timeout is not followed by CMD_DONE,
which was not true, in fact. Host datasheet states that CMD_DONE is sent
after an RTO.
2018-04-11 11:06:50 +08:00
Ivan Grokhotkov
01cd2fce73 sdmmc: print error status only once 2018-04-11 11:06:50 +08:00
Ivan Grokhotkov
5fc6fb58ea sdmmc: don't whitelist the opcodes when handling response timeout
All the commands which do not have a response must have their flags set
accordingly. Therefore the host will not send RTO interrupt if response
is not expected. It is a bug in the code logic if it happens otherwise.
2018-04-11 11:06:50 +08:00
Ivan Grokhotkov
f02cff13cc sdmmc: set highest possible host clock divider
SDMMC host suffers from an issue that it outputs data near the rising
edge of the card clock, which is the edge used by the card to sample
data. If sampling time constraint is not satisfied, card may read data
after the transition.

The phases of output/input data can, in fact, be adjusted. However this
adjustment happens in the clock generation block outside of the host.
So the maximum phase change which can be created this way is equal to
half of the host clock period. So if the host clock is set to the lowest
possible frequency (for the given card frequency), then the phase offset
(and hence the hold time) will be the highest. This change modifies the
logic used to determine clock dividers accordingly.

sdmmc host: set correct dout phase and print correct frequency
2018-04-11 11:06:50 +08:00
Ivan Grokhotkov
84d6793f77 sdmmc: don't set data_expected on SET_BUS_WIDTH command
SET_BUS_WIDTH is not a data transfer command. Extensive search in the
host datasheet and SD card spec did not reveal the origin of this hack
or 'feature'. Further testing showed that removing this does not lead to
regressions.
2018-04-11 11:06:50 +08:00
Ivan Grokhotkov
42de5fb76d sdmmc: send init sequence before CMD0 2018-04-11 11:06:50 +08:00
Ivan Grokhotkov
907fc1167a gpio: add special GPIO signal values 2018-04-11 11:06:50 +08:00
He Yin Ling
e184a2fc0b Merge branch 'feature/esp-tls' into 'master'
https_request: Fix CI failure

See merge request idf/esp-idf!2216
2018-04-10 22:07:07 +08:00
Jitin George
a48e0121e0 https_request: Fix CI failure 2018-04-10 16:00:34 +05:30
Ivan Grokhotkov
9464699952 Merge branch 'bugfix/Kconfig_fix_incorrect_description' into 'master'
Fix Kconfig.projbuild in some examples, where myssid is the password

See merge request idf/esp-idf!2192
2018-04-10 18:19:34 +08:00
Ivan Grokhotkov
2522c1b2f9 Merge branch 'bugfix/rtc_clk_fixes' into 'master'
Power management and RTC fixes

See merge request idf/esp-idf!2131
2018-04-10 18:17:02 +08:00
Angus Gratton
f7b7b4ef59 Merge branch 'bugfix/mdns_fixes' into 'master'
MDNS: Fix some issues when hostname is not set or services are removed

See merge request idf/esp-idf!2179
2018-04-10 13:43:02 +08:00
Angus Gratton
2914111c8c Merge branch 'bugfix/heap_fragmentation_on_split_pr1761' into 'master'
heap: Try to merge tail with next block when splitting

See merge request idf/esp-idf!2147
2018-04-10 12:14:57 +08:00
Jeroen Domburg
e23cfb4038 Merge branch 'bugfix/spi_master_example_gfx' into 'master'
Spi_master: spiffier graphics

See merge request idf/esp-idf!2030
2018-04-10 12:08:01 +08:00
Angus Gratton
2bfef060ba Merge branch 'bugfix/small_fixes_from_github' into 'master'
Bugfix/small fixes from github

See merge request idf/esp-idf!2200
2018-04-10 09:19:19 +08:00
Angus Gratton
58ed6cc9af Merge branch 'bugfix/wifi_ps_modem' into 'master'
wifi: Add WIFI_PS_MODEM for backwards compatibility with V3.0 API

See merge request idf/esp-idf!2203
2018-04-10 09:18:53 +08:00
Ivan Grokhotkov
d41b8d9515 Merge branch 'bugfix/remove_pm_gpio_dbg' into 'master'
component/esp32 : remove pm gpio dbg

See merge request idf/esp-idf!2206
2018-04-09 19:14:18 +08:00
Ivan Grokhotkov
d88f2582cf Merge branch 'feature/build_exclude_components' into 'master'
make: EXCLUDE_COMPONENTS

See merge request idf/esp-idf!2204
2018-04-09 19:13:39 +08:00
Angus Gratton
97a382077f wifi: Add WIFI_PS_MODEM for backwards compatibility with V3.0 API 2018-04-09 16:55:38 +10:00
me-no-dev
421c6f154b Fix exception when service is removed while there are pending packets that depend on it 2018-04-09 09:40:08 +03:00
Tian Hao
1bde34c1f1 component/esp32 : remove pm gpio dbg 2018-04-09 14:33:48 +08:00
Ivan Grokhotkov
b11209b070 Merge branch 'feature/esp-tls' into 'master'
feature/add simplified TLS socket APIs

See merge request idf/esp-idf!1951
2018-04-09 14:25:21 +08:00
Angus Gratton
9a985359d6 Merge branch 'bugfix/wifi_fix_some_typos' into 'master'
Fix two WiFi and LWIP typos

See merge request idf/esp-idf!2189
2018-04-09 11:59:00 +08:00
Anton Maklakov
046ff2e628 Make error codes looks like literals in the code of them (easy for searching). Minor fixes, typos 2018-04-09 13:54:18 +10:00
Ing. Jaroslav Šafka
3d89c8ba74 rmt: Fix LoadProhibited on RX END
Fixes exceptions LoadProhibited, when rmt tries read variable p_rmt on RX END which can be 0.
It happens after esp_reset()  (OTA) and the rmt is not probably stopped by it.
In other words the routine rmt_driver_isr_default was called before second rx channel was registered.

scenario:
register tx channel
register rx channel
reboot
register tx channel
-> exception (because rx channel is accessed)

Merges https://github.com/espressif/esp-idf/pull/1671
2018-04-09 12:29:05 +10:00
Mixerito
9f39411e80 esp32: get_chip_info_esp32() return correct model number
out_info->model was zeroed by memset

Merges https://github.com/espressif/esp-idf/pull/1760
2018-04-09 12:28:23 +10:00
Fredrik
97c6a94a03 Bugfix GPIO_DIS_OUTPUT to work with pin 32 and up
Merges https://github.com/espressif/esp-idf/pull/1796
2018-04-09 12:28:23 +10:00
Daniel Miller
9acebb08fe doc: spelling
Merges https://github.com/espressif/esp-idf/pull/1800
2018-04-09 12:28:21 +10:00
Daniel Miller
32e0903561 doc: Spelling
Merges https://github.com/espressif/esp-idf/pull/1798
2018-04-09 12:28:15 +10:00
ndotb
765824e1fd make: EXCLUDE_COMPONENTS
Add project build variable, documentation for EXCLUDE_COMPONENTS
2018-04-08 13:07:43 -04:00
Jitin George
9d416fe84e resolve merge conflicts 2018-04-06 18:16:40 +05:30
Jitin George
254212b02b changes to accomodate new Doc structure 2018-04-06 17:16:27 +05:30
Jitin George
b09c3e9878 mbedtls integration in esp-tls 2018-04-06 17:16:27 +05:30
Jitin George
9c8a5ca979 https mbedtls example 2018-04-06 17:16:27 +05:30
Jitin George
30b50cbfb3 esp-tls header file name change 2018-04-06 17:16:27 +05:30
Jitin George
e29294b49a Resolved Issues 2018-04-06 17:16:27 +05:30
Jitin George
8cd3c47956 esp-tls api support in https_request 2018-04-06 17:16:27 +05:30
Jitin George
8a1dcc0765 CA Certificate verification 2018-04-06 17:16:27 +05:30
Kedar Sovani
8211a16207 Use esp-tls in the http2 example 2018-04-06 17:16:27 +05:30
Kedar Sovani
070884fc2e Include error log in case of error 2018-04-06 17:13:14 +05:30
Kedar Sovani
433bd8c91c Minor fixes 2018-04-06 17:13:14 +05:30
Kedar Sovani
1c72c8d126 Supports TLS with HTTP2 client 2018-04-06 17:13:14 +05:30
Kedar Sovani
eb051fe72f Minor fixes 2018-04-06 17:13:14 +05:30
Anuj Deshpande
adbcaf8938 Cast to remove warnings 2018-04-06 17:13:14 +05:30
Kedar Sovani
e45024e088 Don't use 'port' number for DNS query
- In some cases where the HTTP URL contains the port number
(http://hostname:334), the DNS querier fails to resolve the hostname.
- Hence we have to populate the port number ourselves.
- This can only be done based on whether we get an IPv4 or IPv6
  address.
2018-04-06 17:13:14 +05:30
Kedar Sovani
306d59d32c Make read/write function pointers
as per Ivan's feedback
2018-04-06 17:13:14 +05:30