Wykres commitów

418 Commity (1f45f160a8dcfc55d7eb09b83443bd2ce8b9c516)

Autor SHA1 Wiadomość Data
Michael (XIAO Xufeng) b08c2885d8 Merge branch 'bugfix/examples_echo_fix_stack_size' into 'master'
examples: fix echo example crash when UART interrupt handler placed in IRAM

Closes IDFGH-2371

See merge request espressif/esp-idf!8694
2020-08-06 19:32:14 +08:00
Alex Lisitsyn df9ca688d7 examples: fix echo example crash when UART interrupt handler placed in IRAM 2020-08-06 19:32:11 +08:00
Ivan Grokhotkov 16c73edc67 Merge branch 'refactor/add_alias_name_for_ets_common_api' into 'master'
esp_rom: extract common ets apis into esp_rom_sys.h

See merge request espressif/esp-idf!9701
2020-07-28 15:04:55 +08:00
morris 2917651478 esp_rom: extract common ets apis into esp_rom_sys.h 2020-07-27 15:27:01 +08:00
fuzhibo 1568b6913d driver(touch): fix touch sensor driver redundancy 2020-07-27 03:37:29 +00:00
Aditya Patwardhan 591d67d58b esp32/secure_element: update esp-cryptoauthlib submodule pointer 2020-07-23 16:08:14 +00:00
Fu Hanxi 6885421976 CI: add size info for binaries 2020-07-21 16:00:05 +08:00
Ivan Grokhotkov ea75605aa7 Merge branch 'feature/scan_test_at_pre_check' into 'master'
ci: scan_tests at pre_check stage to determine build/artifact behavior for example_test and custom_test

Closes IDF-1376

See merge request espressif/esp-idf!8447
2020-07-07 23:43:03 +08:00
Ivan Grokhotkov 8cd1f99ace Merge branch 'refactor/common_rom_gpio_apis' into 'master'
esp_rom: extract common GPIO apis into esp_rom_gpio.h

See merge request espressif/esp-idf!9248
2020-07-07 17:28:39 +08:00
morris a4d0033c03 esp_rom: extract common GPIO apis into esp_rom_gpio.h 2020-07-07 11:40:19 +08:00
Fu Hanxi 2c2f66aa21 add supported target to ESP32-S2 Temperature Sensor Example 2020-07-06 19:05:44 +08:00
morris 29f8aecfc0 console_repl: change config structure to support different devices 2020-07-02 07:39:46 +00:00
Darian Leung 97721d469c TWAI: Add ESP32-S2 support
This commit adds TWAI driver support for the
ESP32-S2. The following features were added:

- Expanded BRP support
- Expanded CLKOUT Divider Support
- Updated example READMEs
2020-06-30 16:56:03 +08:00
Michael (XIAO Xufeng) b3587ff88c Merge branch 'bugfix/fix_i2s_comm_format_unclear_description_bug' into 'master'
Bugfix(I2S):  Fix i2s_comm_format_t configuration parameter does not match the TRM bug

Closes IDFGH-3040, IDFGH-2913, IDFGH-578, IDFGH-2408, and IDFGH-3117

See merge request espressif/esp-idf!8339
2020-05-25 15:00:10 +08:00
Aditya Patwardhan 423e600d46 secure_element: atecc608_ecdsa example
* Replaced crypotoauthlib with esp-cryptoauthlib
* Added menuconfig option for esp-tls about using HSM
* Added error codes for HSM in esp-tls,
* Added support to select different type of ATECC608A chips
* Added README, updated docs
* tcp_transport: Added option to enable secure_element for ssl

Closes https://github.com/espressif/esp-idf/issues/4432
2020-05-21 13:08:30 +05:30
Bryan Hunt 4553f6c95d Add cryptoauthlib as a component with mbedtls integration
* Add options to mbedtls for hardware acceleration
* Disable mbedtls EC curves if hardware acceleration is selected
since the hardware will have to define the curves supported
* Add a hardware ecdsa example
2020-05-20 22:52:37 +05:30
houwenxiang b35d9002f3 driver(I2S): Fix i2s_comm_format_t configuration parameter does not match the TRM bug.
When I2S `i2s_comm_format_t` is set to `I2S_COMM_FORMAT_I2S_MSB`, the data should launch at first BCK. But not in fact, this MR fixed this issue.

For compatibility, several nwe parameters have been added, and the old parameters will be removed in the future.

    closes https://github.com/espressif/esp-idf/issues/5065

    closes https://github.com/espressif/esp-idf/issues/4957

    closes https://github.com/espressif/esp-idf/issues/2978

    closes https://github.com/espressif/esp-idf/issues/5136

    Merges https://github.com/espressif/esp-idf/pull/4522
2020-05-18 19:55:30 +08:00
Ivan Grokhotkov e0177eb252 examples/tusb_sample_descriptor: default to esp32s2 target 2020-04-29 10:04:13 +02:00
Michael (XIAO Xufeng) 9d98111652 Merge branch 'bugfix/spi_bus_lock_missing_semphrstatic' into 'master'
spi: fix config break and reduce overhead of the bus lock on SPI1

Closes IDFGH-3017

See merge request espressif/esp-idf!8221
2020-04-27 12:57:19 +08:00
morris 91e62f4e37 timer_group: update hal api && fix intr_enable
timer group interrupt enable is controled by level_int_ena instead of int_ena

Closes https://github.com/espressif/esp-idf/issues/5103
2020-04-23 19:29:15 +08:00
michael fdf983e0c4 spi: fix config break and reduce overhead of the bus lock on SPI1
The SPI bus lock on SPI1 introduces two side effects:

1. The device lock for the main flash requires the
`CONFIG_FREERTOS_SUPPORT_STATIC_ALLOCATION` to be selected, however this
option is disabled by default in earlier IDF versions. Some developers
may find their project cannot be built by their old sdkconfig files.

