morris
5ad9e6b87f
feat(rmt): added a help function for allocating encoder memory
...
The encoder memory location should respect the RMT_MEM_ALLOC_CAPS,
which is affected by some Kconfig options, like ISR_IRAM_SAFE
Closes https://github.com/espressif/esp-idf/issues/13032
2024-01-30 17:03:41 +08:00
morris
40093b34eb
fix(rmt): enable dma owner check
...
Closes https://github.com/espressif/esp-idf/issues/12564
2023-11-20 14:55:34 +08:00
morris
2e8cc61af7
feat(rmt): support calling rmt_receive in ISR callback
2023-11-08 14:32:26 +08:00
morris
8dda17e3a3
fix(rmt): a disabled channel may pick up a pending transaction
...
because in the trans_done interrupt, the driver didn't check the channel FSM
2023-11-02 11:30:42 +08:00
morris
df2c62d270
bugfix(driver): fix wrong DMA bus usage
...
in SPI, RMT, parlio
2023-10-20 09:08:54 +00:00
morris
e92a1515be
feat(hal): add util function to reverse a 8bit byte
2023-10-18 09:48:14 +08:00
morris
985b8ca948
fix(rmt): fixed unstable transfer during DFS
...
Closes https://github.com/espressif/esp-idf/issues/12292
2023-09-26 17:01:06 +08:00
morris
0fe1114673
Merge branch 'bugfix/shared_intr_memory_location' into 'master'
...
fix(intr): always allocate memory from internal ram
Closes IDFGH-11099
See merge request espressif/esp-idf!26090
2023-09-25 15:36:36 +08:00
morris
3dc13d58a1
fix(intr): always allocate memory from internal ram
...
Closes https://github.com/espressif/esp-idf/issues/12271
2023-09-22 15:13:35 +08:00
Armando
32db81a6d6
change(rmt): update cache_hal_get_cache_line_size accordingly
2023-09-22 14:19:41 +08:00
morris
6bb05cccdd
feat(rmt): add driver support for esp32p4
...
including DMA feature
2023-09-19 12:54:14 +08:00
Planck (Lu Zeyu)
80fa5da9e8
feat(rmt): specify interrupt priority
2023-09-01 11:30:41 +08:00
Darian Leung
9ed58bf564
feat(driver): updated drivers to use CreateWithCaps() API
...
This commit simplifies various drivers by using the ...CreateWithCaps() API
when creating driver objects in internal RAM.
2023-08-08 04:26:42 +00:00
morris
57879e772d
feat(gdma): support channel allocator on esp32p4
...
There's two GDMA groups on ESP32P4, one is connected to AHB bus,
and another one is connected AXI bus.
We now have two seperate APIs for allocating DMA channels,
depends on the bus type.
2023-07-19 18:18:07 +08:00
morris
b589355a10
feat(mcpwm): support open drain output for generator IO
...
Closes https://github.com/espressif/esp-idf/issues/11877
2023-07-19 11:32:35 +08:00
morris
88600bd91b
driver: minor code clean up to pass coverity scan test
2023-06-10 16:21:12 +08:00
morris
9ae742eb85
rmt: check filter and idle threashold
...
Closes https://github.com/espressif/esp-idf/issues/11262
2023-04-29 06:51:35 +00:00
morris
af2085b789
rmt_onewire: refactor example with component manager
...
Closes https://github.com/espressif/esp-idf/issues/10790
2023-04-27 15:02:55 +08:00
Song Ruo Jing
a4e8960ab4
esp_clk_tree: Rename clk_tree_xxx to esp_clk_tree_xxx, add compilation warning to clk_tree.h
2023-04-25 14:12:06 +08:00
morris
b19a3e3e56
rmt: define RMT_ENCODING_RESET in rmt_encode_state_t
...
Closes https://github.com/espressif/esp-idf/issues/11200
2023-04-17 14:50:51 +08:00
morris
5d1a272b1c
rmt: calarify the meaning of mem_block_symbols in DMA and non-DMA mode
2023-03-30 11:09:13 +08:00
morris
d82981c437
rmt: use gpio_num_t to define gpio number
2023-03-30 10:30:27 +08:00
morris
f534247a00
driver: add parallel IO TX driver
2023-03-01 00:43:14 +00:00
morris
d9f82baca7
driver: fix typo "destroy"
2023-03-01 00:43:14 +00:00
morris
195f6b99ad
rmt: expose private API to get channel ID
...
Closes https://github.com/espressif/esp-idf/issues/10596
2023-02-16 11:37:25 +08:00
morris
1626766abf
rmt: simplify rmt source clock configure with clk_tree API
...
Also decrease the payload size for testing the multi-channel behaviour.
2023-02-10 18:24:27 +08:00
laokaiyao
f27cd67c00
driver: pack peripherals
2023-02-02 18:19:58 +08:00
morris
7c9e3b60c6
rmt: no auto light sleep if xtal is working as the clock source
2022-12-29 11:33:43 +08:00
morris
32cd193ddf
rmt: support pll clock source on esp32c6
2022-12-22 11:25:54 +08:00
morris
c71bd0e4fa
rmt: disable rc_fast clock when it's used up
2022-09-17 04:56:49 +00:00
morris
0d881fc9e0
driver: specify the interrupt priority
...
Closes https://github.com/espressif/esp-idf/issues/9520
2022-08-15 14:46:56 +08:00
morris
d91c8759c0
driver: remove -Wno-format flag
2022-08-08 08:30:09 +00:00
morris
307d26659e
Merge branch 'bugfix/rmt_hw_issue' into 'master'
...
rmt: only use register to control the IDLE state (hardware issue workaround)
See merge request espressif/esp-idf!19344
2022-08-03 17:01:44 +08:00
morris
8de9fd8cd7
rmt: only use register to control IDLE state
...
hardware issue: we can't control the IDLE level by the stop item
when loop transmission is enabled.
But we can always control the IDLE state by register.
2022-08-03 10:51:43 +08:00
morris
a5a171926b
rmt: add test with -O0
2022-08-02 23:07:06 +08:00
Darian Leung
781d06af73
esp_hw_support: Remove compare_set.h API
...
This function removes the following legacy atomic CAS functions:
From compare_set.h (file removed):
- compare_and_set_native()
- compare_and_set_extram()
From portmacro.h
- uxPortCompareSet()
- uxPortCompareSetExtram()
Users should call esp_cpu_compare_and_set() instead as this function hides the details
of atomic CAS on internal and external RAM addresses.
Due to the removal of compare_set.h, some missing header includes are also fixed in this commit.
2022-07-22 00:06:06 +08:00
wangyuanze
ab0c4abd6e
rmt: add open-drain flag on tx channel
2022-07-20 14:12:43 +00:00
morris
9e532696f4
pcnt: add const qualifier to event data
2022-07-20 14:59:50 +08:00
morris
4094f13fd3
rmt: fix error in rmt register file
...
Closes https://github.com/espressif/esp-idf/issues/9100
2022-06-10 18:38:42 +08:00
songruojing
a5b09cf015
rtc_clk: Clean up some clock related enum and macro in soc/rtc.h, replace with new ones in
...
soc/clk_tree_defs.h
2022-05-24 22:59:41 +08:00
morris
660ff8e840
rmt: declare RMTMEM as a block of memory
2022-05-09 11:26:30 +08:00
morris
2fb43820c2
driver_ng: implement new rmt driver
...
The legacy driver can't handle the breaking change between esp chips
very well.
And it's not elegant to extend new feature like DMA, ETM.
The new driver can return a opaque handle for each RMT channel.
An obvious transaction concept was also introduced.
TX and RX functionalities are splited out.
2022-05-07 10:34:50 +00:00