forked from thesofproject/sof
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathheader.h
More file actions
39 lines (34 loc) · 1.19 KB
/
header.h
File metadata and controls
39 lines (34 loc) · 1.19 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
/* SPDX-License-Identifier: BSD-3-Clause
*
* Copyright(c) 2018 Intel Corporation. All rights reserved.
*
* Author: Liam Girdwood <liam.r.girdwood@linux.intel.com>
* Keyon Jie <yang.jie@linux.intel.com>
*/
/**
* \file include/kernel/header.h
* \brief Non IPC command header
* \author Liam Girdwood <liam.r.girdwood@linux.intel.com>
* \author Keyon Jie <yang.jie@linux.intel.com>
*/
#ifndef __KERNEL_HEADER_H__
#define __KERNEL_HEADER_H__
#include <stdint.h>
/**
* \brief Header for all non IPC ABI data.
*
* Identifies data type, size and ABI.
* Data header used for all component data structures and binary blobs sent to
* firmware as runtime data. This data is typically sent by userspace
* applications and tunnelled through any OS kernel (via binary kcontrol on
* Linux) to the firmware.
*/
struct sof_abi_hdr {
uint32_t magic; /**< 'S', 'O', 'F', '\0' */
uint32_t type; /**< component specific type */
uint32_t size; /**< size in bytes of data excl. this struct */
uint32_t abi; /**< SOF ABI version */
uint32_t reserved[4]; /**< reserved for future use */
uint32_t data[0]; /**< Component data - opaque to core */
} __attribute__((packed));
#endif /* __KERNEL_HEADER_H__ */