2. Usually we don't need the lock on the SPI1 bus, due to it's
restrictions. However the overhead still exists in this case, the IRAM
cost for static version of semaphore functions, and the time cost when
getting and releasing the lock.

This commit:

1. Add a CONFIG_SPI_FLASH_BYPASS_MAIN_LOCK option, which will forbid the
space cost, as well as the initialization of the main bus lock.

2. When the option is not selected, the bus lock is used, the
`CONFIG_FREERTOS_SUPPORT_STATIC_ALLOCATION` will be selected explicitly.

3. Revert default value of `CONFIG_FREERTOS_SUPPORT_STATIC_ALLOCATION`
to `n`.

introduced in 49a48644e4.

Closes https://github.com/espressif/esp-idf/issues/5046
2020-04-22 16:06:13 +08:00
Krzysztof Budzynski e1ab4b6711 Merge branch 'bugfix/uart_echo_readme' into 'master'
example: Remove duplicate commands and invalid serial port information

Closes IDFGH-3022

See merge request espressif/esp-idf!8295
2020-04-11 01:52:01 +08:00
Fu Hanxi 5b2fa1a5ad build_app: make multi target support readable 2020-04-09 16:40:57 +08:00
Roland Dobai 6adb1a0609 example: Remove duplicate commands and invalid serial port information
Closes https://github.com/espressif/esp-idf/issues/5049
2020-04-08 13:17:48 +02:00
fuzhibo baa7898e35 driver(adc/dac): fix adc dac driver for esp32s2
1. update register file about adc; 2. fix adc driver; 3. add UT for adc/dac;

See merge request espressif/esp-idf!7776
2020-04-01 12:41:51 +08:00
David Cermak abcc3fe6da spi: fix spi eeprom example build
Fix GNU make build error introduced in f53812d27a
2020-03-31 17:48:01 +02:00
Michael (XIAO Xufeng) 6998257514 spi: fix the component.mk for eeprom example
introduced in f53812d27a.
2020-03-31 18:18:18 +08:00
Michael (XIAO Xufeng) 135aa51d06 Merge branch 'feat/spi1_host_eeprom' into 'master'
spi: add eeprom example on SPI1 host

See merge request espressif/esp-idf!7130
2020-03-30 12:14:59 +08:00
Michael (XIAO Xufeng) de310764c6 Merge branch 'bugfix/fix_i2s_example_sample_calculation_incorrect_bug' into 'master'
bugfix (I2S): Fixed I2S example sine wave sample calculation incorrect bug

Closes IDFGH-2947

See merge request espressif/esp-idf!8108
2020-03-30 12:02:31 +08:00
Michael (XIAO Xufeng) f53812d27a spi: add eeprom example 2020-03-29 12:52:29 +08:00
Michael (XIAO Xufeng) 0f1041cc04 example: move spi master example to a subfolder 2020-03-29 12:52:29 +08:00
Alex Lisitsyn 16e6e63694 driver: fix driver set rx timeout feature of uart
tout_thr - move calculation and masking into hal layer update driver and uart_ll (add uart_ll_set_rx_tout)
move tout calculation into uart_ll
move calculation of time out in bit time for esp32s2 into low level uart_ll.h file
move uart_hal_get_symb_len() into hal
update set_rx_timeout() to warn user about incorrect value
update HAL, LL 1
fix uart_xx_set_rx_tout() to convert symbol time into bit time
update param description
update tout calculation in LL
update uart_hal_get_max_rx_timeout_thrd() and uart_ll_get_max_rx_timeout_thrd()
2020-03-27 16:20:21 +08:00
fuzhibo 340563f479 Driver(touch): fix touch sensor driver for esp32s2.
1.update touch sensor driver for esp32s2;
2.update unit test for touch sensor;
3.update register files about touch sensor;
2020-03-25 22:45:57 +08:00
houwenxiang 0304ba906f Example(I2S): Fixed I2S example sine wave sample calculation incorrect bug.
closes https://github.com/espressif/esp-idf/issues/4980
2020-03-25 01:35:01 +08:00
Renz Bagaporo 4d9c573fb6 test, examples: use new component registration function 2020-03-23 10:58:48 +08:00
Michael (XIAO Xufeng) 81daaff050 Merge branch 'feature/usb_component' into 'master'
Feature/usb component

See merge request espressif/esp-idf!6897
2020-03-09 16:53:55 +08:00
Andrei Gramakov 9d059be165 usb: added a tinyusb component; ci; soc.
ci: ignore s2-only projects from the cmake-make test
soc: refactored the usb part
2020-03-09 07:55:06 +01:00
Felipe Ruhland 718a34f765 Fix typo from ic2_tools readme
Merges https://github.com/espressif/esp-idf/pull/4488
2020-03-07 12:11:37 +08:00
xiongyu b3ae9fa978 bugfix(i2s): Updated ESP32-S2 ADC DAC support
* Delete the relevant codes of ADC DAC of ESP32-S2.
2020-03-03 12:59:30 +08:00
fuzhibo 3ad5138dd8 fix coexist i2s_adc and rtc_adc 2020-03-03 11:58:53 +08:00
xiongyu faf898b659 bugfix(i2s): fix driver ut i2s
* Add test support for ESP32S2

* Add loop back test

* Support chip internal connection, no external wiring required.

* Delete the relevant codes of PDM of ESP32-S2 ll layer.

* fix dac dma mode issue
2020-03-03 11:58:53 +08:00
Michael (XIAO Xufeng) ce3ab0b8df Merge branch 'bugfix/nec_example' into 'master'
bugfix in NEC example and low level function

Closes IDFGH-2676 and IDFGH-2689

