mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-08 12:58:12 -04:00
ion: msm: Define heap IDs as constants in their own file
The ION heap IDs are also needed by the device-tree to provide the kernel with the heap ID for the heap that a device-tree entry describes. Currently, these IDs are hard-coded, which can be error-prone when updating the heap IDs. Thus, create a header that can also be accessed by the device-tree and userspace, and move the heap IDs to that header. This makes it so that the device-tree can now use the constants defined in the header, instead of hard-coded IDs, making updates significantly easier. Change-Id: I58b1aae9924504f2b20e159b9be8da7a2ee8d248 Signed-off-by: Isaac J. Manjarres <isaacm@codeaurora.org>
This commit is contained in:
parent
5d45437535
commit
5baf1404c7
2 changed files with 32 additions and 30 deletions
|
|
@ -6,6 +6,7 @@
|
|||
#define _UAPI_LINUX_MSM_ION_H
|
||||
|
||||
#include <linux/types.h>
|
||||
#include <linux/msm_ion_ids.h>
|
||||
|
||||
#define ION_BIT(nr) (1U << (nr))
|
||||
|
||||
|
|
@ -24,36 +25,6 @@ enum msm_ion_heap_types {
|
|||
ION_HEAP_TYPE_SECURE_CARVEOUT,
|
||||
};
|
||||
|
||||
/**
|
||||
* These are the only ids that should be used for Ion heap ids.
|
||||
* The ids listed are the order in which allocation will be attempted
|
||||
* if specified. Don't swap the order of heap ids unless you know what
|
||||
* you are doing!
|
||||
* Id's are spaced by purpose to allow new Id's to be inserted in-between (for
|
||||
* possible fallbacks)
|
||||
*/
|
||||
|
||||
enum ion_heap_ids {
|
||||
INVALID_HEAP_ID = -1,
|
||||
ION_CP_MM_HEAP_ID = 8,
|
||||
ION_SECURE_HEAP_ID = 9,
|
||||
ION_SECURE_DISPLAY_HEAP_ID = 10,
|
||||
ION_SPSS_HEAP_ID = 13, /* Secure Processor ION heap */
|
||||
ION_ADSP_HEAP_ID = 22,
|
||||
ION_SYSTEM_HEAP_ID = 25,
|
||||
ION_QSECOM_HEAP_ID = 27,
|
||||
ION_HEAP_ID_RESERVED = 31 /** Bit reserved for ION_FLAG_SECURE flag */
|
||||
};
|
||||
|
||||
/**
|
||||
* Newly added heap ids have to be #define(d) since all API changes must
|
||||
* include a new #define.
|
||||
*/
|
||||
#define ION_SECURE_CARVEOUT_HEAP_ID 14
|
||||
#define ION_QSECOM_TA_HEAP_ID 19
|
||||
#define ION_AUDIO_HEAP_ID 28
|
||||
#define ION_CAMERA_HEAP_ID 20
|
||||
#define ION_USER_CONTIG_HEAP_ID 26
|
||||
/**
|
||||
* Flags to be used when allocating from the secure heap for
|
||||
* content protection
|
||||
|
|
|
|||
31
include/uapi/linux/msm_ion_ids.h
Normal file
31
include/uapi/linux/msm_ion_ids.h
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
/* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */
|
||||
/*
|
||||
* Copyright (c) 2019, The Linux Foundation. All rights reserved.
|
||||
*/
|
||||
#ifndef _MSM_ION_IDS_H
|
||||
#define _MSM_ION_IDS_H
|
||||
|
||||
/**
|
||||
* These are the only ids that should be used for Ion heap ids.
|
||||
* The ids listed are the order in which allocation will be attempted
|
||||
* if specified. Don't swap the order of heap ids unless you know what
|
||||
* you are doing!
|
||||
* Id's are spaced by purpose to allow new Id's to be inserted in-between (for
|
||||
* possible fallbacks)
|
||||
*/
|
||||
|
||||
#define ION_CP_MM_HEAP_ID 8
|
||||
#define ION_SECURE_HEAP_ID 9
|
||||
#define ION_SECURE_DISPLAY_HEAP_ID 10
|
||||
#define ION_SPSS_HEAP_ID 13
|
||||
#define ION_SECURE_CARVEOUT_HEAP_ID 14
|
||||
#define ION_QSECOM_TA_HEAP_ID 19
|
||||
#define ION_CAMERA_HEAP_ID 20
|
||||
#define ION_ADSP_HEAP_ID 22
|
||||
#define ION_SYSTEM_HEAP_ID 25
|
||||
#define ION_USER_CONTIG_HEAP_ID 26
|
||||
#define ION_QSECOM_HEAP_ID 27
|
||||
#define ION_AUDIO_HEAP_ID 28
|
||||
#define ION_HEAP_ID_RESERVED 31
|
||||
|
||||
#endif /* _MSM_ION_IDS_H */
|
||||
Loading…
Reference in a new issue