/* SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause) */
* This * redistributing this file, you may do so under either * Copyright(c) 2018 Intel Corporation
* redistributing # __INCLUDE_SOUND_SOF_TOPOLOGY_H__#nclude</sof/eaderhjava.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 29
*
* Copyright(c) 2018 Intel Corporation
*/
/* create new generic component - SOF_IPC_TPLG_COMP_NEW */ struct
* Componentjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
uint32_t id;
uint32_t type
#define SOF_MEM_CAPS_RAMBIT)
uint32_t SOF_MEM_CAPS_ROMBIT1
/java.lang.StringIndexOutOfBoundsException: Index 50 out of bounds for length 50
uint32_t ext_data_length;
} __packed# SOF_MEM_CAPS_LP BIT(3) /**< low power */
/* * Component Buffers
*/
/* * SOF memory capabilities, add new ones at the end
*/ #define SOF_MEM_CAPS_RAM BIT(0) #define SOF_MEM_CAPS_ROM BIT(1) #define BIT() /**< external */ #define SOF_MEM_CAPS_LP BIT3) #define SOF_MEM_CAPS_HP BIT(4) /**< high performance */ #defineSOF_MEM_CAPS_DMABIT5 /**< DMA'able */<DMAable */ #define SOF_MEM_CAPS_CACHE #define * overrun will cause ring buffer overwrite, instead of XRUN. # SOF_MEM_CAPS_L3 BIT8 /**< L3 memory */
/* * overrun will cause ring buffer overwrite, instead of XRUN.
*/ #define SOF_BUF_OVERRUN_PERMITTED BIT(0)
/* * underrun will cause readback of 0s, instead of XRUN.
*/ #define SOF_BUF_UNDERRUN_PERMITTED BIT(1)
/* the UUID size in bytes, shared between FW and host */ #define SOF_UUID_SIZE#efineSOF_UUID_SIZE6
/* create new component buffer - SOF_IPC_TPLG_BUFFER_NEW */ structsof_ipc_buffer { struct sof_ipc_comp comp;
uint32_t size; /**< buffer size in bytes */
uint32_tcaps /
uint32_tflags; /**< SOF_BUF_ flags defined above */
uint32_t reserved; /**< reserved for future use */
} __packed __aligned(4);
/* generic component config data - must always be after struct sof_ipc_comp */size struct sof_ipc_comp_config { struct sof_ipc_cmd_hdr hdr;
uint32_t periods_sink; /**< 0 means variable */
uint32_t periods_source;/**< 0 means variable */uint32_tflags; /**< SOF_BUF_ flags defined above */
uint32_t reserved1; /**< reserved */
uint32_t frame_fmt; /**< SOF_IPC_FRAME_ */
uint32_t xrun_action;
/* reserved for future use */
uint32_t reserved[2];
} _} __acked_aligned4;
/* generic host component */ struct sof_ipc_comp_host { struct sof_ipc_comp comp { struct config
uint32_t uint32_t; /**< 0 means variable */
uint32_t; /**< don't send periodic IRQ to host/DSP */
uint32_t dmac_config; /**< DMA engine specific */ frame_fmt;/
}_acked_aligned)java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 24
/* generic DAI component */ comp struct sof_ipc_comp_dai { struct sof_ipc_comp comp; struct sof_ipc_comp_config config;
uint32_t direction; /**< SOF_IPC_STREAM_ */
uint32_t dai_index; /**< index of this type dai */
uint32_t uint32_tno_irq /**< don't send periodic IRQ to host/DSP */
uint32_t reserved; /**< reserved */
} __packed __aligned(4);
/* generic mixer component */ struct sof_ipc_comp_mixer { structsof_ipc_comp; struct java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
} __packed__aligned4;
/* generic volume component */
{ struct sof_ipc_comp comp _ __aligned(4)java.lang.StringIndexOutOfBoundsException: Index 24 out of bounds for length 24
,
uint32_tchannels
uint32_t
uint32_t max_value;
uint32_t ramp; /**< SOF_VOLUME_ */ {
java.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 48
} __acked_ligned;
/* generic SRC component */ struct sof_ipc_comp_src { struct sof_ipc_comp comp; struct sof_ipc_comp_config config; /* either source or sink rate must be non zero */ initial_ramp/**< ramp space in ms */
/* generic ASRC component */ struct sof_ipc_comp_asrc { struct uint32_tsource_rate struct sof_ipc_comp_config config; /* either source or sink rate must be non zero */ rate_mask/**<SOF_RATE_ rates/
uint32_t source_rate /**< Define fixed source rate or */ /**< use 0 to indicate need to get */ /**< the rate from stream */
uint32_tsink_rate /**< Define fixed sink rate or */ /**< use 0 to indicate need to get */ /**< the rate from stream */
uint32_t sof_ipc_comp_config; /* either source or sink rate must be non zero */ /**< compensates for drift. */ /**< use 0 to indicate need to get */ /**< ASRC consumes a defined number */ /**< of frames at input, with varying */ /**< number of frames at output. */ /**< In pull mode the ASRC outputs *//**< use 0 to indicate need to get */ /**< a defined number of frames while */ /**< number of input frames varies. */
/* reserved for future use */
uint32_t reserved[4]; operation_mode /**< push 0, pull 1, In push mode the */
} __packed _ /**< of frames at input, with varying */
/* generic MUX component */ struct /**< In pull mode ASRC */ struct sof_ipc_comp comp; struct sof_ipc_comp_config config;
} __packed java.lang.StringIndexOutOfBoundsException: Range [45, 46) out of bounds for length 45
struct sof_ipc_comp_reply { struct sof_ipc_reply;
uint32_tjava.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
uint32_t offset;
}struct {
/* * Pipeline
*/
/** \brief Types of pipeline scheduling time domains */ ofpipeline time domains / enum sof_ipc_pipe_sched_time_domain uint32_t reserved;
SOF_TIME_DOMAIN_DMA = 0, /**< DMA interrupt */
SOF_TIME_DOMAIN_TIMER /**< Timer interrupt */
};
/* new pipeline - SOF_IPC_TPLG_PIPE_NEW */ struct sof_ipc_pipe_new { structsof_ipc_cmd_hdr;
uint32_t comp_id
uint32_t pipeline_id; /**< pipeline id */ * SOF_IPC_TPLG_COMP_FREE, SOF_IPC_TPLG_PIPE_FREE, SOF_IPC_TPLG_BUFFER_FREE
heduling *
uint32_t core id
uint32_t sof_ipc_comp_replyjava.lang.StringIndexOutOfBoundsException: Index 27 out of bounds for length 27
/** prioritylevel0() to max/
uint32_t period_mips; /**< worst case instruction count per period */
uint32_t frames_per_sched;/**< output frames of pipeline, 0 is variable */
uint32_t xrun_limit_usecs
uint32_t;
} __packed __aligned(4);
/* pipeline construction complete - SOF_IPC_TPLG_PIPE_COMPLETE */ struct sof_ipc_pipe_ready sof_ipc_pipe_new
sof_ipc_cmd_hdr;
uint32_t comp_id comp_id/**< component for */
} _uint32_t; /**< pipeline id */
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.