See merge request espressif/esp-idf!7562
2020-02-28 11:00:50 +08:00
khuynh 21fd946312 fix markdown table formatting
fixed markdown for a table in
`examples/peripherals/temp_sensor_esp32s2/README.md`

Merges https://github.com/espressif/esp-idf/pull/4609
2020-02-18 12:30:56 +01:00
DeeFuse c788351c94 Update ir_builder_rmt_nec.c
fixes standard protocol mode wich would fail due to integer promotion in inversion

Merges https://github.com/espressif/esp-idf/pull/4750
2020-02-17 15:20:41 +08:00
DeeFuse a63a0be6ed Update ir_protocols_main.c
RMT write should be non-blocking to wait the correct time for sending the repeat frame
2020-02-17 15:20:41 +08:00
Angus Gratton effefc2329 Merge branch 'feat/sdio_example_without_intr' into 'master'
sdio: update the host example to support working with a slave without DAT1

See merge request espressif/esp-idf!7098
2020-02-17 07:04:31 +08:00
Michael (XIAO Xufeng) 067f3d21c9 sdspi, vfs_fat: allow sharing SPI bus among devices, and mounting multiple SD cards 2020-02-12 15:16:08 +08:00
suda-morris 75cadc2e41 console: simplify examples
1. simplify console examples
2. add "quit" command
3. support console command overwrite
4. add API reference
2020-02-07 20:15:06 +08:00
michael 1f43f33567 sdio: update the host example to support working with a slave without DAT1
The interrupt line (DAT1) is an extra pin comparing to SD memory,
allowing the slave to actively inform the host some events.

It's possible for two ESP32 chips to communicate with each other in
1-bit mode or SPI mode without the DAT1 line by polling the slave's
interrupt registers. But this will increase the CPU load of the host,
and do harm to the response speed to slave events.
2020-01-22 05:34:21 +00:00
morris e30cd361a8 global: rename esp32s2beta to esp32s2 2020-01-22 12:14:38 +08:00
ziyuan_yin e8ac0bd429 wave_gen example: analog signal generator
This wave generator example does following:

 - An analog signal generator.
 - Offering four kinds of waveform:
 sine, triangle, sawtooth, square.
 - Customer can select their expected waveform, frequency, etc. All of them can be configured in menuconfig.
2020-01-14 09:23:44 +00:00
Angus Gratton 782fc0df5f Merge branch 'refactor/can_driver' into 'master'
Refactor CAN to use HAL and LowLevel layers

Closes IDF-617

See merge request espressif/esp-idf!7019
2020-01-10 14:22:02 +08:00
Darian Leung a049e02d96 can: Refactor CAN to use HAL and LowLevel layers
The following commit refactors the CAN driver such that
it is split into HAL and Lowlevel layers. The following
changes have also been made:

- Added bit field members to can_message_t as alternative
  to message flags. Updated examples and docs accordingly
- Register field names and fields of can_dev_t updated
2020-01-09 16:13:51 +08:00
Krzysztof 6070f610cc Implement review comments 2020-01-08 18:41:43 +08:00
Nathan Phillips 23e6ee9d01 Fix typos in README
Fix a broken link as well as updating the text.

Merges https://github.com/espressif/esp-idf/pull/4531
2020-01-07 13:12:13 +08:00
Geng Yu Chao 6c923cf330 Fix some typo in idf 2019-12-12 15:55:42 +08:00
He Yin Ling c906e2afee test: update example and unit tests with new import roles:
tiny_test_fw is a python package now. import it using normal way.
2019-12-07 10:34:54 +08:00
houwenxiang aac935ec81 bugfix(i2c): fix I2C driver breaking change issue.
1. Fixed I2C driver breaking change issue.
    2. Add I2C UT test case.
2019-12-04 15:51:36 +08:00
Angus Gratton 054724596d Merge branch 'feature/add_ir_protocol_example_test' into 'master'
rmt: enable ir protocols example test

Closes IDF-906

See merge request espressif/esp-idf!6856
2019-12-04 14:35:22 +08:00
Michael (XIAO Xufeng) 17b7c9036f sdio_example: use the new esp_ser component and new evboard 2019-12-03 22:58:43 +08:00
Michael (XIAO Xufeng) 087c8f6065 essl: new component to communicate with esp serial slave devices 2019-12-03 22:58:41 +08:00
morris c43fe5e52e rmt: enable ir protocols example test 2019-12-03 10:45:53 +08:00
Fu Zhi Bo 3a468a1ffd Refactor the touch sensor driver 2019-11-27 20:08:44 +08:00
Angus Gratton 91b7a7beaf Merge branch 'bugfix/timer_intr_status_get' into 'master'
bugfix(timer): fix get intr status function

See merge request espressif/esp-idf!6807
2019-11-27 09:13:16 +08:00
chenjianqiang bcfe684951 bugfix(timer): add a macro to control making the XTAL related functions 2019-11-26 12:39:46 +00:00
houwenxiang f27ae9b0e2 feature: Add uart hal support. 2019-11-26 20:01:50 +08:00
Ivan Grokhotkov 6fda3df953 Merge branch 'bugfix/gpio_pin_bit_mask_truncation' into 'master'
driver: fix gpio pin_bit_mask truncation in sdspi_host and others

