ESP-IDF
i2s_channel_obj_t::controller
is only used within ESP-IDF.
Symbol previews are coming soon...
Symbols
loading...
Files
loading (1/5)...
Summary
Syntax
Examples
References
Call Tree
Data Use
Class Tree
Override Tree
Implementations
Instances
Lifecycle
SourceVu
ESP-IDF Framework and Examples
ESP-IDF
i2s_channel_obj_t::controller
i2s_channel_obj_t::controller field
Parent pointer to controller object
Syntax
Show:
Summary
Declaration
from
i2s_private.h:153
i2s_controller_t
*
controller
;
Examples
References
from
examples
Code
Location
Referrer
i2s_controller_t
*
controller
;
/*!< Parent pointer to controller object */
i2s_private.h:153
i2s_hal_tx_reset
(
&
(
handle
->
controller
->
hal
)
)
;
i2s_common.c:121
i2s_tx_channel_start()
i2s_hal_tx_reset_dma
(
&
(
handle
->
controller
->
hal
)
)
;
i2s_common.c:125
i2s_tx_channel_start()
i2s_hal_tx_reset_fifo
(
&
(
handle
->
controller
->
hal
)
)
;
i2s_common.c:127
i2s_tx_channel_start()
i2s_hal_tx_enable_intr
(
&
(
handle
->
controller
->
hal
)
)
;
i2s_common.c:132
i2s_tx_channel_start()
i2s_hal_tx_enable_dma
(
&
(
handle
->
controller
->
hal
)
)
;
i2s_common.c:133
i2s_tx_channel_start()
i2s_hal_tx_start_link
(
&
(
handle
->
controller
->
hal
)
,
(
uint32_t
)
handle
->
dma
.
desc
[
0
]
)
;
i2s_common.c:134
i2s_tx_channel_start()
i2s_hal_tx_start
(
&
(
handle
->
controller
->
hal
)
)
;
i2s_common.c:137
i2s_tx_channel_start()
i2s_hal_rx_reset
(
&
(
handle
->
controller
->
hal
)
)
;
i2s_common.c:143
i2s_rx_channel_start()
i2s_hal_rx_reset_dma
(
&
(
handle
->
controller
->
hal
)
)
;
i2s_common.c:147
i2s_rx_channel_start()
i2s_hal_rx_reset_fifo
(
&
(
handle
->
controller
->
hal
)
)
;
i2s_common.c:149
i2s_rx_channel_start()
i2s_hal_rx_enable_intr
(
&
(
handle
->
controller
->
hal
)
)
;
i2s_common.c:154
i2s_rx_channel_start()
i2s_hal_rx_enable_dma
(
&
(
handle
->
controller
->
hal
)
)
;
i2s_common.c:155
i2s_rx_channel_start()
i2s_hal_rx_start_link
(
&
(
handle
->
controller
->
hal
)
,
(
uint32_t
)
handle
->
dma
.
desc
[
0
]
)
;
i2s_common.c:156
i2s_rx_channel_start()
i2s_hal_rx_start
(
&
(
handle
->
controller
->
hal
)
)
;
i2s_common.c:159
i2s_rx_channel_start()
i2s_hal_tx_stop
(
&
(
handle
->
controller
->
hal
)
)
;
i2s_common.c:166
i2s_tx_channel_stop()
i2s_hal_tx_stop_link
(
&
(
handle
->
controller
->
hal
)
)
;
i2s_common.c:171
i2s_tx_channel_stop()
i2s_hal_tx_disable_intr
(
&
(
handle
->
controller
->
hal
)
)
;
i2s_common.c:172
i2s_tx_channel_stop()
i2s_hal_tx_disable_dma
(
&
(
handle
->
controller
->
hal
)
)
;
i2s_common.c:173
i2s_tx_channel_stop()
i2s_hal_rx_stop
(
&
(
handle
->
controller
->
hal
)
)
;
i2s_common.c:181
i2s_rx_channel_stop()
i2s_hal_rx_stop_link
(
&
(
handle
->
controller
->
hal
)
)
;
i2s_common.c:186
i2s_rx_channel_stop()
i2s_hal_rx_disable_intr
(
&
(
handle
->
controller
->
hal
)
)
;
i2s_common.c:187
i2s_rx_channel_stop()
i2s_hal_rx_disable_dma
(
&
(
handle
->
controller
->
hal
)
)
;
i2s_common.c:188
i2s_rx_channel_stop()
new_chan
->
controller
=
i2s_obj
;
i2s_common.c:330
i2s_register_channel()
i2s_ll_rx_set_eof_num
(
handle
->
controller
->
hal
.
dev
,
bufsize
)
;
i2s_common.c:523
i2s_alloc_dma_desc()
uint32_t
status
=
i2s_hal_get_intr_status
(
&
(
handle
->
controller
->
hal
)
)
;
i2s_common.c:671
i2s_dma_rx_callback()
i2s_hal_clear_intr_status
(
&
(
handle
->
controller
->
hal
)
,
status
)
;
i2s_common.c:672
i2s_dma_rx_callback()
i2s_hal_get_in_eof_des_addr
(
&
(
handle
->
controller
->
hal
)
,
(
uint32_t
*
)
&
finish_desc
)
;
i2s_common.c:678
i2s_dma_rx_callback()
uint32_t
status
=
i2s_hal_get_intr_status
(
&
(
handle
->
controller
->
hal
)
)
;
i2s_common.c:711
i2s_dma_tx_callback()
i2s_hal_clear_intr_status
(
&
(
handle
->
controller
->
hal
)
,
status
)
;
i2s_common.c:712
i2s_dma_tx_callback()
i2s_hal_get_out_eof_des_addr
(
&
(
handle
->
controller
->
hal
)
,
(
uint32_t
*
)
&
finish_desc
)
;
i2s_common.c:718
i2s_dma_tx_callback()
i2s_port_t
port_id
=
handle
->
controller
->
id
;
i2s_common.c:767
i2s_init_dma_intr()
(
uint32_t
)
i2s_ll_get_interrupt_status_reg
(
handle
->
controller
->
hal
.
dev
)
,
I2S_LL_TX_EVENT_MASK
,
i2s_common.c:816
i2s_init_dma_intr()
(
uint32_t
)
i2s_ll_get_interrupt_status_reg
(
handle
->
controller
->
hal
.
dev
)
,
I2S_LL_RX_EVENT_MASK
,
i2s_common.c:820
i2s_init_dma_intr()
i2s_ll_enable_dma
(
handle
->
controller
->
hal
.
dev
,
true
)
;
i2s_common.c:824
i2s_init_dma_intr()
return
handle
->
controller
->
rx_chan
?
handle
->
controller
->
rx_chan
->
reserve_gpio_mask
:
0
;
i2s_common.c:840
s_i2s_get_pair_chan_gpio_mask()
return
handle
->
controller
->
tx_chan
?
handle
->
controller
->
tx_chan
->
reserve_gpio_mask
:
0
;
i2s_common.c:842
s_i2s_get_pair_chan_gpio_mask()
if
(
handle
->
controller
->
full_duplex
)
{
i2s_common.c:849
i2s_output_gpio_reserve()
if
(
handle
->
controller
->
full_duplex
)
{
i2s_common.c:863
i2s_output_gpio_revoke()
i2s_controller_t
*
i2s_obj
=
handle
->
controller
;
i2s_common.c:1030
i2s_del_channel()
i2s_ll_tx_clk_set_src
(
handle
->
controller
->
hal
.
dev
,
I2S_CLK_SRC_DEFAULT
)
;
i2s_common.c:1051
i2s_del_channel()
i2s_ll_rx_clk_set_src
(
handle
->
controller
->
hal
.
dev
,
I2S_CLK_SRC_DEFAULT
)
;
i2s_common.c:1053
i2s_del_channel()
chan_info
->
id
=
handle
->
controller
->
id
;
i2s_common.c:1139
i2s_channel_get_info()
if
(
handle
->
controller
->
full_duplex
)
{
i2s_common.c:1144
i2s_channel_get_info()
chan_info
->
pair_chan
=
handle
->
controller
->
rx_chan
;
i2s_common.c:1146
i2s_channel_get_info()
chan_info
->
pair_chan
=
handle
->
controller
->
tx_chan
;
i2s_common.c:1148
i2s_channel_get_info()
i2s_ll_tx_set_pdm_fpfs
(
handle
->
controller
->
hal
.
dev
,
pdm_tx_clk
->
up_sample_fp
,
pdm_tx_clk
->
up_sample_fs
)
;
i2s_pdm.c:50
i2s_pdm_tx_calculate_clock()
i2s_ll_tx_set_pdm_over_sample_ratio
(
handle
->
controller
->
hal
.
dev
,
over_sample_ratio
)
;
i2s_pdm.c:51
i2s_pdm_tx_calculate_clock()
i2s_hal_set_tx_clock
(
&
handle
->
controller
->
hal
,
&
clk_info
,
clk_cfg
->
clk_src
)
;
i2s_pdm.c:74
i2s_pdm_tx_set_clock()
i2s_ll_share_bck_ws
(
handle
->
controller
->
hal
.
dev
,
handle
->
controller
->
full_duplex
)
;
i2s_pdm.c:104
i2s_pdm_tx_set_slot()
i2s_hal_pdm_set_tx_slot
(
&
(
handle
->
controller
->
hal
)
,
is_slave
,
slot_hal_cfg
)
;
i2s_pdm.c:121
i2s_pdm_tx_set_slot()
int
id
=
handle
->
controller
->
id
;
i2s_pdm.c:129
i2s_pdm_tx_set_gpio()
if
(
!
handle
->
controller
->
full_duplex
)
{
i2s_pdm.c:147
i2s_pdm_tx_set_gpio()
ESP_RETURN_ON_FALSE
(
handle
->
controller
->
id
==
I2S_NUM_0
,
ESP_ERR_INVALID_ARG
,
TAG
,
"This channel handle is registered on I2S1, but PDM is only supported on I2S0"
)
;
i2s_pdm.c:174
i2s_channel_init_pdm_tx_mode()
i2s_ll_tx_enable_pdm
(
handle
->
controller
->
hal
.
dev
)
;
i2s_pdm.c:201
i2s_channel_init_pdm_tx_mode()
i2s_ll_rx_set_pdm_dsr
(
handle
->
controller
->
hal
.
dev
,
pdm_rx_clk
->
dn_sample_mode
)
;
i2s_pdm.c:346
i2s_pdm_rx_calculate_clock()
i2s_hal_set_rx_clock
(
&
handle
->
controller
->
hal
,
&
clk_info
,
clk_cfg
->
clk_src
)
;
i2s_pdm.c:367
i2s_pdm_rx_set_clock()
i2s_ll_share_bck_ws
(
handle
->
controller
->
hal
.
dev
,
handle
->
controller
->
full_duplex
)
;
i2s_pdm.c:392
i2s_pdm_rx_set_slot()
bool
is_slave
=
(
handle
->
role
==
I2S_ROLE_SLAVE
)
|
handle
->
controller
->
full_duplex
;
i2s_pdm.c:403
i2s_pdm_rx_set_slot()
i2s_hal_pdm_set_rx_slot
(
&
(
handle
->
controller
->
hal
)
,
is_slave
,
slot_hal_cfg
)
;
i2s_pdm.c:409
i2s_pdm_rx_set_slot()
int
id
=
handle
->
controller
->
id
;
i2s_pdm.c:417
i2s_pdm_rx_set_gpio()
if
(
!
handle
->
controller
->
full_duplex
)
{
i2s_pdm.c:440
i2s_pdm_rx_set_gpio()
ESP_RETURN_ON_FALSE
(
handle
->
controller
->
id
==
I2S_NUM_0
,
ESP_ERR_INVALID_ARG
,
TAG
,
"This channel handle is registered on I2S1, but PDM is only supported on I2S0"
)
;
i2s_pdm.c:461
i2s_channel_init_pdm_rx_mode()
i2s_ll_rx_enable_pdm
(
handle
->
controller
->
hal
.
dev
)
;
i2s_pdm.c:487
i2s_channel_init_pdm_rx_mode()
i2s_hal_set_tx_clock
(
&
handle
->
controller
->
hal
,
&
clk_info
,
clk_cfg
->
clk_src
)
;
i2s_std.c:87
i2s_std_set_clock()
i2s_hal_set_rx_clock
(
&
handle
->
controller
->
hal
,
&
clk_info
,
clk_cfg
->
clk_src
)
;
i2s_std.c:89
i2s_std_set_clock()
if
(
handle
->
controller
->
full_duplex
)
{
i2s_std.c:116
i2s_std_set_slot()
i2s_ll_share_bck_ws
(
handle
->
controller
->
hal
.
dev
,
true
)
;
i2s_std.c:117
i2s_std_set_slot()
i2s_ll_share_bck_ws
(
handle
->
controller
->
hal
.
dev
,
false
)
;
i2s_std.c:124
i2s_std_set_slot()
i2s_hal_std_set_tx_slot
(
&
(
handle
->
controller
->
hal
)
,
is_slave
,
(
i2s_hal_slot_config_t
*
)
slot_cfg
)
;
i2s_std.c:130
i2s_std_set_slot()
i2s_hal_std_set_rx_slot
(
&
(
handle
->
controller
->
hal
)
,
is_slave
,
(
i2s_hal_slot_config_t
*
)
slot_cfg
)
;
i2s_std.c:132
i2s_std_set_slot()
int
id
=
handle
->
controller
->
id
;
i2s_std.c:148
i2s_std_set_gpio()
if
(
handle
->
dir
==
I2S_DIR_TX
&&
!
handle
->
controller
->
full_duplex
)
{
i2s_std.c:172
i2s_std_set_gpio()
if
(
handle
->
dir
==
I2S_DIR_RX
&&
!
handle
->
controller
->
full_duplex
)
{
i2s_std.c:187
i2s_std_set_gpio()
handle
->
dir
==
I2S_DIR_TX
?
"tx"
:
"rx"
,
handle
->
controller
->
id
)
;
i2s_std.c:255
i2s_channel_init_std_mode()
Call Tree
from
examples
All items filtered out
All items filtered out
Data Use
from
examples
i2s_channel_obj_t::controller
is written by 1 function and is read by 27 functions:
i2s_register_channel()
All items filtered out
i2s_channel_obj_t::controller
i2s_tx_channel_start()
i2s_rx_channel_start()
i2s_tx_channel_stop()
i2s_rx_channel_stop()
i2s_alloc_dma_desc()
i2s_dma_rx_callback()
i2s_dma_tx_callback()
i2s_init_dma_intr()
s_i2s_get_pair_chan_gpio_mask()
i2s_output_gpio_reserve()
i2s_output_gpio_revoke()
i2s_del_channel()
i2s_channel_get_info()
i2s_std_set_clock()
i2s_std_set_slot()
i2s_std_set_gpio()
i2s_channel_init_std_mode()
i2s_pdm_tx_calculate_clock()
i2s_pdm_tx_set_clock()
i2s_pdm_tx_set_slot()
i2s_pdm_tx_set_gpio()
i2s_channel_init_pdm_tx_mode()
i2s_pdm_rx_calculate_clock()
i2s_pdm_rx_set_clock()
i2s_pdm_rx_set_slot()
i2s_pdm_rx_set_gpio()
i2s_channel_init_pdm_rx_mode()
All items filtered out
Class Tree
from
examples
All items filtered out
All items filtered out
Override Tree
from
examples
All items filtered out
All items filtered out
Implementations
from
examples
All items filtered out
All items filtered out
Instances
from
examples
Lifecycle
from
examples
All items filtered out
All items filtered out