18611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu/**************************************************************************** 28611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu **************************************************************************** 38611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu *** 48611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu *** This header was automatically generated from a Linux kernel header 58611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu *** of the same name, to make information necessary for userspace to 68611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu *** call into the kernel available to libc. It contains only constants, 78611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu *** structures, and macros generated from the original header, and thus, 88611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu *** contains no copyrightable information. 98611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu *** 108611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu *** To edit the content of this header, modify the corresponding 118611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu *** source file (e.g. under external/kernel-headers/original/) then 128611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu *** run bionic/libc/kernel/tools/update_all.py 138611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu *** 148611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu *** Any manual change here will be lost the next time this script will 158611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu *** be run. You've been warned! 168611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu *** 178611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu **************************************************************************** 188611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu ****************************************************************************/ 19f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#ifndef _LINUX_MSM_ION_H 20f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define _LINUX_MSM_ION_H 218611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu#include <linux/ion.h> 22f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define ION_HEAP_TYPE_MSM_START (ION_HEAP_TYPE_CUSTOM + 1) 238611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 24f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define ION_HEAP_TYPE_IOMMU (ION_HEAP_TYPE_MSM_START) 25f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define ION_HEAP_TYPE_CP (ION_HEAP_TYPE_IOMMU + 1) 268611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsuenum ion_heap_ids { 278611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu INVALID_HEAP_ID = -1, 28f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 298611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu ION_CP_MM_HEAP_ID = 8, 308611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu ION_CP_MFC_HEAP_ID = 12, 318611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu ION_CP_WB_HEAP_ID = 16, 328611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu ION_CAMERA_HEAP_ID = 20, 33f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 34f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev ION_ADSP_HEAP_ID = 22, 358611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu ION_SF_HEAP_ID = 24, 368611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu ION_IOMMU_HEAP_ID = 25, 378611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu ION_QSECOM_HEAP_ID = 27, 388611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 398611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu ION_AUDIO_HEAP_ID = 28, 408611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu ION_MM_FIRMWARE_HEAP_ID = 29, 418611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu ION_SYSTEM_HEAP_ID = 30, 428611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu ION_HEAP_ID_RESERVED = 31 438611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 448611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu}; 458611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsuenum ion_fixed_position { 468611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu NOT_FIXED, 478611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu FIXED_LOW, 488611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 498611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu FIXED_MIDDLE, 508611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu FIXED_HIGH, 518611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu}; 528611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsuenum cp_mem_usage { 538611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 548611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu VIDEO_BITSTREAM = 0x1, 558611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu VIDEO_PIXEL = 0x2, 568611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu VIDEO_NONPIXEL = 0x3, 578611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu MAX_USAGE = 0x4, 588611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 598611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu UNKNOWN = 0x7FFFFFFF, 608611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu}; 618611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu#define ION_HEAP_CP_MASK (1 << ION_HEAP_TYPE_CP) 628611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu#define ION_SECURE (1 << ION_HEAP_ID_RESERVED) 638611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 64f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define ION_FORCE_CONTIGUOUS (1 << 30) 658611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu#define ION_HEAP(bit) (1 << (bit)) 66f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define ION_ADSP_HEAP_NAME "adsp" 678611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu#define ION_VMALLOC_HEAP_NAME "vmalloc" 68f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 698611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu#define ION_AUDIO_HEAP_NAME "audio" 708611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu#define ION_SF_HEAP_NAME "sf" 718611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu#define ION_MM_HEAP_NAME "mm" 728611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu#define ION_CAMERA_HEAP_NAME "camera_preview" 73f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 748611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu#define ION_IOMMU_HEAP_NAME "iommu" 758611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu#define ION_MFC_HEAP_NAME "mfc" 768611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu#define ION_WB_HEAP_NAME "wb" 778611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu#define ION_MM_FIRMWARE_HEAP_NAME "mm_fw" 78f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 798611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu#define ION_QSECOM_HEAP_NAME "qsecom" 808611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu#define ION_FMEM_HEAP_NAME "fmem" 81f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define ION_SET_CACHED(__cache) (__cache | ION_FLAG_CACHED) 82f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define ION_SET_UNCACHED(__cache) (__cache & ~ION_FLAG_CACHED) 838611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 84f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define ION_IS_CACHED(__flags) ((__flags) & ION_FLAG_CACHED) 858611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsustruct ion_flush_data { 868611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu struct ion_handle *handle; 878611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu int fd; 888611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 898611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu void *vaddr; 908611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu unsigned int offset; 918611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu unsigned int length; 928611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu}; 938611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 948611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsustruct ion_flag_data { 958611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu struct ion_handle *handle; 968611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu unsigned long flags; 978611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu}; 988611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 99f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define ION_IOC_MSM_MAGIC 'M' 100f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define ION_IOC_CLEAN_CACHES _IOWR(ION_IOC_MSM_MAGIC, 0, struct ion_flush_data) 101f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define ION_IOC_INV_CACHES _IOWR(ION_IOC_MSM_MAGIC, 1, struct ion_flush_data) 102f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define ION_IOC_CLEAN_INV_CACHES _IOWR(ION_IOC_MSM_MAGIC, 2, struct ion_flush_data) 1038611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */ 104f0edc3f155a136d87beccd5ecef75c2d4b6f6b64Iliyan Malchev#define ION_IOC_GET_FLAGS _IOWR(ION_IOC_MSM_MAGIC, 3, struct ion_flag_data) 1058611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu#endif 1068611d5578ff014a1415b26e75e63aecbc4ad266cBrian Muramatsu 107