See merge request espressif/esp-idf!6746
2019-11-22 17:41:05 +08:00
fuzhibo 03ac1aaafd dac: refactor driver add hal 2019-11-22 11:44:46 +08:00
houwenxiang 28286183d1 feature(I2C): Add i2c hal support. 2019-11-21 20:34:07 +08:00
chenjianqiang 9f9da9ec96 feat(timer): refator timer group driver
1. add hal and low-level layer for timer group
2. add callback functions to handle interrupt
3. add timer deinit function
4. add timer spinlock take function
2019-11-21 14:14:19 +08:00
morris 357cc19da3 rmt: refactor examples 2019-11-20 10:54:21 +08:00
Ivan Grokhotkov 5b6b624e1f driver: fix gpio pin_bit_mask truncation in sdspi_host and others
Closes https://github.com/espressif/esp-idf/issues/4348
2019-11-18 13:42:22 +01:00
Darian Leung 81ddd9e291 CAN: Reenable example tests
This commit updates the CAN example tests and updates the job
and environment labels in the target-test.yml
2019-10-29 17:25:49 +08:00
Angus Gratton 7ce75a42c7 Merge branch 'master' into feature/esp32s2beta_merge 2019-10-25 15:13:52 +11:00
Angus Gratton 36d440bd59 ci: Temporarily ignore CAN example test failures
Due to internal CI issue.
2019-10-25 12:49:42 +11:00
Darian Leung 434d1d29d1 can: Fix reset mode entry and exit calls
This commit fixes multiple bugs caused by incorrect calls to
can_enter_reset_mode() and can_exit_reset_mode. Example test
scripts also updated to match new runners.
2019-10-25 03:40:43 +08:00
Angus Gratton 496ede9bcd Merge branch 'master' into feature/esp32s2beta_merge 2019-10-15 14:59:27 +11:00
suda-morris 81e88764d5 console: fix wrong param passed to esp_err_to_name 2019-10-14 19:49:19 +08:00
Angus Gratton 438d513a95 Merge branch 'master' into feature/esp32s2beta_merge 2019-09-16 16:18:48 +10:00
Michael (XIAO Xufeng) 63329b169b ci: limit example test to ESP32s 2019-09-04 10:53:25 +10:00
Michael (XIAO Xufeng) 9baa7826be fix unit test and examples for s2beta 2019-09-04 10:53:25 +10:00
liu zhifu 003a9872b7 esp_wifi: wifi support new event mechanism
1. WiFi support new event mechanism
2. Update examples to use new event mechanism
2019-08-20 09:39:51 +00:00
Angus Gratton 6990a7cd54 Merge branch 'master' into feature/esp32s2beta_update 2019-08-19 15:03:43 +10:00
Angus Gratton ee6b1399aa Merge branch 'feature/exclude_rom_from_example_header_files' into 'master'
exclude rom headers in examples

Closes IDF-557

See merge request espressif/esp-idf!5051
2019-08-15 10:50:01 +08:00
Angus Gratton 367ecc2d60 Merge branch 'refactor/timerg_in_test' into 'master'
timer_group: refactoring to avoid direct register access in the ISR

See merge request espressif/esp-idf!5656
2019-08-14 15:32:16 +08:00
Angus Gratton 18c5cfadae Fix function prototypes 2019-08-13 17:14:16 +10:00
suda-morris b1497f2187 exclude rom headers in examples
1. avoid including rom headers directly in examples
2. add common API interface for CRC calculation in esp_common component
2019-08-13 11:10:22 +08:00
Michael (XIAO Xufeng) 264ffbeb14 timer_group: use the LL 2019-08-09 13:46:31 +08:00
Angus Gratton c1e3e1cd9a Merge branch 'bugfix/fix_ledc_clock_select_bug' into 'master'
driver(ledc): fixed ledc clock selection bug

See merge request espressif/esp-idf!3612
2019-08-08 13:56:21 +08:00
Angus Gratton 04ae56806c Merge branch 'master' into feature/esp32s2beta_update 2019-08-08 15:26:58 +10:00
Angus Gratton 24d26fccde Merge branch 'master' into feature/esp32s2beta_update 2019-08-08 13:44:24 +10:00
Michael (XIAO Xufeng) 07166a6b18 sdio_slave: rewrite the doc and highlight efuse-burning as the default option for 3.3V modules 2019-08-07 17:10:34 +08:00
morris 1877a9fcd8 Merge branch 'feature/esp32s2beta_rtc_driver' into 'feature/esp32s2beta'
Feature/esp32s2beta rtc driver

See merge request espressif/esp-idf!5243
2019-08-07 14:43:17 +08:00
fuzhibo 572084821b add Comment for touchpad 2019-08-07 11:39:17 +08:00
kooho 2e8c85d8ff driver(ledc): fixed ledc clock selection bug. 2019-08-06 16:11:18 +08:00
fuzhibo b055bff580 1.update touch driver; 2.update adc/dac driver; 3.add temp sensor driver; 2019-08-05 16:21:18 +08:00
kooho 2139ca668d Update I2S driver for esp32s2beta. 2019-08-05 16:05:16 +08:00
Angus Gratton b23718995a Merge branch 'bugfix/strict_prototypes' into 'master'
Enable strict prototypes checks

Closes IDFGH-757

See merge request espressif/esp-idf!4546
2019-08-05 09:38:39 +08:00
Mahavir Jain e7dba7d7bc examples: change default build instructions in docs to CMake 2019-08-02 16:32:46 +05:30
Anton Maklakov 75c0066f93 Fix remaining -Wstrict-prototypes warnings 2019-08-01 16:28:56 +07:00
Anton Maklakov afbaf74007 tools: Mass fixing of empty prototypes (for -Wstrict-prototypes) 2019-08-01 16:28:56 +07:00
kooho f98e7bbccf Update LEDC, PCNT,Timer_Group driver for esp32s2beta. 2019-07-31 16:03:22 +08:00
Ivan Grokhotkov 022223f570 Merge branch 'feat/sdmmc_io_cis_parse' into 'master'
sdmmc_io: support to print CIS information

See merge request espressif/esp-idf!5515
2019-07-29 19:05:30 +08:00
Michael (XIAO Xufeng) b98b4c3886 sdmmc_io: support to print CIS information
Currently only ESP slaves can be parsed correctly.
2019-07-29 10:41:17 +08:00
Ivan Grokhotkov 26800ed71e global: update note in the partition tables
The build system automatically determines offsets of partitions from
the partition table, so no manual changes are needed. Instead, add a
note that partition offsets may need to be updated when increasing
the bootloader size.
2019-07-27 10:28:16 +02:00
chenjianqiang e43513b610 bugfix(uart): uniform AT_CMD char configuration 2019-07-18 19:24:13 +08:00
chenjianqiang 4cc962353c feat(uart): update uart driver for esp32s2beta 2019-07-18 15:57:00 +08:00
Ramesh 8795f1ac86 Fixed the bug that the malloc memory size is smaller than the actual required.
Merges https://github.com/espressif/esp-idf/pull/3757
2019-07-12 09:51:41 +08:00
chenjianqiang 667113cf94 feat(i2c): update i2c driver for esp32s2beta 2019-07-10 11:41:36 +08:00
Angus Gratton 47bbb107a8 build system: Use CMake-based build system as default when describing commands 2019-07-08 17:31:27 +10:00
Michael (XIAO Xufeng) 25ab8380c8 ci: support to build esp32s2beta simple examples 2019-07-08 09:16:06 +08:00
Michael (XIAO Xufeng) fcf4502c6b spi_example: fix the example to pass in esp32s2beta 2019-06-23 12:17:27 +08:00
Michael (XIAO Xufeng) eacae2e982 spi_slave: fix a example issue caused by word alignment 2019-06-22 19:09:00 +08:00
Renz Christian Bagaporo 6771eead80 examples: use new component registration api 2019-06-21 19:53:29 +08:00
Michael (XIAO Xufeng) 2eff8f7742 spi_slave: fix a example issue caused by word alignment 2019-06-20 10:38:52 +08:00
Konstantin Kondrashov 399d2d2605 all: Using xxx_periph.h
Using xxx_periph.h in whole IDF instead of xxx_reg.h, xxx_struct.h, xxx_channel.h ... .

Cleaned up header files from unnecessary headers (releated to soc/... headers).
2019-06-03 14:15:08 +08:00
Roland Dobai 151f757912 Rename Kconfig options (examples) 2019-05-21 09:32:55 +02:00
Roland Dobai 1ad2283641 Rename Kconfig options (components/bootloader) 2019-05-21 09:32:55 +02:00
Roland Dobai 0ae53691ba Rename Kconfig options (components/esp32) 2019-05-21 09:09:01 +02:00
Michael (XIAO Xufeng) 562af8f65e global: move the soc component out of the common list
This MR removes the common dependency from every IDF components to the SOC component.

Currently, in the ``idf_functions.cmake`` script, we include the header path of SOC component by default for all components.
But for better code organization (or maybe also benifits to the compiling speed), we may remove the dependency to SOC components for most components except the driver and kernel related components.

In CMAKE, we have two kinds of header visibilities (set by include path visibility):

(Assume component A --(depends on)--> B, B is the current component)

1. public (``COMPONENT_ADD_INCLUDEDIRS``): means this path is visible to other depending components (A) (visible to A and B)
2. private (``COMPONENT_PRIV_INCLUDEDIRS``): means this path is only visible to source files inside the component (visible to B only)

and we have two kinds of depending ways:

(Assume component A --(depends on)--> B --(depends on)--> C, B is the current component)

1. public (```COMPONENT_REQUIRES```): means B can access to public include path of C. All other components rely on you (A) will also be available for the public headers. (visible to A, B)
2. private (``COMPONENT_PRIV_REQUIRES``): means B can access to public include path of C, but don't propagate this relation to other components (A). (visible to B)

1. remove the common requirement in ``idf_functions.cmake``, this makes the SOC components invisible to all other components by default.
2. if a component (for example, DRIVER) really needs the dependency to SOC, add a private dependency to SOC for it.
3. some other components that don't really depends on the SOC may still meet some errors saying "can't find header soc/...", this is because it's depended component (DRIVER) incorrectly include the header of SOC in its public headers. Moving all this kind of #include into source files, or private headers
4. Fix the include requirements for some file which miss sufficient #include directives. (Previously they include some headers by the long long long header include link)

This is a breaking change. Previous code may depends on the long include chain.
You may need to include the following headers for some files after this commit:

- soc/soc.h
- soc/soc_memory_layout.h
- driver/gpio.h
- esp_sleep.h

The major broken include chain includes:

1. esp_system.h no longer includes esp_sleep.h. The latter includes driver/gpio.h and driver/touch_pad.h.
2. ets_sys.h no longer includes soc/soc.h
3. freertos/portmacro.h no longer includes soc/soc_memory_layout.h

some peripheral headers no longer includes their hw related headers, e.g. rom/gpio.h no longer includes soc/gpio_pins.h and soc/gpio_reg.h

BREAKING CHANGE
2019-04-16 13:21:15 +08:00
Ivan Grokhotkov 7728f8755e Merge branch 'feat/example_sdio_over_spi' into 'master'
sdio: support SDIO over spi

See merge request idf/esp-idf!3069
2019-04-12 16:12:57 +08:00
Michael (XIAO Xufeng) 9985c33a46 sdio: support SDIO over spi in the example 2019-04-12 02:24:29 +08:00
Ivan Grokhotkov e37b0ad648 esp_event: move trailing semicolons out of defines 2019-04-11 12:04:58 +08:00
955aa2e4e0 Update README.md
Merges https://github.com/espressif/esp-idf/pull/3104
2019-03-24 19:54:00 +01:00
morris c159984264 separate rom from esp32 component to esp_rom
1. separate rom include files and linkscript to esp_rom
2. modefiy "include rom/xxx.h" to "include esp32/rom/xxx.h"
3. Forward compatible
4. update mqtt
2019-03-21 18:51:45 +08:00
Ivan Grokhotkov 945bd36884 examples: don't enable buffering on stdout in console examples
newlib uses significantly more stack space when printing to an
unbuffered stream. To reduce the amount of stack space required to
use the console, don’t disable buffering. linenoise should support
unbuffered stdout instead.
2019-03-13 20:32:37 +08:00
Angus Gratton 280d39aedd Merge branch 'bugfix/i2s_pdm_adc_use_apll' into 'master'
bugfix(i2s): allow to use apll in pdm/adc/dac mode

See merge request idf/esp-idf!3800
2019-02-26 11:47:49 +08:00
Darian Leung 099b83af67 CAN: Add functions to clear queues and fix multiple bugs
This commits adds the functions can_clear_transmit_queue() and
can_clear_receive_queue(). Closes #2906

The following bug are fixed:

- CAN_IO_UNUSED is now explicitly cast to enum type. Closes #2825
- Fix multiple documentation errors. Closes #2898, Closes #2794
- can_reconfigure_alerts() returns incorrect current_alerts. Closes #3028
- Add missing header file. Closes #3065
2019-02-18 21:31:33 +08:00
Michael (XIAO Xufeng) c465053195 sdio: temporarily disable the sdio example ci, since the runners have
some power issue
2019-02-14 15:51:24 +08:00
Roland Dobai 37126d3451 Correct Kconfigs according to the coding style 2019-01-29 13:37:01 +01:00
Anton Maklakov f88f06710e example: Avoid a fallthrough 2018-12-13 12:29:27 +08:00
hou wen xiang 67d95c609b doc(i2s): update README.md file of i2s related examples. 2018-12-10 10:33:41 +08:00
morris 8b7b5821c7 example: add nmea0183 parser example
Add NMEA0183 Parser example to illustrate how to use uart event driver together with esp event library to get GPS information.
2018-12-07 10:57:34 +08:00
Roland Dobai 57c54f96f1 examples: Fix Python coding style 2018-12-06 09:34:33 +01:00
Wang Jia Lin a36d714d1a Merge branch 'doc/adc_example_doc_improve' into 'master'
doc(adc): Update README.md file of adc example.

See merge request idf/esp-idf!2665
2018-12-06 15:22:50 +08:00
hou wen xiang 8e9359b4fd doc(adc): Update README.md file of adc example. 2018-12-06 12:20:29 +08:00
hou wen xiang 062c64fca0 doc(pcnt): Update pcnt example README.md file. 2018-12-06 12:16:45 +08:00
ThisNameIsNotAllowed b12c58224d Enhanced readability in README.md
Changed text based GPIO-list to some table based version.
This should enhance the readability.

Resolves https://github.com/espressif/esp-idf/pull/2749
2018-12-04 21:20:32 +08:00
Angus Gratton ed21457afc Merge branch 'doc/ledc_example_doc_improve' into 'master'
doc(ledc): Update LEDC example README.md file

See merge request idf/esp-idf!2673
2018-11-30 14:48:25 +08:00
morris 9163e454f1 example_test: using try block to pass the python style check 2018-11-30 10:13:58 +08:00
morris 2b165f99c4 i2c_tool: add i2c_tool example test
1. add example test for i2c-tools
2. make command line arguments number configurable
2018-11-30 10:08:28 +08:00
hou wen xiang ade39f823f doc(ledc): Update LEDC example README.md file. 2018-11-28 07:15:56 +00:00
Roland Dobai 957cf0ab84 VFS: select() on UART should return immediately when data is buffered 2018-11-27 13:39:00 +01:00
Wangjialin 4b34ae1258 bugfix(i2s): allow to use apll in pdm/adc/dac mode
1. Allow to use apll in pdm mode
2. Add clock frequency configuration for PDM mode
3. Allow to use apll in ADC/DAC mode
2018-11-27 18:41:20 +08:00
Roland Dobai 90a4e37acd examples: Fix UART examples to match the template 2018-11-08 20:06:03 +01:00
morris 6d1e23796f i2c/i2c-tools: add i2c-tools example
1. add command i2cconfig
2. add command i2cdetect
3. add command i2cget
4. add command i2cset
5. add command i2cdump
6. add README.md
2018-10-16 16:13:21 +08:00
morris 89d7f7bc89 doc/i2c-example: cleanup readme of i2c example
1. Update i2c README to add more detail according to the template.[TW#26530]
2. Move some specific configuration to KConfig
2018-10-12 10:24:39 +08:00
Angus Gratton fc2230aeda Merge branch 'feature/error_check_without_abort' into 'master'
esp32: Add macro to check a condition without abort

See merge request idf/esp-idf!3348
2018-10-10 14:31:38 +08:00
Krzysztof Budzynski cd5f8bcf74 MCPWM API doc update 2018-10-10 08:15:23 +08:00
Roland Dobai d4e572bdb1 esp32: Add macro to check a condition without abort
Closes https://github.com/espressif/esp-idf/issues/2325
2018-10-09 08:57:23 +02:00
Angus Gratton a95dd4712b Merge branch 'doc/rmt_readme_typo_fix' into 'master'
doc(rmt): fixed some typos in rmt example readme file

See merge request idf/esp-idf!3283
2018-10-08 07:25:10 +08:00
Krzysztof bce5d7ba01 Implemented the first round of review comments 2018-09-28 14:04:22 +08:00
Krzysztof cc52029d14 Updated sigma-delta example description to the latest template 2018-09-28 14:04:22 +08:00
Roland Dobai 17b7959de9 Examples: Add Python 2&3 support 2018-09-25 08:05:56 +02:00
Ivan Grokhotkov 2e6e87816c Merge branch 'feature/crosstool_backport' into 'master'
Backport of work of gcc8 toolchain to v3

See merge request idf/esp-idf!3154
2018-09-21 14:07:41 +08:00
Michael (Xiao Xufeng) 4af51833f3 spi_master: add new polling mode to decrease time cost each transaction 2018-09-20 19:46:46 +08:00
Anton Maklakov 43116e6e2d examples/sdio: Fix an uninitialized buffer which sometimes caused a test fail 2018-09-20 18:53:15 +08:00
kooho 50a5985b06 doc(rmt): fixed some typos in rmt example readme file 2018-09-17 10:21:07 +08:00
Angus Gratton cbcc60ae5f Merge branch 'doc/rmt_example_doc_improve' into 'master'
doc(rmt): update README.md file of rmt related example.

See merge request idf/esp-idf!2636
2018-09-12 14:58:04 +08:00
Renz Christian Bagaporo d9939cedd9 cmake: make main a component again 2018-09-11 09:44:12 +08:00
Angus Gratton b355854d4d Merge branch 'master' into feature/cmake 2018-09-05 10:35:04 +08:00
Ivan Grokhotkov 97b2281c49 Merge branch 'bugfix/can_driver_multiple_bugs' into 'master'
CAN: Add pm_lock, fix gpio bug, update docs

See merge request idf/esp-idf!3138
2018-09-04 20:34:06 +08:00
Darian Leung dc3fa14a26 CAN: Add pm_lock, fix gpio bug, update docs
This commit does the following

- Add power management lock to CAN driver so that APB frequency does not change
whilst CAN driver is in use
- Fix incorrect flag in can_transmit()
- Refactor can_driver_install() and can_driver_uninstall() so that critical sections
are shorter
- Fix CAN gpio configuration bug on RX pin. Closes #2302
- Add docs about multiple ID configuration and fix example links
2018-09-01 02:46:05 +08:00
Angus Gratton a9c4ed7139 Merge branch 'master' into feature/cmake 2018-08-30 18:51:01 +08:00
Angus Gratton 5689e446dc cmake: Add missing example CMakeLists.txt files, CI check all examples have both 2018-08-29 20:22:55 +08:00
Michael (XIAO Xufeng) 0c64d8e822 spi: fix the misleading example, letting the master wait until slave is ready 2018-08-29 18:40:21 +08:00
Ivan Grokhotkov c3123b00ae examples/spi_slave: check for truncation in snprintf call
Also fix character array initializer
2018-08-29 14:40:28 +08:00
Angus Gratton ff2404a272 Merge branch 'master' into feature/cmake 2018-08-16 17:14:17 +10:00
kooho 01516abe5a Add some comments in pcnt.h. 2018-07-24 10:33:58 +08:00
Angus Gratton 2ae758ebcb Merge branch 'bugfix/spi_sdio_sdkconfig_include' into 'master'
sdio_example/spi: fix sdkconfig include issue

See merge request idf/esp-idf!2756
2018-07-16 08:00:15 +08:00
Hou Wen Xiang 733f73067c Update README.md 2018-07-15 12:56:23 +08:00
Hou Wen Xiang fe238af249 Update README.md 2018-07-15 12:52:55 +08:00
Angus Gratton a67d5d89e0 Replace all DOS line endings with Unix
Command run was:
git ls-tree -r HEAD --name-only | xargs dos2unix
2018-07-12 19:10:37 +08:00
Michael (XIAO Xufeng) 95dbfbe4c0 sdio_example/spi: fix sdkconfig include issue
(MINOR CHANGES)
2018-07-12 15:59:16 +08:00
michael 597eda5f0b fix(sdio_slave): improve sdio slave for high speed and 4 bit mode 2018-07-06 18:17:50 +08:00
michael 823ebba0f0 fix(sdio_slave): fix minor issues like return value of send function, output arg, etc. 2018-07-06 18:17:49 +08:00
Darian Leung 1d2727f4c8 CAN Driver
The following commit contains the first version of the ESP32 CAN Driver.

closes #544
2018-07-04 14:01:57 +08:00
Alex Lisitsyn a9fca0c775 driver: add rs485 half duplex interface support to uart driver (fix after review)
An existing UART driver does not support RS485 half duplex mode.
This task adds this functionality to ESP_IDF UART driver.
driver/uart.c/h: updated to add support of RS485 half duplex mode
examples/peripherals/uart_echo_rs485/main/rs485_example.c: added test example
components/driver/test/test_uart.c: added test of RS485 half duplex mode
docs/en/api-reference/peripherals/uart.rst: updated documentation
test_uart.c: suppress GCC warnings about discarded const qualifiers
uart.rst: remove sphinx warning - "Duplicate explicit target name"
simple change in uart.h file
update (test_uart.c) after rebase from master
update uart.rst, uart.c, rs485_example.c
Update example description in file Readme.md
update uart.c/h, uart.rst, test_uart.c according to review results
update uart.h (uart_set_rx_timeout() description
test_uart.c remove ignore tag
uart.c/h: fix param errors
test_uart.c: Remove GCC warning supress
uart.rst: fix the notes
rs485_example.c: fix output
uart.c: remove reset using UART_RXFIFO_RST from driver.
readme.md: Update example description

The tests are completed using RS485 adapters hardware connected to two ESP32 WROVER KITs.

TW#13812
Closes https://github.com/espressif/esp-idf/pull/667
Closes https://github.com/espressif/esp-idf/pull/1006
2018-07-02 15:24:58 +02:00
Alex Lisitsyn ef5dc73f6f driver: add rs485 half duplex interface support to uart driver (update after review)
An existing UART driver does not support RS485 half duplex mode.
This task adds this functionality to ESP_IDF UART driver.
driver/uart.c/h: updated to add support of RS485 half duplex mode
examples/peripherals/uart_echo_rs485/main/rs485_example.c: added test example
components/driver/test/test_uart.c: added test of RS485 half duplex mode
docs/en/api-reference/peripherals/uart.rst: updated documentation
test_uart.c: suppress GCC warnings about discarded const qualifiers
uart.rst: remove sphinx warning - "Duplicate explicit target name"
simple change in uart.h file
update (test_uart.c) after rebase from master
update uart.rst, uart.c, rs485_example.c
Update example description in file Readme.md
update uart.c/h, uart.rst, test_uart.c according to review results
update uart.h (uart_set_rx_timeout() description
test_uart.c remove ignore tag
uart.c/h: fix param errors
test_uart.c: Remove GCC warning supress
uart.rst: fix the notes
rs485_example.c: fix output

The tests are completed using RS485 adapters hardware connected to two ESP32 WROVER KITs.

TW#13812
Closes https://github.com/espressif/esp-idf/pull/667
Closes https://github.com/espressif/esp-idf/pull/1006
2018-07-02 15:24:58 +02:00
Alex Lisitsyn 51e9cf6848 driver: add rs485 half duplex interface support to uart driver (update after review)
An existing UART driver does not support RS485 half duplex mode.
This task adds this functionality to ESP_IDF UART driver.
driver/uart.c/h: updated to add support of RS485 half duplex mode
examples/peripherals/uart_echo_rs485/main/rs485_example.c: added test example
components/driver/test/test_uart.c: added test of RS485 half duplex mode
docs/en/api-reference/peripherals/uart.rst: updated documentation
test_uart.c: suppress GCC warnings about discarded const qualifiers
uart.rst: remove sphinx warning - "Duplicate explicit target name"
simple change in uart.h file
update (test_uart.c) after rebase from master
update uart.rst, uart.c, rs485_example.c
Update example description in file Readme.md
update uart.c/h, uart.rst, test_uart.c according to review results

The tests are completed using RS485 adapters hardware connected to two ESP32 WROVER KITs.

TW#13812
Closes https://github.com/espressif/esp-idf/pull/667
Closes https://github.com/espressif/esp-idf/pull/1006
2018-07-02 15:24:58 +02:00
hou wen xiang cb8ab7c6a8 driver(rmt): update README.md file of rmt related example. 2018-06-29 11:03:09 +08:00
Konstantin Kondrashov 899fa2dc55 assert: Fix. Move useful functions from wrapped assert functions
Moved useful functions from wrapped assert functions, because option `CONFIG_OPTIMIZATION_ASSERTIONS_DISABLED=y` will remove this functions.

Closes https://github.com/espressif/esp-idf/issues/2068
2018-06-22 15:17:55 +05:00
Michael (XIAO Xufeng) 90345050b2 example(sdio): example to use sdmmc host to do SDIO communication with SDIO slave 2018-06-20 07:00:05 +00:00
fuzhibo 9a0d57b90b bugfix(touch pad): modify deep-sleep example and add note for sleep api.
Closes https://github.com/espressif/esp-idf/issues/2052
2018-06-20 10:57:26 +08:00
Angus Gratton 6b9784cc45 Merge branch 'master' into feature/cmake_update 2018-05-31 14:46:23 +10:00
Ivan Grokhotkov cb649e452f remove executable permission from source files 2018-05-29 20:07:45 +08:00
Angus Gratton c9f8470fdf Merge branch 'feature/rmt_translator' into 'master'
driver(rmt): Add API supports sending uint8_t type data

See merge request idf/esp-idf!1975
2018-05-23 07:27:14 +08:00
Angus Gratton 75c27202f7 Merge branch 'feature/update_touchpad_filter_process' into 'master'
driver(touchpad): Change the measuring mode, improve the software filter.

See merge request idf/esp-idf!2358
2018-05-22 09:56:55 +08:00
kooho 5bc8ae3b3a driver(rmt):Add API supports sending uint8_t type data. 2018-05-22 01:55:44 +00:00
Wangjialin 09181b7d94 driver(touchpad): improve touchpad filter mode and update examples. 2018-05-21 14:45:31 +08:00
Roland Dobai 18e83bcd53 Allow VFS file descriptors in select() 2018-05-18 08:06:33 +02:00
Angus Gratton 51aceaa030 Merge branch 'bugfix/idle_task_stack_size' into 'master'
freertos: Bump default idle task stack size to 1536 bytes

See merge request idf/esp-idf!2411
2018-05-18 10:10:13 +08:00
Zhang Zhao Xiang 9deb58859c fix i2s mix result and error code 2018-05-17 10:59:04 +08:00
Angus Gratton 4719bab2f3 freertos: Bump default idle task stack size to 1536 bytes
In situations where idle task runs a lot of idle hooks or cleanup code
(due to pthread local storage, etc) it can use more than 1KB of stack.

(I think the trigger is if a context switch happens at the right point
in the TLS cleanup).

Also removes an sdkconfig.default which accidentally set all config items,
including this stack size.
2018-05-17 10:37:24 +08:00
Jiang Jiang Jian 8128dd245d Merge branch 'bugfix/rmt_tx_cmd' into 'master'
example(rmt): tx cmd without negative coding

See merge request idf/esp-idf!1884
2018-05-16 17:39:04 +08:00
Michael (XIAO Xufeng) dd91152589 example(spi_master): add descriptions about LCD example 2018-05-03 11:48:26 +08:00
Angus Gratton 381be65472 cmake: Build all examples in CI
Includes some fixes for compile errors/warnings in examples.
2018-04-30 10:18:33 +10:00
Angus Gratton 800bffb8b0 cmake: Add CMakeLists.txt files for all examples
Generating using convert_to_cmake.py, with some minor cleanup
2018-04-30 09:59:20 +10:00
Ivan Grokhotkov 6185e722c3 Revert "Merge branch 'feature/vfs_select' into 'master'"
This reverts merge request !2074
2018-04-20 11:51:41 +08:00
Roland Dobai 6852d653bd Allow VFS file descriptors in select() 2018-04-17 11:25:30 +02:00