mirror of
https://github.com/Evolution-X-Devices/device_google_walleye
synced 2026-01-28 17:13:09 +00:00
Initial bringup: boot to UI + adb on muskie EVM am: 449c976e32 am: ec779de1e2
am: ac24c958f9
Change-Id: I094474a74f847437a0065d25b13493c1483c3681
This commit is contained in:
19
Android.mk
Normal file
19
Android.mk
Normal file
@@ -0,0 +1,19 @@
|
||||
#
|
||||
# Copyright 2016 The Android Open Source Project
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
|
||||
ifneq ($(filter muskie, $(TARGET_DEVICE)),)
|
||||
include $(call all-subdir-makefiles)
|
||||
endif
|
||||
18
AndroidProducts.mk
Normal file
18
AndroidProducts.mk
Normal file
@@ -0,0 +1,18 @@
|
||||
#
|
||||
# Copyright 2015 The Android Open Source Project
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
|
||||
PRODUCT_MAKEFILES := \
|
||||
$(LOCAL_DIR)/aosp_muskie.mk \
|
||||
19
BoardConfig.mk
Normal file
19
BoardConfig.mk
Normal file
@@ -0,0 +1,19 @@
|
||||
#
|
||||
# Copyright (C) 2016 The Android Open-Source Project
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
|
||||
TARGET_BOOTLOADER_BOARD_NAME := muskie
|
||||
|
||||
include device/google/muskie/CommonBoardConfig.mk
|
||||
52
CommonBoardConfig.mk
Normal file
52
CommonBoardConfig.mk
Normal file
@@ -0,0 +1,52 @@
|
||||
#
|
||||
# Copyright (C) 2016 The Android Open-Source Project
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
|
||||
TARGET_BOARD_PLATFORM := msmcobalt
|
||||
|
||||
TARGET_ARCH := arm64
|
||||
TARGET_ARCH_VARIANT := armv8-a
|
||||
TARGET_CPU_ABI := arm64-v8a
|
||||
TARGET_CPU_ABI2 :=
|
||||
TARGET_CPU_VARIANT := generic
|
||||
|
||||
TARGET_2ND_ARCH := arm
|
||||
TARGET_2ND_ARCH_VARIANT := armv7-a-neon
|
||||
TARGET_2ND_CPU_ABI := armeabi-v7a
|
||||
TARGET_2ND_CPU_ABI2 := armeabi
|
||||
TARGET_2ND_CPU_VARIANT := cortex-a9
|
||||
|
||||
BOARD_KERNEL_CMDLINE += console=ttyMSM0,115200,n8 earlycon=msm_serial_dm,0xc1b0000
|
||||
BOARD_KERNEL_CMDLINE += androidboot.hardware=$(TARGET_BOOTLOADER_BOARD_NAME) androidboot.console=ttyMSM0
|
||||
BOARD_KERNEL_CMDLINE += user_debug=31 msm_rtb.filter=0x37 ehci-hcd.park=3
|
||||
BOARD_KERNEL_CMDLINE += lpm_levels.sleep_disabled=1 sched_enable_hmp=1 sched_enable_power_aware=1
|
||||
BOARD_KERNEL_CMDLINE += androidboot.selinux=permissive service_locator.enable=1
|
||||
|
||||
BOARD_KERNEL_BASE := 0x00000000
|
||||
BOARD_KERNEL_PAGESIZE := 4096
|
||||
BOARD_KERNEL_TAGS_OFFSET := 0x01E00000
|
||||
BOARD_RAMDISK_OFFSET := 0x02000000
|
||||
|
||||
TARGET_BOARD_KERNEL_HEADERS := device/google/muskie/kernel-headers
|
||||
|
||||
TARGET_NO_BOOTLOADER := true
|
||||
|
||||
BOARD_ROOT_EXTRA_FOLDERS := persist firmware
|
||||
|
||||
TARGET_USES_HWC2 := true
|
||||
|
||||
BOARD_SEPOLICY_DIRS += device/google/muskie/sepolicy
|
||||
|
||||
-include vendor/google_devices/muskie/BoardConfigVendor.mk
|
||||
33
aosp_muskie.mk
Normal file
33
aosp_muskie.mk
Normal file
@@ -0,0 +1,33 @@
|
||||
#
|
||||
# Copyright 2016 The Android Open Source Project
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
|
||||
# Inherit from the common Open Source product configuration
|
||||
$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk)
|
||||
$(call inherit-product, $(SRC_TARGET_DIR)/product/aosp_base_telephony.mk)
|
||||
|
||||
PRODUCT_NAME := aosp_muskie
|
||||
PRODUCT_DEVICE := muskie
|
||||
PRODUCT_BRAND := Android
|
||||
PRODUCT_MODEL := AOSP on muskie
|
||||
PRODUCT_MANUFACTURER := Google
|
||||
PRODUCT_RESTRICT_VENDOR_FILES := true
|
||||
|
||||
$(call inherit-product, device/google/muskie/utils.mk)
|
||||
$(call inherit-product, device/google/muskie/device.mk)
|
||||
$(call inherit-product-if-exists, vendor/google_devices/muskie/device-vendor.mk)
|
||||
|
||||
PRODUCT_PACKAGES += \
|
||||
Launcher3
|
||||
53
device-common.mk
Normal file
53
device-common.mk
Normal file
@@ -0,0 +1,53 @@
|
||||
#
|
||||
# Copyright (C) 2016 The Android Open-Source Project
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
|
||||
LOCAL_PATH := device/google/muskie
|
||||
|
||||
ifeq ($(TARGET_PREBUILT_KERNEL),)
|
||||
LOCAL_KERNEL := device/google/muskie-kernel/Image.gz-dtb
|
||||
else
|
||||
LOCAL_KERNEL := $(TARGET_PREBUILT_KERNEL)
|
||||
endif
|
||||
|
||||
PRODUCT_CHARACTERISTICS := nosdcard
|
||||
PRODUCT_SHIPPING_API_LEVEL := 24
|
||||
|
||||
DEVICE_PACKAGE_OVERLAYS := $(LOCAL_PATH)/overlay
|
||||
|
||||
PRODUCT_COPY_FILES += \
|
||||
$(LOCAL_KERNEL):kernel \
|
||||
$(LOCAL_PATH)/fstab.hardware:root/fstab.$(PRODUCT_HARDWARE) \
|
||||
$(LOCAL_PATH)/init.recovery.hardware.rc:root/init.recovery.$(PRODUCT_HARDWARE).rc \
|
||||
$(LOCAL_PATH)/init.hardware.rc:root/init.$(PRODUCT_HARDWARE).rc \
|
||||
$(LOCAL_PATH)/init.hardware.usb.rc:root/init.$(PRODUCT_HARDWARE).usb.rc \
|
||||
$(LOCAL_PATH)/ueventd.hardware.rc:root/ueventd.$(PRODUCT_HARDWARE).rc \
|
||||
|
||||
BOARD_KERNEL_PAGESIZE := 4096
|
||||
BOARD_FLASH_BLOCK_SIZE := 131072
|
||||
BOARD_SYSTEMIMAGE_PARTITION_SIZE := 2147483648
|
||||
TARGET_USERIMAGES_USE_EXT4 := true
|
||||
BOARD_PERSISTIMAGE_PARTITION_SIZE := 33554432
|
||||
BOARD_PERSISTIMAGE_FILE_SYSTEM_TYPE := ext4
|
||||
|
||||
MSM_VIDC_TARGET_LIST := msmcobalt # Get the color format from kernel headers
|
||||
MASTER_SIDE_CP_TARGET_LIST := msmcobalt # ION specific settings
|
||||
|
||||
PRODUCT_PACKAGES += \
|
||||
hwcomposer.msmcobalt \
|
||||
gralloc.msmcobalt \
|
||||
|
||||
# setup dalvik vm configs
|
||||
$(call inherit-product, frameworks/native/build/phone-xhdpi-2048-dalvik-heap.mk)
|
||||
26
device.mk
Normal file
26
device.mk
Normal file
@@ -0,0 +1,26 @@
|
||||
#
|
||||
# Copyright 2016 The Android Open Source Project
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
|
||||
PRODUCT_AAPT_CONFIG := normal
|
||||
PRODUCT_AAPT_PREF_CONFIG := 560dpi
|
||||
PRODUCT_AAPT_PREBUILT_DPI := xxxhdpi xxhdpi xhdpi hdpi
|
||||
|
||||
PRODUCT_HARDWARE := muskie
|
||||
|
||||
include device/google/muskie/device-common.mk
|
||||
|
||||
PRODUCT_PROPERTY_OVERRIDES += \
|
||||
ro.sf.lcd_density=560 \
|
||||
6
fstab.hardware
Normal file
6
fstab.hardware
Normal file
@@ -0,0 +1,6 @@
|
||||
# Android fstab file.
|
||||
|
||||
#<src> <mnt_point> <type> <mnt_flags and options> <fs_mgr_flags>
|
||||
/dev/block/bootdevice/by-name/system /system ext4 ro,barrier=1,discard wait
|
||||
/dev/block/bootdevice/by-name/userdata /data ext4 nosuid,nodev,barrier=1,noauto_da_alloc,discard wait,check,encryptable=footer
|
||||
/dev/block/bootdevice/by-name/misc /misc emmc defaults defaults
|
||||
51
init.hardware.rc
Normal file
51
init.hardware.rc
Normal file
@@ -0,0 +1,51 @@
|
||||
#
|
||||
# Copyright (C) 2016 The Android Open-Source Project
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
|
||||
import init.${ro.hardware}.usb.rc
|
||||
|
||||
on early-init
|
||||
mount debugfs debugfs /sys/kernel/debug
|
||||
chmod 0755 /sys/kernel/debug
|
||||
|
||||
on init
|
||||
# Support legacy paths
|
||||
symlink /sdcard /mnt/sdcard
|
||||
symlink /sdcard /storage/sdcard0
|
||||
|
||||
on fs
|
||||
wait /dev/block/platform/soc/${ro.boot.bootdevice}
|
||||
symlink /dev/block/platform/soc/${ro.boot.bootdevice} /dev/block/bootdevice
|
||||
|
||||
mount_all fstab.${ro.hardware}
|
||||
swapon_all fstab.${ro.hardware}
|
||||
|
||||
# Keeping following partitions outside fstab file. As user may not have
|
||||
# these partition flashed on the device. Failure to mount any partition in fstab file
|
||||
# results in failure to launch late-start class.
|
||||
|
||||
wait /dev/block/bootdevice/by-name/cache
|
||||
mount ext4 /dev/block/bootdevice/by-name/cache /cache nosuid nodev barrier=1
|
||||
|
||||
wait /dev/block/bootdevice/by-name/persist
|
||||
mount ext4 /dev/block/bootdevice/by-name/persist /persist nosuid nodev barrier=1
|
||||
restorecon_recursive /persist
|
||||
mkdir /persist/data 0700 system system
|
||||
|
||||
wait /dev/block/bootdevice/by-name/dsp
|
||||
mount ext4 /dev/block/bootdevice/by-name/dsp /dsp ro nosuid nodev barrier=1
|
||||
|
||||
wait /dev/block/bootdevice/by-name/modem
|
||||
mount vfat /dev/block/bootdevice/by-name/modem /firmware ro shortname=lower,uid=1000,gid=1000,dmask=227,fmask=337
|
||||
51
init.hardware.usb.rc
Normal file
51
init.hardware.usb.rc
Normal file
@@ -0,0 +1,51 @@
|
||||
#
|
||||
# Copyright (C) 2016 The Android Open-Source Project
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
|
||||
on boot
|
||||
mkdir /dev/usb-ffs 0770 shell shell
|
||||
mkdir /dev/usb-ffs/adb 0770 shell shell
|
||||
mount configfs none /config
|
||||
mkdir /config/usb_gadget/g1 0770 shell shell
|
||||
mkdir /config/usb_gadget/g1/strings/0x409 0770 shell shell
|
||||
write /config/usb_gadget/g1/bcdUSB 0x0200
|
||||
write /config/usb_gadget/g1/idVendor 0x18d1
|
||||
write /config/usb_gadget/g1/bcdDevice 0x4ee1
|
||||
write /config/usb_gadget/g1/os_desc/use 1
|
||||
write /config/usb_gadget/g1/strings/0x409/serialnumber ${ro.serialno}
|
||||
write /config/usb_gadget/g1/strings/0x409/manufacturer ${ro.product.manufacturer}
|
||||
write /config/usb_gadget/g1/strings/0x409/product ${ro.product.model}
|
||||
mkdir /config/usb_gadget/g1/functions/mass_storage.0
|
||||
mkdir /config/usb_gadget/g1/functions/mtp.gs0
|
||||
mkdir /config/usb_gadget/g1/functions/ptp.gs1
|
||||
mkdir /config/usb_gadget/g1/functions/accessory.gs2
|
||||
mkdir /config/usb_gadget/g1/functions/audio_source.gs3
|
||||
mkdir /config/usb_gadget/g1/functions/midi.gs5
|
||||
mkdir /config/usb_gadget/g1/functions/ffs.adb
|
||||
mkdir /config/usb_gadget/g1/functions/diag.diag
|
||||
mkdir /config/usb_gadget/g1/functions/cser.dun.0
|
||||
mkdir /config/usb_gadget/g1/functions/cser.nmea.1
|
||||
mkdir /config/usb_gadget/g1/functions/gsi.rmnet
|
||||
mkdir /config/usb_gadget/g1/functions/gsi.rndis
|
||||
mkdir /config/usb_gadget/g1/functions/qdss.qdss
|
||||
mkdir /config/usb_gadget/g1/configs/b.1 0770 shell shell
|
||||
mkdir /config/usb_gadget/g1/configs/b.1/strings/0x409 0770 shell shell
|
||||
write /config/usb_gadget/g1/os_desc/b_vendor_code 0x1
|
||||
write /config/usb_gadget/g1/os_desc/qw_sign "MSFT100"
|
||||
symlink /config/usb_gadget/g1/configs/b.1 /config/usb_gadget/g1/os_desc/b.1
|
||||
mount functionfs adb /dev/usb-ffs/adb uid=2000,gid=2000
|
||||
write /sys/class/android_usb/android0/f_ffs/aliases adb
|
||||
setprop sys.usb.configfs 1
|
||||
setprop sys.usb.controller "a800000.dwc3"
|
||||
3
init.recovery.hardware.rc
Normal file
3
init.recovery.hardware.rc
Normal file
@@ -0,0 +1,3 @@
|
||||
on fs
|
||||
wait /dev/block/platform/soc/${ro.boot.bootdevice}
|
||||
symlink /dev/block/platform/soc/${ro.boot.bootdevice} /dev/block/bootdevice
|
||||
79
kernel-headers/linux/ion.h
Normal file
79
kernel-headers/linux/ion.h
Normal file
@@ -0,0 +1,79 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _LINUX_ION_H
|
||||
#define _LINUX_ION_H
|
||||
#include <linux/ioctl.h>
|
||||
#include <linux/types.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
typedef int ion_user_handle_t;
|
||||
enum ion_heap_type {
|
||||
ION_HEAP_TYPE_SYSTEM,
|
||||
ION_HEAP_TYPE_SYSTEM_CONTIG,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ION_HEAP_TYPE_CARVEOUT,
|
||||
ION_HEAP_TYPE_CHUNK,
|
||||
ION_HEAP_TYPE_DMA,
|
||||
ION_HEAP_TYPE_CUSTOM,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ION_NUM_HEAPS = 16,
|
||||
};
|
||||
#define ION_HEAP_SYSTEM_MASK (1 << ION_HEAP_TYPE_SYSTEM)
|
||||
#define ION_HEAP_SYSTEM_CONTIG_MASK (1 << ION_HEAP_TYPE_SYSTEM_CONTIG)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ION_HEAP_CARVEOUT_MASK (1 << ION_HEAP_TYPE_CARVEOUT)
|
||||
#define ION_HEAP_TYPE_DMA_MASK (1 << ION_HEAP_TYPE_DMA)
|
||||
#define ION_NUM_HEAP_IDS (sizeof(unsigned int) * 8)
|
||||
#define ION_FLAG_CACHED 1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ION_FLAG_CACHED_NEEDS_SYNC 2
|
||||
struct ion_allocation_data {
|
||||
size_t len;
|
||||
size_t align;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int heap_id_mask;
|
||||
unsigned int flags;
|
||||
ion_user_handle_t handle;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ion_fd_data {
|
||||
ion_user_handle_t handle;
|
||||
int fd;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ion_handle_data {
|
||||
ion_user_handle_t handle;
|
||||
};
|
||||
struct ion_custom_data {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int cmd;
|
||||
unsigned long arg;
|
||||
};
|
||||
#define ION_IOC_MAGIC 'I'
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ION_IOC_ALLOC _IOWR(ION_IOC_MAGIC, 0, struct ion_allocation_data)
|
||||
#define ION_IOC_FREE _IOWR(ION_IOC_MAGIC, 1, struct ion_handle_data)
|
||||
#define ION_IOC_MAP _IOWR(ION_IOC_MAGIC, 2, struct ion_fd_data)
|
||||
#define ION_IOC_SHARE _IOWR(ION_IOC_MAGIC, 4, struct ion_fd_data)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ION_IOC_IMPORT _IOWR(ION_IOC_MAGIC, 5, struct ion_fd_data)
|
||||
#define ION_IOC_SYNC _IOWR(ION_IOC_MAGIC, 7, struct ion_fd_data)
|
||||
#define ION_IOC_CUSTOM _IOWR(ION_IOC_MAGIC, 6, struct ion_custom_data)
|
||||
#endif
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
|
||||
86
kernel-headers/linux/mdss_rotator.h
Normal file
86
kernel-headers/linux/mdss_rotator.h
Normal file
@@ -0,0 +1,86 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _MDSS_ROTATOR_H_
|
||||
#define _MDSS_ROTATOR_H_
|
||||
#include <linux/msm_mdp_ext.h>
|
||||
#define MDSS_ROTATOR_IOCTL_MAGIC 'w'
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MDSS_ROTATION_OPEN _IOWR(MDSS_ROTATOR_IOCTL_MAGIC, 1, struct mdp_rotation_config *)
|
||||
#define MDSS_ROTATION_CONFIG _IOWR(MDSS_ROTATOR_IOCTL_MAGIC, 2, struct mdp_rotation_config *)
|
||||
#define MDSS_ROTATION_REQUEST _IOWR(MDSS_ROTATOR_IOCTL_MAGIC, 3, struct mdp_rotation_request *)
|
||||
#define MDSS_ROTATION_CLOSE _IOW(MDSS_ROTATOR_IOCTL_MAGIC, 4, unsigned int)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MDP_ROTATION_NOP 0x01
|
||||
#define MDP_ROTATION_FLIP_LR 0x02
|
||||
#define MDP_ROTATION_FLIP_UD 0x04
|
||||
#define MDP_ROTATION_90 0x08
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MDP_ROTATION_180 (MDP_ROTATION_FLIP_LR | MDP_ROTATION_FLIP_UD)
|
||||
#define MDP_ROTATION_270 (MDP_ROTATION_90 | MDP_ROTATION_180)
|
||||
#define MDP_ROTATION_DEINTERLACE 0x10
|
||||
#define MDP_ROTATION_BWC_EN 0x40
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MDP_ROTATION_SECURE 0x80
|
||||
#define MDSS_ROTATION_REQUEST_VALIDATE 0x01
|
||||
#define MDP_ROTATION_REQUEST_VERSION_1_0 0x00010000
|
||||
#define MDSS_ROTATION_HW_ANY 0xFFFFFFFF
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct mdp_rotation_buf_info {
|
||||
uint32_t width;
|
||||
uint32_t height;
|
||||
uint32_t format;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct mult_factor comp_ratio;
|
||||
};
|
||||
struct mdp_rotation_config {
|
||||
uint32_t version;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t session_id;
|
||||
struct mdp_rotation_buf_info input;
|
||||
struct mdp_rotation_buf_info output;
|
||||
uint32_t frame_rate;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t flags;
|
||||
uint32_t reserved[6];
|
||||
};
|
||||
struct mdp_rotation_item {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t flags;
|
||||
struct mdp_rect src_rect;
|
||||
struct mdp_rect dst_rect;
|
||||
struct mdp_layer_buffer input;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct mdp_layer_buffer output;
|
||||
uint32_t pipe_idx;
|
||||
uint32_t wb_idx;
|
||||
uint32_t session_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t reserved[6];
|
||||
};
|
||||
struct mdp_rotation_request {
|
||||
uint32_t version;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t flags;
|
||||
uint32_t count;
|
||||
struct mdp_rotation_item * list;
|
||||
uint32_t reserved[6];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#endif
|
||||
|
||||
95
kernel-headers/linux/mfd/msm-adie-codec.h
Normal file
95
kernel-headers/linux/mfd/msm-adie-codec.h
Normal file
@@ -0,0 +1,95 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __UAPI_MFD_MSM_ADIE_CODEC_H
|
||||
#define __UAPI_MFD_MSM_ADIE_CODEC_H
|
||||
#include <linux/types.h>
|
||||
#define ADIE_CODEC_ACTION_ENTRY 0x1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ADIE_CODEC_ACTION_DELAY_WAIT 0x2
|
||||
#define ADIE_CODEC_ACTION_STAGE_REACHED 0x3
|
||||
#define ADIE_CODEC_PATH_OFF 0x0050
|
||||
#define ADIE_CODEC_DIGITAL_READY 0x0100
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ADIE_CODEC_DIGITAL_ANALOG_READY 0x1000
|
||||
#define ADIE_CODEC_ANALOG_OFF 0x0750
|
||||
#define ADIE_CODEC_DIGITAL_OFF 0x0600
|
||||
#define ADIE_CODEC_FLASH_IMAGE 0x0001
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ADIE_CODEC_RX 0
|
||||
#define ADIE_CODEC_TX 1
|
||||
#define ADIE_CODEC_LB 3
|
||||
#define ADIE_CODEC_MAX 4
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ADIE_CODEC_PACK_ENTRY(reg,mask,val) ((val) | (mask << 8) | (reg << 16))
|
||||
#define ADIE_CODEC_UNPACK_ENTRY(packed,reg,mask,val) do { ((reg) = ((packed >> 16) & (0xff))); ((mask) = ((packed >> 8) & (0xff))); ((val) = ((packed) & (0xff))); } while(0);
|
||||
struct adie_codec_action_unit {
|
||||
u32 type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
u32 action;
|
||||
};
|
||||
struct adie_codec_hwsetting_entry {
|
||||
struct adie_codec_action_unit * actions;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
u32 action_sz;
|
||||
u32 freq_plan;
|
||||
u32 osr;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct adie_codec_dev_profile {
|
||||
u32 path_type;
|
||||
u32 setting_sz;
|
||||
struct adie_codec_hwsetting_entry * settings;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct adie_codec_register {
|
||||
u8 reg;
|
||||
u8 mask;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
u8 val;
|
||||
};
|
||||
struct adie_codec_register_image {
|
||||
struct adie_codec_register * regs;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
u32 img_sz;
|
||||
};
|
||||
struct adie_codec_path;
|
||||
struct adie_codec_anc_data {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
u32 size;
|
||||
u32 writes[];
|
||||
};
|
||||
struct adie_codec_operations {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int codec_id;
|
||||
int(* codec_open) (struct adie_codec_dev_profile * profile, struct adie_codec_path * * path_pptr);
|
||||
int(* codec_close) (struct adie_codec_path * path_ptr);
|
||||
int(* codec_setpath) (struct adie_codec_path * path_ptr, u32 freq_plan, u32 osr);
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int(* codec_proceed_stage) (struct adie_codec_path * path_ptr, u32 state);
|
||||
u32(* codec_freq_supported) (struct adie_codec_dev_profile * profile, u32 requested_freq);
|
||||
int(* codec_enable_sidetone) (struct adie_codec_path * rx_path_ptr, u32 enable);
|
||||
int(* codec_enable_anc) (struct adie_codec_path * rx_path_ptr, u32 enable, struct adie_codec_anc_data * calibration_writes);
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int(* codec_set_device_digital_volume) (struct adie_codec_path * path_ptr, u32 num_channels, u32 vol_percentage);
|
||||
int(* codec_set_device_analog_volume) (struct adie_codec_path * path_ptr, u32 num_channels, u32 volume);
|
||||
int(* codec_set_master_mode) (struct adie_codec_path * path_ptr, u8 master);
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
|
||||
1746
kernel-headers/linux/mfd/wcd9xxx/wcd9320_registers.h
Normal file
1746
kernel-headers/linux/mfd/wcd9xxx/wcd9320_registers.h
Normal file
File diff suppressed because it is too large
Load Diff
434
kernel-headers/linux/mfd/wcd9xxx/wcd9xxx_registers.h
Normal file
434
kernel-headers/linux/mfd/wcd9xxx/wcd9xxx_registers.h
Normal file
@@ -0,0 +1,434 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef WCD9XXX_CODEC_DIGITAL_H
|
||||
#define WCD9XXX_CODEC_DIGITAL_H
|
||||
#define WCD9XXX_A_CHIP_CTL (0x00)
|
||||
#define WCD9XXX_A_CHIP_CTL__POR (0x00000000)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CHIP_STATUS (0x01)
|
||||
#define WCD9XXX_A_CHIP_STATUS__POR (0x00000000)
|
||||
#define WCD9XXX_A_CHIP_ID_BYTE_0 (0x04)
|
||||
#define WCD9XXX_A_CHIP_ID_BYTE_0__POR (0x00000000)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CHIP_ID_BYTE_1 (0x05)
|
||||
#define WCD9XXX_A_CHIP_ID_BYTE_1__POR (0x00000000)
|
||||
#define WCD9XXX_A_CHIP_ID_BYTE_2 (0x06)
|
||||
#define WCD9XXX_A_CHIP_ID_BYTE_2__POR (0x00000000)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CHIP_ID_BYTE_3 (0x07)
|
||||
#define WCD9XXX_A_CHIP_ID_BYTE_3__POR (0x00000001)
|
||||
#define WCD9XXX_A_CHIP_VERSION (0x08)
|
||||
#define WCD9XXX_A_CHIP_VERSION__POR (0x00000020)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_SB_VERSION (0x09)
|
||||
#define WCD9XXX_A_SB_VERSION__POR (0x00000010)
|
||||
#define WCD9XXX_A_SLAVE_ID_1 (0x0C)
|
||||
#define WCD9XXX_A_SLAVE_ID_1__POR (0x00000077)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_SLAVE_ID_2 (0x0D)
|
||||
#define WCD9XXX_A_SLAVE_ID_2__POR (0x00000066)
|
||||
#define WCD9XXX_A_SLAVE_ID_3 (0x0E)
|
||||
#define WCD9XXX_A_SLAVE_ID_3__POR (0x00000055)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CDC_CTL (0x80)
|
||||
#define WCD9XXX_A_CDC_CTL__POR (0x00000000)
|
||||
#define WCD9XXX_A_LEAKAGE_CTL (0x88)
|
||||
#define WCD9XXX_A_LEAKAGE_CTL__POR (0x00000004)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_INTR_MODE (0x90)
|
||||
#define WCD9XXX_A_INTR_MASK0 (0x94)
|
||||
#define WCD9XXX_A_INTR_STATUS0 (0x98)
|
||||
#define WCD9XXX_A_INTR_CLEAR0 (0x9C)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_INTR_LEVEL0 (0xA0)
|
||||
#define WCD9XXX_A_INTR_LEVEL1 (0xA1)
|
||||
#define WCD9XXX_A_INTR_LEVEL2 (0xA2)
|
||||
#define WCD9XXX_A_RX_HPH_CNP_EN (0x1AB)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_RX_HPH_CNP_EN__POR (0x80)
|
||||
#define WCD9XXX_A_RX_HPH_CNP_EN (0x1AB)
|
||||
#define WCD9XXX_A_RX_HPH_CNP_EN__POR (0x80)
|
||||
#define WCD9XXX_A_BIAS_CENTRAL_BG_CTL (0x101)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_BIAS_CENTRAL_BG_CTL__POR (0x50)
|
||||
#define WCD9XXX_A_CLK_BUFF_EN1 (0x108)
|
||||
#define WCD9XXX_A_CLK_BUFF_EN1__POR (0x04)
|
||||
#define WCD9XXX_A_CLK_BUFF_EN2 (0x109)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CLK_BUFF_EN2__POR (0x02)
|
||||
#define WCD9XXX_A_RX_COM_BIAS (0x1A2)
|
||||
#define WCD9XXX_A_RX_COM_BIAS__POR (0x00)
|
||||
#define WCD9XXX_A_RC_OSC_FREQ (0x1FA)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_RC_OSC_FREQ__POR (0x46)
|
||||
#define WCD9XXX_A_BIAS_OSC_BG_CTL (0x105)
|
||||
#define WCD9XXX_A_BIAS_OSC_BG_CTL__POR (0x16)
|
||||
#define WCD9XXX_A_RC_OSC_TEST (0x1FB)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_RC_OSC_TEST__POR (0x0A)
|
||||
#define WCD9XXX_A_CDC_CLK_MCLK_CTL (0x311)
|
||||
#define WCD9XXX_A_CDC_CLK_MCLK_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_EN_CTL (0x3C0)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CDC_MBHC_EN_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_FIR_B1_CFG (0x3C1)
|
||||
#define WCD9XXX_A_CDC_MBHC_FIR_B1_CFG__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_FIR_B2_CFG (0x3C2)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CDC_MBHC_FIR_B2_CFG__POR (0x06)
|
||||
#define WCD9XXX_A_CDC_MBHC_TIMER_B1_CTL (0x3C3)
|
||||
#define WCD9XXX_A_CDC_MBHC_TIMER_B1_CTL__POR (0x03)
|
||||
#define WCD9XXX_A_CDC_MBHC_TIMER_B2_CTL (0x3C4)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CDC_MBHC_TIMER_B2_CTL__POR (0x09)
|
||||
#define WCD9XXX_A_CDC_MBHC_TIMER_B3_CTL (0x3C5)
|
||||
#define WCD9XXX_A_CDC_MBHC_TIMER_B3_CTL__POR (0x1E)
|
||||
#define WCD9XXX_A_CDC_MBHC_TIMER_B4_CTL (0x3C6)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CDC_MBHC_TIMER_B4_CTL__POR (0x45)
|
||||
#define WCD9XXX_A_CDC_MBHC_TIMER_B5_CTL (0x3C7)
|
||||
#define WCD9XXX_A_CDC_MBHC_TIMER_B5_CTL__POR (0x04)
|
||||
#define WCD9XXX_A_CDC_MBHC_TIMER_B6_CTL (0x3C8)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CDC_MBHC_TIMER_B6_CTL__POR (0x78)
|
||||
#define WCD9XXX_A_CDC_MBHC_B1_STATUS (0x3C9)
|
||||
#define WCD9XXX_A_CDC_MBHC_B1_STATUS__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_B2_STATUS (0x3CA)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CDC_MBHC_B2_STATUS__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_B3_STATUS (0x3CB)
|
||||
#define WCD9XXX_A_CDC_MBHC_B3_STATUS__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_B4_STATUS (0x3CC)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CDC_MBHC_B4_STATUS__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_B5_STATUS (0x3CD)
|
||||
#define WCD9XXX_A_CDC_MBHC_B5_STATUS__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_B1_CTL (0x3CE)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CDC_MBHC_B1_CTL__POR (0xC0)
|
||||
#define WCD9XXX_A_CDC_MBHC_B2_CTL (0x3CF)
|
||||
#define WCD9XXX_A_CDC_MBHC_B2_CTL__POR (0x5D)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B1_CTL (0x3D0)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B1_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B2_CTL (0x3D1)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B2_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B3_CTL (0x3D2)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B3_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B4_CTL (0x3D3)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B4_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B5_CTL (0x3D4)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B5_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B6_CTL (0x3D5)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B6_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B7_CTL (0x3D6)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B7_CTL__POR (0xFF)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B8_CTL (0x3D7)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B8_CTL__POR (0x07)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B9_CTL (0x3D8)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B9_CTL__POR (0xFF)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B10_CTL (0x3D9)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B10_CTL__POR (0x7F)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B11_CTL (0x3DA)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B11_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B12_CTL (0x3DB)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B12_CTL__POR (0x80)
|
||||
#define WCD9XXX_A_CDC_MBHC_CLK_CTL (0x3DC)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CDC_MBHC_CLK_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_INT_CTL (0x3DD)
|
||||
#define WCD9XXX_A_CDC_MBHC_INT_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_DEBUG_CTL (0x3DE)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CDC_MBHC_DEBUG_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_SPARE (0x3DF)
|
||||
#define WCD9XXX_A_CDC_MBHC_SPARE__POR (0x00)
|
||||
#define WCD9XXX_A_MBHC_SCALING_MUX_1 (0x14E)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_MBHC_SCALING_MUX_1__POR (0x00)
|
||||
#define WCD9XXX_A_RX_HPH_OCP_CTL (0x1AA)
|
||||
#define WCD9XXX_A_RX_HPH_OCP_CTL__POR (0x68)
|
||||
#define WCD9XXX_A_MICB_1_CTL (0x12B)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_MICB_1_CTL__POR (0x16)
|
||||
#define WCD9XXX_A_MICB_1_INT_RBIAS (0x12C)
|
||||
#define WCD9XXX_A_MICB_1_INT_RBIAS__POR (0x24)
|
||||
#define WCD9XXX_A_MICB_1_MBHC (0x12D)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_MICB_1_MBHC__POR (0x01)
|
||||
#define WCD9XXX_A_MICB_CFILT_2_CTL (0x12E)
|
||||
#define WCD9XXX_A_MICB_CFILT_2_CTL__POR (0x40)
|
||||
#define WCD9XXX_A_MICB_CFILT_2_VAL (0x12F)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_MICB_CFILT_2_VAL__POR (0x80)
|
||||
#define WCD9XXX_A_MICB_CFILT_2_PRECHRG (0x130)
|
||||
#define WCD9XXX_A_MICB_CFILT_2_PRECHRG__POR (0x38)
|
||||
#define WCD9XXX_A_MICB_2_CTL (0x131)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_MICB_2_CTL__POR (0x16)
|
||||
#define WCD9XXX_A_MICB_2_INT_RBIAS (0x132)
|
||||
#define WCD9XXX_A_MICB_2_INT_RBIAS__POR (0x24)
|
||||
#define WCD9XXX_A_MICB_2_MBHC (0x133)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_MICB_2_MBHC__POR (0x02)
|
||||
#define WCD9XXX_A_MICB_CFILT_3_CTL (0x134)
|
||||
#define WCD9XXX_A_MICB_CFILT_3_CTL__POR (0x40)
|
||||
#define WCD9XXX_A_MICB_CFILT_3_VAL (0x135)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_MICB_CFILT_3_VAL__POR (0x80)
|
||||
#define WCD9XXX_A_MICB_CFILT_3_PRECHRG (0x136)
|
||||
#define WCD9XXX_A_MICB_CFILT_3_PRECHRG__POR (0x38)
|
||||
#define WCD9XXX_A_MICB_3_CTL (0x137)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_MICB_3_CTL__POR (0x16)
|
||||
#define WCD9XXX_A_MICB_3_INT_RBIAS (0x138)
|
||||
#define WCD9XXX_A_MICB_3_INT_RBIAS__POR (0x24)
|
||||
#define WCD9XXX_A_MICB_3_MBHC (0x139)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_MICB_3_MBHC__POR (0x00)
|
||||
#define WCD9XXX_A_MICB_4_CTL (0x13D)
|
||||
#define WCD9XXX_A_MICB_4_CTL__POR (0x16)
|
||||
#define WCD9XXX_A_MICB_4_INT_RBIAS (0x13E)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_MICB_4_INT_RBIAS__POR (0x24)
|
||||
#define WCD9XXX_A_MICB_4_MBHC (0x13F)
|
||||
#define WCD9XXX_A_MICB_4_MBHC__POR (0x01)
|
||||
#define WCD9XXX_A_MICB_CFILT_1_VAL (0x129)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_MICB_CFILT_1_VAL__POR (0x80)
|
||||
#define WCD9XXX_A_RX_HPH_L_STATUS (0x1B3)
|
||||
#define WCD9XXX_A_RX_HPH_L_STATUS__POR (0x00)
|
||||
#define WCD9XXX_A_MBHC_HPH (0x1FE)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_MBHC_HPH__POR (0x44)
|
||||
#define WCD9XXX_A_RX_HPH_CNP_WG_TIME (0x1AD)
|
||||
#define WCD9XXX_A_RX_HPH_CNP_WG_TIME__POR (0x2A)
|
||||
#define WCD9XXX_A_RX_HPH_R_DAC_CTL (0x1B7)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_RX_HPH_R_DAC_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_RX_HPH_L_DAC_CTL (0x1B1)
|
||||
#define WCD9XXX_A_RX_HPH_L_DAC_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_TX_7_MBHC_EN (0x171)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_TX_7_MBHC_EN__POR (0x0C)
|
||||
#define WCD9XXX_A_PIN_CTL_OE0 (0x010)
|
||||
#define WCD9XXX_A_PIN_CTL_OE0__POR (0x00)
|
||||
#define WCD9XXX_A_PIN_CTL_OE1 (0x011)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_PIN_CTL_OE1__POR (0x00)
|
||||
#define WCD9XXX_A_MICB_CFILT_1_CTL (0x128)
|
||||
#define WCD9XXX_A_LDO_H_MODE_1 (0x110)
|
||||
#define WCD9XXX_A_LDO_H_MODE_1__POR (0x65)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_MICB_CFILT_1_CTL__POR (0x40)
|
||||
#define WCD9XXX_A_TX_7_MBHC_TEST_CTL (0x174)
|
||||
#define WCD9XXX_A_TX_7_MBHC_TEST_CTL__POR (0x38)
|
||||
#define WCD9XXX_A_MBHC_SCALING_MUX_2 (0x14F)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_MBHC_SCALING_MUX_2__POR (0x80)
|
||||
#define WCD9XXX_A_TX_COM_BIAS (0x14C)
|
||||
#define WCD9XXX_A_TX_COM_BIAS__POR (0xF0)
|
||||
#define WCD9XXX_A_MBHC_INSERT_DETECT (0x14A)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_MBHC_INSERT_DETECT__POR (0x00)
|
||||
#define WCD9XXX_A_MBHC_INSERT_DET_STATUS (0x14B)
|
||||
#define WCD9XXX_A_MBHC_INSERT_DET_STATUS__POR (0x00)
|
||||
#define WCD9XXX_A_MAD_ANA_CTRL (0x150)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_MAD_ANA_CTRL__POR (0xF1)
|
||||
#define WCD9XXX_A_CDC_CLK_OTHR_CTL (0x30C)
|
||||
#define WCD9XXX_A_CDC_CLK_OTHR_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_BUCK_MODE_1 (0x181)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_BUCK_MODE_1__POR (0x21)
|
||||
#define WCD9XXX_A_BUCK_MODE_2 (0x182)
|
||||
#define WCD9XXX_A_BUCK_MODE_2__POR (0xFF)
|
||||
#define WCD9XXX_A_BUCK_MODE_3 (0x183)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_BUCK_MODE_3__POR (0xCC)
|
||||
#define WCD9XXX_A_BUCK_MODE_4 (0x184)
|
||||
#define WCD9XXX_A_BUCK_MODE_4__POR (0x3A)
|
||||
#define WCD9XXX_A_BUCK_MODE_5 (0x185)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_BUCK_MODE_5__POR (0x00)
|
||||
#define WCD9XXX_A_BUCK_CTRL_VCL_1 (0x186)
|
||||
#define WCD9XXX_A_BUCK_CTRL_VCL_1__POR (0x48)
|
||||
#define WCD9XXX_A_BUCK_CTRL_VCL_2 (0x187)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_BUCK_CTRL_VCL_2__POR (0xA3)
|
||||
#define WCD9XXX_A_BUCK_CTRL_VCL_3 (0x188)
|
||||
#define WCD9XXX_A_BUCK_CTRL_VCL_3__POR (0x82)
|
||||
#define WCD9XXX_A_BUCK_CTRL_CCL_1 (0x189)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_BUCK_CTRL_CCL_1__POR (0xAB)
|
||||
#define WCD9XXX_A_BUCK_CTRL_CCL_2 (0x18A)
|
||||
#define WCD9XXX_A_BUCK_CTRL_CCL_2__POR (0xDC)
|
||||
#define WCD9XXX_A_BUCK_CTRL_CCL_3 (0x18B)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_BUCK_CTRL_CCL_3__POR (0x6A)
|
||||
#define WCD9XXX_A_BUCK_CTRL_CCL_4 (0x18C)
|
||||
#define WCD9XXX_A_BUCK_CTRL_CCL_4__POR (0x58)
|
||||
#define WCD9XXX_A_BUCK_CTRL_PWM_DRVR_1 (0x18D)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_BUCK_CTRL_PWM_DRVR_1__POR (0x50)
|
||||
#define WCD9XXX_A_BUCK_CTRL_PWM_DRVR_2 (0x18E)
|
||||
#define WCD9XXX_A_BUCK_CTRL_PWM_DRVR_2__POR (0x64)
|
||||
#define WCD9XXX_A_BUCK_CTRL_PWM_DRVR_3 (0x18F)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_BUCK_CTRL_PWM_DRVR_3__POR (0x77)
|
||||
#define WCD9XXX_A_BUCK_TMUX_A_D (0x190)
|
||||
#define WCD9XXX_A_BUCK_TMUX_A_D__POR (0x00)
|
||||
#define WCD9XXX_A_NCP_EN (0x192)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_NCP_EN__POR (0xFE)
|
||||
#define WCD9XXX_A_NCP_STATIC (0x194)
|
||||
#define WCD9XXX_A_NCP_STATIC__POR (0x28)
|
||||
#define WCD9XXX_A_NCP_BUCKREF (0x191)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_NCP_BUCKREF__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_CLSH_B1_CTL (0x320)
|
||||
#define WCD9XXX_A_CDC_CLSH_B1_CTL__POR (0xE4)
|
||||
#define WCD9XXX_A_CDC_CLSH_B2_CTL (0x321)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CDC_CLSH_B2_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_CLSH_B3_CTL (0x322)
|
||||
#define WCD9XXX_A_CDC_CLSH_B3_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_CLSH_BUCK_NCP_VARS (0x323)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CDC_CLSH_BUCK_NCP_VARS__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_CLSH_IDLE_HPH_THSD (0x324)
|
||||
#define WCD9XXX_A_CDC_CLSH_IDLE_HPH_THSD__POR (0x12)
|
||||
#define WCD9XXX_A_CDC_CLSH_IDLE_EAR_THSD (0x325)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CDC_CLSH_IDLE_EAR_THSD__POR (0x0C)
|
||||
#define WCD9XXX_A_CDC_CLSH_FCLKONLY_HPH_THSD (0x326)
|
||||
#define WCD9XXX_A_CDC_CLSH_FCLKONLY_HPH_THSD__POR (0x18)
|
||||
#define WCD9XXX_A_CDC_CLSH_FCLKONLY_EAR_THSD (0x327)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CDC_CLSH_FCLKONLY_EAR_THSD__POR (0x23)
|
||||
#define WCD9XXX_A_CDC_CLSH_K_ADDR (0x328)
|
||||
#define WCD9XXX_A_CDC_CLSH_K_ADDR__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_CLSH_K_DATA (0x329)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CDC_CLSH_K_DATA__POR (0xA4)
|
||||
#define WCD9XXX_A_CDC_CLSH_I_PA_FACT_HPH_L (0x32A)
|
||||
#define WCD9XXX_A_CDC_CLSH_I_PA_FACT_HPH_L__POR (0xD7)
|
||||
#define WCD9XXX_A_CDC_CLSH_I_PA_FACT_HPH_U (0x32B)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CDC_CLSH_I_PA_FACT_HPH_U__POR (0x05)
|
||||
#define WCD9XXX_A_CDC_CLSH_I_PA_FACT_EAR_L (0x32C)
|
||||
#define WCD9XXX_A_CDC_CLSH_I_PA_FACT_EAR_L__POR (0x60)
|
||||
#define WCD9XXX_A_CDC_CLSH_I_PA_FACT_EAR_U (0x32D)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CDC_CLSH_I_PA_FACT_EAR_U__POR (0x09)
|
||||
#define WCD9XXX_A_CDC_CLSH_V_PA_HD_EAR (0x32E)
|
||||
#define WCD9XXX_A_CDC_CLSH_V_PA_HD_EAR__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_CLSH_V_PA_HD_HPH (0x32F)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CDC_CLSH_V_PA_HD_HPH__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_CLSH_V_PA_MIN_EAR (0x330)
|
||||
#define WCD9XXX_A_CDC_CLSH_V_PA_MIN_EAR__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_CLSH_V_PA_MIN_HPH (0x331)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CDC_CLSH_V_PA_MIN_HPH__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_RX1_B6_CTL (0x2B5)
|
||||
#define WCD9XXX_A_CDC_RX1_B6_CTL__POR (0x80)
|
||||
#define WCD9XXX_A_CDC_RX2_B6_CTL (0x2BD)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CDC_RX2_B6_CTL__POR (0x80)
|
||||
#define WCD9XXX_A_RX_HPH_L_GAIN (0x1AE)
|
||||
#define WCD9XXX_A_RX_HPH_L_GAIN__POR (0x00)
|
||||
#define WCD9XXX_A_RX_HPH_R_GAIN (0x1B4)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_RX_HPH_R_GAIN__POR (0x00)
|
||||
#define WCD9XXX_A_RX_HPH_CHOP_CTL (0x1A5)
|
||||
#define WCD9XXX_A_RX_HPH_CHOP_CTL__POR (0xB4)
|
||||
#define WCD9XXX_A_RX_HPH_BIAS_PA (0x1A6)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_RX_HPH_BIAS_PA__POR (0x7A)
|
||||
#define WCD9XXX_A_RX_HPH_L_TEST (0x1AF)
|
||||
#define WCD9XXX_A_RX_HPH_L_TEST__POR (0x00)
|
||||
#define WCD9XXX_A_RX_HPH_R_TEST (0x1B5)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_RX_HPH_R_TEST__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_CLK_RX_B1_CTL (0x30F)
|
||||
#define WCD9XXX_A_CDC_CLK_RX_B1_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_NCP_CLK (0x193)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_NCP_CLK__POR (0x94)
|
||||
#define WCD9XXX_A_RX_HPH_BIAS_WG_OCP (0x1A9)
|
||||
#define WCD9XXX_A_RX_HPH_BIAS_WG_OCP__POR (0x2A)
|
||||
#define WCD9XXX_A_RX_HPH_CNP_WG_CTL (0x1AC)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_RX_HPH_CNP_WG_CTL__POR (0xDE)
|
||||
#define WCD9XXX_A_RX_HPH_L_PA_CTL (0x1B0)
|
||||
#define WCD9XXX_A_RX_HPH_L_PA_CTL__POR (0x42)
|
||||
#define WCD9XXX_A_RX_HPH_R_PA_CTL (0x1B6)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_RX_HPH_R_PA_CTL__POR (0x42)
|
||||
#define WCD9XXX_A_CDC_CONN_RX2_B1_CTL (0x383)
|
||||
#define WCD9XXX_A_CDC_CONN_RX2_B1_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_PA_RAMP_B1_CTL (0x361)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CDC_PA_RAMP_B1_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_PA_RAMP_B2_CTL (0x362)
|
||||
#define WCD9XXX_A_CDC_PA_RAMP_B2_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_PA_RAMP_B3_CTL (0x363)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CDC_PA_RAMP_B3_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_PA_RAMP_B4_CTL (0x364)
|
||||
#define WCD9XXX_A_CDC_PA_RAMP_B4_CTL__POR (0x00)
|
||||
#define WCD9330_A_LEAKAGE_CTL (0x03C)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9330_A_LEAKAGE_CTL__POR (0x04)
|
||||
#define WCD9330_A_CDC_CTL (0x034)
|
||||
#define WCD9330_A_CDC_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_RX0_RX_PATH_CFG0 (0xB42)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_CDC_RX1_RX_PATH_CFG0 (0xB56)
|
||||
#define WCD9XXX_A_CDC_RX2_RX_PATH_CFG0 (0xB6A)
|
||||
#define WCD9XXX_A_CDC_CLSH_K1_MSB (0xC08)
|
||||
#define WCD9XXX_A_CDC_CLSH_K1_LSB (0xC09)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_A_ANA_RX_SUPPLIES (0x608)
|
||||
#define WCD9XXX_A_ANA_HPH (0x609)
|
||||
#define WCD9XXX_A_CDC_CLSH_CRC (0xC01)
|
||||
#define WCD9XXX_FLYBACK_EN (0x6A4)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_RX_BIAS_FLYB_BUFF (0x6C7)
|
||||
#define WCD9XXX_HPH_L_EN (0x6D3)
|
||||
#define WCD9XXX_HPH_R_EN (0x6D6)
|
||||
#define WCD9XXX_HPH_REFBUFF_UHQA_CTL (0x6DD)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_CLASSH_CTRL_VCL_2 (0x69B)
|
||||
#define WCD9XXX_CDC_CLSH_HPH_V_PA (0xC04)
|
||||
#define WCD9XXX_CDC_RX0_RX_PATH_SEC0 (0xB49)
|
||||
#define WCD9XXX_CDC_RX1_RX_PATH_CTL (0xB55)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define WCD9XXX_CDC_RX2_RX_PATH_CTL (0xB69)
|
||||
#define WCD9XXX_CDC_CLK_RST_CTRL_MCLK_CONTROL (0xD41)
|
||||
#define WCD9XXX_CLASSH_CTRL_CCL_1 (0x69C)
|
||||
#endif
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
|
||||
44
kernel-headers/linux/msm-core-interface.h
Normal file
44
kernel-headers/linux/msm-core-interface.h
Normal file
@@ -0,0 +1,44 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __MSM_CORE_LIB_H__
|
||||
#define __MSM_CORE_LIB_H__
|
||||
#include <linux/ioctl.h>
|
||||
#define TEMP_DATA_POINTS 13
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MAX_NUM_FREQ 200
|
||||
enum msm_core_ioctl_params {
|
||||
MSM_CORE_LEAKAGE,
|
||||
MSM_CORE_VOLTAGE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define MSM_CORE_MAGIC 0x9D
|
||||
struct sched_params {
|
||||
uint32_t cpumask;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t cluster;
|
||||
uint32_t power[TEMP_DATA_POINTS][MAX_NUM_FREQ];
|
||||
uint32_t voltage[MAX_NUM_FREQ];
|
||||
uint32_t freq[MAX_NUM_FREQ];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define EA_LEAKAGE _IOWR(MSM_CORE_MAGIC, MSM_CORE_LEAKAGE, struct sched_params)
|
||||
#define EA_VOLT _IOWR(MSM_CORE_MAGIC, MSM_CORE_VOLTAGE, struct sched_params)
|
||||
#endif
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
|
||||
56
kernel-headers/linux/msm_adsp.h
Normal file
56
kernel-headers/linux/msm_adsp.h
Normal file
@@ -0,0 +1,56 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _LINUX_MSM_ADSP_H
|
||||
#define _LINUX_MSM_ADSP_H
|
||||
#include <linux/types.h>
|
||||
#include <linux/ioctl.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ADSP_IOCTL_MAGIC 'q'
|
||||
struct adsp_command_t {
|
||||
uint16_t queue;
|
||||
uint32_t len;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t * data;
|
||||
};
|
||||
struct adsp_event_t {
|
||||
uint16_t type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t timeout_ms;
|
||||
uint16_t msg_id;
|
||||
uint16_t flags;
|
||||
uint32_t len;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t * data;
|
||||
};
|
||||
#define ADSP_IOCTL_ENABLE _IOR(ADSP_IOCTL_MAGIC, 1, unsigned)
|
||||
#define ADSP_IOCTL_DISABLE _IOR(ADSP_IOCTL_MAGIC, 2, unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ADSP_IOCTL_DISABLE_ACK _IOR(ADSP_IOCTL_MAGIC, 3, unsigned)
|
||||
#define ADSP_IOCTL_WRITE_COMMAND _IOR(ADSP_IOCTL_MAGIC, 4, struct adsp_command_t *)
|
||||
#define ADSP_IOCTL_GET_EVENT _IOWR(ADSP_IOCTL_MAGIC, 5, struct adsp_event_data_t *)
|
||||
#define ADSP_IOCTL_SET_CLKRATE _IOR(ADSP_IOCTL_MAGIC, 6, unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ADSP_IOCTL_DISABLE_EVENT_RSP _IOR(ADSP_IOCTL_MAGIC, 10, unsigned)
|
||||
#define ADSP_IOCTL_REGISTER_PMEM _IOW(ADSP_IOCTL_MAGIC, 13, unsigned)
|
||||
#define ADSP_IOCTL_UNREGISTER_PMEM _IOW(ADSP_IOCTL_MAGIC, 14, unsigned)
|
||||
#define ADSP_IOCTL_ABORT_EVENT_READ _IOW(ADSP_IOCTL_MAGIC, 15, unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ADSP_IOCTL_LINK_TASK _IOW(ADSP_IOCTL_MAGIC, 16, unsigned)
|
||||
#endif
|
||||
|
||||
425
kernel-headers/linux/msm_audio.h
Normal file
425
kernel-headers/linux/msm_audio.h
Normal file
@@ -0,0 +1,425 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _LINUX_MSM_AUDIO_H
|
||||
#define _LINUX_MSM_AUDIO_H
|
||||
#include <linux/types.h>
|
||||
#include <linux/ioctl.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_IOCTL_MAGIC 'a'
|
||||
#define AUDIO_START _IOW(AUDIO_IOCTL_MAGIC, 0, unsigned)
|
||||
#define AUDIO_STOP _IOW(AUDIO_IOCTL_MAGIC, 1, unsigned)
|
||||
#define AUDIO_FLUSH _IOW(AUDIO_IOCTL_MAGIC, 2, unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_GET_CONFIG _IOR(AUDIO_IOCTL_MAGIC, 3, struct msm_audio_config)
|
||||
#define AUDIO_SET_CONFIG _IOW(AUDIO_IOCTL_MAGIC, 4, struct msm_audio_config)
|
||||
#define AUDIO_GET_STATS _IOR(AUDIO_IOCTL_MAGIC, 5, struct msm_audio_stats)
|
||||
#define AUDIO_ENABLE_AUDPP _IOW(AUDIO_IOCTL_MAGIC, 6, unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_SET_ADRC _IOW(AUDIO_IOCTL_MAGIC, 7, unsigned)
|
||||
#define AUDIO_SET_EQ _IOW(AUDIO_IOCTL_MAGIC, 8, unsigned)
|
||||
#define AUDIO_SET_RX_IIR _IOW(AUDIO_IOCTL_MAGIC, 9, unsigned)
|
||||
#define AUDIO_SET_VOLUME _IOW(AUDIO_IOCTL_MAGIC, 10, unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_PAUSE _IOW(AUDIO_IOCTL_MAGIC, 11, unsigned)
|
||||
#define AUDIO_PLAY_DTMF _IOW(AUDIO_IOCTL_MAGIC, 12, unsigned)
|
||||
#define AUDIO_GET_EVENT _IOR(AUDIO_IOCTL_MAGIC, 13, struct msm_audio_event)
|
||||
#define AUDIO_ABORT_GET_EVENT _IOW(AUDIO_IOCTL_MAGIC, 14, unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_REGISTER_PMEM _IOW(AUDIO_IOCTL_MAGIC, 15, unsigned)
|
||||
#define AUDIO_DEREGISTER_PMEM _IOW(AUDIO_IOCTL_MAGIC, 16, unsigned)
|
||||
#define AUDIO_ASYNC_WRITE _IOW(AUDIO_IOCTL_MAGIC, 17, struct msm_audio_aio_buf)
|
||||
#define AUDIO_ASYNC_READ _IOW(AUDIO_IOCTL_MAGIC, 18, struct msm_audio_aio_buf)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_SET_INCALL _IOW(AUDIO_IOCTL_MAGIC, 19, struct msm_voicerec_mode)
|
||||
#define AUDIO_GET_NUM_SND_DEVICE _IOR(AUDIO_IOCTL_MAGIC, 20, unsigned)
|
||||
#define AUDIO_GET_SND_DEVICES _IOWR(AUDIO_IOCTL_MAGIC, 21, struct msm_snd_device_list)
|
||||
#define AUDIO_ENABLE_SND_DEVICE _IOW(AUDIO_IOCTL_MAGIC, 22, unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_DISABLE_SND_DEVICE _IOW(AUDIO_IOCTL_MAGIC, 23, unsigned)
|
||||
#define AUDIO_ROUTE_STREAM _IOW(AUDIO_IOCTL_MAGIC, 24, struct msm_audio_route_config)
|
||||
#define AUDIO_GET_PCM_CONFIG _IOR(AUDIO_IOCTL_MAGIC, 30, unsigned)
|
||||
#define AUDIO_SET_PCM_CONFIG _IOW(AUDIO_IOCTL_MAGIC, 31, unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_SWITCH_DEVICE _IOW(AUDIO_IOCTL_MAGIC, 32, unsigned)
|
||||
#define AUDIO_SET_MUTE _IOW(AUDIO_IOCTL_MAGIC, 33, unsigned)
|
||||
#define AUDIO_UPDATE_ACDB _IOW(AUDIO_IOCTL_MAGIC, 34, unsigned)
|
||||
#define AUDIO_START_VOICE _IOW(AUDIO_IOCTL_MAGIC, 35, unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_STOP_VOICE _IOW(AUDIO_IOCTL_MAGIC, 36, unsigned)
|
||||
#define AUDIO_REINIT_ACDB _IOW(AUDIO_IOCTL_MAGIC, 39, unsigned)
|
||||
#define AUDIO_OUTPORT_FLUSH _IOW(AUDIO_IOCTL_MAGIC, 40, unsigned short)
|
||||
#define AUDIO_SET_ERR_THRESHOLD_VALUE _IOW(AUDIO_IOCTL_MAGIC, 41, unsigned short)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_GET_BITSTREAM_ERROR_INFO _IOR(AUDIO_IOCTL_MAGIC, 42, struct msm_audio_bitstream_error_info)
|
||||
#define AUDIO_SET_SRS_TRUMEDIA_PARAM _IOW(AUDIO_IOCTL_MAGIC, 43, unsigned)
|
||||
#define AUDIO_SET_STREAM_CONFIG _IOW(AUDIO_IOCTL_MAGIC, 80, struct msm_audio_stream_config)
|
||||
#define AUDIO_GET_STREAM_CONFIG _IOR(AUDIO_IOCTL_MAGIC, 81, struct msm_audio_stream_config)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_GET_SESSION_ID _IOR(AUDIO_IOCTL_MAGIC, 82, unsigned short)
|
||||
#define AUDIO_GET_STREAM_INFO _IOR(AUDIO_IOCTL_MAGIC, 83, struct msm_audio_bitstream_info)
|
||||
#define AUDIO_SET_PAN _IOW(AUDIO_IOCTL_MAGIC, 84, unsigned)
|
||||
#define AUDIO_SET_QCONCERT_PLUS _IOW(AUDIO_IOCTL_MAGIC, 85, unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_SET_MBADRC _IOW(AUDIO_IOCTL_MAGIC, 86, unsigned)
|
||||
#define AUDIO_SET_VOLUME_PATH _IOW(AUDIO_IOCTL_MAGIC, 87, struct msm_vol_info)
|
||||
#define AUDIO_SET_MAX_VOL_ALL _IOW(AUDIO_IOCTL_MAGIC, 88, unsigned)
|
||||
#define AUDIO_ENABLE_AUDPRE _IOW(AUDIO_IOCTL_MAGIC, 89, unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_SET_AGC _IOW(AUDIO_IOCTL_MAGIC, 90, unsigned)
|
||||
#define AUDIO_SET_NS _IOW(AUDIO_IOCTL_MAGIC, 91, unsigned)
|
||||
#define AUDIO_SET_TX_IIR _IOW(AUDIO_IOCTL_MAGIC, 92, unsigned)
|
||||
#define AUDIO_GET_BUF_CFG _IOW(AUDIO_IOCTL_MAGIC, 93, struct msm_audio_buf_cfg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_SET_BUF_CFG _IOW(AUDIO_IOCTL_MAGIC, 94, struct msm_audio_buf_cfg)
|
||||
#define AUDIO_SET_ACDB_BLK _IOW(AUDIO_IOCTL_MAGIC, 95, struct msm_acdb_cmd_device)
|
||||
#define AUDIO_GET_ACDB_BLK _IOW(AUDIO_IOCTL_MAGIC, 96, struct msm_acdb_cmd_device)
|
||||
#define AUDIO_REGISTER_ION _IOW(AUDIO_IOCTL_MAGIC, 97, struct msm_audio_ion_info)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_DEREGISTER_ION _IOW(AUDIO_IOCTL_MAGIC, 98, struct msm_audio_ion_info)
|
||||
#define AUDIO_SET_EFFECTS_CONFIG _IOW(AUDIO_IOCTL_MAGIC, 99, struct msm_hwacc_effects_config)
|
||||
#define AUDIO_EFFECTS_SET_BUF_LEN _IOW(AUDIO_IOCTL_MAGIC, 100, struct msm_hwacc_buf_cfg)
|
||||
#define AUDIO_EFFECTS_GET_BUF_AVAIL _IOW(AUDIO_IOCTL_MAGIC, 101, struct msm_hwacc_buf_avail)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_EFFECTS_WRITE _IOW(AUDIO_IOCTL_MAGIC, 102, void *)
|
||||
#define AUDIO_EFFECTS_READ _IOWR(AUDIO_IOCTL_MAGIC, 103, void *)
|
||||
#define AUDIO_EFFECTS_SET_PP_PARAMS _IOW(AUDIO_IOCTL_MAGIC, 104, void *)
|
||||
#define AUDIO_PM_AWAKE _IOW(AUDIO_IOCTL_MAGIC, 105, unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_PM_RELAX _IOW(AUDIO_IOCTL_MAGIC, 106, unsigned)
|
||||
#define AUDIO_MAX_COMMON_IOCTL_NUM 107
|
||||
#define HANDSET_MIC 0x01
|
||||
#define HANDSET_SPKR 0x02
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HEADSET_MIC 0x03
|
||||
#define HEADSET_SPKR_MONO 0x04
|
||||
#define HEADSET_SPKR_STEREO 0x05
|
||||
#define SPKR_PHONE_MIC 0x06
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SPKR_PHONE_MONO 0x07
|
||||
#define SPKR_PHONE_STEREO 0x08
|
||||
#define BT_SCO_MIC 0x09
|
||||
#define BT_SCO_SPKR 0x0A
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define BT_A2DP_SPKR 0x0B
|
||||
#define TTY_HEADSET_MIC 0x0C
|
||||
#define TTY_HEADSET_SPKR 0x0D
|
||||
#define DEFAULT_TX 0x0E
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define DEFAULT_RX 0x0F
|
||||
#define BT_A2DP_TX 0x10
|
||||
#define HEADSET_MONO_PLUS_SPKR_MONO_RX 0x11
|
||||
#define HEADSET_MONO_PLUS_SPKR_STEREO_RX 0x12
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HEADSET_STEREO_PLUS_SPKR_MONO_RX 0x13
|
||||
#define HEADSET_STEREO_PLUS_SPKR_STEREO_RX 0x14
|
||||
#define I2S_RX 0x20
|
||||
#define I2S_TX 0x21
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ADRC_ENABLE 0x0001
|
||||
#define EQUALIZER_ENABLE 0x0002
|
||||
#define IIR_ENABLE 0x0004
|
||||
#define QCONCERT_PLUS_ENABLE 0x0008
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MBADRC_ENABLE 0x0010
|
||||
#define SRS_ENABLE 0x0020
|
||||
#define SRS_DISABLE 0x0040
|
||||
#define AGC_ENABLE 0x0001
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define NS_ENABLE 0x0002
|
||||
#define TX_IIR_ENABLE 0x0004
|
||||
#define FLUENCE_ENABLE 0x0008
|
||||
#define VOC_REC_UPLINK 0x00
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VOC_REC_DOWNLINK 0x01
|
||||
#define VOC_REC_BOTH 0x02
|
||||
struct msm_audio_config {
|
||||
uint32_t buffer_size;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t buffer_count;
|
||||
uint32_t channel_count;
|
||||
uint32_t sample_rate;
|
||||
uint32_t type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t meta_field;
|
||||
uint32_t bits;
|
||||
uint32_t unused[3];
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_audio_stream_config {
|
||||
uint32_t buffer_size;
|
||||
uint32_t buffer_count;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_audio_buf_cfg {
|
||||
uint32_t meta_info_enable;
|
||||
uint32_t frames_per_buf;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_audio_stats {
|
||||
uint32_t byte_count;
|
||||
uint32_t sample_count;
|
||||
uint32_t unused[2];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_audio_ion_info {
|
||||
int fd;
|
||||
void * vaddr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_audio_pmem_info {
|
||||
int fd;
|
||||
void * vaddr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_audio_aio_buf {
|
||||
void * buf_addr;
|
||||
uint32_t buf_len;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t data_len;
|
||||
void * private_data;
|
||||
unsigned short mfield_sz;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SND_IOCTL_MAGIC 's'
|
||||
#define SND_MUTE_UNMUTED 0
|
||||
#define SND_MUTE_MUTED 1
|
||||
struct msm_mute_info {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t mute;
|
||||
uint32_t path;
|
||||
};
|
||||
struct msm_vol_info {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t vol;
|
||||
uint32_t path;
|
||||
};
|
||||
struct msm_voicerec_mode {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t rec_mode;
|
||||
};
|
||||
struct msm_snd_device_config {
|
||||
uint32_t device;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t ear_mute;
|
||||
uint32_t mic_mute;
|
||||
};
|
||||
#define SND_SET_DEVICE _IOW(SND_IOCTL_MAGIC, 2, struct msm_device_config *)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum cad_device_path_type {
|
||||
CAD_DEVICE_PATH_RX,
|
||||
CAD_DEVICE_PATH_TX,
|
||||
CAD_DEVICE_PATH_RX_TX,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CAD_DEVICE_PATH_LB,
|
||||
CAD_DEVICE_PATH_MAX
|
||||
};
|
||||
struct cad_devices_type {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t rx_device;
|
||||
uint32_t tx_device;
|
||||
enum cad_device_path_type pathtype;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_cad_device_config {
|
||||
struct cad_devices_type device;
|
||||
uint32_t ear_mute;
|
||||
uint32_t mic_mute;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define CAD_SET_DEVICE _IOW(SND_IOCTL_MAGIC, 2, struct msm_cad_device_config *)
|
||||
#define SND_METHOD_VOICE 0
|
||||
#define SND_METHOD_MIDI 4
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_snd_volume_config {
|
||||
uint32_t device;
|
||||
uint32_t method;
|
||||
uint32_t volume;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define SND_SET_VOLUME _IOW(SND_IOCTL_MAGIC, 3, struct msm_snd_volume_config *)
|
||||
struct msm_cad_volume_config {
|
||||
struct cad_devices_type device;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t method;
|
||||
uint32_t volume;
|
||||
};
|
||||
#define CAD_SET_VOLUME _IOW(SND_IOCTL_MAGIC, 3, struct msm_cad_volume_config *)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SND_GET_NUM_ENDPOINTS _IOR(SND_IOCTL_MAGIC, 4, unsigned *)
|
||||
struct msm_snd_endpoint {
|
||||
int id;
|
||||
char name[64];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define SND_GET_ENDPOINT _IOWR(SND_IOCTL_MAGIC, 5, struct msm_snd_endpoint *)
|
||||
#define SND_AVC_CTL _IOW(SND_IOCTL_MAGIC, 6, unsigned *)
|
||||
#define SND_AGC_CTL _IOW(SND_IOCTL_MAGIC, 7, unsigned *)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define CAD_GET_NUM_ENDPOINTS _IOR(SND_IOCTL_MAGIC, 4, unsigned *)
|
||||
struct msm_cad_endpoint {
|
||||
int id;
|
||||
char name[64];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define CAD_GET_ENDPOINT _IOWR(SND_IOCTL_MAGIC, 5, struct msm_cad_endpoint *)
|
||||
struct msm_audio_pcm_config {
|
||||
uint32_t pcm_feedback;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t buffer_count;
|
||||
uint32_t buffer_size;
|
||||
};
|
||||
#define AUDIO_EVENT_SUSPEND 0
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_EVENT_RESUME 1
|
||||
#define AUDIO_EVENT_WRITE_DONE 2
|
||||
#define AUDIO_EVENT_READ_DONE 3
|
||||
#define AUDIO_EVENT_STREAM_INFO 4
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_EVENT_BITSTREAM_ERROR_INFO 5
|
||||
#define AUDIO_CODEC_TYPE_MP3 0
|
||||
#define AUDIO_CODEC_TYPE_AAC 1
|
||||
struct msm_audio_bitstream_info {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t codec_type;
|
||||
uint32_t chan_info;
|
||||
uint32_t sample_rate;
|
||||
uint32_t bit_stream_info;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t bit_rate;
|
||||
uint32_t unused[3];
|
||||
};
|
||||
struct msm_audio_bitstream_error_info {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t dec_id;
|
||||
uint32_t err_msg_indicator;
|
||||
uint32_t err_type;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
union msm_audio_event_payload {
|
||||
struct msm_audio_aio_buf aio_buf;
|
||||
struct msm_audio_bitstream_info stream_info;
|
||||
struct msm_audio_bitstream_error_info error_info;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int reserved;
|
||||
};
|
||||
struct msm_audio_event {
|
||||
int event_type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int timeout_ms;
|
||||
union msm_audio_event_payload event_payload;
|
||||
};
|
||||
#define MSM_SNDDEV_CAP_RX 0x1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_SNDDEV_CAP_TX 0x2
|
||||
#define MSM_SNDDEV_CAP_VOICE 0x4
|
||||
struct msm_snd_device_info {
|
||||
uint32_t dev_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t dev_cap;
|
||||
char dev_name[64];
|
||||
};
|
||||
struct msm_snd_device_list {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t num_dev;
|
||||
struct msm_snd_device_info * list;
|
||||
};
|
||||
struct msm_dtmf_config {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint16_t path;
|
||||
uint16_t dtmf_hi;
|
||||
uint16_t dtmf_low;
|
||||
uint16_t duration;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint16_t tx_gain;
|
||||
uint16_t rx_gain;
|
||||
uint16_t mixing;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_ROUTE_STREAM_VOICE_RX 0
|
||||
#define AUDIO_ROUTE_STREAM_VOICE_TX 1
|
||||
#define AUDIO_ROUTE_STREAM_PLAYBACK 2
|
||||
#define AUDIO_ROUTE_STREAM_REC 3
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_audio_route_config {
|
||||
uint32_t stream_type;
|
||||
uint32_t stream_id;
|
||||
uint32_t dev_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define AUDIO_MAX_EQ_BANDS 12
|
||||
struct msm_audio_eq_band {
|
||||
uint16_t band_idx;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t filter_type;
|
||||
uint32_t center_freq_hz;
|
||||
uint32_t filter_gain;
|
||||
uint32_t q_factor;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
} __attribute__((packed));
|
||||
struct msm_audio_eq_stream_config {
|
||||
uint32_t enable;
|
||||
uint32_t num_bands;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_audio_eq_band eq_bands[AUDIO_MAX_EQ_BANDS];
|
||||
} __attribute__((packed));
|
||||
struct msm_acdb_cmd_device {
|
||||
uint32_t command_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t device_id;
|
||||
uint32_t network_id;
|
||||
uint32_t sample_rate_id;
|
||||
uint32_t interface_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t algorithm_block_id;
|
||||
uint32_t total_bytes;
|
||||
uint32_t * phys_buf;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_hwacc_data_config {
|
||||
__u32 buf_size;
|
||||
__u32 num_buf;
|
||||
__u32 num_channels;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u8 channel_map[8];
|
||||
__u32 sample_rate;
|
||||
__u32 bits_per_sample;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_hwacc_buf_cfg {
|
||||
__u32 input_len;
|
||||
__u32 output_len;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_hwacc_buf_avail {
|
||||
__u32 input_num_avail;
|
||||
__u32 output_num_avail;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_hwacc_effects_config {
|
||||
struct msm_hwacc_data_config input;
|
||||
struct msm_hwacc_data_config output;
|
||||
struct msm_hwacc_buf_cfg buf_cfg;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 meta_mode_enabled;
|
||||
__u32 overwrite_topology;
|
||||
__s32 topology;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
|
||||
82
kernel-headers/linux/msm_audio_aac.h
Normal file
82
kernel-headers/linux/msm_audio_aac.h
Normal file
@@ -0,0 +1,82 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _MSM_AUDIO_AAC_H
|
||||
#define _MSM_AUDIO_AAC_H
|
||||
#include <linux/msm_audio.h>
|
||||
#define AUDIO_SET_AAC_CONFIG _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM + 0), struct msm_audio_aac_config)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_GET_AAC_CONFIG _IOR(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM + 1), struct msm_audio_aac_config)
|
||||
#define AUDIO_SET_AAC_ENC_CONFIG _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM + 3), struct msm_audio_aac_enc_config)
|
||||
#define AUDIO_GET_AAC_ENC_CONFIG _IOR(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM + 4), struct msm_audio_aac_enc_config)
|
||||
#define AUDIO_SET_AAC_MIX_CONFIG _IOR(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM + 5), uint32_t)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_AAC_FORMAT_ADTS - 1
|
||||
#define AUDIO_AAC_FORMAT_RAW 0x0000
|
||||
#define AUDIO_AAC_FORMAT_PSUEDO_RAW 0x0001
|
||||
#define AUDIO_AAC_FORMAT_LOAS 0x0002
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_AAC_FORMAT_ADIF 0x0003
|
||||
#define AUDIO_AAC_OBJECT_LC 0x0002
|
||||
#define AUDIO_AAC_OBJECT_LTP 0x0004
|
||||
#define AUDIO_AAC_OBJECT_ERLC 0x0011
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_AAC_OBJECT_BSAC 0x0016
|
||||
#define AUDIO_AAC_SEC_DATA_RES_ON 0x0001
|
||||
#define AUDIO_AAC_SEC_DATA_RES_OFF 0x0000
|
||||
#define AUDIO_AAC_SCA_DATA_RES_ON 0x0001
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_AAC_SCA_DATA_RES_OFF 0x0000
|
||||
#define AUDIO_AAC_SPEC_DATA_RES_ON 0x0001
|
||||
#define AUDIO_AAC_SPEC_DATA_RES_OFF 0x0000
|
||||
#define AUDIO_AAC_SBR_ON_FLAG_ON 0x0001
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_AAC_SBR_ON_FLAG_OFF 0x0000
|
||||
#define AUDIO_AAC_SBR_PS_ON_FLAG_ON 0x0001
|
||||
#define AUDIO_AAC_SBR_PS_ON_FLAG_OFF 0x0000
|
||||
#define AUDIO_AAC_DUAL_MONO_PL_PR 0
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_AAC_DUAL_MONO_SL_SR 1
|
||||
#define AUDIO_AAC_DUAL_MONO_SL_PR 2
|
||||
#define AUDIO_AAC_DUAL_MONO_PL_SR 3
|
||||
struct msm_audio_aac_config {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
signed short format;
|
||||
unsigned short audio_object;
|
||||
unsigned short ep_config;
|
||||
unsigned short aac_section_data_resilience_flag;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned short aac_scalefactor_data_resilience_flag;
|
||||
unsigned short aac_spectral_data_resilience_flag;
|
||||
unsigned short sbr_on_flag;
|
||||
unsigned short sbr_ps_on_flag;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned short dual_mono_mode;
|
||||
unsigned short channel_configuration;
|
||||
unsigned short sample_rate;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_audio_aac_enc_config {
|
||||
uint32_t channels;
|
||||
uint32_t sample_rate;
|
||||
uint32_t bit_rate;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t stream_format;
|
||||
};
|
||||
#endif
|
||||
|
||||
61
kernel-headers/linux/msm_audio_ac3.h
Normal file
61
kernel-headers/linux/msm_audio_ac3.h
Normal file
@@ -0,0 +1,61 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _MSM_AUDIO_AC3_H
|
||||
#define _MSM_AUDIO_AC3_H
|
||||
#include <linux/msm_audio.h>
|
||||
#define AUDIO_SET_AC3_CONFIG _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM + 0), unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_GET_AC3_CONFIG _IOR(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM + 1), unsigned)
|
||||
#define AUDAC3_DEF_WORDSIZE 0
|
||||
#define AUDAC3_DEF_USER_DOWNMIX_FLAG 0x0
|
||||
#define AUDAC3_DEF_USER_KARAOKE_FLAG 0x0
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDAC3_DEF_ERROR_CONCEALMENT 0
|
||||
#define AUDAC3_DEF_MAX_REPEAT_COUNT 0
|
||||
struct msm_audio_ac3_config {
|
||||
unsigned short numChans;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned short wordSize;
|
||||
unsigned short kCapableMode;
|
||||
unsigned short compMode;
|
||||
unsigned short outLfeOn;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned short outputMode;
|
||||
unsigned short stereoMode;
|
||||
unsigned short dualMonoMode;
|
||||
unsigned short fsCod;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned short pcmScaleFac;
|
||||
unsigned short dynRngScaleHi;
|
||||
unsigned short dynRngScaleLow;
|
||||
unsigned short user_downmix_flag;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned short user_karaoke_flag;
|
||||
unsigned short dm_address_high;
|
||||
unsigned short dm_address_low;
|
||||
unsigned short ko_address_high;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned short ko_address_low;
|
||||
unsigned short error_concealment;
|
||||
unsigned short max_rep_count;
|
||||
unsigned short channel_routing_mode[6];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#endif
|
||||
|
||||
42
kernel-headers/linux/msm_audio_alac.h
Normal file
42
kernel-headers/linux/msm_audio_alac.h
Normal file
@@ -0,0 +1,42 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _MSM_AUDIO_ALAC_H
|
||||
#define _MSM_AUDIO_ALAC_H
|
||||
#define AUDIO_GET_ALAC_CONFIG _IOR(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM + 0), struct msm_audio_alac_config)
|
||||
#define AUDIO_SET_ALAC_CONFIG _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM + 1), struct msm_audio_alac_config)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_audio_alac_config {
|
||||
uint32_t frameLength;
|
||||
uint8_t compatVersion;
|
||||
uint8_t bitDepth;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t pb;
|
||||
uint8_t mb;
|
||||
uint8_t kb;
|
||||
uint8_t channelCount;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint16_t maxRun;
|
||||
uint32_t maxSize;
|
||||
uint32_t averageBitRate;
|
||||
uint32_t sampleRate;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t channelLayout;
|
||||
};
|
||||
#endif
|
||||
|
||||
46
kernel-headers/linux/msm_audio_amrnb.h
Normal file
46
kernel-headers/linux/msm_audio_amrnb.h
Normal file
@@ -0,0 +1,46 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _MSM_AUDIO_AMRNB_H
|
||||
#define _MSM_AUDIO_AMRNB_H
|
||||
#include <linux/msm_audio.h>
|
||||
#define AUDIO_GET_AMRNB_ENC_CONFIG _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM + 0), unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_SET_AMRNB_ENC_CONFIG _IOR(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM + 1), unsigned)
|
||||
#define AUDIO_GET_AMRNB_ENC_CONFIG_V2 _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM + 2), struct msm_audio_amrnb_enc_config_v2)
|
||||
#define AUDIO_SET_AMRNB_ENC_CONFIG_V2 _IOR(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM + 3), struct msm_audio_amrnb_enc_config_v2)
|
||||
struct msm_audio_amrnb_enc_config {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned short voicememoencweight1;
|
||||
unsigned short voicememoencweight2;
|
||||
unsigned short voicememoencweight3;
|
||||
unsigned short voicememoencweight4;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned short dtx_mode_enable;
|
||||
unsigned short test_mode_enable;
|
||||
unsigned short enc_mode;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_audio_amrnb_enc_config_v2 {
|
||||
uint32_t band_mode;
|
||||
uint32_t dtx_enable;
|
||||
uint32_t frame_format;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#endif
|
||||
|
||||
32
kernel-headers/linux/msm_audio_amrwb.h
Normal file
32
kernel-headers/linux/msm_audio_amrwb.h
Normal file
@@ -0,0 +1,32 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _MSM_AUDIO_AMRWB_H
|
||||
#define _MSM_AUDIO_AMRWB_H
|
||||
#include <linux/msm_audio.h>
|
||||
#define AUDIO_GET_AMRWB_ENC_CONFIG _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM + 0), struct msm_audio_amrwb_enc_config)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_SET_AMRWB_ENC_CONFIG _IOR(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM + 1), struct msm_audio_amrwb_enc_config)
|
||||
struct msm_audio_amrwb_enc_config {
|
||||
uint32_t band_mode;
|
||||
uint32_t dtx_enable;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t frame_format;
|
||||
};
|
||||
#endif
|
||||
|
||||
36
kernel-headers/linux/msm_audio_amrwbplus.h
Normal file
36
kernel-headers/linux/msm_audio_amrwbplus.h
Normal file
@@ -0,0 +1,36 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _MSM_AUDIO_AMR_WB_PLUS_H
|
||||
#define _MSM_AUDIO_AMR_WB_PLUS_H
|
||||
#define AUDIO_GET_AMRWBPLUS_CONFIG_V2 _IOR(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM + 2), struct msm_audio_amrwbplus_config_v2)
|
||||
#define AUDIO_SET_AMRWBPLUS_CONFIG_V2 _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM + 3), struct msm_audio_amrwbplus_config_v2)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_audio_amrwbplus_config_v2 {
|
||||
unsigned int size_bytes;
|
||||
unsigned int version;
|
||||
unsigned int num_channels;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int amr_band_mode;
|
||||
unsigned int amr_dtx_mode;
|
||||
unsigned int amr_frame_fmt;
|
||||
unsigned int amr_lsf_idx;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#endif
|
||||
|
||||
40
kernel-headers/linux/msm_audio_ape.h
Normal file
40
kernel-headers/linux/msm_audio_ape.h
Normal file
@@ -0,0 +1,40 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _MSM_AUDIO_APE_H
|
||||
#define _MSM_AUDIO_APE_H
|
||||
#define AUDIO_GET_APE_CONFIG _IOR(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM + 0), struct msm_audio_ape_config)
|
||||
#define AUDIO_SET_APE_CONFIG _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM + 1), struct msm_audio_ape_config)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_audio_ape_config {
|
||||
uint16_t compatibleVersion;
|
||||
uint16_t compressionLevel;
|
||||
uint32_t formatFlags;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t blocksPerFrame;
|
||||
uint32_t finalFrameBlocks;
|
||||
uint32_t totalFrames;
|
||||
uint16_t bitsPerSample;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint16_t numChannels;
|
||||
uint32_t sampleRate;
|
||||
uint32_t seekTablePresent;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
|
||||
670
kernel-headers/linux/msm_audio_calibration.h
Normal file
670
kernel-headers/linux/msm_audio_calibration.h
Normal file
@@ -0,0 +1,670 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _MSM_AUDIO_CALIBRATION_H
|
||||
#define _MSM_AUDIO_CALIBRATION_H
|
||||
#include <linux/types.h>
|
||||
#include <linux/ioctl.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define CAL_IOCTL_MAGIC 'a'
|
||||
#define AUDIO_ALLOCATE_CALIBRATION _IOWR(CAL_IOCTL_MAGIC, 200, void *)
|
||||
#define AUDIO_DEALLOCATE_CALIBRATION _IOWR(CAL_IOCTL_MAGIC, 201, void *)
|
||||
#define AUDIO_PREPARE_CALIBRATION _IOWR(CAL_IOCTL_MAGIC, 202, void *)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_SET_CALIBRATION _IOWR(CAL_IOCTL_MAGIC, 203, void *)
|
||||
#define AUDIO_GET_CALIBRATION _IOWR(CAL_IOCTL_MAGIC, 204, void *)
|
||||
#define AUDIO_POST_CALIBRATION _IOWR(CAL_IOCTL_MAGIC, 205, void *)
|
||||
#define AUDIO_GET_RTAC_ADM_INFO _IOR(CAL_IOCTL_MAGIC, 207, void *)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_GET_RTAC_VOICE_INFO _IOR(CAL_IOCTL_MAGIC, 208, void *)
|
||||
#define AUDIO_GET_RTAC_ADM_CAL _IOWR(CAL_IOCTL_MAGIC, 209, void *)
|
||||
#define AUDIO_SET_RTAC_ADM_CAL _IOWR(CAL_IOCTL_MAGIC, 210, void *)
|
||||
#define AUDIO_GET_RTAC_ASM_CAL _IOWR(CAL_IOCTL_MAGIC, 211, void *)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_SET_RTAC_ASM_CAL _IOWR(CAL_IOCTL_MAGIC, 212, void *)
|
||||
#define AUDIO_GET_RTAC_CVS_CAL _IOWR(CAL_IOCTL_MAGIC, 213, void *)
|
||||
#define AUDIO_SET_RTAC_CVS_CAL _IOWR(CAL_IOCTL_MAGIC, 214, void *)
|
||||
#define AUDIO_GET_RTAC_CVP_CAL _IOWR(CAL_IOCTL_MAGIC, 215, void *)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_SET_RTAC_CVP_CAL _IOWR(CAL_IOCTL_MAGIC, 216, void *)
|
||||
#define AUDIO_GET_RTAC_AFE_CAL _IOWR(CAL_IOCTL_MAGIC, 217, void *)
|
||||
#define AUDIO_SET_RTAC_AFE_CAL _IOWR(CAL_IOCTL_MAGIC, 218, void *)
|
||||
enum {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CVP_VOC_RX_TOPOLOGY_CAL_TYPE = 0,
|
||||
CVP_VOC_TX_TOPOLOGY_CAL_TYPE,
|
||||
CVP_VOCPROC_STATIC_CAL_TYPE,
|
||||
CVP_VOCPROC_DYNAMIC_CAL_TYPE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CVS_VOCSTRM_STATIC_CAL_TYPE,
|
||||
CVP_VOCDEV_CFG_CAL_TYPE,
|
||||
CVP_VOCPROC_STATIC_COL_CAL_TYPE,
|
||||
CVP_VOCPROC_DYNAMIC_COL_CAL_TYPE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CVS_VOCSTRM_STATIC_COL_CAL_TYPE,
|
||||
ADM_TOPOLOGY_CAL_TYPE,
|
||||
ADM_CUST_TOPOLOGY_CAL_TYPE,
|
||||
ADM_AUDPROC_CAL_TYPE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ADM_AUDVOL_CAL_TYPE,
|
||||
ASM_TOPOLOGY_CAL_TYPE,
|
||||
ASM_CUST_TOPOLOGY_CAL_TYPE,
|
||||
ASM_AUDSTRM_CAL_TYPE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
AFE_COMMON_RX_CAL_TYPE,
|
||||
AFE_COMMON_TX_CAL_TYPE,
|
||||
AFE_ANC_CAL_TYPE,
|
||||
AFE_AANC_CAL_TYPE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
AFE_FB_SPKR_PROT_CAL_TYPE,
|
||||
AFE_HW_DELAY_CAL_TYPE,
|
||||
AFE_SIDETONE_CAL_TYPE,
|
||||
AFE_TOPOLOGY_CAL_TYPE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
AFE_CUST_TOPOLOGY_CAL_TYPE,
|
||||
LSM_CUST_TOPOLOGY_CAL_TYPE,
|
||||
LSM_TOPOLOGY_CAL_TYPE,
|
||||
LSM_CAL_TYPE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ADM_RTAC_INFO_CAL_TYPE,
|
||||
VOICE_RTAC_INFO_CAL_TYPE,
|
||||
ADM_RTAC_APR_CAL_TYPE,
|
||||
ASM_RTAC_APR_CAL_TYPE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VOICE_RTAC_APR_CAL_TYPE,
|
||||
MAD_CAL_TYPE,
|
||||
ULP_AFE_CAL_TYPE,
|
||||
ULP_LSM_CAL_TYPE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
DTS_EAGLE_CAL_TYPE,
|
||||
AUDIO_CORE_METAINFO_CAL_TYPE,
|
||||
SRS_TRUMEDIA_CAL_TYPE,
|
||||
CORE_CUSTOM_TOPOLOGIES_CAL_TYPE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ADM_RTAC_AUDVOL_CAL_TYPE,
|
||||
ULP_LSM_TOPOLOGY_ID_CAL_TYPE,
|
||||
AFE_FB_SPKR_PROT_TH_VI_CAL_TYPE,
|
||||
AFE_FB_SPKR_PROT_EX_VI_CAL_TYPE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MAX_CAL_TYPES,
|
||||
};
|
||||
#define AFE_FB_SPKR_PROT_TH_VI_CAL_TYPE AFE_FB_SPKR_PROT_TH_VI_CAL_TYPE
|
||||
#define AFE_FB_SPKR_PROT_EX_VI_CAL_TYPE AFE_FB_SPKR_PROT_EX_VI_CAL_TYPE
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum {
|
||||
VERSION_0_0,
|
||||
};
|
||||
enum {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
PER_VOCODER_CAL_BIT_MASK = 0x10000,
|
||||
};
|
||||
#define MAX_IOCTL_CMD_SIZE 512
|
||||
struct audio_cal_header {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int32_t data_size;
|
||||
int32_t version;
|
||||
int32_t cal_type;
|
||||
int32_t cal_type_size;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct audio_cal_type_header {
|
||||
int32_t version;
|
||||
int32_t buffer_number;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct audio_cal_data {
|
||||
int32_t cal_size;
|
||||
int32_t mem_handle;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct audio_cal_type_alloc {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct audio_cal_alloc {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_alloc cal_type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct audio_cal_type_dealloc {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct audio_cal_dealloc {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_dealloc cal_type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct audio_cal_type_prepare {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct audio_cal_prepare {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_prepare cal_type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct audio_cal_type_post {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct audio_cal_post {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_post cal_type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct audio_cal_info_metainfo {
|
||||
uint32_t nKey;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum {
|
||||
RX_DEVICE,
|
||||
TX_DEVICE,
|
||||
MAX_PATH_TYPE
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct audio_cal_info_adm_top {
|
||||
int32_t topology;
|
||||
int32_t acdb_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int32_t path;
|
||||
int32_t app_type;
|
||||
int32_t sample_rate;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_info_audproc {
|
||||
int32_t acdb_id;
|
||||
int32_t path;
|
||||
int32_t app_type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int32_t sample_rate;
|
||||
};
|
||||
struct audio_cal_info_audvol {
|
||||
int32_t acdb_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int32_t path;
|
||||
int32_t app_type;
|
||||
int32_t vol_index;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_info_afe {
|
||||
int32_t acdb_id;
|
||||
int32_t path;
|
||||
int32_t sample_rate;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct audio_cal_info_afe_top {
|
||||
int32_t topology;
|
||||
int32_t acdb_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int32_t path;
|
||||
int32_t sample_rate;
|
||||
};
|
||||
struct audio_cal_info_asm_top {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int32_t topology;
|
||||
int32_t app_type;
|
||||
};
|
||||
struct audio_cal_info_audstrm {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int32_t app_type;
|
||||
};
|
||||
struct audio_cal_info_aanc {
|
||||
int32_t acdb_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define MAX_HW_DELAY_ENTRIES 25
|
||||
struct audio_cal_hw_delay_entry {
|
||||
uint32_t sample_rate;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t delay_usec;
|
||||
};
|
||||
struct audio_cal_hw_delay_data {
|
||||
uint32_t num_entries;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_hw_delay_entry entry[MAX_HW_DELAY_ENTRIES];
|
||||
};
|
||||
struct audio_cal_info_hw_delay {
|
||||
int32_t acdb_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int32_t path;
|
||||
int32_t property_type;
|
||||
struct audio_cal_hw_delay_data data;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_spkr_prot_states {
|
||||
MSM_SPKR_PROT_CALIBRATED,
|
||||
MSM_SPKR_PROT_CALIBRATION_IN_PROGRESS,
|
||||
MSM_SPKR_PROT_DISABLED,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_SPKR_PROT_NOT_CALIBRATED,
|
||||
MSM_SPKR_PROT_PRE_CALIBRATED,
|
||||
MSM_SPKR_PROT_IN_FTM_MODE
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_SPKR_PROT_IN_FTM_MODE MSM_SPKR_PROT_IN_FTM_MODE
|
||||
enum msm_spkr_count {
|
||||
SP_V2_SPKR_1,
|
||||
SP_V2_SPKR_2,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
SP_V2_NUM_MAX_SPKRS
|
||||
};
|
||||
struct audio_cal_info_spk_prot_cfg {
|
||||
int32_t r0[SP_V2_NUM_MAX_SPKRS];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int32_t t0[SP_V2_NUM_MAX_SPKRS];
|
||||
uint32_t quick_calib_flag;
|
||||
uint32_t mode;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_info_sp_th_vi_ftm_cfg {
|
||||
uint32_t wait_time[SP_V2_NUM_MAX_SPKRS];
|
||||
uint32_t ftm_time[SP_V2_NUM_MAX_SPKRS];
|
||||
uint32_t mode;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct audio_cal_info_sp_ex_vi_ftm_cfg {
|
||||
uint32_t wait_time[SP_V2_NUM_MAX_SPKRS];
|
||||
uint32_t ftm_time[SP_V2_NUM_MAX_SPKRS];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t mode;
|
||||
};
|
||||
struct audio_cal_info_sp_ex_vi_param {
|
||||
int32_t freq_q20[SP_V2_NUM_MAX_SPKRS];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int32_t resis_q24[SP_V2_NUM_MAX_SPKRS];
|
||||
int32_t qmct_q24[SP_V2_NUM_MAX_SPKRS];
|
||||
int32_t status[SP_V2_NUM_MAX_SPKRS];
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_info_sp_th_vi_param {
|
||||
int32_t r_dc_q24[SP_V2_NUM_MAX_SPKRS];
|
||||
int32_t temp_q22[SP_V2_NUM_MAX_SPKRS];
|
||||
int32_t status[SP_V2_NUM_MAX_SPKRS];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct audio_cal_info_msm_spk_prot_status {
|
||||
int32_t r0[SP_V2_NUM_MAX_SPKRS];
|
||||
int32_t status;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct audio_cal_info_sidetone {
|
||||
uint16_t enable;
|
||||
uint16_t gain;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int32_t tx_acdb_id;
|
||||
int32_t rx_acdb_id;
|
||||
int32_t mid;
|
||||
int32_t pid;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct audio_cal_info_lsm_top {
|
||||
int32_t topology;
|
||||
int32_t acdb_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int32_t app_type;
|
||||
};
|
||||
struct audio_cal_info_lsm {
|
||||
int32_t acdb_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int32_t path;
|
||||
int32_t app_type;
|
||||
};
|
||||
struct audio_cal_info_voc_top {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int32_t topology;
|
||||
int32_t acdb_id;
|
||||
};
|
||||
struct audio_cal_info_vocproc {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int32_t tx_acdb_id;
|
||||
int32_t rx_acdb_id;
|
||||
int32_t tx_sample_rate;
|
||||
int32_t rx_sample_rate;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum {
|
||||
DEFAULT_FEATURE_SET,
|
||||
VOL_BOOST_FEATURE_SET,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct audio_cal_info_vocvol {
|
||||
int32_t tx_acdb_id;
|
||||
int32_t rx_acdb_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int32_t feature_set;
|
||||
};
|
||||
struct audio_cal_info_vocdev_cfg {
|
||||
int32_t tx_acdb_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int32_t rx_acdb_id;
|
||||
};
|
||||
#define MAX_VOICE_COLUMNS 20
|
||||
union audio_cal_col_na {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t val8;
|
||||
uint16_t val16;
|
||||
uint32_t val32;
|
||||
uint64_t val64;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
} __attribute__((packed));
|
||||
struct audio_cal_col {
|
||||
uint32_t id;
|
||||
uint32_t type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
union audio_cal_col_na na_value;
|
||||
} __attribute__((packed));
|
||||
struct audio_cal_col_data {
|
||||
uint32_t num_columns;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_col column[MAX_VOICE_COLUMNS];
|
||||
} __attribute__((packed));
|
||||
struct audio_cal_info_voc_col {
|
||||
int32_t table_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int32_t tx_acdb_id;
|
||||
int32_t rx_acdb_id;
|
||||
struct audio_cal_col_data data;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_type_basic {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_basic {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_basic cal_type;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_type_adm_top {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_adm_top cal_info;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct audio_cal_adm_top {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_adm_top cal_type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct audio_cal_type_metainfo {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_info_metainfo cal_info;
|
||||
};
|
||||
struct audio_core_metainfo {
|
||||
struct audio_cal_header hdr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_type_metainfo cal_type;
|
||||
};
|
||||
struct audio_cal_type_audproc {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_audproc cal_info;
|
||||
};
|
||||
struct audio_cal_audproc {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_audproc cal_type;
|
||||
};
|
||||
struct audio_cal_type_audvol {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_audvol cal_info;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_audvol {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_audvol cal_type;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_type_asm_top {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_asm_top cal_info;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct audio_cal_asm_top {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_asm_top cal_type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct audio_cal_type_audstrm {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_info_audstrm cal_info;
|
||||
};
|
||||
struct audio_cal_audstrm {
|
||||
struct audio_cal_header hdr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_type_audstrm cal_type;
|
||||
};
|
||||
struct audio_cal_type_afe {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_afe cal_info;
|
||||
};
|
||||
struct audio_cal_afe {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_afe cal_type;
|
||||
};
|
||||
struct audio_cal_type_afe_top {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_afe_top cal_info;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_afe_top {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_afe_top cal_type;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_type_aanc {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_aanc cal_info;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct audio_cal_aanc {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_aanc cal_type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct audio_cal_type_fb_spk_prot_cfg {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_info_spk_prot_cfg cal_info;
|
||||
};
|
||||
struct audio_cal_fb_spk_prot_cfg {
|
||||
struct audio_cal_header hdr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_type_fb_spk_prot_cfg cal_type;
|
||||
};
|
||||
struct audio_cal_type_sp_th_vi_ftm_cfg {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_sp_th_vi_ftm_cfg cal_info;
|
||||
};
|
||||
struct audio_cal_sp_th_vi_ftm_cfg {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_sp_th_vi_ftm_cfg cal_type;
|
||||
};
|
||||
struct audio_cal_type_sp_ex_vi_ftm_cfg {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_sp_ex_vi_ftm_cfg cal_info;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_sp_ex_vi_ftm_cfg {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_sp_ex_vi_ftm_cfg cal_type;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_type_hw_delay {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_hw_delay cal_info;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct audio_cal_hw_delay {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_hw_delay cal_type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct audio_cal_type_sidetone {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_info_sidetone cal_info;
|
||||
};
|
||||
struct audio_cal_sidetone {
|
||||
struct audio_cal_header hdr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_type_sidetone cal_type;
|
||||
};
|
||||
struct audio_cal_type_lsm_top {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_lsm_top cal_info;
|
||||
};
|
||||
struct audio_cal_lsm_top {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_lsm_top cal_type;
|
||||
};
|
||||
struct audio_cal_type_lsm {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_lsm cal_info;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_lsm {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_lsm cal_type;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_type_voc_top {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_voc_top cal_info;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct audio_cal_voc_top {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_voc_top cal_type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct audio_cal_type_vocproc {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_info_vocproc cal_info;
|
||||
};
|
||||
struct audio_cal_vocproc {
|
||||
struct audio_cal_header hdr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_type_vocproc cal_type;
|
||||
};
|
||||
struct audio_cal_type_vocvol {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_vocvol cal_info;
|
||||
};
|
||||
struct audio_cal_vocvol {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_vocvol cal_type;
|
||||
};
|
||||
struct audio_cal_type_vocdev_cfg {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_vocdev_cfg cal_info;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_vocdev_cfg {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_vocdev_cfg cal_type;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_type_voc_col {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_voc_col cal_info;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct audio_cal_voc_col {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_voc_col cal_type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct audio_cal_type_fb_spk_prot_status {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_info_msm_spk_prot_status cal_info;
|
||||
};
|
||||
struct audio_cal_fb_spk_prot_status {
|
||||
struct audio_cal_header hdr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_type_fb_spk_prot_status cal_type;
|
||||
};
|
||||
struct audio_cal_type_sp_th_vi_param {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_sp_th_vi_param cal_info;
|
||||
};
|
||||
struct audio_cal_sp_th_vi_param {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_sp_th_vi_param cal_type;
|
||||
};
|
||||
struct audio_cal_type_sp_ex_vi_param {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_sp_ex_vi_param cal_info;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct audio_cal_sp_ex_vi_param {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_sp_ex_vi_param cal_type;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
|
||||
177
kernel-headers/linux/msm_audio_mvs.h
Normal file
177
kernel-headers/linux/msm_audio_mvs.h
Normal file
@@ -0,0 +1,177 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _MSM_AUDIO_MVS_H
|
||||
#define _MSM_AUDIO_MVS_H
|
||||
#include <linux/msm_audio.h>
|
||||
#define AUDIO_GET_MVS_CONFIG _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM + 0), unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_SET_MVS_CONFIG _IOR(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM + 1), unsigned)
|
||||
#define MVS_MODE_IS733 0x1
|
||||
#define MVS_MODE_IS127 0x2
|
||||
#define MVS_MODE_4GV_NB 0x3
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MVS_MODE_4GV_WB 0x4
|
||||
#define MVS_MODE_AMR 0x5
|
||||
#define MVS_MODE_EFR 0x6
|
||||
#define MVS_MODE_FR 0x7
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MVS_MODE_HR 0x8
|
||||
#define MVS_MODE_LINEAR_PCM 0x9
|
||||
#define MVS_MODE_G711 0xA
|
||||
#define MVS_MODE_PCM 0xC
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MVS_MODE_AMR_WB 0xD
|
||||
#define MVS_MODE_G729A 0xE
|
||||
#define MVS_MODE_G711A 0xF
|
||||
#define MVS_MODE_G722 0x10
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MVS_MODE_PCM_WB 0x12
|
||||
enum msm_audio_amr_mode {
|
||||
MVS_AMR_MODE_0475,
|
||||
MVS_AMR_MODE_0515,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MVS_AMR_MODE_0590,
|
||||
MVS_AMR_MODE_0670,
|
||||
MVS_AMR_MODE_0740,
|
||||
MVS_AMR_MODE_0795,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MVS_AMR_MODE_1020,
|
||||
MVS_AMR_MODE_1220,
|
||||
MVS_AMR_MODE_0660,
|
||||
MVS_AMR_MODE_0885,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MVS_AMR_MODE_1265,
|
||||
MVS_AMR_MODE_1425,
|
||||
MVS_AMR_MODE_1585,
|
||||
MVS_AMR_MODE_1825,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MVS_AMR_MODE_1985,
|
||||
MVS_AMR_MODE_2305,
|
||||
MVS_AMR_MODE_2385,
|
||||
MVS_AMR_MODE_UNDEF
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum msm_audio_voc_rate {
|
||||
MVS_VOC_0_RATE,
|
||||
MVS_VOC_8_RATE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MVS_VOC_4_RATE,
|
||||
MVS_VOC_2_RATE,
|
||||
MVS_VOC_1_RATE,
|
||||
MVS_VOC_ERASURE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MVS_VOC_RATE_MAX,
|
||||
MVS_VOC_RATE_UNDEF = MVS_VOC_RATE_MAX
|
||||
};
|
||||
enum msm_audio_amr_frame_type {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MVS_AMR_SPEECH_GOOD,
|
||||
MVS_AMR_SPEECH_DEGRADED,
|
||||
MVS_AMR_ONSET,
|
||||
MVS_AMR_SPEECH_BAD,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MVS_AMR_SID_FIRST,
|
||||
MVS_AMR_SID_UPDATE,
|
||||
MVS_AMR_SID_BAD,
|
||||
MVS_AMR_NO_DATA,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MVS_AMR_SPEECH_LOST
|
||||
};
|
||||
enum msm_audio_g711a_mode {
|
||||
MVS_G711A_MODE_MULAW,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MVS_G711A_MODE_ALAW
|
||||
};
|
||||
enum msm_audio_g711_mode {
|
||||
MVS_G711_MODE_MULAW,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MVS_G711_MODE_ALAW
|
||||
};
|
||||
enum mvs_g722_mode_type {
|
||||
MVS_G722_MODE_01,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MVS_G722_MODE_02,
|
||||
MVS_G722_MODE_03,
|
||||
MVS_G722_MODE_MAX,
|
||||
MVS_G722_MODE_UNDEF
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum msm_audio_g711a_frame_type {
|
||||
MVS_G711A_SPEECH_GOOD,
|
||||
MVS_G711A_SID,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MVS_G711A_NO_DATA,
|
||||
MVS_G711A_ERASURE
|
||||
};
|
||||
enum msm_audio_g729a_frame_type {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MVS_G729A_NO_DATA,
|
||||
MVS_G729A_SPEECH_GOOD,
|
||||
MVS_G729A_SID,
|
||||
MVS_G729A_ERASURE
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct min_max_rate {
|
||||
uint32_t min_rate;
|
||||
uint32_t max_rate;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_audio_mvs_config {
|
||||
uint32_t mvs_mode;
|
||||
uint32_t rate_type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct min_max_rate min_max_rate;
|
||||
uint32_t dtx_mode;
|
||||
};
|
||||
#define MVS_MAX_VOC_PKT_SIZE 640
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct gsm_header {
|
||||
uint8_t bfi;
|
||||
uint8_t sid;
|
||||
uint8_t taf;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t ufi;
|
||||
};
|
||||
struct q6_msm_audio_mvs_frame {
|
||||
union {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t frame_type;
|
||||
uint32_t packet_rate;
|
||||
struct gsm_header gsm_frame_type;
|
||||
} header;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t len;
|
||||
uint8_t voc_pkt[MVS_MAX_VOC_PKT_SIZE];
|
||||
};
|
||||
struct msm_audio_mvs_frame {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t frame_type;
|
||||
uint32_t len;
|
||||
uint8_t voc_pkt[MVS_MAX_VOC_PKT_SIZE];
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define Q5V2_MVS_MAX_VOC_PKT_SIZE 320
|
||||
struct q5v2_msm_audio_mvs_frame {
|
||||
uint32_t frame_type;
|
||||
uint32_t len;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t voc_pkt[Q5V2_MVS_MAX_VOC_PKT_SIZE];
|
||||
};
|
||||
#endif
|
||||
|
||||
49
kernel-headers/linux/msm_audio_qcp.h
Normal file
49
kernel-headers/linux/msm_audio_qcp.h
Normal file
@@ -0,0 +1,49 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _MSM_AUDIO_QCP_H
|
||||
#define _MSM_AUDIO_QCP_H
|
||||
#include <linux/msm_audio.h>
|
||||
#define AUDIO_SET_QCELP_ENC_CONFIG _IOW(AUDIO_IOCTL_MAGIC, 0, struct msm_audio_qcelp_enc_config)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_GET_QCELP_ENC_CONFIG _IOR(AUDIO_IOCTL_MAGIC, 1, struct msm_audio_qcelp_enc_config)
|
||||
#define AUDIO_SET_EVRC_ENC_CONFIG _IOW(AUDIO_IOCTL_MAGIC, 2, struct msm_audio_evrc_enc_config)
|
||||
#define AUDIO_GET_EVRC_ENC_CONFIG _IOR(AUDIO_IOCTL_MAGIC, 3, struct msm_audio_evrc_enc_config)
|
||||
#define CDMA_RATE_BLANK 0x00
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define CDMA_RATE_EIGHTH 0x01
|
||||
#define CDMA_RATE_QUARTER 0x02
|
||||
#define CDMA_RATE_HALF 0x03
|
||||
#define CDMA_RATE_FULL 0x04
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define CDMA_RATE_ERASURE 0x05
|
||||
struct msm_audio_qcelp_enc_config {
|
||||
uint32_t cdma_rate;
|
||||
uint32_t min_bit_rate;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t max_bit_rate;
|
||||
};
|
||||
struct msm_audio_evrc_enc_config {
|
||||
uint32_t cdma_rate;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t min_bit_rate;
|
||||
uint32_t max_bit_rate;
|
||||
};
|
||||
#endif
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
|
||||
51
kernel-headers/linux/msm_audio_sbc.h
Normal file
51
kernel-headers/linux/msm_audio_sbc.h
Normal file
@@ -0,0 +1,51 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _MSM_AUDIO_SBC_H
|
||||
#define _MSM_AUDIO_SBC_H
|
||||
#include <linux/msm_audio.h>
|
||||
#define AUDIO_SET_SBC_ENC_CONFIG _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM + 0), struct msm_audio_sbc_enc_config)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_GET_SBC_ENC_CONFIG _IOR(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM + 1), struct msm_audio_sbc_enc_config)
|
||||
#define AUDIO_SBC_BA_LOUDNESS 0x0
|
||||
#define AUDIO_SBC_BA_SNR 0x1
|
||||
#define AUDIO_SBC_MODE_MONO 0x0
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_SBC_MODE_DUAL 0x1
|
||||
#define AUDIO_SBC_MODE_STEREO 0x2
|
||||
#define AUDIO_SBC_MODE_JSTEREO 0x3
|
||||
#define AUDIO_SBC_BANDS_8 0x1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_SBC_BLOCKS_4 0x0
|
||||
#define AUDIO_SBC_BLOCKS_8 0x1
|
||||
#define AUDIO_SBC_BLOCKS_12 0x2
|
||||
#define AUDIO_SBC_BLOCKS_16 0x3
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_audio_sbc_enc_config {
|
||||
uint32_t channels;
|
||||
uint32_t sample_rate;
|
||||
uint32_t bit_allocation;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t number_of_subbands;
|
||||
uint32_t number_of_blocks;
|
||||
uint32_t bit_rate;
|
||||
uint32_t mode;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#endif
|
||||
|
||||
84
kernel-headers/linux/msm_audio_voicememo.h
Normal file
84
kernel-headers/linux/msm_audio_voicememo.h
Normal file
@@ -0,0 +1,84 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _MSM_AUDIO_VOICEMEMO_H
|
||||
#define _MSM_AUDIO_VOICEMEMO_H
|
||||
#include <linux/msm_audio.h>
|
||||
#define AUDIO_GET_VOICEMEMO_CONFIG _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM + 0), unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_SET_VOICEMEMO_CONFIG _IOR(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM + 1), unsigned)
|
||||
enum rpc_voc_rec_dir_type {
|
||||
RPC_VOC_REC_NONE,
|
||||
RPC_VOC_REC_FORWARD,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
RPC_VOC_REC_REVERSE,
|
||||
RPC_VOC_REC_BOTH,
|
||||
RPC_VOC_MAX_REC_TYPE
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum rpc_voc_capability_type {
|
||||
RPC_VOC_CAP_IS733 = 4,
|
||||
RPC_VOC_CAP_IS127 = 8,
|
||||
RPC_VOC_CAP_AMR = 64,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
RPC_VOC_CAP_32BIT_DUMMY = 2147483647
|
||||
};
|
||||
enum rpc_voc_rate_type {
|
||||
RPC_VOC_0_RATE = 0,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
RPC_VOC_8_RATE,
|
||||
RPC_VOC_4_RATE,
|
||||
RPC_VOC_2_RATE,
|
||||
RPC_VOC_1_RATE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
RPC_VOC_ERASURE,
|
||||
RPC_VOC_ERR_RATE,
|
||||
RPC_VOC_AMR_RATE_475 = 0,
|
||||
RPC_VOC_AMR_RATE_515 = 1,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
RPC_VOC_AMR_RATE_590 = 2,
|
||||
RPC_VOC_AMR_RATE_670 = 3,
|
||||
RPC_VOC_AMR_RATE_740 = 4,
|
||||
RPC_VOC_AMR_RATE_795 = 5,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
RPC_VOC_AMR_RATE_1020 = 6,
|
||||
RPC_VOC_AMR_RATE_1220 = 7,
|
||||
};
|
||||
enum rpc_voc_pb_len_rate_var_type {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
RPC_VOC_PB_NATIVE_QCP = 3,
|
||||
RPC_VOC_PB_AMR,
|
||||
RPC_VOC_PB_EVB
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_audio_voicememo_config {
|
||||
uint32_t rec_type;
|
||||
uint32_t rec_interval_ms;
|
||||
uint32_t auto_stop_ms;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t capability;
|
||||
uint32_t max_rate;
|
||||
uint32_t min_rate;
|
||||
uint32_t frame_format;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t dtx_enable;
|
||||
uint32_t data_req_ms;
|
||||
};
|
||||
#endif
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
|
||||
49
kernel-headers/linux/msm_audio_wma.h
Normal file
49
kernel-headers/linux/msm_audio_wma.h
Normal file
@@ -0,0 +1,49 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _MSM_AUDIO_WMA_H
|
||||
#define _MSM_AUDIO_WMA_H
|
||||
#define AUDIO_GET_WMA_CONFIG _IOR(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM + 0), unsigned)
|
||||
#define AUDIO_SET_WMA_CONFIG _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM + 1), unsigned)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define AUDIO_GET_WMA_CONFIG_V2 _IOR(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM + 2), struct msm_audio_wma_config_v2)
|
||||
#define AUDIO_SET_WMA_CONFIG_V2 _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM + 3), struct msm_audio_wma_config_v2)
|
||||
struct msm_audio_wma_config {
|
||||
unsigned short armdatareqthr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned short channelsdecoded;
|
||||
unsigned short wmabytespersec;
|
||||
unsigned short wmasamplingfreq;
|
||||
unsigned short wmaencoderopts;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_audio_wma_config_v2 {
|
||||
unsigned short format_tag;
|
||||
unsigned short numchannels;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t samplingrate;
|
||||
uint32_t avgbytespersecond;
|
||||
unsigned short block_align;
|
||||
unsigned short validbitspersample;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t channelmask;
|
||||
unsigned short encodeopt;
|
||||
};
|
||||
#endif
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
|
||||
41
kernel-headers/linux/msm_audio_wmapro.h
Normal file
41
kernel-headers/linux/msm_audio_wmapro.h
Normal file
@@ -0,0 +1,41 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _MSM_AUDIO_WMAPRO_H
|
||||
#define _MSM_AUDIO_WMAPRO_H
|
||||
#define AUDIO_GET_WMAPRO_CONFIG _IOR(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM + 0), struct msm_audio_wmapro_config)
|
||||
#define AUDIO_SET_WMAPRO_CONFIG _IOW(AUDIO_IOCTL_MAGIC, (AUDIO_MAX_COMMON_IOCTL_NUM + 1), struct msm_audio_wmapro_config)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_audio_wmapro_config {
|
||||
unsigned short armdatareqthr;
|
||||
uint8_t validbitspersample;
|
||||
uint8_t numchannels;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned short formattag;
|
||||
uint32_t samplingrate;
|
||||
uint32_t avgbytespersecond;
|
||||
unsigned short asfpacketlength;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t channelmask;
|
||||
unsigned short encodeopt;
|
||||
unsigned short advancedencodeopt;
|
||||
uint32_t advancedencodeopt2;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#endif
|
||||
|
||||
31
kernel-headers/linux/msm_dsps.h
Normal file
31
kernel-headers/linux/msm_dsps.h
Normal file
@@ -0,0 +1,31 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _DSPS_H_
|
||||
#define _DSPS_H_
|
||||
#include <linux/ioctl.h>
|
||||
#define DSPS_IOCTL_MAGIC 'd'
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define DSPS_IOCTL_ON _IO(DSPS_IOCTL_MAGIC, 1)
|
||||
#define DSPS_IOCTL_OFF _IO(DSPS_IOCTL_MAGIC, 2)
|
||||
#define DSPS_IOCTL_READ_SLOW_TIMER _IOR(DSPS_IOCTL_MAGIC, 3, unsigned int *)
|
||||
#define DSPS_IOCTL_READ_FAST_TIMER _IOR(DSPS_IOCTL_MAGIC, 4, unsigned int *)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define DSPS_IOCTL_RESET _IO(DSPS_IOCTL_MAGIC, 5)
|
||||
#endif
|
||||
|
||||
156
kernel-headers/linux/msm_ion.h
Normal file
156
kernel-headers/linux/msm_ion.h
Normal file
@@ -0,0 +1,156 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _MSM_ION_H
|
||||
#define _MSM_ION_H
|
||||
#include "ion.h"
|
||||
enum msm_ion_heap_types {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ION_HEAP_TYPE_MSM_START = ION_HEAP_TYPE_CUSTOM + 1,
|
||||
ION_HEAP_TYPE_SECURE_DMA = ION_HEAP_TYPE_MSM_START,
|
||||
ION_HEAP_TYPE_SYSTEM_SECURE,
|
||||
ION_HEAP_TYPE_HYP_CMA,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum ion_heap_ids {
|
||||
INVALID_HEAP_ID = - 1,
|
||||
ION_CP_MM_HEAP_ID = 8,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ION_SECURE_HEAP_ID = 9,
|
||||
ION_SECURE_DISPLAY_HEAP_ID = 10,
|
||||
ION_CP_MFC_HEAP_ID = 12,
|
||||
ION_SPSS_HEAP_ID = 13,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ION_CP_WB_HEAP_ID = 16,
|
||||
ION_CAMERA_HEAP_ID = 20,
|
||||
ION_SYSTEM_CONTIG_HEAP_ID = 21,
|
||||
ION_ADSP_HEAP_ID = 22,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ION_PIL1_HEAP_ID = 23,
|
||||
ION_SF_HEAP_ID = 24,
|
||||
ION_SYSTEM_HEAP_ID = 25,
|
||||
ION_PIL2_HEAP_ID = 26,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ION_QSECOM_HEAP_ID = 27,
|
||||
ION_AUDIO_HEAP_ID = 28,
|
||||
ION_MM_FIRMWARE_HEAP_ID = 29,
|
||||
ION_HEAP_ID_RESERVED = 31
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define ION_IOMMU_HEAP_ID ION_SYSTEM_HEAP_ID
|
||||
#define ION_HEAP_TYPE_IOMMU ION_HEAP_TYPE_SYSTEM
|
||||
#define ION_SPSS_HEAP_ID ION_SPSS_HEAP_ID
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum ion_fixed_position {
|
||||
NOT_FIXED,
|
||||
FIXED_LOW,
|
||||
FIXED_MIDDLE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
FIXED_HIGH,
|
||||
};
|
||||
enum cp_mem_usage {
|
||||
VIDEO_BITSTREAM = 0x1,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VIDEO_PIXEL = 0x2,
|
||||
VIDEO_NONPIXEL = 0x3,
|
||||
DISPLAY_SECURE_CP_USAGE = 0x4,
|
||||
CAMERA_SECURE_CP_USAGE = 0x5,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MAX_USAGE = 0x6,
|
||||
UNKNOWN = 0x7FFFFFFF,
|
||||
};
|
||||
#define ION_FLAG_CP_TOUCH (1 << 17)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ION_FLAG_CP_BITSTREAM (1 << 18)
|
||||
#define ION_FLAG_CP_PIXEL (1 << 19)
|
||||
#define ION_FLAG_CP_NON_PIXEL (1 << 20)
|
||||
#define ION_FLAG_CP_CAMERA (1 << 21)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ION_FLAG_CP_HLOS (1 << 22)
|
||||
#define ION_FLAG_CP_HLOS_FREE (1 << 23)
|
||||
#define ION_FLAG_CP_SEC_DISPLAY (1 << 25)
|
||||
#define ION_FLAG_CP_APP (1 << 26)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ION_FLAG_ALLOW_NON_CONTIG (1 << 24)
|
||||
#define ION_FLAG_SECURE (1 << ION_HEAP_ID_RESERVED)
|
||||
#define ION_FLAG_FORCE_CONTIGUOUS (1 << 30)
|
||||
#define ION_FLAG_POOL_FORCE_ALLOC (1 << 16)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ION_FLAG_POOL_PREFETCH (1 << 27)
|
||||
#define ION_SECURE ION_FLAG_SECURE
|
||||
#define ION_FORCE_CONTIGUOUS ION_FLAG_FORCE_CONTIGUOUS
|
||||
#define ION_HEAP(bit) (1 << (bit))
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ION_ADSP_HEAP_NAME "adsp"
|
||||
#define ION_SYSTEM_HEAP_NAME "system"
|
||||
#define ION_VMALLOC_HEAP_NAME ION_SYSTEM_HEAP_NAME
|
||||
#define ION_KMALLOC_HEAP_NAME "kmalloc"
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ION_AUDIO_HEAP_NAME "audio"
|
||||
#define ION_SF_HEAP_NAME "sf"
|
||||
#define ION_MM_HEAP_NAME "mm"
|
||||
#define ION_CAMERA_HEAP_NAME "camera_preview"
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ION_IOMMU_HEAP_NAME "iommu"
|
||||
#define ION_MFC_HEAP_NAME "mfc"
|
||||
#define ION_SPSS_HEAP_NAME "spss"
|
||||
#define ION_WB_HEAP_NAME "wb"
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ION_MM_FIRMWARE_HEAP_NAME "mm_fw"
|
||||
#define ION_PIL1_HEAP_NAME "pil_1"
|
||||
#define ION_PIL2_HEAP_NAME "pil_2"
|
||||
#define ION_QSECOM_HEAP_NAME "qsecom"
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ION_SECURE_HEAP_NAME "secure_heap"
|
||||
#define ION_SECURE_DISPLAY_HEAP_NAME "secure_display"
|
||||
#define ION_SET_CACHED(__cache) (__cache | ION_FLAG_CACHED)
|
||||
#define ION_SET_UNCACHED(__cache) (__cache & ~ION_FLAG_CACHED)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ION_IS_CACHED(__flags) ((__flags) & ION_FLAG_CACHED)
|
||||
struct ion_flush_data {
|
||||
ion_user_handle_t handle;
|
||||
int fd;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
void * vaddr;
|
||||
unsigned int offset;
|
||||
unsigned int length;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ion_prefetch_regions {
|
||||
unsigned int vmid;
|
||||
size_t * sizes;
|
||||
unsigned int nr_sizes;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct ion_prefetch_data {
|
||||
int heap_id;
|
||||
unsigned long len;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ion_prefetch_regions * regions;
|
||||
unsigned int nr_regions;
|
||||
};
|
||||
#define ION_IOC_MSM_MAGIC 'M'
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ION_IOC_CLEAN_CACHES _IOWR(ION_IOC_MSM_MAGIC, 0, struct ion_flush_data)
|
||||
#define ION_IOC_INV_CACHES _IOWR(ION_IOC_MSM_MAGIC, 1, struct ion_flush_data)
|
||||
#define ION_IOC_CLEAN_INV_CACHES _IOWR(ION_IOC_MSM_MAGIC, 2, struct ion_flush_data)
|
||||
#define ION_IOC_PREFETCH _IOWR(ION_IOC_MSM_MAGIC, 3, struct ion_prefetch_data)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ION_IOC_DRAIN _IOWR(ION_IOC_MSM_MAGIC, 4, struct ion_prefetch_data)
|
||||
#endif
|
||||
|
||||
980
kernel-headers/linux/msm_ipa.h
Normal file
980
kernel-headers/linux/msm_ipa.h
Normal file
@@ -0,0 +1,980 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _MSM_IPA_H_
|
||||
#define _MSM_IPA_H_
|
||||
#include <stdint.h>
|
||||
#include <stddef.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#include <sys/stat.h>
|
||||
#include <linux/ioctl.h>
|
||||
#include <linux/types.h>
|
||||
#include <linux/if_ether.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_IOC_MAGIC 0xCF
|
||||
#define IPA_DFLT_RT_TBL_NAME "ipa_dflt_rt"
|
||||
#define IPA_IOCTL_ADD_HDR 0
|
||||
#define IPA_IOCTL_DEL_HDR 1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_IOCTL_ADD_RT_RULE 2
|
||||
#define IPA_IOCTL_DEL_RT_RULE 3
|
||||
#define IPA_IOCTL_ADD_FLT_RULE 4
|
||||
#define IPA_IOCTL_DEL_FLT_RULE 5
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_IOCTL_COMMIT_HDR 6
|
||||
#define IPA_IOCTL_RESET_HDR 7
|
||||
#define IPA_IOCTL_COMMIT_RT 8
|
||||
#define IPA_IOCTL_RESET_RT 9
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_IOCTL_COMMIT_FLT 10
|
||||
#define IPA_IOCTL_RESET_FLT 11
|
||||
#define IPA_IOCTL_DUMP 12
|
||||
#define IPA_IOCTL_GET_RT_TBL 13
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_IOCTL_PUT_RT_TBL 14
|
||||
#define IPA_IOCTL_COPY_HDR 15
|
||||
#define IPA_IOCTL_QUERY_INTF 16
|
||||
#define IPA_IOCTL_QUERY_INTF_TX_PROPS 17
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_IOCTL_QUERY_INTF_RX_PROPS 18
|
||||
#define IPA_IOCTL_GET_HDR 19
|
||||
#define IPA_IOCTL_PUT_HDR 20
|
||||
#define IPA_IOCTL_SET_FLT 21
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_IOCTL_ALLOC_NAT_MEM 22
|
||||
#define IPA_IOCTL_V4_INIT_NAT 23
|
||||
#define IPA_IOCTL_NAT_DMA 24
|
||||
#define IPA_IOCTL_V4_DEL_NAT 26
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_IOCTL_PULL_MSG 27
|
||||
#define IPA_IOCTL_GET_NAT_OFFSET 28
|
||||
#define IPA_IOCTL_RM_ADD_DEPENDENCY 29
|
||||
#define IPA_IOCTL_RM_DEL_DEPENDENCY 30
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_IOCTL_GENERATE_FLT_EQ 31
|
||||
#define IPA_IOCTL_QUERY_INTF_EXT_PROPS 32
|
||||
#define IPA_IOCTL_QUERY_EP_MAPPING 33
|
||||
#define IPA_IOCTL_QUERY_RT_TBL_INDEX 34
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_IOCTL_WRITE_QMAPID 35
|
||||
#define IPA_IOCTL_MDFY_FLT_RULE 36
|
||||
#define IPA_IOCTL_NOTIFY_WAN_UPSTREAM_ROUTE_ADD 37
|
||||
#define IPA_IOCTL_NOTIFY_WAN_UPSTREAM_ROUTE_DEL 38
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_IOCTL_NOTIFY_WAN_EMBMS_CONNECTED 39
|
||||
#define IPA_IOCTL_ADD_HDR_PROC_CTX 40
|
||||
#define IPA_IOCTL_DEL_HDR_PROC_CTX 41
|
||||
#define IPA_IOCTL_MDFY_RT_RULE 42
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_IOCTL_ADD_RT_RULE_AFTER 43
|
||||
#define IPA_IOCTL_ADD_FLT_RULE_AFTER 44
|
||||
#define IPA_IOCTL_GET_HW_VERSION 45
|
||||
#define IPA_IOCTL_MAX 46
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_HDR_MAX_SIZE 64
|
||||
#define IPA_RESOURCE_NAME_MAX 32
|
||||
#define IPA_NUM_PROPS_MAX 35
|
||||
#define IPA_MAC_ADDR_SIZE 6
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_MBIM_MAX_STREAM_NUM 8
|
||||
#define IPA_FLT_TOS (1ul << 0)
|
||||
#define IPA_FLT_PROTOCOL (1ul << 1)
|
||||
#define IPA_FLT_SRC_ADDR (1ul << 2)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_FLT_DST_ADDR (1ul << 3)
|
||||
#define IPA_FLT_SRC_PORT_RANGE (1ul << 4)
|
||||
#define IPA_FLT_DST_PORT_RANGE (1ul << 5)
|
||||
#define IPA_FLT_TYPE (1ul << 6)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_FLT_CODE (1ul << 7)
|
||||
#define IPA_FLT_SPI (1ul << 8)
|
||||
#define IPA_FLT_SRC_PORT (1ul << 9)
|
||||
#define IPA_FLT_DST_PORT (1ul << 10)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_FLT_TC (1ul << 11)
|
||||
#define IPA_FLT_FLOW_LABEL (1ul << 12)
|
||||
#define IPA_FLT_NEXT_HDR (1ul << 13)
|
||||
#define IPA_FLT_META_DATA (1ul << 14)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_FLT_FRAGMENT (1ul << 15)
|
||||
#define IPA_FLT_TOS_MASKED (1ul << 16)
|
||||
#define IPA_FLT_MAC_SRC_ADDR_ETHER_II (1ul << 17)
|
||||
#define IPA_FLT_MAC_DST_ADDR_ETHER_II (1ul << 18)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_FLT_MAC_SRC_ADDR_802_3 (1ul << 19)
|
||||
#define IPA_FLT_MAC_DST_ADDR_802_3 (1ul << 20)
|
||||
#define IPA_FLT_MAC_ETHER_TYPE (1ul << 21)
|
||||
enum ipa_client_type {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_CLIENT_PROD,
|
||||
IPA_CLIENT_HSIC1_PROD = IPA_CLIENT_PROD,
|
||||
IPA_CLIENT_WLAN1_PROD,
|
||||
IPA_CLIENT_HSIC2_PROD,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_CLIENT_USB2_PROD,
|
||||
IPA_CLIENT_HSIC3_PROD,
|
||||
IPA_CLIENT_USB3_PROD,
|
||||
IPA_CLIENT_HSIC4_PROD,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_CLIENT_USB4_PROD,
|
||||
IPA_CLIENT_HSIC5_PROD,
|
||||
IPA_CLIENT_USB_PROD,
|
||||
IPA_CLIENT_A5_WLAN_AMPDU_PROD,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_CLIENT_A2_EMBEDDED_PROD,
|
||||
IPA_CLIENT_A2_TETHERED_PROD,
|
||||
IPA_CLIENT_APPS_LAN_WAN_PROD,
|
||||
IPA_CLIENT_APPS_CMD_PROD,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_CLIENT_ODU_PROD,
|
||||
IPA_CLIENT_MHI_PROD,
|
||||
IPA_CLIENT_Q6_LAN_PROD,
|
||||
IPA_CLIENT_Q6_WAN_PROD,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_CLIENT_Q6_CMD_PROD,
|
||||
IPA_CLIENT_MEMCPY_DMA_SYNC_PROD,
|
||||
IPA_CLIENT_MEMCPY_DMA_ASYNC_PROD,
|
||||
IPA_CLIENT_Q6_DECOMP_PROD,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_CLIENT_Q6_DECOMP2_PROD,
|
||||
IPA_CLIENT_UC_USB_PROD,
|
||||
IPA_CLIENT_TEST_PROD,
|
||||
IPA_CLIENT_TEST1_PROD,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_CLIENT_TEST2_PROD,
|
||||
IPA_CLIENT_TEST3_PROD,
|
||||
IPA_CLIENT_TEST4_PROD,
|
||||
IPA_CLIENT_CONS,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_CLIENT_HSIC1_CONS = IPA_CLIENT_CONS,
|
||||
IPA_CLIENT_WLAN1_CONS,
|
||||
IPA_CLIENT_HSIC2_CONS,
|
||||
IPA_CLIENT_USB2_CONS,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_CLIENT_WLAN2_CONS,
|
||||
IPA_CLIENT_HSIC3_CONS,
|
||||
IPA_CLIENT_USB3_CONS,
|
||||
IPA_CLIENT_WLAN3_CONS,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_CLIENT_HSIC4_CONS,
|
||||
IPA_CLIENT_USB4_CONS,
|
||||
IPA_CLIENT_WLAN4_CONS,
|
||||
IPA_CLIENT_HSIC5_CONS,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_CLIENT_USB_CONS,
|
||||
IPA_CLIENT_USB_DPL_CONS,
|
||||
IPA_CLIENT_A2_EMBEDDED_CONS,
|
||||
IPA_CLIENT_A2_TETHERED_CONS,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_CLIENT_A5_LAN_WAN_CONS,
|
||||
IPA_CLIENT_APPS_LAN_CONS,
|
||||
IPA_CLIENT_APPS_WAN_CONS,
|
||||
IPA_CLIENT_ODU_EMB_CONS,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_CLIENT_ODU_TETH_CONS,
|
||||
IPA_CLIENT_MHI_CONS,
|
||||
IPA_CLIENT_Q6_LAN_CONS,
|
||||
IPA_CLIENT_Q6_WAN_CONS,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_CLIENT_Q6_DUN_CONS,
|
||||
IPA_CLIENT_MEMCPY_DMA_SYNC_CONS,
|
||||
IPA_CLIENT_MEMCPY_DMA_ASYNC_CONS,
|
||||
IPA_CLIENT_Q6_DECOMP_CONS,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_CLIENT_Q6_DECOMP2_CONS,
|
||||
IPA_CLIENT_Q6_LTE_WIFI_AGGR_CONS,
|
||||
IPA_CLIENT_TEST_CONS,
|
||||
IPA_CLIENT_TEST1_CONS,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_CLIENT_TEST2_CONS,
|
||||
IPA_CLIENT_TEST3_CONS,
|
||||
IPA_CLIENT_TEST4_CONS,
|
||||
IPA_CLIENT_MAX,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define IPA_CLIENT_IS_APPS_CONS(client) ((client) == IPA_CLIENT_APPS_LAN_CONS || (client) == IPA_CLIENT_APPS_WAN_CONS)
|
||||
#define IPA_CLIENT_IS_USB_CONS(client) ((client) == IPA_CLIENT_USB_CONS || (client) == IPA_CLIENT_USB2_CONS || (client) == IPA_CLIENT_USB3_CONS || (client) == IPA_CLIENT_USB_DPL_CONS || (client) == IPA_CLIENT_USB4_CONS)
|
||||
#define IPA_CLIENT_IS_WLAN_CONS(client) ((client) == IPA_CLIENT_WLAN1_CONS || (client) == IPA_CLIENT_WLAN2_CONS || (client) == IPA_CLIENT_WLAN3_CONS || (client) == IPA_CLIENT_WLAN4_CONS)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_CLIENT_IS_ODU_CONS(client) ((client) == IPA_CLIENT_ODU_EMB_CONS || (client) == IPA_CLIENT_ODU_TETH_CONS)
|
||||
#define IPA_CLIENT_IS_Q6_CONS(client) ((client) == IPA_CLIENT_Q6_LAN_CONS || (client) == IPA_CLIENT_Q6_WAN_CONS || (client) == IPA_CLIENT_Q6_DUN_CONS || (client) == IPA_CLIENT_Q6_DECOMP_CONS || (client) == IPA_CLIENT_Q6_DECOMP2_CONS || (client) == IPA_CLIENT_Q6_LTE_WIFI_AGGR_CONS)
|
||||
#define IPA_CLIENT_IS_Q6_PROD(client) ((client) == IPA_CLIENT_Q6_LAN_PROD || (client) == IPA_CLIENT_Q6_WAN_PROD || (client) == IPA_CLIENT_Q6_CMD_PROD || (client) == IPA_CLIENT_Q6_DECOMP_PROD || (client) == IPA_CLIENT_Q6_DECOMP2_PROD)
|
||||
#define IPA_CLIENT_IS_Q6_NON_ZIP_CONS(client) ((client) == IPA_CLIENT_Q6_LAN_CONS || (client) == IPA_CLIENT_Q6_WAN_CONS || (client) == IPA_CLIENT_Q6_DUN_CONS || (client) == IPA_CLIENT_Q6_LTE_WIFI_AGGR_CONS)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_CLIENT_IS_Q6_ZIP_CONS(client) ((client) == IPA_CLIENT_Q6_DECOMP_CONS || (client) == IPA_CLIENT_Q6_DECOMP2_CONS)
|
||||
#define IPA_CLIENT_IS_Q6_NON_ZIP_PROD(client) ((client) == IPA_CLIENT_Q6_LAN_PROD || (client) == IPA_CLIENT_Q6_WAN_PROD || (client) == IPA_CLIENT_Q6_CMD_PROD)
|
||||
#define IPA_CLIENT_IS_Q6_ZIP_PROD(client) ((client) == IPA_CLIENT_Q6_DECOMP_PROD || (client) == IPA_CLIENT_Q6_DECOMP2_PROD)
|
||||
#define IPA_CLIENT_IS_MEMCPY_DMA_CONS(client) ((client) == IPA_CLIENT_MEMCPY_DMA_SYNC_CONS || (client) == IPA_CLIENT_MEMCPY_DMA_ASYNC_CONS)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_CLIENT_IS_MEMCPY_DMA_PROD(client) ((client) == IPA_CLIENT_MEMCPY_DMA_SYNC_PROD || (client) == IPA_CLIENT_MEMCPY_DMA_ASYNC_PROD)
|
||||
#define IPA_CLIENT_IS_MHI_CONS(client) ((client) == IPA_CLIENT_MHI_CONS)
|
||||
#define IPA_CLIENT_IS_MHI(client) ((client) == IPA_CLIENT_MHI_CONS || (client) == IPA_CLIENT_MHI_PROD)
|
||||
#define IPA_CLIENT_IS_TEST_PROD(client) ((client) == IPA_CLIENT_TEST_PROD || (client) == IPA_CLIENT_TEST1_PROD || (client) == IPA_CLIENT_TEST2_PROD || (client) == IPA_CLIENT_TEST3_PROD || (client) == IPA_CLIENT_TEST4_PROD)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_CLIENT_IS_TEST_CONS(client) ((client) == IPA_CLIENT_TEST_CONS || (client) == IPA_CLIENT_TEST1_CONS || (client) == IPA_CLIENT_TEST2_CONS || (client) == IPA_CLIENT_TEST3_CONS || (client) == IPA_CLIENT_TEST4_CONS)
|
||||
#define IPA_CLIENT_IS_TEST(client) (IPA_CLIENT_IS_TEST_PROD(client) || IPA_CLIENT_IS_TEST_CONS(client))
|
||||
enum ipa_ip_type {
|
||||
IPA_IP_v4,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_IP_v6,
|
||||
IPA_IP_MAX
|
||||
};
|
||||
enum ipa_rule_type {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_RULE_HASHABLE,
|
||||
IPA_RULE_NON_HASHABLE,
|
||||
IPA_RULE_TYPE_MAX
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum ipa_flt_action {
|
||||
IPA_PASS_TO_ROUTING,
|
||||
IPA_PASS_TO_SRC_NAT,
|
||||
IPA_PASS_TO_DST_NAT,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_PASS_TO_EXCEPTION
|
||||
};
|
||||
enum ipa_wlan_event {
|
||||
WLAN_CLIENT_CONNECT,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
WLAN_CLIENT_DISCONNECT,
|
||||
WLAN_CLIENT_POWER_SAVE_MODE,
|
||||
WLAN_CLIENT_NORMAL_MODE,
|
||||
SW_ROUTING_ENABLE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
SW_ROUTING_DISABLE,
|
||||
WLAN_AP_CONNECT,
|
||||
WLAN_AP_DISCONNECT,
|
||||
WLAN_STA_CONNECT,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
WLAN_STA_DISCONNECT,
|
||||
WLAN_CLIENT_CONNECT_EX,
|
||||
WLAN_SWITCH_TO_SCC,
|
||||
WLAN_SWITCH_TO_MCC,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
WLAN_WDI_ENABLE,
|
||||
WLAN_WDI_DISABLE,
|
||||
IPA_WLAN_EVENT_MAX
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum ipa_wan_event {
|
||||
WAN_UPSTREAM_ROUTE_ADD = IPA_WLAN_EVENT_MAX,
|
||||
WAN_UPSTREAM_ROUTE_DEL,
|
||||
WAN_EMBMS_CONNECT,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
WAN_XLAT_CONNECT,
|
||||
IPA_WAN_EVENT_MAX
|
||||
};
|
||||
enum ipa_ecm_event {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ECM_CONNECT = IPA_WAN_EVENT_MAX,
|
||||
ECM_DISCONNECT,
|
||||
IPA_ECM_EVENT_MAX,
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum ipa_tethering_stats_event {
|
||||
IPA_TETHERING_STATS_UPDATE_STATS = IPA_ECM_EVENT_MAX,
|
||||
IPA_TETHERING_STATS_UPDATE_NETWORK_STATS,
|
||||
IPA_TETHERING_STATS_EVENT_MAX,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_EVENT_MAX_NUM = IPA_TETHERING_STATS_EVENT_MAX
|
||||
};
|
||||
#define IPA_EVENT_MAX ((int) IPA_EVENT_MAX_NUM)
|
||||
enum ipa_rm_resource_name {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_RM_RESOURCE_PROD = 0,
|
||||
IPA_RM_RESOURCE_Q6_PROD = IPA_RM_RESOURCE_PROD,
|
||||
IPA_RM_RESOURCE_USB_PROD,
|
||||
IPA_RM_RESOURCE_USB_DPL_DUMMY_PROD,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_RM_RESOURCE_HSIC_PROD,
|
||||
IPA_RM_RESOURCE_STD_ECM_PROD,
|
||||
IPA_RM_RESOURCE_RNDIS_PROD,
|
||||
IPA_RM_RESOURCE_WWAN_0_PROD,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_RM_RESOURCE_WLAN_PROD,
|
||||
IPA_RM_RESOURCE_ODU_ADAPT_PROD,
|
||||
IPA_RM_RESOURCE_MHI_PROD,
|
||||
IPA_RM_RESOURCE_PROD_MAX,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_RM_RESOURCE_Q6_CONS = IPA_RM_RESOURCE_PROD_MAX,
|
||||
IPA_RM_RESOURCE_USB_CONS,
|
||||
IPA_RM_RESOURCE_USB_DPL_CONS,
|
||||
IPA_RM_RESOURCE_HSIC_CONS,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_RM_RESOURCE_WLAN_CONS,
|
||||
IPA_RM_RESOURCE_APPS_CONS,
|
||||
IPA_RM_RESOURCE_ODU_ADAPT_CONS,
|
||||
IPA_RM_RESOURCE_MHI_CONS,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_RM_RESOURCE_MAX
|
||||
};
|
||||
enum ipa_hw_type {
|
||||
IPA_HW_None = 0,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_HW_v1_0 = 1,
|
||||
IPA_HW_v1_1 = 2,
|
||||
IPA_HW_v2_0 = 3,
|
||||
IPA_HW_v2_1 = 4,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_HW_v2_5 = 5,
|
||||
IPA_HW_v2_6 = IPA_HW_v2_5,
|
||||
IPA_HW_v2_6L = 6,
|
||||
IPA_HW_v3_0 = 10,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_HW_v3_1 = 11,
|
||||
IPA_HW_MAX
|
||||
};
|
||||
struct ipa_rule_attrib {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t attrib_mask;
|
||||
uint16_t src_port_lo;
|
||||
uint16_t src_port_hi;
|
||||
uint16_t dst_port_lo;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint16_t dst_port_hi;
|
||||
uint8_t type;
|
||||
uint8_t code;
|
||||
uint8_t tos_value;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t tos_mask;
|
||||
uint32_t spi;
|
||||
uint16_t src_port;
|
||||
uint16_t dst_port;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t meta_data;
|
||||
uint32_t meta_data_mask;
|
||||
uint8_t src_mac_addr[ETH_ALEN];
|
||||
uint8_t src_mac_addr_mask[ETH_ALEN];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t dst_mac_addr[ETH_ALEN];
|
||||
uint8_t dst_mac_addr_mask[ETH_ALEN];
|
||||
uint16_t ether_type;
|
||||
union {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct {
|
||||
uint8_t tos;
|
||||
uint8_t protocol;
|
||||
uint32_t src_addr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t src_addr_mask;
|
||||
uint32_t dst_addr;
|
||||
uint32_t dst_addr_mask;
|
||||
} v4;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct {
|
||||
uint8_t tc;
|
||||
uint32_t flow_label;
|
||||
uint8_t next_hdr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t src_addr[4];
|
||||
uint32_t src_addr_mask[4];
|
||||
uint32_t dst_addr[4];
|
||||
uint32_t dst_addr_mask[4];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
} v6;
|
||||
} u;
|
||||
};
|
||||
#define IPA_IPFLTR_NUM_MEQ_32_EQNS 2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_IPFLTR_NUM_IHL_MEQ_32_EQNS 2
|
||||
#define IPA_IPFLTR_NUM_MEQ_128_EQNS 2
|
||||
#define IPA_IPFLTR_NUM_IHL_RANGE_16_EQNS 2
|
||||
struct ipa_ipfltr_eq_16 {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int8_t offset;
|
||||
uint16_t value;
|
||||
};
|
||||
struct ipa_ipfltr_eq_32 {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int8_t offset;
|
||||
uint32_t value;
|
||||
};
|
||||
struct ipa_ipfltr_mask_eq_128 {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int8_t offset;
|
||||
uint8_t mask[16];
|
||||
uint8_t value[16];
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ipa_ipfltr_mask_eq_32 {
|
||||
int8_t offset;
|
||||
uint32_t mask;
|
||||
uint32_t value;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct ipa_ipfltr_range_eq_16 {
|
||||
int8_t offset;
|
||||
uint16_t range_low;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint16_t range_high;
|
||||
};
|
||||
struct ipa_ipfltri_rule_eq {
|
||||
uint16_t rule_eq_bitmap;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t tos_eq_present;
|
||||
uint8_t tos_eq;
|
||||
uint8_t protocol_eq_present;
|
||||
uint8_t protocol_eq;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t num_ihl_offset_range_16;
|
||||
struct ipa_ipfltr_range_eq_16 ihl_offset_range_16[IPA_IPFLTR_NUM_IHL_RANGE_16_EQNS];
|
||||
uint8_t num_offset_meq_32;
|
||||
struct ipa_ipfltr_mask_eq_32 offset_meq_32[IPA_IPFLTR_NUM_MEQ_32_EQNS];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t tc_eq_present;
|
||||
uint8_t tc_eq;
|
||||
uint8_t fl_eq_present;
|
||||
uint32_t fl_eq;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t ihl_offset_eq_16_present;
|
||||
struct ipa_ipfltr_eq_16 ihl_offset_eq_16;
|
||||
uint8_t ihl_offset_eq_32_present;
|
||||
struct ipa_ipfltr_eq_32 ihl_offset_eq_32;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t num_ihl_offset_meq_32;
|
||||
struct ipa_ipfltr_mask_eq_32 ihl_offset_meq_32[IPA_IPFLTR_NUM_IHL_MEQ_32_EQNS];
|
||||
uint8_t num_offset_meq_128;
|
||||
struct ipa_ipfltr_mask_eq_128 offset_meq_128[IPA_IPFLTR_NUM_MEQ_128_EQNS];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t metadata_meq32_present;
|
||||
struct ipa_ipfltr_mask_eq_32 metadata_meq32;
|
||||
uint8_t ipv4_frag_eq_present;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ipa_flt_rule {
|
||||
uint8_t retain_hdr;
|
||||
uint8_t to_uc;
|
||||
enum ipa_flt_action action;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t rt_tbl_hdl;
|
||||
struct ipa_rule_attrib attrib;
|
||||
struct ipa_ipfltri_rule_eq eq_attrib;
|
||||
uint32_t rt_tbl_idx;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t eq_attrib_type;
|
||||
uint8_t max_prio;
|
||||
uint8_t hashable;
|
||||
uint16_t rule_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum ipa_hdr_l2_type {
|
||||
IPA_HDR_L2_NONE,
|
||||
IPA_HDR_L2_ETHERNET_II,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_HDR_L2_802_3,
|
||||
IPA_HDR_L2_MAX,
|
||||
};
|
||||
enum ipa_hdr_proc_type {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_HDR_PROC_NONE,
|
||||
IPA_HDR_PROC_ETHII_TO_ETHII,
|
||||
IPA_HDR_PROC_ETHII_TO_802_3,
|
||||
IPA_HDR_PROC_802_3_TO_ETHII,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPA_HDR_PROC_802_3_TO_802_3,
|
||||
IPA_HDR_PROC_MAX,
|
||||
};
|
||||
struct ipa_rt_rule {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum ipa_client_type dst;
|
||||
uint32_t hdr_hdl;
|
||||
uint32_t hdr_proc_ctx_hdl;
|
||||
struct ipa_rule_attrib attrib;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t max_prio;
|
||||
uint8_t hashable;
|
||||
uint8_t retain_hdr;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ipa_hdr_add {
|
||||
char name[IPA_RESOURCE_NAME_MAX];
|
||||
uint8_t hdr[IPA_HDR_MAX_SIZE];
|
||||
uint8_t hdr_len;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum ipa_hdr_l2_type type;
|
||||
uint8_t is_partial;
|
||||
uint32_t hdr_hdl;
|
||||
int status;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t is_eth2_ofst_valid;
|
||||
uint16_t eth2_ofst;
|
||||
};
|
||||
struct ipa_ioc_add_hdr {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t commit;
|
||||
uint8_t num_hdrs;
|
||||
struct ipa_hdr_add hdr[0];
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ipa_hdr_proc_ctx_add {
|
||||
enum ipa_hdr_proc_type type;
|
||||
uint32_t hdr_hdl;
|
||||
uint32_t proc_ctx_hdl;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int status;
|
||||
};
|
||||
struct ipa_ioc_add_hdr_proc_ctx {
|
||||
uint8_t commit;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t num_proc_ctxs;
|
||||
struct ipa_hdr_proc_ctx_add proc_ctx[0];
|
||||
};
|
||||
struct ipa_ioc_copy_hdr {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
char name[IPA_RESOURCE_NAME_MAX];
|
||||
uint8_t hdr[IPA_HDR_MAX_SIZE];
|
||||
uint8_t hdr_len;
|
||||
enum ipa_hdr_l2_type type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t is_partial;
|
||||
uint8_t is_eth2_ofst_valid;
|
||||
uint16_t eth2_ofst;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ipa_ioc_get_hdr {
|
||||
char name[IPA_RESOURCE_NAME_MAX];
|
||||
uint32_t hdl;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ipa_hdr_del {
|
||||
uint32_t hdl;
|
||||
int status;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ipa_ioc_del_hdr {
|
||||
uint8_t commit;
|
||||
uint8_t num_hdls;
|
||||
struct ipa_hdr_del hdl[0];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct ipa_hdr_proc_ctx_del {
|
||||
uint32_t hdl;
|
||||
int status;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct ipa_ioc_del_hdr_proc_ctx {
|
||||
uint8_t commit;
|
||||
uint8_t num_hdls;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ipa_hdr_proc_ctx_del hdl[0];
|
||||
};
|
||||
struct ipa_rt_rule_add {
|
||||
struct ipa_rt_rule rule;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t at_rear;
|
||||
uint32_t rt_rule_hdl;
|
||||
int status;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ipa_ioc_add_rt_rule {
|
||||
uint8_t commit;
|
||||
enum ipa_ip_type ip;
|
||||
char rt_tbl_name[IPA_RESOURCE_NAME_MAX];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t num_rules;
|
||||
struct ipa_rt_rule_add rules[0];
|
||||
};
|
||||
struct ipa_ioc_add_rt_rule_after {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t commit;
|
||||
enum ipa_ip_type ip;
|
||||
char rt_tbl_name[IPA_RESOURCE_NAME_MAX];
|
||||
uint8_t num_rules;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t add_after_hdl;
|
||||
struct ipa_rt_rule_add rules[0];
|
||||
};
|
||||
struct ipa_rt_rule_mdfy {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ipa_rt_rule rule;
|
||||
uint32_t rt_rule_hdl;
|
||||
int status;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ipa_ioc_mdfy_rt_rule {
|
||||
uint8_t commit;
|
||||
enum ipa_ip_type ip;
|
||||
uint8_t num_rules;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ipa_rt_rule_mdfy rules[0];
|
||||
};
|
||||
struct ipa_rt_rule_del {
|
||||
uint32_t hdl;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int status;
|
||||
};
|
||||
struct ipa_ioc_del_rt_rule {
|
||||
uint8_t commit;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum ipa_ip_type ip;
|
||||
uint8_t num_hdls;
|
||||
struct ipa_rt_rule_del hdl[0];
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ipa_ioc_get_rt_tbl_indx {
|
||||
enum ipa_ip_type ip;
|
||||
char name[IPA_RESOURCE_NAME_MAX];
|
||||
uint32_t idx;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct ipa_flt_rule_add {
|
||||
struct ipa_flt_rule rule;
|
||||
uint8_t at_rear;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t flt_rule_hdl;
|
||||
int status;
|
||||
};
|
||||
struct ipa_ioc_add_flt_rule {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t commit;
|
||||
enum ipa_ip_type ip;
|
||||
enum ipa_client_type ep;
|
||||
uint8_t global;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t num_rules;
|
||||
struct ipa_flt_rule_add rules[0];
|
||||
};
|
||||
struct ipa_ioc_add_flt_rule_after {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t commit;
|
||||
enum ipa_ip_type ip;
|
||||
enum ipa_client_type ep;
|
||||
uint8_t num_rules;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t add_after_hdl;
|
||||
struct ipa_flt_rule_add rules[0];
|
||||
};
|
||||
struct ipa_flt_rule_mdfy {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ipa_flt_rule rule;
|
||||
uint32_t rule_hdl;
|
||||
int status;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ipa_ioc_mdfy_flt_rule {
|
||||
uint8_t commit;
|
||||
enum ipa_ip_type ip;
|
||||
uint8_t num_rules;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ipa_flt_rule_mdfy rules[0];
|
||||
};
|
||||
struct ipa_flt_rule_del {
|
||||
uint32_t hdl;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int status;
|
||||
};
|
||||
struct ipa_ioc_del_flt_rule {
|
||||
uint8_t commit;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum ipa_ip_type ip;
|
||||
uint8_t num_hdls;
|
||||
struct ipa_flt_rule_del hdl[0];
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ipa_ioc_get_rt_tbl {
|
||||
enum ipa_ip_type ip;
|
||||
char name[IPA_RESOURCE_NAME_MAX];
|
||||
uint32_t hdl;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct ipa_ioc_query_intf {
|
||||
char name[IPA_RESOURCE_NAME_MAX];
|
||||
uint32_t num_tx_props;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t num_rx_props;
|
||||
uint32_t num_ext_props;
|
||||
enum ipa_client_type excp_pipe;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ipa_ioc_tx_intf_prop {
|
||||
enum ipa_ip_type ip;
|
||||
struct ipa_rule_attrib attrib;
|
||||
enum ipa_client_type dst_pipe;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum ipa_client_type alt_dst_pipe;
|
||||
char hdr_name[IPA_RESOURCE_NAME_MAX];
|
||||
enum ipa_hdr_l2_type hdr_l2_type;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ipa_ioc_query_intf_tx_props {
|
||||
char name[IPA_RESOURCE_NAME_MAX];
|
||||
uint32_t num_tx_props;
|
||||
struct ipa_ioc_tx_intf_prop tx[0];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct ipa_ioc_ext_intf_prop {
|
||||
enum ipa_ip_type ip;
|
||||
struct ipa_ipfltri_rule_eq eq_attrib;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum ipa_flt_action action;
|
||||
uint32_t rt_tbl_idx;
|
||||
uint8_t mux_id;
|
||||
uint32_t filter_hdl;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t is_xlat_rule;
|
||||
uint32_t rule_id;
|
||||
uint8_t is_rule_hashable;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ipa_ioc_query_intf_ext_props {
|
||||
char name[IPA_RESOURCE_NAME_MAX];
|
||||
uint32_t num_ext_props;
|
||||
struct ipa_ioc_ext_intf_prop ext[0];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct ipa_ioc_rx_intf_prop {
|
||||
enum ipa_ip_type ip;
|
||||
struct ipa_rule_attrib attrib;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum ipa_client_type src_pipe;
|
||||
enum ipa_hdr_l2_type hdr_l2_type;
|
||||
};
|
||||
struct ipa_ioc_query_intf_rx_props {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
char name[IPA_RESOURCE_NAME_MAX];
|
||||
uint32_t num_rx_props;
|
||||
struct ipa_ioc_rx_intf_prop rx[0];
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ipa_ioc_nat_alloc_mem {
|
||||
char dev_name[IPA_RESOURCE_NAME_MAX];
|
||||
size_t size;
|
||||
off_t offset;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct ipa_ioc_v4_nat_init {
|
||||
uint8_t tbl_index;
|
||||
uint32_t ipv4_rules_offset;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t expn_rules_offset;
|
||||
uint32_t index_offset;
|
||||
uint32_t index_expn_offset;
|
||||
uint16_t table_entries;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint16_t expn_table_entries;
|
||||
uint32_t ip_addr;
|
||||
};
|
||||
struct ipa_ioc_v4_nat_del {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t table_index;
|
||||
uint32_t public_ip_addr;
|
||||
};
|
||||
struct ipa_ioc_nat_dma_one {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t table_index;
|
||||
uint8_t base_addr;
|
||||
uint32_t offset;
|
||||
uint16_t data;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct ipa_ioc_nat_dma_cmd {
|
||||
uint8_t entries;
|
||||
struct ipa_ioc_nat_dma_one dma[0];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct ipa_msg_meta {
|
||||
uint8_t msg_type;
|
||||
uint8_t rsvd;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint16_t msg_len;
|
||||
};
|
||||
struct ipa_wlan_msg {
|
||||
char name[IPA_RESOURCE_NAME_MAX];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t mac_addr[IPA_MAC_ADDR_SIZE];
|
||||
};
|
||||
enum ipa_wlan_hdr_attrib_type {
|
||||
WLAN_HDR_ATTRIB_MAC_ADDR,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
WLAN_HDR_ATTRIB_STA_ID
|
||||
};
|
||||
struct ipa_wlan_hdr_attrib_val {
|
||||
enum ipa_wlan_hdr_attrib_type attrib_type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t offset;
|
||||
union {
|
||||
uint8_t mac_addr[IPA_MAC_ADDR_SIZE];
|
||||
uint8_t sta_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
} u;
|
||||
};
|
||||
struct ipa_wlan_msg_ex {
|
||||
char name[IPA_RESOURCE_NAME_MAX];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t num_of_attribs;
|
||||
struct ipa_wlan_hdr_attrib_val attribs[0];
|
||||
};
|
||||
struct ipa_ecm_msg {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
char name[IPA_RESOURCE_NAME_MAX];
|
||||
int ifindex;
|
||||
};
|
||||
struct ipa_wan_msg {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
char upstream_ifname[IPA_RESOURCE_NAME_MAX];
|
||||
char tethered_ifname[IPA_RESOURCE_NAME_MAX];
|
||||
enum ipa_ip_type ip;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ipa_ioc_rm_dependency {
|
||||
enum ipa_rm_resource_name resource_name;
|
||||
enum ipa_rm_resource_name depends_on_name;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ipa_ioc_generate_flt_eq {
|
||||
enum ipa_ip_type ip;
|
||||
struct ipa_rule_attrib attrib;
|
||||
struct ipa_ipfltri_rule_eq eq_attrib;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct ipa_ioc_write_qmapid {
|
||||
enum ipa_client_type client;
|
||||
uint8_t qmap_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum ipacm_client_enum {
|
||||
IPACM_CLIENT_USB = 1,
|
||||
IPACM_CLIENT_WLAN,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IPACM_CLIENT_MAX
|
||||
};
|
||||
#define IPA_IOC_ADD_HDR _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_ADD_HDR, struct ipa_ioc_add_hdr *)
|
||||
#define IPA_IOC_DEL_HDR _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_DEL_HDR, struct ipa_ioc_del_hdr *)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_IOC_ADD_RT_RULE _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_ADD_RT_RULE, struct ipa_ioc_add_rt_rule *)
|
||||
#define IPA_IOC_ADD_RT_RULE_AFTER _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_ADD_RT_RULE_AFTER, struct ipa_ioc_add_rt_rule_after *)
|
||||
#define IPA_IOC_DEL_RT_RULE _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_DEL_RT_RULE, struct ipa_ioc_del_rt_rule *)
|
||||
#define IPA_IOC_ADD_FLT_RULE _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_ADD_FLT_RULE, struct ipa_ioc_add_flt_rule *)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_IOC_ADD_FLT_RULE_AFTER _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_ADD_FLT_RULE_AFTER, struct ipa_ioc_add_flt_rule_after *)
|
||||
#define IPA_IOC_DEL_FLT_RULE _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_DEL_FLT_RULE, struct ipa_ioc_del_flt_rule *)
|
||||
#define IPA_IOC_COMMIT_HDR _IO(IPA_IOC_MAGIC, IPA_IOCTL_COMMIT_HDR)
|
||||
#define IPA_IOC_RESET_HDR _IO(IPA_IOC_MAGIC, IPA_IOCTL_RESET_HDR)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_IOC_COMMIT_RT _IOW(IPA_IOC_MAGIC, IPA_IOCTL_COMMIT_RT, enum ipa_ip_type)
|
||||
#define IPA_IOC_RESET_RT _IOW(IPA_IOC_MAGIC, IPA_IOCTL_RESET_RT, enum ipa_ip_type)
|
||||
#define IPA_IOC_COMMIT_FLT _IOW(IPA_IOC_MAGIC, IPA_IOCTL_COMMIT_FLT, enum ipa_ip_type)
|
||||
#define IPA_IOC_RESET_FLT _IOW(IPA_IOC_MAGIC, IPA_IOCTL_RESET_FLT, enum ipa_ip_type)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_IOC_DUMP _IO(IPA_IOC_MAGIC, IPA_IOCTL_DUMP)
|
||||
#define IPA_IOC_GET_RT_TBL _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_GET_RT_TBL, struct ipa_ioc_get_rt_tbl *)
|
||||
#define IPA_IOC_PUT_RT_TBL _IOW(IPA_IOC_MAGIC, IPA_IOCTL_PUT_RT_TBL, uint32_t)
|
||||
#define IPA_IOC_COPY_HDR _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_COPY_HDR, struct ipa_ioc_copy_hdr *)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_IOC_QUERY_INTF _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_QUERY_INTF, struct ipa_ioc_query_intf *)
|
||||
#define IPA_IOC_QUERY_INTF_TX_PROPS _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_QUERY_INTF_TX_PROPS, struct ipa_ioc_query_intf_tx_props *)
|
||||
#define IPA_IOC_QUERY_INTF_RX_PROPS _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_QUERY_INTF_RX_PROPS, struct ipa_ioc_query_intf_rx_props *)
|
||||
#define IPA_IOC_QUERY_INTF_EXT_PROPS _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_QUERY_INTF_EXT_PROPS, struct ipa_ioc_query_intf_ext_props *)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_IOC_GET_HDR _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_GET_HDR, struct ipa_ioc_get_hdr *)
|
||||
#define IPA_IOC_PUT_HDR _IOW(IPA_IOC_MAGIC, IPA_IOCTL_PUT_HDR, uint32_t)
|
||||
#define IPA_IOC_ALLOC_NAT_MEM _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_ALLOC_NAT_MEM, struct ipa_ioc_nat_alloc_mem *)
|
||||
#define IPA_IOC_V4_INIT_NAT _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_V4_INIT_NAT, struct ipa_ioc_v4_nat_init *)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_IOC_NAT_DMA _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_NAT_DMA, struct ipa_ioc_nat_dma_cmd *)
|
||||
#define IPA_IOC_V4_DEL_NAT _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_V4_DEL_NAT, struct ipa_ioc_v4_nat_del *)
|
||||
#define IPA_IOC_GET_NAT_OFFSET _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_GET_NAT_OFFSET, uint32_t *)
|
||||
#define IPA_IOC_SET_FLT _IOW(IPA_IOC_MAGIC, IPA_IOCTL_SET_FLT, uint32_t)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_IOC_PULL_MSG _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_PULL_MSG, struct ipa_msg_meta *)
|
||||
#define IPA_IOC_RM_ADD_DEPENDENCY _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_RM_ADD_DEPENDENCY, struct ipa_ioc_rm_dependency *)
|
||||
#define IPA_IOC_RM_DEL_DEPENDENCY _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_RM_DEL_DEPENDENCY, struct ipa_ioc_rm_dependency *)
|
||||
#define IPA_IOC_GENERATE_FLT_EQ _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_GENERATE_FLT_EQ, struct ipa_ioc_generate_flt_eq *)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_IOC_QUERY_EP_MAPPING _IOR(IPA_IOC_MAGIC, IPA_IOCTL_QUERY_EP_MAPPING, uint32_t)
|
||||
#define IPA_IOC_QUERY_RT_TBL_INDEX _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_QUERY_RT_TBL_INDEX, struct ipa_ioc_get_rt_tbl_indx *)
|
||||
#define IPA_IOC_WRITE_QMAPID _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_WRITE_QMAPID, struct ipa_ioc_write_qmapid *)
|
||||
#define IPA_IOC_MDFY_FLT_RULE _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_MDFY_FLT_RULE, struct ipa_ioc_mdfy_flt_rule *)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_IOC_MDFY_RT_RULE _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_MDFY_RT_RULE, struct ipa_ioc_mdfy_rt_rule *)
|
||||
#define IPA_IOC_NOTIFY_WAN_UPSTREAM_ROUTE_ADD _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_NOTIFY_WAN_UPSTREAM_ROUTE_ADD, struct ipa_wan_msg *)
|
||||
#define IPA_IOC_NOTIFY_WAN_UPSTREAM_ROUTE_DEL _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_NOTIFY_WAN_UPSTREAM_ROUTE_DEL, struct ipa_wan_msg *)
|
||||
#define IPA_IOC_NOTIFY_WAN_EMBMS_CONNECTED _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_NOTIFY_WAN_EMBMS_CONNECTED, struct ipa_wan_msg *)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IPA_IOC_ADD_HDR_PROC_CTX _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_ADD_HDR_PROC_CTX, struct ipa_ioc_add_hdr_proc_ctx *)
|
||||
#define IPA_IOC_DEL_HDR_PROC_CTX _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_DEL_HDR_PROC_CTX, struct ipa_ioc_del_hdr_proc_ctx *)
|
||||
#define IPA_IOC_GET_HW_VERSION _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_GET_HW_VERSION, enum ipa_hw_type *)
|
||||
#define TETH_BRIDGE_IOC_MAGIC 0xCE
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define TETH_BRIDGE_IOCTL_SET_BRIDGE_MODE 0
|
||||
#define TETH_BRIDGE_IOCTL_SET_AGGR_PARAMS 1
|
||||
#define TETH_BRIDGE_IOCTL_GET_AGGR_PARAMS 2
|
||||
#define TETH_BRIDGE_IOCTL_GET_AGGR_CAPABILITIES 3
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define TETH_BRIDGE_IOCTL_MAX 4
|
||||
enum teth_link_protocol_type {
|
||||
TETH_LINK_PROTOCOL_IP,
|
||||
TETH_LINK_PROTOCOL_ETHERNET,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
TETH_LINK_PROTOCOL_MAX,
|
||||
};
|
||||
enum teth_aggr_protocol_type {
|
||||
TETH_AGGR_PROTOCOL_NONE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
TETH_AGGR_PROTOCOL_MBIM,
|
||||
TETH_AGGR_PROTOCOL_TLP,
|
||||
TETH_AGGR_PROTOCOL_MAX,
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct teth_aggr_params_link {
|
||||
enum teth_aggr_protocol_type aggr_prot;
|
||||
uint32_t max_transfer_size_byte;
|
||||
uint32_t max_datagrams;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct teth_aggr_params {
|
||||
struct teth_aggr_params_link ul;
|
||||
struct teth_aggr_params_link dl;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct teth_aggr_capabilities {
|
||||
uint16_t num_protocols;
|
||||
struct teth_aggr_params_link prot_caps[0];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct teth_ioc_set_bridge_mode {
|
||||
enum teth_link_protocol_type link_protocol;
|
||||
uint16_t lcid;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct teth_ioc_aggr_params {
|
||||
struct teth_aggr_params aggr_params;
|
||||
uint16_t lcid;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define TETH_BRIDGE_IOC_SET_BRIDGE_MODE _IOW(TETH_BRIDGE_IOC_MAGIC, TETH_BRIDGE_IOCTL_SET_BRIDGE_MODE, struct teth_ioc_set_bridge_mode *)
|
||||
#define TETH_BRIDGE_IOC_SET_AGGR_PARAMS _IOW(TETH_BRIDGE_IOC_MAGIC, TETH_BRIDGE_IOCTL_SET_AGGR_PARAMS, struct teth_ioc_aggr_params *)
|
||||
#define TETH_BRIDGE_IOC_GET_AGGR_PARAMS _IOR(TETH_BRIDGE_IOC_MAGIC, TETH_BRIDGE_IOCTL_GET_AGGR_PARAMS, struct teth_ioc_aggr_params *)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define TETH_BRIDGE_IOC_GET_AGGR_CAPABILITIES _IOWR(TETH_BRIDGE_IOC_MAGIC, TETH_BRIDGE_IOCTL_GET_AGGR_CAPABILITIES, struct teth_aggr_capabilities *)
|
||||
#define ODU_BRIDGE_IOC_MAGIC 0xCD
|
||||
#define ODU_BRIDGE_IOCTL_SET_MODE 0
|
||||
#define ODU_BRIDGE_IOCTL_SET_LLV6_ADDR 1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ODU_BRIDGE_IOCTL_MAX 2
|
||||
enum odu_bridge_mode {
|
||||
ODU_BRIDGE_MODE_ROUTER,
|
||||
ODU_BRIDGE_MODE_BRIDGE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ODU_BRIDGE_MODE_MAX,
|
||||
};
|
||||
#define ODU_BRIDGE_IOC_SET_MODE _IOW(ODU_BRIDGE_IOC_MAGIC, ODU_BRIDGE_IOCTL_SET_MODE, enum odu_bridge_mode)
|
||||
#define ODU_BRIDGE_IOC_SET_LLV6_ADDR _IOW(ODU_BRIDGE_IOC_MAGIC, ODU_BRIDGE_IOCTL_SET_LLV6_ADDR, struct in6_addr *)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
|
||||
861
kernel-headers/linux/msm_kgsl.h
Normal file
861
kernel-headers/linux/msm_kgsl.h
Normal file
@@ -0,0 +1,861 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _MSM_KGSL_H
|
||||
#define _MSM_KGSL_H
|
||||
#include <linux/types.h>
|
||||
#include <linux/ioctl.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_VERSION_MAJOR 3
|
||||
#define KGSL_VERSION_MINOR 14
|
||||
#define KGSL_CONTEXT_SAVE_GMEM 0x00000001
|
||||
#define KGSL_CONTEXT_NO_GMEM_ALLOC 0x00000002
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_CONTEXT_SUBMIT_IB_LIST 0x00000004
|
||||
#define KGSL_CONTEXT_CTX_SWITCH 0x00000008
|
||||
#define KGSL_CONTEXT_PREAMBLE 0x00000010
|
||||
#define KGSL_CONTEXT_TRASH_STATE 0x00000020
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_CONTEXT_PER_CONTEXT_TS 0x00000040
|
||||
#define KGSL_CONTEXT_USER_GENERATED_TS 0x00000080
|
||||
#define KGSL_CONTEXT_END_OF_FRAME 0x00000100
|
||||
#define KGSL_CONTEXT_NO_FAULT_TOLERANCE 0x00000200
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_CONTEXT_SYNC 0x00000400
|
||||
#define KGSL_CONTEXT_PWR_CONSTRAINT 0x00000800
|
||||
#define KGSL_CONTEXT_PRIORITY_MASK 0x0000F000
|
||||
#define KGSL_CONTEXT_PRIORITY_SHIFT 12
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_CONTEXT_PRIORITY_UNDEF 0
|
||||
#define KGSL_CONTEXT_IFH_NOP 0x00010000
|
||||
#define KGSL_CONTEXT_SECURE 0x00020000
|
||||
#define KGSL_CONTEXT_NO_SNAPSHOT 0x00040000
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_CONTEXT_PREEMPT_STYLE_MASK 0x0E000000
|
||||
#define KGSL_CONTEXT_PREEMPT_STYLE_SHIFT 25
|
||||
#define KGSL_CONTEXT_PREEMPT_STYLE_DEFAULT 0x0
|
||||
#define KGSL_CONTEXT_PREEMPT_STYLE_RINGBUFFER 0x1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_CONTEXT_PREEMPT_STYLE_FINEGRAIN 0x2
|
||||
#define KGSL_CONTEXT_TYPE_MASK 0x01F00000
|
||||
#define KGSL_CONTEXT_TYPE_SHIFT 20
|
||||
#define KGSL_CONTEXT_TYPE_ANY 0
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_CONTEXT_TYPE_GL 1
|
||||
#define KGSL_CONTEXT_TYPE_CL 2
|
||||
#define KGSL_CONTEXT_TYPE_C2D 3
|
||||
#define KGSL_CONTEXT_TYPE_RS 4
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_CONTEXT_TYPE_UNKNOWN 0x1E
|
||||
#define KGSL_CONTEXT_INVALID 0xffffffff
|
||||
#define KGSL_CMDBATCH_MEMLIST 0x00000001
|
||||
#define KGSL_CMDBATCH_MARKER 0x00000002
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_CMDBATCH_SUBMIT_IB_LIST KGSL_CONTEXT_SUBMIT_IB_LIST
|
||||
#define KGSL_CMDBATCH_CTX_SWITCH KGSL_CONTEXT_CTX_SWITCH
|
||||
#define KGSL_CMDBATCH_PROFILING 0x00000010
|
||||
#define KGSL_CMDBATCH_PROFILING_KTIME 0x00000020
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_CMDBATCH_END_OF_FRAME KGSL_CONTEXT_END_OF_FRAME
|
||||
#define KGSL_CMDBATCH_SYNC KGSL_CONTEXT_SYNC
|
||||
#define KGSL_CMDBATCH_PWR_CONSTRAINT KGSL_CONTEXT_PWR_CONSTRAINT
|
||||
#define KGSL_CMDLIST_IB 0x00000001U
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_CMDLIST_CTXTSWITCH_PREAMBLE 0x00000002U
|
||||
#define KGSL_CMDLIST_IB_PREAMBLE 0x00000004U
|
||||
#define KGSL_OBJLIST_MEMOBJ 0x00000008U
|
||||
#define KGSL_OBJLIST_PROFILE 0x00000010U
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_CMD_SYNCPOINT_TYPE_TIMESTAMP 0
|
||||
#define KGSL_CMD_SYNCPOINT_TYPE_FENCE 1
|
||||
#define KGSL_MEMFLAGS_SECURE 0x00000008ULL
|
||||
#define KGSL_MEMFLAGS_GPUREADONLY 0x01000000U
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_MEMFLAGS_GPUWRITEONLY 0x02000000U
|
||||
#define KGSL_MEMFLAGS_FORCE_32BIT 0x100000000ULL
|
||||
#define KGSL_CACHEMODE_MASK 0x0C000000U
|
||||
#define KGSL_CACHEMODE_SHIFT 26
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_CACHEMODE_WRITECOMBINE 0
|
||||
#define KGSL_CACHEMODE_UNCACHED 1
|
||||
#define KGSL_CACHEMODE_WRITETHROUGH 2
|
||||
#define KGSL_CACHEMODE_WRITEBACK 3
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_MEMFLAGS_USE_CPU_MAP 0x10000000ULL
|
||||
#define KGSL_MEMTYPE_MASK 0x0000FF00
|
||||
#define KGSL_MEMTYPE_SHIFT 8
|
||||
#define KGSL_MEMTYPE_OBJECTANY 0
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_MEMTYPE_FRAMEBUFFER 1
|
||||
#define KGSL_MEMTYPE_RENDERBUFFER 2
|
||||
#define KGSL_MEMTYPE_ARRAYBUFFER 3
|
||||
#define KGSL_MEMTYPE_ELEMENTARRAYBUFFER 4
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_MEMTYPE_VERTEXARRAYBUFFER 5
|
||||
#define KGSL_MEMTYPE_TEXTURE 6
|
||||
#define KGSL_MEMTYPE_SURFACE 7
|
||||
#define KGSL_MEMTYPE_EGL_SURFACE 8
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_MEMTYPE_GL 9
|
||||
#define KGSL_MEMTYPE_CL 10
|
||||
#define KGSL_MEMTYPE_CL_BUFFER_MAP 11
|
||||
#define KGSL_MEMTYPE_CL_BUFFER_NOMAP 12
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_MEMTYPE_CL_IMAGE_MAP 13
|
||||
#define KGSL_MEMTYPE_CL_IMAGE_NOMAP 14
|
||||
#define KGSL_MEMTYPE_CL_KERNEL_STACK 15
|
||||
#define KGSL_MEMTYPE_COMMAND 16
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_MEMTYPE_2D 17
|
||||
#define KGSL_MEMTYPE_EGL_IMAGE 18
|
||||
#define KGSL_MEMTYPE_EGL_SHADOW 19
|
||||
#define KGSL_MEMTYPE_MULTISAMPLE 20
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_MEMTYPE_KERNEL 255
|
||||
#define KGSL_MEMALIGN_MASK 0x00FF0000
|
||||
#define KGSL_MEMALIGN_SHIFT 16
|
||||
enum kgsl_user_mem_type {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
KGSL_USER_MEM_TYPE_PMEM = 0x00000000,
|
||||
KGSL_USER_MEM_TYPE_ASHMEM = 0x00000001,
|
||||
KGSL_USER_MEM_TYPE_ADDR = 0x00000002,
|
||||
KGSL_USER_MEM_TYPE_ION = 0x00000003,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
KGSL_USER_MEM_TYPE_DMABUF = 0x00000003,
|
||||
KGSL_USER_MEM_TYPE_MAX = 0x00000007,
|
||||
};
|
||||
#define KGSL_MEMFLAGS_USERMEM_MASK 0x000000e0
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_MEMFLAGS_USERMEM_SHIFT 5
|
||||
#define KGSL_USERMEM_FLAG(x) (((x) + 1) << KGSL_MEMFLAGS_USERMEM_SHIFT)
|
||||
#define KGSL_MEMFLAGS_NOT_USERMEM 0
|
||||
#define KGSL_MEMFLAGS_USERMEM_PMEM KGSL_USERMEM_FLAG(KGSL_USER_MEM_TYPE_PMEM)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_MEMFLAGS_USERMEM_ASHMEM KGSL_USERMEM_FLAG(KGSL_USER_MEM_TYPE_ASHMEM)
|
||||
#define KGSL_MEMFLAGS_USERMEM_ADDR KGSL_USERMEM_FLAG(KGSL_USER_MEM_TYPE_ADDR)
|
||||
#define KGSL_MEMFLAGS_USERMEM_ION KGSL_USERMEM_FLAG(KGSL_USER_MEM_TYPE_ION)
|
||||
#define KGSL_FLAGS_NORMALMODE 0x00000000
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_FLAGS_SAFEMODE 0x00000001
|
||||
#define KGSL_FLAGS_INITIALIZED0 0x00000002
|
||||
#define KGSL_FLAGS_INITIALIZED 0x00000004
|
||||
#define KGSL_FLAGS_STARTED 0x00000008
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_FLAGS_ACTIVE 0x00000010
|
||||
#define KGSL_FLAGS_RESERVED0 0x00000020
|
||||
#define KGSL_FLAGS_RESERVED1 0x00000040
|
||||
#define KGSL_FLAGS_RESERVED2 0x00000080
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_FLAGS_SOFT_RESET 0x00000100
|
||||
#define KGSL_FLAGS_PER_CONTEXT_TIMESTAMPS 0x00000200
|
||||
#define KGSL_SYNCOBJ_SERVER_TIMEOUT 2000
|
||||
enum kgsl_ctx_reset_stat {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
KGSL_CTX_STAT_NO_ERROR = 0x00000000,
|
||||
KGSL_CTX_STAT_GUILTY_CONTEXT_RESET_EXT = 0x00000001,
|
||||
KGSL_CTX_STAT_INNOCENT_CONTEXT_RESET_EXT = 0x00000002,
|
||||
KGSL_CTX_STAT_UNKNOWN_CONTEXT_RESET_EXT = 0x00000003
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define KGSL_CONVERT_TO_MBPS(val) (val * 1000 * 1000U)
|
||||
enum kgsl_deviceid {
|
||||
KGSL_DEVICE_3D0 = 0x00000000,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
KGSL_DEVICE_MAX
|
||||
};
|
||||
struct kgsl_devinfo {
|
||||
unsigned int device_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int chip_id;
|
||||
unsigned int mmu_enabled;
|
||||
unsigned long gmem_gpubaseaddr;
|
||||
unsigned int gpu_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
size_t gmem_sizebytes;
|
||||
};
|
||||
struct kgsl_devmemstore {
|
||||
__volatile__ unsigned int soptimestamp;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int sbz;
|
||||
__volatile__ unsigned int eoptimestamp;
|
||||
unsigned int sbz2;
|
||||
__volatile__ unsigned int preempted;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int sbz3;
|
||||
__volatile__ unsigned int ref_wait_ts;
|
||||
unsigned int sbz4;
|
||||
unsigned int current_context;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int sbz5;
|
||||
};
|
||||
#define KGSL_MEMSTORE_OFFSET(ctxt_id,field) ((ctxt_id) * sizeof(struct kgsl_devmemstore) + offsetof(struct kgsl_devmemstore, field))
|
||||
enum kgsl_timestamp_type {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
KGSL_TIMESTAMP_CONSUMED = 0x00000001,
|
||||
KGSL_TIMESTAMP_RETIRED = 0x00000002,
|
||||
KGSL_TIMESTAMP_QUEUED = 0x00000003,
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_PROP_DEVICE_INFO 0x1
|
||||
#define KGSL_PROP_DEVICE_SHADOW 0x2
|
||||
#define KGSL_PROP_DEVICE_POWER 0x3
|
||||
#define KGSL_PROP_SHMEM 0x4
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_PROP_SHMEM_APERTURES 0x5
|
||||
#define KGSL_PROP_MMU_ENABLE 0x6
|
||||
#define KGSL_PROP_INTERRUPT_WAITS 0x7
|
||||
#define KGSL_PROP_VERSION 0x8
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_PROP_GPU_RESET_STAT 0x9
|
||||
#define KGSL_PROP_PWRCTRL 0xE
|
||||
#define KGSL_PROP_PWR_CONSTRAINT 0x12
|
||||
#define KGSL_PROP_UCHE_GMEM_VADDR 0x13
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_PROP_SP_GENERIC_MEM 0x14
|
||||
#define KGSL_PROP_UCODE_VERSION 0x15
|
||||
#define KGSL_PROP_GPMU_VERSION 0x16
|
||||
#define KGSL_PROP_HIGHEST_BANK_BIT 0x17
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_PROP_DEVICE_BITNESS 0x18
|
||||
struct kgsl_shadowprop {
|
||||
unsigned long gpuaddr;
|
||||
size_t size;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int flags;
|
||||
};
|
||||
struct kgsl_version {
|
||||
unsigned int drv_major;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int drv_minor;
|
||||
unsigned int dev_major;
|
||||
unsigned int dev_minor;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct kgsl_sp_generic_mem {
|
||||
uint64_t local;
|
||||
uint64_t pvt;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct kgsl_ucode_version {
|
||||
unsigned int pfp;
|
||||
unsigned int pm4;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct kgsl_gpmu_version {
|
||||
unsigned int major;
|
||||
unsigned int minor;
|
||||
unsigned int features;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define KGSL_PERFCOUNTER_GROUP_CP 0x0
|
||||
#define KGSL_PERFCOUNTER_GROUP_RBBM 0x1
|
||||
#define KGSL_PERFCOUNTER_GROUP_PC 0x2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_PERFCOUNTER_GROUP_VFD 0x3
|
||||
#define KGSL_PERFCOUNTER_GROUP_HLSQ 0x4
|
||||
#define KGSL_PERFCOUNTER_GROUP_VPC 0x5
|
||||
#define KGSL_PERFCOUNTER_GROUP_TSE 0x6
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_PERFCOUNTER_GROUP_RAS 0x7
|
||||
#define KGSL_PERFCOUNTER_GROUP_UCHE 0x8
|
||||
#define KGSL_PERFCOUNTER_GROUP_TP 0x9
|
||||
#define KGSL_PERFCOUNTER_GROUP_SP 0xA
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_PERFCOUNTER_GROUP_RB 0xB
|
||||
#define KGSL_PERFCOUNTER_GROUP_PWR 0xC
|
||||
#define KGSL_PERFCOUNTER_GROUP_VBIF 0xD
|
||||
#define KGSL_PERFCOUNTER_GROUP_VBIF_PWR 0xE
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_PERFCOUNTER_GROUP_MH 0xF
|
||||
#define KGSL_PERFCOUNTER_GROUP_PA_SU 0x10
|
||||
#define KGSL_PERFCOUNTER_GROUP_SQ 0x11
|
||||
#define KGSL_PERFCOUNTER_GROUP_SX 0x12
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_PERFCOUNTER_GROUP_TCF 0x13
|
||||
#define KGSL_PERFCOUNTER_GROUP_TCM 0x14
|
||||
#define KGSL_PERFCOUNTER_GROUP_TCR 0x15
|
||||
#define KGSL_PERFCOUNTER_GROUP_L2 0x16
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_PERFCOUNTER_GROUP_VSC 0x17
|
||||
#define KGSL_PERFCOUNTER_GROUP_CCU 0x18
|
||||
#define KGSL_PERFCOUNTER_GROUP_LRZ 0x19
|
||||
#define KGSL_PERFCOUNTER_GROUP_CMP 0x1A
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_PERFCOUNTER_GROUP_ALWAYSON 0x1B
|
||||
#define KGSL_PERFCOUNTER_GROUP_SP_PWR 0x1C
|
||||
#define KGSL_PERFCOUNTER_GROUP_TP_PWR 0x1D
|
||||
#define KGSL_PERFCOUNTER_GROUP_RB_PWR 0x1E
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_PERFCOUNTER_GROUP_CCU_PWR 0x1F
|
||||
#define KGSL_PERFCOUNTER_GROUP_UCHE_PWR 0x20
|
||||
#define KGSL_PERFCOUNTER_GROUP_CP_PWR 0x21
|
||||
#define KGSL_PERFCOUNTER_GROUP_GPMU_PWR 0x22
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_PERFCOUNTER_GROUP_ALWAYSON_PWR 0x23
|
||||
#define KGSL_PERFCOUNTER_GROUP_MAX 0x24
|
||||
#define KGSL_PERFCOUNTER_NOT_USED 0xFFFFFFFF
|
||||
#define KGSL_PERFCOUNTER_BROKEN 0xFFFFFFFE
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct kgsl_ibdesc {
|
||||
unsigned long gpuaddr;
|
||||
unsigned long __pad;
|
||||
size_t sizedwords;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int ctrl;
|
||||
};
|
||||
struct kgsl_cmdbatch_profiling_buffer {
|
||||
uint64_t wall_clock_s;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint64_t wall_clock_ns;
|
||||
uint64_t gpu_ticks_queued;
|
||||
uint64_t gpu_ticks_submitted;
|
||||
uint64_t gpu_ticks_retired;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define KGSL_IOC_TYPE 0x09
|
||||
struct kgsl_device_getproperty {
|
||||
unsigned int type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
void * value;
|
||||
size_t sizebytes;
|
||||
};
|
||||
#define IOCTL_KGSL_DEVICE_GETPROPERTY _IOWR(KGSL_IOC_TYPE, 0x2, struct kgsl_device_getproperty)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct kgsl_device_waittimestamp {
|
||||
unsigned int timestamp;
|
||||
unsigned int timeout;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IOCTL_KGSL_DEVICE_WAITTIMESTAMP _IOW(KGSL_IOC_TYPE, 0x6, struct kgsl_device_waittimestamp)
|
||||
struct kgsl_device_waittimestamp_ctxtid {
|
||||
unsigned int context_id;
|
||||
unsigned int timestamp;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int timeout;
|
||||
};
|
||||
#define IOCTL_KGSL_DEVICE_WAITTIMESTAMP_CTXTID _IOW(KGSL_IOC_TYPE, 0x7, struct kgsl_device_waittimestamp_ctxtid)
|
||||
struct kgsl_ringbuffer_issueibcmds {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int drawctxt_id;
|
||||
unsigned long ibdesc_addr;
|
||||
unsigned int numibs;
|
||||
unsigned int timestamp;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int flags;
|
||||
};
|
||||
#define IOCTL_KGSL_RINGBUFFER_ISSUEIBCMDS _IOWR(KGSL_IOC_TYPE, 0x10, struct kgsl_ringbuffer_issueibcmds)
|
||||
struct kgsl_cmdstream_readtimestamp {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int type;
|
||||
unsigned int timestamp;
|
||||
};
|
||||
#define IOCTL_KGSL_CMDSTREAM_READTIMESTAMP_OLD _IOR(KGSL_IOC_TYPE, 0x11, struct kgsl_cmdstream_readtimestamp)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IOCTL_KGSL_CMDSTREAM_READTIMESTAMP _IOWR(KGSL_IOC_TYPE, 0x11, struct kgsl_cmdstream_readtimestamp)
|
||||
struct kgsl_cmdstream_freememontimestamp {
|
||||
unsigned long gpuaddr;
|
||||
unsigned int type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int timestamp;
|
||||
};
|
||||
#define IOCTL_KGSL_CMDSTREAM_FREEMEMONTIMESTAMP _IOW(KGSL_IOC_TYPE, 0x12, struct kgsl_cmdstream_freememontimestamp)
|
||||
#define IOCTL_KGSL_CMDSTREAM_FREEMEMONTIMESTAMP_OLD _IOR(KGSL_IOC_TYPE, 0x12, struct kgsl_cmdstream_freememontimestamp)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct kgsl_drawctxt_create {
|
||||
unsigned int flags;
|
||||
unsigned int drawctxt_id;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IOCTL_KGSL_DRAWCTXT_CREATE _IOWR(KGSL_IOC_TYPE, 0x13, struct kgsl_drawctxt_create)
|
||||
struct kgsl_drawctxt_destroy {
|
||||
unsigned int drawctxt_id;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IOCTL_KGSL_DRAWCTXT_DESTROY _IOW(KGSL_IOC_TYPE, 0x14, struct kgsl_drawctxt_destroy)
|
||||
struct kgsl_map_user_mem {
|
||||
int fd;
|
||||
unsigned long gpuaddr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
size_t len;
|
||||
size_t offset;
|
||||
unsigned long hostptr;
|
||||
enum kgsl_user_mem_type memtype;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int flags;
|
||||
};
|
||||
#define IOCTL_KGSL_MAP_USER_MEM _IOWR(KGSL_IOC_TYPE, 0x15, struct kgsl_map_user_mem)
|
||||
struct kgsl_cmdstream_readtimestamp_ctxtid {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int context_id;
|
||||
unsigned int type;
|
||||
unsigned int timestamp;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IOCTL_KGSL_CMDSTREAM_READTIMESTAMP_CTXTID _IOWR(KGSL_IOC_TYPE, 0x16, struct kgsl_cmdstream_readtimestamp_ctxtid)
|
||||
struct kgsl_cmdstream_freememontimestamp_ctxtid {
|
||||
unsigned int context_id;
|
||||
unsigned long gpuaddr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int type;
|
||||
unsigned int timestamp;
|
||||
};
|
||||
#define IOCTL_KGSL_CMDSTREAM_FREEMEMONTIMESTAMP_CTXTID _IOW(KGSL_IOC_TYPE, 0x17, struct kgsl_cmdstream_freememontimestamp_ctxtid)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct kgsl_sharedmem_from_pmem {
|
||||
int pmem_fd;
|
||||
unsigned long gpuaddr;
|
||||
unsigned int len;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int offset;
|
||||
};
|
||||
#define IOCTL_KGSL_SHAREDMEM_FROM_PMEM _IOWR(KGSL_IOC_TYPE, 0x20, struct kgsl_sharedmem_from_pmem)
|
||||
struct kgsl_sharedmem_free {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long gpuaddr;
|
||||
};
|
||||
#define IOCTL_KGSL_SHAREDMEM_FREE _IOW(KGSL_IOC_TYPE, 0x21, struct kgsl_sharedmem_free)
|
||||
struct kgsl_cff_user_event {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned char cff_opcode;
|
||||
unsigned int op1;
|
||||
unsigned int op2;
|
||||
unsigned int op3;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int op4;
|
||||
unsigned int op5;
|
||||
unsigned int __pad[2];
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IOCTL_KGSL_CFF_USER_EVENT _IOW(KGSL_IOC_TYPE, 0x31, struct kgsl_cff_user_event)
|
||||
struct kgsl_gmem_desc {
|
||||
unsigned int x;
|
||||
unsigned int y;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int width;
|
||||
unsigned int height;
|
||||
unsigned int pitch;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct kgsl_buffer_desc {
|
||||
void * hostptr;
|
||||
unsigned long gpuaddr;
|
||||
int size;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int format;
|
||||
unsigned int pitch;
|
||||
unsigned int enabled;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct kgsl_bind_gmem_shadow {
|
||||
unsigned int drawctxt_id;
|
||||
struct kgsl_gmem_desc gmem_desc;
|
||||
unsigned int shadow_x;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int shadow_y;
|
||||
struct kgsl_buffer_desc shadow_buffer;
|
||||
unsigned int buffer_id;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IOCTL_KGSL_DRAWCTXT_BIND_GMEM_SHADOW _IOW(KGSL_IOC_TYPE, 0x22, struct kgsl_bind_gmem_shadow)
|
||||
struct kgsl_sharedmem_from_vmalloc {
|
||||
unsigned long gpuaddr;
|
||||
unsigned int hostptr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int flags;
|
||||
};
|
||||
#define IOCTL_KGSL_SHAREDMEM_FROM_VMALLOC _IOWR(KGSL_IOC_TYPE, 0x23, struct kgsl_sharedmem_from_vmalloc)
|
||||
#define IOCTL_KGSL_SHAREDMEM_FLUSH_CACHE _IOW(KGSL_IOC_TYPE, 0x24, struct kgsl_sharedmem_free)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct kgsl_drawctxt_set_bin_base_offset {
|
||||
unsigned int drawctxt_id;
|
||||
unsigned int offset;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IOCTL_KGSL_DRAWCTXT_SET_BIN_BASE_OFFSET _IOW(KGSL_IOC_TYPE, 0x25, struct kgsl_drawctxt_set_bin_base_offset)
|
||||
enum kgsl_cmdwindow_type {
|
||||
KGSL_CMDWINDOW_MIN = 0x00000000,
|
||||
KGSL_CMDWINDOW_2D = 0x00000000,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
KGSL_CMDWINDOW_3D = 0x00000001,
|
||||
KGSL_CMDWINDOW_MMU = 0x00000002,
|
||||
KGSL_CMDWINDOW_ARBITER = 0x000000FF,
|
||||
KGSL_CMDWINDOW_MAX = 0x000000FF,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct kgsl_cmdwindow_write {
|
||||
enum kgsl_cmdwindow_type target;
|
||||
unsigned int addr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int data;
|
||||
};
|
||||
#define IOCTL_KGSL_CMDWINDOW_WRITE _IOW(KGSL_IOC_TYPE, 0x2e, struct kgsl_cmdwindow_write)
|
||||
struct kgsl_gpumem_alloc {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long gpuaddr;
|
||||
size_t size;
|
||||
unsigned int flags;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IOCTL_KGSL_GPUMEM_ALLOC _IOWR(KGSL_IOC_TYPE, 0x2f, struct kgsl_gpumem_alloc)
|
||||
struct kgsl_cff_syncmem {
|
||||
unsigned long gpuaddr;
|
||||
size_t len;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int __pad[2];
|
||||
};
|
||||
#define IOCTL_KGSL_CFF_SYNCMEM _IOW(KGSL_IOC_TYPE, 0x30, struct kgsl_cff_syncmem)
|
||||
struct kgsl_timestamp_event {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int type;
|
||||
unsigned int timestamp;
|
||||
unsigned int context_id;
|
||||
void * priv;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
size_t len;
|
||||
};
|
||||
#define IOCTL_KGSL_TIMESTAMP_EVENT_OLD _IOW(KGSL_IOC_TYPE, 0x31, struct kgsl_timestamp_event)
|
||||
#define KGSL_TIMESTAMP_EVENT_GENLOCK 1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct kgsl_timestamp_event_genlock {
|
||||
int handle;
|
||||
};
|
||||
#define KGSL_TIMESTAMP_EVENT_FENCE 2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct kgsl_timestamp_event_fence {
|
||||
int fence_fd;
|
||||
};
|
||||
#define IOCTL_KGSL_SETPROPERTY _IOW(KGSL_IOC_TYPE, 0x32, struct kgsl_device_getproperty)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IOCTL_KGSL_TIMESTAMP_EVENT _IOWR(KGSL_IOC_TYPE, 0x33, struct kgsl_timestamp_event)
|
||||
struct kgsl_gpumem_alloc_id {
|
||||
unsigned int id;
|
||||
unsigned int flags;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
size_t size;
|
||||
size_t mmapsize;
|
||||
unsigned long gpuaddr;
|
||||
unsigned long __pad[2];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define IOCTL_KGSL_GPUMEM_ALLOC_ID _IOWR(KGSL_IOC_TYPE, 0x34, struct kgsl_gpumem_alloc_id)
|
||||
struct kgsl_gpumem_free_id {
|
||||
unsigned int id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int __pad;
|
||||
};
|
||||
#define IOCTL_KGSL_GPUMEM_FREE_ID _IOWR(KGSL_IOC_TYPE, 0x35, struct kgsl_gpumem_free_id)
|
||||
struct kgsl_gpumem_get_info {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long gpuaddr;
|
||||
unsigned int id;
|
||||
unsigned int flags;
|
||||
size_t size;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
size_t mmapsize;
|
||||
unsigned long useraddr;
|
||||
unsigned long __pad[4];
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IOCTL_KGSL_GPUMEM_GET_INFO _IOWR(KGSL_IOC_TYPE, 0x36, struct kgsl_gpumem_get_info)
|
||||
struct kgsl_gpumem_sync_cache {
|
||||
unsigned long gpuaddr;
|
||||
unsigned int id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int op;
|
||||
size_t offset;
|
||||
size_t length;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_GPUMEM_CACHE_CLEAN (1 << 0)
|
||||
#define KGSL_GPUMEM_CACHE_TO_GPU KGSL_GPUMEM_CACHE_CLEAN
|
||||
#define KGSL_GPUMEM_CACHE_INV (1 << 1)
|
||||
#define KGSL_GPUMEM_CACHE_FROM_GPU KGSL_GPUMEM_CACHE_INV
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_GPUMEM_CACHE_FLUSH (KGSL_GPUMEM_CACHE_CLEAN | KGSL_GPUMEM_CACHE_INV)
|
||||
#define KGSL_GPUMEM_CACHE_RANGE (1 << 31U)
|
||||
#define IOCTL_KGSL_GPUMEM_SYNC_CACHE _IOW(KGSL_IOC_TYPE, 0x37, struct kgsl_gpumem_sync_cache)
|
||||
struct kgsl_perfcounter_get {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int groupid;
|
||||
unsigned int countable;
|
||||
unsigned int offset;
|
||||
unsigned int offset_hi;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int __pad;
|
||||
};
|
||||
#define IOCTL_KGSL_PERFCOUNTER_GET _IOWR(KGSL_IOC_TYPE, 0x38, struct kgsl_perfcounter_get)
|
||||
struct kgsl_perfcounter_put {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int groupid;
|
||||
unsigned int countable;
|
||||
unsigned int __pad[2];
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IOCTL_KGSL_PERFCOUNTER_PUT _IOW(KGSL_IOC_TYPE, 0x39, struct kgsl_perfcounter_put)
|
||||
struct kgsl_perfcounter_query {
|
||||
unsigned int groupid;
|
||||
unsigned int * countables;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int count;
|
||||
unsigned int max_counters;
|
||||
unsigned int __pad[2];
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IOCTL_KGSL_PERFCOUNTER_QUERY _IOWR(KGSL_IOC_TYPE, 0x3A, struct kgsl_perfcounter_query)
|
||||
struct kgsl_perfcounter_read_group {
|
||||
unsigned int groupid;
|
||||
unsigned int countable;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long long value;
|
||||
};
|
||||
struct kgsl_perfcounter_read {
|
||||
struct kgsl_perfcounter_read_group * reads;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int count;
|
||||
unsigned int __pad[2];
|
||||
};
|
||||
#define IOCTL_KGSL_PERFCOUNTER_READ _IOWR(KGSL_IOC_TYPE, 0x3B, struct kgsl_perfcounter_read)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct kgsl_gpumem_sync_cache_bulk {
|
||||
unsigned int * id_list;
|
||||
unsigned int count;
|
||||
unsigned int op;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int __pad[2];
|
||||
};
|
||||
#define IOCTL_KGSL_GPUMEM_SYNC_CACHE_BULK _IOWR(KGSL_IOC_TYPE, 0x3C, struct kgsl_gpumem_sync_cache_bulk)
|
||||
struct kgsl_cmd_syncpoint_timestamp {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int context_id;
|
||||
unsigned int timestamp;
|
||||
};
|
||||
struct kgsl_cmd_syncpoint_fence {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int fd;
|
||||
};
|
||||
struct kgsl_cmd_syncpoint {
|
||||
int type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
void * priv;
|
||||
size_t size;
|
||||
};
|
||||
#define KGSL_IBDESC_MEMLIST 0x1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_IBDESC_PROFILING_BUFFER 0x2
|
||||
struct kgsl_submit_commands {
|
||||
unsigned int context_id;
|
||||
unsigned int flags;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct kgsl_ibdesc * cmdlist;
|
||||
unsigned int numcmds;
|
||||
struct kgsl_cmd_syncpoint * synclist;
|
||||
unsigned int numsyncs;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int timestamp;
|
||||
unsigned int __pad[4];
|
||||
};
|
||||
#define IOCTL_KGSL_SUBMIT_COMMANDS _IOWR(KGSL_IOC_TYPE, 0x3D, struct kgsl_submit_commands)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct kgsl_device_constraint {
|
||||
unsigned int type;
|
||||
unsigned int context_id;
|
||||
void * data;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
size_t size;
|
||||
};
|
||||
#define KGSL_CONSTRAINT_NONE 0
|
||||
#define KGSL_CONSTRAINT_PWRLEVEL 1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_CONSTRAINT_PWR_MIN 0
|
||||
#define KGSL_CONSTRAINT_PWR_MAX 1
|
||||
struct kgsl_device_constraint_pwrlevel {
|
||||
unsigned int level;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct kgsl_syncsource_create {
|
||||
unsigned int id;
|
||||
unsigned int __pad[3];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define IOCTL_KGSL_SYNCSOURCE_CREATE _IOWR(KGSL_IOC_TYPE, 0x40, struct kgsl_syncsource_create)
|
||||
struct kgsl_syncsource_destroy {
|
||||
unsigned int id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int __pad[3];
|
||||
};
|
||||
#define IOCTL_KGSL_SYNCSOURCE_DESTROY _IOWR(KGSL_IOC_TYPE, 0x41, struct kgsl_syncsource_destroy)
|
||||
struct kgsl_syncsource_create_fence {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int id;
|
||||
int fence_fd;
|
||||
unsigned int __pad[4];
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IOCTL_KGSL_SYNCSOURCE_CREATE_FENCE _IOWR(KGSL_IOC_TYPE, 0x42, struct kgsl_syncsource_create_fence)
|
||||
struct kgsl_syncsource_signal_fence {
|
||||
unsigned int id;
|
||||
int fence_fd;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int __pad[4];
|
||||
};
|
||||
#define IOCTL_KGSL_SYNCSOURCE_SIGNAL_FENCE _IOWR(KGSL_IOC_TYPE, 0x43, struct kgsl_syncsource_signal_fence)
|
||||
struct kgsl_cff_sync_gpuobj {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint64_t offset;
|
||||
uint64_t length;
|
||||
unsigned int id;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IOCTL_KGSL_CFF_SYNC_GPUOBJ _IOW(KGSL_IOC_TYPE, 0x44, struct kgsl_cff_sync_gpuobj)
|
||||
struct kgsl_gpuobj_alloc {
|
||||
uint64_t size;
|
||||
uint64_t flags;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint64_t va_len;
|
||||
uint64_t mmapsize;
|
||||
unsigned int id;
|
||||
unsigned int metadata_len;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint64_t metadata;
|
||||
};
|
||||
#define KGSL_GPUOBJ_ALLOC_METADATA_MAX 64
|
||||
#define IOCTL_KGSL_GPUOBJ_ALLOC _IOWR(KGSL_IOC_TYPE, 0x45, struct kgsl_gpuobj_alloc)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct kgsl_gpuobj_free {
|
||||
uint64_t flags;
|
||||
uint64_t priv;
|
||||
unsigned int id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int type;
|
||||
unsigned int len;
|
||||
};
|
||||
#define KGSL_GPUOBJ_FREE_ON_EVENT 1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_GPU_EVENT_TIMESTAMP 1
|
||||
#define KGSL_GPU_EVENT_FENCE 2
|
||||
struct kgsl_gpu_event_timestamp {
|
||||
unsigned int context_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int timestamp;
|
||||
};
|
||||
struct kgsl_gpu_event_fence {
|
||||
int fd;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define IOCTL_KGSL_GPUOBJ_FREE _IOW(KGSL_IOC_TYPE, 0x46, struct kgsl_gpuobj_free)
|
||||
struct kgsl_gpuobj_info {
|
||||
uint64_t gpuaddr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint64_t flags;
|
||||
uint64_t size;
|
||||
uint64_t va_len;
|
||||
uint64_t va_addr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int id;
|
||||
};
|
||||
#define IOCTL_KGSL_GPUOBJ_INFO _IOWR(KGSL_IOC_TYPE, 0x47, struct kgsl_gpuobj_info)
|
||||
struct kgsl_gpuobj_import {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint64_t priv;
|
||||
uint64_t priv_len;
|
||||
uint64_t flags;
|
||||
unsigned int type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int id;
|
||||
};
|
||||
struct kgsl_gpuobj_import_dma_buf {
|
||||
int fd;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct kgsl_gpuobj_import_useraddr {
|
||||
uint64_t virtaddr;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IOCTL_KGSL_GPUOBJ_IMPORT _IOWR(KGSL_IOC_TYPE, 0x48, struct kgsl_gpuobj_import)
|
||||
struct kgsl_gpuobj_sync_obj {
|
||||
uint64_t offset;
|
||||
uint64_t length;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int id;
|
||||
unsigned int op;
|
||||
};
|
||||
struct kgsl_gpuobj_sync {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint64_t objs;
|
||||
unsigned int obj_len;
|
||||
unsigned int count;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IOCTL_KGSL_GPUOBJ_SYNC _IOW(KGSL_IOC_TYPE, 0x49, struct kgsl_gpuobj_sync)
|
||||
struct kgsl_command_object {
|
||||
uint64_t offset;
|
||||
uint64_t gpuaddr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint64_t size;
|
||||
unsigned int flags;
|
||||
unsigned int id;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct kgsl_command_syncpoint {
|
||||
uint64_t priv;
|
||||
uint64_t size;
|
||||
unsigned int type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct kgsl_gpu_command {
|
||||
uint64_t flags;
|
||||
uint64_t cmdlist;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int cmdsize;
|
||||
unsigned int numcmds;
|
||||
uint64_t objlist;
|
||||
unsigned int objsize;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int numobjs;
|
||||
uint64_t synclist;
|
||||
unsigned int syncsize;
|
||||
unsigned int numsyncs;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int context_id;
|
||||
unsigned int timestamp;
|
||||
};
|
||||
#define IOCTL_KGSL_GPU_COMMAND _IOWR(KGSL_IOC_TYPE, 0x4A, struct kgsl_gpu_command)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct kgsl_preemption_counters_query {
|
||||
uint64_t counters;
|
||||
unsigned int size_user;
|
||||
unsigned int size_priority_level;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int max_priority_level;
|
||||
};
|
||||
#define IOCTL_KGSL_PREEMPTIONCOUNTER_QUERY _IOWR(KGSL_IOC_TYPE, 0x4B, struct kgsl_preemption_counters_query)
|
||||
#define KGSL_GPUOBJ_SET_INFO_METADATA (1 << 0)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define KGSL_GPUOBJ_SET_INFO_TYPE (1 << 1)
|
||||
struct kgsl_gpuobj_set_info {
|
||||
uint64_t flags;
|
||||
uint64_t metadata;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int id;
|
||||
unsigned int metadata_len;
|
||||
unsigned int type;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IOCTL_KGSL_GPUOBJ_SET_INFO _IOW(KGSL_IOC_TYPE, 0x4C, struct kgsl_gpuobj_set_info)
|
||||
#endif
|
||||
|
||||
1421
kernel-headers/linux/msm_mdp.h
Normal file
1421
kernel-headers/linux/msm_mdp.h
Normal file
File diff suppressed because it is too large
Load Diff
270
kernel-headers/linux/msm_mdp_ext.h
Normal file
270
kernel-headers/linux/msm_mdp_ext.h
Normal file
@@ -0,0 +1,270 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _MSM_MDP_EXT_H_
|
||||
#define _MSM_MDP_EXT_H_
|
||||
#include <linux/msm_mdp.h>
|
||||
#define MDP_IOCTL_MAGIC 'S'
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSMFB_ATOMIC_COMMIT _IOWR(MDP_IOCTL_MAGIC, 128, void *)
|
||||
#define MSMFB_ASYNC_POSITION_UPDATE _IOWR(MDP_IOCTL_MAGIC, 129, struct mdp_position_update)
|
||||
#define MSMFB_MDP_SET_CFG _IOW(MDP_IOCTL_MAGIC, 130, struct mdp_set_cfg)
|
||||
#ifdef __LP64
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MDP_LAYER_COMMIT_V1_PAD 3
|
||||
#else
|
||||
#define MDP_LAYER_COMMIT_V1_PAD 4
|
||||
#endif
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MDP_LAYER_FLIP_LR 0x1
|
||||
#define MDP_LAYER_FLIP_UD 0x2
|
||||
#define MDP_LAYER_ENABLE_PIXEL_EXT 0x4
|
||||
#define MDP_LAYER_FORGROUND 0x8
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MDP_LAYER_SECURE_SESSION 0x10
|
||||
#define MDP_LAYER_SOLID_FILL 0x20
|
||||
#define MDP_LAYER_DEINTERLACE 0x40
|
||||
#define MDP_LAYER_BWC 0x80
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MDP_LAYER_ASYNC 0x100
|
||||
#define MDP_LAYER_PP 0x200
|
||||
#define MDP_LAYER_SECURE_DISPLAY_SESSION 0x400
|
||||
#define MDP_LAYER_ENABLE_QSEED3_SCALE 0x800
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MDP_LAYER_MULTIRECT_ENABLE 0x1000
|
||||
#define MDP_LAYER_MULTIRECT_PARALLEL_MODE 0x2000
|
||||
#define MDP_DESTSCALER_ENABLE 0x1
|
||||
#define MDP_DESTSCALER_SCALE_UPDATE 0x2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MDP_DESTSCALER_ENHANCER_UPDATE 0x4
|
||||
#define MDP_VALIDATE_LAYER 0x01
|
||||
#define MDP_COMMIT_WAIT_FOR_FINISH 0x02
|
||||
#define MDP_COMMIT_SYNC_FENCE_WAIT 0x04
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MDP_COMMIT_CWB_EN 0x800
|
||||
#define MDP_COMMIT_CWB_DSPP 0x1000
|
||||
#define MDP_COMMIT_VERSION_1_0 0x00010000
|
||||
struct mdp_layer_plane {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int fd;
|
||||
uint32_t offset;
|
||||
uint32_t stride;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct mdp_layer_buffer {
|
||||
uint32_t width;
|
||||
uint32_t height;
|
||||
uint32_t format;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct mdp_layer_plane planes[MAX_PLANES];
|
||||
uint32_t plane_count;
|
||||
struct mult_factor comp_ratio;
|
||||
int fence;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t reserved;
|
||||
};
|
||||
struct mdp_input_layer {
|
||||
uint32_t flags;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t pipe_ndx;
|
||||
uint8_t horz_deci;
|
||||
uint8_t vert_deci;
|
||||
uint8_t alpha;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint16_t z_order;
|
||||
uint32_t transp_mask;
|
||||
uint32_t bg_color;
|
||||
enum mdss_mdp_blend_op blend_op;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum mdp_color_space color_space;
|
||||
struct mdp_rect src_rect;
|
||||
struct mdp_rect dst_rect;
|
||||
void * scale;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct mdp_layer_buffer buffer;
|
||||
void * pp_info;
|
||||
int error_code;
|
||||
uint32_t reserved[6];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct mdp_output_layer {
|
||||
uint32_t flags;
|
||||
uint32_t writeback_ndx;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct mdp_layer_buffer buffer;
|
||||
uint32_t reserved[6];
|
||||
};
|
||||
struct mdp_destination_scaler_data {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t flags;
|
||||
uint32_t dest_scaler_ndx;
|
||||
uint32_t lm_width;
|
||||
uint32_t lm_height;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint64_t scale;
|
||||
};
|
||||
struct mdp_layer_commit_v1 {
|
||||
uint32_t flags;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int release_fence;
|
||||
struct mdp_rect left_roi;
|
||||
struct mdp_rect right_roi;
|
||||
struct mdp_input_layer * input_layers;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t input_layer_cnt;
|
||||
struct mdp_output_layer * output_layer;
|
||||
int retire_fence;
|
||||
void * dest_scaler;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t dest_scaler_cnt;
|
||||
uint32_t reserved[MDP_LAYER_COMMIT_V1_PAD];
|
||||
};
|
||||
struct mdp_layer_commit {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t version;
|
||||
union {
|
||||
struct mdp_layer_commit_v1 commit_v1;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct mdp_point {
|
||||
uint32_t x;
|
||||
uint32_t y;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct mdp_async_layer {
|
||||
uint32_t flags;
|
||||
uint32_t pipe_ndx;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct mdp_point src;
|
||||
struct mdp_point dst;
|
||||
int error_code;
|
||||
uint32_t reserved[3];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct mdp_position_update {
|
||||
struct mdp_async_layer * input_layers;
|
||||
uint32_t input_layer_cnt;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define MAX_DET_CURVES 3
|
||||
struct mdp_det_enhance_data {
|
||||
uint32_t enable;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int16_t sharpen_level1;
|
||||
int16_t sharpen_level2;
|
||||
uint16_t clip;
|
||||
uint16_t limit;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint16_t thr_quiet;
|
||||
uint16_t thr_dieout;
|
||||
uint16_t thr_low;
|
||||
uint16_t thr_high;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint16_t prec_shift;
|
||||
int16_t adjust_a[MAX_DET_CURVES];
|
||||
int16_t adjust_b[MAX_DET_CURVES];
|
||||
int16_t adjust_c[MAX_DET_CURVES];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define ENABLE_SCALE 0x1
|
||||
#define ENABLE_DETAIL_ENHANCE 0x2
|
||||
#define ENABLE_DIRECTION_DETECTION 0x4
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SCALER_LUT_SWAP 0x1
|
||||
#define SCALER_LUT_DIR_WR 0x2
|
||||
#define SCALER_LUT_Y_CIR_WR 0x4
|
||||
#define SCALER_LUT_UV_CIR_WR 0x8
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SCALER_LUT_Y_SEP_WR 0x10
|
||||
#define SCALER_LUT_UV_SEP_WR 0x20
|
||||
#define FILTER_EDGE_DIRECTED_2D 0x0
|
||||
#define FILTER_CIRCULAR_2D 0x1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define FILTER_SEPARABLE_1D 0x2
|
||||
#define FILTER_BILINEAR 0x3
|
||||
#define FILTER_ALPHA_DROP_REPEAT 0x0
|
||||
#define FILTER_ALPHA_BILINEAR 0x1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct mdp_scale_data_v2 {
|
||||
uint32_t enable;
|
||||
int32_t init_phase_x[MAX_PLANES];
|
||||
int32_t phase_step_x[MAX_PLANES];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int32_t init_phase_y[MAX_PLANES];
|
||||
int32_t phase_step_y[MAX_PLANES];
|
||||
uint32_t num_ext_pxls_left[MAX_PLANES];
|
||||
uint32_t num_ext_pxls_right[MAX_PLANES];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t num_ext_pxls_top[MAX_PLANES];
|
||||
uint32_t num_ext_pxls_btm[MAX_PLANES];
|
||||
int32_t left_ftch[MAX_PLANES];
|
||||
int32_t left_rpt[MAX_PLANES];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int32_t right_ftch[MAX_PLANES];
|
||||
int32_t right_rpt[MAX_PLANES];
|
||||
uint32_t top_rpt[MAX_PLANES];
|
||||
uint32_t btm_rpt[MAX_PLANES];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t top_ftch[MAX_PLANES];
|
||||
uint32_t btm_ftch[MAX_PLANES];
|
||||
uint32_t roi_w[MAX_PLANES];
|
||||
uint32_t preload_x[MAX_PLANES];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t preload_y[MAX_PLANES];
|
||||
uint32_t src_width[MAX_PLANES];
|
||||
uint32_t src_height[MAX_PLANES];
|
||||
uint32_t dst_width;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t dst_height;
|
||||
uint32_t y_rgb_filter_cfg;
|
||||
uint32_t uv_filter_cfg;
|
||||
uint32_t alpha_filter_cfg;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t blend_cfg;
|
||||
uint32_t lut_flag;
|
||||
uint32_t dir_lut_idx;
|
||||
uint32_t y_rgb_cir_lut_idx;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t uv_cir_lut_idx;
|
||||
uint32_t y_rgb_sep_lut_idx;
|
||||
uint32_t uv_sep_lut_idx;
|
||||
struct mdp_det_enhance_data detail_enhance;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint64_t reserved[8];
|
||||
};
|
||||
struct mdp_scale_luts_info {
|
||||
uint64_t dir_lut;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint64_t cir_lut;
|
||||
uint64_t sep_lut;
|
||||
uint32_t dir_lut_size;
|
||||
uint32_t cir_lut_size;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t sep_lut_size;
|
||||
};
|
||||
#define MDP_QSEED3_LUT_CFG 0x1
|
||||
struct mdp_set_cfg {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint64_t flags;
|
||||
uint32_t len;
|
||||
uint64_t payload;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
|
||||
79
kernel-headers/linux/msm_pft.h
Normal file
79
kernel-headers/linux/msm_pft.h
Normal file
@@ -0,0 +1,79 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef MSM_PFT_H_
|
||||
#define MSM_PFT_H_
|
||||
#include <linux/types.h>
|
||||
enum pft_command_opcode {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
PFT_CMD_OPCODE_SET_STATE,
|
||||
PFT_CMD_OPCODE_UPDATE_REG_APP_UID,
|
||||
PFT_CMD_OPCODE_PERFORM_IN_PLACE_FILE_ENC,
|
||||
PFT_CMD_OPCODE_MAX_COMMAND_INDEX
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum pft_state {
|
||||
PFT_STATE_DEACTIVATED,
|
||||
PFT_STATE_DEACTIVATING,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
PFT_STATE_KEY_REMOVED,
|
||||
PFT_STATE_REMOVING_KEY,
|
||||
PFT_STATE_KEY_LOADED,
|
||||
PFT_STATE_MAX_INDEX
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum pft_command_response_code {
|
||||
PFT_CMD_RESP_SUCCESS,
|
||||
PFT_CMD_RESP_GENERAL_ERROR,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
PFT_CMD_RESP_INVALID_COMMAND,
|
||||
PFT_CMD_RESP_INVALID_CMD_PARAMS,
|
||||
PFT_CMD_RESP_INVALID_STATE,
|
||||
PFT_CMD_RESP_ALREADY_IN_STATE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
PFT_CMD_RESP_INPLACE_FILE_IS_OPEN,
|
||||
PFT_CMD_RESP_ENT_FILES_CLOSING_FAILURE,
|
||||
PFT_CMD_RESP_MAX_INDEX
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct pft_command_response {
|
||||
__u32 command_id;
|
||||
__u32 error_code;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct pft_command {
|
||||
__u32 opcode;
|
||||
union {
|
||||
struct {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 state;
|
||||
} set_state;
|
||||
struct {
|
||||
__u32 items_count;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uid_t table[0];
|
||||
} update_app_list;
|
||||
struct {
|
||||
__u32 file_descriptor;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
} preform_in_place_file_enc;
|
||||
};
|
||||
};
|
||||
#endif
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
|
||||
165
kernel-headers/linux/msm_rmnet.h
Normal file
165
kernel-headers/linux/msm_rmnet.h
Normal file
@@ -0,0 +1,165 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _MSM_RMNET_H_
|
||||
#define _MSM_RMNET_H_
|
||||
#define RMNET_MODE_NONE (0x00)
|
||||
#define RMNET_MODE_LLP_ETH (0x01)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define RMNET_MODE_LLP_IP (0x02)
|
||||
#define RMNET_MODE_QOS (0x04)
|
||||
#define RMNET_MODE_MASK (RMNET_MODE_LLP_ETH | RMNET_MODE_LLP_IP | RMNET_MODE_QOS)
|
||||
#define RMNET_IS_MODE_QOS(mode) ((mode & RMNET_MODE_QOS) == RMNET_MODE_QOS)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define RMNET_IS_MODE_IP(mode) ((mode & RMNET_MODE_LLP_IP) == RMNET_MODE_LLP_IP)
|
||||
enum rmnet_ioctl_cmds_e {
|
||||
RMNET_IOCTL_SET_LLP_ETHERNET = 0x000089F1,
|
||||
RMNET_IOCTL_SET_LLP_IP = 0x000089F2,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
RMNET_IOCTL_GET_LLP = 0x000089F3,
|
||||
RMNET_IOCTL_SET_QOS_ENABLE = 0x000089F4,
|
||||
RMNET_IOCTL_SET_QOS_DISABLE = 0x000089F5,
|
||||
RMNET_IOCTL_GET_QOS = 0x000089F6,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
RMNET_IOCTL_GET_OPMODE = 0x000089F7,
|
||||
RMNET_IOCTL_OPEN = 0x000089F8,
|
||||
RMNET_IOCTL_CLOSE = 0x000089F9,
|
||||
RMNET_IOCTL_FLOW_ENABLE = 0x000089FA,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
RMNET_IOCTL_FLOW_DISABLE = 0x000089FB,
|
||||
RMNET_IOCTL_FLOW_SET_HNDL = 0x000089FC,
|
||||
RMNET_IOCTL_EXTENDED = 0x000089FD,
|
||||
RMNET_IOCTL_MAX
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum rmnet_ioctl_extended_cmds_e {
|
||||
RMNET_IOCTL_GET_SUPPORTED_FEATURES = 0x0000,
|
||||
RMNET_IOCTL_SET_MRU = 0x0001,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
RMNET_IOCTL_GET_MRU = 0x0002,
|
||||
RMNET_IOCTL_GET_EPID = 0x0003,
|
||||
RMNET_IOCTL_GET_DRIVER_NAME = 0x0004,
|
||||
RMNET_IOCTL_ADD_MUX_CHANNEL = 0x0005,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
RMNET_IOCTL_SET_EGRESS_DATA_FORMAT = 0x0006,
|
||||
RMNET_IOCTL_SET_INGRESS_DATA_FORMAT = 0x0007,
|
||||
RMNET_IOCTL_SET_AGGREGATION_COUNT = 0x0008,
|
||||
RMNET_IOCTL_GET_AGGREGATION_COUNT = 0x0009,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
RMNET_IOCTL_SET_AGGREGATION_SIZE = 0x000A,
|
||||
RMNET_IOCTL_GET_AGGREGATION_SIZE = 0x000B,
|
||||
RMNET_IOCTL_FLOW_CONTROL = 0x000C,
|
||||
RMNET_IOCTL_GET_DFLT_CONTROL_CHANNEL = 0x000D,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
RMNET_IOCTL_GET_HWSW_MAP = 0x000E,
|
||||
RMNET_IOCTL_SET_RX_HEADROOM = 0x000F,
|
||||
RMNET_IOCTL_GET_EP_PAIR = 0x0010,
|
||||
RMNET_IOCTL_SET_QOS_VERSION = 0x0011,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
RMNET_IOCTL_GET_QOS_VERSION = 0x0012,
|
||||
RMNET_IOCTL_GET_SUPPORTED_QOS_MODES = 0x0013,
|
||||
RMNET_IOCTL_SET_SLEEP_STATE = 0x0014,
|
||||
RMNET_IOCTL_SET_XLAT_DEV_INFO = 0x0015,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
RMNET_IOCTL_DEREGISTER_DEV = 0x0016,
|
||||
RMNET_IOCTL_GET_SG_SUPPORT = 0x0017,
|
||||
RMNET_IOCTL_EXTENDED_MAX = 0x0018
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define RMNET_IOCTL_FEAT_NOTIFY_MUX_CHANNEL (1 << 0)
|
||||
#define RMNET_IOCTL_FEAT_SET_EGRESS_DATA_FORMAT (1 << 1)
|
||||
#define RMNET_IOCTL_FEAT_SET_INGRESS_DATA_FORMAT (1 << 2)
|
||||
#define RMNET_IOCTL_FEAT_SET_AGGREGATION_COUNT (1 << 3)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define RMNET_IOCTL_FEAT_GET_AGGREGATION_COUNT (1 << 4)
|
||||
#define RMNET_IOCTL_FEAT_SET_AGGREGATION_SIZE (1 << 5)
|
||||
#define RMNET_IOCTL_FEAT_GET_AGGREGATION_SIZE (1 << 6)
|
||||
#define RMNET_IOCTL_FEAT_FLOW_CONTROL (1 << 7)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define RMNET_IOCTL_FEAT_GET_DFLT_CONTROL_CHANNEL (1 << 8)
|
||||
#define RMNET_IOCTL_FEAT_GET_HWSW_MAP (1 << 9)
|
||||
#define RMNET_IOCTL_EGRESS_FORMAT_MAP (1 << 1)
|
||||
#define RMNET_IOCTL_EGRESS_FORMAT_AGGREGATION (1 << 2)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define RMNET_IOCTL_EGRESS_FORMAT_MUXING (1 << 3)
|
||||
#define RMNET_IOCTL_EGRESS_FORMAT_CHECKSUM (1 << 4)
|
||||
#define RMNET_IOCTL_INGRESS_FORMAT_MAP (1 << 1)
|
||||
#define RMNET_IOCTL_INGRESS_FORMAT_DEAGGREGATION (1 << 2)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define RMNET_IOCTL_INGRESS_FORMAT_DEMUXING (1 << 3)
|
||||
#define RMNET_IOCTL_INGRESS_FORMAT_CHECKSUM (1 << 4)
|
||||
#define RMNET_IOCTL_INGRESS_FORMAT_AGG_DATA (1 << 5)
|
||||
#ifndef IFNAMSIZ
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IFNAMSIZ 16
|
||||
#endif
|
||||
struct rmnet_ioctl_extended_s {
|
||||
uint32_t extended_ioctl;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
union {
|
||||
uint32_t data;
|
||||
int8_t if_name[IFNAMSIZ];
|
||||
struct {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t mux_id;
|
||||
int8_t vchannel_name[IFNAMSIZ];
|
||||
} rmnet_mux_val;
|
||||
struct {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t flow_mode;
|
||||
uint8_t mux_id;
|
||||
} flow_control_prop;
|
||||
struct {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t consumer_pipe_num;
|
||||
uint32_t producer_pipe_num;
|
||||
} ipa_ep_pair;
|
||||
struct {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t __data;
|
||||
uint32_t agg_size;
|
||||
uint32_t agg_count;
|
||||
} ingress_format;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
} u;
|
||||
};
|
||||
struct rmnet_ioctl_data_s {
|
||||
union {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t operation_mode;
|
||||
uint32_t tcm_handle;
|
||||
} u;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define RMNET_IOCTL_QOS_MODE_6 (1 << 0)
|
||||
#define RMNET_IOCTL_QOS_MODE_8 (1 << 1)
|
||||
#define QMI_QOS_HDR_S __attribute((__packed__)) qmi_qos_hdr_s
|
||||
struct QMI_QOS_HDR_S {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned char version;
|
||||
unsigned char flags;
|
||||
uint32_t flow_id;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct qmi_qos_hdr8_s {
|
||||
struct QMI_QOS_HDR_S hdr;
|
||||
uint8_t reserved[2];
|
||||
} __attribute((__packed__));
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
|
||||
76
kernel-headers/linux/msm_rotator.h
Normal file
76
kernel-headers/linux/msm_rotator.h
Normal file
@@ -0,0 +1,76 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __MSM_ROTATOR_H__
|
||||
#define __MSM_ROTATOR_H__
|
||||
#include <linux/types.h>
|
||||
#include <linux/msm_mdp.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_ROTATOR_IOCTL_MAGIC 'R'
|
||||
#define MSM_ROTATOR_IOCTL_START _IOWR(MSM_ROTATOR_IOCTL_MAGIC, 1, struct msm_rotator_img_info)
|
||||
#define MSM_ROTATOR_IOCTL_ROTATE _IOW(MSM_ROTATOR_IOCTL_MAGIC, 2, struct msm_rotator_data_info)
|
||||
#define MSM_ROTATOR_IOCTL_FINISH _IOW(MSM_ROTATOR_IOCTL_MAGIC, 3, int)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ROTATOR_VERSION_01 0xA5B4C301
|
||||
enum rotator_clk_type {
|
||||
ROTATOR_CORE_CLK,
|
||||
ROTATOR_PCLK,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ROTATOR_IMEM_CLK
|
||||
};
|
||||
struct msm_rotator_img_info {
|
||||
unsigned int session_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msmfb_img src;
|
||||
struct msmfb_img dst;
|
||||
struct mdp_rect src_rect;
|
||||
unsigned int dst_x;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int dst_y;
|
||||
unsigned char rotations;
|
||||
int enable;
|
||||
unsigned int downscale_ratio;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int secure;
|
||||
};
|
||||
struct msm_rotator_data_info {
|
||||
int session_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msmfb_data src;
|
||||
struct msmfb_data dst;
|
||||
unsigned int version_key;
|
||||
struct msmfb_data src_chroma;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msmfb_data dst_chroma;
|
||||
};
|
||||
struct msm_rot_clocks {
|
||||
const char * clk_name;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum rotator_clk_type clk_type;
|
||||
unsigned int clk_rate;
|
||||
};
|
||||
struct msm_rotator_platform_data {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int number_of_clocks;
|
||||
unsigned int hardware_version_number;
|
||||
struct msm_rot_clocks * rotator_clks;
|
||||
char rot_iommu_split_domain;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#endif
|
||||
|
||||
76
kernel-headers/linux/msm_thermal_ioctl.h
Normal file
76
kernel-headers/linux/msm_thermal_ioctl.h
Normal file
@@ -0,0 +1,76 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _MSM_THERMAL_IOCTL_H
|
||||
#define _MSM_THERMAL_IOCTL_H
|
||||
#include <linux/ioctl.h>
|
||||
#define MSM_THERMAL_IOCTL_NAME "msm_thermal_query"
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_IOCTL_FREQ_SIZE 16
|
||||
struct __attribute__((__packed__)) cpu_freq_arg {
|
||||
uint32_t cpu_num;
|
||||
uint32_t freq_req;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct __attribute__((__packed__)) clock_plan_arg {
|
||||
uint32_t cluster_num;
|
||||
uint32_t freq_table_len;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t set_idx;
|
||||
unsigned int freq_table[MSM_IOCTL_FREQ_SIZE];
|
||||
};
|
||||
struct __attribute__((__packed__)) voltage_plan_arg {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t cluster_num;
|
||||
uint32_t voltage_table_len;
|
||||
uint32_t set_idx;
|
||||
uint32_t voltage_table[MSM_IOCTL_FREQ_SIZE];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct __attribute__((__packed__)) msm_thermal_ioctl {
|
||||
uint32_t size;
|
||||
union {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct cpu_freq_arg cpu_freq;
|
||||
struct clock_plan_arg clock_freq;
|
||||
struct voltage_plan_arg voltage;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum {
|
||||
MSM_SET_CPU_MAX_FREQ = 0x00,
|
||||
MSM_SET_CPU_MIN_FREQ = 0x01,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_SET_CLUSTER_MAX_FREQ = 0x02,
|
||||
MSM_SET_CLUSTER_MIN_FREQ = 0x03,
|
||||
MSM_GET_CLUSTER_FREQ_PLAN = 0x04,
|
||||
MSM_GET_CLUSTER_VOLTAGE_PLAN = 0x05,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_CMD_MAX_NR,
|
||||
};
|
||||
#define MSM_THERMAL_MAGIC_NUM 0xCA
|
||||
#define MSM_THERMAL_SET_CPU_MAX_FREQUENCY _IOW(MSM_THERMAL_MAGIC_NUM, MSM_SET_CPU_MAX_FREQ, struct msm_thermal_ioctl)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_THERMAL_SET_CPU_MIN_FREQUENCY _IOW(MSM_THERMAL_MAGIC_NUM, MSM_SET_CPU_MIN_FREQ, struct msm_thermal_ioctl)
|
||||
#define MSM_THERMAL_SET_CLUSTER_MAX_FREQUENCY _IOW(MSM_THERMAL_MAGIC_NUM, MSM_SET_CLUSTER_MAX_FREQ, struct msm_thermal_ioctl)
|
||||
#define MSM_THERMAL_SET_CLUSTER_MIN_FREQUENCY _IOW(MSM_THERMAL_MAGIC_NUM, MSM_SET_CLUSTER_MIN_FREQ, struct msm_thermal_ioctl)
|
||||
#define MSM_THERMAL_GET_CLUSTER_FREQUENCY_PLAN _IOR(MSM_THERMAL_MAGIC_NUM, MSM_GET_CLUSTER_FREQ_PLAN, struct msm_thermal_ioctl)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_THERMAL_GET_CLUSTER_VOLTAGE_PLAN _IOR(MSM_THERMAL_MAGIC_NUM, MSM_GET_CLUSTER_VOLTAGE_PLAN, struct msm_thermal_ioctl)
|
||||
#endif
|
||||
|
||||
579
kernel-headers/linux/msm_vidc_dec.h
Normal file
579
kernel-headers/linux/msm_vidc_dec.h
Normal file
@@ -0,0 +1,579 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _MSM_VIDC_DEC_H_
|
||||
#define _MSM_VIDC_DEC_H_
|
||||
#include <linux/types.h>
|
||||
#include <linux/ioctl.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_S_BASE 0x40000000
|
||||
#define VDEC_S_SUCCESS (VDEC_S_BASE)
|
||||
#define VDEC_S_EFAIL (VDEC_S_BASE + 1)
|
||||
#define VDEC_S_EFATAL (VDEC_S_BASE + 2)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_S_EBADPARAM (VDEC_S_BASE + 3)
|
||||
#define VDEC_S_EINVALSTATE (VDEC_S_BASE + 4)
|
||||
#define VDEC_S_ENOSWRES (VDEC_S_BASE + 5)
|
||||
#define VDEC_S_ENOHWRES (VDEC_S_BASE + 6)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_S_EINVALCMD (VDEC_S_BASE + 7)
|
||||
#define VDEC_S_ETIMEOUT (VDEC_S_BASE + 8)
|
||||
#define VDEC_S_ENOPREREQ (VDEC_S_BASE + 9)
|
||||
#define VDEC_S_ECMDQFULL (VDEC_S_BASE + 10)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_S_ENOTSUPP (VDEC_S_BASE + 11)
|
||||
#define VDEC_S_ENOTIMPL (VDEC_S_BASE + 12)
|
||||
#define VDEC_S_BUSY (VDEC_S_BASE + 13)
|
||||
#define VDEC_S_INPUT_BITSTREAM_ERR (VDEC_S_BASE + 14)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_INTF_VER 1
|
||||
#define VDEC_MSG_BASE 0x0000000
|
||||
#define VDEC_MSG_INVALID (VDEC_MSG_BASE + 0)
|
||||
#define VDEC_MSG_RESP_INPUT_BUFFER_DONE (VDEC_MSG_BASE + 1)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_MSG_RESP_OUTPUT_BUFFER_DONE (VDEC_MSG_BASE + 2)
|
||||
#define VDEC_MSG_RESP_INPUT_FLUSHED (VDEC_MSG_BASE + 3)
|
||||
#define VDEC_MSG_RESP_OUTPUT_FLUSHED (VDEC_MSG_BASE + 4)
|
||||
#define VDEC_MSG_RESP_FLUSH_INPUT_DONE (VDEC_MSG_BASE + 5)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_MSG_RESP_FLUSH_OUTPUT_DONE (VDEC_MSG_BASE + 6)
|
||||
#define VDEC_MSG_RESP_START_DONE (VDEC_MSG_BASE + 7)
|
||||
#define VDEC_MSG_RESP_STOP_DONE (VDEC_MSG_BASE + 8)
|
||||
#define VDEC_MSG_RESP_PAUSE_DONE (VDEC_MSG_BASE + 9)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_MSG_RESP_RESUME_DONE (VDEC_MSG_BASE + 10)
|
||||
#define VDEC_MSG_RESP_RESOURCE_LOADED (VDEC_MSG_BASE + 11)
|
||||
#define VDEC_EVT_RESOURCES_LOST (VDEC_MSG_BASE + 12)
|
||||
#define VDEC_MSG_EVT_CONFIG_CHANGED (VDEC_MSG_BASE + 13)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_MSG_EVT_HW_ERROR (VDEC_MSG_BASE + 14)
|
||||
#define VDEC_MSG_EVT_INFO_CONFIG_CHANGED (VDEC_MSG_BASE + 15)
|
||||
#define VDEC_MSG_EVT_INFO_FIELD_DROPPED (VDEC_MSG_BASE + 16)
|
||||
#define VDEC_MSG_EVT_HW_OVERLOAD (VDEC_MSG_BASE + 17)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_MSG_EVT_MAX_CLIENTS (VDEC_MSG_BASE + 18)
|
||||
#define VDEC_MSG_EVT_HW_UNSUPPORTED (VDEC_MSG_BASE + 19)
|
||||
#define VDEC_BUFFERFLAG_EOS 0x00000001
|
||||
#define VDEC_BUFFERFLAG_DECODEONLY 0x00000004
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_BUFFERFLAG_DATACORRUPT 0x00000008
|
||||
#define VDEC_BUFFERFLAG_ENDOFFRAME 0x00000010
|
||||
#define VDEC_BUFFERFLAG_SYNCFRAME 0x00000020
|
||||
#define VDEC_BUFFERFLAG_EXTRADATA 0x00000040
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_BUFFERFLAG_CODECCONFIG 0x00000080
|
||||
#define VDEC_EXTRADATA_NONE 0x001
|
||||
#define VDEC_EXTRADATA_QP 0x004
|
||||
#define VDEC_EXTRADATA_MB_ERROR_MAP 0x008
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_EXTRADATA_SEI 0x010
|
||||
#define VDEC_EXTRADATA_VUI 0x020
|
||||
#define VDEC_EXTRADATA_VC1 0x040
|
||||
#define VDEC_EXTRADATA_EXT_DATA 0x0800
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_EXTRADATA_USER_DATA 0x1000
|
||||
#define VDEC_EXTRADATA_EXT_BUFFER 0x2000
|
||||
#define VDEC_CMDBASE 0x800
|
||||
#define VDEC_CMD_SET_INTF_VERSION (VDEC_CMDBASE)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_IOCTL_MAGIC 'v'
|
||||
struct vdec_ioctl_msg {
|
||||
void * in;
|
||||
void * out;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define VDEC_IOCTL_GET_PROFILE_LEVEL_SUPPORTED _IOWR(VDEC_IOCTL_MAGIC, 0, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_GET_INTERLACE_FORMAT _IOR(VDEC_IOCTL_MAGIC, 1, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_GET_CURRENT_PROFILE_LEVEL _IOWR(VDEC_IOCTL_MAGIC, 2, struct vdec_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_IOCTL_SET_OUTPUT_FORMAT _IOWR(VDEC_IOCTL_MAGIC, 3, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_GET_OUTPUT_FORMAT _IOWR(VDEC_IOCTL_MAGIC, 4, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_SET_CODEC _IOW(VDEC_IOCTL_MAGIC, 5, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_GET_CODEC _IOR(VDEC_IOCTL_MAGIC, 6, struct vdec_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_IOCTL_SET_PICRES _IOW(VDEC_IOCTL_MAGIC, 7, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_GET_PICRES _IOR(VDEC_IOCTL_MAGIC, 8, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_SET_EXTRADATA _IOW(VDEC_IOCTL_MAGIC, 9, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_GET_EXTRADATA _IOR(VDEC_IOCTL_MAGIC, 10, struct vdec_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_IOCTL_SET_SEQUENCE_HEADER _IOW(VDEC_IOCTL_MAGIC, 11, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_SET_BUFFER_REQ _IOW(VDEC_IOCTL_MAGIC, 12, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_GET_BUFFER_REQ _IOR(VDEC_IOCTL_MAGIC, 13, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_ALLOCATE_BUFFER _IOWR(VDEC_IOCTL_MAGIC, 14, struct vdec_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_IOCTL_FREE_BUFFER _IOW(VDEC_IOCTL_MAGIC, 15, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_SET_BUFFER _IOW(VDEC_IOCTL_MAGIC, 16, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_FILL_OUTPUT_BUFFER _IOW(VDEC_IOCTL_MAGIC, 17, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_DECODE_FRAME _IOW(VDEC_IOCTL_MAGIC, 18, struct vdec_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_IOCTL_LOAD_RESOURCES _IO(VDEC_IOCTL_MAGIC, 19)
|
||||
#define VDEC_IOCTL_CMD_START _IO(VDEC_IOCTL_MAGIC, 20)
|
||||
#define VDEC_IOCTL_CMD_STOP _IO(VDEC_IOCTL_MAGIC, 21)
|
||||
#define VDEC_IOCTL_CMD_PAUSE _IO(VDEC_IOCTL_MAGIC, 22)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_IOCTL_CMD_RESUME _IO(VDEC_IOCTL_MAGIC, 23)
|
||||
#define VDEC_IOCTL_CMD_FLUSH _IOW(VDEC_IOCTL_MAGIC, 24, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_GET_NEXT_MSG _IOR(VDEC_IOCTL_MAGIC, 25, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_STOP_NEXT_MSG _IO(VDEC_IOCTL_MAGIC, 26)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_IOCTL_GET_NUMBER_INSTANCES _IOR(VDEC_IOCTL_MAGIC, 27, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_SET_PICTURE_ORDER _IOW(VDEC_IOCTL_MAGIC, 28, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_SET_FRAME_RATE _IOW(VDEC_IOCTL_MAGIC, 29, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_SET_H264_MV_BUFFER _IOW(VDEC_IOCTL_MAGIC, 30, struct vdec_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_IOCTL_FREE_H264_MV_BUFFER _IOW(VDEC_IOCTL_MAGIC, 31, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_GET_MV_BUFFER_SIZE _IOR(VDEC_IOCTL_MAGIC, 32, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_SET_IDR_ONLY_DECODING _IO(VDEC_IOCTL_MAGIC, 33)
|
||||
#define VDEC_IOCTL_SET_CONT_ON_RECONFIG _IO(VDEC_IOCTL_MAGIC, 34)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_IOCTL_SET_DISABLE_DMX _IOW(VDEC_IOCTL_MAGIC, 35, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_GET_DISABLE_DMX _IOR(VDEC_IOCTL_MAGIC, 36, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_GET_DISABLE_DMX_SUPPORT _IOR(VDEC_IOCTL_MAGIC, 37, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_SET_PERF_CLK _IOR(VDEC_IOCTL_MAGIC, 38, struct vdec_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VDEC_IOCTL_SET_META_BUFFERS _IOW(VDEC_IOCTL_MAGIC, 39, struct vdec_ioctl_msg)
|
||||
#define VDEC_IOCTL_FREE_META_BUFFERS _IO(VDEC_IOCTL_MAGIC, 40)
|
||||
enum vdec_picture {
|
||||
PICTURE_TYPE_I,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
PICTURE_TYPE_P,
|
||||
PICTURE_TYPE_B,
|
||||
PICTURE_TYPE_BI,
|
||||
PICTURE_TYPE_SKIP,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
PICTURE_TYPE_IDR,
|
||||
PICTURE_TYPE_UNKNOWN
|
||||
};
|
||||
enum vdec_buffer {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_BUFFER_TYPE_INPUT,
|
||||
VDEC_BUFFER_TYPE_OUTPUT
|
||||
};
|
||||
struct vdec_allocatorproperty {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum vdec_buffer buffer_type;
|
||||
uint32_t mincount;
|
||||
uint32_t maxcount;
|
||||
uint32_t actualcount;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
size_t buffer_size;
|
||||
uint32_t alignment;
|
||||
uint32_t buf_poolid;
|
||||
size_t meta_buffer_size;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct vdec_bufferpayload {
|
||||
void * bufferaddr;
|
||||
size_t buffer_len;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int pmem_fd;
|
||||
size_t offset;
|
||||
size_t mmaped_size;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct vdec_setbuffer_cmd {
|
||||
enum vdec_buffer buffer_type;
|
||||
struct vdec_bufferpayload buffer;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct vdec_fillbuffer_cmd {
|
||||
struct vdec_bufferpayload buffer;
|
||||
void * client_data;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum vdec_bufferflush {
|
||||
VDEC_FLUSH_TYPE_INPUT,
|
||||
VDEC_FLUSH_TYPE_OUTPUT,
|
||||
VDEC_FLUSH_TYPE_ALL
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum vdec_codec {
|
||||
VDEC_CODECTYPE_H264 = 0x1,
|
||||
VDEC_CODECTYPE_H263 = 0x2,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_CODECTYPE_MPEG4 = 0x3,
|
||||
VDEC_CODECTYPE_DIVX_3 = 0x4,
|
||||
VDEC_CODECTYPE_DIVX_4 = 0x5,
|
||||
VDEC_CODECTYPE_DIVX_5 = 0x6,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_CODECTYPE_DIVX_6 = 0x7,
|
||||
VDEC_CODECTYPE_XVID = 0x8,
|
||||
VDEC_CODECTYPE_MPEG1 = 0x9,
|
||||
VDEC_CODECTYPE_MPEG2 = 0xa,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_CODECTYPE_VC1 = 0xb,
|
||||
VDEC_CODECTYPE_VC1_RCV = 0xc,
|
||||
VDEC_CODECTYPE_HEVC = 0xd,
|
||||
VDEC_CODECTYPE_MVC = 0xe,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_CODECTYPE_VP8 = 0xf,
|
||||
VDEC_CODECTYPE_VP9 = 0x10,
|
||||
};
|
||||
enum vdec_mpeg2_profile {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_MPEG2ProfileSimple = 0x1,
|
||||
VDEC_MPEG2ProfileMain = 0x2,
|
||||
VDEC_MPEG2Profile422 = 0x4,
|
||||
VDEC_MPEG2ProfileSNR = 0x8,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_MPEG2ProfileSpatial = 0x10,
|
||||
VDEC_MPEG2ProfileHigh = 0x20,
|
||||
VDEC_MPEG2ProfileKhronosExtensions = 0x6F000000,
|
||||
VDEC_MPEG2ProfileVendorStartUnused = 0x7F000000,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_MPEG2ProfileMax = 0x7FFFFFFF
|
||||
};
|
||||
enum vdec_mpeg2_level {
|
||||
VDEC_MPEG2LevelLL = 0x1,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_MPEG2LevelML = 0x2,
|
||||
VDEC_MPEG2LevelH14 = 0x4,
|
||||
VDEC_MPEG2LevelHL = 0x8,
|
||||
VDEC_MPEG2LevelKhronosExtensions = 0x6F000000,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_MPEG2LevelVendorStartUnused = 0x7F000000,
|
||||
VDEC_MPEG2LevelMax = 0x7FFFFFFF
|
||||
};
|
||||
enum vdec_mpeg4_profile {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_MPEG4ProfileSimple = 0x01,
|
||||
VDEC_MPEG4ProfileSimpleScalable = 0x02,
|
||||
VDEC_MPEG4ProfileCore = 0x04,
|
||||
VDEC_MPEG4ProfileMain = 0x08,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_MPEG4ProfileNbit = 0x10,
|
||||
VDEC_MPEG4ProfileScalableTexture = 0x20,
|
||||
VDEC_MPEG4ProfileSimpleFace = 0x40,
|
||||
VDEC_MPEG4ProfileSimpleFBA = 0x80,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_MPEG4ProfileBasicAnimated = 0x100,
|
||||
VDEC_MPEG4ProfileHybrid = 0x200,
|
||||
VDEC_MPEG4ProfileAdvancedRealTime = 0x400,
|
||||
VDEC_MPEG4ProfileCoreScalable = 0x800,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_MPEG4ProfileAdvancedCoding = 0x1000,
|
||||
VDEC_MPEG4ProfileAdvancedCore = 0x2000,
|
||||
VDEC_MPEG4ProfileAdvancedScalable = 0x4000,
|
||||
VDEC_MPEG4ProfileAdvancedSimple = 0x8000,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_MPEG4ProfileKhronosExtensions = 0x6F000000,
|
||||
VDEC_MPEG4ProfileVendorStartUnused = 0x7F000000,
|
||||
VDEC_MPEG4ProfileMax = 0x7FFFFFFF
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum vdec_mpeg4_level {
|
||||
VDEC_MPEG4Level0 = 0x01,
|
||||
VDEC_MPEG4Level0b = 0x02,
|
||||
VDEC_MPEG4Level1 = 0x04,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_MPEG4Level2 = 0x08,
|
||||
VDEC_MPEG4Level3 = 0x10,
|
||||
VDEC_MPEG4Level4 = 0x20,
|
||||
VDEC_MPEG4Level4a = 0x40,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_MPEG4Level5 = 0x80,
|
||||
VDEC_MPEG4LevelKhronosExtensions = 0x6F000000,
|
||||
VDEC_MPEG4LevelVendorStartUnused = 0x7F000000,
|
||||
VDEC_MPEG4LevelMax = 0x7FFFFFFF
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum vdec_avc_profile {
|
||||
VDEC_AVCProfileBaseline = 0x01,
|
||||
VDEC_AVCProfileMain = 0x02,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_AVCProfileExtended = 0x04,
|
||||
VDEC_AVCProfileHigh = 0x08,
|
||||
VDEC_AVCProfileHigh10 = 0x10,
|
||||
VDEC_AVCProfileHigh422 = 0x20,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_AVCProfileHigh444 = 0x40,
|
||||
VDEC_AVCProfileKhronosExtensions = 0x6F000000,
|
||||
VDEC_AVCProfileVendorStartUnused = 0x7F000000,
|
||||
VDEC_AVCProfileMax = 0x7FFFFFFF
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum vdec_avc_level {
|
||||
VDEC_AVCLevel1 = 0x01,
|
||||
VDEC_AVCLevel1b = 0x02,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_AVCLevel11 = 0x04,
|
||||
VDEC_AVCLevel12 = 0x08,
|
||||
VDEC_AVCLevel13 = 0x10,
|
||||
VDEC_AVCLevel2 = 0x20,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_AVCLevel21 = 0x40,
|
||||
VDEC_AVCLevel22 = 0x80,
|
||||
VDEC_AVCLevel3 = 0x100,
|
||||
VDEC_AVCLevel31 = 0x200,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_AVCLevel32 = 0x400,
|
||||
VDEC_AVCLevel4 = 0x800,
|
||||
VDEC_AVCLevel41 = 0x1000,
|
||||
VDEC_AVCLevel42 = 0x2000,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_AVCLevel5 = 0x4000,
|
||||
VDEC_AVCLevel51 = 0x8000,
|
||||
VDEC_AVCLevelKhronosExtensions = 0x6F000000,
|
||||
VDEC_AVCLevelVendorStartUnused = 0x7F000000,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_AVCLevelMax = 0x7FFFFFFF
|
||||
};
|
||||
enum vdec_divx_profile {
|
||||
VDEC_DIVXProfile_qMobile = 0x01,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_DIVXProfile_Mobile = 0x02,
|
||||
VDEC_DIVXProfile_HD = 0x04,
|
||||
VDEC_DIVXProfile_Handheld = 0x08,
|
||||
VDEC_DIVXProfile_Portable = 0x10,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_DIVXProfile_HomeTheater = 0x20
|
||||
};
|
||||
enum vdec_xvid_profile {
|
||||
VDEC_XVIDProfile_Simple = 0x1,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_XVIDProfile_Advanced_Realtime_Simple = 0x2,
|
||||
VDEC_XVIDProfile_Advanced_Simple = 0x4
|
||||
};
|
||||
enum vdec_xvid_level {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_XVID_LEVEL_S_L0 = 0x1,
|
||||
VDEC_XVID_LEVEL_S_L1 = 0x2,
|
||||
VDEC_XVID_LEVEL_S_L2 = 0x4,
|
||||
VDEC_XVID_LEVEL_S_L3 = 0x8,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_XVID_LEVEL_ARTS_L1 = 0x10,
|
||||
VDEC_XVID_LEVEL_ARTS_L2 = 0x20,
|
||||
VDEC_XVID_LEVEL_ARTS_L3 = 0x40,
|
||||
VDEC_XVID_LEVEL_ARTS_L4 = 0x80,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_XVID_LEVEL_AS_L0 = 0x100,
|
||||
VDEC_XVID_LEVEL_AS_L1 = 0x200,
|
||||
VDEC_XVID_LEVEL_AS_L2 = 0x400,
|
||||
VDEC_XVID_LEVEL_AS_L3 = 0x800,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_XVID_LEVEL_AS_L4 = 0x1000
|
||||
};
|
||||
enum vdec_h263profile {
|
||||
VDEC_H263ProfileBaseline = 0x01,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_H263ProfileH320Coding = 0x02,
|
||||
VDEC_H263ProfileBackwardCompatible = 0x04,
|
||||
VDEC_H263ProfileISWV2 = 0x08,
|
||||
VDEC_H263ProfileISWV3 = 0x10,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_H263ProfileHighCompression = 0x20,
|
||||
VDEC_H263ProfileInternet = 0x40,
|
||||
VDEC_H263ProfileInterlace = 0x80,
|
||||
VDEC_H263ProfileHighLatency = 0x100,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_H263ProfileKhronosExtensions = 0x6F000000,
|
||||
VDEC_H263ProfileVendorStartUnused = 0x7F000000,
|
||||
VDEC_H263ProfileMax = 0x7FFFFFFF
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum vdec_h263level {
|
||||
VDEC_H263Level10 = 0x01,
|
||||
VDEC_H263Level20 = 0x02,
|
||||
VDEC_H263Level30 = 0x04,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_H263Level40 = 0x08,
|
||||
VDEC_H263Level45 = 0x10,
|
||||
VDEC_H263Level50 = 0x20,
|
||||
VDEC_H263Level60 = 0x40,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_H263Level70 = 0x80,
|
||||
VDEC_H263LevelKhronosExtensions = 0x6F000000,
|
||||
VDEC_H263LevelVendorStartUnused = 0x7F000000,
|
||||
VDEC_H263LevelMax = 0x7FFFFFFF
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum vdec_wmv_format {
|
||||
VDEC_WMVFormatUnused = 0x01,
|
||||
VDEC_WMVFormat7 = 0x02,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_WMVFormat8 = 0x04,
|
||||
VDEC_WMVFormat9 = 0x08,
|
||||
VDEC_WMFFormatKhronosExtensions = 0x6F000000,
|
||||
VDEC_WMFFormatVendorStartUnused = 0x7F000000,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_WMVFormatMax = 0x7FFFFFFF
|
||||
};
|
||||
enum vdec_vc1_profile {
|
||||
VDEC_VC1ProfileSimple = 0x1,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_VC1ProfileMain = 0x2,
|
||||
VDEC_VC1ProfileAdvanced = 0x4
|
||||
};
|
||||
enum vdec_vc1_level {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_VC1_LEVEL_S_Low = 0x1,
|
||||
VDEC_VC1_LEVEL_S_Medium = 0x2,
|
||||
VDEC_VC1_LEVEL_M_Low = 0x4,
|
||||
VDEC_VC1_LEVEL_M_Medium = 0x8,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_VC1_LEVEL_M_High = 0x10,
|
||||
VDEC_VC1_LEVEL_A_L0 = 0x20,
|
||||
VDEC_VC1_LEVEL_A_L1 = 0x40,
|
||||
VDEC_VC1_LEVEL_A_L2 = 0x80,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_VC1_LEVEL_A_L3 = 0x100,
|
||||
VDEC_VC1_LEVEL_A_L4 = 0x200
|
||||
};
|
||||
struct vdec_profile_level {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t profiles;
|
||||
uint32_t levels;
|
||||
};
|
||||
enum vdec_interlaced_format {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VDEC_InterlaceFrameProgressive = 0x1,
|
||||
VDEC_InterlaceInterleaveFrameTopFieldFirst = 0x2,
|
||||
VDEC_InterlaceInterleaveFrameBottomFieldFirst = 0x4
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum vdec_output_fromat {
|
||||
VDEC_YUV_FORMAT_NV12 = 0x1,
|
||||
VDEC_YUV_FORMAT_TILE_4x2 = 0x2,
|
||||
VDEC_YUV_FORMAT_NV12_UBWC = 0x3
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum vdec_output_order {
|
||||
VDEC_ORDER_DISPLAY = 0x1,
|
||||
VDEC_ORDER_DECODE = 0x2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct vdec_picsize {
|
||||
uint32_t frame_width;
|
||||
uint32_t frame_height;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t stride;
|
||||
uint32_t scan_lines;
|
||||
};
|
||||
struct vdec_seqheader {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
void * ptr_seqheader;
|
||||
size_t seq_header_len;
|
||||
int pmem_fd;
|
||||
size_t pmem_offset;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct vdec_mberror {
|
||||
void * ptr_errormap;
|
||||
size_t err_mapsize;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct vdec_input_frameinfo {
|
||||
void * bufferaddr;
|
||||
size_t offset;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
size_t datalen;
|
||||
uint32_t flags;
|
||||
int64_t timestamp;
|
||||
void * client_data;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int pmem_fd;
|
||||
size_t pmem_offset;
|
||||
void * desc_addr;
|
||||
uint32_t desc_size;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct vdec_framesize {
|
||||
uint32_t left;
|
||||
uint32_t top;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t right;
|
||||
uint32_t bottom;
|
||||
};
|
||||
struct vdec_aspectratioinfo {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t aspect_ratio;
|
||||
uint32_t par_width;
|
||||
uint32_t par_height;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct vdec_sep_metadatainfo {
|
||||
void * metabufaddr;
|
||||
uint32_t size;
|
||||
int fd;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int offset;
|
||||
uint32_t buffer_size;
|
||||
};
|
||||
struct vdec_output_frameinfo {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
void * bufferaddr;
|
||||
size_t offset;
|
||||
size_t len;
|
||||
uint32_t flags;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int64_t time_stamp;
|
||||
enum vdec_picture pic_type;
|
||||
void * client_data;
|
||||
void * input_frame_clientdata;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct vdec_picsize picsize;
|
||||
struct vdec_framesize framesize;
|
||||
enum vdec_interlaced_format interlaced_format;
|
||||
struct vdec_aspectratioinfo aspect_ratio_info;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct vdec_sep_metadatainfo metadata_info;
|
||||
};
|
||||
union vdec_msgdata {
|
||||
struct vdec_output_frameinfo output_frame;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
void * input_frame_clientdata;
|
||||
};
|
||||
struct vdec_msginfo {
|
||||
uint32_t status_code;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t msgcode;
|
||||
union vdec_msgdata msgdata;
|
||||
size_t msgdatasize;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct vdec_framerate {
|
||||
unsigned long fps_denominator;
|
||||
unsigned long fps_numerator;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct vdec_h264_mv {
|
||||
size_t size;
|
||||
int count;
|
||||
int pmem_fd;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int offset;
|
||||
};
|
||||
struct vdec_mv_buff_size {
|
||||
int width;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int height;
|
||||
int size;
|
||||
int alignment;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct vdec_meta_buffers {
|
||||
size_t size;
|
||||
int count;
|
||||
int pmem_fd;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int pmem_fd_iommu;
|
||||
int offset;
|
||||
};
|
||||
#endif
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
|
||||
479
kernel-headers/linux/msm_vidc_enc.h
Normal file
479
kernel-headers/linux/msm_vidc_enc.h
Normal file
@@ -0,0 +1,479 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _MSM_VIDC_ENC_H_
|
||||
#define _MSM_VIDC_ENC_H_
|
||||
#include <linux/types.h>
|
||||
#include <linux/ioctl.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_S_BASE 0x00000000
|
||||
#define VEN_S_SUCCESS (VEN_S_BASE)
|
||||
#define VEN_S_EFAIL (VEN_S_BASE + 1)
|
||||
#define VEN_S_EFATAL (VEN_S_BASE + 2)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_S_EBADPARAM (VEN_S_BASE + 3)
|
||||
#define VEN_S_EINVALSTATE (VEN_S_BASE + 4)
|
||||
#define VEN_S_ENOSWRES (VEN_S_BASE + 5)
|
||||
#define VEN_S_ENOHWRES (VEN_S_BASE + 6)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_S_EBUFFREQ (VEN_S_BASE + 7)
|
||||
#define VEN_S_EINVALCMD (VEN_S_BASE + 8)
|
||||
#define VEN_S_ETIMEOUT (VEN_S_BASE + 9)
|
||||
#define VEN_S_ENOREATMPT (VEN_S_BASE + 10)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_S_ENOPREREQ (VEN_S_BASE + 11)
|
||||
#define VEN_S_ECMDQFULL (VEN_S_BASE + 12)
|
||||
#define VEN_S_ENOTSUPP (VEN_S_BASE + 13)
|
||||
#define VEN_S_ENOTIMPL (VEN_S_BASE + 14)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_S_ENOTPMEM (VEN_S_BASE + 15)
|
||||
#define VEN_S_EFLUSHED (VEN_S_BASE + 16)
|
||||
#define VEN_S_EINSUFBUF (VEN_S_BASE + 17)
|
||||
#define VEN_S_ESAMESTATE (VEN_S_BASE + 18)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_S_EINVALTRANS (VEN_S_BASE + 19)
|
||||
#define VEN_INTF_VER 1
|
||||
#define VEN_MSG_INDICATION 0
|
||||
#define VEN_MSG_INPUT_BUFFER_DONE 1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_MSG_OUTPUT_BUFFER_DONE 2
|
||||
#define VEN_MSG_NEED_OUTPUT_BUFFER 3
|
||||
#define VEN_MSG_FLUSH_INPUT_DONE 4
|
||||
#define VEN_MSG_FLUSH_OUPUT_DONE 5
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_MSG_START 6
|
||||
#define VEN_MSG_STOP 7
|
||||
#define VEN_MSG_PAUSE 8
|
||||
#define VEN_MSG_RESUME 9
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_MSG_STOP_READING_MSG 10
|
||||
#define VEN_MSG_LTRUSE_FAILED 11
|
||||
#define VEN_MSG_HW_OVERLOAD 12
|
||||
#define VEN_MSG_MAX_CLIENTS 13
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_BUFFLAG_EOS 0x00000001
|
||||
#define VEN_BUFFLAG_ENDOFFRAME 0x00000010
|
||||
#define VEN_BUFFLAG_SYNCFRAME 0x00000020
|
||||
#define VEN_BUFFLAG_EXTRADATA 0x00000040
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_BUFFLAG_CODECCONFIG 0x00000080
|
||||
#define VEN_EXTRADATA_NONE 0x001
|
||||
#define VEN_EXTRADATA_QCOMFILLER 0x002
|
||||
#define VEN_EXTRADATA_SLICEINFO 0x100
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_EXTRADATA_LTRINFO 0x200
|
||||
#define VEN_EXTRADATA_MBINFO 0x400
|
||||
#define VEN_FRAME_TYPE_I 1
|
||||
#define VEN_FRAME_TYPE_P 2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_FRAME_TYPE_B 3
|
||||
#define VEN_CODEC_MPEG4 1
|
||||
#define VEN_CODEC_H264 2
|
||||
#define VEN_CODEC_H263 3
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_PROFILE_MPEG4_SP 1
|
||||
#define VEN_PROFILE_MPEG4_ASP 2
|
||||
#define VEN_PROFILE_H264_BASELINE 3
|
||||
#define VEN_PROFILE_H264_MAIN 4
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_PROFILE_H264_HIGH 5
|
||||
#define VEN_PROFILE_H263_BASELINE 6
|
||||
#define VEN_LEVEL_MPEG4_0 0x1
|
||||
#define VEN_LEVEL_MPEG4_1 0x2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_LEVEL_MPEG4_2 0x3
|
||||
#define VEN_LEVEL_MPEG4_3 0x4
|
||||
#define VEN_LEVEL_MPEG4_4 0x5
|
||||
#define VEN_LEVEL_MPEG4_5 0x6
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_LEVEL_MPEG4_3b 0x7
|
||||
#define VEN_LEVEL_MPEG4_6 0x8
|
||||
#define VEN_LEVEL_H264_1 0x9
|
||||
#define VEN_LEVEL_H264_1b 0xA
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_LEVEL_H264_1p1 0xB
|
||||
#define VEN_LEVEL_H264_1p2 0xC
|
||||
#define VEN_LEVEL_H264_1p3 0xD
|
||||
#define VEN_LEVEL_H264_2 0xE
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_LEVEL_H264_2p1 0xF
|
||||
#define VEN_LEVEL_H264_2p2 0x10
|
||||
#define VEN_LEVEL_H264_3 0x11
|
||||
#define VEN_LEVEL_H264_3p1 0x12
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_LEVEL_H264_3p2 0x13
|
||||
#define VEN_LEVEL_H264_4 0x14
|
||||
#define VEN_LEVEL_H263_10 0x15
|
||||
#define VEN_LEVEL_H263_20 0x16
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_LEVEL_H263_30 0x17
|
||||
#define VEN_LEVEL_H263_40 0x18
|
||||
#define VEN_LEVEL_H263_45 0x19
|
||||
#define VEN_LEVEL_H263_50 0x1A
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_LEVEL_H263_60 0x1B
|
||||
#define VEN_LEVEL_H263_70 0x1C
|
||||
#define VEN_ENTROPY_MODEL_CAVLC 1
|
||||
#define VEN_ENTROPY_MODEL_CABAC 2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_CABAC_MODEL_0 1
|
||||
#define VEN_CABAC_MODEL_1 2
|
||||
#define VEN_CABAC_MODEL_2 3
|
||||
#define VEN_DB_DISABLE 1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_DB_ALL_BLKG_BNDRY 2
|
||||
#define VEN_DB_SKIP_SLICE_BNDRY 3
|
||||
#define VEN_MSLICE_OFF 1
|
||||
#define VEN_MSLICE_CNT_MB 2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_MSLICE_CNT_BYTE 3
|
||||
#define VEN_MSLICE_GOB 4
|
||||
#define VEN_RC_OFF 1
|
||||
#define VEN_RC_VBR_VFR 2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_RC_VBR_CFR 3
|
||||
#define VEN_RC_CBR_VFR 4
|
||||
#define VEN_RC_CBR_CFR 5
|
||||
#define VEN_FLUSH_INPUT 1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_FLUSH_OUTPUT 2
|
||||
#define VEN_FLUSH_ALL 3
|
||||
#define VEN_INPUTFMT_NV12 1
|
||||
#define VEN_INPUTFMT_NV21 2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_INPUTFMT_NV12_16M2KA 3
|
||||
#define VEN_ROTATION_0 1
|
||||
#define VEN_ROTATION_90 2
|
||||
#define VEN_ROTATION_180 3
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_ROTATION_270 4
|
||||
#define VEN_TIMEOUT_INFINITE 0xffffffff
|
||||
#define VEN_IR_OFF 1
|
||||
#define VEN_IR_CYCLIC 2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IR_RANDOM 3
|
||||
#define VEN_IOCTLBASE_NENC 0x800
|
||||
#define VEN_IOCTLBASE_ENC 0x850
|
||||
struct venc_ioctl_msg {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
void * in;
|
||||
void * out;
|
||||
};
|
||||
#define VEN_IOCTL_SET_INTF_VERSION _IOW(VEN_IOCTLBASE_NENC, 0, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_CMD_READ_NEXT_MSG _IOWR(VEN_IOCTLBASE_NENC, 1, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_CMD_STOP_READ_MSG _IO(VEN_IOCTLBASE_NENC, 2)
|
||||
#define VEN_IOCTL_SET_INPUT_BUFFER_REQ _IOW(VEN_IOCTLBASE_NENC, 3, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_INPUT_BUFFER_REQ _IOR(VEN_IOCTLBASE_NENC, 4, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_CMD_ALLOC_INPUT_BUFFER _IOW(VEN_IOCTLBASE_NENC, 5, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_INPUT_BUFFER _IOW(VEN_IOCTLBASE_NENC, 6, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_CMD_FREE_INPUT_BUFFER _IOW(VEN_IOCTLBASE_NENC, 7, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_OUTPUT_BUFFER_REQ _IOW(VEN_IOCTLBASE_NENC, 8, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_GET_OUTPUT_BUFFER_REQ _IOR(VEN_IOCTLBASE_NENC, 9, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_CMD_ALLOC_OUTPUT_BUFFER _IOW(VEN_IOCTLBASE_NENC, 10, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_OUTPUT_BUFFER _IOW(VEN_IOCTLBASE_NENC, 11, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_CMD_FREE_OUTPUT_BUFFER _IOW(VEN_IOCTLBASE_NENC, 12, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_CMD_START _IO(VEN_IOCTLBASE_NENC, 13)
|
||||
#define VEN_IOCTL_CMD_ENCODE_FRAME _IOW(VEN_IOCTLBASE_NENC, 14, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_CMD_FILL_OUTPUT_BUFFER _IOW(VEN_IOCTLBASE_NENC, 15, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_CMD_FLUSH _IOW(VEN_IOCTLBASE_NENC, 16, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_CMD_PAUSE _IO(VEN_IOCTLBASE_NENC, 17)
|
||||
#define VEN_IOCTL_CMD_RESUME _IO(VEN_IOCTLBASE_NENC, 18)
|
||||
#define VEN_IOCTL_CMD_STOP _IO(VEN_IOCTLBASE_NENC, 19)
|
||||
#define VEN_IOCTL_SET_RECON_BUFFER _IOW(VEN_IOCTLBASE_NENC, 20, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_FREE_RECON_BUFFER _IOW(VEN_IOCTLBASE_NENC, 21, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_RECON_BUFFER_SIZE _IOW(VEN_IOCTLBASE_NENC, 22, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_BASE_CFG _IOW(VEN_IOCTLBASE_ENC, 1, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_BASE_CFG _IOR(VEN_IOCTLBASE_ENC, 2, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_SET_LIVE_MODE _IOW(VEN_IOCTLBASE_ENC, 3, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_LIVE_MODE _IOR(VEN_IOCTLBASE_ENC, 4, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_CODEC_PROFILE _IOW(VEN_IOCTLBASE_ENC, 5, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_CODEC_PROFILE _IOR(VEN_IOCTLBASE_ENC, 6, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_SET_PROFILE_LEVEL _IOW(VEN_IOCTLBASE_ENC, 7, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_PROFILE_LEVEL _IOR(VEN_IOCTLBASE_ENC, 8, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_SHORT_HDR _IOW(VEN_IOCTLBASE_ENC, 9, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_SHORT_HDR _IOR(VEN_IOCTLBASE_ENC, 10, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_SET_SESSION_QP _IOW(VEN_IOCTLBASE_ENC, 11, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_SESSION_QP _IOR(VEN_IOCTLBASE_ENC, 12, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_INTRA_PERIOD _IOW(VEN_IOCTLBASE_ENC, 13, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_INTRA_PERIOD _IOR(VEN_IOCTLBASE_ENC, 14, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_CMD_REQUEST_IFRAME _IO(VEN_IOCTLBASE_ENC, 15)
|
||||
#define VEN_IOCTL_GET_CAPABILITY _IOR(VEN_IOCTLBASE_ENC, 16, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_SEQUENCE_HDR _IOR(VEN_IOCTLBASE_ENC, 17, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_ENTROPY_CFG _IOW(VEN_IOCTLBASE_ENC, 18, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_GET_ENTROPY_CFG _IOR(VEN_IOCTLBASE_ENC, 19, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_DEBLOCKING_CFG _IOW(VEN_IOCTLBASE_ENC, 20, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_DEBLOCKING_CFG _IOR(VEN_IOCTLBASE_ENC, 21, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_INTRA_REFRESH _IOW(VEN_IOCTLBASE_ENC, 22, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_GET_INTRA_REFRESH _IOR(VEN_IOCTLBASE_ENC, 23, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_MULTI_SLICE_CFG _IOW(VEN_IOCTLBASE_ENC, 24, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_MULTI_SLICE_CFG _IOR(VEN_IOCTLBASE_ENC, 25, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_RATE_CTRL_CFG _IOW(VEN_IOCTLBASE_ENC, 26, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_GET_RATE_CTRL_CFG _IOR(VEN_IOCTLBASE_ENC, 27, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_VOP_TIMING_CFG _IOW(VEN_IOCTLBASE_ENC, 28, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_VOP_TIMING_CFG _IOR(VEN_IOCTLBASE_ENC, 29, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_FRAME_RATE _IOW(VEN_IOCTLBASE_ENC, 30, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_GET_FRAME_RATE _IOR(VEN_IOCTLBASE_ENC, 31, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_TARGET_BITRATE _IOW(VEN_IOCTLBASE_ENC, 32, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_TARGET_BITRATE _IOR(VEN_IOCTLBASE_ENC, 33, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_ROTATION _IOW(VEN_IOCTLBASE_ENC, 34, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_GET_ROTATION _IOR(VEN_IOCTLBASE_ENC, 35, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_HEC _IOW(VEN_IOCTLBASE_ENC, 36, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_HEC _IOR(VEN_IOCTLBASE_ENC, 37, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_DATA_PARTITION _IOW(VEN_IOCTLBASE_ENC, 38, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_GET_DATA_PARTITION _IOR(VEN_IOCTLBASE_ENC, 39, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_RVLC _IOW(VEN_IOCTLBASE_ENC, 40, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_RVLC _IOR(VEN_IOCTLBASE_ENC, 41, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_AC_PREDICTION _IOW(VEN_IOCTLBASE_ENC, 42, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_GET_AC_PREDICTION _IOR(VEN_IOCTLBASE_ENC, 43, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_QP_RANGE _IOW(VEN_IOCTLBASE_ENC, 44, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_QP_RANGE _IOR(VEN_IOCTLBASE_ENC, 45, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_NUMBER_INSTANCES _IOR(VEN_IOCTLBASE_ENC, 46, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_SET_METABUFFER_MODE _IOW(VEN_IOCTLBASE_ENC, 47, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_EXTRADATA _IOW(VEN_IOCTLBASE_ENC, 48, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_EXTRADATA _IOR(VEN_IOCTLBASE_ENC, 49, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_SLICE_DELIVERY_MODE _IO(VEN_IOCTLBASE_ENC, 50)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_SET_H263_PLUSPTYPE _IOW(VEN_IOCTLBASE_ENC, 51, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_CAPABILITY_LTRCOUNT _IOW(VEN_IOCTLBASE_ENC, 52, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_CAPABILITY_LTRCOUNT _IOR(VEN_IOCTLBASE_ENC, 53, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_LTRMODE _IOW(VEN_IOCTLBASE_ENC, 54, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_GET_LTRMODE _IOR(VEN_IOCTLBASE_ENC, 55, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_LTRCOUNT _IOW(VEN_IOCTLBASE_ENC, 56, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_LTRCOUNT _IOR(VEN_IOCTLBASE_ENC, 57, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_LTRPERIOD _IOW(VEN_IOCTLBASE_ENC, 58, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_GET_LTRPERIOD _IOR(VEN_IOCTLBASE_ENC, 59, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_LTRUSE _IOW(VEN_IOCTLBASE_ENC, 60, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_GET_LTRUSE _IOR(VEN_IOCTLBASE_ENC, 61, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_LTRMARK _IOW(VEN_IOCTLBASE_ENC, 62, struct venc_ioctl_msg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VEN_IOCTL_GET_LTRMARK _IOR(VEN_IOCTLBASE_ENC, 63, struct venc_ioctl_msg)
|
||||
#define VEN_IOCTL_SET_SPS_PPS_FOR_IDR _IOW(VEN_IOCTLBASE_ENC, 64, struct venc_ioctl_msg)
|
||||
struct venc_range {
|
||||
unsigned long max;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long min;
|
||||
unsigned long step_size;
|
||||
};
|
||||
struct venc_switch {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned char status;
|
||||
};
|
||||
struct venc_allocatorproperty {
|
||||
unsigned long mincount;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long maxcount;
|
||||
unsigned long actualcount;
|
||||
unsigned long datasize;
|
||||
unsigned long suffixsize;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long alignment;
|
||||
unsigned long bufpoolid;
|
||||
};
|
||||
struct venc_bufferpayload {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned char * pbuffer;
|
||||
size_t sz;
|
||||
int fd;
|
||||
unsigned int offset;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int maped_size;
|
||||
unsigned long filled_len;
|
||||
};
|
||||
struct venc_buffer {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned char * ptrbuffer;
|
||||
unsigned long sz;
|
||||
unsigned long len;
|
||||
unsigned long offset;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
long long timestamp;
|
||||
unsigned long flags;
|
||||
void * clientdata;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct venc_basecfg {
|
||||
unsigned long input_width;
|
||||
unsigned long input_height;
|
||||
unsigned long dvs_width;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long dvs_height;
|
||||
unsigned long codectype;
|
||||
unsigned long fps_num;
|
||||
unsigned long fps_den;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long targetbitrate;
|
||||
unsigned long inputformat;
|
||||
};
|
||||
struct venc_profile {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long profile;
|
||||
};
|
||||
struct ven_profilelevel {
|
||||
unsigned long level;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct venc_sessionqp {
|
||||
unsigned long iframeqp;
|
||||
unsigned long pframqp;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct venc_qprange {
|
||||
unsigned long maxqp;
|
||||
unsigned long minqp;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct venc_plusptype {
|
||||
unsigned long plusptype_enable;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct venc_intraperiod {
|
||||
unsigned long num_pframes;
|
||||
unsigned long num_bframes;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct venc_seqheader {
|
||||
unsigned char * hdrbufptr;
|
||||
unsigned long bufsize;
|
||||
unsigned long hdrlen;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct venc_capability {
|
||||
unsigned long codec_types;
|
||||
unsigned long maxframe_width;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long maxframe_height;
|
||||
unsigned long maxtarget_bitrate;
|
||||
unsigned long maxframe_rate;
|
||||
unsigned long input_formats;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned char dvs;
|
||||
};
|
||||
struct venc_entropycfg {
|
||||
unsigned longentropysel;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long cabacmodel;
|
||||
};
|
||||
struct venc_dbcfg {
|
||||
unsigned long db_mode;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long slicealpha_offset;
|
||||
unsigned long slicebeta_offset;
|
||||
};
|
||||
struct venc_intrarefresh {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long irmode;
|
||||
unsigned long mbcount;
|
||||
};
|
||||
struct venc_multiclicecfg {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long mslice_mode;
|
||||
unsigned long mslice_size;
|
||||
};
|
||||
struct venc_bufferflush {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long flush_mode;
|
||||
};
|
||||
struct venc_ratectrlcfg {
|
||||
unsigned long rcmode;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct venc_voptimingcfg {
|
||||
unsigned long voptime_resolution;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct venc_framerate {
|
||||
unsigned long fps_denominator;
|
||||
unsigned long fps_numerator;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct venc_targetbitrate {
|
||||
unsigned long target_bitrate;
|
||||
};
|
||||
struct venc_rotation {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long rotation;
|
||||
};
|
||||
struct venc_timeout {
|
||||
unsigned long millisec;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct venc_headerextension {
|
||||
unsigned long header_extension;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct venc_msg {
|
||||
unsigned long statuscode;
|
||||
unsigned long msgcode;
|
||||
struct venc_buffer buf;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long msgdata_size;
|
||||
};
|
||||
struct venc_recon_addr {
|
||||
unsigned char * pbuffer;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long buffer_size;
|
||||
unsigned long pmem_fd;
|
||||
unsigned long offset;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct venc_recon_buff_size {
|
||||
int width;
|
||||
int height;
|
||||
int size;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int alignment;
|
||||
};
|
||||
struct venc_ltrmode {
|
||||
unsigned long ltr_mode;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct venc_ltrcount {
|
||||
unsigned long ltr_count;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct venc_ltrperiod {
|
||||
unsigned long ltr_period;
|
||||
};
|
||||
struct venc_ltruse {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long ltr_id;
|
||||
unsigned long ltr_frames;
|
||||
};
|
||||
#endif
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
|
||||
136
kernel-headers/linux/rmnet_data.h
Normal file
136
kernel-headers/linux/rmnet_data.h
Normal file
@@ -0,0 +1,136 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _RMNET_DATA_H_
|
||||
#define _RMNET_DATA_H_
|
||||
#define RMNET_LOCAL_LOGICAL_ENDPOINT - 1
|
||||
#define RMNET_EGRESS_FORMAT__RESERVED__ (1 << 0)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define RMNET_EGRESS_FORMAT_MAP (1 << 1)
|
||||
#define RMNET_EGRESS_FORMAT_AGGREGATION (1 << 2)
|
||||
#define RMNET_EGRESS_FORMAT_MUXING (1 << 3)
|
||||
#define RMNET_EGRESS_FORMAT_MAP_CKSUMV3 (1 << 4)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define RMNET_EGRESS_FORMAT_MAP_CKSUMV4 (1 << 5)
|
||||
#define RMNET_INGRESS_FIX_ETHERNET (1 << 0)
|
||||
#define RMNET_INGRESS_FORMAT_MAP (1 << 1)
|
||||
#define RMNET_INGRESS_FORMAT_DEAGGREGATION (1 << 2)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define RMNET_INGRESS_FORMAT_DEMUXING (1 << 3)
|
||||
#define RMNET_INGRESS_FORMAT_MAP_COMMANDS (1 << 4)
|
||||
#define RMNET_INGRESS_FORMAT_MAP_CKSUMV3 (1 << 5)
|
||||
#define RMNET_INGRESS_FORMAT_MAP_CKSUMV4 (1 << 6)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define RMNET_NETLINK_PROTO 31
|
||||
#define RMNET_MAX_STR_LEN 16
|
||||
#define RMNET_NL_DATA_MAX_LEN 64
|
||||
#define RMNET_NETLINK_MSG_COMMAND 0
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define RMNET_NETLINK_MSG_RETURNCODE 1
|
||||
#define RMNET_NETLINK_MSG_RETURNDATA 2
|
||||
struct rmnet_nl_msg_s {
|
||||
uint16_t reserved;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint16_t message_type;
|
||||
uint16_t reserved2 : 14;
|
||||
uint16_t crd : 2;
|
||||
union {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint16_t arg_length;
|
||||
uint16_t return_code;
|
||||
};
|
||||
union {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t data[RMNET_NL_DATA_MAX_LEN];
|
||||
struct {
|
||||
uint8_t dev[RMNET_MAX_STR_LEN];
|
||||
uint32_t flags;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint16_t agg_size;
|
||||
uint16_t agg_count;
|
||||
uint8_t tail_spacing;
|
||||
} data_format;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct {
|
||||
uint8_t dev[RMNET_MAX_STR_LEN];
|
||||
int32_t ep_id;
|
||||
uint8_t operating_mode;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t next_dev[RMNET_MAX_STR_LEN];
|
||||
} local_ep_config;
|
||||
struct {
|
||||
uint32_t id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t vnd_name[RMNET_MAX_STR_LEN];
|
||||
} vnd;
|
||||
struct {
|
||||
uint32_t id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t map_flow_id;
|
||||
uint32_t tc_flow_id;
|
||||
} flow_control;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum rmnet_netlink_message_types_e {
|
||||
RMNET_NETLINK_ASSOCIATE_NETWORK_DEVICE,
|
||||
RMNET_NETLINK_UNASSOCIATE_NETWORK_DEVICE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
RMNET_NETLINK_GET_NETWORK_DEVICE_ASSOCIATED,
|
||||
RMNET_NETLINK_SET_LINK_EGRESS_DATA_FORMAT,
|
||||
RMNET_NETLINK_GET_LINK_EGRESS_DATA_FORMAT,
|
||||
RMNET_NETLINK_SET_LINK_INGRESS_DATA_FORMAT,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
RMNET_NETLINK_GET_LINK_INGRESS_DATA_FORMAT,
|
||||
RMNET_NETLINK_SET_LOGICAL_EP_CONFIG,
|
||||
RMNET_NETLINK_UNSET_LOGICAL_EP_CONFIG,
|
||||
RMNET_NETLINK_GET_LOGICAL_EP_CONFIG,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
RMNET_NETLINK_NEW_VND,
|
||||
RMNET_NETLINK_NEW_VND_WITH_PREFIX,
|
||||
RMNET_NETLINK_GET_VND_NAME,
|
||||
RMNET_NETLINK_FREE_VND,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
RMNET_NETLINK_ADD_VND_TC_FLOW,
|
||||
RMNET_NETLINK_DEL_VND_TC_FLOW
|
||||
};
|
||||
enum rmnet_config_endpoint_modes_e {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
RMNET_EPMODE_NONE,
|
||||
RMNET_EPMODE_VND,
|
||||
RMNET_EPMODE_BRIDGE,
|
||||
RMNET_EPMODE_LENGTH
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum rmnet_config_return_codes_e {
|
||||
RMNET_CONFIG_OK,
|
||||
RMNET_CONFIG_UNKNOWN_MESSAGE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
RMNET_CONFIG_UNKNOWN_ERROR,
|
||||
RMNET_CONFIG_NOMEM,
|
||||
RMNET_CONFIG_DEVICE_IN_USE,
|
||||
RMNET_CONFIG_INVALID_REQUEST,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
RMNET_CONFIG_NO_SUCH_DEVICE,
|
||||
RMNET_CONFIG_BAD_ARGUMENTS,
|
||||
RMNET_CONFIG_BAD_EGRESS_DEVICE,
|
||||
RMNET_CONFIG_TC_HANDLE_FULL
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#endif
|
||||
|
||||
120
kernel-headers/linux/sockios.h
Normal file
120
kernel-headers/linux/sockios.h
Normal file
@@ -0,0 +1,120 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _LINUX_SOCKIOS_H
|
||||
#define _LINUX_SOCKIOS_H
|
||||
#include <asm/sockios.h>
|
||||
#define SIOCINQ FIONREAD
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SIOCOUTQ TIOCOUTQ
|
||||
#define SIOCADDRT 0x890B
|
||||
#define SIOCDELRT 0x890C
|
||||
#define SIOCRTMSG 0x890D
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SIOCGIFNAME 0x8910
|
||||
#define SIOCSIFLINK 0x8911
|
||||
#define SIOCGIFCONF 0x8912
|
||||
#define SIOCGIFFLAGS 0x8913
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SIOCSIFFLAGS 0x8914
|
||||
#define SIOCGIFADDR 0x8915
|
||||
#define SIOCSIFADDR 0x8916
|
||||
#define SIOCGIFDSTADDR 0x8917
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SIOCSIFDSTADDR 0x8918
|
||||
#define SIOCGIFBRDADDR 0x8919
|
||||
#define SIOCSIFBRDADDR 0x891a
|
||||
#define SIOCGIFNETMASK 0x891b
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SIOCSIFNETMASK 0x891c
|
||||
#define SIOCGIFMETRIC 0x891d
|
||||
#define SIOCSIFMETRIC 0x891e
|
||||
#define SIOCGIFMEM 0x891f
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SIOCSIFMEM 0x8920
|
||||
#define SIOCGIFMTU 0x8921
|
||||
#define SIOCSIFMTU 0x8922
|
||||
#define SIOCSIFNAME 0x8923
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SIOCSIFHWADDR 0x8924
|
||||
#define SIOCGIFENCAP 0x8925
|
||||
#define SIOCSIFENCAP 0x8926
|
||||
#define SIOCGIFHWADDR 0x8927
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SIOCGIFSLAVE 0x8929
|
||||
#define SIOCSIFSLAVE 0x8930
|
||||
#define SIOCADDMULTI 0x8931
|
||||
#define SIOCDELMULTI 0x8932
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SIOCGIFINDEX 0x8933
|
||||
#define SIOGIFINDEX SIOCGIFINDEX
|
||||
#define SIOCSIFPFLAGS 0x8934
|
||||
#define SIOCGIFPFLAGS 0x8935
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SIOCDIFADDR 0x8936
|
||||
#define SIOCSIFHWBROADCAST 0x8937
|
||||
#define SIOCGIFCOUNT 0x8938
|
||||
#define SIOCKILLADDR 0x8939
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SIOCGIFBR 0x8940
|
||||
#define SIOCSIFBR 0x8941
|
||||
#define SIOCGIFTXQLEN 0x8942
|
||||
#define SIOCSIFTXQLEN 0x8943
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SIOCETHTOOL 0x8946
|
||||
#define SIOCGMIIPHY 0x8947
|
||||
#define SIOCGMIIREG 0x8948
|
||||
#define SIOCSMIIREG 0x8949
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SIOCWANDEV 0x894A
|
||||
#define SIOCOUTQNSD 0x894B
|
||||
#define SIOCDARP 0x8953
|
||||
#define SIOCGARP 0x8954
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SIOCSARP 0x8955
|
||||
#define SIOCDRARP 0x8960
|
||||
#define SIOCGRARP 0x8961
|
||||
#define SIOCSRARP 0x8962
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SIOCGIFMAP 0x8970
|
||||
#define SIOCSIFMAP 0x8971
|
||||
#define SIOCADDDLCI 0x8980
|
||||
#define SIOCDELDLCI 0x8981
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SIOCGIFVLAN 0x8982
|
||||
#define SIOCSIFVLAN 0x8983
|
||||
#define SIOCBONDENSLAVE 0x8990
|
||||
#define SIOCBONDRELEASE 0x8991
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SIOCBONDSETHWADDR 0x8992
|
||||
#define SIOCBONDSLAVEINFOQUERY 0x8993
|
||||
#define SIOCBONDINFOQUERY 0x8994
|
||||
#define SIOCBONDCHANGEACTIVE 0x8995
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SIOCBRADDBR 0x89a0
|
||||
#define SIOCBRDELBR 0x89a1
|
||||
#define SIOCBRADDIF 0x89a2
|
||||
#define SIOCBRDELIF 0x89a3
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SIOCSHWTSTAMP 0x89b0
|
||||
#define SIOCGHWTSTAMP 0x89b1
|
||||
#define SIOCDEVPRIVATE 0x89F0
|
||||
#define SIOCPROTOPRIVATE 0x89E0
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
|
||||
1452
kernel-headers/linux/v4l2-controls.h
Normal file
1452
kernel-headers/linux/v4l2-controls.h
Normal file
File diff suppressed because it is too large
Load Diff
1667
kernel-headers/linux/videodev2.h
Normal file
1667
kernel-headers/linux/videodev2.h
Normal file
File diff suppressed because it is too large
Load Diff
630
kernel-headers/media/msm_cam_sensor.h
Normal file
630
kernel-headers/media/msm_cam_sensor.h
Normal file
@@ -0,0 +1,630 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __UAPI_LINUX_MSM_CAM_SENSOR_H
|
||||
#define __UAPI_LINUX_MSM_CAM_SENSOR_H
|
||||
#include <linux/v4l2-mediabus.h>
|
||||
#include <media/msm_camsensor_sdk.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#include <linux/types.h>
|
||||
#include <linux/i2c.h>
|
||||
#define I2C_SEQ_REG_SETTING_MAX 5
|
||||
#define MSM_SENSOR_MCLK_8HZ 8000000
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_SENSOR_MCLK_16HZ 16000000
|
||||
#define MSM_SENSOR_MCLK_24HZ 24000000
|
||||
#define MAX_SENSOR_NAME 32
|
||||
#define MAX_ACTUATOR_AF_TOTAL_STEPS 1024
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MAX_OIS_MOD_NAME_SIZE 32
|
||||
#define MAX_OIS_NAME_SIZE 32
|
||||
#define MAX_OIS_REG_SETTINGS 800
|
||||
#define MOVE_NEAR 0
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MOVE_FAR 1
|
||||
#define MSM_ACTUATOR_MOVE_SIGNED_FAR - 1
|
||||
#define MSM_ACTUATOR_MOVE_SIGNED_NEAR 1
|
||||
#define MAX_ACTUATOR_REGION 5
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MAX_EEPROM_NAME 32
|
||||
#define MAX_AF_ITERATIONS 3
|
||||
#define MAX_NUMBER_OF_STEPS 47
|
||||
#define MAX_REGULATOR 5
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_V4L2_PIX_FMT_META v4l2_fourcc('M', 'E', 'T', 'A')
|
||||
#define MSM_V4L2_PIX_FMT_SBGGR14 v4l2_fourcc('B', 'G', '1', '4')
|
||||
#define MSM_V4L2_PIX_FMT_SGBRG14 v4l2_fourcc('G', 'B', '1', '4')
|
||||
#define MSM_V4L2_PIX_FMT_SGRBG14 v4l2_fourcc('B', 'A', '1', '4')
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_V4L2_PIX_FMT_SRGGB14 v4l2_fourcc('R', 'G', '1', '4')
|
||||
enum flash_type {
|
||||
LED_FLASH = 1,
|
||||
STROBE_FLASH,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
GPIO_FLASH
|
||||
};
|
||||
enum msm_sensor_resolution_t {
|
||||
MSM_SENSOR_RES_FULL,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_SENSOR_RES_QTR,
|
||||
MSM_SENSOR_RES_2,
|
||||
MSM_SENSOR_RES_3,
|
||||
MSM_SENSOR_RES_4,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_SENSOR_RES_5,
|
||||
MSM_SENSOR_RES_6,
|
||||
MSM_SENSOR_RES_7,
|
||||
MSM_SENSOR_INVALID_RES,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum msm_camera_stream_type_t {
|
||||
MSM_CAMERA_STREAM_PREVIEW,
|
||||
MSM_CAMERA_STREAM_SNAPSHOT,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_CAMERA_STREAM_VIDEO,
|
||||
MSM_CAMERA_STREAM_INVALID,
|
||||
};
|
||||
enum sensor_sub_module_t {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
SUB_MODULE_SENSOR,
|
||||
SUB_MODULE_CHROMATIX,
|
||||
SUB_MODULE_ACTUATOR,
|
||||
SUB_MODULE_EEPROM,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
SUB_MODULE_LED_FLASH,
|
||||
SUB_MODULE_STROBE_FLASH,
|
||||
SUB_MODULE_CSID,
|
||||
SUB_MODULE_CSID_3D,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
SUB_MODULE_CSIPHY,
|
||||
SUB_MODULE_CSIPHY_3D,
|
||||
SUB_MODULE_OIS,
|
||||
SUB_MODULE_EXT,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
SUB_MODULE_MAX,
|
||||
};
|
||||
enum {
|
||||
MSM_CAMERA_EFFECT_MODE_OFF,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_CAMERA_EFFECT_MODE_MONO,
|
||||
MSM_CAMERA_EFFECT_MODE_NEGATIVE,
|
||||
MSM_CAMERA_EFFECT_MODE_SOLARIZE,
|
||||
MSM_CAMERA_EFFECT_MODE_SEPIA,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_CAMERA_EFFECT_MODE_POSTERIZE,
|
||||
MSM_CAMERA_EFFECT_MODE_WHITEBOARD,
|
||||
MSM_CAMERA_EFFECT_MODE_BLACKBOARD,
|
||||
MSM_CAMERA_EFFECT_MODE_AQUA,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_CAMERA_EFFECT_MODE_EMBOSS,
|
||||
MSM_CAMERA_EFFECT_MODE_SKETCH,
|
||||
MSM_CAMERA_EFFECT_MODE_NEON,
|
||||
MSM_CAMERA_EFFECT_MODE_MAX
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum {
|
||||
MSM_CAMERA_WB_MODE_AUTO,
|
||||
MSM_CAMERA_WB_MODE_CUSTOM,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_CAMERA_WB_MODE_INCANDESCENT,
|
||||
MSM_CAMERA_WB_MODE_FLUORESCENT,
|
||||
MSM_CAMERA_WB_MODE_WARM_FLUORESCENT,
|
||||
MSM_CAMERA_WB_MODE_DAYLIGHT,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_CAMERA_WB_MODE_CLOUDY_DAYLIGHT,
|
||||
MSM_CAMERA_WB_MODE_TWILIGHT,
|
||||
MSM_CAMERA_WB_MODE_SHADE,
|
||||
MSM_CAMERA_WB_MODE_OFF,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_CAMERA_WB_MODE_MAX
|
||||
};
|
||||
enum {
|
||||
MSM_CAMERA_SCENE_MODE_OFF,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_CAMERA_SCENE_MODE_AUTO,
|
||||
MSM_CAMERA_SCENE_MODE_LANDSCAPE,
|
||||
MSM_CAMERA_SCENE_MODE_SNOW,
|
||||
MSM_CAMERA_SCENE_MODE_BEACH,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_CAMERA_SCENE_MODE_SUNSET,
|
||||
MSM_CAMERA_SCENE_MODE_NIGHT,
|
||||
MSM_CAMERA_SCENE_MODE_PORTRAIT,
|
||||
MSM_CAMERA_SCENE_MODE_BACKLIGHT,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_CAMERA_SCENE_MODE_SPORTS,
|
||||
MSM_CAMERA_SCENE_MODE_ANTISHAKE,
|
||||
MSM_CAMERA_SCENE_MODE_FLOWERS,
|
||||
MSM_CAMERA_SCENE_MODE_CANDLELIGHT,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_CAMERA_SCENE_MODE_FIREWORKS,
|
||||
MSM_CAMERA_SCENE_MODE_PARTY,
|
||||
MSM_CAMERA_SCENE_MODE_NIGHT_PORTRAIT,
|
||||
MSM_CAMERA_SCENE_MODE_THEATRE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_CAMERA_SCENE_MODE_ACTION,
|
||||
MSM_CAMERA_SCENE_MODE_AR,
|
||||
MSM_CAMERA_SCENE_MODE_FACE_PRIORITY,
|
||||
MSM_CAMERA_SCENE_MODE_BARCODE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_CAMERA_SCENE_MODE_HDR,
|
||||
MSM_CAMERA_SCENE_MODE_MAX
|
||||
};
|
||||
enum csid_cfg_type_t {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CSID_INIT,
|
||||
CSID_CFG,
|
||||
CSID_TESTMODE_CFG,
|
||||
CSID_RELEASE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum csiphy_cfg_type_t {
|
||||
CSIPHY_INIT,
|
||||
CSIPHY_CFG,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CSIPHY_RELEASE,
|
||||
};
|
||||
enum camera_vreg_type {
|
||||
VREG_TYPE_DEFAULT,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VREG_TYPE_CUSTOM,
|
||||
};
|
||||
enum sensor_af_t {
|
||||
SENSOR_AF_FOCUSSED,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
SENSOR_AF_NOT_FOCUSSED,
|
||||
};
|
||||
enum cci_i2c_master_t {
|
||||
MASTER_0,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MASTER_1,
|
||||
MASTER_MAX,
|
||||
};
|
||||
struct msm_camera_i2c_array_write_config {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_camera_i2c_reg_setting conf_array;
|
||||
uint16_t slave_addr;
|
||||
};
|
||||
struct msm_camera_i2c_read_config {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint16_t slave_addr;
|
||||
uint16_t reg_addr;
|
||||
enum msm_camera_i2c_reg_addr_type addr_type;
|
||||
enum msm_camera_i2c_data_type data_type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint16_t data;
|
||||
};
|
||||
struct msm_camera_csi2_params {
|
||||
struct msm_camera_csid_params csid_params;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_camera_csiphy_params csiphy_params;
|
||||
uint8_t csi_clk_scale_enable;
|
||||
};
|
||||
struct msm_camera_csi_lane_params {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint16_t csi_lane_assign;
|
||||
uint16_t csi_lane_mask;
|
||||
};
|
||||
struct csi_lane_params_t {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint16_t csi_lane_assign;
|
||||
uint8_t csi_lane_mask;
|
||||
uint8_t csi_if;
|
||||
int8_t csid_core[2];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t csi_phy_sel;
|
||||
};
|
||||
struct msm_sensor_info_t {
|
||||
char sensor_name[MAX_SENSOR_NAME];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t session_id;
|
||||
int32_t subdev_id[SUB_MODULE_MAX];
|
||||
int32_t subdev_intf[SUB_MODULE_MAX];
|
||||
uint8_t is_mount_angle_valid;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t sensor_mount_angle;
|
||||
int modes_supported;
|
||||
enum camb_position_t position;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct camera_vreg_t {
|
||||
const char * reg_name;
|
||||
int min_voltage;
|
||||
int max_voltage;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int op_mode;
|
||||
uint32_t delay;
|
||||
const char * custom_vreg_name;
|
||||
enum camera_vreg_type type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct sensorb_cfg_data {
|
||||
int cfgtype;
|
||||
union {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_sensor_info_t sensor_info;
|
||||
struct msm_sensor_init_params sensor_init_params;
|
||||
void * setting;
|
||||
struct msm_sensor_i2c_sync_params sensor_i2c_sync_params;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
} cfg;
|
||||
};
|
||||
struct csid_cfg_data {
|
||||
enum csid_cfg_type_t cfgtype;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
union {
|
||||
uint32_t csid_version;
|
||||
struct msm_camera_csid_params * csid_params;
|
||||
struct msm_camera_csid_testmode_parms * csid_testmode_params;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
} cfg;
|
||||
};
|
||||
struct csiphy_cfg_data {
|
||||
enum csiphy_cfg_type_t cfgtype;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
union {
|
||||
struct msm_camera_csiphy_params * csiphy_params;
|
||||
struct msm_camera_csi_lane_params * csi_lane_params;
|
||||
} cfg;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum eeprom_cfg_type_t {
|
||||
CFG_EEPROM_GET_INFO,
|
||||
CFG_EEPROM_GET_CAL_DATA,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CFG_EEPROM_READ_CAL_DATA,
|
||||
CFG_EEPROM_WRITE_DATA,
|
||||
CFG_EEPROM_GET_MM_INFO,
|
||||
CFG_EEPROM_INIT,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct eeprom_get_t {
|
||||
uint32_t num_bytes;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct eeprom_read_t {
|
||||
uint8_t * dbuffer;
|
||||
uint32_t num_bytes;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct eeprom_write_t {
|
||||
uint8_t * dbuffer;
|
||||
uint32_t num_bytes;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct eeprom_get_cmm_t {
|
||||
uint32_t cmm_support;
|
||||
uint32_t cmm_compression;
|
||||
uint32_t cmm_size;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_eeprom_info_t {
|
||||
struct msm_sensor_power_setting_array * power_setting_array;
|
||||
enum i2c_freq_mode_t i2c_freq_mode;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_eeprom_memory_map_array * mem_map_array;
|
||||
};
|
||||
struct msm_eeprom_cfg_data {
|
||||
enum eeprom_cfg_type_t cfgtype;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t is_supported;
|
||||
union {
|
||||
char eeprom_name[MAX_SENSOR_NAME];
|
||||
struct eeprom_get_t get_data;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct eeprom_read_t read_data;
|
||||
struct eeprom_write_t write_data;
|
||||
struct eeprom_get_cmm_t get_cmm_data;
|
||||
struct msm_eeprom_info_t eeprom_info;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
} cfg;
|
||||
};
|
||||
enum msm_sensor_cfg_type_t {
|
||||
CFG_SET_SLAVE_INFO,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CFG_SLAVE_READ_I2C,
|
||||
CFG_WRITE_I2C_ARRAY,
|
||||
CFG_SLAVE_WRITE_I2C_ARRAY,
|
||||
CFG_WRITE_I2C_SEQ_ARRAY,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CFG_POWER_UP,
|
||||
CFG_POWER_DOWN,
|
||||
CFG_SET_STOP_STREAM_SETTING,
|
||||
CFG_GET_SENSOR_INFO,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CFG_GET_SENSOR_INIT_PARAMS,
|
||||
CFG_SET_INIT_SETTING,
|
||||
CFG_SET_RESOLUTION,
|
||||
CFG_SET_STOP_STREAM,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CFG_SET_START_STREAM,
|
||||
CFG_SET_SATURATION,
|
||||
CFG_SET_CONTRAST,
|
||||
CFG_SET_SHARPNESS,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CFG_SET_ISO,
|
||||
CFG_SET_EXPOSURE_COMPENSATION,
|
||||
CFG_SET_ANTIBANDING,
|
||||
CFG_SET_BESTSHOT_MODE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CFG_SET_EFFECT,
|
||||
CFG_SET_WHITE_BALANCE,
|
||||
CFG_SET_AUTOFOCUS,
|
||||
CFG_CANCEL_AUTOFOCUS,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CFG_SET_STREAM_TYPE,
|
||||
CFG_SET_I2C_SYNC_PARAM,
|
||||
CFG_WRITE_I2C_ARRAY_ASYNC,
|
||||
CFG_WRITE_I2C_ARRAY_SYNC,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CFG_WRITE_I2C_ARRAY_SYNC_BLOCK,
|
||||
};
|
||||
enum msm_actuator_cfg_type_t {
|
||||
CFG_GET_ACTUATOR_INFO,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CFG_SET_ACTUATOR_INFO,
|
||||
CFG_SET_DEFAULT_FOCUS,
|
||||
CFG_MOVE_FOCUS,
|
||||
CFG_SET_POSITION,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CFG_ACTUATOR_POWERDOWN,
|
||||
CFG_ACTUATOR_POWERUP,
|
||||
CFG_ACTUATOR_INIT,
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_ois_opcode {
|
||||
uint32_t prog;
|
||||
uint32_t coeff;
|
||||
uint32_t pheripheral;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t memory;
|
||||
};
|
||||
enum msm_ois_cfg_type_t {
|
||||
CFG_OIS_INIT,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CFG_OIS_POWERDOWN,
|
||||
CFG_OIS_POWERUP,
|
||||
CFG_OIS_CONTROL,
|
||||
CFG_OIS_I2C_WRITE_SEQ_TABLE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum msm_ois_cfg_download_type_t {
|
||||
CFG_OIS_DOWNLOAD,
|
||||
CFG_OIS_DATA_CONFIG,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum msm_ois_i2c_operation {
|
||||
MSM_OIS_WRITE = 0,
|
||||
MSM_OIS_POLL,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct reg_settings_ois_t {
|
||||
uint16_t reg_addr;
|
||||
enum msm_camera_i2c_reg_addr_type addr_type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t reg_data;
|
||||
enum msm_camera_i2c_data_type data_type;
|
||||
enum msm_ois_i2c_operation i2c_operation;
|
||||
uint32_t delay;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_ois_params_t {
|
||||
uint16_t data_size;
|
||||
uint16_t setting_size;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t i2c_addr;
|
||||
enum i2c_freq_mode_t i2c_freq_mode;
|
||||
enum msm_camera_i2c_reg_addr_type i2c_addr_type;
|
||||
enum msm_camera_i2c_data_type i2c_data_type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct reg_settings_ois_t * settings;
|
||||
};
|
||||
struct msm_ois_set_info_t {
|
||||
struct msm_ois_params_t ois_params;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_actuator_move_params_t {
|
||||
int8_t dir;
|
||||
int8_t sign_dir;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int16_t dest_step_pos;
|
||||
int32_t num_steps;
|
||||
uint16_t curr_lens_pos;
|
||||
struct damping_params_t * ringing_params;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_actuator_tuning_params_t {
|
||||
int16_t initial_code;
|
||||
uint16_t pwd_step;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint16_t region_size;
|
||||
uint32_t total_steps;
|
||||
struct region_params_t * region_params;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct park_lens_data_t {
|
||||
uint32_t damping_step;
|
||||
uint32_t damping_delay;
|
||||
uint32_t hw_params;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t max_step;
|
||||
};
|
||||
struct msm_actuator_params_t {
|
||||
enum actuator_type act_type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t reg_tbl_size;
|
||||
uint16_t data_size;
|
||||
uint16_t init_setting_size;
|
||||
uint32_t i2c_addr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum i2c_freq_mode_t i2c_freq_mode;
|
||||
enum msm_camera_i2c_reg_addr_type i2c_addr_type;
|
||||
enum msm_camera_i2c_data_type i2c_data_type;
|
||||
struct msm_actuator_reg_params_t * reg_tbl_params;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct reg_settings_t * init_settings;
|
||||
struct park_lens_data_t park_lens;
|
||||
};
|
||||
struct msm_actuator_set_info_t {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_actuator_params_t actuator_params;
|
||||
struct msm_actuator_tuning_params_t af_tuning_params;
|
||||
};
|
||||
struct msm_actuator_get_info_t {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t focal_length_num;
|
||||
uint32_t focal_length_den;
|
||||
uint32_t f_number_num;
|
||||
uint32_t f_number_den;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t f_pix_num;
|
||||
uint32_t f_pix_den;
|
||||
uint32_t total_f_dist_num;
|
||||
uint32_t total_f_dist_den;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t hor_view_angle_num;
|
||||
uint32_t hor_view_angle_den;
|
||||
uint32_t ver_view_angle_num;
|
||||
uint32_t ver_view_angle_den;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum af_camera_name {
|
||||
ACTUATOR_MAIN_CAM_0,
|
||||
ACTUATOR_MAIN_CAM_1,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ACTUATOR_MAIN_CAM_2,
|
||||
ACTUATOR_MAIN_CAM_3,
|
||||
ACTUATOR_MAIN_CAM_4,
|
||||
ACTUATOR_MAIN_CAM_5,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ACTUATOR_WEB_CAM_0,
|
||||
ACTUATOR_WEB_CAM_1,
|
||||
ACTUATOR_WEB_CAM_2,
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_ois_slave_info {
|
||||
char ois_name[MAX_OIS_NAME_SIZE];
|
||||
uint32_t i2c_addr;
|
||||
struct msm_ois_opcode opcode;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_ois_cfg_data {
|
||||
int cfgtype;
|
||||
union {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_ois_set_info_t set_info;
|
||||
struct msm_camera_i2c_seq_reg_setting * settings;
|
||||
} cfg;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_ois_cfg_download_data {
|
||||
int cfgtype;
|
||||
struct msm_ois_slave_info slave_info;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_actuator_set_position_t {
|
||||
uint16_t number_of_steps;
|
||||
uint32_t hw_params;
|
||||
uint16_t pos[MAX_NUMBER_OF_STEPS];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint16_t delay[MAX_NUMBER_OF_STEPS];
|
||||
};
|
||||
struct msm_actuator_cfg_data {
|
||||
int cfgtype;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t is_af_supported;
|
||||
union {
|
||||
struct msm_actuator_move_params_t move;
|
||||
struct msm_actuator_set_info_t set_info;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_actuator_get_info_t get_info;
|
||||
struct msm_actuator_set_position_t setpos;
|
||||
enum af_camera_name cam_name;
|
||||
} cfg;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum msm_camera_led_config_t {
|
||||
MSM_CAMERA_LED_OFF,
|
||||
MSM_CAMERA_LED_LOW,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_CAMERA_LED_HIGH,
|
||||
MSM_CAMERA_LED_INIT,
|
||||
MSM_CAMERA_LED_RELEASE,
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_camera_led_cfg_t {
|
||||
enum msm_camera_led_config_t cfgtype;
|
||||
int32_t torch_current[MAX_LED_TRIGGERS];
|
||||
int32_t flash_current[MAX_LED_TRIGGERS];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int32_t flash_duration[MAX_LED_TRIGGERS];
|
||||
};
|
||||
struct msm_flash_init_info_t {
|
||||
enum msm_flash_driver_type flash_driver_type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t slave_addr;
|
||||
enum i2c_freq_mode_t i2c_freq_mode;
|
||||
struct msm_sensor_power_setting_array * power_setting_array;
|
||||
struct msm_camera_i2c_reg_setting_array * settings;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_flash_cfg_data_t {
|
||||
enum msm_flash_cfg_type_t cfg_type;
|
||||
int32_t flash_current[MAX_LED_TRIGGERS];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int32_t flash_duration[MAX_LED_TRIGGERS];
|
||||
union {
|
||||
struct msm_flash_init_info_t * flash_init_info;
|
||||
struct msm_camera_i2c_reg_setting_array * settings;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
} cfg;
|
||||
};
|
||||
enum msm_sensor_init_cfg_type_t {
|
||||
CFG_SINIT_PROBE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CFG_SINIT_PROBE_DONE,
|
||||
CFG_SINIT_PROBE_WAIT_DONE,
|
||||
};
|
||||
struct sensor_init_cfg_data {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_sensor_init_cfg_type_t cfgtype;
|
||||
struct msm_sensor_info_t probed_info;
|
||||
char entity_name[MAX_SENSOR_NAME];
|
||||
union {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
void * setting;
|
||||
} cfg;
|
||||
};
|
||||
#define VIDIOC_MSM_SENSOR_CFG _IOWR('V', BASE_VIDIOC_PRIVATE + 1, struct sensorb_cfg_data)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VIDIOC_MSM_SENSOR_RELEASE _IO('V', BASE_VIDIOC_PRIVATE + 2)
|
||||
#define VIDIOC_MSM_SENSOR_GET_SUBDEV_ID _IOWR('V', BASE_VIDIOC_PRIVATE + 3, uint32_t)
|
||||
#define VIDIOC_MSM_CSIPHY_IO_CFG _IOWR('V', BASE_VIDIOC_PRIVATE + 4, struct csiphy_cfg_data)
|
||||
#define VIDIOC_MSM_CSID_IO_CFG _IOWR('V', BASE_VIDIOC_PRIVATE + 5, struct csid_cfg_data)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VIDIOC_MSM_ACTUATOR_CFG _IOWR('V', BASE_VIDIOC_PRIVATE + 6, struct msm_actuator_cfg_data)
|
||||
#define VIDIOC_MSM_FLASH_LED_DATA_CFG _IOWR('V', BASE_VIDIOC_PRIVATE + 7, struct msm_camera_led_cfg_t)
|
||||
#define VIDIOC_MSM_EEPROM_CFG _IOWR('V', BASE_VIDIOC_PRIVATE + 8, struct msm_eeprom_cfg_data)
|
||||
#define VIDIOC_MSM_SENSOR_GET_AF_STATUS _IOWR('V', BASE_VIDIOC_PRIVATE + 9, uint32_t)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VIDIOC_MSM_SENSOR_INIT_CFG _IOWR('V', BASE_VIDIOC_PRIVATE + 10, struct sensor_init_cfg_data)
|
||||
#define VIDIOC_MSM_OIS_CFG _IOWR('V', BASE_VIDIOC_PRIVATE + 11, struct msm_ois_cfg_data)
|
||||
#define VIDIOC_MSM_FLASH_CFG _IOWR('V', BASE_VIDIOC_PRIVATE + 13, struct msm_flash_cfg_data_t)
|
||||
#define VIDIOC_MSM_OIS_CFG_DOWNLOAD _IOWR('V', BASE_VIDIOC_PRIVATE + 14, struct msm_ois_cfg_download_data)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
|
||||
2124
kernel-headers/media/msm_camera.h
Normal file
2124
kernel-headers/media/msm_camera.h
Normal file
File diff suppressed because it is too large
Load Diff
422
kernel-headers/media/msm_camsensor_sdk.h
Normal file
422
kernel-headers/media/msm_camsensor_sdk.h
Normal file
@@ -0,0 +1,422 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __UAPI_LINUX_MSM_CAMSENSOR_SDK_H
|
||||
#define __UAPI_LINUX_MSM_CAMSENSOR_SDK_H
|
||||
#include <linux/videodev2.h>
|
||||
#define KVERSION 0x1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MAX_POWER_CONFIG 12
|
||||
#define GPIO_OUT_LOW (0 << 1)
|
||||
#define GPIO_OUT_HIGH (1 << 1)
|
||||
#define CSI_EMBED_DATA 0x12
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define CSI_RESERVED_DATA_0 0x13
|
||||
#define CSI_YUV422_8 0x1E
|
||||
#define CSI_RAW8 0x2A
|
||||
#define CSI_RAW10 0x2B
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define CSI_RAW12 0x2C
|
||||
#define CSI_DECODE_6BIT 0
|
||||
#define CSI_DECODE_8BIT 1
|
||||
#define CSI_DECODE_10BIT 2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define CSI_DECODE_12BIT 3
|
||||
#define CSI_DECODE_DPCM_10_6_10 4
|
||||
#define CSI_DECODE_DPCM_10_8_10 5
|
||||
#define MAX_CID 16
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define I2C_SEQ_REG_DATA_MAX 1024
|
||||
#define I2C_REG_DATA_MAX (8 * 1024)
|
||||
#define MSM_V4L2_PIX_FMT_META v4l2_fourcc('M', 'E', 'T', 'A')
|
||||
#define MSM_V4L2_PIX_FMT_SBGGR14 v4l2_fourcc('B', 'G', '1', '4')
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_V4L2_PIX_FMT_SGBRG14 v4l2_fourcc('G', 'B', '1', '4')
|
||||
#define MSM_V4L2_PIX_FMT_SGRBG14 v4l2_fourcc('B', 'A', '1', '4')
|
||||
#define MSM_V4L2_PIX_FMT_SRGGB14 v4l2_fourcc('R', 'G', '1', '4')
|
||||
#define MAX_ACTUATOR_REG_TBL_SIZE 8
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MAX_ACTUATOR_REGION 5
|
||||
#define NUM_ACTUATOR_DIR 2
|
||||
#define MAX_ACTUATOR_SCENARIO 8
|
||||
#define MAX_ACT_MOD_NAME_SIZE 32
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MAX_ACT_NAME_SIZE 32
|
||||
#define MAX_ACTUATOR_INIT_SET 120
|
||||
#define MAX_I2C_REG_SET 12
|
||||
#define MAX_LED_TRIGGERS 3
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_EEPROM_MEMORY_MAP_MAX_SIZE 80
|
||||
#define MSM_EEPROM_MAX_MEM_MAP_CNT 8
|
||||
enum msm_sensor_camera_id_t {
|
||||
CAMERA_0,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CAMERA_1,
|
||||
CAMERA_2,
|
||||
CAMERA_3,
|
||||
MAX_CAMERAS,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum i2c_freq_mode_t {
|
||||
I2C_STANDARD_MODE,
|
||||
I2C_FAST_MODE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
I2C_CUSTOM_MODE,
|
||||
I2C_FAST_PLUS_MODE,
|
||||
I2C_MAX_MODES,
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum camb_position_t {
|
||||
BACK_CAMERA_B,
|
||||
FRONT_CAMERA_B,
|
||||
AUX_CAMERA_B = 0x100,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
INVALID_CAMERA_B,
|
||||
};
|
||||
enum msm_sensor_power_seq_type_t {
|
||||
SENSOR_CLK,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
SENSOR_GPIO,
|
||||
SENSOR_VREG,
|
||||
SENSOR_I2C_MUX,
|
||||
SENSOR_I2C,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum msm_camera_i2c_reg_addr_type {
|
||||
MSM_CAMERA_I2C_BYTE_ADDR = 1,
|
||||
MSM_CAMERA_I2C_WORD_ADDR,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_CAMERA_I2C_3B_ADDR,
|
||||
MSM_CAMERA_I2C_ADDR_TYPE_MAX,
|
||||
};
|
||||
enum msm_camera_i2c_data_type {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_CAMERA_I2C_BYTE_DATA = 1,
|
||||
MSM_CAMERA_I2C_WORD_DATA,
|
||||
MSM_CAMERA_I2C_DWORD_DATA,
|
||||
MSM_CAMERA_I2C_SET_BYTE_MASK,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_CAMERA_I2C_UNSET_BYTE_MASK,
|
||||
MSM_CAMERA_I2C_SET_WORD_MASK,
|
||||
MSM_CAMERA_I2C_UNSET_WORD_MASK,
|
||||
MSM_CAMERA_I2C_SET_BYTE_WRITE_MASK_DATA,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_CAMERA_I2C_DATA_TYPE_MAX,
|
||||
};
|
||||
enum msm_sensor_power_seq_gpio_t {
|
||||
SENSOR_GPIO_RESET,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
SENSOR_GPIO_STANDBY,
|
||||
SENSOR_GPIO_AF_PWDM,
|
||||
SENSOR_GPIO_VIO,
|
||||
SENSOR_GPIO_VANA,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
SENSOR_GPIO_VDIG,
|
||||
SENSOR_GPIO_VAF,
|
||||
SENSOR_GPIO_FL_EN,
|
||||
SENSOR_GPIO_FL_NOW,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
SENSOR_GPIO_FL_RESET,
|
||||
SENSOR_GPIO_CUSTOM1,
|
||||
SENSOR_GPIO_CUSTOM2,
|
||||
SENSOR_GPIO_MAX,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum msm_camera_vreg_name_t {
|
||||
CAM_VDIG,
|
||||
CAM_VIO,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CAM_VANA,
|
||||
CAM_VAF,
|
||||
CAM_V_CUSTOM1,
|
||||
CAM_V_CUSTOM2,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CAM_VREG_MAX,
|
||||
};
|
||||
enum msm_sensor_clk_type_t {
|
||||
SENSOR_CAM_MCLK,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
SENSOR_CAM_CLK,
|
||||
SENSOR_CAM_CLK_MAX,
|
||||
};
|
||||
enum camerab_mode_t {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CAMERA_MODE_2D_B = (1 << 0),
|
||||
CAMERA_MODE_3D_B = (1 << 1),
|
||||
CAMERA_MODE_INVALID = (1 << 2),
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_actuator_data_type {
|
||||
MSM_ACTUATOR_BYTE_DATA = 1,
|
||||
MSM_ACTUATOR_WORD_DATA,
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_actuator_addr_type {
|
||||
MSM_ACTUATOR_BYTE_ADDR = 1,
|
||||
MSM_ACTUATOR_WORD_ADDR,
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_actuator_write_type {
|
||||
MSM_ACTUATOR_WRITE_HW_DAMP,
|
||||
MSM_ACTUATOR_WRITE_DAC,
|
||||
MSM_ACTUATOR_WRITE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_ACTUATOR_WRITE_DIR_REG,
|
||||
MSM_ACTUATOR_POLL,
|
||||
MSM_ACTUATOR_READ_WRITE,
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_actuator_i2c_operation {
|
||||
MSM_ACT_WRITE = 0,
|
||||
MSM_ACT_POLL,
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum actuator_type {
|
||||
ACTUATOR_VCM,
|
||||
ACTUATOR_PIEZO,
|
||||
ACTUATOR_HVCM,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ACTUATOR_BIVCM,
|
||||
};
|
||||
enum msm_flash_driver_type {
|
||||
FLASH_DRIVER_PMIC,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
FLASH_DRIVER_I2C,
|
||||
FLASH_DRIVER_GPIO,
|
||||
FLASH_DRIVER_DEFAULT
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_flash_cfg_type_t {
|
||||
CFG_FLASH_INIT,
|
||||
CFG_FLASH_RELEASE,
|
||||
CFG_FLASH_OFF,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CFG_FLASH_LOW,
|
||||
CFG_FLASH_HIGH,
|
||||
};
|
||||
enum msm_sensor_output_format_t {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_SENSOR_BAYER,
|
||||
MSM_SENSOR_YCBCR,
|
||||
MSM_SENSOR_META,
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_sensor_power_setting {
|
||||
enum msm_sensor_power_seq_type_t seq_type;
|
||||
unsigned short seq_val;
|
||||
long config_val;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned short delay;
|
||||
void * data[10];
|
||||
};
|
||||
struct msm_sensor_power_setting_array {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_sensor_power_setting power_setting_a[MAX_POWER_CONFIG];
|
||||
struct msm_sensor_power_setting * power_setting;
|
||||
unsigned short size;
|
||||
struct msm_sensor_power_setting power_down_setting_a[MAX_POWER_CONFIG];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_sensor_power_setting * power_down_setting;
|
||||
unsigned short size_down;
|
||||
};
|
||||
enum msm_camera_i2c_operation {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_CAM_WRITE = 0,
|
||||
MSM_CAM_POLL,
|
||||
MSM_CAM_READ,
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_sensor_i2c_sync_params {
|
||||
unsigned int cid;
|
||||
int csid;
|
||||
unsigned short line;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned short delay;
|
||||
};
|
||||
struct msm_camera_reg_settings_t {
|
||||
uint16_t reg_addr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_camera_i2c_reg_addr_type addr_type;
|
||||
uint16_t reg_data;
|
||||
enum msm_camera_i2c_data_type data_type;
|
||||
enum msm_camera_i2c_operation i2c_operation;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint16_t delay;
|
||||
};
|
||||
struct msm_eeprom_mem_map_t {
|
||||
int slave_addr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_camera_reg_settings_t mem_settings[MSM_EEPROM_MEMORY_MAP_MAX_SIZE];
|
||||
int memory_map_size;
|
||||
};
|
||||
struct msm_eeprom_memory_map_array {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_eeprom_mem_map_t memory_map[MSM_EEPROM_MAX_MEM_MAP_CNT];
|
||||
uint32_t msm_size_of_max_mappings;
|
||||
};
|
||||
struct msm_sensor_init_params {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int modes_supported;
|
||||
enum camb_position_t position;
|
||||
unsigned int sensor_mount_angle;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_sensor_id_info_t {
|
||||
unsigned short sensor_id_reg_addr;
|
||||
unsigned short sensor_id;
|
||||
unsigned short sensor_id_mask;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_camera_sensor_slave_info {
|
||||
char sensor_name[32];
|
||||
char eeprom_name[32];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
char actuator_name[32];
|
||||
char ois_name[32];
|
||||
char flash_name[32];
|
||||
enum msm_sensor_camera_id_t camera_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned short slave_addr;
|
||||
enum i2c_freq_mode_t i2c_freq_mode;
|
||||
enum msm_camera_i2c_reg_addr_type addr_type;
|
||||
struct msm_sensor_id_info_t sensor_id_info;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_sensor_power_setting_array power_setting_array;
|
||||
unsigned char is_init_params_valid;
|
||||
struct msm_sensor_init_params sensor_init_params;
|
||||
enum msm_sensor_output_format_t output_format;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_camera_i2c_reg_array {
|
||||
unsigned short reg_addr;
|
||||
unsigned short reg_data;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int delay;
|
||||
};
|
||||
struct msm_camera_i2c_reg_setting {
|
||||
struct msm_camera_i2c_reg_array * reg_setting;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned short size;
|
||||
enum msm_camera_i2c_reg_addr_type addr_type;
|
||||
enum msm_camera_i2c_data_type data_type;
|
||||
unsigned short delay;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_camera_csid_vc_cfg {
|
||||
unsigned char cid;
|
||||
unsigned char dt;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned char decode_format;
|
||||
};
|
||||
struct msm_camera_csid_lut_params {
|
||||
unsigned char num_cid;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_camera_csid_vc_cfg vc_cfg_a[MAX_CID];
|
||||
struct msm_camera_csid_vc_cfg * vc_cfg[MAX_CID];
|
||||
};
|
||||
struct msm_camera_csid_params {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned char lane_cnt;
|
||||
unsigned short lane_assign;
|
||||
unsigned char phy_sel;
|
||||
unsigned int csi_clk;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_camera_csid_lut_params lut_params;
|
||||
unsigned char csi_3p_sel;
|
||||
};
|
||||
struct msm_camera_csid_testmode_parms {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int num_bytes_per_line;
|
||||
unsigned int num_lines;
|
||||
unsigned int h_blanking_count;
|
||||
unsigned int v_blanking_count;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int payload_mode;
|
||||
};
|
||||
struct msm_camera_csiphy_params {
|
||||
unsigned char lane_cnt;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned char settle_cnt;
|
||||
unsigned short lane_mask;
|
||||
unsigned char combo_mode;
|
||||
unsigned char csid_core;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int csiphy_clk;
|
||||
unsigned char csi_3phase;
|
||||
};
|
||||
struct msm_camera_i2c_seq_reg_array {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned short reg_addr;
|
||||
unsigned char reg_data[I2C_SEQ_REG_DATA_MAX];
|
||||
unsigned short reg_data_size;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_camera_i2c_seq_reg_setting {
|
||||
struct msm_camera_i2c_seq_reg_array * reg_setting;
|
||||
unsigned short size;
|
||||
enum msm_camera_i2c_reg_addr_type addr_type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned short delay;
|
||||
};
|
||||
struct msm_actuator_reg_params_t {
|
||||
enum msm_actuator_write_type reg_write_type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int hw_mask;
|
||||
unsigned short reg_addr;
|
||||
unsigned short hw_shift;
|
||||
unsigned short data_shift;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned short data_type;
|
||||
unsigned short addr_type;
|
||||
unsigned short reg_data;
|
||||
unsigned short delay;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct damping_params_t {
|
||||
unsigned int damping_step;
|
||||
unsigned int damping_delay;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int hw_params;
|
||||
};
|
||||
struct region_params_t {
|
||||
unsigned short step_bound[2];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned short code_per_step;
|
||||
unsigned int qvalue;
|
||||
};
|
||||
struct reg_settings_t {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned short reg_addr;
|
||||
enum msm_camera_i2c_reg_addr_type addr_type;
|
||||
unsigned short reg_data;
|
||||
enum msm_camera_i2c_data_type data_type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_actuator_i2c_operation i2c_operation;
|
||||
unsigned int delay;
|
||||
};
|
||||
struct msm_camera_i2c_reg_setting_array {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_camera_i2c_reg_array reg_setting_a[MAX_I2C_REG_SET];
|
||||
unsigned short size;
|
||||
enum msm_camera_i2c_reg_addr_type addr_type;
|
||||
enum msm_camera_i2c_data_type data_type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned short delay;
|
||||
};
|
||||
#endif
|
||||
|
||||
66
kernel-headers/media/msm_fd.h
Normal file
66
kernel-headers/media/msm_fd.h
Normal file
@@ -0,0 +1,66 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __UAPI_MSM_FD__
|
||||
#define __UAPI_MSM_FD__
|
||||
#include <linux/videodev2.h>
|
||||
#include <linux/types.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_fd_event {
|
||||
__u32 buf_index;
|
||||
__u32 frame_id;
|
||||
__u32 face_cnt;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum msm_fd_pose {
|
||||
MSM_FD_POSE_FRONT,
|
||||
MSM_FD_POSE_RIGHT_DIAGONAL,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_FD_POSE_RIGHT,
|
||||
MSM_FD_POSE_LEFT_DIAGONAL,
|
||||
MSM_FD_POSE_LEFT,
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_fd_face_data {
|
||||
__u32 pose;
|
||||
__u32 angle;
|
||||
__u32 confidence;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 reserved;
|
||||
struct v4l2_rect face;
|
||||
};
|
||||
struct msm_fd_result {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 frame_id;
|
||||
__u32 face_cnt;
|
||||
struct msm_fd_face_data * face_data;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VIDIOC_MSM_FD_GET_RESULT _IOWR('V', BASE_VIDIOC_PRIVATE, struct msm_fd_result)
|
||||
#define MSM_EVENT_FD (V4L2_EVENT_PRIVATE_START)
|
||||
#define V4L2_CID_FD_SPEED (V4L2_CID_PRIVATE_BASE)
|
||||
#define V4L2_CID_FD_FACE_ANGLE (V4L2_CID_PRIVATE_BASE + 1)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define V4L2_CID_FD_MIN_FACE_SIZE (V4L2_CID_PRIVATE_BASE + 2)
|
||||
#define V4L2_CID_FD_FACE_DIRECTION (V4L2_CID_PRIVATE_BASE + 3)
|
||||
#define V4L2_CID_FD_DETECTION_THRESHOLD (V4L2_CID_PRIVATE_BASE + 4)
|
||||
#define V4L2_CID_FD_WORK_MEMORY_SIZE (V4L2_CID_PRIVATE_BASE + 5)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define V4L2_CID_FD_WORK_MEMORY_FD (V4L2_CID_PRIVATE_BASE + 6)
|
||||
#endif
|
||||
|
||||
107
kernel-headers/media/msm_gemini.h
Normal file
107
kernel-headers/media/msm_gemini.h
Normal file
@@ -0,0 +1,107 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __UAPI_MSM_GEMINI_H
|
||||
#define __UAPI_MSM_GEMINI_H
|
||||
#include <linux/types.h>
|
||||
#include <linux/ioctl.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_GMN_IOCTL_MAGIC 'g'
|
||||
#define MSM_GMN_IOCTL_GET_HW_VERSION _IOW(MSM_GMN_IOCTL_MAGIC, 1, struct msm_gemini_hw_cmd *)
|
||||
#define MSM_GMN_IOCTL_RESET _IOW(MSM_GMN_IOCTL_MAGIC, 2, struct msm_gemini_ctrl_cmd *)
|
||||
#define MSM_GMN_IOCTL_STOP _IOW(MSM_GMN_IOCTL_MAGIC, 3, struct msm_gemini_hw_cmds *)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_GMN_IOCTL_START _IOW(MSM_GMN_IOCTL_MAGIC, 4, struct msm_gemini_hw_cmds *)
|
||||
#define MSM_GMN_IOCTL_INPUT_BUF_ENQUEUE _IOW(MSM_GMN_IOCTL_MAGIC, 5, struct msm_gemini_buf *)
|
||||
#define MSM_GMN_IOCTL_INPUT_GET _IOW(MSM_GMN_IOCTL_MAGIC, 6, struct msm_gemini_buf *)
|
||||
#define MSM_GMN_IOCTL_INPUT_GET_UNBLOCK _IOW(MSM_GMN_IOCTL_MAGIC, 7, int)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_GMN_IOCTL_OUTPUT_BUF_ENQUEUE _IOW(MSM_GMN_IOCTL_MAGIC, 8, struct msm_gemini_buf *)
|
||||
#define MSM_GMN_IOCTL_OUTPUT_GET _IOW(MSM_GMN_IOCTL_MAGIC, 9, struct msm_gemini_buf *)
|
||||
#define MSM_GMN_IOCTL_OUTPUT_GET_UNBLOCK _IOW(MSM_GMN_IOCTL_MAGIC, 10, int)
|
||||
#define MSM_GMN_IOCTL_EVT_GET _IOW(MSM_GMN_IOCTL_MAGIC, 11, struct msm_gemini_ctrl_cmd *)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_GMN_IOCTL_EVT_GET_UNBLOCK _IOW(MSM_GMN_IOCTL_MAGIC, 12, int)
|
||||
#define MSM_GMN_IOCTL_HW_CMD _IOW(MSM_GMN_IOCTL_MAGIC, 13, struct msm_gemini_hw_cmd *)
|
||||
#define MSM_GMN_IOCTL_HW_CMDS _IOW(MSM_GMN_IOCTL_MAGIC, 14, struct msm_gemini_hw_cmds *)
|
||||
#define MSM_GMN_IOCTL_TEST_DUMP_REGION _IOW(MSM_GMN_IOCTL_MAGIC, 15, unsigned long)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_GMN_IOCTL_SET_MODE _IOW(MSM_GMN_IOCTL_MAGIC, 16, enum msm_gmn_out_mode)
|
||||
#define MSM_GEMINI_MODE_REALTIME_ENCODE 0
|
||||
#define MSM_GEMINI_MODE_OFFLINE_ENCODE 1
|
||||
#define MSM_GEMINI_MODE_REALTIME_ROTATION 2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_GEMINI_MODE_OFFLINE_ROTATION 3
|
||||
enum msm_gmn_out_mode {
|
||||
MSM_GMN_OUTMODE_FRAGMENTED,
|
||||
MSM_GMN_OUTMODE_SINGLE
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_gemini_ctrl_cmd {
|
||||
uint32_t type;
|
||||
uint32_t len;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
void * value;
|
||||
};
|
||||
#define MSM_GEMINI_EVT_RESET 0
|
||||
#define MSM_GEMINI_EVT_FRAMEDONE 1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_GEMINI_EVT_ERR 2
|
||||
struct msm_gemini_buf {
|
||||
uint32_t type;
|
||||
int fd;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
void * vaddr;
|
||||
uint32_t y_off;
|
||||
uint32_t y_len;
|
||||
uint32_t framedone_len;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t cbcr_off;
|
||||
uint32_t cbcr_len;
|
||||
uint32_t num_of_mcu_rows;
|
||||
uint32_t offset;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define MSM_GEMINI_HW_CMD_TYPE_READ 0
|
||||
#define MSM_GEMINI_HW_CMD_TYPE_WRITE 1
|
||||
#define MSM_GEMINI_HW_CMD_TYPE_WRITE_OR 2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_GEMINI_HW_CMD_TYPE_UWAIT 3
|
||||
#define MSM_GEMINI_HW_CMD_TYPE_MWAIT 4
|
||||
#define MSM_GEMINI_HW_CMD_TYPE_MDELAY 5
|
||||
#define MSM_GEMINI_HW_CMD_TYPE_UDELAY 6
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_gemini_hw_cmd {
|
||||
uint32_t type : 4;
|
||||
uint32_t n : 12;
|
||||
uint32_t offset : 16;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t mask;
|
||||
union {
|
||||
uint32_t data;
|
||||
uint32_t * pdata;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
};
|
||||
struct msm_gemini_hw_cmds {
|
||||
uint32_t m;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_gemini_hw_cmd hw_cmd[1];
|
||||
};
|
||||
#endif
|
||||
|
||||
62
kernel-headers/media/msm_gestures.h
Normal file
62
kernel-headers/media/msm_gestures.h
Normal file
@@ -0,0 +1,62 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __UAPI_MSM_GESTURES_H
|
||||
#define __UAPI_MSM_GESTURES_H
|
||||
#include <linux/types.h>
|
||||
#include <linux/ioctl.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#include <media/msm_camera.h>
|
||||
#define MSM_GES_IOCTL_CTRL_COMMAND _IOW('V', BASE_VIDIOC_PRIVATE + 20, struct v4l2_control)
|
||||
#define VIDIOC_MSM_GESTURE_EVT _IOWR('V', BASE_VIDIOC_PRIVATE + 21, struct v4l2_event)
|
||||
#define MSM_GES_GET_EVT_PAYLOAD _IOW('V', BASE_VIDIOC_PRIVATE + 22, struct msm_ges_evt)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VIDIOC_MSM_GESTURE_CAM_EVT _IOWR('V', BASE_VIDIOC_PRIVATE + 23, int)
|
||||
#define MSM_GES_RESP_V4L2 MSM_CAM_RESP_MAX
|
||||
#define MSM_GES_RESP_MAX (MSM_GES_RESP_V4L2 + 1)
|
||||
#define MSM_SVR_RESP_MAX MSM_GES_RESP_MAX
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_V4L2_GES_BASE 100
|
||||
#define MSM_V4L2_GES_OPEN (MSM_V4L2_GES_BASE + 0)
|
||||
#define MSM_V4L2_GES_CLOSE (MSM_V4L2_GES_BASE + 1)
|
||||
#define MSM_V4L2_GES_CAM_OPEN (MSM_V4L2_GES_BASE + 2)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_V4L2_GES_CAM_CLOSE (MSM_V4L2_GES_BASE + 3)
|
||||
#define MSM_GES_APP_EVT_MIN (V4L2_EVENT_PRIVATE_START + 0x14)
|
||||
#define MSM_GES_APP_NOTIFY_EVENT (MSM_GES_APP_EVT_MIN + 0)
|
||||
#define MSM_GES_APP_NOTIFY_ERROR_EVENT (MSM_GES_APP_EVT_MIN + 1)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_GES_APP_EVT_MAX (MSM_GES_APP_EVT_MIN + 2)
|
||||
#define MSM_GESTURE_CID_CTRL_CMD V4L2_CID_BRIGHTNESS
|
||||
#define MAX_GES_EVENTS 25
|
||||
struct msm_ges_ctrl_cmd {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int type;
|
||||
void * value;
|
||||
int len;
|
||||
int fd;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t cookie;
|
||||
};
|
||||
struct msm_ges_evt {
|
||||
void * evt_data;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int evt_len;
|
||||
};
|
||||
#endif
|
||||
|
||||
412
kernel-headers/media/msm_isp.h
Normal file
412
kernel-headers/media/msm_isp.h
Normal file
@@ -0,0 +1,412 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __UAPI_MSM_ISP_H__
|
||||
#define __UAPI_MSM_ISP_H__
|
||||
#define BIT(nr) (1UL << (nr))
|
||||
#define MSG_ID_RESET_ACK 0
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSG_ID_START_ACK 1
|
||||
#define MSG_ID_STOP_ACK 2
|
||||
#define MSG_ID_UPDATE_ACK 3
|
||||
#define MSG_ID_OUTPUT_P 4
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSG_ID_OUTPUT_T 5
|
||||
#define MSG_ID_OUTPUT_S 6
|
||||
#define MSG_ID_OUTPUT_V 7
|
||||
#define MSG_ID_SNAPSHOT_DONE 8
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSG_ID_STATS_AEC 9
|
||||
#define MSG_ID_STATS_AF 10
|
||||
#define MSG_ID_STATS_AWB 11
|
||||
#define MSG_ID_STATS_RS 12
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSG_ID_STATS_CS 13
|
||||
#define MSG_ID_STATS_IHIST 14
|
||||
#define MSG_ID_STATS_SKIN 15
|
||||
#define MSG_ID_EPOCH1 16
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSG_ID_EPOCH2 17
|
||||
#define MSG_ID_SYNC_TIMER0_DONE 18
|
||||
#define MSG_ID_SYNC_TIMER1_DONE 19
|
||||
#define MSG_ID_SYNC_TIMER2_DONE 20
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSG_ID_ASYNC_TIMER0_DONE 21
|
||||
#define MSG_ID_ASYNC_TIMER1_DONE 22
|
||||
#define MSG_ID_ASYNC_TIMER2_DONE 23
|
||||
#define MSG_ID_ASYNC_TIMER3_DONE 24
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSG_ID_AE_OVERFLOW 25
|
||||
#define MSG_ID_AF_OVERFLOW 26
|
||||
#define MSG_ID_AWB_OVERFLOW 27
|
||||
#define MSG_ID_RS_OVERFLOW 28
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSG_ID_CS_OVERFLOW 29
|
||||
#define MSG_ID_IHIST_OVERFLOW 30
|
||||
#define MSG_ID_SKIN_OVERFLOW 31
|
||||
#define MSG_ID_AXI_ERROR 32
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSG_ID_CAMIF_OVERFLOW 33
|
||||
#define MSG_ID_VIOLATION 34
|
||||
#define MSG_ID_CAMIF_ERROR 35
|
||||
#define MSG_ID_BUS_OVERFLOW 36
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSG_ID_SOF_ACK 37
|
||||
#define MSG_ID_STOP_REC_ACK 38
|
||||
#define MSG_ID_STATS_AWB_AEC 39
|
||||
#define MSG_ID_OUTPUT_PRIMARY 40
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSG_ID_OUTPUT_SECONDARY 41
|
||||
#define MSG_ID_STATS_COMPOSITE 42
|
||||
#define MSG_ID_OUTPUT_TERTIARY1 43
|
||||
#define MSG_ID_STOP_LS_ACK 44
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSG_ID_OUTPUT_TERTIARY2 45
|
||||
#define MSG_ID_STATS_BG 46
|
||||
#define MSG_ID_STATS_BF 47
|
||||
#define MSG_ID_STATS_BHIST 48
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSG_ID_RDI0_UPDATE_ACK 49
|
||||
#define MSG_ID_RDI1_UPDATE_ACK 50
|
||||
#define MSG_ID_RDI2_UPDATE_ACK 51
|
||||
#define MSG_ID_PIX0_UPDATE_ACK 52
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSG_ID_PREV_STOP_ACK 53
|
||||
#define MSG_ID_STATS_BE 54
|
||||
#define VFE_CMD_DUMMY_0 0
|
||||
#define VFE_CMD_SET_CLK 1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_RESET 2
|
||||
#define VFE_CMD_START 3
|
||||
#define VFE_CMD_TEST_GEN_START 4
|
||||
#define VFE_CMD_OPERATION_CFG 5
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_AXI_OUT_CFG 6
|
||||
#define VFE_CMD_CAMIF_CFG 7
|
||||
#define VFE_CMD_AXI_INPUT_CFG 8
|
||||
#define VFE_CMD_BLACK_LEVEL_CFG 9
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_MESH_ROLL_OFF_CFG 10
|
||||
#define VFE_CMD_DEMUX_CFG 11
|
||||
#define VFE_CMD_FOV_CFG 12
|
||||
#define VFE_CMD_MAIN_SCALER_CFG 13
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_WB_CFG 14
|
||||
#define VFE_CMD_COLOR_COR_CFG 15
|
||||
#define VFE_CMD_RGB_G_CFG 16
|
||||
#define VFE_CMD_LA_CFG 17
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_CHROMA_EN_CFG 18
|
||||
#define VFE_CMD_CHROMA_SUP_CFG 19
|
||||
#define VFE_CMD_MCE_CFG 20
|
||||
#define VFE_CMD_SK_ENHAN_CFG 21
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_ASF_CFG 22
|
||||
#define VFE_CMD_S2Y_CFG 23
|
||||
#define VFE_CMD_S2CbCr_CFG 24
|
||||
#define VFE_CMD_CHROMA_SUBS_CFG 25
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_OUT_CLAMP_CFG 26
|
||||
#define VFE_CMD_FRAME_SKIP_CFG 27
|
||||
#define VFE_CMD_DUMMY_1 28
|
||||
#define VFE_CMD_DUMMY_2 29
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_DUMMY_3 30
|
||||
#define VFE_CMD_UPDATE 31
|
||||
#define VFE_CMD_BL_LVL_UPDATE 32
|
||||
#define VFE_CMD_DEMUX_UPDATE 33
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_FOV_UPDATE 34
|
||||
#define VFE_CMD_MAIN_SCALER_UPDATE 35
|
||||
#define VFE_CMD_WB_UPDATE 36
|
||||
#define VFE_CMD_COLOR_COR_UPDATE 37
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_RGB_G_UPDATE 38
|
||||
#define VFE_CMD_LA_UPDATE 39
|
||||
#define VFE_CMD_CHROMA_EN_UPDATE 40
|
||||
#define VFE_CMD_CHROMA_SUP_UPDATE 41
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_MCE_UPDATE 42
|
||||
#define VFE_CMD_SK_ENHAN_UPDATE 43
|
||||
#define VFE_CMD_S2CbCr_UPDATE 44
|
||||
#define VFE_CMD_S2Y_UPDATE 45
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_ASF_UPDATE 46
|
||||
#define VFE_CMD_FRAME_SKIP_UPDATE 47
|
||||
#define VFE_CMD_CAMIF_FRAME_UPDATE 48
|
||||
#define VFE_CMD_STATS_AF_UPDATE 49
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_STATS_AE_UPDATE 50
|
||||
#define VFE_CMD_STATS_AWB_UPDATE 51
|
||||
#define VFE_CMD_STATS_RS_UPDATE 52
|
||||
#define VFE_CMD_STATS_CS_UPDATE 53
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_STATS_SKIN_UPDATE 54
|
||||
#define VFE_CMD_STATS_IHIST_UPDATE 55
|
||||
#define VFE_CMD_DUMMY_4 56
|
||||
#define VFE_CMD_EPOCH1_ACK 57
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_EPOCH2_ACK 58
|
||||
#define VFE_CMD_START_RECORDING 59
|
||||
#define VFE_CMD_STOP_RECORDING 60
|
||||
#define VFE_CMD_DUMMY_5 61
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_DUMMY_6 62
|
||||
#define VFE_CMD_CAPTURE 63
|
||||
#define VFE_CMD_DUMMY_7 64
|
||||
#define VFE_CMD_STOP 65
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_GET_HW_VERSION 66
|
||||
#define VFE_CMD_GET_FRAME_SKIP_COUNTS 67
|
||||
#define VFE_CMD_OUTPUT1_BUFFER_ENQ 68
|
||||
#define VFE_CMD_OUTPUT2_BUFFER_ENQ 69
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_OUTPUT3_BUFFER_ENQ 70
|
||||
#define VFE_CMD_JPEG_OUT_BUF_ENQ 71
|
||||
#define VFE_CMD_RAW_OUT_BUF_ENQ 72
|
||||
#define VFE_CMD_RAW_IN_BUF_ENQ 73
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_STATS_AF_ENQ 74
|
||||
#define VFE_CMD_STATS_AE_ENQ 75
|
||||
#define VFE_CMD_STATS_AWB_ENQ 76
|
||||
#define VFE_CMD_STATS_RS_ENQ 77
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_STATS_CS_ENQ 78
|
||||
#define VFE_CMD_STATS_SKIN_ENQ 79
|
||||
#define VFE_CMD_STATS_IHIST_ENQ 80
|
||||
#define VFE_CMD_DUMMY_8 81
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_JPEG_ENC_CFG 82
|
||||
#define VFE_CMD_DUMMY_9 83
|
||||
#define VFE_CMD_STATS_AF_START 84
|
||||
#define VFE_CMD_STATS_AF_STOP 85
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_STATS_AE_START 86
|
||||
#define VFE_CMD_STATS_AE_STOP 87
|
||||
#define VFE_CMD_STATS_AWB_START 88
|
||||
#define VFE_CMD_STATS_AWB_STOP 89
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_STATS_RS_START 90
|
||||
#define VFE_CMD_STATS_RS_STOP 91
|
||||
#define VFE_CMD_STATS_CS_START 92
|
||||
#define VFE_CMD_STATS_CS_STOP 93
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_STATS_SKIN_START 94
|
||||
#define VFE_CMD_STATS_SKIN_STOP 95
|
||||
#define VFE_CMD_STATS_IHIST_START 96
|
||||
#define VFE_CMD_STATS_IHIST_STOP 97
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_DUMMY_10 98
|
||||
#define VFE_CMD_SYNC_TIMER_SETTING 99
|
||||
#define VFE_CMD_ASYNC_TIMER_SETTING 100
|
||||
#define VFE_CMD_LIVESHOT 101
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_LA_SETUP 102
|
||||
#define VFE_CMD_LINEARIZATION_CFG 103
|
||||
#define VFE_CMD_DEMOSAICV3 104
|
||||
#define VFE_CMD_DEMOSAICV3_ABCC_CFG 105
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_DEMOSAICV3_DBCC_CFG 106
|
||||
#define VFE_CMD_DEMOSAICV3_DBPC_CFG 107
|
||||
#define VFE_CMD_DEMOSAICV3_ABF_CFG 108
|
||||
#define VFE_CMD_DEMOSAICV3_ABCC_UPDATE 109
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_DEMOSAICV3_DBCC_UPDATE 110
|
||||
#define VFE_CMD_DEMOSAICV3_DBPC_UPDATE 111
|
||||
#define VFE_CMD_XBAR_CFG 112
|
||||
#define VFE_CMD_MODULE_CFG 113
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_ZSL 114
|
||||
#define VFE_CMD_LINEARIZATION_UPDATE 115
|
||||
#define VFE_CMD_DEMOSAICV3_ABF_UPDATE 116
|
||||
#define VFE_CMD_CLF_CFG 117
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_CLF_LUMA_UPDATE 118
|
||||
#define VFE_CMD_CLF_CHROMA_UPDATE 119
|
||||
#define VFE_CMD_PCA_ROLL_OFF_CFG 120
|
||||
#define VFE_CMD_PCA_ROLL_OFF_UPDATE 121
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_GET_REG_DUMP 122
|
||||
#define VFE_CMD_GET_LINEARIZATON_TABLE 123
|
||||
#define VFE_CMD_GET_MESH_ROLLOFF_TABLE 124
|
||||
#define VFE_CMD_GET_PCA_ROLLOFF_TABLE 125
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_GET_RGB_G_TABLE 126
|
||||
#define VFE_CMD_GET_LA_TABLE 127
|
||||
#define VFE_CMD_DEMOSAICV3_UPDATE 128
|
||||
#define VFE_CMD_ACTIVE_REGION_CFG 129
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_COLOR_PROCESSING_CONFIG 130
|
||||
#define VFE_CMD_STATS_WB_AEC_CONFIG 131
|
||||
#define VFE_CMD_STATS_WB_AEC_UPDATE 132
|
||||
#define VFE_CMD_Y_GAMMA_CONFIG 133
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_SCALE_OUTPUT1_CONFIG 134
|
||||
#define VFE_CMD_SCALE_OUTPUT2_CONFIG 135
|
||||
#define VFE_CMD_CAPTURE_RAW 136
|
||||
#define VFE_CMD_STOP_LIVESHOT 137
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_RECONFIG_VFE 138
|
||||
#define VFE_CMD_STATS_REQBUF 139
|
||||
#define VFE_CMD_STATS_ENQUEUEBUF 140
|
||||
#define VFE_CMD_STATS_FLUSH_BUFQ 141
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_STATS_UNREGBUF 142
|
||||
#define VFE_CMD_STATS_BG_START 143
|
||||
#define VFE_CMD_STATS_BG_STOP 144
|
||||
#define VFE_CMD_STATS_BF_START 145
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_STATS_BF_STOP 146
|
||||
#define VFE_CMD_STATS_BHIST_START 147
|
||||
#define VFE_CMD_STATS_BHIST_STOP 148
|
||||
#define VFE_CMD_RESET_2 149
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_FOV_ENC_CFG 150
|
||||
#define VFE_CMD_FOV_VIEW_CFG 151
|
||||
#define VFE_CMD_FOV_ENC_UPDATE 152
|
||||
#define VFE_CMD_FOV_VIEW_UPDATE 153
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_SCALER_ENC_CFG 154
|
||||
#define VFE_CMD_SCALER_VIEW_CFG 155
|
||||
#define VFE_CMD_SCALER_ENC_UPDATE 156
|
||||
#define VFE_CMD_SCALER_VIEW_UPDATE 157
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_COLORXFORM_ENC_CFG 158
|
||||
#define VFE_CMD_COLORXFORM_VIEW_CFG 159
|
||||
#define VFE_CMD_COLORXFORM_ENC_UPDATE 160
|
||||
#define VFE_CMD_COLORXFORM_VIEW_UPDATE 161
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_CMD_TEST_GEN_CFG 162
|
||||
#define VFE_CMD_STATS_BE_START 163
|
||||
#define VFE_CMD_STATS_BE_STOP 164
|
||||
struct msm_isp_cmd {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int32_t id;
|
||||
uint16_t length;
|
||||
void * value;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VPE_CMD_DUMMY_0 0
|
||||
#define VPE_CMD_INIT 1
|
||||
#define VPE_CMD_DEINIT 2
|
||||
#define VPE_CMD_ENABLE 3
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VPE_CMD_DISABLE 4
|
||||
#define VPE_CMD_RESET 5
|
||||
#define VPE_CMD_FLUSH 6
|
||||
#define VPE_CMD_OPERATION_MODE_CFG 7
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VPE_CMD_INPUT_PLANE_CFG 8
|
||||
#define VPE_CMD_OUTPUT_PLANE_CFG 9
|
||||
#define VPE_CMD_INPUT_PLANE_UPDATE 10
|
||||
#define VPE_CMD_SCALE_CFG_TYPE 11
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VPE_CMD_ZOOM 13
|
||||
#define VPE_CMD_MAX 14
|
||||
#define MSM_PP_CMD_TYPE_NOT_USED 0
|
||||
#define MSM_PP_CMD_TYPE_VPE 1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_PP_CMD_TYPE_MCTL 2
|
||||
#define MCTL_CMD_DUMMY_0 0
|
||||
#define MCTL_CMD_GET_FRAME_BUFFER 1
|
||||
#define MCTL_CMD_PUT_FRAME_BUFFER 2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MCTL_CMD_DIVERT_FRAME_PP_PATH 3
|
||||
#define MCTL_PP_EVENT_NOTUSED 0
|
||||
#define MCTL_PP_EVENT_CMD_ACK 1
|
||||
#define VPE_OPERATION_MODE_CFG_LEN 4
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VPE_INPUT_PLANE_CFG_LEN 24
|
||||
#define VPE_OUTPUT_PLANE_CFG_LEN 20
|
||||
#define VPE_INPUT_PLANE_UPDATE_LEN 12
|
||||
#define VPE_SCALER_CONFIG_LEN 260
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VPE_DIS_OFFSET_CFG_LEN 12
|
||||
#define CAPTURE_WIDTH 1280
|
||||
#define IMEM_Y_SIZE (CAPTURE_WIDTH * 16)
|
||||
#define IMEM_CBCR_SIZE (CAPTURE_WIDTH * 8)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define IMEM_Y_PING_OFFSET 0x2E000000
|
||||
#define IMEM_CBCR_PING_OFFSET (IMEM_Y_PING_OFFSET + IMEM_Y_SIZE)
|
||||
#define IMEM_Y_PONG_OFFSET (IMEM_CBCR_PING_OFFSET + IMEM_CBCR_SIZE)
|
||||
#define IMEM_CBCR_PONG_OFFSET (IMEM_Y_PONG_OFFSET + IMEM_Y_SIZE)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_vpe_op_mode_cfg {
|
||||
uint8_t op_mode_cfg[VPE_OPERATION_MODE_CFG_LEN];
|
||||
};
|
||||
struct msm_vpe_input_plane_cfg {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t input_plane_cfg[VPE_INPUT_PLANE_CFG_LEN];
|
||||
};
|
||||
struct msm_vpe_output_plane_cfg {
|
||||
uint8_t output_plane_cfg[VPE_OUTPUT_PLANE_CFG_LEN];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_vpe_input_plane_update_cfg {
|
||||
uint8_t input_plane_update_cfg[VPE_INPUT_PLANE_UPDATE_LEN];
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_vpe_scaler_cfg {
|
||||
uint8_t scaler_cfg[VPE_SCALER_CONFIG_LEN];
|
||||
};
|
||||
struct msm_vpe_flush_frame_buffer {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t src_buf_handle;
|
||||
uint32_t dest_buf_handle;
|
||||
int path;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_mctl_pp_frame_buffer {
|
||||
uint32_t buf_handle;
|
||||
int path;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_mctl_pp_divert_pp {
|
||||
int path;
|
||||
int enable;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_vpe_clock_rate {
|
||||
uint32_t rate;
|
||||
};
|
||||
#define MSM_MCTL_PP_VPE_FRAME_ACK (1 << 0)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_MCTL_PP_VPE_FRAME_TO_APP (1 << 1)
|
||||
#define VFE_OUTPUTS_MAIN_AND_PREVIEW BIT(0)
|
||||
#define VFE_OUTPUTS_MAIN_AND_VIDEO BIT(1)
|
||||
#define VFE_OUTPUTS_MAIN_AND_THUMB BIT(2)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_OUTPUTS_THUMB_AND_MAIN BIT(3)
|
||||
#define VFE_OUTPUTS_PREVIEW_AND_VIDEO BIT(4)
|
||||
#define VFE_OUTPUTS_VIDEO_AND_PREVIEW BIT(5)
|
||||
#define VFE_OUTPUTS_PREVIEW BIT(6)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_OUTPUTS_VIDEO BIT(7)
|
||||
#define VFE_OUTPUTS_RAW BIT(8)
|
||||
#define VFE_OUTPUTS_JPEG_AND_THUMB BIT(9)
|
||||
#define VFE_OUTPUTS_THUMB_AND_JPEG BIT(10)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VFE_OUTPUTS_RDI0 BIT(11)
|
||||
#define VFE_OUTPUTS_RDI1 BIT(12)
|
||||
struct msm_frame_info {
|
||||
uint32_t inst_handle;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t path;
|
||||
};
|
||||
#endif
|
||||
|
||||
109
kernel-headers/media/msm_jpeg.h
Normal file
109
kernel-headers/media/msm_jpeg.h
Normal file
@@ -0,0 +1,109 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __UAPI_LINUX_MSM_JPEG_H
|
||||
#define __UAPI_LINUX_MSM_JPEG_H
|
||||
#include <linux/types.h>
|
||||
#include <linux/ioctl.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define OUTPUT_H2V1 0
|
||||
#define OUTPUT_H2V2 1
|
||||
#define OUTPUT_BYTE 6
|
||||
#define MSM_JPEG_IOCTL_MAGIC 'g'
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_JPEG_IOCTL_GET_HW_VERSION _IOW(MSM_JPEG_IOCTL_MAGIC, 1, struct msm_jpeg_hw_cmd)
|
||||
#define MSM_JPEG_IOCTL_RESET _IOW(MSM_JPEG_IOCTL_MAGIC, 2, struct msm_jpeg_ctrl_cmd)
|
||||
#define MSM_JPEG_IOCTL_STOP _IOW(MSM_JPEG_IOCTL_MAGIC, 3, struct msm_jpeg_hw_cmds)
|
||||
#define MSM_JPEG_IOCTL_START _IOW(MSM_JPEG_IOCTL_MAGIC, 4, struct msm_jpeg_hw_cmds)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_JPEG_IOCTL_INPUT_BUF_ENQUEUE _IOW(MSM_JPEG_IOCTL_MAGIC, 5, struct msm_jpeg_buf)
|
||||
#define MSM_JPEG_IOCTL_INPUT_GET _IOW(MSM_JPEG_IOCTL_MAGIC, 6, struct msm_jpeg_buf)
|
||||
#define MSM_JPEG_IOCTL_INPUT_GET_UNBLOCK _IOW(MSM_JPEG_IOCTL_MAGIC, 7, int)
|
||||
#define MSM_JPEG_IOCTL_OUTPUT_BUF_ENQUEUE _IOW(MSM_JPEG_IOCTL_MAGIC, 8, struct msm_jpeg_buf)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_JPEG_IOCTL_OUTPUT_GET _IOW(MSM_JPEG_IOCTL_MAGIC, 9, struct msm_jpeg_buf)
|
||||
#define MSM_JPEG_IOCTL_OUTPUT_GET_UNBLOCK _IOW(MSM_JPEG_IOCTL_MAGIC, 10, int)
|
||||
#define MSM_JPEG_IOCTL_EVT_GET _IOW(MSM_JPEG_IOCTL_MAGIC, 11, struct msm_jpeg_ctrl_cmd)
|
||||
#define MSM_JPEG_IOCTL_EVT_GET_UNBLOCK _IOW(MSM_JPEG_IOCTL_MAGIC, 12, int)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_JPEG_IOCTL_HW_CMD _IOW(MSM_JPEG_IOCTL_MAGIC, 13, struct msm_jpeg_hw_cmd)
|
||||
#define MSM_JPEG_IOCTL_HW_CMDS _IOW(MSM_JPEG_IOCTL_MAGIC, 14, struct msm_jpeg_hw_cmds)
|
||||
#define MSM_JPEG_IOCTL_TEST_DUMP_REGION _IOW(MSM_JPEG_IOCTL_MAGIC, 15, unsigned long)
|
||||
#define MSM_JPEG_IOCTL_SET_CLK_RATE _IOW(MSM_JPEG_IOCTL_MAGIC, 16, unsigned int)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_JPEG_MODE_REALTIME_ENCODE 0
|
||||
#define MSM_JPEG_MODE_OFFLINE_ENCODE 1
|
||||
#define MSM_JPEG_MODE_REALTIME_ROTATION 2
|
||||
#define MSM_JPEG_MODE_OFFLINE_ROTATION 3
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_jpeg_ctrl_cmd {
|
||||
uint32_t type;
|
||||
uint32_t len;
|
||||
void * value;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define MSM_JPEG_EVT_RESET 0
|
||||
#define MSM_JPEG_EVT_SESSION_DONE 1
|
||||
#define MSM_JPEG_EVT_ERR 2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_jpeg_buf {
|
||||
uint32_t type;
|
||||
int fd;
|
||||
void * vaddr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t y_off;
|
||||
uint32_t y_len;
|
||||
uint32_t framedone_len;
|
||||
uint32_t cbcr_off;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t cbcr_len;
|
||||
uint32_t num_of_mcu_rows;
|
||||
uint32_t offset;
|
||||
uint32_t pln2_off;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t pln2_len;
|
||||
};
|
||||
#define MSM_JPEG_HW_CMD_TYPE_READ 0
|
||||
#define MSM_JPEG_HW_CMD_TYPE_WRITE 1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_JPEG_HW_CMD_TYPE_WRITE_OR 2
|
||||
#define MSM_JPEG_HW_CMD_TYPE_UWAIT 3
|
||||
#define MSM_JPEG_HW_CMD_TYPE_MWAIT 4
|
||||
#define MSM_JPEG_HW_CMD_TYPE_MDELAY 5
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_JPEG_HW_CMD_TYPE_UDELAY 6
|
||||
struct msm_jpeg_hw_cmd {
|
||||
uint32_t type : 4;
|
||||
uint32_t n : 12;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t offset : 16;
|
||||
uint32_t mask;
|
||||
union {
|
||||
uint32_t data;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t * pdata;
|
||||
};
|
||||
};
|
||||
struct msm_jpeg_hw_cmds {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t m;
|
||||
struct msm_jpeg_hw_cmd hw_cmd[1];
|
||||
};
|
||||
#endif
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
|
||||
31
kernel-headers/media/msm_jpeg_dma.h
Normal file
31
kernel-headers/media/msm_jpeg_dma.h
Normal file
@@ -0,0 +1,31 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __UAPI_MSM_JPEG_DMA__
|
||||
#define __UAPI_MSM_JPEG_DMA__
|
||||
#include <linux/videodev2.h>
|
||||
#define V4L2_CID_JPEG_DMA_SPEED (V4L2_CID_PRIVATE_BASE)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define V4L2_CID_JPEG_DMA_MAX_DOWN_SCALE (V4L2_CID_PRIVATE_BASE + 1)
|
||||
struct msm_jpeg_dma_buff {
|
||||
int32_t fd;
|
||||
uint32_t offset;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#endif
|
||||
|
||||
824
kernel-headers/media/msm_media_info.h
Normal file
824
kernel-headers/media/msm_media_info.h
Normal file
@@ -0,0 +1,824 @@
|
||||
#ifndef __MEDIA_INFO_H__
|
||||
#define __MEDIA_INFO_H__
|
||||
|
||||
#ifndef MSM_MEDIA_ALIGN
|
||||
#define MSM_MEDIA_ALIGN(__sz, __align) (((__sz) + (__align-1)) & (~(__align-1)))
|
||||
#endif
|
||||
|
||||
#ifndef MSM_MEDIA_ROUNDUP
|
||||
#define MSM_MEDIA_ROUNDUP(__sz, __r) (((__sz) + ((__r) - 1)) / (__r))
|
||||
#endif
|
||||
|
||||
#ifndef MSM_MEDIA_MAX
|
||||
#define MSM_MEDIA_MAX(__a, __b) ((__a) > (__b)?(__a):(__b))
|
||||
#endif
|
||||
|
||||
enum color_fmts {
|
||||
/* Venus NV12:
|
||||
* YUV 4:2:0 image with a plane of 8 bit Y samples followed
|
||||
* by an interleaved U/V plane containing 8 bit 2x2 subsampled
|
||||
* colour difference samples.
|
||||
*
|
||||
* <-------- Y/UV_Stride -------->
|
||||
* <------- Width ------->
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . ^ ^
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . | |
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . Height |
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . | Y_Scanlines
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . | |
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . | |
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . | |
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . V |
|
||||
* . . . . . . . . . . . . . . . . |
|
||||
* . . . . . . . . . . . . . . . . |
|
||||
* . . . . . . . . . . . . . . . . |
|
||||
* . . . . . . . . . . . . . . . . V
|
||||
* U V U V U V U V U V U V . . . . ^
|
||||
* U V U V U V U V U V U V . . . . |
|
||||
* U V U V U V U V U V U V . . . . |
|
||||
* U V U V U V U V U V U V . . . . UV_Scanlines
|
||||
* . . . . . . . . . . . . . . . . |
|
||||
* . . . . . . . . . . . . . . . . V
|
||||
* . . . . . . . . . . . . . . . . --> Buffer size alignment
|
||||
*
|
||||
* Y_Stride : Width aligned to 128
|
||||
* UV_Stride : Width aligned to 128
|
||||
* Y_Scanlines: Height aligned to 32
|
||||
* UV_Scanlines: Height/2 aligned to 16
|
||||
* Extradata: Arbitrary (software-imposed) padding
|
||||
* Total size = align((Y_Stride * Y_Scanlines
|
||||
* + UV_Stride * UV_Scanlines
|
||||
* + max(Extradata, Y_Stride * 8), 4096)
|
||||
*/
|
||||
COLOR_FMT_NV12,
|
||||
|
||||
/* Venus NV21:
|
||||
* YUV 4:2:0 image with a plane of 8 bit Y samples followed
|
||||
* by an interleaved V/U plane containing 8 bit 2x2 subsampled
|
||||
* colour difference samples.
|
||||
*
|
||||
* <-------- Y/UV_Stride -------->
|
||||
* <------- Width ------->
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . ^ ^
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . | |
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . Height |
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . | Y_Scanlines
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . | |
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . | |
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . | |
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . V |
|
||||
* . . . . . . . . . . . . . . . . |
|
||||
* . . . . . . . . . . . . . . . . |
|
||||
* . . . . . . . . . . . . . . . . |
|
||||
* . . . . . . . . . . . . . . . . V
|
||||
* V U V U V U V U V U V U . . . . ^
|
||||
* V U V U V U V U V U V U . . . . |
|
||||
* V U V U V U V U V U V U . . . . |
|
||||
* V U V U V U V U V U V U . . . . UV_Scanlines
|
||||
* . . . . . . . . . . . . . . . . |
|
||||
* . . . . . . . . . . . . . . . . V
|
||||
* . . . . . . . . . . . . . . . . --> Padding & Buffer size alignment
|
||||
*
|
||||
* Y_Stride : Width aligned to 128
|
||||
* UV_Stride : Width aligned to 128
|
||||
* Y_Scanlines: Height aligned to 32
|
||||
* UV_Scanlines: Height/2 aligned to 16
|
||||
* Extradata: Arbitrary (software-imposed) padding
|
||||
* Total size = align((Y_Stride * Y_Scanlines
|
||||
* + UV_Stride * UV_Scanlines
|
||||
* + max(Extradata, Y_Stride * 8), 4096)
|
||||
*/
|
||||
COLOR_FMT_NV21,
|
||||
/* Venus NV12_MVTB:
|
||||
* Two YUV 4:2:0 images/views one after the other
|
||||
* in a top-bottom layout, same as NV12
|
||||
* with a plane of 8 bit Y samples followed
|
||||
* by an interleaved U/V plane containing 8 bit 2x2 subsampled
|
||||
* colour difference samples.
|
||||
*
|
||||
*
|
||||
* <-------- Y/UV_Stride -------->
|
||||
* <------- Width ------->
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . ^ ^ ^
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . | | |
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . Height | |
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . | Y_Scanlines |
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . | | |
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . | | |
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . | | |
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . V | |
|
||||
* . . . . . . . . . . . . . . . . | View_1
|
||||
* . . . . . . . . . . . . . . . . | |
|
||||
* . . . . . . . . . . . . . . . . | |
|
||||
* . . . . . . . . . . . . . . . . V |
|
||||
* U V U V U V U V U V U V . . . . ^ |
|
||||
* U V U V U V U V U V U V . . . . | |
|
||||
* U V U V U V U V U V U V . . . . | |
|
||||
* U V U V U V U V U V U V . . . . UV_Scanlines |
|
||||
* . . . . . . . . . . . . . . . . | |
|
||||
* . . . . . . . . . . . . . . . . V V
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . ^ ^ ^
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . | | |
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . Height | |
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . | Y_Scanlines |
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . | | |
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . | | |
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . | | |
|
||||
* Y Y Y Y Y Y Y Y Y Y Y Y . . . . V | |
|
||||
* . . . . . . . . . . . . . . . . | View_2
|
||||
* . . . . . . . . . . . . . . . . | |
|
||||
* . . . . . . . . . . . . . . . . | |
|
||||
* . . . . . . . . . . . . . . . . V |
|
||||
* U V U V U V U V U V U V . . . . ^ |
|
||||
* U V U V U V U V U V U V . . . . | |
|
||||
* U V U V U V U V U V U V . . . . | |
|
||||
* U V U V U V U V U V U V . . . . UV_Scanlines |
|
||||
* . . . . . . . . . . . . . . . . | |
|
||||
* . . . . . . . . . . . . . . . . V V
|
||||
* . . . . . . . . . . . . . . . . --> Buffer size alignment
|
||||
*
|
||||
* Y_Stride : Width aligned to 128
|
||||
* UV_Stride : Width aligned to 128
|
||||
* Y_Scanlines: Height aligned to 32
|
||||
* UV_Scanlines: Height/2 aligned to 16
|
||||
* View_1 begin at: 0 (zero)
|
||||
* View_2 begin at: Y_Stride * Y_Scanlines + UV_Stride * UV_Scanlines
|
||||
* Extradata: Arbitrary (software-imposed) padding
|
||||
* Total size = align((2*(Y_Stride * Y_Scanlines)
|
||||
* + 2*(UV_Stride * UV_Scanlines) + Extradata), 4096)
|
||||
*/
|
||||
COLOR_FMT_NV12_MVTB,
|
||||
/* Venus NV12 UBWC:
|
||||
* Compressed Macro-tile format for NV12.
|
||||
* Contains 4 planes in the following order -
|
||||
* (A) Y_Meta_Plane
|
||||
* (B) Y_UBWC_Plane
|
||||
* (C) UV_Meta_Plane
|
||||
* (D) UV_UBWC_Plane
|
||||
*
|
||||
* Y_Meta_Plane consists of meta information to decode compressed
|
||||
* tile data in Y_UBWC_Plane.
|
||||
* Y_UBWC_Plane consists of Y data in compressed macro-tile format.
|
||||
* UBWC decoder block will use the Y_Meta_Plane data together with
|
||||
* Y_UBWC_Plane data to produce loss-less uncompressed 8 bit Y samples.
|
||||
*
|
||||
* UV_Meta_Plane consists of meta information to decode compressed
|
||||
* tile data in UV_UBWC_Plane.
|
||||
* UV_UBWC_Plane consists of UV data in compressed macro-tile format.
|
||||
* UBWC decoder block will use UV_Meta_Plane data together with
|
||||
* UV_UBWC_Plane data to produce loss-less uncompressed 8 bit 2x2
|
||||
* subsampled color difference samples.
|
||||
*
|
||||
* Each tile in Y_UBWC_Plane/UV_UBWC_Plane is independently decodable
|
||||
* and randomly accessible. There is no dependency between tiles.
|
||||
*
|
||||
* <----- Y_Meta_Stride ---->
|
||||
* <-------- Width ------>
|
||||
* M M M M M M M M M M M M . . ^ ^
|
||||
* M M M M M M M M M M M M . . | |
|
||||
* M M M M M M M M M M M M . . Height |
|
||||
* M M M M M M M M M M M M . . | Meta_Y_Scanlines
|
||||
* M M M M M M M M M M M M . . | |
|
||||
* M M M M M M M M M M M M . . | |
|
||||
* M M M M M M M M M M M M . . | |
|
||||
* M M M M M M M M M M M M . . V |
|
||||
* . . . . . . . . . . . . . . |
|
||||
* . . . . . . . . . . . . . . |
|
||||
* . . . . . . . . . . . . . . -------> Buffer size aligned to 4k
|
||||
* . . . . . . . . . . . . . . V
|
||||
* <--Compressed tile Y Stride--->
|
||||
* <------- Width ------->
|
||||
* Y* Y* Y* Y* Y* Y* Y* Y* . . . . ^ ^
|
||||
* Y* Y* Y* Y* Y* Y* Y* Y* . . . . | |
|
||||
* Y* Y* Y* Y* Y* Y* Y* Y* . . . . Height |
|
||||
* Y* Y* Y* Y* Y* Y* Y* Y* . . . . | Macro_tile_Y_Scanlines
|
||||
* Y* Y* Y* Y* Y* Y* Y* Y* . . . . | |
|
||||
* Y* Y* Y* Y* Y* Y* Y* Y* . . . . | |
|
||||
* Y* Y* Y* Y* Y* Y* Y* Y* . . . . | |
|
||||
* Y* Y* Y* Y* Y* Y* Y* Y* . . . . V |
|
||||
* . . . . . . . . . . . . . . . . |
|
||||
* . . . . . . . . . . . . . . . . |
|
||||
* . . . . . . . . . . . . . . . . -------> Buffer size aligned to 4k
|
||||
* . . . . . . . . . . . . . . . . V
|
||||
* <----- UV_Meta_Stride ---->
|
||||
* M M M M M M M M M M M M . . ^
|
||||
* M M M M M M M M M M M M . . |
|
||||
* M M M M M M M M M M M M . . |
|
||||
* M M M M M M M M M M M M . . M_UV_Scanlines
|
||||
* . . . . . . . . . . . . . . |
|
||||
* . . . . . . . . . . . . . . V
|
||||
* . . . . . . . . . . . . . . -------> Buffer size aligned to 4k
|
||||
* <--Compressed tile UV Stride--->
|
||||
* U* V* U* V* U* V* U* V* . . . . ^
|
||||
* U* V* U* V* U* V* U* V* . . . . |
|
||||
* U* V* U* V* U* V* U* V* . . . . |
|
||||
* U* V* U* V* U* V* U* V* . . . . UV_Scanlines
|
||||
* . . . . . . . . . . . . . . . . |
|
||||
* . . . . . . . . . . . . . . . . V
|
||||
* . . . . . . . . . . . . . . . . -------> Buffer size aligned to 4k
|
||||
*
|
||||
* Y_Stride = align(Width, 128)
|
||||
* UV_Stride = align(Width, 128)
|
||||
* Y_Scanlines = align(Height, 32)
|
||||
* UV_Scanlines = align(Height/2, 16)
|
||||
* Y_UBWC_Plane_size = align(Y_Stride * Y_Scanlines, 4096)
|
||||
* UV_UBWC_Plane_size = align(UV_Stride * UV_Scanlines, 4096)
|
||||
* Y_Meta_Stride = align(roundup(Width, Y_TileWidth), 64)
|
||||
* Y_Meta_Scanlines = align(roundup(Height, Y_TileHeight), 16)
|
||||
* Y_Meta_Plane_size = align(Y_Meta_Stride * Y_Meta_Scanlines, 4096)
|
||||
* UV_Meta_Stride = align(roundup(Width, UV_TileWidth), 64)
|
||||
* UV_Meta_Scanlines = align(roundup(Height, UV_TileHeight), 16)
|
||||
* UV_Meta_Plane_size = align(UV_Meta_Stride * UV_Meta_Scanlines, 4096)
|
||||
* Extradata = 8k
|
||||
*
|
||||
* Total size = align( Y_UBWC_Plane_size + UV_UBWC_Plane_size +
|
||||
* Y_Meta_Plane_size + UV_Meta_Plane_size
|
||||
* + max(Extradata, Y_Stride * 48), 4096)
|
||||
*/
|
||||
COLOR_FMT_NV12_UBWC,
|
||||
/* Venus NV12 10-bit UBWC:
|
||||
* Compressed Macro-tile format for NV12.
|
||||
* Contains 4 planes in the following order -
|
||||
* (A) Y_Meta_Plane
|
||||
* (B) Y_UBWC_Plane
|
||||
* (C) UV_Meta_Plane
|
||||
* (D) UV_UBWC_Plane
|
||||
*
|
||||
* Y_Meta_Plane consists of meta information to decode compressed
|
||||
* tile data in Y_UBWC_Plane.
|
||||
* Y_UBWC_Plane consists of Y data in compressed macro-tile format.
|
||||
* UBWC decoder block will use the Y_Meta_Plane data together with
|
||||
* Y_UBWC_Plane data to produce loss-less uncompressed 10 bit Y samples.
|
||||
*
|
||||
* UV_Meta_Plane consists of meta information to decode compressed
|
||||
* tile data in UV_UBWC_Plane.
|
||||
* UV_UBWC_Plane consists of UV data in compressed macro-tile format.
|
||||
* UBWC decoder block will use UV_Meta_Plane data together with
|
||||
* UV_UBWC_Plane data to produce loss-less uncompressed 10 bit 2x2
|
||||
* subsampled color difference samples.
|
||||
*
|
||||
* Each tile in Y_UBWC_Plane/UV_UBWC_Plane is independently decodable
|
||||
* and randomly accessible. There is no dependency between tiles.
|
||||
*
|
||||
* <----- Y_Meta_Stride ----->
|
||||
* <-------- Width ------>
|
||||
* M M M M M M M M M M M M . . ^ ^
|
||||
* M M M M M M M M M M M M . . | |
|
||||
* M M M M M M M M M M M M . . Height |
|
||||
* M M M M M M M M M M M M . . | Meta_Y_Scanlines
|
||||
* M M M M M M M M M M M M . . | |
|
||||
* M M M M M M M M M M M M . . | |
|
||||
* M M M M M M M M M M M M . . | |
|
||||
* M M M M M M M M M M M M . . V |
|
||||
* . . . . . . . . . . . . . . |
|
||||
* . . . . . . . . . . . . . . |
|
||||
* . . . . . . . . . . . . . . -------> Buffer size aligned to 4k
|
||||
* . . . . . . . . . . . . . . V
|
||||
* <--Compressed tile Y Stride--->
|
||||
* <------- Width ------->
|
||||
* Y* Y* Y* Y* Y* Y* Y* Y* . . . . ^ ^
|
||||
* Y* Y* Y* Y* Y* Y* Y* Y* . . . . | |
|
||||
* Y* Y* Y* Y* Y* Y* Y* Y* . . . . Height |
|
||||
* Y* Y* Y* Y* Y* Y* Y* Y* . . . . | Macro_tile_Y_Scanlines
|
||||
* Y* Y* Y* Y* Y* Y* Y* Y* . . . . | |
|
||||
* Y* Y* Y* Y* Y* Y* Y* Y* . . . . | |
|
||||
* Y* Y* Y* Y* Y* Y* Y* Y* . . . . | |
|
||||
* Y* Y* Y* Y* Y* Y* Y* Y* . . . . V |
|
||||
* . . . . . . . . . . . . . . . . |
|
||||
* . . . . . . . . . . . . . . . . |
|
||||
* . . . . . . . . . . . . . . . . -------> Buffer size aligned to 4k
|
||||
* . . . . . . . . . . . . . . . . V
|
||||
* <----- UV_Meta_Stride ---->
|
||||
* M M M M M M M M M M M M . . ^
|
||||
* M M M M M M M M M M M M . . |
|
||||
* M M M M M M M M M M M M . . |
|
||||
* M M M M M M M M M M M M . . M_UV_Scanlines
|
||||
* . . . . . . . . . . . . . . |
|
||||
* . . . . . . . . . . . . . . V
|
||||
* . . . . . . . . . . . . . . -------> Buffer size aligned to 4k
|
||||
* <--Compressed tile UV Stride--->
|
||||
* U* V* U* V* U* V* U* V* . . . . ^
|
||||
* U* V* U* V* U* V* U* V* . . . . |
|
||||
* U* V* U* V* U* V* U* V* . . . . |
|
||||
* U* V* U* V* U* V* U* V* . . . . UV_Scanlines
|
||||
* . . . . . . . . . . . . . . . . |
|
||||
* . . . . . . . . . . . . . . . . V
|
||||
* . . . . . . . . . . . . . . . . -------> Buffer size aligned to 4k
|
||||
*
|
||||
*
|
||||
* Y_Stride = align(Width * 4/3, 128)
|
||||
* UV_Stride = align(Width * 4/3, 128)
|
||||
* Y_Scanlines = align(Height, 32)
|
||||
* UV_Scanlines = align(Height/2, 16)
|
||||
* Y_UBWC_Plane_Size = align(Y_Stride * Y_Scanlines, 4096)
|
||||
* UV_UBWC_Plane_Size = align(UV_Stride * UV_Scanlines, 4096)
|
||||
* Y_Meta_Stride = align(roundup(Width, Y_TileWidth), 64)
|
||||
* Y_Meta_Scanlines = align(roundup(Height, Y_TileHeight), 16)
|
||||
* Y_Meta_Plane_size = align(Y_Meta_Stride * Y_Meta_Scanlines, 4096)
|
||||
* UV_Meta_Stride = align(roundup(Width, UV_TileWidth), 64)
|
||||
* UV_Meta_Scanlines = align(roundup(Height, UV_TileHeight), 16)
|
||||
* UV_Meta_Plane_size = align(UV_Meta_Stride * UV_Meta_Scanlines, 4096)
|
||||
* Extradata = 8k
|
||||
*
|
||||
* Total size = align(Y_UBWC_Plane_size + UV_UBWC_Plane_size +
|
||||
* Y_Meta_Plane_size + UV_Meta_Plane_size
|
||||
* + max(Extradata, Y_Stride * 48), 4096)
|
||||
*/
|
||||
COLOR_FMT_NV12_BPP10_UBWC,
|
||||
/* Venus RGBA8888 format:
|
||||
* Contains 1 plane in the following order -
|
||||
* (A) RGBA plane
|
||||
*
|
||||
* <-------- RGB_Stride -------->
|
||||
* <------- Width ------->
|
||||
* R R R R R R R R R R R R . . . . ^ ^
|
||||
* R R R R R R R R R R R R . . . . | |
|
||||
* R R R R R R R R R R R R . . . . Height |
|
||||
* R R R R R R R R R R R R . . . . | RGB_Scanlines
|
||||
* R R R R R R R R R R R R . . . . | |
|
||||
* R R R R R R R R R R R R . . . . | |
|
||||
* R R R R R R R R R R R R . . . . | |
|
||||
* R R R R R R R R R R R R . . . . V |
|
||||
* . . . . . . . . . . . . . . . . |
|
||||
* . . . . . . . . . . . . . . . . |
|
||||
* . . . . . . . . . . . . . . . . |
|
||||
* . . . . . . . . . . . . . . . . V
|
||||
*
|
||||
* RGB_Stride = align(Width * 4, 128)
|
||||
* RGB_Scanlines = align(Height, 32)
|
||||
* RGB_Plane_size = align(RGB_Stride * RGB_Scanlines, 4096)
|
||||
* Extradata = 8k
|
||||
*
|
||||
* Total size = align(RGB_Plane_size + Extradata, 4096)
|
||||
*/
|
||||
COLOR_FMT_RGBA8888,
|
||||
/* Venus RGBA8888 UBWC format:
|
||||
* Contains 2 planes in the following order -
|
||||
* (A) Meta plane
|
||||
* (B) RGBA plane
|
||||
*
|
||||
* <--- RGB_Meta_Stride ---->
|
||||
* <-------- Width ------>
|
||||
* M M M M M M M M M M M M . . ^ ^
|
||||
* M M M M M M M M M M M M . . | |
|
||||
* M M M M M M M M M M M M . . Height |
|
||||
* M M M M M M M M M M M M . . | Meta_RGB_Scanlines
|
||||
* M M M M M M M M M M M M . . | |
|
||||
* M M M M M M M M M M M M . . | |
|
||||
* M M M M M M M M M M M M . . | |
|
||||
* M M M M M M M M M M M M . . V |
|
||||
* . . . . . . . . . . . . . . |
|
||||
* . . . . . . . . . . . . . . |
|
||||
* . . . . . . . . . . . . . . -------> Buffer size aligned to 4k
|
||||
* . . . . . . . . . . . . . . V
|
||||
* <-------- RGB_Stride -------->
|
||||
* <------- Width ------->
|
||||
* R R R R R R R R R R R R . . . . ^ ^
|
||||
* R R R R R R R R R R R R . . . . | |
|
||||
* R R R R R R R R R R R R . . . . Height |
|
||||
* R R R R R R R R R R R R . . . . | RGB_Scanlines
|
||||
* R R R R R R R R R R R R . . . . | |
|
||||
* R R R R R R R R R R R R . . . . | |
|
||||
* R R R R R R R R R R R R . . . . | |
|
||||
* R R R R R R R R R R R R . . . . V |
|
||||
* . . . . . . . . . . . . . . . . |
|
||||
* . . . . . . . . . . . . . . . . |
|
||||
* . . . . . . . . . . . . . . . . -------> Buffer size aligned to 4k
|
||||
* . . . . . . . . . . . . . . . . V
|
||||
*
|
||||
* RGB_Stride = align(Width * 4, 128)
|
||||
* RGB_Scanlines = align(Height, 32)
|
||||
* RGB_Plane_size = align(RGB_Stride * RGB_Scanlines, 4096)
|
||||
* RGB_Meta_Stride = align(roundup(Width, RGB_TileWidth), 64)
|
||||
* RGB_Meta_Scanline = align(roundup(Height, RGB_TileHeight), 16)
|
||||
* RGB_Meta_Plane_size = align(RGB_Meta_Stride *
|
||||
* RGB_Meta_Scanlines, 4096)
|
||||
* Extradata = 8k
|
||||
*
|
||||
* Total size = align(RGB_Meta_Plane_size + RGB_Plane_size +
|
||||
* Extradata, 4096)
|
||||
*/
|
||||
COLOR_FMT_RGBA8888_UBWC,
|
||||
};
|
||||
|
||||
static __inline__ unsigned int VENUS_EXTRADATA_SIZE(int width, int height)
|
||||
{
|
||||
(void)height;
|
||||
(void)width;
|
||||
|
||||
/*
|
||||
* In the future, calculate the size based on the w/h but just
|
||||
* hardcode it for now since 16K satisfies all current usecases.
|
||||
*/
|
||||
return 16 * 1024;
|
||||
}
|
||||
|
||||
static __inline__ unsigned int VENUS_Y_STRIDE(int color_fmt, int width)
|
||||
{
|
||||
unsigned int alignment, stride = 0;
|
||||
|
||||
if (!width)
|
||||
goto invalid_input;
|
||||
|
||||
switch (color_fmt) {
|
||||
case COLOR_FMT_NV21:
|
||||
case COLOR_FMT_NV12:
|
||||
case COLOR_FMT_NV12_MVTB:
|
||||
case COLOR_FMT_NV12_UBWC:
|
||||
alignment = 128;
|
||||
stride = MSM_MEDIA_ALIGN(width, alignment);
|
||||
break;
|
||||
case COLOR_FMT_NV12_BPP10_UBWC:
|
||||
alignment = 256;
|
||||
stride = MSM_MEDIA_ALIGN(width, 192);
|
||||
stride = MSM_MEDIA_ALIGN(stride * 4/3, alignment);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
invalid_input:
|
||||
return stride;
|
||||
}
|
||||
|
||||
static __inline__ unsigned int VENUS_UV_STRIDE(int color_fmt, int width)
|
||||
{
|
||||
unsigned int alignment, stride = 0;
|
||||
|
||||
if (!width)
|
||||
goto invalid_input;
|
||||
|
||||
switch (color_fmt) {
|
||||
case COLOR_FMT_NV21:
|
||||
case COLOR_FMT_NV12:
|
||||
case COLOR_FMT_NV12_MVTB:
|
||||
case COLOR_FMT_NV12_UBWC:
|
||||
alignment = 128;
|
||||
stride = MSM_MEDIA_ALIGN(width, alignment);
|
||||
break;
|
||||
case COLOR_FMT_NV12_BPP10_UBWC:
|
||||
alignment = 256;
|
||||
stride = MSM_MEDIA_ALIGN(width, 192);
|
||||
stride = MSM_MEDIA_ALIGN(stride * 4/3, alignment);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
invalid_input:
|
||||
return stride;
|
||||
}
|
||||
|
||||
static __inline__ unsigned int VENUS_Y_SCANLINES(int color_fmt, int height)
|
||||
{
|
||||
unsigned int alignment, sclines = 0;
|
||||
|
||||
if (!height)
|
||||
goto invalid_input;
|
||||
|
||||
switch (color_fmt) {
|
||||
case COLOR_FMT_NV21:
|
||||
case COLOR_FMT_NV12:
|
||||
case COLOR_FMT_NV12_MVTB:
|
||||
case COLOR_FMT_NV12_UBWC:
|
||||
alignment = 32;
|
||||
break;
|
||||
case COLOR_FMT_NV12_BPP10_UBWC:
|
||||
alignment = 16;
|
||||
break;
|
||||
default:
|
||||
return 0;
|
||||
}
|
||||
sclines = MSM_MEDIA_ALIGN(height, alignment);
|
||||
invalid_input:
|
||||
return sclines;
|
||||
}
|
||||
|
||||
static __inline__ unsigned int VENUS_UV_SCANLINES(int color_fmt, int height)
|
||||
{
|
||||
unsigned int alignment, sclines = 0;
|
||||
|
||||
if (!height)
|
||||
goto invalid_input;
|
||||
|
||||
switch (color_fmt) {
|
||||
case COLOR_FMT_NV21:
|
||||
case COLOR_FMT_NV12:
|
||||
case COLOR_FMT_NV12_MVTB:
|
||||
case COLOR_FMT_NV12_BPP10_UBWC:
|
||||
alignment = 16;
|
||||
break;
|
||||
case COLOR_FMT_NV12_UBWC:
|
||||
alignment = 32;
|
||||
break;
|
||||
default:
|
||||
goto invalid_input;
|
||||
}
|
||||
|
||||
sclines = MSM_MEDIA_ALIGN(height / 2, alignment);
|
||||
|
||||
invalid_input:
|
||||
return sclines;
|
||||
}
|
||||
|
||||
static __inline__ unsigned int VENUS_Y_META_STRIDE(int color_fmt, int width)
|
||||
{
|
||||
int y_tile_width = 0, y_meta_stride = 0;
|
||||
|
||||
if (!width)
|
||||
goto invalid_input;
|
||||
|
||||
switch (color_fmt) {
|
||||
case COLOR_FMT_NV12_UBWC:
|
||||
y_tile_width = 32;
|
||||
break;
|
||||
case COLOR_FMT_NV12_BPP10_UBWC:
|
||||
y_tile_width = 48;
|
||||
break;
|
||||
default:
|
||||
goto invalid_input;
|
||||
}
|
||||
|
||||
y_meta_stride = MSM_MEDIA_ROUNDUP(width, y_tile_width);
|
||||
y_meta_stride = MSM_MEDIA_ALIGN(y_meta_stride, 64);
|
||||
|
||||
invalid_input:
|
||||
return y_meta_stride;
|
||||
}
|
||||
|
||||
static __inline__ unsigned int VENUS_Y_META_SCANLINES(int color_fmt, int height)
|
||||
{
|
||||
int y_tile_height = 0, y_meta_scanlines = 0;
|
||||
|
||||
if (!height)
|
||||
goto invalid_input;
|
||||
|
||||
switch (color_fmt) {
|
||||
case COLOR_FMT_NV12_UBWC:
|
||||
y_tile_height = 8;
|
||||
break;
|
||||
case COLOR_FMT_NV12_BPP10_UBWC:
|
||||
y_tile_height = 4;
|
||||
break;
|
||||
default:
|
||||
goto invalid_input;
|
||||
}
|
||||
|
||||
y_meta_scanlines = MSM_MEDIA_ROUNDUP(height, y_tile_height);
|
||||
y_meta_scanlines = MSM_MEDIA_ALIGN(y_meta_scanlines, 16);
|
||||
|
||||
invalid_input:
|
||||
return y_meta_scanlines;
|
||||
}
|
||||
|
||||
static __inline__ unsigned int VENUS_UV_META_STRIDE(int color_fmt, int width)
|
||||
{
|
||||
int uv_tile_width = 0, uv_meta_stride = 0;
|
||||
|
||||
if (!width)
|
||||
goto invalid_input;
|
||||
|
||||
switch (color_fmt) {
|
||||
case COLOR_FMT_NV12_UBWC:
|
||||
uv_tile_width = 16;
|
||||
break;
|
||||
case COLOR_FMT_NV12_BPP10_UBWC:
|
||||
uv_tile_width = 24;
|
||||
break;
|
||||
default:
|
||||
goto invalid_input;
|
||||
}
|
||||
|
||||
uv_meta_stride = MSM_MEDIA_ROUNDUP(width / 2, uv_tile_width);
|
||||
uv_meta_stride = MSM_MEDIA_ALIGN(uv_meta_stride, 64);
|
||||
|
||||
invalid_input:
|
||||
return uv_meta_stride;
|
||||
}
|
||||
|
||||
static __inline__ unsigned int VENUS_UV_META_SCANLINES(int color_fmt, int height)
|
||||
{
|
||||
int uv_tile_height = 0, uv_meta_scanlines = 0;
|
||||
|
||||
if (!height)
|
||||
goto invalid_input;
|
||||
|
||||
switch (color_fmt) {
|
||||
case COLOR_FMT_NV12_UBWC:
|
||||
uv_tile_height = 8;
|
||||
break;
|
||||
case COLOR_FMT_NV12_BPP10_UBWC:
|
||||
uv_tile_height = 4;
|
||||
break;
|
||||
default:
|
||||
goto invalid_input;
|
||||
}
|
||||
|
||||
uv_meta_scanlines = MSM_MEDIA_ROUNDUP(height / 2, uv_tile_height);
|
||||
uv_meta_scanlines = MSM_MEDIA_ALIGN(uv_meta_scanlines, 16);
|
||||
|
||||
invalid_input:
|
||||
return uv_meta_scanlines;
|
||||
}
|
||||
|
||||
static __inline__ unsigned int VENUS_RGB_STRIDE(int color_fmt, int width)
|
||||
{
|
||||
unsigned int alignment = 0, stride = 0;
|
||||
|
||||
if (!width)
|
||||
goto invalid_input;
|
||||
|
||||
switch (color_fmt) {
|
||||
case COLOR_FMT_RGBA8888:
|
||||
alignment = 128;
|
||||
break;
|
||||
case COLOR_FMT_RGBA8888_UBWC:
|
||||
alignment = 256;
|
||||
break;
|
||||
default:
|
||||
goto invalid_input;
|
||||
}
|
||||
|
||||
stride = MSM_MEDIA_ALIGN(width * 4, alignment);
|
||||
|
||||
invalid_input:
|
||||
return stride;
|
||||
}
|
||||
|
||||
static __inline__ unsigned int VENUS_RGB_SCANLINES(int color_fmt, int height)
|
||||
{
|
||||
unsigned int alignment = 0, scanlines = 0;
|
||||
|
||||
if (!height)
|
||||
goto invalid_input;
|
||||
|
||||
switch (color_fmt) {
|
||||
case COLOR_FMT_RGBA8888:
|
||||
alignment = 32;
|
||||
break;
|
||||
case COLOR_FMT_RGBA8888_UBWC:
|
||||
alignment = 16;
|
||||
break;
|
||||
default:
|
||||
goto invalid_input;
|
||||
}
|
||||
|
||||
scanlines = MSM_MEDIA_ALIGN(height, alignment);
|
||||
|
||||
invalid_input:
|
||||
return scanlines;
|
||||
}
|
||||
|
||||
static __inline__ unsigned int VENUS_RGB_META_STRIDE(int color_fmt, int width)
|
||||
{
|
||||
int rgb_tile_width = 0, rgb_meta_stride = 0;
|
||||
|
||||
if (!width)
|
||||
goto invalid_input;
|
||||
|
||||
switch (color_fmt) {
|
||||
case COLOR_FMT_RGBA8888_UBWC:
|
||||
rgb_tile_width = 16;
|
||||
break;
|
||||
default:
|
||||
goto invalid_input;
|
||||
}
|
||||
|
||||
rgb_meta_stride = MSM_MEDIA_ROUNDUP(width, rgb_tile_width);
|
||||
rgb_meta_stride = MSM_MEDIA_ALIGN(rgb_meta_stride, 64);
|
||||
|
||||
invalid_input:
|
||||
return rgb_meta_stride;
|
||||
}
|
||||
|
||||
static __inline__ unsigned int VENUS_RGB_META_SCANLINES(int color_fmt, int height)
|
||||
{
|
||||
int rgb_tile_height = 0, rgb_meta_scanlines = 0;
|
||||
|
||||
if (!height)
|
||||
goto invalid_input;
|
||||
|
||||
switch (color_fmt) {
|
||||
case COLOR_FMT_RGBA8888_UBWC:
|
||||
rgb_tile_height = 4;
|
||||
break;
|
||||
default:
|
||||
goto invalid_input;
|
||||
}
|
||||
|
||||
rgb_meta_scanlines = MSM_MEDIA_ROUNDUP(height, rgb_tile_height);
|
||||
rgb_meta_scanlines = MSM_MEDIA_ALIGN(rgb_meta_scanlines, 16);
|
||||
|
||||
invalid_input:
|
||||
return rgb_meta_scanlines;
|
||||
}
|
||||
|
||||
static __inline__ unsigned int VENUS_BUFFER_SIZE(
|
||||
int color_fmt, int width, int height)
|
||||
{
|
||||
const unsigned int extra_size = VENUS_EXTRADATA_SIZE(width, height);
|
||||
unsigned int uv_alignment = 0, size = 0;
|
||||
unsigned int y_plane, uv_plane, y_stride,
|
||||
uv_stride, y_sclines, uv_sclines;
|
||||
unsigned int y_ubwc_plane = 0, uv_ubwc_plane = 0;
|
||||
unsigned int y_meta_stride = 0, y_meta_scanlines = 0;
|
||||
unsigned int uv_meta_stride = 0, uv_meta_scanlines = 0;
|
||||
unsigned int y_meta_plane = 0, uv_meta_plane = 0;
|
||||
unsigned int rgb_stride = 0, rgb_scanlines = 0;
|
||||
unsigned int rgb_plane = 0, rgb_ubwc_plane = 0, rgb_meta_plane = 0;
|
||||
unsigned int rgb_meta_stride = 0, rgb_meta_scanlines = 0;
|
||||
|
||||
if (!width || !height)
|
||||
goto invalid_input;
|
||||
|
||||
y_stride = VENUS_Y_STRIDE(color_fmt, width);
|
||||
uv_stride = VENUS_UV_STRIDE(color_fmt, width);
|
||||
y_sclines = VENUS_Y_SCANLINES(color_fmt, height);
|
||||
uv_sclines = VENUS_UV_SCANLINES(color_fmt, height);
|
||||
rgb_stride = VENUS_RGB_STRIDE(color_fmt, width);
|
||||
rgb_scanlines = VENUS_RGB_SCANLINES(color_fmt, height);
|
||||
|
||||
switch (color_fmt) {
|
||||
case COLOR_FMT_NV21:
|
||||
case COLOR_FMT_NV12:
|
||||
uv_alignment = 4096;
|
||||
y_plane = y_stride * y_sclines;
|
||||
uv_plane = uv_stride * uv_sclines + uv_alignment;
|
||||
size = y_plane + uv_plane +
|
||||
MSM_MEDIA_MAX(extra_size, 8 * y_stride);
|
||||
size = MSM_MEDIA_ALIGN(size, 4096);
|
||||
break;
|
||||
case COLOR_FMT_NV12_MVTB:
|
||||
uv_alignment = 4096;
|
||||
y_plane = y_stride * y_sclines;
|
||||
uv_plane = uv_stride * uv_sclines + uv_alignment;
|
||||
size = y_plane + uv_plane;
|
||||
size = 2 * size + extra_size;
|
||||
size = MSM_MEDIA_ALIGN(size, 4096);
|
||||
break;
|
||||
case COLOR_FMT_NV12_UBWC:
|
||||
case COLOR_FMT_NV12_BPP10_UBWC:
|
||||
y_ubwc_plane = MSM_MEDIA_ALIGN(y_stride * y_sclines, 4096);
|
||||
uv_ubwc_plane = MSM_MEDIA_ALIGN(uv_stride * uv_sclines, 4096);
|
||||
y_meta_stride = VENUS_Y_META_STRIDE(color_fmt, width);
|
||||
y_meta_scanlines = VENUS_Y_META_SCANLINES(color_fmt, height);
|
||||
y_meta_plane = MSM_MEDIA_ALIGN(
|
||||
y_meta_stride * y_meta_scanlines, 4096);
|
||||
uv_meta_stride = VENUS_UV_META_STRIDE(color_fmt, width);
|
||||
uv_meta_scanlines = VENUS_UV_META_SCANLINES(color_fmt, height);
|
||||
uv_meta_plane = MSM_MEDIA_ALIGN(uv_meta_stride *
|
||||
uv_meta_scanlines, 4096);
|
||||
|
||||
size = y_ubwc_plane + uv_ubwc_plane + y_meta_plane +
|
||||
uv_meta_plane +
|
||||
MSM_MEDIA_MAX(extra_size + 8192, 48 * y_stride);
|
||||
size = MSM_MEDIA_ALIGN(size, 4096);
|
||||
break;
|
||||
case COLOR_FMT_RGBA8888:
|
||||
rgb_plane = MSM_MEDIA_ALIGN(rgb_stride * rgb_scanlines, 4096);
|
||||
size = rgb_plane;
|
||||
size = MSM_MEDIA_ALIGN(size, 4096);
|
||||
break;
|
||||
case COLOR_FMT_RGBA8888_UBWC:
|
||||
rgb_ubwc_plane = MSM_MEDIA_ALIGN(rgb_stride * rgb_scanlines,
|
||||
4096);
|
||||
rgb_meta_stride = VENUS_RGB_META_STRIDE(color_fmt, width);
|
||||
rgb_meta_scanlines = VENUS_RGB_META_SCANLINES(color_fmt,
|
||||
height);
|
||||
rgb_meta_plane = MSM_MEDIA_ALIGN(rgb_meta_stride *
|
||||
rgb_meta_scanlines, 4096);
|
||||
size = rgb_ubwc_plane + rgb_meta_plane;
|
||||
size = MSM_MEDIA_ALIGN(size, 4096);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
invalid_input:
|
||||
return size;
|
||||
}
|
||||
|
||||
static __inline__ unsigned int VENUS_VIEW2_OFFSET(
|
||||
int color_fmt, int width, int height)
|
||||
{
|
||||
unsigned int offset = 0;
|
||||
unsigned int y_plane, uv_plane, y_stride,
|
||||
uv_stride, y_sclines, uv_sclines;
|
||||
if (!width || !height)
|
||||
goto invalid_input;
|
||||
|
||||
y_stride = VENUS_Y_STRIDE(color_fmt, width);
|
||||
uv_stride = VENUS_UV_STRIDE(color_fmt, width);
|
||||
y_sclines = VENUS_Y_SCANLINES(color_fmt, height);
|
||||
uv_sclines = VENUS_UV_SCANLINES(color_fmt, height);
|
||||
switch (color_fmt) {
|
||||
case COLOR_FMT_NV12_MVTB:
|
||||
y_plane = y_stride * y_sclines;
|
||||
uv_plane = uv_stride * uv_sclines;
|
||||
offset = y_plane + uv_plane;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
invalid_input:
|
||||
return offset;
|
||||
}
|
||||
|
||||
#endif
|
||||
107
kernel-headers/media/msm_mercury.h
Normal file
107
kernel-headers/media/msm_mercury.h
Normal file
@@ -0,0 +1,107 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __UAPI_MSM_MERCURY_H
|
||||
#define __UAPI_MSM_MERCURY_H
|
||||
#include <linux/types.h>
|
||||
#include <linux/ioctl.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_MERCURY_HW_VERSION_REG 0x0004
|
||||
#define OUTPUT_H2V1 0
|
||||
#define OUTPUT_H2V2 1
|
||||
#define OUTPUT_BYTE 6
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_MERCURY_MODE_REALTIME_ENCODE 0
|
||||
#define MSM_MERCURY_MODE_OFFLINE_ENCODE 1
|
||||
#define MSM_MERCURY_MODE_REALTIME_ROTATION 2
|
||||
#define MSM_MERCURY_MODE_OFFLINE_ROTATION 3
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_MERCURY_EVT_RESET 1
|
||||
#define MSM_MERCURY_EVT_FRAMEDONE 2
|
||||
#define MSM_MERCURY_EVT_ERR 3
|
||||
#define MSM_MERCURY_EVT_UNBLOCK 4
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_MERCURY_HW_CMD_TYPE_READ 0
|
||||
#define MSM_MERCURY_HW_CMD_TYPE_WRITE 1
|
||||
#define MSM_MERCURY_HW_CMD_TYPE_WRITE_OR 2
|
||||
#define MSM_MERCURY_HW_CMD_TYPE_UWAIT 3
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_MERCURY_HW_CMD_TYPE_MWAIT 4
|
||||
#define MSM_MERCURY_HW_CMD_TYPE_MDELAY 5
|
||||
#define MSM_MERCURY_HW_CMD_TYPE_UDELAY 6
|
||||
#define MSM_MCR_IOCTL_MAGIC 'g'
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_MCR_IOCTL_GET_HW_VERSION _IOW(MSM_MCR_IOCTL_MAGIC, 1, struct msm_mercury_hw_cmd *)
|
||||
#define MSM_MCR_IOCTL_RESET _IOW(MSM_MCR_IOCTL_MAGIC, 2, struct msm_mercury_ctrl_cmd *)
|
||||
#define MSM_MCR_IOCTL_STOP _IOW(MSM_MCR_IOCTL_MAGIC, 3, struct msm_mercury_hw_cmds *)
|
||||
#define MSM_MCR_IOCTL_START _IOW(MSM_MCR_IOCTL_MAGIC, 4, struct msm_mercury_hw_cmds *)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_MCR_IOCTL_INPUT_BUF_CFG _IOW(MSM_MCR_IOCTL_MAGIC, 5, struct msm_mercury_buf *)
|
||||
#define MSM_MCR_IOCTL_INPUT_GET _IOW(MSM_MCR_IOCTL_MAGIC, 6, struct msm_mercury_buf *)
|
||||
#define MSM_MCR_IOCTL_INPUT_GET_UNBLOCK _IOW(MSM_MCR_IOCTL_MAGIC, 7, int)
|
||||
#define MSM_MCR_IOCTL_OUTPUT_BUF_CFG _IOW(MSM_MCR_IOCTL_MAGIC, 8, struct msm_mercury_buf *)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_MCR_IOCTL_OUTPUT_GET _IOW(MSM_MCR_IOCTL_MAGIC, 9, struct msm_mercury_buf *)
|
||||
#define MSM_MCR_IOCTL_OUTPUT_GET_UNBLOCK _IOW(MSM_MCR_IOCTL_MAGIC, 10, int)
|
||||
#define MSM_MCR_IOCTL_EVT_GET _IOW(MSM_MCR_IOCTL_MAGIC, 11, struct msm_mercury_ctrl_cmd *)
|
||||
#define MSM_MCR_IOCTL_EVT_GET_UNBLOCK _IOW(MSM_MCR_IOCTL_MAGIC, 12, int)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_MCR_IOCTL_HW_CMD _IOW(MSM_MCR_IOCTL_MAGIC, 13, struct msm_mercury_hw_cmd *)
|
||||
#define MSM_MCR_IOCTL_HW_CMDS _IOW(MSM_MCR_IOCTL_MAGIC, 14, struct msm_mercury_hw_cmds *)
|
||||
#define MSM_MCR_IOCTL_TEST_DUMP_REGION _IOW(MSM_MCR_IOCTL_MAGIC, 15, unsigned long)
|
||||
struct msm_mercury_ctrl_cmd {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t type;
|
||||
uint32_t len;
|
||||
void * value;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_mercury_buf {
|
||||
uint32_t type;
|
||||
int fd;
|
||||
void * vaddr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t y_off;
|
||||
uint32_t y_len;
|
||||
uint32_t framedone_len;
|
||||
uint32_t cbcr_off;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t cbcr_len;
|
||||
uint32_t num_of_mcu_rows;
|
||||
uint32_t offset;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_mercury_hw_cmd {
|
||||
uint32_t type : 4;
|
||||
uint32_t n : 12;
|
||||
uint32_t offset : 16;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t mask;
|
||||
union {
|
||||
uint32_t data;
|
||||
uint32_t * pdata;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
};
|
||||
struct msm_mercury_hw_cmds {
|
||||
uint32_t m;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_mercury_hw_cmd hw_cmd[1];
|
||||
};
|
||||
#endif
|
||||
|
||||
107
kernel-headers/media/msm_sde_rotator.h
Normal file
107
kernel-headers/media/msm_sde_rotator.h
Normal file
@@ -0,0 +1,107 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __UAPI_MSM_SDE_ROTATOR_H__
|
||||
#define __UAPI_MSM_SDE_ROTATOR_H__
|
||||
#include <linux/videodev2.h>
|
||||
#include <linux/types.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#include <linux/ioctl.h>
|
||||
#define SDE_PIX_FMT_XRGB_8888 V4L2_PIX_FMT_XBGR32
|
||||
#define SDE_PIX_FMT_ARGB_8888 V4L2_PIX_FMT_ABGR32
|
||||
#define SDE_PIX_FMT_ABGR_8888 v4l2_fourcc('R', 'A', '2', '4')
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SDE_PIX_FMT_RGBA_8888 v4l2_fourcc('A', 'B', '2', '4')
|
||||
#define SDE_PIX_FMT_BGRA_8888 V4L2_PIX_FMT_ARGB32
|
||||
#define SDE_PIX_FMT_RGBX_8888 v4l2_fourcc('X', 'B', '2', '4')
|
||||
#define SDE_PIX_FMT_BGRX_8888 V4L2_PIX_FMT_XRGB32
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SDE_PIX_FMT_XBGR_8888 v4l2_fourcc('R', 'X', '2', '4')
|
||||
#define SDE_PIX_FMT_RGBA_5551 v4l2_fourcc('R', 'A', '1', '5')
|
||||
#define SDE_PIX_FMT_ARGB_1555 V4L2_PIX_FMT_ARGB555
|
||||
#define SDE_PIX_FMT_ABGR_1555 v4l2_fourcc('A', 'B', '1', '5')
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SDE_PIX_FMT_BGRA_5551 v4l2_fourcc('B', 'A', '1', '5')
|
||||
#define SDE_PIX_FMT_BGRX_5551 v4l2_fourcc('B', 'X', '1', '5')
|
||||
#define SDE_PIX_FMT_RGBX_5551 v4l2_fourcc('R', 'X', '1', '5')
|
||||
#define SDE_PIX_FMT_XBGR_1555 v4l2_fourcc('X', 'B', '1', '5')
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SDE_PIX_FMT_XRGB_1555 V4L2_PIX_FMT_XRGB555
|
||||
#define SDE_PIX_FMT_ARGB_4444 V4L2_PIX_FMT_ARGB444
|
||||
#define SDE_PIX_FMT_RGBA_4444 v4l2_fourcc('R', 'A', '1', '2')
|
||||
#define SDE_PIX_FMT_BGRA_4444 v4l2_fourcc('B', 'A', '1', '2')
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SDE_PIX_FMT_ABGR_4444 v4l2_fourcc('A', 'B', '1', '2')
|
||||
#define SDE_PIX_FMT_RGBX_4444 v4l2_fourcc('R', 'X', '1', '2')
|
||||
#define SDE_PIX_FMT_XRGB_4444 V4L2_PIX_FMT_XRGB444
|
||||
#define SDE_PIX_FMT_BGRX_4444 v4l2_fourcc('B', 'X', '1', '2')
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SDE_PIX_FMT_XBGR_4444 v4l2_fourcc('X', 'B', '1', '2')
|
||||
#define SDE_PIX_FMT_RGB_888 V4L2_PIX_FMT_RGB24
|
||||
#define SDE_PIX_FMT_BGR_888 V4L2_PIX_FMT_BGR24
|
||||
#define SDE_PIX_FMT_RGB_565 V4L2_PIX_FMT_RGB565
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SDE_PIX_FMT_BGR_565 v4l2_fourcc('B', 'G', '1', '6')
|
||||
#define SDE_PIX_FMT_Y_CB_CR_H2V2 V4L2_PIX_FMT_YUV420
|
||||
#define SDE_PIX_FMT_Y_CR_CB_H2V2 V4L2_PIX_FMT_YVU420
|
||||
#define SDE_PIX_FMT_Y_CR_CB_GH2V2 v4l2_fourcc('Y', 'U', '4', '2')
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SDE_PIX_FMT_Y_CBCR_H2V2 V4L2_PIX_FMT_NV12
|
||||
#define SDE_PIX_FMT_Y_CRCB_H2V2 V4L2_PIX_FMT_NV21
|
||||
#define SDE_PIX_FMT_Y_CBCR_H1V2 v4l2_fourcc('N', 'H', '1', '6')
|
||||
#define SDE_PIX_FMT_Y_CRCB_H1V2 v4l2_fourcc('N', 'H', '6', '1')
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SDE_PIX_FMT_Y_CBCR_H2V1 V4L2_PIX_FMT_NV16
|
||||
#define SDE_PIX_FMT_Y_CRCB_H2V1 V4L2_PIX_FMT_NV61
|
||||
#define SDE_PIX_FMT_YCBYCR_H2V1 V4L2_PIX_FMT_YUYV
|
||||
#define SDE_PIX_FMT_Y_CBCR_H2V2_VENUS v4l2_fourcc('Q', 'N', 'V', '2')
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SDE_PIX_FMT_Y_CRCB_H2V2_VENUS v4l2_fourcc('Q', 'N', 'V', '1')
|
||||
#define SDE_PIX_FMT_RGBA_8888_UBWC V4L2_PIX_FMT_RGBA8888_UBWC
|
||||
#define SDE_PIX_FMT_RGBX_8888_UBWC v4l2_fourcc('Q', 'X', 'B', '4')
|
||||
#define SDE_PIX_FMT_RGB_565_UBWC v4l2_fourcc('Q', 'R', 'G', '6')
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SDE_PIX_FMT_Y_CBCR_H2V2_UBWC V4L2_PIX_FMT_NV12_UBWC
|
||||
#define SDE_PIX_FMT_RGBA_1010102 v4l2_fourcc('A', 'B', '3', '0')
|
||||
#define SDE_PIX_FMT_RGBX_1010102 v4l2_fourcc('X', 'B', '3', '0')
|
||||
#define SDE_PIX_FMT_ARGB_2101010 v4l2_fourcc('A', 'R', '3', '0')
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SDE_PIX_FMT_XRGB_2101010 v4l2_fourcc('X', 'R', '3', '0')
|
||||
#define SDE_PIX_FMT_BGRA_1010102 v4l2_fourcc('B', 'A', '3', '0')
|
||||
#define SDE_PIX_FMT_BGRX_1010102 v4l2_fourcc('B', 'X', '3', '0')
|
||||
#define SDE_PIX_FMT_ABGR_2101010 v4l2_fourcc('R', 'A', '3', '0')
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SDE_PIX_FMT_XBGR_2101010 v4l2_fourcc('R', 'X', '3', '0')
|
||||
#define SDE_PIX_FMT_RGBA_1010102_UBWC v4l2_fourcc('Q', 'R', 'B', 'A')
|
||||
#define SDE_PIX_FMT_RGBX_1010102_UBWC v4l2_fourcc('Q', 'X', 'B', 'A')
|
||||
#define SDE_PIX_FMT_Y_CBCR_H2V2_P010 v4l2_fourcc('P', '0', '1', '0')
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define SDE_PIX_FMT_Y_CBCR_H2V2_TP10_UBWC V4L2_PIX_FMT_NV12_TP10_UBWC
|
||||
struct msm_sde_rotator_fence {
|
||||
__u32 index;
|
||||
__u32 type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__s32 fd;
|
||||
__u32 reserved[5];
|
||||
};
|
||||
#define VIDIOC_G_SDE_ROTATOR_FENCE _IOWR('V', BASE_VIDIOC_PRIVATE + 10, struct msm_sde_rotator_fence)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VIDIOC_S_SDE_ROTATOR_FENCE _IOWR('V', BASE_VIDIOC_PRIVATE + 11, struct msm_sde_rotator_fence)
|
||||
#define V4L2_CID_SDE_ROTATOR_SECURE (V4L2_CID_USER_BASE + 0x1000)
|
||||
#endif
|
||||
|
||||
289
kernel-headers/media/msm_vidc.h
Normal file
289
kernel-headers/media/msm_vidc.h
Normal file
@@ -0,0 +1,289 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __MSM_VIDC_H__
|
||||
#define __MSM_VIDC_H__
|
||||
#include <linux/types.h>
|
||||
#define MSM_VIDC_HAL_INTERLACE_COLOR_FORMAT_NV12 0x2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_VIDC_HAL_INTERLACE_COLOR_FORMAT_NV12_UBWC 0x8002
|
||||
struct msm_vidc_extradata_header {
|
||||
unsigned int size;
|
||||
unsigned int : 32;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int : 32;
|
||||
unsigned int type;
|
||||
unsigned int data_size;
|
||||
unsigned char data[1];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_vidc_interlace_payload {
|
||||
unsigned int format;
|
||||
unsigned int color_format;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_vidc_framerate_payload {
|
||||
unsigned int frame_rate;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_vidc_ts_payload {
|
||||
unsigned int timestamp_lo;
|
||||
unsigned int timestamp_hi;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_vidc_concealmb_payload {
|
||||
unsigned int num_mbs;
|
||||
};
|
||||
struct msm_vidc_recoverysei_payload {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int flags;
|
||||
};
|
||||
struct msm_vidc_aspect_ratio_payload {
|
||||
unsigned int size;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int version;
|
||||
unsigned int port_index;
|
||||
unsigned int aspect_width;
|
||||
unsigned int aspect_height;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_vidc_mpeg2_seqdisp_payload {
|
||||
unsigned int video_format;
|
||||
unsigned int color_descp;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int color_primaries;
|
||||
unsigned int transfer_char;
|
||||
unsigned int matrix_coeffs;
|
||||
unsigned int disp_width;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int disp_height;
|
||||
};
|
||||
struct msm_vidc_input_crop_payload {
|
||||
unsigned int size;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int version;
|
||||
unsigned int port_index;
|
||||
unsigned int left;
|
||||
unsigned int top;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int width;
|
||||
unsigned int height;
|
||||
};
|
||||
struct msm_vidc_output_crop_payload {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int size;
|
||||
unsigned int version;
|
||||
unsigned int port_index;
|
||||
unsigned int left;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int top;
|
||||
unsigned int display_width;
|
||||
unsigned int display_height;
|
||||
unsigned int width;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int height;
|
||||
};
|
||||
struct msm_vidc_digital_zoom_payload {
|
||||
unsigned int size;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int version;
|
||||
unsigned int port_index;
|
||||
unsigned int zoom_width;
|
||||
unsigned int zoom_height;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_vidc_extradata_index {
|
||||
unsigned int type;
|
||||
union {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_vidc_input_crop_payload input_crop;
|
||||
struct msm_vidc_digital_zoom_payload digital_zoom;
|
||||
struct msm_vidc_aspect_ratio_payload aspect_ratio;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_vidc_panscan_window {
|
||||
unsigned int panscan_height_offset;
|
||||
unsigned int panscan_width_offset;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int panscan_window_width;
|
||||
unsigned int panscan_window_height;
|
||||
};
|
||||
struct msm_vidc_panscan_window_payload {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int num_panscan_windows;
|
||||
struct msm_vidc_panscan_window wnd[1];
|
||||
};
|
||||
struct msm_vidc_stream_userdata_payload {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int type;
|
||||
unsigned int data[1];
|
||||
};
|
||||
struct msm_vidc_frame_qp_payload {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int frame_qp;
|
||||
};
|
||||
struct msm_vidc_frame_bits_info_payload {
|
||||
unsigned int frame_bits;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int header_bits;
|
||||
};
|
||||
struct msm_vidc_s3d_frame_packing_payload {
|
||||
unsigned int fpa_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int cancel_flag;
|
||||
unsigned int fpa_type;
|
||||
unsigned int quin_cunx_flag;
|
||||
unsigned int content_interprtation_type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int spatial_flipping_flag;
|
||||
unsigned int frame0_flipped_flag;
|
||||
unsigned int field_views_flag;
|
||||
unsigned int current_frame_is_frame0_flag;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int frame0_self_contained_flag;
|
||||
unsigned int frame1_self_contained_flag;
|
||||
unsigned int frame0_graid_pos_x;
|
||||
unsigned int frame0_graid_pos_y;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int frame1_graid_pos_x;
|
||||
unsigned int frame1_graid_pos_y;
|
||||
unsigned int fpa_reserved_byte;
|
||||
unsigned int fpa_repetition_period;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int fpa_extension_flag;
|
||||
};
|
||||
struct msm_vidc_vqzip_sei_payload {
|
||||
unsigned int size;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int data[1];
|
||||
};
|
||||
struct msm_vidc_yuv_stats_payload {
|
||||
unsigned int frame_qp;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int texture;
|
||||
unsigned int luma_in_q16;
|
||||
unsigned int frame_difference;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_vidc_roi_qp_payload {
|
||||
int upper_qp_offset;
|
||||
int lower_qp_offset;
|
||||
unsigned int b_roi_info;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int mbi_info_size;
|
||||
unsigned int data[1];
|
||||
};
|
||||
struct msm_vidc_mastering_display_colour_sei_payload {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int nDisplayPrimariesX[3];
|
||||
unsigned int nDisplayPrimariesY[3];
|
||||
unsigned int nWhitePointX;
|
||||
unsigned int nWhitePointY;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int nMaxDisplayMasteringLuminance;
|
||||
unsigned int nMinDisplayMasteringLuminance;
|
||||
};
|
||||
struct msm_vidc_content_light_level_sei_payload {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int nMaxContentLight;
|
||||
unsigned int nMaxPicAverageLight;
|
||||
};
|
||||
enum msm_vidc_extradata_type {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_VIDC_EXTRADATA_NONE = 0x00000000,
|
||||
MSM_VIDC_EXTRADATA_MB_QUANTIZATION = 0x00000001,
|
||||
MSM_VIDC_EXTRADATA_INTERLACE_VIDEO = 0x00000002,
|
||||
MSM_VIDC_EXTRADATA_VC1_FRAMEDISP = 0x00000003,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_VIDC_EXTRADATA_VC1_SEQDISP = 0x00000004,
|
||||
MSM_VIDC_EXTRADATA_TIMESTAMP = 0x00000005,
|
||||
MSM_VIDC_EXTRADATA_S3D_FRAME_PACKING = 0x00000006,
|
||||
MSM_VIDC_EXTRADATA_FRAME_RATE = 0x00000007,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_VIDC_EXTRADATA_PANSCAN_WINDOW = 0x00000008,
|
||||
MSM_VIDC_EXTRADATA_RECOVERY_POINT_SEI = 0x00000009,
|
||||
MSM_VIDC_EXTRADATA_MPEG2_SEQDISP = 0x0000000D,
|
||||
MSM_VIDC_EXTRADATA_STREAM_USERDATA = 0x0000000E,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_VIDC_EXTRADATA_FRAME_QP = 0x0000000F,
|
||||
MSM_VIDC_EXTRADATA_FRAME_BITS_INFO = 0x00000010,
|
||||
MSM_VIDC_EXTRADATA_VQZIP_SEI = 0x00000011,
|
||||
MSM_VIDC_EXTRADATA_ROI_QP = 0x00000013,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_VIDC_EXTRADATA_MASTERING_DISPLAY_COLOUR_SEI MSM_VIDC_EXTRADATA_MASTERING_DISPLAY_COLOUR_SEI
|
||||
MSM_VIDC_EXTRADATA_MASTERING_DISPLAY_COLOUR_SEI = 0x00000015,
|
||||
#define MSM_VIDC_EXTRADATA_CONTENT_LIGHT_LEVEL_SEI MSM_VIDC_EXTRADATA_CONTENT_LIGHT_LEVEL_SEI
|
||||
MSM_VIDC_EXTRADATA_CONTENT_LIGHT_LEVEL_SEI = 0x00000016,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_VIDC_EXTRADATA_INPUT_CROP = 0x0700000E,
|
||||
#define MSM_VIDC_EXTRADATA_OUTPUT_CROP MSM_VIDC_EXTRADATA_OUTPUT_CROP
|
||||
MSM_VIDC_EXTRADATA_OUTPUT_CROP = 0x0700000F,
|
||||
MSM_VIDC_EXTRADATA_DIGITAL_ZOOM = 0x07000010,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_VIDC_EXTRADATA_MULTISLICE_INFO = 0x7F100000,
|
||||
MSM_VIDC_EXTRADATA_NUM_CONCEALED_MB = 0x7F100001,
|
||||
MSM_VIDC_EXTRADATA_INDEX = 0x7F100002,
|
||||
MSM_VIDC_EXTRADATA_ASPECT_RATIO = 0x7F100003,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_VIDC_EXTRADATA_METADATA_LTR = 0x7F100004,
|
||||
MSM_VIDC_EXTRADATA_METADATA_FILLER = 0x7FE00002,
|
||||
MSM_VIDC_EXTRADATA_METADATA_MBI = 0x7F100005,
|
||||
MSM_VIDC_EXTRADATA_YUVSTATS_INFO = 0x7F100007,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum msm_vidc_interlace_type {
|
||||
MSM_VIDC_INTERLACE_FRAME_PROGRESSIVE = 0x01,
|
||||
MSM_VIDC_INTERLACE_INTERLEAVE_FRAME_TOPFIELDFIRST = 0x02,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_VIDC_INTERLACE_INTERLEAVE_FRAME_BOTTOMFIELDFIRST = 0x04,
|
||||
MSM_VIDC_INTERLACE_FRAME_TOPFIELDFIRST = 0x08,
|
||||
MSM_VIDC_INTERLACE_FRAME_BOTTOMFIELDFIRST = 0x10,
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_VIDC_FRAMEPACK_CHECKERBOARD 0x00
|
||||
#define MSM_VIDC_FRAMEPACK_COLUMN_INTERLEAVE 0x01
|
||||
#define MSM_VIDC_FRAMEPACK_ROW_INTERLEAVE 0x02
|
||||
#define MSM_VIDC_FRAMEPACK_SIDE_BY_SIDE 0x03
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_VIDC_FRAMEPACK_TOP_BOTTOM 0x04
|
||||
#define MSM_VIDC_FRAMEPACK_TEMPORAL_INTERLEAVE 0x05
|
||||
enum msm_vidc_recovery_sei {
|
||||
MSM_VIDC_FRAME_RECONSTRUCTION_INCORRECT = 0x0,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_VIDC_FRAME_RECONSTRUCTION_CORRECT = 0x01,
|
||||
MSM_VIDC_FRAME_RECONSTRUCTION_APPROXIMATELY_CORRECT = 0x02,
|
||||
};
|
||||
enum msm_vidc_userdata_type {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_VIDC_USERDATA_TYPE_FRAME = 0x1,
|
||||
MSM_VIDC_USERDATA_TYPE_TOP_FIELD = 0x2,
|
||||
MSM_VIDC_USERDATA_TYPE_BOTTOM_FIELD = 0x3,
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_vidc_pixel_depth {
|
||||
MSM_VIDC_BIT_DEPTH_8,
|
||||
MSM_VIDC_BIT_DEPTH_10,
|
||||
MSM_VIDC_BIT_DEPTH_UNSUPPORTED = 0XFFFFFFFF,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define MSM_VIDC_PIC_STRUCT_MAYBE_INTERLACED 0x0
|
||||
#define MSM_VIDC_PIC_STRUCT_PROGRESSIVE 0x1
|
||||
#endif
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
|
||||
225
kernel-headers/media/msm_vpu.h
Normal file
225
kernel-headers/media/msm_vpu.h
Normal file
@@ -0,0 +1,225 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _H_MSM_VPU_H_
|
||||
#define _H_MSM_VPU_H_
|
||||
#include <linux/videodev2.h>
|
||||
#define V4L2_BUF_FLAG_CDS_ENABLE 0x10000000
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define V4L2_PLANE_MEM_OFFSET 0
|
||||
enum vpu_colorspace {
|
||||
VPU_CS_MIN = 0,
|
||||
VPU_CS_RGB_FULL = 1,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VPU_CS_RGB_LIMITED = 2,
|
||||
VPU_CS_REC601_FULL = 3,
|
||||
VPU_CS_REC601_LIMITED = 4,
|
||||
VPU_CS_REC709_FULL = 5,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VPU_CS_REC709_LIMITED = 6,
|
||||
VPU_CS_SMPTE240_FULL = 7,
|
||||
VPU_CS_SMPTE240_LIMITED = 8,
|
||||
VPU_CS_MAX = 9,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define VPU_FMT_EXT_FLAG_BT 1
|
||||
#define VPU_FMT_EXT_FLAG_TB 2
|
||||
#define VPU_FMT_EXT_FLAG_3D 4
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct v4l2_format_vpu_extension {
|
||||
__u8 flag;
|
||||
__u8 gap_in_lines;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define V4L2_PIX_FMT_XRGB2 v4l2_fourcc('X', 'R', 'G', '2')
|
||||
#define V4L2_PIX_FMT_XBGR2 v4l2_fourcc('X', 'B', 'G', '2')
|
||||
#define V4L2_PIX_FMT_YUYV10 v4l2_fourcc('Y', 'U', 'Y', 'L')
|
||||
#define V4L2_PIX_FMT_YUV8 v4l2_fourcc('Y', 'U', 'V', '8')
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define V4L2_PIX_FMT_YUV10 v4l2_fourcc('Y', 'U', 'V', 'L')
|
||||
#define V4L2_PIX_FMT_YUYV10BWC v4l2_fourcc('Y', 'B', 'W', 'C')
|
||||
#define VPU_INPUT_TYPE_HOST 0
|
||||
#define VPU_INPUT_TYPE_VCAP 1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VPU_OUTPUT_TYPE_HOST 0
|
||||
#define VPU_OUTPUT_TYPE_DISPLAY 1
|
||||
#define VPU_PIPE_VCAP0 (1 << 16)
|
||||
#define VPU_PIPE_VCAP1 (1 << 17)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VPU_PIPE_DISPLAY0 (1 << 18)
|
||||
#define VPU_PIPE_DISPLAY1 (1 << 19)
|
||||
#define VPU_PIPE_DISPLAY2 (1 << 20)
|
||||
#define VPU_PIPE_DISPLAY3 (1 << 21)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VPU_PRIVATE_EVENT_BASE (V4L2_EVENT_PRIVATE_START + 6 * 1000)
|
||||
enum VPU_PRIVATE_EVENT {
|
||||
VPU_EVENT_START = VPU_PRIVATE_EVENT_BASE,
|
||||
VPU_EVENT_FLUSH_DONE = VPU_EVENT_START + 1,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VPU_EVENT_ACTIVE_REGION_CHANGED = VPU_EVENT_START + 2,
|
||||
VPU_EVENT_SESSION_TIMESTAMP = VPU_EVENT_START + 3,
|
||||
VPU_EVENT_SESSION_CREATED = VPU_EVENT_START + 4,
|
||||
VPU_EVENT_SESSION_FREED = VPU_EVENT_START + 5,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VPU_EVENT_SESSION_CLIENT_EXITED = VPU_EVENT_START + 6,
|
||||
VPU_EVENT_HW_ERROR = VPU_EVENT_START + 11,
|
||||
VPU_EVENT_INVALID_CONFIG = VPU_EVENT_START + 12,
|
||||
VPU_EVENT_FAILED_SESSION_STREAMING = VPU_EVENT_START + 13,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VPU_EVENT_END
|
||||
};
|
||||
struct vpu_ctrl_standard {
|
||||
__u32 enable;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__s32 value;
|
||||
};
|
||||
struct vpu_ctrl_auto_manual {
|
||||
__u32 enable;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 auto_mode;
|
||||
__s32 value;
|
||||
};
|
||||
struct vpu_ctrl_range_mapping {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 enable;
|
||||
__u32 y_range;
|
||||
__u32 uv_range;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VPU_ACTIVE_REGION_N_EXCLUSIONS 1
|
||||
struct vpu_ctrl_active_region_param {
|
||||
__u32 enable;
|
||||
__u32 num_exclusions;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct v4l2_rect detection_region;
|
||||
struct v4l2_rect excluded_regions[VPU_ACTIVE_REGION_N_EXCLUSIONS];
|
||||
};
|
||||
struct vpu_ctrl_deinterlacing_mode {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 field_polarity;
|
||||
__u32 mvp_mode;
|
||||
};
|
||||
struct vpu_ctrl_hqv {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 enable;
|
||||
__u32 sharpen_strength;
|
||||
__u32 auto_nr_strength;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct vpu_info_frame_timestamp {
|
||||
__u32 pts_low;
|
||||
__u32 pts_high;
|
||||
__u32 qtime_low;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 qtime_high;
|
||||
};
|
||||
struct vpu_control {
|
||||
__u32 control_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
union control_data {
|
||||
__s32 value;
|
||||
struct vpu_ctrl_standard standard;
|
||||
struct vpu_ctrl_auto_manual auto_manual;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct vpu_ctrl_range_mapping range_mapping;
|
||||
struct vpu_ctrl_active_region_param active_region_param;
|
||||
struct v4l2_rect active_region_result;
|
||||
struct vpu_ctrl_deinterlacing_mode deinterlacing_mode;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct vpu_ctrl_hqv hqv;
|
||||
struct vpu_info_frame_timestamp timestamp;
|
||||
__u8 reserved[124];
|
||||
} data;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define VPU_CTRL_ID_MIN 0
|
||||
#define VPU_CTRL_NOISE_REDUCTION 1
|
||||
#define VPU_CTRL_IMAGE_ENHANCEMENT 2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VPU_CTRL_ANAMORPHIC_SCALING 3
|
||||
#define VPU_CTRL_DIRECTIONAL_INTERPOLATION 4
|
||||
#define VPU_CTRL_BACKGROUND_COLOR 5
|
||||
#define VPU_CTRL_RANGE_MAPPING 6
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VPU_CTRL_DEINTERLACING_MODE 7
|
||||
#define VPU_CTRL_ACTIVE_REGION_PARAM 8
|
||||
#define VPU_CTRL_ACTIVE_REGION_RESULT 9
|
||||
#define VPU_CTRL_PRIORITY 10
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VPU_CTRL_CONTENT_PROTECTION 11
|
||||
#define VPU_CTRL_DISPLAY_REFRESH_RATE 12
|
||||
#define VPU_CTRL_HQV 20
|
||||
#define VPU_CTRL_HQV_SHARPEN 21
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VPU_CTRL_HQV_AUTONR 22
|
||||
#define VPU_CTRL_ACE 23
|
||||
#define VPU_CTRL_ACE_BRIGHTNESS 24
|
||||
#define VPU_CTRL_ACE_CONTRAST 25
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VPU_CTRL_2D3D 26
|
||||
#define VPU_CTRL_2D3D_DEPTH 27
|
||||
#define VPU_CTRL_FRC 28
|
||||
#define VPU_CTRL_FRC_MOTION_SMOOTHNESS 29
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VPU_CTRL_FRC_MOTION_CLEAR 30
|
||||
#define VPU_INFO_TIMESTAMP 35
|
||||
#define VPU_CTRL_TIMESTAMP_INFO_MODE 36
|
||||
#define VPU_INFO_STATISTICS 37
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VPU_CTRL_LATENCY 38
|
||||
#define VPU_CTRL_LATENCY_MODE 39
|
||||
#define VPU_CTRL_ID_MAX 40
|
||||
#define VPU_MAX_EXT_DATA_SIZE 720
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct vpu_control_extended {
|
||||
__u32 type;
|
||||
__u32 data_len;
|
||||
void * data_ptr;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 buf_size;
|
||||
void * buf_ptr;
|
||||
};
|
||||
struct vpu_control_port {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 control_id;
|
||||
__u32 port;
|
||||
union control_port_data {
|
||||
__u32 framerate;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
} data;
|
||||
};
|
||||
#define VPU_CTRL_FPS 1000
|
||||
#define VPU_ATTACH_TO_SESSION _IOW('V', (BASE_VIDIOC_PRIVATE + 1), int)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VPU_QUERY_SESSIONS _IOR('V', (BASE_VIDIOC_PRIVATE + 0), int)
|
||||
#define VPU_CREATE_SESSION _IOR('V', (BASE_VIDIOC_PRIVATE + 2), int)
|
||||
#define VPU_JOIN_SESSION _IOW('V', (BASE_VIDIOC_PRIVATE + 3), int)
|
||||
#define VPU_CREATE_OUTPUT2 _IO('V', (BASE_VIDIOC_PRIVATE + 5))
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VPU_COMMIT_CONFIGURATION _IO('V', (BASE_VIDIOC_PRIVATE + 10))
|
||||
#define VPU_FLUSH_BUFS _IOW('V', (BASE_VIDIOC_PRIVATE + 15), enum v4l2_buf_type)
|
||||
#define VPU_G_CONTROL _IOWR('V', (BASE_VIDIOC_PRIVATE + 20), struct vpu_control)
|
||||
#define VPU_S_CONTROL _IOW('V', (BASE_VIDIOC_PRIVATE + 21), struct vpu_control)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VPU_G_CONTROL_EXTENDED _IOWR('V', (BASE_VIDIOC_PRIVATE + 22), struct vpu_control_extended)
|
||||
#define VPU_S_CONTROL_EXTENDED _IOW('V', (BASE_VIDIOC_PRIVATE + 23), struct vpu_control_extended)
|
||||
#define VPU_G_CONTROL_PORT _IOWR('V', (BASE_VIDIOC_PRIVATE + 24), struct vpu_control_port)
|
||||
#define VPU_S_CONTROL_PORT _IOW('V', (BASE_VIDIOC_PRIVATE + 25), struct vpu_control_port)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
|
||||
191
kernel-headers/media/msmb_camera.h
Normal file
191
kernel-headers/media/msmb_camera.h
Normal file
@@ -0,0 +1,191 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __UAPI_LINUX_MSMB_CAMERA_H
|
||||
#define __UAPI_LINUX_MSMB_CAMERA_H
|
||||
#include <linux/videodev2.h>
|
||||
#include <linux/types.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#include <linux/ioctl.h>
|
||||
#define MSM_CAM_LOGSYNC_FILE_NAME "logsync"
|
||||
#define MSM_CAM_LOGSYNC_FILE_BASEDIR "camera"
|
||||
#define MSM_CAM_V4L2_IOCTL_NOTIFY _IOW('V', BASE_VIDIOC_PRIVATE + 30, struct msm_v4l2_event_data)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_CAM_V4L2_IOCTL_NOTIFY_META _IOW('V', BASE_VIDIOC_PRIVATE + 31, struct msm_v4l2_event_data)
|
||||
#define MSM_CAM_V4L2_IOCTL_CMD_ACK _IOW('V', BASE_VIDIOC_PRIVATE + 32, struct msm_v4l2_event_data)
|
||||
#define MSM_CAM_V4L2_IOCTL_NOTIFY_ERROR _IOW('V', BASE_VIDIOC_PRIVATE + 33, struct msm_v4l2_event_data)
|
||||
#define MSM_CAM_V4L2_IOCTL_NOTIFY_DEBUG _IOW('V', BASE_VIDIOC_PRIVATE + 34, struct msm_v4l2_event_data)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_CAM_V4L2_IOCTL_DAEMON_DISABLED _IOW('V', BASE_VIDIOC_PRIVATE + 35, struct msm_v4l2_event_data)
|
||||
#define QCAMERA_DEVICE_GROUP_ID 1
|
||||
#define QCAMERA_VNODE_GROUP_ID 2
|
||||
#define MSM_CAMERA_NAME "msm_camera"
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_CONFIGURATION_NAME "msm_config"
|
||||
#define MSM_CAMERA_SUBDEV_CSIPHY 0
|
||||
#define MSM_CAMERA_SUBDEV_CSID 1
|
||||
#define MSM_CAMERA_SUBDEV_ISPIF 2
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_CAMERA_SUBDEV_VFE 3
|
||||
#define MSM_CAMERA_SUBDEV_AXI 4
|
||||
#define MSM_CAMERA_SUBDEV_VPE 5
|
||||
#define MSM_CAMERA_SUBDEV_SENSOR 6
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_CAMERA_SUBDEV_ACTUATOR 7
|
||||
#define MSM_CAMERA_SUBDEV_EEPROM 8
|
||||
#define MSM_CAMERA_SUBDEV_CPP 9
|
||||
#define MSM_CAMERA_SUBDEV_CCI 10
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_CAMERA_SUBDEV_LED_FLASH 11
|
||||
#define MSM_CAMERA_SUBDEV_STROBE_FLASH 12
|
||||
#define MSM_CAMERA_SUBDEV_BUF_MNGR 13
|
||||
#define MSM_CAMERA_SUBDEV_SENSOR_INIT 14
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_CAMERA_SUBDEV_OIS 15
|
||||
#define MSM_CAMERA_SUBDEV_FLASH 16
|
||||
#define MSM_CAMERA_SUBDEV_EXT 17
|
||||
#define MSM_MAX_CAMERA_SENSORS 5
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_CAMERA_MAX_STREAM_BUF 72
|
||||
#define MSM_CAMERA_MAX_USER_BUFF_CNT 16
|
||||
#define MSM_CAMERA_FEATURE_BASE 0x00010000
|
||||
#define MSM_CAMERA_FEATURE_SHUTDOWN (MSM_CAMERA_FEATURE_BASE + 1)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_CAMERA_STATUS_BASE 0x00020000
|
||||
#define MSM_CAMERA_STATUS_FAIL (MSM_CAMERA_STATUS_BASE + 1)
|
||||
#define MSM_CAMERA_STATUS_SUCCESS (MSM_CAMERA_STATUS_BASE + 2)
|
||||
#define MSM_CAMERA_V4L2_EVENT_TYPE (V4L2_EVENT_PRIVATE_START + 0x00002000)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_CAMERA_EVENT_MIN 0
|
||||
#define MSM_CAMERA_NEW_SESSION (MSM_CAMERA_EVENT_MIN + 1)
|
||||
#define MSM_CAMERA_DEL_SESSION (MSM_CAMERA_EVENT_MIN + 2)
|
||||
#define MSM_CAMERA_SET_PARM (MSM_CAMERA_EVENT_MIN + 3)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_CAMERA_GET_PARM (MSM_CAMERA_EVENT_MIN + 4)
|
||||
#define MSM_CAMERA_MAPPING_CFG (MSM_CAMERA_EVENT_MIN + 5)
|
||||
#define MSM_CAMERA_MAPPING_SES (MSM_CAMERA_EVENT_MIN + 6)
|
||||
#define MSM_CAMERA_MSM_NOTIFY (MSM_CAMERA_EVENT_MIN + 7)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_CAMERA_EVENT_MAX (MSM_CAMERA_EVENT_MIN + 8)
|
||||
#define MSM_CAMERA_PRIV_S_CROP (V4L2_CID_PRIVATE_BASE + 1)
|
||||
#define MSM_CAMERA_PRIV_G_CROP (V4L2_CID_PRIVATE_BASE + 2)
|
||||
#define MSM_CAMERA_PRIV_G_FMT (V4L2_CID_PRIVATE_BASE + 3)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_CAMERA_PRIV_S_FMT (V4L2_CID_PRIVATE_BASE + 4)
|
||||
#define MSM_CAMERA_PRIV_TRY_FMT (V4L2_CID_PRIVATE_BASE + 5)
|
||||
#define MSM_CAMERA_PRIV_METADATA (V4L2_CID_PRIVATE_BASE + 6)
|
||||
#define MSM_CAMERA_PRIV_QUERY_CAP (V4L2_CID_PRIVATE_BASE + 7)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_CAMERA_PRIV_STREAM_ON (V4L2_CID_PRIVATE_BASE + 8)
|
||||
#define MSM_CAMERA_PRIV_STREAM_OFF (V4L2_CID_PRIVATE_BASE + 9)
|
||||
#define MSM_CAMERA_PRIV_NEW_STREAM (V4L2_CID_PRIVATE_BASE + 10)
|
||||
#define MSM_CAMERA_PRIV_DEL_STREAM (V4L2_CID_PRIVATE_BASE + 11)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_CAMERA_PRIV_SHUTDOWN (V4L2_CID_PRIVATE_BASE + 12)
|
||||
#define MSM_CAMERA_PRIV_STREAM_INFO_SYNC (V4L2_CID_PRIVATE_BASE + 13)
|
||||
#define MSM_CAMERA_PRIV_G_SESSION_ID (V4L2_CID_PRIVATE_BASE + 14)
|
||||
#define MSM_CAMERA_PRIV_CMD_MAX 20
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_CAMERA_CMD_SUCESS 0x00000001
|
||||
#define MSM_CAMERA_BUF_MAP_SUCESS 0x00000002
|
||||
#define MSM_CAMERA_ERR_EVT_BASE 0x00010000
|
||||
#define MSM_CAMERA_ERR_CMD_FAIL (MSM_CAMERA_ERR_EVT_BASE + 1)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_CAMERA_ERR_MAPPING (MSM_CAMERA_ERR_EVT_BASE + 2)
|
||||
#define MSM_CAMERA_ERR_DEVICE_BUSY (MSM_CAMERA_ERR_EVT_BASE + 3)
|
||||
struct msm_v4l2_event_data {
|
||||
unsigned int command;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int status;
|
||||
unsigned int session_id;
|
||||
unsigned int stream_id;
|
||||
unsigned int map_op;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int map_buf_idx;
|
||||
unsigned int notify;
|
||||
unsigned int arg_value;
|
||||
unsigned int ret_value;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int v4l2_event_type;
|
||||
unsigned int v4l2_event_id;
|
||||
unsigned int handle;
|
||||
unsigned int nop6;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int nop7;
|
||||
unsigned int nop8;
|
||||
unsigned int nop9;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_v4l2_format_data {
|
||||
enum v4l2_buf_type type;
|
||||
unsigned int width;
|
||||
unsigned int height;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int pixelformat;
|
||||
unsigned char num_planes;
|
||||
unsigned int plane_sizes[VIDEO_MAX_PLANES];
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define msm_v4l2_fourcc(a,b,c,d) ((__u32) (a) | ((__u32) (b) << 8) | ((__u32) (c) << 16) | ((__u32) (d) << 24))
|
||||
#define MSM_V4L2_PIX_FMT_STATS_COMB v4l2_fourcc('S', 'T', 'C', 'M')
|
||||
#define MSM_V4L2_PIX_FMT_STATS_AE v4l2_fourcc('S', 'T', 'A', 'E')
|
||||
#define MSM_V4L2_PIX_FMT_STATS_AF v4l2_fourcc('S', 'T', 'A', 'F')
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_V4L2_PIX_FMT_STATS_AWB v4l2_fourcc('S', 'T', 'W', 'B')
|
||||
#define MSM_V4L2_PIX_FMT_STATS_IHST v4l2_fourcc('I', 'H', 'S', 'T')
|
||||
#define MSM_V4L2_PIX_FMT_STATS_CS v4l2_fourcc('S', 'T', 'C', 'S')
|
||||
#define MSM_V4L2_PIX_FMT_STATS_RS v4l2_fourcc('S', 'T', 'R', 'S')
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_V4L2_PIX_FMT_STATS_BG v4l2_fourcc('S', 'T', 'B', 'G')
|
||||
#define MSM_V4L2_PIX_FMT_STATS_BF v4l2_fourcc('S', 'T', 'B', 'F')
|
||||
#define MSM_V4L2_PIX_FMT_STATS_BHST v4l2_fourcc('B', 'H', 'S', 'T')
|
||||
enum smmu_attach_mode {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
NON_SECURE_MODE = 0x01,
|
||||
SECURE_MODE = 0x02,
|
||||
MAX_PROTECTION_MODE = 0x03,
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_camera_smmu_attach_type {
|
||||
enum smmu_attach_mode attach;
|
||||
};
|
||||
struct msm_camera_user_buf_cont_t {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned int buf_cnt;
|
||||
unsigned int buf_idx[MSM_CAMERA_MAX_USER_BUFF_CNT];
|
||||
};
|
||||
struct msm_camera_return_buf {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 index;
|
||||
__u32 reserved;
|
||||
};
|
||||
#define MSM_CAMERA_PRIV_IOCTL_ID_BASE 0
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_CAMERA_PRIV_IOCTL_ID_RETURN_BUF 1
|
||||
struct msm_camera_private_ioctl_arg {
|
||||
__u32 id;
|
||||
__u32 size;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 result;
|
||||
__u32 reserved;
|
||||
__u64 ioctl_ptr;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VIDIOC_MSM_CAMERA_PRIVATE_IOCTL_CMD _IOWR('V', BASE_VIDIOC_PRIVATE, struct msm_camera_private_ioctl_arg)
|
||||
#endif
|
||||
|
||||
70
kernel-headers/media/msmb_generic_buf_mgr.h
Normal file
70
kernel-headers/media/msmb_generic_buf_mgr.h
Normal file
@@ -0,0 +1,70 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __UAPI_MEDIA_MSMB_GENERIC_BUF_MGR_H__
|
||||
#define __UAPI_MEDIA_MSMB_GENERIC_BUF_MGR_H__
|
||||
#include <media/msmb_camera.h>
|
||||
enum msm_camera_buf_mngr_cmd {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_CAMERA_BUF_MNGR_CONT_MAP,
|
||||
MSM_CAMERA_BUF_MNGR_CONT_UNMAP,
|
||||
MSM_CAMERA_BUF_MNGR_CONT_MAX,
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_camera_buf_mngr_buf_type {
|
||||
MSM_CAMERA_BUF_MNGR_BUF_PLANAR,
|
||||
MSM_CAMERA_BUF_MNGR_BUF_USER,
|
||||
MSM_CAMERA_BUF_MNGR_BUF_INVALID,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_buf_mngr_info {
|
||||
uint32_t session_id;
|
||||
uint32_t stream_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t frame_id;
|
||||
struct timeval timestamp;
|
||||
uint32_t index;
|
||||
uint32_t reserved;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_camera_buf_mngr_buf_type type;
|
||||
struct msm_camera_user_buf_cont_t user_buf;
|
||||
};
|
||||
struct msm_buf_mngr_main_cont_info {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t session_id;
|
||||
uint32_t stream_id;
|
||||
enum msm_camera_buf_mngr_cmd cmd;
|
||||
uint32_t cnt;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int32_t cont_fd;
|
||||
};
|
||||
#define MSM_CAMERA_BUF_MNGR_IOCTL_ID_BASE 0
|
||||
#define MSM_CAMERA_BUF_MNGR_IOCTL_ID_GET_BUF_BY_IDX 1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VIDIOC_MSM_BUF_MNGR_GET_BUF _IOWR('V', BASE_VIDIOC_PRIVATE + 33, struct msm_buf_mngr_info)
|
||||
#define VIDIOC_MSM_BUF_MNGR_PUT_BUF _IOWR('V', BASE_VIDIOC_PRIVATE + 34, struct msm_buf_mngr_info)
|
||||
#define VIDIOC_MSM_BUF_MNGR_BUF_DONE _IOWR('V', BASE_VIDIOC_PRIVATE + 35, struct msm_buf_mngr_info)
|
||||
#define VIDIOC_MSM_BUF_MNGR_CONT_CMD _IOWR('V', BASE_VIDIOC_PRIVATE + 36, struct msm_buf_mngr_main_cont_info)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VIDIOC_MSM_BUF_MNGR_INIT _IOWR('V', BASE_VIDIOC_PRIVATE + 37, struct msm_buf_mngr_info)
|
||||
#define VIDIOC_MSM_BUF_MNGR_DEINIT _IOWR('V', BASE_VIDIOC_PRIVATE + 38, struct msm_buf_mngr_info)
|
||||
#define VIDIOC_MSM_BUF_MNGR_FLUSH _IOWR('V', BASE_VIDIOC_PRIVATE + 39, struct msm_buf_mngr_info)
|
||||
#define VIDIOC_MSM_BUF_MNGR_IOCTL_CMD _IOWR('V', BASE_VIDIOC_PRIVATE + 40, struct msm_camera_private_ioctl_arg)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
|
||||
839
kernel-headers/media/msmb_isp.h
Normal file
839
kernel-headers/media/msmb_isp.h
Normal file
@@ -0,0 +1,839 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __UAPI_MSMB_ISP__
|
||||
#define __UAPI_MSMB_ISP__
|
||||
#include <linux/videodev2.h>
|
||||
#define MAX_PLANES_PER_STREAM 3
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MAX_NUM_STREAM 7
|
||||
#define ISP_VERSION_47 47
|
||||
#define ISP_VERSION_46 46
|
||||
#define ISP_VERSION_44 44
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ISP_VERSION_40 40
|
||||
#define ISP_VERSION_32 32
|
||||
#define ISP_NATIVE_BUF_BIT (0x10000 << 0)
|
||||
#define ISP0_BIT (0x10000 << 1)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ISP1_BIT (0x10000 << 2)
|
||||
#define ISP_META_CHANNEL_BIT (0x10000 << 3)
|
||||
#define ISP_SCRATCH_BUF_BIT (0x10000 << 4)
|
||||
#define ISP_OFFLINE_STATS_BIT (0x10000 << 5)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ISP_STATS_STREAM_BIT 0x80000000
|
||||
struct msm_vfe_cfg_cmd_list;
|
||||
enum ISP_START_PIXEL_PATTERN {
|
||||
ISP_BAYER_RGRGRG,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ISP_BAYER_GRGRGR,
|
||||
ISP_BAYER_BGBGBG,
|
||||
ISP_BAYER_GBGBGB,
|
||||
ISP_YUV_YCbYCr,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ISP_YUV_YCrYCb,
|
||||
ISP_YUV_CbYCrY,
|
||||
ISP_YUV_CrYCbY,
|
||||
ISP_PIX_PATTERN_MAX
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum msm_vfe_plane_fmt {
|
||||
Y_PLANE,
|
||||
CB_PLANE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CR_PLANE,
|
||||
CRCB_PLANE,
|
||||
CBCR_PLANE,
|
||||
VFE_PLANE_FMT_MAX
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum msm_vfe_input_src {
|
||||
VFE_PIX_0,
|
||||
VFE_RAW_0,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VFE_RAW_1,
|
||||
VFE_RAW_2,
|
||||
VFE_SRC_MAX,
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_vfe_axi_stream_src {
|
||||
PIX_ENCODER,
|
||||
PIX_VIEWFINDER,
|
||||
PIX_VIDEO,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CAMIF_RAW,
|
||||
IDEAL_RAW,
|
||||
RDI_INTF_0,
|
||||
RDI_INTF_1,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
RDI_INTF_2,
|
||||
VFE_AXI_SRC_MAX
|
||||
};
|
||||
enum msm_vfe_frame_skip_pattern {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
NO_SKIP,
|
||||
EVERY_2FRAME,
|
||||
EVERY_3FRAME,
|
||||
EVERY_4FRAME,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
EVERY_5FRAME,
|
||||
EVERY_6FRAME,
|
||||
EVERY_7FRAME,
|
||||
EVERY_8FRAME,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
EVERY_16FRAME,
|
||||
EVERY_32FRAME,
|
||||
SKIP_ALL,
|
||||
SKIP_RANGE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MAX_SKIP,
|
||||
};
|
||||
#define MSM_VFE_STREAM_STOP_PERIOD 15
|
||||
enum msm_isp_stats_type {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_ISP_STATS_AEC,
|
||||
MSM_ISP_STATS_AF,
|
||||
MSM_ISP_STATS_AWB,
|
||||
MSM_ISP_STATS_RS,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_ISP_STATS_CS,
|
||||
MSM_ISP_STATS_IHIST,
|
||||
MSM_ISP_STATS_SKIN,
|
||||
MSM_ISP_STATS_BG,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_ISP_STATS_BF,
|
||||
MSM_ISP_STATS_BE,
|
||||
MSM_ISP_STATS_BHIST,
|
||||
MSM_ISP_STATS_BF_SCALE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_ISP_STATS_HDR_BE,
|
||||
MSM_ISP_STATS_HDR_BHIST,
|
||||
MSM_ISP_STATS_AEC_BG,
|
||||
MSM_ISP_STATS_MAX
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_isp_sw_framskip {
|
||||
uint32_t stats_type_mask;
|
||||
uint32_t stream_src_mask;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_vfe_frame_skip_pattern skip_mode;
|
||||
uint32_t min_frame_id;
|
||||
uint32_t max_frame_id;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_vfe_testgen_color_pattern {
|
||||
COLOR_BAR_8_COLOR,
|
||||
UNICOLOR_WHITE,
|
||||
UNICOLOR_YELLOW,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
UNICOLOR_CYAN,
|
||||
UNICOLOR_GREEN,
|
||||
UNICOLOR_MAGENTA,
|
||||
UNICOLOR_RED,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
UNICOLOR_BLUE,
|
||||
UNICOLOR_BLACK,
|
||||
MAX_COLOR,
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_vfe_camif_input {
|
||||
CAMIF_DISABLED,
|
||||
CAMIF_PAD_REG_INPUT,
|
||||
CAMIF_MIDDI_INPUT,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CAMIF_MIPI_INPUT,
|
||||
};
|
||||
struct msm_vfe_fetch_engine_cfg {
|
||||
uint32_t input_format;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t buf_width;
|
||||
uint32_t buf_height;
|
||||
uint32_t fetch_width;
|
||||
uint32_t fetch_height;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t x_offset;
|
||||
uint32_t y_offset;
|
||||
uint32_t buf_stride;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_vfe_camif_output_format {
|
||||
CAMIF_QCOM_RAW,
|
||||
CAMIF_MIPI_RAW,
|
||||
CAMIF_PLAIN_8,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CAMIF_PLAIN_16,
|
||||
CAMIF_MAX_FORMAT,
|
||||
};
|
||||
struct msm_vfe_camif_subsample_cfg {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t irq_subsample_period;
|
||||
uint32_t irq_subsample_pattern;
|
||||
uint32_t sof_counter_step;
|
||||
uint32_t pixel_skip;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t line_skip;
|
||||
uint32_t first_line;
|
||||
uint32_t last_line;
|
||||
uint32_t first_pixel;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t last_pixel;
|
||||
enum msm_vfe_camif_output_format output_format;
|
||||
};
|
||||
struct msm_vfe_camif_cfg {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t lines_per_frame;
|
||||
uint32_t pixels_per_line;
|
||||
uint32_t first_pixel;
|
||||
uint32_t last_pixel;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t first_line;
|
||||
uint32_t last_line;
|
||||
uint32_t epoch_line0;
|
||||
uint32_t epoch_line1;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t is_split;
|
||||
enum msm_vfe_camif_input camif_input;
|
||||
struct msm_vfe_camif_subsample_cfg subsample_cfg;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_vfe_testgen_cfg {
|
||||
uint32_t lines_per_frame;
|
||||
uint32_t pixels_per_line;
|
||||
uint32_t v_blank;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t h_blank;
|
||||
enum ISP_START_PIXEL_PATTERN pixel_bayer_pattern;
|
||||
uint32_t rotate_period;
|
||||
enum msm_vfe_testgen_color_pattern color_bar_pattern;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t burst_num_frame;
|
||||
};
|
||||
enum msm_vfe_inputmux {
|
||||
CAMIF,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
TESTGEN,
|
||||
EXTERNAL_READ,
|
||||
};
|
||||
enum msm_vfe_stats_composite_group {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
STATS_COMPOSITE_GRP_NONE,
|
||||
STATS_COMPOSITE_GRP_1,
|
||||
STATS_COMPOSITE_GRP_2,
|
||||
STATS_COMPOSITE_GRP_MAX,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum msm_vfe_hvx_streaming_cmd {
|
||||
HVX_DISABLE,
|
||||
HVX_ONE_WAY,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
HVX_ROUND_TRIP
|
||||
};
|
||||
struct msm_vfe_pix_cfg {
|
||||
struct msm_vfe_camif_cfg camif_cfg;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_vfe_testgen_cfg testgen_cfg;
|
||||
struct msm_vfe_fetch_engine_cfg fetch_engine_cfg;
|
||||
enum msm_vfe_inputmux input_mux;
|
||||
enum ISP_START_PIXEL_PATTERN pixel_pattern;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t input_format;
|
||||
enum msm_vfe_hvx_streaming_cmd hvx_cmd;
|
||||
uint32_t is_split;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_vfe_rdi_cfg {
|
||||
uint8_t cid;
|
||||
uint8_t frame_based;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_vfe_input_cfg {
|
||||
union {
|
||||
struct msm_vfe_pix_cfg pix_cfg;
|
||||
struct msm_vfe_rdi_cfg rdi_cfg;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
} d;
|
||||
enum msm_vfe_input_src input_src;
|
||||
uint32_t input_pix_clk;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_vfe_fetch_eng_start {
|
||||
uint32_t session_id;
|
||||
uint32_t stream_id;
|
||||
uint32_t buf_idx;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t offline_mode;
|
||||
uint32_t fd;
|
||||
uint32_t buf_addr;
|
||||
uint32_t frame_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_vfe_axi_plane_cfg {
|
||||
uint32_t output_width;
|
||||
uint32_t output_height;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t output_stride;
|
||||
uint32_t output_scan_lines;
|
||||
uint32_t output_plane_format;
|
||||
uint32_t plane_addr_offset;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t csid_src;
|
||||
uint8_t rdi_cid;
|
||||
};
|
||||
enum msm_stream_memory_input_t {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MEMORY_INPUT_DISABLED,
|
||||
MEMORY_INPUT_ENABLED
|
||||
};
|
||||
struct msm_vfe_axi_stream_request_cmd {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t session_id;
|
||||
uint32_t stream_id;
|
||||
uint32_t vt_enable;
|
||||
uint32_t output_format;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_vfe_axi_stream_src stream_src;
|
||||
struct msm_vfe_axi_plane_cfg plane_cfg[MAX_PLANES_PER_STREAM];
|
||||
uint32_t burst_count;
|
||||
uint32_t hfr_mode;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t frame_base;
|
||||
uint32_t init_frame_drop;
|
||||
enum msm_vfe_frame_skip_pattern frame_skip_pattern;
|
||||
uint8_t buf_divert;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t axi_stream_handle;
|
||||
uint32_t controllable_output;
|
||||
uint32_t burst_len;
|
||||
enum msm_stream_memory_input_t memory_input;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_vfe_axi_stream_release_cmd {
|
||||
uint32_t stream_handle;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_vfe_axi_stream_cmd {
|
||||
STOP_STREAM,
|
||||
START_STREAM,
|
||||
STOP_IMMEDIATELY,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_vfe_axi_stream_cfg_cmd {
|
||||
uint8_t num_streams;
|
||||
uint32_t stream_handle[VFE_AXI_SRC_MAX];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_vfe_axi_stream_cmd cmd;
|
||||
uint8_t sync_frame_id_src;
|
||||
};
|
||||
enum msm_vfe_axi_stream_update_type {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ENABLE_STREAM_BUF_DIVERT,
|
||||
DISABLE_STREAM_BUF_DIVERT,
|
||||
UPDATE_STREAM_FRAMEDROP_PATTERN,
|
||||
UPDATE_STREAM_STATS_FRAMEDROP_PATTERN,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
UPDATE_STREAM_AXI_CONFIG,
|
||||
UPDATE_STREAM_REQUEST_FRAMES,
|
||||
UPDATE_STREAM_ADD_BUFQ,
|
||||
UPDATE_STREAM_REMOVE_BUFQ,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
UPDATE_STREAM_SW_FRAME_DROP,
|
||||
};
|
||||
enum msm_vfe_iommu_type {
|
||||
IOMMU_ATTACH,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
IOMMU_DETACH,
|
||||
};
|
||||
enum msm_vfe_buff_queue_id {
|
||||
VFE_BUF_QUEUE_DEFAULT,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VFE_BUF_QUEUE_SHARED,
|
||||
VFE_BUF_QUEUE_MAX,
|
||||
};
|
||||
struct msm_vfe_axi_stream_cfg_update_info {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t stream_handle;
|
||||
uint32_t output_format;
|
||||
uint32_t user_stream_id;
|
||||
uint32_t frame_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_vfe_frame_skip_pattern skip_pattern;
|
||||
struct msm_vfe_axi_plane_cfg plane_cfg[MAX_PLANES_PER_STREAM];
|
||||
struct msm_isp_sw_framskip sw_skip_info;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_vfe_axi_halt_cmd {
|
||||
uint32_t stop_camif;
|
||||
uint32_t overflow_detected;
|
||||
uint32_t blocking_halt;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_vfe_axi_reset_cmd {
|
||||
uint32_t blocking;
|
||||
uint32_t frame_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_vfe_axi_restart_cmd {
|
||||
uint32_t enable_camif;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_vfe_axi_stream_update_cmd {
|
||||
uint32_t num_streams;
|
||||
enum msm_vfe_axi_stream_update_type update_type;
|
||||
struct msm_vfe_axi_stream_cfg_update_info update_info[MSM_ISP_STATS_MAX];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_vfe_smmu_attach_cmd {
|
||||
uint32_t security_mode;
|
||||
uint32_t iommu_attach_mode;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_vfe_stats_stream_request_cmd {
|
||||
uint32_t session_id;
|
||||
uint32_t stream_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_isp_stats_type stats_type;
|
||||
uint32_t composite_flag;
|
||||
uint32_t framedrop_pattern;
|
||||
uint32_t init_frame_drop;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t irq_subsample_pattern;
|
||||
uint32_t buffer_offset;
|
||||
uint32_t stream_handle;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_vfe_stats_stream_release_cmd {
|
||||
uint32_t stream_handle;
|
||||
};
|
||||
struct msm_vfe_stats_stream_cfg_cmd {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t num_streams;
|
||||
uint32_t stream_handle[MSM_ISP_STATS_MAX];
|
||||
uint8_t enable;
|
||||
uint32_t stats_burst_len;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum msm_vfe_reg_cfg_type {
|
||||
VFE_WRITE,
|
||||
VFE_WRITE_MB,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VFE_READ,
|
||||
VFE_CFG_MASK,
|
||||
VFE_WRITE_DMI_16BIT,
|
||||
VFE_WRITE_DMI_32BIT,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VFE_WRITE_DMI_64BIT,
|
||||
VFE_READ_DMI_16BIT,
|
||||
VFE_READ_DMI_32BIT,
|
||||
VFE_READ_DMI_64BIT,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
GET_MAX_CLK_RATE,
|
||||
GET_CLK_RATES,
|
||||
GET_ISP_ID,
|
||||
VFE_HW_UPDATE_LOCK,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VFE_HW_UPDATE_UNLOCK,
|
||||
SET_WM_UB_SIZE,
|
||||
SET_UB_POLICY,
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_vfe_cfg_cmd2 {
|
||||
uint16_t num_cfg;
|
||||
uint16_t cmd_len;
|
||||
void * cfg_data;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
void * cfg_cmd;
|
||||
};
|
||||
struct msm_vfe_cfg_cmd_list {
|
||||
struct msm_vfe_cfg_cmd2 cfg_cmd;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_vfe_cfg_cmd_list * next;
|
||||
uint32_t next_size;
|
||||
};
|
||||
struct msm_vfe_reg_rw_info {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t reg_offset;
|
||||
uint32_t cmd_data_offset;
|
||||
uint32_t len;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_vfe_reg_mask_info {
|
||||
uint32_t reg_offset;
|
||||
uint32_t mask;
|
||||
uint32_t val;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_vfe_reg_dmi_info {
|
||||
uint32_t hi_tbl_offset;
|
||||
uint32_t lo_tbl_offset;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t len;
|
||||
};
|
||||
struct msm_vfe_reg_cfg_cmd {
|
||||
union {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_vfe_reg_rw_info rw_info;
|
||||
struct msm_vfe_reg_mask_info mask_info;
|
||||
struct msm_vfe_reg_dmi_info dmi_info;
|
||||
} u;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_vfe_reg_cfg_type cmd_type;
|
||||
};
|
||||
enum vfe_sd_type {
|
||||
VFE_SD_0 = 0,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VFE_SD_1,
|
||||
VFE_SD_COMMON,
|
||||
VFE_SD_MAX,
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MS_NUM_SLAVE_MAX 1
|
||||
enum msm_vfe_dual_hw_type {
|
||||
DUAL_NONE = 0,
|
||||
DUAL_HW_VFE_SPLIT = 1,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
DUAL_HW_MASTER_SLAVE = 2,
|
||||
};
|
||||
enum msm_vfe_dual_hw_ms_type {
|
||||
MS_TYPE_NONE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MS_TYPE_MASTER,
|
||||
MS_TYPE_SLAVE,
|
||||
};
|
||||
struct msm_isp_set_dual_hw_ms_cmd {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t num_src;
|
||||
enum msm_vfe_dual_hw_ms_type dual_hw_ms_type;
|
||||
enum msm_vfe_input_src primary_intf;
|
||||
enum msm_vfe_input_src input_src[VFE_SRC_MAX];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t sof_delta_threshold;
|
||||
};
|
||||
enum msm_isp_buf_type {
|
||||
ISP_PRIVATE_BUF,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ISP_SHARE_BUF,
|
||||
MAX_ISP_BUF_TYPE,
|
||||
};
|
||||
struct msm_isp_unmap_buf_req {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t fd;
|
||||
};
|
||||
struct msm_isp_buf_request {
|
||||
uint32_t session_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t stream_id;
|
||||
uint8_t num_buf;
|
||||
uint32_t handle;
|
||||
enum msm_isp_buf_type buf_type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_isp_qbuf_plane {
|
||||
uint32_t addr;
|
||||
uint32_t offset;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t length;
|
||||
};
|
||||
struct msm_isp_qbuf_buffer {
|
||||
struct msm_isp_qbuf_plane planes[MAX_PLANES_PER_STREAM];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t num_planes;
|
||||
};
|
||||
struct msm_isp_qbuf_info {
|
||||
uint32_t handle;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int32_t buf_idx;
|
||||
struct msm_isp_qbuf_buffer buffer;
|
||||
uint32_t dirty_buf;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_isp_clk_rates {
|
||||
uint32_t svs_rate;
|
||||
uint32_t nominal_rate;
|
||||
uint32_t high_rate;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_vfe_axi_src_state {
|
||||
enum msm_vfe_input_src input_src;
|
||||
uint32_t src_active;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t src_frame_id;
|
||||
};
|
||||
enum msm_isp_event_mask_index {
|
||||
ISP_EVENT_MASK_INDEX_STATS_NOTIFY = 0,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ISP_EVENT_MASK_INDEX_ERROR = 1,
|
||||
ISP_EVENT_MASK_INDEX_IOMMU_P_FAULT = 2,
|
||||
ISP_EVENT_MASK_INDEX_STREAM_UPDATE_DONE = 3,
|
||||
ISP_EVENT_MASK_INDEX_REG_UPDATE = 4,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ISP_EVENT_MASK_INDEX_SOF = 5,
|
||||
ISP_EVENT_MASK_INDEX_BUF_DIVERT = 6,
|
||||
ISP_EVENT_MASK_INDEX_COMP_STATS_NOTIFY = 7,
|
||||
ISP_EVENT_MASK_INDEX_MASK_FE_READ_DONE = 8,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ISP_EVENT_MASK_INDEX_BUF_DONE = 9,
|
||||
ISP_EVENT_MASK_INDEX_REG_UPDATE_MISSING = 10,
|
||||
ISP_EVENT_MASK_INDEX_PING_PONG_MISMATCH = 11,
|
||||
ISP_EVENT_MASK_INDEX_BUF_FATAL_ERROR = 12,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define ISP_EVENT_SUBS_MASK_NONE 0
|
||||
#define ISP_EVENT_SUBS_MASK_STATS_NOTIFY (1 << ISP_EVENT_MASK_INDEX_STATS_NOTIFY)
|
||||
#define ISP_EVENT_SUBS_MASK_ERROR (1 << ISP_EVENT_MASK_INDEX_ERROR)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ISP_EVENT_SUBS_MASK_IOMMU_P_FAULT (1 << ISP_EVENT_MASK_INDEX_IOMMU_P_FAULT)
|
||||
#define ISP_EVENT_SUBS_MASK_STREAM_UPDATE_DONE (1 << ISP_EVENT_MASK_INDEX_STREAM_UPDATE_DONE)
|
||||
#define ISP_EVENT_SUBS_MASK_REG_UPDATE (1 << ISP_EVENT_MASK_INDEX_REG_UPDATE)
|
||||
#define ISP_EVENT_SUBS_MASK_SOF (1 << ISP_EVENT_MASK_INDEX_SOF)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ISP_EVENT_SUBS_MASK_BUF_DIVERT (1 << ISP_EVENT_MASK_INDEX_BUF_DIVERT)
|
||||
#define ISP_EVENT_SUBS_MASK_COMP_STATS_NOTIFY (1 << ISP_EVENT_MASK_INDEX_COMP_STATS_NOTIFY)
|
||||
#define ISP_EVENT_SUBS_MASK_FE_READ_DONE (1 << ISP_EVENT_MASK_INDEX_MASK_FE_READ_DONE)
|
||||
#define ISP_EVENT_SUBS_MASK_BUF_DONE (1 << ISP_EVENT_MASK_INDEX_BUF_DONE)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ISP_EVENT_SUBS_MASK_REG_UPDATE_MISSING (1 << ISP_EVENT_MASK_INDEX_REG_UPDATE_MISSING)
|
||||
#define ISP_EVENT_SUBS_MASK_PING_PONG_MISMATCH (1 << ISP_EVENT_MASK_INDEX_PING_PONG_MISMATCH)
|
||||
#define ISP_EVENT_SUBS_MASK_BUF_FATAL_ERROR (1 << ISP_EVENT_MASK_INDEX_BUF_FATAL_ERROR)
|
||||
enum msm_isp_event_idx {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ISP_REG_UPDATE = 0,
|
||||
ISP_EPOCH_0 = 1,
|
||||
ISP_EPOCH_1 = 2,
|
||||
ISP_START_ACK = 3,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ISP_STOP_ACK = 4,
|
||||
ISP_IRQ_VIOLATION = 5,
|
||||
ISP_STATS_OVERFLOW = 6,
|
||||
ISP_BUF_DONE = 7,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ISP_FE_RD_DONE = 8,
|
||||
ISP_IOMMU_P_FAULT = 9,
|
||||
ISP_ERROR = 10,
|
||||
ISP_HW_FATAL_ERROR = 11,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ISP_PING_PONG_MISMATCH = 12,
|
||||
ISP_REG_UPDATE_MISSING = 13,
|
||||
ISP_BUF_FATAL_ERROR = 14,
|
||||
ISP_EVENT_MAX = 15
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define ISP_EVENT_OFFSET 8
|
||||
#define ISP_EVENT_BASE (V4L2_EVENT_PRIVATE_START)
|
||||
#define ISP_BUF_EVENT_BASE (ISP_EVENT_BASE + (1 << ISP_EVENT_OFFSET))
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ISP_STATS_EVENT_BASE (ISP_EVENT_BASE + (2 << ISP_EVENT_OFFSET))
|
||||
#define ISP_CAMIF_EVENT_BASE (ISP_EVENT_BASE + (3 << ISP_EVENT_OFFSET))
|
||||
#define ISP_STREAM_EVENT_BASE (ISP_EVENT_BASE + (4 << ISP_EVENT_OFFSET))
|
||||
#define ISP_EVENT_REG_UPDATE (ISP_EVENT_BASE + ISP_REG_UPDATE)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ISP_EVENT_EPOCH_0 (ISP_EVENT_BASE + ISP_EPOCH_0)
|
||||
#define ISP_EVENT_EPOCH_1 (ISP_EVENT_BASE + ISP_EPOCH_1)
|
||||
#define ISP_EVENT_START_ACK (ISP_EVENT_BASE + ISP_START_ACK)
|
||||
#define ISP_EVENT_STOP_ACK (ISP_EVENT_BASE + ISP_STOP_ACK)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ISP_EVENT_IRQ_VIOLATION (ISP_EVENT_BASE + ISP_IRQ_VIOLATION)
|
||||
#define ISP_EVENT_STATS_OVERFLOW (ISP_EVENT_BASE + ISP_STATS_OVERFLOW)
|
||||
#define ISP_EVENT_ERROR (ISP_EVENT_BASE + ISP_ERROR)
|
||||
#define ISP_EVENT_SOF (ISP_CAMIF_EVENT_BASE)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ISP_EVENT_EOF (ISP_CAMIF_EVENT_BASE + 1)
|
||||
#define ISP_EVENT_BUF_DONE (ISP_EVENT_BASE + ISP_BUF_DONE)
|
||||
#define ISP_EVENT_BUF_DIVERT (ISP_BUF_EVENT_BASE)
|
||||
#define ISP_EVENT_STATS_NOTIFY (ISP_STATS_EVENT_BASE)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ISP_EVENT_COMP_STATS_NOTIFY (ISP_EVENT_STATS_NOTIFY + MSM_ISP_STATS_MAX)
|
||||
#define ISP_EVENT_FE_READ_DONE (ISP_EVENT_BASE + ISP_FE_RD_DONE)
|
||||
#define ISP_EVENT_IOMMU_P_FAULT (ISP_EVENT_BASE + ISP_IOMMU_P_FAULT)
|
||||
#define ISP_EVENT_HW_FATAL_ERROR (ISP_EVENT_BASE + ISP_HW_FATAL_ERROR)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ISP_EVENT_PING_PONG_MISMATCH (ISP_EVENT_BASE + ISP_PING_PONG_MISMATCH)
|
||||
#define ISP_EVENT_REG_UPDATE_MISSING (ISP_EVENT_BASE + ISP_REG_UPDATE_MISSING)
|
||||
#define ISP_EVENT_BUF_FATAL_ERROR (ISP_EVENT_BASE + ISP_BUF_FATAL_ERROR)
|
||||
#define ISP_EVENT_STREAM_UPDATE_DONE (ISP_STREAM_EVENT_BASE)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_isp_buf_event {
|
||||
uint32_t session_id;
|
||||
uint32_t stream_id;
|
||||
uint32_t handle;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t output_format;
|
||||
int8_t buf_idx;
|
||||
};
|
||||
struct msm_isp_fetch_eng_event {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t session_id;
|
||||
uint32_t stream_id;
|
||||
uint32_t handle;
|
||||
uint32_t fd;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int8_t buf_idx;
|
||||
int8_t offline_mode;
|
||||
};
|
||||
struct msm_isp_stats_event {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t stats_mask;
|
||||
uint8_t stats_buf_idxs[MSM_ISP_STATS_MAX];
|
||||
};
|
||||
struct msm_isp_stream_ack {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t session_id;
|
||||
uint32_t stream_id;
|
||||
uint32_t handle;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_vfe_error_type {
|
||||
ISP_ERROR_NONE,
|
||||
ISP_ERROR_CAMIF,
|
||||
ISP_ERROR_BUS_OVERFLOW,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ISP_ERROR_RETURN_EMPTY_BUFFER,
|
||||
ISP_ERROR_FRAME_ID_MISMATCH,
|
||||
ISP_ERROR_MAX,
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_isp_error_info {
|
||||
enum msm_vfe_error_type err_type;
|
||||
uint32_t session_id;
|
||||
uint32_t stream_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t stream_id_mask;
|
||||
};
|
||||
struct msm_isp_ms_delta_info {
|
||||
uint8_t num_delta_info;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t delta[MS_NUM_SLAVE_MAX];
|
||||
};
|
||||
struct msm_isp_output_info {
|
||||
uint8_t regs_not_updated;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint16_t output_err_mask;
|
||||
uint8_t stream_framedrop_mask;
|
||||
uint16_t stats_framedrop_mask;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_isp_sof_info {
|
||||
uint8_t regs_not_updated;
|
||||
uint16_t reg_update_fail_mask;
|
||||
uint32_t stream_get_buf_fail_mask;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint16_t stats_get_buf_fail_mask;
|
||||
struct msm_isp_ms_delta_info ms_delta_info;
|
||||
uint16_t axi_updating_mask;
|
||||
uint32_t reg_update_fail_mask_ext;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#define AXI_UPDATING_MASK 1
|
||||
#define REG_UPDATE_FAIL_MASK_EXT 1
|
||||
struct msm_isp_event_data {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct timeval timestamp;
|
||||
struct timeval mono_timestamp;
|
||||
uint32_t frame_id;
|
||||
union {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_isp_stats_event stats;
|
||||
struct msm_isp_buf_event buf_done;
|
||||
struct msm_isp_fetch_eng_event fetch_done;
|
||||
struct msm_isp_error_info error_info;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_isp_output_info output_info;
|
||||
struct msm_isp_sof_info sof_info;
|
||||
} u;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_vfe_ahb_clk_vote {
|
||||
MSM_ISP_CAMERA_AHB_SVS_VOTE = 1,
|
||||
MSM_ISP_CAMERA_AHB_TURBO_VOTE = 2,
|
||||
MSM_ISP_CAMERA_AHB_NOMINAL_VOTE = 3,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
MSM_ISP_CAMERA_AHB_SUSPEND_VOTE = 4,
|
||||
};
|
||||
struct msm_isp_ahb_clk_cfg {
|
||||
uint32_t vote;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t reserved[2];
|
||||
};
|
||||
#define V4L2_PIX_FMT_QBGGR8 v4l2_fourcc('Q', 'B', 'G', '8')
|
||||
#define V4L2_PIX_FMT_QGBRG8 v4l2_fourcc('Q', 'G', 'B', '8')
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define V4L2_PIX_FMT_QGRBG8 v4l2_fourcc('Q', 'G', 'R', '8')
|
||||
#define V4L2_PIX_FMT_QRGGB8 v4l2_fourcc('Q', 'R', 'G', '8')
|
||||
#define V4L2_PIX_FMT_QBGGR10 v4l2_fourcc('Q', 'B', 'G', '0')
|
||||
#define V4L2_PIX_FMT_QGBRG10 v4l2_fourcc('Q', 'G', 'B', '0')
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define V4L2_PIX_FMT_QGRBG10 v4l2_fourcc('Q', 'G', 'R', '0')
|
||||
#define V4L2_PIX_FMT_QRGGB10 v4l2_fourcc('Q', 'R', 'G', '0')
|
||||
#define V4L2_PIX_FMT_QBGGR12 v4l2_fourcc('Q', 'B', 'G', '2')
|
||||
#define V4L2_PIX_FMT_QGBRG12 v4l2_fourcc('Q', 'G', 'B', '2')
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define V4L2_PIX_FMT_QGRBG12 v4l2_fourcc('Q', 'G', 'R', '2')
|
||||
#define V4L2_PIX_FMT_QRGGB12 v4l2_fourcc('Q', 'R', 'G', '2')
|
||||
#define V4L2_PIX_FMT_QBGGR14 v4l2_fourcc('Q', 'B', 'G', '4')
|
||||
#define V4L2_PIX_FMT_QGBRG14 v4l2_fourcc('Q', 'G', 'B', '4')
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define V4L2_PIX_FMT_QGRBG14 v4l2_fourcc('Q', 'G', 'R', '4')
|
||||
#define V4L2_PIX_FMT_QRGGB14 v4l2_fourcc('Q', 'R', 'G', '4')
|
||||
#define V4L2_PIX_FMT_P16BGGR10 v4l2_fourcc('P', 'B', 'G', '0')
|
||||
#define V4L2_PIX_FMT_P16GBRG10 v4l2_fourcc('P', 'G', 'B', '0')
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define V4L2_PIX_FMT_P16GRBG10 v4l2_fourcc('P', 'G', 'R', '0')
|
||||
#define V4L2_PIX_FMT_P16RGGB10 v4l2_fourcc('P', 'R', 'G', '0')
|
||||
#define V4L2_PIX_FMT_NV14 v4l2_fourcc('N', 'V', '1', '4')
|
||||
#define V4L2_PIX_FMT_NV41 v4l2_fourcc('N', 'V', '4', '1')
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define V4L2_PIX_FMT_META v4l2_fourcc('Q', 'M', 'E', 'T')
|
||||
#define V4L2_PIX_FMT_SBGGR14 v4l2_fourcc('B', 'G', '1', '4')
|
||||
#define V4L2_PIX_FMT_SGBRG14 v4l2_fourcc('G', 'B', '1', '4')
|
||||
#define V4L2_PIX_FMT_SGRBG14 v4l2_fourcc('B', 'A', '1', '4')
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define V4L2_PIX_FMT_SRGGB14 v4l2_fourcc('R', 'G', '1', '4')
|
||||
#define VIDIOC_MSM_VFE_REG_CFG _IOWR('V', BASE_VIDIOC_PRIVATE, struct msm_vfe_cfg_cmd2)
|
||||
#define VIDIOC_MSM_ISP_REQUEST_BUF _IOWR('V', BASE_VIDIOC_PRIVATE + 1, struct msm_isp_buf_request)
|
||||
#define VIDIOC_MSM_ISP_ENQUEUE_BUF _IOWR('V', BASE_VIDIOC_PRIVATE + 2, struct msm_isp_qbuf_info)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VIDIOC_MSM_ISP_RELEASE_BUF _IOWR('V', BASE_VIDIOC_PRIVATE + 3, struct msm_isp_buf_request)
|
||||
#define VIDIOC_MSM_ISP_REQUEST_STREAM _IOWR('V', BASE_VIDIOC_PRIVATE + 4, struct msm_vfe_axi_stream_request_cmd)
|
||||
#define VIDIOC_MSM_ISP_CFG_STREAM _IOWR('V', BASE_VIDIOC_PRIVATE + 5, struct msm_vfe_axi_stream_cfg_cmd)
|
||||
#define VIDIOC_MSM_ISP_RELEASE_STREAM _IOWR('V', BASE_VIDIOC_PRIVATE + 6, struct msm_vfe_axi_stream_release_cmd)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VIDIOC_MSM_ISP_INPUT_CFG _IOWR('V', BASE_VIDIOC_PRIVATE + 7, struct msm_vfe_input_cfg)
|
||||
#define VIDIOC_MSM_ISP_SET_SRC_STATE _IOWR('V', BASE_VIDIOC_PRIVATE + 8, struct msm_vfe_axi_src_state)
|
||||
#define VIDIOC_MSM_ISP_REQUEST_STATS_STREAM _IOWR('V', BASE_VIDIOC_PRIVATE + 9, struct msm_vfe_stats_stream_request_cmd)
|
||||
#define VIDIOC_MSM_ISP_CFG_STATS_STREAM _IOWR('V', BASE_VIDIOC_PRIVATE + 10, struct msm_vfe_stats_stream_cfg_cmd)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VIDIOC_MSM_ISP_RELEASE_STATS_STREAM _IOWR('V', BASE_VIDIOC_PRIVATE + 11, struct msm_vfe_stats_stream_release_cmd)
|
||||
#define VIDIOC_MSM_ISP_REG_UPDATE_CMD _IOWR('V', BASE_VIDIOC_PRIVATE + 12, enum msm_vfe_input_src)
|
||||
#define VIDIOC_MSM_ISP_UPDATE_STREAM _IOWR('V', BASE_VIDIOC_PRIVATE + 13, struct msm_vfe_axi_stream_update_cmd)
|
||||
#define VIDIOC_MSM_VFE_REG_LIST_CFG _IOWR('V', BASE_VIDIOC_PRIVATE + 14, struct msm_vfe_cfg_cmd_list)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VIDIOC_MSM_ISP_SMMU_ATTACH _IOWR('V', BASE_VIDIOC_PRIVATE + 15, struct msm_vfe_smmu_attach_cmd)
|
||||
#define VIDIOC_MSM_ISP_UPDATE_STATS_STREAM _IOWR('V', BASE_VIDIOC_PRIVATE + 16, struct msm_vfe_axi_stream_update_cmd)
|
||||
#define VIDIOC_MSM_ISP_AXI_HALT _IOWR('V', BASE_VIDIOC_PRIVATE + 17, struct msm_vfe_axi_halt_cmd)
|
||||
#define VIDIOC_MSM_ISP_AXI_RESET _IOWR('V', BASE_VIDIOC_PRIVATE + 18, struct msm_vfe_axi_reset_cmd)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VIDIOC_MSM_ISP_AXI_RESTART _IOWR('V', BASE_VIDIOC_PRIVATE + 19, struct msm_vfe_axi_restart_cmd)
|
||||
#define VIDIOC_MSM_ISP_FETCH_ENG_START _IOWR('V', BASE_VIDIOC_PRIVATE + 20, struct msm_vfe_fetch_eng_start)
|
||||
#define VIDIOC_MSM_ISP_DEQUEUE_BUF _IOWR('V', BASE_VIDIOC_PRIVATE + 21, struct msm_isp_qbuf_info)
|
||||
#define VIDIOC_MSM_ISP_SET_DUAL_HW_MASTER_SLAVE _IOWR('V', BASE_VIDIOC_PRIVATE + 22, struct msm_isp_set_dual_hw_ms_cmd)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VIDIOC_MSM_ISP_MAP_BUF_START_FE _IOWR('V', BASE_VIDIOC_PRIVATE + 23, struct msm_vfe_fetch_eng_start)
|
||||
#define VIDIOC_MSM_ISP_UNMAP_BUF _IOWR('V', BASE_VIDIOC_PRIVATE + 24, struct msm_isp_unmap_buf_req)
|
||||
#define VIDIOC_MSM_ISP_AHB_CLK_CFG _IOWR('V', BASE_VIDIOC_PRIVATE + 25, struct msm_isp_ahb_clk_cfg)
|
||||
#endif
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
|
||||
192
kernel-headers/media/msmb_ispif.h
Normal file
192
kernel-headers/media/msmb_ispif.h
Normal file
@@ -0,0 +1,192 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef UAPI_MSMB_ISPIF_H
|
||||
#define UAPI_MSMB_ISPIF_H
|
||||
#include <linux/types.h>
|
||||
#include <linux/ioctl.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#include <linux/videodev2.h>
|
||||
#define CSID_VERSION_V20 0x02000011
|
||||
#define CSID_VERSION_V22 0x02001000
|
||||
#define CSID_VERSION_V30 0x30000000
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define CSID_VERSION_V3 0x30000000
|
||||
enum msm_ispif_vfe_intf {
|
||||
VFE0,
|
||||
VFE1,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VFE_MAX
|
||||
};
|
||||
#define VFE0_MASK (1 << VFE0)
|
||||
#define VFE1_MASK (1 << VFE1)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_ispif_intftype {
|
||||
PIX0,
|
||||
RDI0,
|
||||
PIX1,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
RDI1,
|
||||
RDI2,
|
||||
INTF_MAX
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MAX_PARAM_ENTRIES (INTF_MAX * 2)
|
||||
#define MAX_CID_CH 8
|
||||
#define PIX0_MASK (1 << PIX0)
|
||||
#define PIX1_MASK (1 << PIX1)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define RDI0_MASK (1 << RDI0)
|
||||
#define RDI1_MASK (1 << RDI1)
|
||||
#define RDI2_MASK (1 << RDI2)
|
||||
enum msm_ispif_vc {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VC0,
|
||||
VC1,
|
||||
VC2,
|
||||
VC3,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
VC_MAX
|
||||
};
|
||||
enum msm_ispif_cid {
|
||||
CID0,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CID1,
|
||||
CID2,
|
||||
CID3,
|
||||
CID4,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CID5,
|
||||
CID6,
|
||||
CID7,
|
||||
CID8,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CID9,
|
||||
CID10,
|
||||
CID11,
|
||||
CID12,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CID13,
|
||||
CID14,
|
||||
CID15,
|
||||
CID_MAX
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum msm_ispif_csid {
|
||||
CSID0,
|
||||
CSID1,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
CSID2,
|
||||
CSID3,
|
||||
CSID_MAX
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_ispif_pixel_odd_even {
|
||||
PIX_EVEN,
|
||||
PIX_ODD
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_ispif_pixel_pack_mode {
|
||||
PACK_BYTE,
|
||||
PACK_PLAIN_PACK,
|
||||
PACK_NV_P8,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
PACK_NV_P16
|
||||
};
|
||||
struct msm_ispif_pack_cfg {
|
||||
int pixel_swap_en;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_ispif_pixel_odd_even even_odd_sel;
|
||||
enum msm_ispif_pixel_pack_mode pack_mode;
|
||||
};
|
||||
struct msm_ispif_params_entry {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_ispif_vfe_intf vfe_intf;
|
||||
enum msm_ispif_intftype intftype;
|
||||
int num_cids;
|
||||
enum msm_ispif_cid cids[3];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_ispif_csid csid;
|
||||
int crop_enable;
|
||||
uint16_t crop_start_pixel;
|
||||
uint16_t crop_end_pixel;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_ispif_param_data_ext {
|
||||
uint32_t num;
|
||||
struct msm_ispif_params_entry entries[MAX_PARAM_ENTRIES];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_ispif_pack_cfg pack_cfg[CID_MAX];
|
||||
};
|
||||
struct msm_ispif_param_data {
|
||||
uint32_t num;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_ispif_params_entry entries[MAX_PARAM_ENTRIES];
|
||||
};
|
||||
struct msm_isp_info {
|
||||
uint32_t max_resolution;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t id;
|
||||
uint32_t ver;
|
||||
};
|
||||
struct msm_ispif_vfe_info {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int num_vfe;
|
||||
struct msm_isp_info info[VFE_MAX];
|
||||
};
|
||||
enum ispif_cfg_type_t {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ISPIF_CLK_ENABLE,
|
||||
ISPIF_CLK_DISABLE,
|
||||
ISPIF_INIT,
|
||||
ISPIF_CFG,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ISPIF_START_FRAME_BOUNDARY,
|
||||
ISPIF_RESTART_FRAME_BOUNDARY,
|
||||
ISPIF_STOP_FRAME_BOUNDARY,
|
||||
ISPIF_STOP_IMMEDIATELY,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
ISPIF_RELEASE,
|
||||
ISPIF_ENABLE_REG_DUMP,
|
||||
ISPIF_SET_VFE_INFO,
|
||||
ISPIF_CFG2,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct ispif_cfg_data {
|
||||
enum ispif_cfg_type_t cfg_type;
|
||||
union {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int reg_dump;
|
||||
uint32_t csid_version;
|
||||
struct msm_ispif_vfe_info vfe_info;
|
||||
struct msm_ispif_param_data params;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
};
|
||||
struct ispif_cfg_data_ext {
|
||||
enum ispif_cfg_type_t cfg_type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
void * data;
|
||||
uint32_t size;
|
||||
};
|
||||
#define ISPIF_RDI_PACK_MODE_SUPPORT 1
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VIDIOC_MSM_ISPIF_CFG _IOWR('V', BASE_VIDIOC_PRIVATE, struct ispif_cfg_data)
|
||||
#define VIDIOC_MSM_ISPIF_CFG_EXT _IOWR('V', BASE_VIDIOC_PRIVATE + 1, struct ispif_cfg_data_ext)
|
||||
#endif
|
||||
|
||||
235
kernel-headers/media/msmb_pproc.h
Normal file
235
kernel-headers/media/msmb_pproc.h
Normal file
@@ -0,0 +1,235 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __UAPI_MSMB_PPROC_H
|
||||
#define __UAPI_MSMB_PPROC_H
|
||||
#include <linux/videodev2.h>
|
||||
#include <linux/types.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#include <media/msmb_generic_buf_mgr.h>
|
||||
#define MAX_PLANES VIDEO_MAX_PLANES
|
||||
#define PARTIAL_FRAME_STRIPE_COUNT 4
|
||||
#define MAX_NUM_CPP_STRIPS 8
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_CPP_MAX_NUM_PLANES 3
|
||||
#define MSM_CPP_MIN_FRAME_LENGTH 13
|
||||
#define MSM_CPP_MAX_FRAME_LENGTH 4096
|
||||
#define MSM_CPP_MAX_FW_NAME_LEN 32
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MAX_FREQ_TBL 10
|
||||
enum msm_cpp_frame_type {
|
||||
MSM_CPP_OFFLINE_FRAME,
|
||||
MSM_CPP_REALTIME_FRAME,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
enum msm_vpe_frame_type {
|
||||
MSM_VPE_OFFLINE_FRAME,
|
||||
MSM_VPE_REALTIME_FRAME,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_cpp_buffer_info_t {
|
||||
int32_t fd;
|
||||
uint32_t index;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t offset;
|
||||
uint8_t native_buff;
|
||||
uint8_t processed_divert;
|
||||
uint32_t identity;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_cpp_stream_buff_info_t {
|
||||
uint32_t identity;
|
||||
uint32_t num_buffs;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_cpp_buffer_info_t * buffer_info;
|
||||
};
|
||||
enum msm_cpp_batch_mode_t {
|
||||
BATCH_MODE_NONE,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
BATCH_MODE_VIDEO,
|
||||
BATCH_MODE_PREVIEW
|
||||
};
|
||||
struct msm_cpp_batch_info_t {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_cpp_batch_mode_t batch_mode;
|
||||
uint32_t batch_size;
|
||||
uint32_t intra_plane_offset[MAX_PLANES];
|
||||
uint32_t pick_preview_idx;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t cont_idx;
|
||||
};
|
||||
struct msm_cpp_frame_info_t {
|
||||
int32_t frame_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct timeval timestamp;
|
||||
uint32_t inst_id;
|
||||
uint32_t identity;
|
||||
uint32_t client_id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_cpp_frame_type frame_type;
|
||||
uint32_t num_strips;
|
||||
uint32_t msg_len;
|
||||
uint32_t * cpp_cmd_msg;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int src_fd;
|
||||
int dst_fd;
|
||||
struct timeval in_time, out_time;
|
||||
void * cookie;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int32_t * status;
|
||||
int32_t duplicate_output;
|
||||
uint32_t duplicate_identity;
|
||||
uint32_t feature_mask;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t we_disable;
|
||||
struct msm_cpp_buffer_info_t input_buffer_info;
|
||||
struct msm_cpp_buffer_info_t output_buffer_info[8];
|
||||
struct msm_cpp_buffer_info_t duplicate_buffer_info;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_cpp_buffer_info_t tnr_scratch_buffer_info[2];
|
||||
uint32_t reserved;
|
||||
uint8_t partial_frame_indicator;
|
||||
uint8_t first_payload;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t last_payload;
|
||||
uint32_t first_stripe_index;
|
||||
uint32_t last_stripe_index;
|
||||
uint32_t stripe_info_offset;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t stripe_info;
|
||||
struct msm_cpp_batch_info_t batch_info;
|
||||
};
|
||||
struct msm_cpp_pop_stream_info_t {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
int32_t frame_id;
|
||||
uint32_t identity;
|
||||
};
|
||||
struct cpp_hw_info {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t cpp_hw_version;
|
||||
uint32_t cpp_hw_caps;
|
||||
unsigned long freq_tbl[MAX_FREQ_TBL];
|
||||
uint32_t freq_tbl_count;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_vpe_frame_strip_info {
|
||||
uint32_t src_w;
|
||||
uint32_t src_h;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t dst_w;
|
||||
uint32_t dst_h;
|
||||
uint32_t src_x;
|
||||
uint32_t src_y;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t phase_step_x;
|
||||
uint32_t phase_step_y;
|
||||
uint32_t phase_init_x;
|
||||
uint32_t phase_init_y;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_vpe_buffer_info_t {
|
||||
int32_t fd;
|
||||
uint32_t index;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t offset;
|
||||
uint8_t native_buff;
|
||||
uint8_t processed_divert;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_vpe_stream_buff_info_t {
|
||||
uint32_t identity;
|
||||
uint32_t num_buffs;
|
||||
struct msm_vpe_buffer_info_t * buffer_info;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
struct msm_vpe_frame_info_t {
|
||||
int32_t frame_id;
|
||||
struct timeval timestamp;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t inst_id;
|
||||
uint32_t identity;
|
||||
uint32_t client_id;
|
||||
enum msm_vpe_frame_type frame_type;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_vpe_frame_strip_info strip_info;
|
||||
unsigned long src_fd;
|
||||
unsigned long dst_fd;
|
||||
struct ion_handle * src_ion_handle;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct ion_handle * dest_ion_handle;
|
||||
unsigned long src_phyaddr;
|
||||
unsigned long dest_phyaddr;
|
||||
unsigned long src_chroma_plane_offset;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
unsigned long dest_chroma_plane_offset;
|
||||
struct timeval in_time, out_time;
|
||||
void * cookie;
|
||||
struct msm_vpe_buffer_info_t input_buffer_info;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct msm_vpe_buffer_info_t output_buffer_info;
|
||||
};
|
||||
struct msm_pproc_queue_buf_info {
|
||||
struct msm_buf_mngr_info buff_mgr_info;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint8_t is_buf_dirty;
|
||||
};
|
||||
struct msm_cpp_clock_settings_t {
|
||||
unsigned long clock_rate;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint64_t avg;
|
||||
uint64_t inst;
|
||||
};
|
||||
#define VIDIOC_MSM_CPP_CFG _IOWR('V', BASE_VIDIOC_PRIVATE, struct msm_camera_v4l2_ioctl_t)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VIDIOC_MSM_CPP_GET_EVENTPAYLOAD _IOWR('V', BASE_VIDIOC_PRIVATE + 1, struct msm_camera_v4l2_ioctl_t)
|
||||
#define VIDIOC_MSM_CPP_GET_INST_INFO _IOWR('V', BASE_VIDIOC_PRIVATE + 2, struct msm_camera_v4l2_ioctl_t)
|
||||
#define VIDIOC_MSM_CPP_LOAD_FIRMWARE _IOWR('V', BASE_VIDIOC_PRIVATE + 3, struct msm_camera_v4l2_ioctl_t)
|
||||
#define VIDIOC_MSM_CPP_GET_HW_INFO _IOWR('V', BASE_VIDIOC_PRIVATE + 4, struct msm_camera_v4l2_ioctl_t)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VIDIOC_MSM_CPP_FLUSH_QUEUE _IOWR('V', BASE_VIDIOC_PRIVATE + 5, struct msm_camera_v4l2_ioctl_t)
|
||||
#define VIDIOC_MSM_CPP_ENQUEUE_STREAM_BUFF_INFO _IOWR('V', BASE_VIDIOC_PRIVATE + 6, struct msm_camera_v4l2_ioctl_t)
|
||||
#define VIDIOC_MSM_CPP_DEQUEUE_STREAM_BUFF_INFO _IOWR('V', BASE_VIDIOC_PRIVATE + 7, struct msm_camera_v4l2_ioctl_t)
|
||||
#define VIDIOC_MSM_VPE_CFG _IOWR('V', BASE_VIDIOC_PRIVATE + 8, struct msm_camera_v4l2_ioctl_t)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VIDIOC_MSM_VPE_TRANSACTION_SETUP _IOWR('V', BASE_VIDIOC_PRIVATE + 9, struct msm_camera_v4l2_ioctl_t)
|
||||
#define VIDIOC_MSM_VPE_GET_EVENTPAYLOAD _IOWR('V', BASE_VIDIOC_PRIVATE + 10, struct msm_camera_v4l2_ioctl_t)
|
||||
#define VIDIOC_MSM_VPE_GET_INST_INFO _IOWR('V', BASE_VIDIOC_PRIVATE + 11, struct msm_camera_v4l2_ioctl_t)
|
||||
#define VIDIOC_MSM_VPE_ENQUEUE_STREAM_BUFF_INFO _IOWR('V', BASE_VIDIOC_PRIVATE + 12, struct msm_camera_v4l2_ioctl_t)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VIDIOC_MSM_VPE_DEQUEUE_STREAM_BUFF_INFO _IOWR('V', BASE_VIDIOC_PRIVATE + 13, struct msm_camera_v4l2_ioctl_t)
|
||||
#define VIDIOC_MSM_CPP_QUEUE_BUF _IOWR('V', BASE_VIDIOC_PRIVATE + 14, struct msm_camera_v4l2_ioctl_t)
|
||||
#define VIDIOC_MSM_CPP_APPEND_STREAM_BUFF_INFO _IOWR('V', BASE_VIDIOC_PRIVATE + 15, struct msm_camera_v4l2_ioctl_t)
|
||||
#define VIDIOC_MSM_CPP_SET_CLOCK _IOWR('V', BASE_VIDIOC_PRIVATE + 16, struct msm_camera_v4l2_ioctl_t)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VIDIOC_MSM_CPP_POP_STREAM_BUFFER _IOWR('V', BASE_VIDIOC_PRIVATE + 17, struct msm_camera_v4l2_ioctl_t)
|
||||
#define VIDIOC_MSM_CPP_IOMMU_ATTACH _IOWR('V', BASE_VIDIOC_PRIVATE + 18, struct msm_camera_v4l2_ioctl_t)
|
||||
#define VIDIOC_MSM_CPP_IOMMU_DETACH _IOWR('V', BASE_VIDIOC_PRIVATE + 19, struct msm_camera_v4l2_ioctl_t)
|
||||
#define VIDIOC_MSM_CPP_DELETE_STREAM_BUFF _IOWR('V', BASE_VIDIOC_PRIVATE + 20, struct msm_camera_v4l2_ioctl_t)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define V4L2_EVENT_CPP_FRAME_DONE (V4L2_EVENT_PRIVATE_START + 0)
|
||||
#define V4L2_EVENT_VPE_FRAME_DONE (V4L2_EVENT_PRIVATE_START + 1)
|
||||
struct msm_camera_v4l2_ioctl_t {
|
||||
uint32_t id;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
size_t len;
|
||||
int32_t trans_code;
|
||||
void * ioctl_ptr;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
|
||||
66
kernel-headers/sound/voice_svc.h
Normal file
66
kernel-headers/sound/voice_svc.h
Normal file
@@ -0,0 +1,66 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef __VOICE_SVC_H__
|
||||
#define __VOICE_SVC_H__
|
||||
#include <linux/types.h>
|
||||
#include <linux/ioctl.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define VOICE_SVC_DRIVER_NAME "voice_svc"
|
||||
#define VOICE_SVC_MVM_STR "MVM"
|
||||
#define VOICE_SVC_CVS_STR "CVS"
|
||||
#define MAX_APR_SERVICE_NAME_LEN 64
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSG_REGISTER 0x1
|
||||
#define MSG_REQUEST 0x2
|
||||
#define MSG_RESPONSE 0x3
|
||||
struct voice_svc_write_msg {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 msg_type;
|
||||
__u8 payload[0];
|
||||
};
|
||||
struct voice_svc_register {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
char svc_name[MAX_APR_SERVICE_NAME_LEN];
|
||||
__u32 src_port;
|
||||
__u8 reg_flag;
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct voice_svc_cmd_response {
|
||||
__u32 src_port;
|
||||
__u32 dest_port;
|
||||
__u32 token;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 opcode;
|
||||
__u32 payload_size;
|
||||
__u8 payload[0];
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
struct voice_svc_cmd_request {
|
||||
char svc_name[MAX_APR_SERVICE_NAME_LEN];
|
||||
__u32 src_port;
|
||||
__u32 dest_port;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
__u32 token;
|
||||
__u32 opcode;
|
||||
__u32 payload_size;
|
||||
__u8 payload[0];
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
};
|
||||
#endif
|
||||
|
||||
357
kernel-headers/video/msm_hdmi_modes.h
Normal file
357
kernel-headers/video/msm_hdmi_modes.h
Normal file
@@ -0,0 +1,357 @@
|
||||
/****************************************************************************
|
||||
****************************************************************************
|
||||
***
|
||||
*** This header was automatically generated from a Linux kernel header
|
||||
*** of the same name, to make information necessary for userspace to
|
||||
*** call into the kernel available to libc. It contains only constants,
|
||||
*** structures, and macros generated from the original header, and thus,
|
||||
*** contains no copyrightable information.
|
||||
***
|
||||
*** To edit the content of this header, modify the corresponding
|
||||
*** source file (e.g. under external/kernel-headers/original/) then
|
||||
*** run bionic/libc/kernel/tools/update_all.py
|
||||
***
|
||||
*** Any manual change here will be lost the next time this script will
|
||||
*** be run. You've been warned!
|
||||
***
|
||||
****************************************************************************
|
||||
****************************************************************************/
|
||||
#ifndef _MSM_HDMI_MODES_H__
|
||||
#define _MSM_HDMI_MODES_H__
|
||||
#include <linux/types.h>
|
||||
#include <linux/errno.h>
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_HDMI_RGB_888_24BPP_FORMAT BIT(0)
|
||||
#define MSM_HDMI_YUV_420_12BPP_FORMAT BIT(1)
|
||||
enum aspect_ratio {
|
||||
HDMI_RES_AR_INVALID,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
HDMI_RES_AR_4_3,
|
||||
HDMI_RES_AR_5_4,
|
||||
HDMI_RES_AR_16_9,
|
||||
HDMI_RES_AR_16_10,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
HDMI_RES_AR_64_27,
|
||||
HDMI_RES_AR_256_135,
|
||||
HDMI_RES_AR_MAX,
|
||||
};
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
enum msm_hdmi_s3d_mode {
|
||||
HDMI_S3D_NONE,
|
||||
HDMI_S3D_SIDE_BY_SIDE,
|
||||
HDMI_S3D_TOP_AND_BOTTOM,
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
HDMI_S3D_FRAME_PACKING,
|
||||
HDMI_S3D_MAX,
|
||||
};
|
||||
struct msm_hdmi_mode_timing_info {
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t video_format;
|
||||
uint32_t active_h;
|
||||
uint32_t front_porch_h;
|
||||
uint32_t pulse_width_h;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t back_porch_h;
|
||||
uint32_t active_low_h;
|
||||
uint32_t active_v;
|
||||
uint32_t front_porch_v;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t pulse_width_v;
|
||||
uint32_t back_porch_v;
|
||||
uint32_t active_low_v;
|
||||
uint32_t pixel_freq;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t refresh_rate;
|
||||
uint32_t interlaced;
|
||||
uint32_t supported;
|
||||
enum aspect_ratio ar;
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
uint32_t pixel_formats;
|
||||
};
|
||||
#define MSM_HDMI_INIT_RES_PAGE 1
|
||||
#define MSM_HDMI_MODES_CEA (1 << 0)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_HDMI_MODES_XTND (1 << 1)
|
||||
#define MSM_HDMI_MODES_DVI (1 << 2)
|
||||
#define MSM_HDMI_MODES_ALL (MSM_HDMI_MODES_CEA | MSM_HDMI_MODES_XTND | MSM_HDMI_MODES_DVI)
|
||||
#define HDMI_VFRMT_UNKNOWN 0
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_640x480p60_4_3 1
|
||||
#define HDMI_VFRMT_720x480p60_4_3 2
|
||||
#define HDMI_VFRMT_720x480p60_16_9 3
|
||||
#define HDMI_VFRMT_1280x720p60_16_9 4
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_1920x1080i60_16_9 5
|
||||
#define HDMI_VFRMT_720x480i60_4_3 6
|
||||
#define HDMI_VFRMT_1440x480i60_4_3 HDMI_VFRMT_720x480i60_4_3
|
||||
#define HDMI_VFRMT_720x480i60_16_9 7
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_1440x480i60_16_9 HDMI_VFRMT_720x480i60_16_9
|
||||
#define HDMI_VFRMT_720x240p60_4_3 8
|
||||
#define HDMI_VFRMT_1440x240p60_4_3 HDMI_VFRMT_720x240p60_4_3
|
||||
#define HDMI_VFRMT_720x240p60_16_9 9
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_1440x240p60_16_9 HDMI_VFRMT_720x240p60_16_9
|
||||
#define HDMI_VFRMT_2880x480i60_4_3 10
|
||||
#define HDMI_VFRMT_2880x480i60_16_9 11
|
||||
#define HDMI_VFRMT_2880x240p60_4_3 12
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_2880x240p60_16_9 13
|
||||
#define HDMI_VFRMT_1440x480p60_4_3 14
|
||||
#define HDMI_VFRMT_1440x480p60_16_9 15
|
||||
#define HDMI_VFRMT_1920x1080p60_16_9 16
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_720x576p50_4_3 17
|
||||
#define HDMI_VFRMT_720x576p50_16_9 18
|
||||
#define HDMI_VFRMT_1280x720p50_16_9 19
|
||||
#define HDMI_VFRMT_1920x1080i50_16_9 20
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_720x576i50_4_3 21
|
||||
#define HDMI_VFRMT_1440x576i50_4_3 HDMI_VFRMT_720x576i50_4_3
|
||||
#define HDMI_VFRMT_720x576i50_16_9 22
|
||||
#define HDMI_VFRMT_1440x576i50_16_9 HDMI_VFRMT_720x576i50_16_9
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_720x288p50_4_3 23
|
||||
#define HDMI_VFRMT_1440x288p50_4_3 HDMI_VFRMT_720x288p50_4_3
|
||||
#define HDMI_VFRMT_720x288p50_16_9 24
|
||||
#define HDMI_VFRMT_1440x288p50_16_9 HDMI_VFRMT_720x288p50_16_9
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_2880x576i50_4_3 25
|
||||
#define HDMI_VFRMT_2880x576i50_16_9 26
|
||||
#define HDMI_VFRMT_2880x288p50_4_3 27
|
||||
#define HDMI_VFRMT_2880x288p50_16_9 28
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_1440x576p50_4_3 29
|
||||
#define HDMI_VFRMT_1440x576p50_16_9 30
|
||||
#define HDMI_VFRMT_1920x1080p50_16_9 31
|
||||
#define HDMI_VFRMT_1920x1080p24_16_9 32
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_1920x1080p25_16_9 33
|
||||
#define HDMI_VFRMT_1920x1080p30_16_9 34
|
||||
#define HDMI_VFRMT_2880x480p60_4_3 35
|
||||
#define HDMI_VFRMT_2880x480p60_16_9 36
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_2880x576p50_4_3 37
|
||||
#define HDMI_VFRMT_2880x576p50_16_9 38
|
||||
#define HDMI_VFRMT_1920x1250i50_16_9 39
|
||||
#define HDMI_VFRMT_1920x1080i100_16_9 40
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_1280x720p100_16_9 41
|
||||
#define HDMI_VFRMT_720x576p100_4_3 42
|
||||
#define HDMI_VFRMT_720x576p100_16_9 43
|
||||
#define HDMI_VFRMT_720x576i100_4_3 44
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_1440x576i100_4_3 HDMI_VFRMT_720x576i100_4_3
|
||||
#define HDMI_VFRMT_720x576i100_16_9 45
|
||||
#define HDMI_VFRMT_1440x576i100_16_9 HDMI_VFRMT_720x576i100_16_9
|
||||
#define HDMI_VFRMT_1920x1080i120_16_9 46
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_1280x720p120_16_9 47
|
||||
#define HDMI_VFRMT_720x480p120_4_3 48
|
||||
#define HDMI_VFRMT_720x480p120_16_9 49
|
||||
#define HDMI_VFRMT_720x480i120_4_3 50
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_1440x480i120_4_3 HDMI_VFRMT_720x480i120_4_3
|
||||
#define HDMI_VFRMT_720x480i120_16_9 51
|
||||
#define HDMI_VFRMT_1440x480i120_16_9 HDMI_VFRMT_720x480i120_16_9
|
||||
#define HDMI_VFRMT_720x576p200_4_3 52
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_720x576p200_16_9 53
|
||||
#define HDMI_VFRMT_720x576i200_4_3 54
|
||||
#define HDMI_VFRMT_1440x576i200_4_3 HDMI_VFRMT_720x576i200_4_3
|
||||
#define HDMI_VFRMT_720x576i200_16_9 55
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_1440x576i200_16_9 HDMI_VFRMT_720x576i200_16_9
|
||||
#define HDMI_VFRMT_720x480p240_4_3 56
|
||||
#define HDMI_VFRMT_720x480p240_16_9 57
|
||||
#define HDMI_VFRMT_720x480i240_4_3 58
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_1440x480i240_4_3 HDMI_VFRMT_720x480i240_4_3
|
||||
#define HDMI_VFRMT_720x480i240_16_9 59
|
||||
#define HDMI_VFRMT_1440x480i240_16_9 HDMI_VFRMT_720x480i240_16_9
|
||||
#define HDMI_VFRMT_1280x720p24_16_9 60
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_1280x720p25_16_9 61
|
||||
#define HDMI_VFRMT_1280x720p30_16_9 62
|
||||
#define HDMI_VFRMT_1920x1080p120_16_9 63
|
||||
#define HDMI_VFRMT_1920x1080p100_16_9 64
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_1280x720p24_64_27 65
|
||||
#define HDMI_VFRMT_1280x720p25_64_27 66
|
||||
#define HDMI_VFRMT_1280x720p30_64_27 67
|
||||
#define HDMI_VFRMT_1280x720p50_64_27 68
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_1280x720p60_64_27 69
|
||||
#define HDMI_VFRMT_1280x720p100_64_27 70
|
||||
#define HDMI_VFRMT_1280x720p120_64_27 71
|
||||
#define HDMI_VFRMT_1920x1080p24_64_27 72
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_1920x1080p25_64_27 73
|
||||
#define HDMI_VFRMT_1920x1080p30_64_27 74
|
||||
#define HDMI_VFRMT_1920x1080p50_64_27 75
|
||||
#define HDMI_VFRMT_1920x1080p60_64_27 76
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_1920x1080p100_64_27 77
|
||||
#define HDMI_VFRMT_1920x1080p120_64_27 78
|
||||
#define HDMI_VFRMT_1680x720p24_64_27 79
|
||||
#define HDMI_VFRMT_1680x720p25_64_27 80
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_1680x720p30_64_27 81
|
||||
#define HDMI_VFRMT_1680x720p50_64_27 82
|
||||
#define HDMI_VFRMT_1680x720p60_64_27 83
|
||||
#define HDMI_VFRMT_1680x720p100_64_27 84
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_1680x720p120_64_27 85
|
||||
#define HDMI_VFRMT_2560x1080p24_64_27 86
|
||||
#define HDMI_VFRMT_2560x1080p25_64_27 87
|
||||
#define HDMI_VFRMT_2560x1080p30_64_27 88
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_2560x1080p50_64_27 89
|
||||
#define HDMI_VFRMT_2560x1080p60_64_27 90
|
||||
#define HDMI_VFRMT_2560x1080p100_64_27 91
|
||||
#define HDMI_VFRMT_2560x1080p120_64_27 92
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_3840x2160p24_16_9 93
|
||||
#define HDMI_VFRMT_3840x2160p25_16_9 94
|
||||
#define HDMI_VFRMT_3840x2160p30_16_9 95
|
||||
#define HDMI_VFRMT_3840x2160p50_16_9 96
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_3840x2160p60_16_9 97
|
||||
#define HDMI_VFRMT_4096x2160p24_256_135 98
|
||||
#define HDMI_VFRMT_4096x2160p25_256_135 99
|
||||
#define HDMI_VFRMT_4096x2160p30_256_135 100
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_4096x2160p50_256_135 101
|
||||
#define HDMI_VFRMT_4096x2160p60_256_135 102
|
||||
#define HDMI_VFRMT_3840x2160p24_64_27 103
|
||||
#define HDMI_VFRMT_3840x2160p25_64_27 104
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_3840x2160p30_64_27 105
|
||||
#define HDMI_VFRMT_3840x2160p50_64_27 106
|
||||
#define HDMI_VFRMT_3840x2160p60_64_27 107
|
||||
#define HDMI_VFRMT_END 127
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define EVFRMT_OFF(x) (HDMI_VFRMT_END + x)
|
||||
#define HDMI_EVFRMT_3840x2160p30_16_9 EVFRMT_OFF(1)
|
||||
#define HDMI_EVFRMT_3840x2160p25_16_9 EVFRMT_OFF(2)
|
||||
#define HDMI_EVFRMT_3840x2160p24_16_9 EVFRMT_OFF(3)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_EVFRMT_4096x2160p24_16_9 EVFRMT_OFF(4)
|
||||
#define HDMI_EVFRMT_END HDMI_EVFRMT_4096x2160p24_16_9
|
||||
#define WQXGA_OFF(x) (HDMI_EVFRMT_END + x)
|
||||
#define HDMI_VFRMT_2560x1600p60_16_9 WQXGA_OFF(1)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_WQXGAFRMT_END HDMI_VFRMT_2560x1600p60_16_9
|
||||
#define WXGA_OFF(x) (HDMI_WQXGAFRMT_END + x)
|
||||
#define HDMI_VFRMT_1280x800p60_16_10 WXGA_OFF(1)
|
||||
#define HDMI_VFRMT_1366x768p60_16_10 WXGA_OFF(2)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_WXGAFRMT_END HDMI_VFRMT_1366x768p60_16_10
|
||||
#define ETI_OFF(x) (HDMI_WXGAFRMT_END + x)
|
||||
#define HDMI_VFRMT_800x600p60_4_3 ETI_OFF(1)
|
||||
#define ETI_VFRMT_END HDMI_VFRMT_800x600p60_4_3
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ETII_OFF(x) (ETI_VFRMT_END + x)
|
||||
#define HDMI_VFRMT_1024x768p60_4_3 ETII_OFF(1)
|
||||
#define HDMI_VFRMT_1280x1024p60_5_4 ETII_OFF(2)
|
||||
#define ETII_VFRMT_END HDMI_VFRMT_1280x1024p60_5_4
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define ETIII_OFF(x) (ETII_VFRMT_END + x)
|
||||
#define HDMI_VFRMT_848x480p60_16_9 ETIII_OFF(1)
|
||||
#define HDMI_VFRMT_1280x960p60_4_3 ETIII_OFF(2)
|
||||
#define HDMI_VFRMT_1360x768p60_16_9 ETIII_OFF(3)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_1440x900p60_16_10 ETIII_OFF(4)
|
||||
#define HDMI_VFRMT_1400x1050p60_4_3 ETIII_OFF(5)
|
||||
#define HDMI_VFRMT_1680x1050p60_16_10 ETIII_OFF(6)
|
||||
#define HDMI_VFRMT_1600x1200p60_4_3 ETIII_OFF(7)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_1920x1200p60_16_10 ETIII_OFF(8)
|
||||
#define ETIII_VFRMT_END HDMI_VFRMT_1920x1200p60_16_10
|
||||
#define RESERVE_OFF(x) (ETIII_VFRMT_END + x)
|
||||
#define HDMI_VFRMT_RESERVE1 RESERVE_OFF(1)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_RESERVE2 RESERVE_OFF(2)
|
||||
#define HDMI_VFRMT_RESERVE3 RESERVE_OFF(3)
|
||||
#define HDMI_VFRMT_RESERVE4 RESERVE_OFF(4)
|
||||
#define HDMI_VFRMT_RESERVE5 RESERVE_OFF(5)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_RESERVE6 RESERVE_OFF(6)
|
||||
#define HDMI_VFRMT_RESERVE7 RESERVE_OFF(7)
|
||||
#define HDMI_VFRMT_RESERVE8 RESERVE_OFF(8)
|
||||
#define RESERVE_VFRMT_END HDMI_VFRMT_RESERVE8
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_MAX (RESERVE_VFRMT_END + 1)
|
||||
#define VFRMT_NOT_SUPPORTED(VFRMT) { VFRMT, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, false, HDMI_RES_AR_INVALID }
|
||||
#define HDMI_VFRMT_640x480p60_4_3_TIMING { HDMI_VFRMT_640x480p60_4_3, 640, 16, 96, 48, true, 480, 10, 2, 33, true, 25200, 60000, false, true, HDMI_RES_AR_4_3, 0 }
|
||||
#define HDMI_VFRMT_720x480p60_4_3_TIMING { HDMI_VFRMT_720x480p60_4_3, 720, 16, 62, 60, true, 480, 9, 6, 30, true, 27027, 60000, false, true, HDMI_RES_AR_4_3, 0 }
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_720x480p60_16_9_TIMING { HDMI_VFRMT_720x480p60_16_9, 720, 16, 62, 60, true, 480, 9, 6, 30, true, 27027, 60000, false, true, HDMI_RES_AR_16_9, 0 }
|
||||
#define HDMI_VFRMT_1280x720p60_16_9_TIMING { HDMI_VFRMT_1280x720p60_16_9, 1280, 110, 40, 220, false, 720, 5, 5, 20, false, 74250, 60000, false, true, HDMI_RES_AR_16_9, 0 }
|
||||
#define HDMI_VFRMT_1920x1080i60_16_9_TIMING { HDMI_VFRMT_1920x1080i60_16_9, 1920, 88, 44, 148, false, 540, 2, 5, 5, false, 74250, 60000, false, true, HDMI_RES_AR_16_9, 0 }
|
||||
#define HDMI_VFRMT_1440x480i60_4_3_TIMING { HDMI_VFRMT_1440x480i60_4_3, 1440, 38, 124, 114, true, 240, 4, 3, 15, true, 27000, 60000, true, true, HDMI_RES_AR_4_3, 0 }
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_1440x480i60_16_9_TIMING { HDMI_VFRMT_1440x480i60_16_9, 1440, 38, 124, 114, true, 240, 4, 3, 15, true, 27000, 60000, true, true, HDMI_RES_AR_16_9, 0 }
|
||||
#define HDMI_VFRMT_1920x1080p60_16_9_TIMING { HDMI_VFRMT_1920x1080p60_16_9, 1920, 88, 44, 148, false, 1080, 4, 5, 36, false, 148500, 60000, false, true, HDMI_RES_AR_16_9, 0 }
|
||||
#define HDMI_VFRMT_720x576p50_4_3_TIMING { HDMI_VFRMT_720x576p50_4_3, 720, 12, 64, 68, true, 576, 5, 5, 39, true, 27000, 50000, false, true, HDMI_RES_AR_4_3, 0 }
|
||||
#define HDMI_VFRMT_720x576p50_16_9_TIMING { HDMI_VFRMT_720x576p50_16_9, 720, 12, 64, 68, true, 576, 5, 5, 39, true, 27000, 50000, false, true, HDMI_RES_AR_16_9, 0 }
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_1280x720p50_16_9_TIMING { HDMI_VFRMT_1280x720p50_16_9, 1280, 440, 40, 220, false, 720, 5, 5, 20, false, 74250, 50000, false, true, HDMI_RES_AR_16_9, 0 }
|
||||
#define HDMI_VFRMT_1440x576i50_4_3_TIMING { HDMI_VFRMT_1440x576i50_4_3, 1440, 24, 126, 138, true, 288, 2, 3, 19, true, 27000, 50000, true, true, HDMI_RES_AR_4_3, 0 }
|
||||
#define HDMI_VFRMT_1440x576i50_16_9_TIMING { HDMI_VFRMT_1440x576i50_16_9, 1440, 24, 126, 138, true, 288, 2, 3, 19, true, 27000, 50000, true, true, HDMI_RES_AR_16_9, 0 }
|
||||
#define HDMI_VFRMT_1920x1080p50_16_9_TIMING { HDMI_VFRMT_1920x1080p50_16_9, 1920, 528, 44, 148, false, 1080, 4, 5, 36, false, 148500, 50000, false, true, HDMI_RES_AR_16_9, 0 }
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_1920x1080p24_16_9_TIMING { HDMI_VFRMT_1920x1080p24_16_9, 1920, 638, 44, 148, false, 1080, 4, 5, 36, false, 74250, 24000, false, true, HDMI_RES_AR_16_9, 0 }
|
||||
#define HDMI_VFRMT_1920x1080p25_16_9_TIMING { HDMI_VFRMT_1920x1080p25_16_9, 1920, 528, 44, 148, false, 1080, 4, 5, 36, false, 74250, 25000, false, true, HDMI_RES_AR_16_9, 0 }
|
||||
#define HDMI_VFRMT_1920x1080p30_16_9_TIMING { HDMI_VFRMT_1920x1080p30_16_9, 1920, 88, 44, 148, false, 1080, 4, 5, 36, false, 74250, 30000, false, true, HDMI_RES_AR_16_9, 0 }
|
||||
#define HDMI_VFRMT_1024x768p60_4_3_TIMING { HDMI_VFRMT_1024x768p60_4_3, 1024, 24, 136, 160, false, 768, 2, 6, 29, false, 65000, 60000, false, true, HDMI_RES_AR_4_3, 0 }
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_1280x1024p60_5_4_TIMING { HDMI_VFRMT_1280x1024p60_5_4, 1280, 48, 112, 248, false, 1024, 1, 3, 38, false, 108000, 60000, false, true, HDMI_RES_AR_5_4, 0 }
|
||||
#define HDMI_VFRMT_2560x1600p60_16_9_TIMING { HDMI_VFRMT_2560x1600p60_16_9, 2560, 48, 32, 80, false, 1600, 3, 6, 37, false, 268500, 60000, false, true, HDMI_RES_AR_16_9, 0 }
|
||||
#define HDMI_EVFRMT_3840x2160p30_16_9_TIMING { HDMI_EVFRMT_3840x2160p30_16_9, 3840, 176, 88, 296, false, 2160, 8, 10, 72, false, 297000, 30000, false, true, HDMI_RES_AR_16_9, 0 }
|
||||
#define HDMI_EVFRMT_3840x2160p25_16_9_TIMING { HDMI_EVFRMT_3840x2160p25_16_9, 3840, 1056, 88, 296, false, 2160, 8, 10, 72, false, 297000, 25000, false, true, HDMI_RES_AR_16_9, 0 }
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_EVFRMT_3840x2160p24_16_9_TIMING { HDMI_EVFRMT_3840x2160p24_16_9, 3840, 1276, 88, 296, false, 2160, 8, 10, 72, false, 297000, 24000, false, true, HDMI_RES_AR_16_9, 0 }
|
||||
#define HDMI_EVFRMT_4096x2160p24_16_9_TIMING { HDMI_EVFRMT_4096x2160p24_16_9, 4096, 1020, 88, 296, false, 2160, 8, 10, 72, false, 297000, 24000, false, true, HDMI_RES_AR_16_9, 0 }
|
||||
#define HDMI_VFRMT_800x600p60_4_3_TIMING { HDMI_VFRMT_800x600p60_4_3, 800, 40, 128, 88, false, 600, 1, 4, 23, false, 40000, 60000, false, true, HDMI_RES_AR_4_3, 0 }
|
||||
#define HDMI_VFRMT_848x480p60_16_9_TIMING { HDMI_VFRMT_848x480p60_16_9, 848, 16, 112, 112, false, 480, 6, 8, 23, false, 33750, 60000, false, true, HDMI_RES_AR_16_9, 0 }
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_1280x960p60_4_3_TIMING { HDMI_VFRMT_1280x960p60_4_3, 1280, 96, 112, 312, false, 960, 1, 3, 36, false, 108000, 60000, false, true, HDMI_RES_AR_4_3, 0 }
|
||||
#define HDMI_VFRMT_1360x768p60_16_9_TIMING { HDMI_VFRMT_1360x768p60_16_9, 1360, 64, 112, 256, false, 768, 3, 6, 18, false, 85500, 60000, false, true, HDMI_RES_AR_16_9, 0 }
|
||||
#define HDMI_VFRMT_1440x900p60_16_10_TIMING { HDMI_VFRMT_1440x900p60_16_10, 1440, 48, 32, 80, false, 900, 3, 6, 17, true, 88750, 60000, false, true, HDMI_RES_AR_16_10, 0 }
|
||||
#define HDMI_VFRMT_1400x1050p60_4_3_TIMING { HDMI_VFRMT_1400x1050p60_4_3, 1400, 48, 32, 80, false, 1050, 3, 4, 23, true, 101000, 60000, false, true, HDMI_RES_AR_4_3, 0 }
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_1680x1050p60_16_10_TIMING { HDMI_VFRMT_1680x1050p60_16_10, 1680, 48, 32, 80, false, 1050, 3, 6, 21, true, 119000, 60000, false, true, HDMI_RES_AR_16_10, 0 }
|
||||
#define HDMI_VFRMT_1600x1200p60_4_3_TIMING { HDMI_VFRMT_1600x1200p60_4_3, 1600, 64, 192, 304, false, 1200, 1, 3, 46, false, 162000, 60000, false, true, HDMI_RES_AR_4_3, 0 }
|
||||
#define HDMI_VFRMT_1920x1200p60_16_10_TIMING { HDMI_VFRMT_1920x1200p60_16_10, 1920, 48, 32, 80, false, 1200, 3, 6, 26, true, 154000, 60000, false, true, HDMI_RES_AR_16_10, 0 }
|
||||
#define HDMI_VFRMT_1366x768p60_16_10_TIMING { HDMI_VFRMT_1366x768p60_16_10, 1366, 70, 143, 213, false, 768, 3, 3, 24, false, 85500, 60000, false, true, HDMI_RES_AR_16_10, 0 }
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_1280x800p60_16_10_TIMING { HDMI_VFRMT_1280x800p60_16_10, 1280, 72, 128, 200, true, 800, 3, 6, 22, false, 83500, 60000, false, true, HDMI_RES_AR_16_10, 0 }
|
||||
#define HDMI_VFRMT_3840x2160p24_16_9_TIMING { HDMI_VFRMT_3840x2160p24_16_9, 3840, 1276, 88, 296, false, 2160, 8, 10, 72, false, 297000, 24000, false, true, HDMI_RES_AR_16_9, 0 }
|
||||
#define HDMI_VFRMT_3840x2160p25_16_9_TIMING { HDMI_VFRMT_3840x2160p25_16_9, 3840, 1056, 88, 296, false, 2160, 8, 10, 72, false, 297000, 25000, false, true, HDMI_RES_AR_16_9, 0 }
|
||||
#define HDMI_VFRMT_3840x2160p30_16_9_TIMING { HDMI_VFRMT_3840x2160p30_16_9, 3840, 176, 88, 296, false, 2160, 8, 10, 72, false, 297000, 30000, false, true, HDMI_RES_AR_16_9, 0 }
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_3840x2160p50_16_9_TIMING { HDMI_VFRMT_3840x2160p50_16_9, 3840, 1056, 88, 296, false, 2160, 8, 10, 72, false, 594000, 50000, false, true, HDMI_RES_AR_16_9, 0 }
|
||||
#define HDMI_VFRMT_3840x2160p60_16_9_TIMING { HDMI_VFRMT_3840x2160p60_16_9, 3840, 176, 88, 296, false, 2160, 8, 10, 72, false, 594000, 60000, false, true, HDMI_RES_AR_16_9, 0 }
|
||||
#define HDMI_VFRMT_4096x2160p24_256_135_TIMING { HDMI_VFRMT_4096x2160p24_256_135, 4096, 1020, 88, 296, false, 2160, 8, 10, 72, false, 297000, 24000, false, true, HDMI_RES_AR_256_135, 0 }
|
||||
#define HDMI_VFRMT_4096x2160p25_256_135_TIMING { HDMI_VFRMT_4096x2160p25_256_135, 4096, 968, 88, 128, false, 2160, 8, 10, 72, false, 297000, 25000, false, true, HDMI_RES_AR_256_135, 0 }
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_4096x2160p30_256_135_TIMING { HDMI_VFRMT_4096x2160p30_256_135, 4096, 88, 88, 128, false, 2160, 8, 10, 72, false, 297000, 30000, false, true, HDMI_RES_AR_256_135, 0 }
|
||||
#define HDMI_VFRMT_4096x2160p50_256_135_TIMING { HDMI_VFRMT_4096x2160p50_256_135, 4096, 968, 88, 128, false, 2160, 8, 10, 72, false, 594000, 50000, false, true, HDMI_RES_AR_256_135, 0 }
|
||||
#define HDMI_VFRMT_4096x2160p60_256_135_TIMING { HDMI_VFRMT_4096x2160p60_256_135, 4096, 88, 88, 128, false, 2160, 8, 10, 72, false, 594000, 60000, false, true, HDMI_RES_AR_256_135, 0 }
|
||||
#define HDMI_VFRMT_3840x2160p24_64_27_TIMING { HDMI_VFRMT_3840x2160p24_64_27, 3840, 1276, 88, 296, false, 2160, 8, 10, 72, false, 297000, 24000, false, true, HDMI_RES_AR_64_27, 0 }
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define HDMI_VFRMT_3840x2160p25_64_27_TIMING { HDMI_VFRMT_3840x2160p25_64_27, 3840, 1056, 88, 296, false, 2160, 8, 10, 72, false, 297000, 25000, false, true, HDMI_RES_AR_64_27, 0 }
|
||||
#define HDMI_VFRMT_3840x2160p30_64_27_TIMING { HDMI_VFRMT_3840x2160p30_64_27, 3840, 176, 88, 296, false, 2160, 8, 10, 72, false, 297000, 30000, false, true, HDMI_RES_AR_64_27, 0 }
|
||||
#define HDMI_VFRMT_3840x2160p50_64_27_TIMING { HDMI_VFRMT_3840x2160p50_64_27, 3840, 1056, 88, 296, false, 2160, 8, 10, 72, false, 594000, 50000, false, true, HDMI_RES_AR_64_27, 0 }
|
||||
#define HDMI_VFRMT_3840x2160p60_64_27_TIMING { HDMI_VFRMT_3840x2160p60_64_27, 3840, 176, 88, 296, false, 2160, 8, 10, 72, false, 594000, 60000, false, true, HDMI_RES_AR_64_27, 0 }
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#define MSM_HDMI_MODES_SET_TIMING(LUT,MODE) do { struct msm_hdmi_mode_timing_info mode = MODE ##_TIMING; LUT[MODE] = mode; } while(0)
|
||||
#define MSM_HDMI_MODES_INIT_TIMINGS(__lut) do { unsigned int i; for(i = 0; i < HDMI_VFRMT_MAX; i ++) { struct msm_hdmi_mode_timing_info mode = VFRMT_NOT_SUPPORTED(i); (__lut)[i] = mode; } \
|
||||
} while(0)
|
||||
#define MSM_HDMI_MODES_SET_SUPP_TIMINGS(__lut,__type) do { if(__type & MSM_HDMI_MODES_CEA) { MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_640x480p60_4_3); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_720x480p60_4_3); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_720x480p60_16_9); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_1280x720p60_16_9); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_1920x1080i60_16_9); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_1440x480i60_4_3); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_1440x480i60_16_9); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_1920x1080p60_16_9); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_720x576p50_4_3); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_720x576p50_16_9); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_1280x720p50_16_9); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_1440x576i50_4_3); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_1440x576i50_16_9); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_1920x1080p50_16_9); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_1920x1080p24_16_9); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_1920x1080p25_16_9); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_1920x1080p30_16_9); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_3840x2160p24_16_9); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_3840x2160p25_16_9); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_3840x2160p30_16_9); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_3840x2160p50_16_9); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_3840x2160p60_16_9); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_4096x2160p24_256_135); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_4096x2160p25_256_135); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_4096x2160p30_256_135); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_4096x2160p50_256_135); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_4096x2160p60_256_135); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_3840x2160p24_64_27); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_3840x2160p25_64_27); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_3840x2160p30_64_27); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_3840x2160p50_64_27); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_3840x2160p60_64_27); } if(__type & MSM_HDMI_MODES_XTND) { MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_EVFRMT_3840x2160p30_16_9); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_EVFRMT_3840x2160p25_16_9); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_EVFRMT_3840x2160p24_16_9); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_EVFRMT_4096x2160p24_16_9); } if(__type & MSM_HDMI_MODES_DVI) { MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_1024x768p60_4_3); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_1280x1024p60_5_4); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_2560x1600p60_16_9); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_800x600p60_4_3); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_848x480p60_16_9); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_1280x960p60_4_3); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_1360x768p60_16_9); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_1440x900p60_16_10); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_1400x1050p60_4_3); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_1680x1050p60_16_10); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_1600x1200p60_4_3); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_1920x1200p60_16_10); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_1366x768p60_16_10); MSM_HDMI_MODES_SET_TIMING(__lut, HDMI_VFRMT_1280x800p60_16_10); } \
|
||||
} while(0)
|
||||
#define MSM_HDMI_MODES_GET_DETAILS(mode,MODE) do { struct msm_hdmi_mode_timing_info info = MODE ##_TIMING; * mode = info; } while(0)
|
||||
/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
|
||||
#endif
|
||||
|
||||
203
original-kernel-headers/linux/ion.h
Normal file
203
original-kernel-headers/linux/ion.h
Normal file
@@ -0,0 +1,203 @@
|
||||
/*
|
||||
* drivers/staging/android/uapi/ion.h
|
||||
*
|
||||
* Copyright (C) 2011 Google, Inc.
|
||||
*
|
||||
* This software is licensed under the terms of the GNU General Public
|
||||
* License version 2, as published by the Free Software Foundation, and
|
||||
* may be copied, distributed, and modified under those terms.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef _LINUX_ION_H
|
||||
#define _LINUX_ION_H
|
||||
|
||||
#include <linux/ioctl.h>
|
||||
#include <linux/types.h>
|
||||
|
||||
typedef int ion_user_handle_t;
|
||||
|
||||
/**
|
||||
* enum ion_heap_types - list of all possible types of heaps
|
||||
* @ION_HEAP_TYPE_SYSTEM: memory allocated via vmalloc
|
||||
* @ION_HEAP_TYPE_SYSTEM_CONTIG: memory allocated via kmalloc
|
||||
* @ION_HEAP_TYPE_CARVEOUT: memory allocated from a prereserved
|
||||
* carveout heap, allocations are physically
|
||||
* contiguous
|
||||
* @ION_HEAP_TYPE_DMA: memory allocated via DMA API
|
||||
* @ION_NUM_HEAPS: helper for iterating over heaps, a bit mask
|
||||
* is used to identify the heaps, so only 32
|
||||
* total heap types are supported
|
||||
*/
|
||||
enum ion_heap_type {
|
||||
ION_HEAP_TYPE_SYSTEM,
|
||||
ION_HEAP_TYPE_SYSTEM_CONTIG,
|
||||
ION_HEAP_TYPE_CARVEOUT,
|
||||
ION_HEAP_TYPE_CHUNK,
|
||||
ION_HEAP_TYPE_DMA,
|
||||
ION_HEAP_TYPE_CUSTOM, /*
|
||||
* must be last so device specific heaps always
|
||||
* are at the end of this enum
|
||||
*/
|
||||
ION_NUM_HEAPS = 16,
|
||||
};
|
||||
|
||||
#define ION_HEAP_SYSTEM_MASK (1 << ION_HEAP_TYPE_SYSTEM)
|
||||
#define ION_HEAP_SYSTEM_CONTIG_MASK (1 << ION_HEAP_TYPE_SYSTEM_CONTIG)
|
||||
#define ION_HEAP_CARVEOUT_MASK (1 << ION_HEAP_TYPE_CARVEOUT)
|
||||
#define ION_HEAP_TYPE_DMA_MASK (1 << ION_HEAP_TYPE_DMA)
|
||||
|
||||
#define ION_NUM_HEAP_IDS (sizeof(unsigned int) * 8)
|
||||
|
||||
/**
|
||||
* allocation flags - the lower 16 bits are used by core ion, the upper 16
|
||||
* bits are reserved for use by the heaps themselves.
|
||||
*/
|
||||
#define ION_FLAG_CACHED 1 /*
|
||||
* mappings of this buffer should be
|
||||
* cached, ion will do cache
|
||||
* maintenance when the buffer is
|
||||
* mapped for dma
|
||||
*/
|
||||
#define ION_FLAG_CACHED_NEEDS_SYNC 2 /*
|
||||
* mappings of this buffer will created
|
||||
* at mmap time, if this is set
|
||||
* caches must be managed
|
||||
* manually
|
||||
*/
|
||||
|
||||
/**
|
||||
* DOC: Ion Userspace API
|
||||
*
|
||||
* create a client by opening /dev/ion
|
||||
* most operations handled via following ioctls
|
||||
*
|
||||
*/
|
||||
|
||||
/**
|
||||
* struct ion_allocation_data - metadata passed from userspace for allocations
|
||||
* @len: size of the allocation
|
||||
* @align: required alignment of the allocation
|
||||
* @heap_id_mask: mask of heap ids to allocate from
|
||||
* @flags: flags passed to heap
|
||||
* @handle: pointer that will be populated with a cookie to use to
|
||||
* refer to this allocation
|
||||
*
|
||||
* Provided by userspace as an argument to the ioctl
|
||||
*/
|
||||
struct ion_allocation_data {
|
||||
size_t len;
|
||||
size_t align;
|
||||
unsigned int heap_id_mask;
|
||||
unsigned int flags;
|
||||
ion_user_handle_t handle;
|
||||
};
|
||||
|
||||
/**
|
||||
* struct ion_fd_data - metadata passed to/from userspace for a handle/fd pair
|
||||
* @handle: a handle
|
||||
* @fd: a file descriptor representing that handle
|
||||
*
|
||||
* For ION_IOC_SHARE or ION_IOC_MAP userspace populates the handle field with
|
||||
* the handle returned from ion alloc, and the kernel returns the file
|
||||
* descriptor to share or map in the fd field. For ION_IOC_IMPORT, userspace
|
||||
* provides the file descriptor and the kernel returns the handle.
|
||||
*/
|
||||
struct ion_fd_data {
|
||||
ion_user_handle_t handle;
|
||||
int fd;
|
||||
};
|
||||
|
||||
/**
|
||||
* struct ion_handle_data - a handle passed to/from the kernel
|
||||
* @handle: a handle
|
||||
*/
|
||||
struct ion_handle_data {
|
||||
ion_user_handle_t handle;
|
||||
};
|
||||
|
||||
/**
|
||||
* struct ion_custom_data - metadata passed to/from userspace for a custom ioctl
|
||||
* @cmd: the custom ioctl function to call
|
||||
* @arg: additional data to pass to the custom ioctl, typically a user
|
||||
* pointer to a predefined structure
|
||||
*
|
||||
* This works just like the regular cmd and arg fields of an ioctl.
|
||||
*/
|
||||
struct ion_custom_data {
|
||||
unsigned int cmd;
|
||||
unsigned long arg;
|
||||
};
|
||||
|
||||
#define ION_IOC_MAGIC 'I'
|
||||
|
||||
/**
|
||||
* DOC: ION_IOC_ALLOC - allocate memory
|
||||
*
|
||||
* Takes an ion_allocation_data struct and returns it with the handle field
|
||||
* populated with the opaque handle for the allocation.
|
||||
*/
|
||||
#define ION_IOC_ALLOC _IOWR(ION_IOC_MAGIC, 0, \
|
||||
struct ion_allocation_data)
|
||||
|
||||
/**
|
||||
* DOC: ION_IOC_FREE - free memory
|
||||
*
|
||||
* Takes an ion_handle_data struct and frees the handle.
|
||||
*/
|
||||
#define ION_IOC_FREE _IOWR(ION_IOC_MAGIC, 1, struct ion_handle_data)
|
||||
|
||||
/**
|
||||
* DOC: ION_IOC_MAP - get a file descriptor to mmap
|
||||
*
|
||||
* Takes an ion_fd_data struct with the handle field populated with a valid
|
||||
* opaque handle. Returns the struct with the fd field set to a file
|
||||
* descriptor open in the current address space. This file descriptor
|
||||
* can then be used as an argument to mmap.
|
||||
*/
|
||||
#define ION_IOC_MAP _IOWR(ION_IOC_MAGIC, 2, struct ion_fd_data)
|
||||
|
||||
/**
|
||||
* DOC: ION_IOC_SHARE - creates a file descriptor to use to share an allocation
|
||||
*
|
||||
* Takes an ion_fd_data struct with the handle field populated with a valid
|
||||
* opaque handle. Returns the struct with the fd field set to a file
|
||||
* descriptor open in the current address space. This file descriptor
|
||||
* can then be passed to another process. The corresponding opaque handle can
|
||||
* be retrieved via ION_IOC_IMPORT.
|
||||
*/
|
||||
#define ION_IOC_SHARE _IOWR(ION_IOC_MAGIC, 4, struct ion_fd_data)
|
||||
|
||||
/**
|
||||
* DOC: ION_IOC_IMPORT - imports a shared file descriptor
|
||||
*
|
||||
* Takes an ion_fd_data struct with the fd field populated with a valid file
|
||||
* descriptor obtained from ION_IOC_SHARE and returns the struct with the handle
|
||||
* filed set to the corresponding opaque handle.
|
||||
*/
|
||||
#define ION_IOC_IMPORT _IOWR(ION_IOC_MAGIC, 5, struct ion_fd_data)
|
||||
|
||||
/**
|
||||
* DOC: ION_IOC_SYNC - syncs a shared file descriptors to memory
|
||||
*
|
||||
* Deprecated in favor of using the dma_buf api's correctly (syncing
|
||||
* will happen automatically when the buffer is mapped to a device).
|
||||
* If necessary should be used after touching a cached buffer from the cpu,
|
||||
* this will make the buffer in memory coherent.
|
||||
*/
|
||||
#define ION_IOC_SYNC _IOWR(ION_IOC_MAGIC, 7, struct ion_fd_data)
|
||||
|
||||
/**
|
||||
* DOC: ION_IOC_CUSTOM - call architecture specific ion ioctl
|
||||
*
|
||||
* Takes the argument of the architecture specific ioctl to call and
|
||||
* passes appropriate userdata for that ioctl
|
||||
*/
|
||||
#define ION_IOC_CUSTOM _IOWR(ION_IOC_MAGIC, 6, struct ion_custom_data)
|
||||
|
||||
#endif /* _LINUX_ION_H */
|
||||
144
original-kernel-headers/linux/mdss_rotator.h
Normal file
144
original-kernel-headers/linux/mdss_rotator.h
Normal file
@@ -0,0 +1,144 @@
|
||||
#ifndef _MDSS_ROTATOR_H_
|
||||
#define _MDSS_ROTATOR_H_
|
||||
|
||||
#include <linux/msm_mdp_ext.h>
|
||||
|
||||
#define MDSS_ROTATOR_IOCTL_MAGIC 'w'
|
||||
|
||||
/* open a rotation session */
|
||||
#define MDSS_ROTATION_OPEN \
|
||||
_IOWR(MDSS_ROTATOR_IOCTL_MAGIC, 1, struct mdp_rotation_config *)
|
||||
|
||||
/* change the rotation session configuration */
|
||||
#define MDSS_ROTATION_CONFIG \
|
||||
_IOWR(MDSS_ROTATOR_IOCTL_MAGIC, 2, struct mdp_rotation_config *)
|
||||
|
||||
/* queue the rotation request */
|
||||
#define MDSS_ROTATION_REQUEST \
|
||||
_IOWR(MDSS_ROTATOR_IOCTL_MAGIC, 3, struct mdp_rotation_request *)
|
||||
|
||||
/* close a rotation session with the specified rotation session ID */
|
||||
#define MDSS_ROTATION_CLOSE _IOW(MDSS_ROTATOR_IOCTL_MAGIC, 4, unsigned int)
|
||||
|
||||
/**********************************************************************
|
||||
Rotation request flag
|
||||
**********************************************************************/
|
||||
/* no rotation flag, i.e. color space conversion */
|
||||
#define MDP_ROTATION_NOP 0x01
|
||||
|
||||
/* left/right flip */
|
||||
#define MDP_ROTATION_FLIP_LR 0x02
|
||||
|
||||
/* up/down flip */
|
||||
#define MDP_ROTATION_FLIP_UD 0x04
|
||||
|
||||
/* rotate 90 degree */
|
||||
#define MDP_ROTATION_90 0x08
|
||||
|
||||
/* rotate 180 degre */
|
||||
#define MDP_ROTATION_180 (MDP_ROTATION_FLIP_LR | MDP_ROTATION_FLIP_UD)
|
||||
|
||||
/* rotate 270 degree */
|
||||
#define MDP_ROTATION_270 (MDP_ROTATION_90 | MDP_ROTATION_180)
|
||||
|
||||
/* format is interlaced */
|
||||
#define MDP_ROTATION_DEINTERLACE 0x10
|
||||
|
||||
/* enable bwc */
|
||||
#define MDP_ROTATION_BWC_EN 0x40
|
||||
|
||||
/* secure data */
|
||||
#define MDP_ROTATION_SECURE 0x80
|
||||
|
||||
/**********************************************************************
|
||||
Rotation commit flag
|
||||
**********************************************************************/
|
||||
/* Flag indicates to validate the rotation request */
|
||||
#define MDSS_ROTATION_REQUEST_VALIDATE 0x01
|
||||
|
||||
#define MDP_ROTATION_REQUEST_VERSION_1_0 0x00010000
|
||||
|
||||
/*
|
||||
* Client can let driver to allocate the hardware resources with
|
||||
* this particular hw resource id.
|
||||
*/
|
||||
#define MDSS_ROTATION_HW_ANY 0xFFFFFFFF
|
||||
|
||||
/**********************************************************************
|
||||
configuration structures
|
||||
**********************************************************************/
|
||||
struct mdp_rotation_buf_info {
|
||||
uint32_t width;
|
||||
uint32_t height;
|
||||
uint32_t format;
|
||||
struct mult_factor comp_ratio;
|
||||
};
|
||||
|
||||
struct mdp_rotation_config {
|
||||
uint32_t version;
|
||||
uint32_t session_id;
|
||||
struct mdp_rotation_buf_info input;
|
||||
struct mdp_rotation_buf_info output;
|
||||
uint32_t frame_rate;
|
||||
uint32_t flags;
|
||||
uint32_t reserved[6];
|
||||
};
|
||||
|
||||
struct mdp_rotation_item {
|
||||
/* rotation request flag */
|
||||
uint32_t flags;
|
||||
|
||||
/* Source crop rectangle */
|
||||
struct mdp_rect src_rect;
|
||||
|
||||
/* Destination rectangle */
|
||||
struct mdp_rect dst_rect;
|
||||
|
||||
/* Input buffer for the request */
|
||||
struct mdp_layer_buffer input;
|
||||
|
||||
/* The output buffer for the request */
|
||||
struct mdp_layer_buffer output;
|
||||
|
||||
/*
|
||||
* DMA pipe selection for this request by client:
|
||||
* 0: DMA pipe 0
|
||||
* 1: DMA pipe 1
|
||||
* or MDSS_ROTATION_HW_ANY if client wants
|
||||
* driver to allocate any that is available
|
||||
*/
|
||||
uint32_t pipe_idx;
|
||||
|
||||
/*
|
||||
* Write-back block selection for this request by client:
|
||||
* 0: Write-back block 0
|
||||
* 1: Write-back block 1
|
||||
* or MDSS_ROTATION_HW_ANY if client wants
|
||||
* driver to allocate any that is available
|
||||
*/
|
||||
uint32_t wb_idx;
|
||||
|
||||
/* Which session ID is this request scheduled on */
|
||||
uint32_t session_id;
|
||||
|
||||
/* 32bits reserved value for future usage */
|
||||
uint32_t reserved[6];
|
||||
};
|
||||
|
||||
struct mdp_rotation_request {
|
||||
/* 32bit version indicates the request structure */
|
||||
uint32_t version;
|
||||
|
||||
uint32_t flags;
|
||||
|
||||
/* Number of rotation request items in the list */
|
||||
uint32_t count;
|
||||
|
||||
/* Pointer to a list of rotation request items */
|
||||
struct mdp_rotation_item *list;
|
||||
|
||||
/* 32bits reserved value for future usage*/
|
||||
uint32_t reserved[6];
|
||||
};
|
||||
|
||||
#endif /* _MDSS_ROTATOR_H_*/
|
||||
146
original-kernel-headers/linux/mfd/msm-adie-codec.h
Normal file
146
original-kernel-headers/linux/mfd/msm-adie-codec.h
Normal file
@@ -0,0 +1,146 @@
|
||||
#ifndef __UAPI_MFD_MSM_ADIE_CODEC_H
|
||||
#define __UAPI_MFD_MSM_ADIE_CODEC_H
|
||||
|
||||
#include <linux/types.h>
|
||||
|
||||
/* Value Represents a entry */
|
||||
#define ADIE_CODEC_ACTION_ENTRY 0x1
|
||||
/* Value representing a delay wait */
|
||||
#define ADIE_CODEC_ACTION_DELAY_WAIT 0x2
|
||||
/* Value representing a stage reached */
|
||||
#define ADIE_CODEC_ACTION_STAGE_REACHED 0x3
|
||||
|
||||
/* This value is the state after the client sets the path */
|
||||
#define ADIE_CODEC_PATH_OFF 0x0050
|
||||
|
||||
/* State to which client asks the drv to proceed to where it can
|
||||
* set up the clocks and 0-fill PCM buffers
|
||||
*/
|
||||
#define ADIE_CODEC_DIGITAL_READY 0x0100
|
||||
|
||||
/* State to which client asks the drv to proceed to where it can
|
||||
* start sending data after internal steady state delay
|
||||
*/
|
||||
#define ADIE_CODEC_DIGITAL_ANALOG_READY 0x1000
|
||||
|
||||
|
||||
/* Client Asks adie to switch off the Analog portion of the
|
||||
* the internal codec. After the use of this path
|
||||
*/
|
||||
#define ADIE_CODEC_ANALOG_OFF 0x0750
|
||||
|
||||
|
||||
/* Client Asks adie to switch off the digital portion of the
|
||||
* the internal codec. After switching off the analog portion.
|
||||
*
|
||||
* 0-fill PCM may or maynot be sent at this point
|
||||
*
|
||||
*/
|
||||
#define ADIE_CODEC_DIGITAL_OFF 0x0600
|
||||
|
||||
/* State to which client asks the drv to write the default values
|
||||
* to the registers */
|
||||
#define ADIE_CODEC_FLASH_IMAGE 0x0001
|
||||
|
||||
/* Path type */
|
||||
#define ADIE_CODEC_RX 0
|
||||
#define ADIE_CODEC_TX 1
|
||||
#define ADIE_CODEC_LB 3
|
||||
#define ADIE_CODEC_MAX 4
|
||||
|
||||
#define ADIE_CODEC_PACK_ENTRY(reg, mask, val) ((val)|(mask << 8)|(reg << 16))
|
||||
|
||||
#define ADIE_CODEC_UNPACK_ENTRY(packed, reg, mask, val) \
|
||||
do { \
|
||||
((reg) = ((packed >> 16) & (0xff))); \
|
||||
((mask) = ((packed >> 8) & (0xff))); \
|
||||
((val) = ((packed) & (0xff))); \
|
||||
} while (0);
|
||||
|
||||
struct adie_codec_action_unit {
|
||||
u32 type;
|
||||
u32 action;
|
||||
};
|
||||
|
||||
struct adie_codec_hwsetting_entry{
|
||||
struct adie_codec_action_unit *actions;
|
||||
u32 action_sz;
|
||||
u32 freq_plan;
|
||||
u32 osr;
|
||||
/* u32 VolMask;
|
||||
* u32 SidetoneMask;
|
||||
*/
|
||||
};
|
||||
|
||||
struct adie_codec_dev_profile {
|
||||
u32 path_type; /* RX or TX */
|
||||
u32 setting_sz;
|
||||
struct adie_codec_hwsetting_entry *settings;
|
||||
};
|
||||
|
||||
struct adie_codec_register {
|
||||
u8 reg;
|
||||
u8 mask;
|
||||
u8 val;
|
||||
};
|
||||
|
||||
struct adie_codec_register_image {
|
||||
struct adie_codec_register *regs;
|
||||
u32 img_sz;
|
||||
};
|
||||
|
||||
struct adie_codec_path;
|
||||
|
||||
struct adie_codec_anc_data {
|
||||
u32 size;
|
||||
u32 writes[];
|
||||
};
|
||||
|
||||
struct adie_codec_operations {
|
||||
int codec_id;
|
||||
int (*codec_open) (struct adie_codec_dev_profile *profile,
|
||||
struct adie_codec_path **path_pptr);
|
||||
int (*codec_close) (struct adie_codec_path *path_ptr);
|
||||
int (*codec_setpath) (struct adie_codec_path *path_ptr,
|
||||
u32 freq_plan, u32 osr);
|
||||
int (*codec_proceed_stage) (struct adie_codec_path *path_ptr,
|
||||
u32 state);
|
||||
u32 (*codec_freq_supported) (struct adie_codec_dev_profile *profile,
|
||||
u32 requested_freq);
|
||||
int (*codec_enable_sidetone) (struct adie_codec_path *rx_path_ptr,
|
||||
u32 enable);
|
||||
int (*codec_enable_anc) (struct adie_codec_path *rx_path_ptr,
|
||||
u32 enable, struct adie_codec_anc_data *calibration_writes);
|
||||
int (*codec_set_device_digital_volume) (
|
||||
struct adie_codec_path *path_ptr,
|
||||
u32 num_channels,
|
||||
u32 vol_percentage);
|
||||
|
||||
int (*codec_set_device_analog_volume) (struct adie_codec_path *path_ptr,
|
||||
u32 num_channels,
|
||||
u32 volume);
|
||||
int (*codec_set_master_mode) (struct adie_codec_path *path_ptr,
|
||||
u8 master);
|
||||
};
|
||||
|
||||
int adie_codec_register_codec_operations(
|
||||
const struct adie_codec_operations *codec_ops);
|
||||
int adie_codec_open(struct adie_codec_dev_profile *profile,
|
||||
struct adie_codec_path **path_pptr);
|
||||
int adie_codec_setpath(struct adie_codec_path *path_ptr,
|
||||
u32 freq_plan, u32 osr);
|
||||
int adie_codec_proceed_stage(struct adie_codec_path *path_ptr, u32 state);
|
||||
int adie_codec_close(struct adie_codec_path *path_ptr);
|
||||
u32 adie_codec_freq_supported(struct adie_codec_dev_profile *profile,
|
||||
u32 requested_freq);
|
||||
int adie_codec_enable_sidetone(struct adie_codec_path *rx_path_ptr, u32 enable);
|
||||
int adie_codec_enable_anc(struct adie_codec_path *rx_path_ptr, u32 enable,
|
||||
struct adie_codec_anc_data *calibration_writes);
|
||||
int adie_codec_set_device_digital_volume(struct adie_codec_path *path_ptr,
|
||||
u32 num_channels, u32 vol_percentage /* in percentage */);
|
||||
|
||||
int adie_codec_set_device_analog_volume(struct adie_codec_path *path_ptr,
|
||||
u32 num_channels, u32 volume /* in percentage */);
|
||||
|
||||
int adie_codec_set_master_mode(struct adie_codec_path *path_ptr, u8 master);
|
||||
#endif
|
||||
1399
original-kernel-headers/linux/mfd/wcd9xxx/wcd9320_registers.h
Normal file
1399
original-kernel-headers/linux/mfd/wcd9xxx/wcd9320_registers.h
Normal file
File diff suppressed because it is too large
Load Diff
344
original-kernel-headers/linux/mfd/wcd9xxx/wcd9xxx_registers.h
Normal file
344
original-kernel-headers/linux/mfd/wcd9xxx/wcd9xxx_registers.h
Normal file
@@ -0,0 +1,344 @@
|
||||
#ifndef WCD9XXX_CODEC_DIGITAL_H
|
||||
|
||||
#define WCD9XXX_CODEC_DIGITAL_H
|
||||
|
||||
#define WCD9XXX_A_CHIP_CTL (0x00)
|
||||
#define WCD9XXX_A_CHIP_CTL__POR (0x00000000)
|
||||
#define WCD9XXX_A_CHIP_STATUS (0x01)
|
||||
#define WCD9XXX_A_CHIP_STATUS__POR (0x00000000)
|
||||
#define WCD9XXX_A_CHIP_ID_BYTE_0 (0x04)
|
||||
#define WCD9XXX_A_CHIP_ID_BYTE_0__POR (0x00000000)
|
||||
#define WCD9XXX_A_CHIP_ID_BYTE_1 (0x05)
|
||||
#define WCD9XXX_A_CHIP_ID_BYTE_1__POR (0x00000000)
|
||||
#define WCD9XXX_A_CHIP_ID_BYTE_2 (0x06)
|
||||
#define WCD9XXX_A_CHIP_ID_BYTE_2__POR (0x00000000)
|
||||
#define WCD9XXX_A_CHIP_ID_BYTE_3 (0x07)
|
||||
#define WCD9XXX_A_CHIP_ID_BYTE_3__POR (0x00000001)
|
||||
#define WCD9XXX_A_CHIP_VERSION (0x08)
|
||||
#define WCD9XXX_A_CHIP_VERSION__POR (0x00000020)
|
||||
#define WCD9XXX_A_SB_VERSION (0x09)
|
||||
#define WCD9XXX_A_SB_VERSION__POR (0x00000010)
|
||||
#define WCD9XXX_A_SLAVE_ID_1 (0x0C)
|
||||
#define WCD9XXX_A_SLAVE_ID_1__POR (0x00000077)
|
||||
#define WCD9XXX_A_SLAVE_ID_2 (0x0D)
|
||||
#define WCD9XXX_A_SLAVE_ID_2__POR (0x00000066)
|
||||
#define WCD9XXX_A_SLAVE_ID_3 (0x0E)
|
||||
#define WCD9XXX_A_SLAVE_ID_3__POR (0x00000055)
|
||||
#define WCD9XXX_A_CDC_CTL (0x80)
|
||||
#define WCD9XXX_A_CDC_CTL__POR (0x00000000)
|
||||
#define WCD9XXX_A_LEAKAGE_CTL (0x88)
|
||||
#define WCD9XXX_A_LEAKAGE_CTL__POR (0x00000004)
|
||||
#define WCD9XXX_A_INTR_MODE (0x90)
|
||||
#define WCD9XXX_A_INTR_MASK0 (0x94)
|
||||
#define WCD9XXX_A_INTR_STATUS0 (0x98)
|
||||
#define WCD9XXX_A_INTR_CLEAR0 (0x9C)
|
||||
#define WCD9XXX_A_INTR_LEVEL0 (0xA0)
|
||||
#define WCD9XXX_A_INTR_LEVEL1 (0xA1)
|
||||
#define WCD9XXX_A_INTR_LEVEL2 (0xA2)
|
||||
#define WCD9XXX_A_RX_HPH_CNP_EN (0x1AB)
|
||||
#define WCD9XXX_A_RX_HPH_CNP_EN__POR (0x80)
|
||||
#define WCD9XXX_A_RX_HPH_CNP_EN (0x1AB)
|
||||
#define WCD9XXX_A_RX_HPH_CNP_EN__POR (0x80)
|
||||
#define WCD9XXX_A_BIAS_CENTRAL_BG_CTL (0x101)
|
||||
#define WCD9XXX_A_BIAS_CENTRAL_BG_CTL__POR (0x50)
|
||||
#define WCD9XXX_A_CLK_BUFF_EN1 (0x108)
|
||||
#define WCD9XXX_A_CLK_BUFF_EN1__POR (0x04)
|
||||
#define WCD9XXX_A_CLK_BUFF_EN2 (0x109)
|
||||
#define WCD9XXX_A_CLK_BUFF_EN2__POR (0x02)
|
||||
#define WCD9XXX_A_RX_COM_BIAS (0x1A2)
|
||||
#define WCD9XXX_A_RX_COM_BIAS__POR (0x00)
|
||||
#define WCD9XXX_A_RC_OSC_FREQ (0x1FA)
|
||||
#define WCD9XXX_A_RC_OSC_FREQ__POR (0x46)
|
||||
#define WCD9XXX_A_BIAS_OSC_BG_CTL (0x105)
|
||||
#define WCD9XXX_A_BIAS_OSC_BG_CTL__POR (0x16)
|
||||
#define WCD9XXX_A_RC_OSC_TEST (0x1FB)
|
||||
#define WCD9XXX_A_RC_OSC_TEST__POR (0x0A)
|
||||
#define WCD9XXX_A_CDC_CLK_MCLK_CTL (0x311)
|
||||
#define WCD9XXX_A_CDC_CLK_MCLK_CTL__POR (0x00)
|
||||
|
||||
#define WCD9XXX_A_CDC_MBHC_EN_CTL (0x3C0)
|
||||
#define WCD9XXX_A_CDC_MBHC_EN_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_FIR_B1_CFG (0x3C1)
|
||||
#define WCD9XXX_A_CDC_MBHC_FIR_B1_CFG__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_FIR_B2_CFG (0x3C2)
|
||||
#define WCD9XXX_A_CDC_MBHC_FIR_B2_CFG__POR (0x06)
|
||||
#define WCD9XXX_A_CDC_MBHC_TIMER_B1_CTL (0x3C3)
|
||||
#define WCD9XXX_A_CDC_MBHC_TIMER_B1_CTL__POR (0x03)
|
||||
#define WCD9XXX_A_CDC_MBHC_TIMER_B2_CTL (0x3C4)
|
||||
#define WCD9XXX_A_CDC_MBHC_TIMER_B2_CTL__POR (0x09)
|
||||
#define WCD9XXX_A_CDC_MBHC_TIMER_B3_CTL (0x3C5)
|
||||
#define WCD9XXX_A_CDC_MBHC_TIMER_B3_CTL__POR (0x1E)
|
||||
#define WCD9XXX_A_CDC_MBHC_TIMER_B4_CTL (0x3C6)
|
||||
#define WCD9XXX_A_CDC_MBHC_TIMER_B4_CTL__POR (0x45)
|
||||
#define WCD9XXX_A_CDC_MBHC_TIMER_B5_CTL (0x3C7)
|
||||
#define WCD9XXX_A_CDC_MBHC_TIMER_B5_CTL__POR (0x04)
|
||||
#define WCD9XXX_A_CDC_MBHC_TIMER_B6_CTL (0x3C8)
|
||||
#define WCD9XXX_A_CDC_MBHC_TIMER_B6_CTL__POR (0x78)
|
||||
#define WCD9XXX_A_CDC_MBHC_B1_STATUS (0x3C9)
|
||||
#define WCD9XXX_A_CDC_MBHC_B1_STATUS__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_B2_STATUS (0x3CA)
|
||||
#define WCD9XXX_A_CDC_MBHC_B2_STATUS__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_B3_STATUS (0x3CB)
|
||||
#define WCD9XXX_A_CDC_MBHC_B3_STATUS__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_B4_STATUS (0x3CC)
|
||||
#define WCD9XXX_A_CDC_MBHC_B4_STATUS__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_B5_STATUS (0x3CD)
|
||||
#define WCD9XXX_A_CDC_MBHC_B5_STATUS__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_B1_CTL (0x3CE)
|
||||
#define WCD9XXX_A_CDC_MBHC_B1_CTL__POR (0xC0)
|
||||
#define WCD9XXX_A_CDC_MBHC_B2_CTL (0x3CF)
|
||||
#define WCD9XXX_A_CDC_MBHC_B2_CTL__POR (0x5D)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B1_CTL (0x3D0)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B1_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B2_CTL (0x3D1)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B2_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B3_CTL (0x3D2)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B3_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B4_CTL (0x3D3)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B4_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B5_CTL (0x3D4)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B5_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B6_CTL (0x3D5)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B6_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B7_CTL (0x3D6)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B7_CTL__POR (0xFF)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B8_CTL (0x3D7)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B8_CTL__POR (0x07)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B9_CTL (0x3D8)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B9_CTL__POR (0xFF)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B10_CTL (0x3D9)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B10_CTL__POR (0x7F)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B11_CTL (0x3DA)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B11_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B12_CTL (0x3DB)
|
||||
#define WCD9XXX_A_CDC_MBHC_VOLT_B12_CTL__POR (0x80)
|
||||
#define WCD9XXX_A_CDC_MBHC_CLK_CTL (0x3DC)
|
||||
#define WCD9XXX_A_CDC_MBHC_CLK_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_INT_CTL (0x3DD)
|
||||
#define WCD9XXX_A_CDC_MBHC_INT_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_DEBUG_CTL (0x3DE)
|
||||
#define WCD9XXX_A_CDC_MBHC_DEBUG_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_MBHC_SPARE (0x3DF)
|
||||
#define WCD9XXX_A_CDC_MBHC_SPARE__POR (0x00)
|
||||
#define WCD9XXX_A_MBHC_SCALING_MUX_1 (0x14E)
|
||||
#define WCD9XXX_A_MBHC_SCALING_MUX_1__POR (0x00)
|
||||
#define WCD9XXX_A_RX_HPH_OCP_CTL (0x1AA)
|
||||
#define WCD9XXX_A_RX_HPH_OCP_CTL__POR (0x68)
|
||||
#define WCD9XXX_A_MICB_1_CTL (0x12B)
|
||||
#define WCD9XXX_A_MICB_1_CTL__POR (0x16)
|
||||
#define WCD9XXX_A_MICB_1_INT_RBIAS (0x12C)
|
||||
#define WCD9XXX_A_MICB_1_INT_RBIAS__POR (0x24)
|
||||
#define WCD9XXX_A_MICB_1_MBHC (0x12D)
|
||||
#define WCD9XXX_A_MICB_1_MBHC__POR (0x01)
|
||||
#define WCD9XXX_A_MICB_CFILT_2_CTL (0x12E)
|
||||
#define WCD9XXX_A_MICB_CFILT_2_CTL__POR (0x40)
|
||||
#define WCD9XXX_A_MICB_CFILT_2_VAL (0x12F)
|
||||
#define WCD9XXX_A_MICB_CFILT_2_VAL__POR (0x80)
|
||||
#define WCD9XXX_A_MICB_CFILT_2_PRECHRG (0x130)
|
||||
#define WCD9XXX_A_MICB_CFILT_2_PRECHRG__POR (0x38)
|
||||
#define WCD9XXX_A_MICB_2_CTL (0x131)
|
||||
#define WCD9XXX_A_MICB_2_CTL__POR (0x16)
|
||||
#define WCD9XXX_A_MICB_2_INT_RBIAS (0x132)
|
||||
#define WCD9XXX_A_MICB_2_INT_RBIAS__POR (0x24)
|
||||
#define WCD9XXX_A_MICB_2_MBHC (0x133)
|
||||
#define WCD9XXX_A_MICB_2_MBHC__POR (0x02)
|
||||
#define WCD9XXX_A_MICB_CFILT_3_CTL (0x134)
|
||||
#define WCD9XXX_A_MICB_CFILT_3_CTL__POR (0x40)
|
||||
#define WCD9XXX_A_MICB_CFILT_3_VAL (0x135)
|
||||
#define WCD9XXX_A_MICB_CFILT_3_VAL__POR (0x80)
|
||||
#define WCD9XXX_A_MICB_CFILT_3_PRECHRG (0x136)
|
||||
#define WCD9XXX_A_MICB_CFILT_3_PRECHRG__POR (0x38)
|
||||
#define WCD9XXX_A_MICB_3_CTL (0x137)
|
||||
#define WCD9XXX_A_MICB_3_CTL__POR (0x16)
|
||||
#define WCD9XXX_A_MICB_3_INT_RBIAS (0x138)
|
||||
#define WCD9XXX_A_MICB_3_INT_RBIAS__POR (0x24)
|
||||
#define WCD9XXX_A_MICB_3_MBHC (0x139)
|
||||
#define WCD9XXX_A_MICB_3_MBHC__POR (0x00)
|
||||
#define WCD9XXX_A_MICB_4_CTL (0x13D)
|
||||
#define WCD9XXX_A_MICB_4_CTL__POR (0x16)
|
||||
#define WCD9XXX_A_MICB_4_INT_RBIAS (0x13E)
|
||||
#define WCD9XXX_A_MICB_4_INT_RBIAS__POR (0x24)
|
||||
#define WCD9XXX_A_MICB_4_MBHC (0x13F)
|
||||
#define WCD9XXX_A_MICB_4_MBHC__POR (0x01)
|
||||
#define WCD9XXX_A_MICB_CFILT_1_VAL (0x129)
|
||||
#define WCD9XXX_A_MICB_CFILT_1_VAL__POR (0x80)
|
||||
#define WCD9XXX_A_RX_HPH_L_STATUS (0x1B3)
|
||||
#define WCD9XXX_A_RX_HPH_L_STATUS__POR (0x00)
|
||||
#define WCD9XXX_A_MBHC_HPH (0x1FE)
|
||||
#define WCD9XXX_A_MBHC_HPH__POR (0x44)
|
||||
#define WCD9XXX_A_RX_HPH_CNP_WG_TIME (0x1AD)
|
||||
#define WCD9XXX_A_RX_HPH_CNP_WG_TIME__POR (0x2A)
|
||||
#define WCD9XXX_A_RX_HPH_R_DAC_CTL (0x1B7)
|
||||
#define WCD9XXX_A_RX_HPH_R_DAC_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_RX_HPH_L_DAC_CTL (0x1B1)
|
||||
#define WCD9XXX_A_RX_HPH_L_DAC_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_TX_7_MBHC_EN (0x171)
|
||||
#define WCD9XXX_A_TX_7_MBHC_EN__POR (0x0C)
|
||||
#define WCD9XXX_A_PIN_CTL_OE0 (0x010)
|
||||
#define WCD9XXX_A_PIN_CTL_OE0__POR (0x00)
|
||||
#define WCD9XXX_A_PIN_CTL_OE1 (0x011)
|
||||
#define WCD9XXX_A_PIN_CTL_OE1__POR (0x00)
|
||||
#define WCD9XXX_A_MICB_CFILT_1_CTL (0x128)
|
||||
#define WCD9XXX_A_LDO_H_MODE_1 (0x110)
|
||||
#define WCD9XXX_A_LDO_H_MODE_1__POR (0x65)
|
||||
#define WCD9XXX_A_MICB_CFILT_1_CTL__POR (0x40)
|
||||
#define WCD9XXX_A_TX_7_MBHC_TEST_CTL (0x174)
|
||||
#define WCD9XXX_A_TX_7_MBHC_TEST_CTL__POR (0x38)
|
||||
#define WCD9XXX_A_MBHC_SCALING_MUX_2 (0x14F)
|
||||
#define WCD9XXX_A_MBHC_SCALING_MUX_2__POR (0x80)
|
||||
#define WCD9XXX_A_TX_COM_BIAS (0x14C)
|
||||
#define WCD9XXX_A_TX_COM_BIAS__POR (0xF0)
|
||||
|
||||
#define WCD9XXX_A_MBHC_INSERT_DETECT (0x14A) /* TAIKO and later */
|
||||
#define WCD9XXX_A_MBHC_INSERT_DETECT__POR (0x00)
|
||||
#define WCD9XXX_A_MBHC_INSERT_DET_STATUS (0x14B) /* TAIKO and later */
|
||||
#define WCD9XXX_A_MBHC_INSERT_DET_STATUS__POR (0x00)
|
||||
#define WCD9XXX_A_MAD_ANA_CTRL (0x150)
|
||||
#define WCD9XXX_A_MAD_ANA_CTRL__POR (0xF1)
|
||||
|
||||
|
||||
#define WCD9XXX_A_CDC_CLK_OTHR_CTL (0x30C)
|
||||
#define WCD9XXX_A_CDC_CLK_OTHR_CTL__POR (0x00)
|
||||
|
||||
/* Class H related common registers */
|
||||
#define WCD9XXX_A_BUCK_MODE_1 (0x181)
|
||||
#define WCD9XXX_A_BUCK_MODE_1__POR (0x21)
|
||||
#define WCD9XXX_A_BUCK_MODE_2 (0x182)
|
||||
#define WCD9XXX_A_BUCK_MODE_2__POR (0xFF)
|
||||
#define WCD9XXX_A_BUCK_MODE_3 (0x183)
|
||||
#define WCD9XXX_A_BUCK_MODE_3__POR (0xCC)
|
||||
#define WCD9XXX_A_BUCK_MODE_4 (0x184)
|
||||
#define WCD9XXX_A_BUCK_MODE_4__POR (0x3A)
|
||||
#define WCD9XXX_A_BUCK_MODE_5 (0x185)
|
||||
#define WCD9XXX_A_BUCK_MODE_5__POR (0x00)
|
||||
#define WCD9XXX_A_BUCK_CTRL_VCL_1 (0x186)
|
||||
#define WCD9XXX_A_BUCK_CTRL_VCL_1__POR (0x48)
|
||||
#define WCD9XXX_A_BUCK_CTRL_VCL_2 (0x187)
|
||||
#define WCD9XXX_A_BUCK_CTRL_VCL_2__POR (0xA3)
|
||||
#define WCD9XXX_A_BUCK_CTRL_VCL_3 (0x188)
|
||||
#define WCD9XXX_A_BUCK_CTRL_VCL_3__POR (0x82)
|
||||
#define WCD9XXX_A_BUCK_CTRL_CCL_1 (0x189)
|
||||
#define WCD9XXX_A_BUCK_CTRL_CCL_1__POR (0xAB)
|
||||
#define WCD9XXX_A_BUCK_CTRL_CCL_2 (0x18A)
|
||||
#define WCD9XXX_A_BUCK_CTRL_CCL_2__POR (0xDC)
|
||||
#define WCD9XXX_A_BUCK_CTRL_CCL_3 (0x18B)
|
||||
#define WCD9XXX_A_BUCK_CTRL_CCL_3__POR (0x6A)
|
||||
#define WCD9XXX_A_BUCK_CTRL_CCL_4 (0x18C)
|
||||
#define WCD9XXX_A_BUCK_CTRL_CCL_4__POR (0x58)
|
||||
#define WCD9XXX_A_BUCK_CTRL_PWM_DRVR_1 (0x18D)
|
||||
#define WCD9XXX_A_BUCK_CTRL_PWM_DRVR_1__POR (0x50)
|
||||
#define WCD9XXX_A_BUCK_CTRL_PWM_DRVR_2 (0x18E)
|
||||
#define WCD9XXX_A_BUCK_CTRL_PWM_DRVR_2__POR (0x64)
|
||||
#define WCD9XXX_A_BUCK_CTRL_PWM_DRVR_3 (0x18F)
|
||||
#define WCD9XXX_A_BUCK_CTRL_PWM_DRVR_3__POR (0x77)
|
||||
#define WCD9XXX_A_BUCK_TMUX_A_D (0x190)
|
||||
#define WCD9XXX_A_BUCK_TMUX_A_D__POR (0x00)
|
||||
#define WCD9XXX_A_NCP_EN (0x192)
|
||||
#define WCD9XXX_A_NCP_EN__POR (0xFE)
|
||||
#define WCD9XXX_A_NCP_STATIC (0x194)
|
||||
#define WCD9XXX_A_NCP_STATIC__POR (0x28)
|
||||
#define WCD9XXX_A_NCP_BUCKREF (0x191)
|
||||
#define WCD9XXX_A_NCP_BUCKREF__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_CLSH_B1_CTL (0x320)
|
||||
#define WCD9XXX_A_CDC_CLSH_B1_CTL__POR (0xE4)
|
||||
#define WCD9XXX_A_CDC_CLSH_B2_CTL (0x321)
|
||||
#define WCD9XXX_A_CDC_CLSH_B2_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_CLSH_B3_CTL (0x322)
|
||||
#define WCD9XXX_A_CDC_CLSH_B3_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_CLSH_BUCK_NCP_VARS (0x323)
|
||||
#define WCD9XXX_A_CDC_CLSH_BUCK_NCP_VARS__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_CLSH_IDLE_HPH_THSD (0x324)
|
||||
#define WCD9XXX_A_CDC_CLSH_IDLE_HPH_THSD__POR (0x12)
|
||||
#define WCD9XXX_A_CDC_CLSH_IDLE_EAR_THSD (0x325)
|
||||
#define WCD9XXX_A_CDC_CLSH_IDLE_EAR_THSD__POR (0x0C)
|
||||
#define WCD9XXX_A_CDC_CLSH_FCLKONLY_HPH_THSD (0x326)
|
||||
#define WCD9XXX_A_CDC_CLSH_FCLKONLY_HPH_THSD__POR (0x18)
|
||||
#define WCD9XXX_A_CDC_CLSH_FCLKONLY_EAR_THSD (0x327)
|
||||
#define WCD9XXX_A_CDC_CLSH_FCLKONLY_EAR_THSD__POR (0x23)
|
||||
#define WCD9XXX_A_CDC_CLSH_K_ADDR (0x328)
|
||||
#define WCD9XXX_A_CDC_CLSH_K_ADDR__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_CLSH_K_DATA (0x329)
|
||||
#define WCD9XXX_A_CDC_CLSH_K_DATA__POR (0xA4)
|
||||
#define WCD9XXX_A_CDC_CLSH_I_PA_FACT_HPH_L (0x32A)
|
||||
#define WCD9XXX_A_CDC_CLSH_I_PA_FACT_HPH_L__POR (0xD7)
|
||||
#define WCD9XXX_A_CDC_CLSH_I_PA_FACT_HPH_U (0x32B)
|
||||
#define WCD9XXX_A_CDC_CLSH_I_PA_FACT_HPH_U__POR (0x05)
|
||||
#define WCD9XXX_A_CDC_CLSH_I_PA_FACT_EAR_L (0x32C)
|
||||
#define WCD9XXX_A_CDC_CLSH_I_PA_FACT_EAR_L__POR (0x60)
|
||||
#define WCD9XXX_A_CDC_CLSH_I_PA_FACT_EAR_U (0x32D)
|
||||
#define WCD9XXX_A_CDC_CLSH_I_PA_FACT_EAR_U__POR (0x09)
|
||||
#define WCD9XXX_A_CDC_CLSH_V_PA_HD_EAR (0x32E)
|
||||
#define WCD9XXX_A_CDC_CLSH_V_PA_HD_EAR__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_CLSH_V_PA_HD_HPH (0x32F)
|
||||
#define WCD9XXX_A_CDC_CLSH_V_PA_HD_HPH__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_CLSH_V_PA_MIN_EAR (0x330)
|
||||
#define WCD9XXX_A_CDC_CLSH_V_PA_MIN_EAR__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_CLSH_V_PA_MIN_HPH (0x331)
|
||||
#define WCD9XXX_A_CDC_CLSH_V_PA_MIN_HPH__POR (0x00)
|
||||
|
||||
#define WCD9XXX_A_CDC_RX1_B6_CTL (0x2B5)
|
||||
#define WCD9XXX_A_CDC_RX1_B6_CTL__POR (0x80)
|
||||
#define WCD9XXX_A_CDC_RX2_B6_CTL (0x2BD)
|
||||
#define WCD9XXX_A_CDC_RX2_B6_CTL__POR (0x80)
|
||||
#define WCD9XXX_A_RX_HPH_L_GAIN (0x1AE)
|
||||
#define WCD9XXX_A_RX_HPH_L_GAIN__POR (0x00)
|
||||
#define WCD9XXX_A_RX_HPH_R_GAIN (0x1B4)
|
||||
#define WCD9XXX_A_RX_HPH_R_GAIN__POR (0x00)
|
||||
#define WCD9XXX_A_RX_HPH_CHOP_CTL (0x1A5)
|
||||
#define WCD9XXX_A_RX_HPH_CHOP_CTL__POR (0xB4)
|
||||
#define WCD9XXX_A_RX_HPH_BIAS_PA (0x1A6)
|
||||
#define WCD9XXX_A_RX_HPH_BIAS_PA__POR (0x7A)
|
||||
#define WCD9XXX_A_RX_HPH_L_TEST (0x1AF)
|
||||
#define WCD9XXX_A_RX_HPH_L_TEST__POR (0x00)
|
||||
#define WCD9XXX_A_RX_HPH_R_TEST (0x1B5)
|
||||
#define WCD9XXX_A_RX_HPH_R_TEST__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_CLK_RX_B1_CTL (0x30F)
|
||||
#define WCD9XXX_A_CDC_CLK_RX_B1_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_NCP_CLK (0x193)
|
||||
#define WCD9XXX_A_NCP_CLK__POR (0x94)
|
||||
#define WCD9XXX_A_RX_HPH_BIAS_WG_OCP (0x1A9)
|
||||
#define WCD9XXX_A_RX_HPH_BIAS_WG_OCP__POR (0x2A)
|
||||
#define WCD9XXX_A_RX_HPH_CNP_WG_CTL (0x1AC)
|
||||
#define WCD9XXX_A_RX_HPH_CNP_WG_CTL__POR (0xDE)
|
||||
#define WCD9XXX_A_RX_HPH_L_PA_CTL (0x1B0)
|
||||
#define WCD9XXX_A_RX_HPH_L_PA_CTL__POR (0x42)
|
||||
#define WCD9XXX_A_RX_HPH_R_PA_CTL (0x1B6)
|
||||
#define WCD9XXX_A_RX_HPH_R_PA_CTL__POR (0x42)
|
||||
#define WCD9XXX_A_CDC_CONN_RX2_B1_CTL (0x383)
|
||||
#define WCD9XXX_A_CDC_CONN_RX2_B1_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_PA_RAMP_B1_CTL (0x361)
|
||||
#define WCD9XXX_A_CDC_PA_RAMP_B1_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_PA_RAMP_B2_CTL (0x362)
|
||||
#define WCD9XXX_A_CDC_PA_RAMP_B2_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_PA_RAMP_B3_CTL (0x363)
|
||||
#define WCD9XXX_A_CDC_PA_RAMP_B3_CTL__POR (0x00)
|
||||
#define WCD9XXX_A_CDC_PA_RAMP_B4_CTL (0x364)
|
||||
#define WCD9XXX_A_CDC_PA_RAMP_B4_CTL__POR (0x00)
|
||||
|
||||
#define WCD9330_A_LEAKAGE_CTL (0x03C)
|
||||
#define WCD9330_A_LEAKAGE_CTL__POR (0x04)
|
||||
#define WCD9330_A_CDC_CTL (0x034)
|
||||
#define WCD9330_A_CDC_CTL__POR (0x00)
|
||||
|
||||
/* Class-H registers for codecs from and above WCD9335 */
|
||||
#define WCD9XXX_A_CDC_RX0_RX_PATH_CFG0 (0xB42)
|
||||
#define WCD9XXX_A_CDC_RX1_RX_PATH_CFG0 (0xB56)
|
||||
#define WCD9XXX_A_CDC_RX2_RX_PATH_CFG0 (0xB6A)
|
||||
#define WCD9XXX_A_CDC_CLSH_K1_MSB (0xC08)
|
||||
#define WCD9XXX_A_CDC_CLSH_K1_LSB (0xC09)
|
||||
#define WCD9XXX_A_ANA_RX_SUPPLIES (0x608)
|
||||
#define WCD9XXX_A_ANA_HPH (0x609)
|
||||
#define WCD9XXX_A_CDC_CLSH_CRC (0xC01)
|
||||
#define WCD9XXX_FLYBACK_EN (0x6A4)
|
||||
#define WCD9XXX_RX_BIAS_FLYB_BUFF (0x6C7)
|
||||
#define WCD9XXX_HPH_L_EN (0x6D3)
|
||||
#define WCD9XXX_HPH_R_EN (0x6D6)
|
||||
#define WCD9XXX_HPH_REFBUFF_UHQA_CTL (0x6DD)
|
||||
#define WCD9XXX_CLASSH_CTRL_VCL_2 (0x69B)
|
||||
#define WCD9XXX_CDC_CLSH_HPH_V_PA (0xC04)
|
||||
#define WCD9XXX_CDC_RX0_RX_PATH_SEC0 (0xB49)
|
||||
#define WCD9XXX_CDC_RX1_RX_PATH_CTL (0xB55)
|
||||
#define WCD9XXX_CDC_RX2_RX_PATH_CTL (0xB69)
|
||||
#define WCD9XXX_CDC_CLK_RST_CTRL_MCLK_CONTROL (0xD41)
|
||||
#define WCD9XXX_CLASSH_CTRL_CCL_1 (0x69C)
|
||||
#endif
|
||||
29
original-kernel-headers/linux/msm-core-interface.h
Normal file
29
original-kernel-headers/linux/msm-core-interface.h
Normal file
@@ -0,0 +1,29 @@
|
||||
#ifndef __MSM_CORE_LIB_H__
|
||||
#define __MSM_CORE_LIB_H__
|
||||
|
||||
#include <linux/ioctl.h>
|
||||
|
||||
#define TEMP_DATA_POINTS 13
|
||||
#define MAX_NUM_FREQ 200
|
||||
|
||||
enum msm_core_ioctl_params {
|
||||
MSM_CORE_LEAKAGE,
|
||||
MSM_CORE_VOLTAGE,
|
||||
};
|
||||
|
||||
#define MSM_CORE_MAGIC 0x9D
|
||||
|
||||
struct sched_params {
|
||||
uint32_t cpumask;
|
||||
uint32_t cluster;
|
||||
uint32_t power[TEMP_DATA_POINTS][MAX_NUM_FREQ];
|
||||
uint32_t voltage[MAX_NUM_FREQ];
|
||||
uint32_t freq[MAX_NUM_FREQ];
|
||||
};
|
||||
|
||||
|
||||
#define EA_LEAKAGE _IOWR(MSM_CORE_MAGIC, MSM_CORE_LEAKAGE,\
|
||||
struct sched_params)
|
||||
#define EA_VOLT _IOWR(MSM_CORE_MAGIC, MSM_CORE_VOLTAGE,\
|
||||
struct sched_params)
|
||||
#endif
|
||||
77
original-kernel-headers/linux/msm_adsp.h
Normal file
77
original-kernel-headers/linux/msm_adsp.h
Normal file
@@ -0,0 +1,77 @@
|
||||
/*
|
||||
* Copyright (C) 2007 Google, Inc.
|
||||
* Author: Iliyan Malchev <ibm@android.com>
|
||||
*
|
||||
* This software is licensed under the terms of the GNU General Public
|
||||
* License version 2, as published by the Free Software Foundation, and
|
||||
* may be copied, distributed, and modified under those terms.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
*/
|
||||
#ifndef _LINUX_MSM_ADSP_H
|
||||
#define _LINUX_MSM_ADSP_H
|
||||
|
||||
#include <linux/types.h>
|
||||
#include <linux/ioctl.h>
|
||||
|
||||
#define ADSP_IOCTL_MAGIC 'q'
|
||||
|
||||
/* ADSP_IOCTL_WRITE_COMMAND */
|
||||
struct adsp_command_t {
|
||||
uint16_t queue;
|
||||
uint32_t len; /* bytes */
|
||||
uint8_t *data;
|
||||
};
|
||||
|
||||
/* ADSP_IOCTL_GET_EVENT */
|
||||
struct adsp_event_t {
|
||||
uint16_t type; /* 1 == event (RPC), 0 == message (adsp) */
|
||||
uint32_t timeout_ms; /* -1 for infinite, 0 for immediate return */
|
||||
uint16_t msg_id;
|
||||
uint16_t flags; /* 1 == 16--bit event, 0 == 32-bit event */
|
||||
uint32_t len; /* size in, number of bytes out */
|
||||
uint8_t *data;
|
||||
};
|
||||
|
||||
#define ADSP_IOCTL_ENABLE \
|
||||
_IOR(ADSP_IOCTL_MAGIC, 1, unsigned)
|
||||
|
||||
#define ADSP_IOCTL_DISABLE \
|
||||
_IOR(ADSP_IOCTL_MAGIC, 2, unsigned)
|
||||
|
||||
#define ADSP_IOCTL_DISABLE_ACK \
|
||||
_IOR(ADSP_IOCTL_MAGIC, 3, unsigned)
|
||||
|
||||
#define ADSP_IOCTL_WRITE_COMMAND \
|
||||
_IOR(ADSP_IOCTL_MAGIC, 4, struct adsp_command_t *)
|
||||
|
||||
#define ADSP_IOCTL_GET_EVENT \
|
||||
_IOWR(ADSP_IOCTL_MAGIC, 5, struct adsp_event_data_t *)
|
||||
|
||||
#define ADSP_IOCTL_SET_CLKRATE \
|
||||
_IOR(ADSP_IOCTL_MAGIC, 6, unsigned)
|
||||
|
||||
#define ADSP_IOCTL_DISABLE_EVENT_RSP \
|
||||
_IOR(ADSP_IOCTL_MAGIC, 10, unsigned)
|
||||
|
||||
#define ADSP_IOCTL_REGISTER_PMEM \
|
||||
_IOW(ADSP_IOCTL_MAGIC, 13, unsigned)
|
||||
|
||||
#define ADSP_IOCTL_UNREGISTER_PMEM \
|
||||
_IOW(ADSP_IOCTL_MAGIC, 14, unsigned)
|
||||
|
||||
/* Cause any further GET_EVENT ioctls to fail (-ENODEV)
|
||||
* until the device is closed and reopened. Useful for
|
||||
* terminating event dispatch threads
|
||||
*/
|
||||
#define ADSP_IOCTL_ABORT_EVENT_READ \
|
||||
_IOW(ADSP_IOCTL_MAGIC, 15, unsigned)
|
||||
|
||||
#define ADSP_IOCTL_LINK_TASK \
|
||||
_IOW(ADSP_IOCTL_MAGIC, 16, unsigned)
|
||||
|
||||
#endif
|
||||
463
original-kernel-headers/linux/msm_audio.h
Normal file
463
original-kernel-headers/linux/msm_audio.h
Normal file
@@ -0,0 +1,463 @@
|
||||
/* include/linux/msm_audio.h
|
||||
*
|
||||
* Copyright (C) 2008 Google, Inc.
|
||||
* Copyright (c) 2012, 2014 The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* This software is licensed under the terms of the GNU General Public
|
||||
* License version 2, as published by the Free Software Foundation, and
|
||||
* may be copied, distributed, and modified under those terms.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef _LINUX_MSM_AUDIO_H
|
||||
#define _LINUX_MSM_AUDIO_H
|
||||
|
||||
#include <linux/types.h>
|
||||
#include <linux/ioctl.h>
|
||||
|
||||
/* PCM Audio */
|
||||
|
||||
#define AUDIO_IOCTL_MAGIC 'a'
|
||||
|
||||
#define AUDIO_START _IOW(AUDIO_IOCTL_MAGIC, 0, unsigned)
|
||||
#define AUDIO_STOP _IOW(AUDIO_IOCTL_MAGIC, 1, unsigned)
|
||||
#define AUDIO_FLUSH _IOW(AUDIO_IOCTL_MAGIC, 2, unsigned)
|
||||
#define AUDIO_GET_CONFIG _IOR(AUDIO_IOCTL_MAGIC, 3, \
|
||||
struct msm_audio_config)
|
||||
#define AUDIO_SET_CONFIG _IOW(AUDIO_IOCTL_MAGIC, 4, \
|
||||
struct msm_audio_config)
|
||||
#define AUDIO_GET_STATS _IOR(AUDIO_IOCTL_MAGIC, 5, \
|
||||
struct msm_audio_stats)
|
||||
#define AUDIO_ENABLE_AUDPP _IOW(AUDIO_IOCTL_MAGIC, 6, unsigned)
|
||||
#define AUDIO_SET_ADRC _IOW(AUDIO_IOCTL_MAGIC, 7, unsigned)
|
||||
#define AUDIO_SET_EQ _IOW(AUDIO_IOCTL_MAGIC, 8, unsigned)
|
||||
#define AUDIO_SET_RX_IIR _IOW(AUDIO_IOCTL_MAGIC, 9, unsigned)
|
||||
#define AUDIO_SET_VOLUME _IOW(AUDIO_IOCTL_MAGIC, 10, unsigned)
|
||||
#define AUDIO_PAUSE _IOW(AUDIO_IOCTL_MAGIC, 11, unsigned)
|
||||
#define AUDIO_PLAY_DTMF _IOW(AUDIO_IOCTL_MAGIC, 12, unsigned)
|
||||
#define AUDIO_GET_EVENT _IOR(AUDIO_IOCTL_MAGIC, 13, \
|
||||
struct msm_audio_event)
|
||||
#define AUDIO_ABORT_GET_EVENT _IOW(AUDIO_IOCTL_MAGIC, 14, unsigned)
|
||||
#define AUDIO_REGISTER_PMEM _IOW(AUDIO_IOCTL_MAGIC, 15, unsigned)
|
||||
#define AUDIO_DEREGISTER_PMEM _IOW(AUDIO_IOCTL_MAGIC, 16, unsigned)
|
||||
#define AUDIO_ASYNC_WRITE _IOW(AUDIO_IOCTL_MAGIC, 17, \
|
||||
struct msm_audio_aio_buf)
|
||||
#define AUDIO_ASYNC_READ _IOW(AUDIO_IOCTL_MAGIC, 18, \
|
||||
struct msm_audio_aio_buf)
|
||||
#define AUDIO_SET_INCALL _IOW(AUDIO_IOCTL_MAGIC, 19, struct msm_voicerec_mode)
|
||||
#define AUDIO_GET_NUM_SND_DEVICE _IOR(AUDIO_IOCTL_MAGIC, 20, unsigned)
|
||||
#define AUDIO_GET_SND_DEVICES _IOWR(AUDIO_IOCTL_MAGIC, 21, \
|
||||
struct msm_snd_device_list)
|
||||
#define AUDIO_ENABLE_SND_DEVICE _IOW(AUDIO_IOCTL_MAGIC, 22, unsigned)
|
||||
#define AUDIO_DISABLE_SND_DEVICE _IOW(AUDIO_IOCTL_MAGIC, 23, unsigned)
|
||||
#define AUDIO_ROUTE_STREAM _IOW(AUDIO_IOCTL_MAGIC, 24, \
|
||||
struct msm_audio_route_config)
|
||||
#define AUDIO_GET_PCM_CONFIG _IOR(AUDIO_IOCTL_MAGIC, 30, unsigned)
|
||||
#define AUDIO_SET_PCM_CONFIG _IOW(AUDIO_IOCTL_MAGIC, 31, unsigned)
|
||||
#define AUDIO_SWITCH_DEVICE _IOW(AUDIO_IOCTL_MAGIC, 32, unsigned)
|
||||
#define AUDIO_SET_MUTE _IOW(AUDIO_IOCTL_MAGIC, 33, unsigned)
|
||||
#define AUDIO_UPDATE_ACDB _IOW(AUDIO_IOCTL_MAGIC, 34, unsigned)
|
||||
#define AUDIO_START_VOICE _IOW(AUDIO_IOCTL_MAGIC, 35, unsigned)
|
||||
#define AUDIO_STOP_VOICE _IOW(AUDIO_IOCTL_MAGIC, 36, unsigned)
|
||||
#define AUDIO_REINIT_ACDB _IOW(AUDIO_IOCTL_MAGIC, 39, unsigned)
|
||||
#define AUDIO_OUTPORT_FLUSH _IOW(AUDIO_IOCTL_MAGIC, 40, unsigned short)
|
||||
#define AUDIO_SET_ERR_THRESHOLD_VALUE _IOW(AUDIO_IOCTL_MAGIC, 41, \
|
||||
unsigned short)
|
||||
#define AUDIO_GET_BITSTREAM_ERROR_INFO _IOR(AUDIO_IOCTL_MAGIC, 42, \
|
||||
struct msm_audio_bitstream_error_info)
|
||||
|
||||
#define AUDIO_SET_SRS_TRUMEDIA_PARAM _IOW(AUDIO_IOCTL_MAGIC, 43, unsigned)
|
||||
|
||||
/* Qualcomm extensions */
|
||||
#define AUDIO_SET_STREAM_CONFIG _IOW(AUDIO_IOCTL_MAGIC, 80, \
|
||||
struct msm_audio_stream_config)
|
||||
#define AUDIO_GET_STREAM_CONFIG _IOR(AUDIO_IOCTL_MAGIC, 81, \
|
||||
struct msm_audio_stream_config)
|
||||
#define AUDIO_GET_SESSION_ID _IOR(AUDIO_IOCTL_MAGIC, 82, unsigned short)
|
||||
#define AUDIO_GET_STREAM_INFO _IOR(AUDIO_IOCTL_MAGIC, 83, \
|
||||
struct msm_audio_bitstream_info)
|
||||
#define AUDIO_SET_PAN _IOW(AUDIO_IOCTL_MAGIC, 84, unsigned)
|
||||
#define AUDIO_SET_QCONCERT_PLUS _IOW(AUDIO_IOCTL_MAGIC, 85, unsigned)
|
||||
#define AUDIO_SET_MBADRC _IOW(AUDIO_IOCTL_MAGIC, 86, unsigned)
|
||||
#define AUDIO_SET_VOLUME_PATH _IOW(AUDIO_IOCTL_MAGIC, 87, \
|
||||
struct msm_vol_info)
|
||||
#define AUDIO_SET_MAX_VOL_ALL _IOW(AUDIO_IOCTL_MAGIC, 88, unsigned)
|
||||
#define AUDIO_ENABLE_AUDPRE _IOW(AUDIO_IOCTL_MAGIC, 89, unsigned)
|
||||
#define AUDIO_SET_AGC _IOW(AUDIO_IOCTL_MAGIC, 90, unsigned)
|
||||
#define AUDIO_SET_NS _IOW(AUDIO_IOCTL_MAGIC, 91, unsigned)
|
||||
#define AUDIO_SET_TX_IIR _IOW(AUDIO_IOCTL_MAGIC, 92, unsigned)
|
||||
#define AUDIO_GET_BUF_CFG _IOW(AUDIO_IOCTL_MAGIC, 93, \
|
||||
struct msm_audio_buf_cfg)
|
||||
#define AUDIO_SET_BUF_CFG _IOW(AUDIO_IOCTL_MAGIC, 94, \
|
||||
struct msm_audio_buf_cfg)
|
||||
#define AUDIO_SET_ACDB_BLK _IOW(AUDIO_IOCTL_MAGIC, 95, \
|
||||
struct msm_acdb_cmd_device)
|
||||
#define AUDIO_GET_ACDB_BLK _IOW(AUDIO_IOCTL_MAGIC, 96, \
|
||||
struct msm_acdb_cmd_device)
|
||||
|
||||
#define AUDIO_REGISTER_ION _IOW(AUDIO_IOCTL_MAGIC, 97, \
|
||||
struct msm_audio_ion_info)
|
||||
#define AUDIO_DEREGISTER_ION _IOW(AUDIO_IOCTL_MAGIC, 98, \
|
||||
struct msm_audio_ion_info)
|
||||
#define AUDIO_SET_EFFECTS_CONFIG _IOW(AUDIO_IOCTL_MAGIC, 99, \
|
||||
struct msm_hwacc_effects_config)
|
||||
#define AUDIO_EFFECTS_SET_BUF_LEN _IOW(AUDIO_IOCTL_MAGIC, 100, \
|
||||
struct msm_hwacc_buf_cfg)
|
||||
#define AUDIO_EFFECTS_GET_BUF_AVAIL _IOW(AUDIO_IOCTL_MAGIC, 101, \
|
||||
struct msm_hwacc_buf_avail)
|
||||
#define AUDIO_EFFECTS_WRITE _IOW(AUDIO_IOCTL_MAGIC, 102, void *)
|
||||
#define AUDIO_EFFECTS_READ _IOWR(AUDIO_IOCTL_MAGIC, 103, void *)
|
||||
#define AUDIO_EFFECTS_SET_PP_PARAMS _IOW(AUDIO_IOCTL_MAGIC, 104, void *)
|
||||
|
||||
#define AUDIO_PM_AWAKE _IOW(AUDIO_IOCTL_MAGIC, 105, unsigned)
|
||||
#define AUDIO_PM_RELAX _IOW(AUDIO_IOCTL_MAGIC, 106, unsigned)
|
||||
|
||||
#define AUDIO_MAX_COMMON_IOCTL_NUM 107
|
||||
|
||||
|
||||
#define HANDSET_MIC 0x01
|
||||
#define HANDSET_SPKR 0x02
|
||||
#define HEADSET_MIC 0x03
|
||||
#define HEADSET_SPKR_MONO 0x04
|
||||
#define HEADSET_SPKR_STEREO 0x05
|
||||
#define SPKR_PHONE_MIC 0x06
|
||||
#define SPKR_PHONE_MONO 0x07
|
||||
#define SPKR_PHONE_STEREO 0x08
|
||||
#define BT_SCO_MIC 0x09
|
||||
#define BT_SCO_SPKR 0x0A
|
||||
#define BT_A2DP_SPKR 0x0B
|
||||
#define TTY_HEADSET_MIC 0x0C
|
||||
#define TTY_HEADSET_SPKR 0x0D
|
||||
|
||||
/* Default devices are not supported in a */
|
||||
/* device switching context. Only supported */
|
||||
/* for stream devices. */
|
||||
/* DO NOT USE */
|
||||
#define DEFAULT_TX 0x0E
|
||||
#define DEFAULT_RX 0x0F
|
||||
|
||||
#define BT_A2DP_TX 0x10
|
||||
|
||||
#define HEADSET_MONO_PLUS_SPKR_MONO_RX 0x11
|
||||
#define HEADSET_MONO_PLUS_SPKR_STEREO_RX 0x12
|
||||
#define HEADSET_STEREO_PLUS_SPKR_MONO_RX 0x13
|
||||
#define HEADSET_STEREO_PLUS_SPKR_STEREO_RX 0x14
|
||||
|
||||
#define I2S_RX 0x20
|
||||
#define I2S_TX 0x21
|
||||
|
||||
#define ADRC_ENABLE 0x0001
|
||||
#define EQUALIZER_ENABLE 0x0002
|
||||
#define IIR_ENABLE 0x0004
|
||||
#define QCONCERT_PLUS_ENABLE 0x0008
|
||||
#define MBADRC_ENABLE 0x0010
|
||||
#define SRS_ENABLE 0x0020
|
||||
#define SRS_DISABLE 0x0040
|
||||
|
||||
#define AGC_ENABLE 0x0001
|
||||
#define NS_ENABLE 0x0002
|
||||
#define TX_IIR_ENABLE 0x0004
|
||||
#define FLUENCE_ENABLE 0x0008
|
||||
|
||||
#define VOC_REC_UPLINK 0x00
|
||||
#define VOC_REC_DOWNLINK 0x01
|
||||
#define VOC_REC_BOTH 0x02
|
||||
|
||||
struct msm_audio_config {
|
||||
uint32_t buffer_size;
|
||||
uint32_t buffer_count;
|
||||
uint32_t channel_count;
|
||||
uint32_t sample_rate;
|
||||
uint32_t type;
|
||||
uint32_t meta_field;
|
||||
uint32_t bits;
|
||||
uint32_t unused[3];
|
||||
};
|
||||
|
||||
struct msm_audio_stream_config {
|
||||
uint32_t buffer_size;
|
||||
uint32_t buffer_count;
|
||||
};
|
||||
|
||||
struct msm_audio_buf_cfg{
|
||||
uint32_t meta_info_enable;
|
||||
uint32_t frames_per_buf;
|
||||
};
|
||||
|
||||
struct msm_audio_stats {
|
||||
uint32_t byte_count;
|
||||
uint32_t sample_count;
|
||||
uint32_t unused[2];
|
||||
};
|
||||
|
||||
struct msm_audio_ion_info {
|
||||
int fd;
|
||||
void *vaddr;
|
||||
};
|
||||
|
||||
struct msm_audio_pmem_info {
|
||||
int fd;
|
||||
void *vaddr;
|
||||
};
|
||||
|
||||
struct msm_audio_aio_buf {
|
||||
void *buf_addr;
|
||||
uint32_t buf_len;
|
||||
uint32_t data_len;
|
||||
void *private_data;
|
||||
unsigned short mfield_sz; /*only useful for data has meta field */
|
||||
};
|
||||
|
||||
/* Audio routing */
|
||||
|
||||
#define SND_IOCTL_MAGIC 's'
|
||||
|
||||
#define SND_MUTE_UNMUTED 0
|
||||
#define SND_MUTE_MUTED 1
|
||||
|
||||
struct msm_mute_info {
|
||||
uint32_t mute;
|
||||
uint32_t path;
|
||||
};
|
||||
|
||||
struct msm_vol_info {
|
||||
uint32_t vol;
|
||||
uint32_t path;
|
||||
};
|
||||
|
||||
struct msm_voicerec_mode {
|
||||
uint32_t rec_mode;
|
||||
};
|
||||
|
||||
struct msm_snd_device_config {
|
||||
uint32_t device;
|
||||
uint32_t ear_mute;
|
||||
uint32_t mic_mute;
|
||||
};
|
||||
|
||||
#define SND_SET_DEVICE _IOW(SND_IOCTL_MAGIC, 2, struct msm_device_config *)
|
||||
|
||||
enum cad_device_path_type {
|
||||
CAD_DEVICE_PATH_RX, /*For Decoding session*/
|
||||
CAD_DEVICE_PATH_TX, /* For Encoding session*/
|
||||
CAD_DEVICE_PATH_RX_TX, /* For Voice call */
|
||||
CAD_DEVICE_PATH_LB, /* For loopback (FM Analog)*/
|
||||
CAD_DEVICE_PATH_MAX
|
||||
};
|
||||
|
||||
struct cad_devices_type {
|
||||
uint32_t rx_device;
|
||||
uint32_t tx_device;
|
||||
enum cad_device_path_type pathtype;
|
||||
};
|
||||
|
||||
struct msm_cad_device_config {
|
||||
struct cad_devices_type device;
|
||||
uint32_t ear_mute;
|
||||
uint32_t mic_mute;
|
||||
};
|
||||
|
||||
#define CAD_SET_DEVICE _IOW(SND_IOCTL_MAGIC, 2, struct msm_cad_device_config *)
|
||||
|
||||
#define SND_METHOD_VOICE 0
|
||||
#define SND_METHOD_MIDI 4
|
||||
|
||||
struct msm_snd_volume_config {
|
||||
uint32_t device;
|
||||
uint32_t method;
|
||||
uint32_t volume;
|
||||
};
|
||||
|
||||
#define SND_SET_VOLUME _IOW(SND_IOCTL_MAGIC, 3, struct msm_snd_volume_config *)
|
||||
|
||||
struct msm_cad_volume_config {
|
||||
struct cad_devices_type device;
|
||||
uint32_t method;
|
||||
uint32_t volume;
|
||||
};
|
||||
|
||||
#define CAD_SET_VOLUME _IOW(SND_IOCTL_MAGIC, 3, struct msm_cad_volume_config *)
|
||||
|
||||
/* Returns the number of SND endpoints supported. */
|
||||
|
||||
#define SND_GET_NUM_ENDPOINTS _IOR(SND_IOCTL_MAGIC, 4, unsigned *)
|
||||
|
||||
struct msm_snd_endpoint {
|
||||
int id; /* input and output */
|
||||
char name[64]; /* output only */
|
||||
};
|
||||
|
||||
/* Takes an index between 0 and one less than the number returned by
|
||||
* SND_GET_NUM_ENDPOINTS, and returns the SND index and name of a
|
||||
* SND endpoint. On input, the .id field contains the number of the
|
||||
* endpoint, and on exit it contains the SND index, while .name contains
|
||||
* the description of the endpoint.
|
||||
*/
|
||||
|
||||
#define SND_GET_ENDPOINT _IOWR(SND_IOCTL_MAGIC, 5, struct msm_snd_endpoint *)
|
||||
|
||||
|
||||
#define SND_AVC_CTL _IOW(SND_IOCTL_MAGIC, 6, unsigned *)
|
||||
#define SND_AGC_CTL _IOW(SND_IOCTL_MAGIC, 7, unsigned *)
|
||||
|
||||
/*return the number of CAD endpoints supported. */
|
||||
|
||||
#define CAD_GET_NUM_ENDPOINTS _IOR(SND_IOCTL_MAGIC, 4, unsigned *)
|
||||
|
||||
struct msm_cad_endpoint {
|
||||
int id; /* input and output */
|
||||
char name[64]; /* output only */
|
||||
};
|
||||
|
||||
/* Takes an index between 0 and one less than the number returned by
|
||||
* SND_GET_NUM_ENDPOINTS, and returns the CAD index and name of a
|
||||
* CAD endpoint. On input, the .id field contains the number of the
|
||||
* endpoint, and on exit it contains the SND index, while .name contains
|
||||
* the description of the endpoint.
|
||||
*/
|
||||
|
||||
#define CAD_GET_ENDPOINT _IOWR(SND_IOCTL_MAGIC, 5, struct msm_cad_endpoint *)
|
||||
|
||||
struct msm_audio_pcm_config {
|
||||
uint32_t pcm_feedback; /* 0 - disable > 0 - enable */
|
||||
uint32_t buffer_count; /* Number of buffers to allocate */
|
||||
uint32_t buffer_size; /* Size of buffer for capturing of
|
||||
PCM samples */
|
||||
};
|
||||
|
||||
#define AUDIO_EVENT_SUSPEND 0
|
||||
#define AUDIO_EVENT_RESUME 1
|
||||
#define AUDIO_EVENT_WRITE_DONE 2
|
||||
#define AUDIO_EVENT_READ_DONE 3
|
||||
#define AUDIO_EVENT_STREAM_INFO 4
|
||||
#define AUDIO_EVENT_BITSTREAM_ERROR_INFO 5
|
||||
|
||||
#define AUDIO_CODEC_TYPE_MP3 0
|
||||
#define AUDIO_CODEC_TYPE_AAC 1
|
||||
|
||||
struct msm_audio_bitstream_info {
|
||||
uint32_t codec_type;
|
||||
uint32_t chan_info;
|
||||
uint32_t sample_rate;
|
||||
uint32_t bit_stream_info;
|
||||
uint32_t bit_rate;
|
||||
uint32_t unused[3];
|
||||
};
|
||||
|
||||
struct msm_audio_bitstream_error_info {
|
||||
uint32_t dec_id;
|
||||
uint32_t err_msg_indicator;
|
||||
uint32_t err_type;
|
||||
};
|
||||
|
||||
union msm_audio_event_payload {
|
||||
struct msm_audio_aio_buf aio_buf;
|
||||
struct msm_audio_bitstream_info stream_info;
|
||||
struct msm_audio_bitstream_error_info error_info;
|
||||
int reserved;
|
||||
};
|
||||
|
||||
struct msm_audio_event {
|
||||
int event_type;
|
||||
int timeout_ms;
|
||||
union msm_audio_event_payload event_payload;
|
||||
};
|
||||
|
||||
#define MSM_SNDDEV_CAP_RX 0x1
|
||||
#define MSM_SNDDEV_CAP_TX 0x2
|
||||
#define MSM_SNDDEV_CAP_VOICE 0x4
|
||||
|
||||
struct msm_snd_device_info {
|
||||
uint32_t dev_id;
|
||||
uint32_t dev_cap; /* bitmask describe capability of device */
|
||||
char dev_name[64];
|
||||
};
|
||||
|
||||
struct msm_snd_device_list {
|
||||
uint32_t num_dev; /* Indicate number of device info to be retrieved */
|
||||
struct msm_snd_device_info *list;
|
||||
};
|
||||
|
||||
struct msm_dtmf_config {
|
||||
uint16_t path;
|
||||
uint16_t dtmf_hi;
|
||||
uint16_t dtmf_low;
|
||||
uint16_t duration;
|
||||
uint16_t tx_gain;
|
||||
uint16_t rx_gain;
|
||||
uint16_t mixing;
|
||||
};
|
||||
|
||||
#define AUDIO_ROUTE_STREAM_VOICE_RX 0
|
||||
#define AUDIO_ROUTE_STREAM_VOICE_TX 1
|
||||
#define AUDIO_ROUTE_STREAM_PLAYBACK 2
|
||||
#define AUDIO_ROUTE_STREAM_REC 3
|
||||
|
||||
struct msm_audio_route_config {
|
||||
uint32_t stream_type;
|
||||
uint32_t stream_id;
|
||||
uint32_t dev_id;
|
||||
};
|
||||
|
||||
#define AUDIO_MAX_EQ_BANDS 12
|
||||
|
||||
struct msm_audio_eq_band {
|
||||
uint16_t band_idx; /* The band index, 0 .. 11 */
|
||||
uint32_t filter_type; /* Filter band type */
|
||||
uint32_t center_freq_hz; /* Filter band center frequency */
|
||||
uint32_t filter_gain; /* Filter band initial gain (dB) */
|
||||
/* Range is +12 dB to -12 dB with 1dB increments. */
|
||||
uint32_t q_factor;
|
||||
} __attribute__ ((packed));
|
||||
|
||||
struct msm_audio_eq_stream_config {
|
||||
uint32_t enable; /* Number of consequtive bands specified */
|
||||
uint32_t num_bands;
|
||||
struct msm_audio_eq_band eq_bands[AUDIO_MAX_EQ_BANDS];
|
||||
} __attribute__ ((packed));
|
||||
|
||||
struct msm_acdb_cmd_device {
|
||||
uint32_t command_id;
|
||||
uint32_t device_id;
|
||||
uint32_t network_id;
|
||||
uint32_t sample_rate_id; /* Actual sample rate value */
|
||||
uint32_t interface_id; /* See interface id's above */
|
||||
uint32_t algorithm_block_id; /* See enumerations above */
|
||||
uint32_t total_bytes; /* Length in bytes used by buffer */
|
||||
uint32_t *phys_buf; /* Physical Address of data */
|
||||
};
|
||||
|
||||
struct msm_hwacc_data_config {
|
||||
__u32 buf_size;
|
||||
__u32 num_buf;
|
||||
__u32 num_channels;
|
||||
__u8 channel_map[8];
|
||||
__u32 sample_rate;
|
||||
__u32 bits_per_sample;
|
||||
};
|
||||
|
||||
struct msm_hwacc_buf_cfg {
|
||||
__u32 input_len;
|
||||
__u32 output_len;
|
||||
};
|
||||
|
||||
struct msm_hwacc_buf_avail {
|
||||
__u32 input_num_avail;
|
||||
__u32 output_num_avail;
|
||||
};
|
||||
|
||||
struct msm_hwacc_effects_config {
|
||||
struct msm_hwacc_data_config input;
|
||||
struct msm_hwacc_data_config output;
|
||||
struct msm_hwacc_buf_cfg buf_cfg;
|
||||
__u32 meta_mode_enabled;
|
||||
__u32 overwrite_topology;
|
||||
__s32 topology;
|
||||
};
|
||||
|
||||
#endif
|
||||
76
original-kernel-headers/linux/msm_audio_aac.h
Normal file
76
original-kernel-headers/linux/msm_audio_aac.h
Normal file
@@ -0,0 +1,76 @@
|
||||
#ifndef _MSM_AUDIO_AAC_H
|
||||
#define _MSM_AUDIO_AAC_H
|
||||
|
||||
#include <linux/msm_audio.h>
|
||||
|
||||
#define AUDIO_SET_AAC_CONFIG _IOW(AUDIO_IOCTL_MAGIC, \
|
||||
(AUDIO_MAX_COMMON_IOCTL_NUM+0), struct msm_audio_aac_config)
|
||||
#define AUDIO_GET_AAC_CONFIG _IOR(AUDIO_IOCTL_MAGIC, \
|
||||
(AUDIO_MAX_COMMON_IOCTL_NUM+1), struct msm_audio_aac_config)
|
||||
|
||||
#define AUDIO_SET_AAC_ENC_CONFIG _IOW(AUDIO_IOCTL_MAGIC, \
|
||||
(AUDIO_MAX_COMMON_IOCTL_NUM+3), struct msm_audio_aac_enc_config)
|
||||
|
||||
#define AUDIO_GET_AAC_ENC_CONFIG _IOR(AUDIO_IOCTL_MAGIC, \
|
||||
(AUDIO_MAX_COMMON_IOCTL_NUM+4), struct msm_audio_aac_enc_config)
|
||||
|
||||
#define AUDIO_SET_AAC_MIX_CONFIG _IOR(AUDIO_IOCTL_MAGIC, \
|
||||
(AUDIO_MAX_COMMON_IOCTL_NUM+5), uint32_t)
|
||||
|
||||
#define AUDIO_AAC_FORMAT_ADTS -1
|
||||
#define AUDIO_AAC_FORMAT_RAW 0x0000
|
||||
#define AUDIO_AAC_FORMAT_PSUEDO_RAW 0x0001
|
||||
#define AUDIO_AAC_FORMAT_LOAS 0x0002
|
||||
#define AUDIO_AAC_FORMAT_ADIF 0x0003
|
||||
|
||||
#define AUDIO_AAC_OBJECT_LC 0x0002
|
||||
#define AUDIO_AAC_OBJECT_LTP 0x0004
|
||||
#define AUDIO_AAC_OBJECT_ERLC 0x0011
|
||||
#define AUDIO_AAC_OBJECT_BSAC 0x0016
|
||||
|
||||
#define AUDIO_AAC_SEC_DATA_RES_ON 0x0001
|
||||
#define AUDIO_AAC_SEC_DATA_RES_OFF 0x0000
|
||||
|
||||
#define AUDIO_AAC_SCA_DATA_RES_ON 0x0001
|
||||
#define AUDIO_AAC_SCA_DATA_RES_OFF 0x0000
|
||||
|
||||
#define AUDIO_AAC_SPEC_DATA_RES_ON 0x0001
|
||||
#define AUDIO_AAC_SPEC_DATA_RES_OFF 0x0000
|
||||
|
||||
#define AUDIO_AAC_SBR_ON_FLAG_ON 0x0001
|
||||
#define AUDIO_AAC_SBR_ON_FLAG_OFF 0x0000
|
||||
|
||||
#define AUDIO_AAC_SBR_PS_ON_FLAG_ON 0x0001
|
||||
#define AUDIO_AAC_SBR_PS_ON_FLAG_OFF 0x0000
|
||||
|
||||
/* Primary channel on both left and right channels */
|
||||
#define AUDIO_AAC_DUAL_MONO_PL_PR 0
|
||||
/* Secondary channel on both left and right channels */
|
||||
#define AUDIO_AAC_DUAL_MONO_SL_SR 1
|
||||
/* Primary channel on right channel and 2nd on left channel */
|
||||
#define AUDIO_AAC_DUAL_MONO_SL_PR 2
|
||||
/* 2nd channel on right channel and primary on left channel */
|
||||
#define AUDIO_AAC_DUAL_MONO_PL_SR 3
|
||||
|
||||
struct msm_audio_aac_config {
|
||||
signed short format;
|
||||
unsigned short audio_object;
|
||||
unsigned short ep_config; /* 0 ~ 3 useful only obj = ERLC */
|
||||
unsigned short aac_section_data_resilience_flag;
|
||||
unsigned short aac_scalefactor_data_resilience_flag;
|
||||
unsigned short aac_spectral_data_resilience_flag;
|
||||
unsigned short sbr_on_flag;
|
||||
unsigned short sbr_ps_on_flag;
|
||||
unsigned short dual_mono_mode;
|
||||
unsigned short channel_configuration;
|
||||
unsigned short sample_rate;
|
||||
};
|
||||
|
||||
struct msm_audio_aac_enc_config {
|
||||
uint32_t channels;
|
||||
uint32_t sample_rate;
|
||||
uint32_t bit_rate;
|
||||
uint32_t stream_format;
|
||||
};
|
||||
|
||||
#endif /* _MSM_AUDIO_AAC_H */
|
||||
41
original-kernel-headers/linux/msm_audio_ac3.h
Normal file
41
original-kernel-headers/linux/msm_audio_ac3.h
Normal file
@@ -0,0 +1,41 @@
|
||||
#ifndef _MSM_AUDIO_AC3_H
|
||||
#define _MSM_AUDIO_AC3_H
|
||||
|
||||
#include <linux/msm_audio.h>
|
||||
|
||||
#define AUDIO_SET_AC3_CONFIG _IOW(AUDIO_IOCTL_MAGIC, \
|
||||
(AUDIO_MAX_COMMON_IOCTL_NUM+0), unsigned)
|
||||
#define AUDIO_GET_AC3_CONFIG _IOR(AUDIO_IOCTL_MAGIC, \
|
||||
(AUDIO_MAX_COMMON_IOCTL_NUM+1), unsigned)
|
||||
|
||||
#define AUDAC3_DEF_WORDSIZE 0
|
||||
#define AUDAC3_DEF_USER_DOWNMIX_FLAG 0x0
|
||||
#define AUDAC3_DEF_USER_KARAOKE_FLAG 0x0
|
||||
#define AUDAC3_DEF_ERROR_CONCEALMENT 0
|
||||
#define AUDAC3_DEF_MAX_REPEAT_COUNT 0
|
||||
|
||||
struct msm_audio_ac3_config {
|
||||
unsigned short numChans;
|
||||
unsigned short wordSize;
|
||||
unsigned short kCapableMode;
|
||||
unsigned short compMode;
|
||||
unsigned short outLfeOn;
|
||||
unsigned short outputMode;
|
||||
unsigned short stereoMode;
|
||||
unsigned short dualMonoMode;
|
||||
unsigned short fsCod;
|
||||
unsigned short pcmScaleFac;
|
||||
unsigned short dynRngScaleHi;
|
||||
unsigned short dynRngScaleLow;
|
||||
unsigned short user_downmix_flag;
|
||||
unsigned short user_karaoke_flag;
|
||||
unsigned short dm_address_high;
|
||||
unsigned short dm_address_low;
|
||||
unsigned short ko_address_high;
|
||||
unsigned short ko_address_low;
|
||||
unsigned short error_concealment;
|
||||
unsigned short max_rep_count;
|
||||
unsigned short channel_routing_mode[6];
|
||||
};
|
||||
|
||||
#endif /* _MSM_AUDIO_AC3_H */
|
||||
24
original-kernel-headers/linux/msm_audio_alac.h
Normal file
24
original-kernel-headers/linux/msm_audio_alac.h
Normal file
@@ -0,0 +1,24 @@
|
||||
#ifndef _MSM_AUDIO_ALAC_H
|
||||
#define _MSM_AUDIO_ALAC_H
|
||||
|
||||
#define AUDIO_GET_ALAC_CONFIG _IOR(AUDIO_IOCTL_MAGIC, \
|
||||
(AUDIO_MAX_COMMON_IOCTL_NUM+0), struct msm_audio_alac_config)
|
||||
#define AUDIO_SET_ALAC_CONFIG _IOW(AUDIO_IOCTL_MAGIC, \
|
||||
(AUDIO_MAX_COMMON_IOCTL_NUM+1), struct msm_audio_alac_config)
|
||||
|
||||
struct msm_audio_alac_config {
|
||||
uint32_t frameLength;
|
||||
uint8_t compatVersion;
|
||||
uint8_t bitDepth;
|
||||
uint8_t pb; /* currently unused */
|
||||
uint8_t mb; /* currently unused */
|
||||
uint8_t kb; /* currently unused */
|
||||
uint8_t channelCount;
|
||||
uint16_t maxRun; /* currently unused */
|
||||
uint32_t maxSize;
|
||||
uint32_t averageBitRate;
|
||||
uint32_t sampleRate;
|
||||
uint32_t channelLayout;
|
||||
};
|
||||
|
||||
#endif /* _MSM_AUDIO_ALAC_H */
|
||||
33
original-kernel-headers/linux/msm_audio_amrnb.h
Normal file
33
original-kernel-headers/linux/msm_audio_amrnb.h
Normal file
@@ -0,0 +1,33 @@
|
||||
#ifndef _MSM_AUDIO_AMRNB_H
|
||||
#define _MSM_AUDIO_AMRNB_H
|
||||
|
||||
#include <linux/msm_audio.h>
|
||||
|
||||
#define AUDIO_GET_AMRNB_ENC_CONFIG _IOW(AUDIO_IOCTL_MAGIC, \
|
||||
(AUDIO_MAX_COMMON_IOCTL_NUM+0), unsigned)
|
||||
#define AUDIO_SET_AMRNB_ENC_CONFIG _IOR(AUDIO_IOCTL_MAGIC, \
|
||||
(AUDIO_MAX_COMMON_IOCTL_NUM+1), unsigned)
|
||||
#define AUDIO_GET_AMRNB_ENC_CONFIG_V2 _IOW(AUDIO_IOCTL_MAGIC, \
|
||||
(AUDIO_MAX_COMMON_IOCTL_NUM+2), \
|
||||
struct msm_audio_amrnb_enc_config_v2)
|
||||
#define AUDIO_SET_AMRNB_ENC_CONFIG_V2 _IOR(AUDIO_IOCTL_MAGIC, \
|
||||
(AUDIO_MAX_COMMON_IOCTL_NUM+3), \
|
||||
struct msm_audio_amrnb_enc_config_v2)
|
||||
|
||||
struct msm_audio_amrnb_enc_config {
|
||||
unsigned short voicememoencweight1;
|
||||
unsigned short voicememoencweight2;
|
||||
unsigned short voicememoencweight3;
|
||||
unsigned short voicememoencweight4;
|
||||
unsigned short dtx_mode_enable; /* 0xFFFF - enable, 0- disable */
|
||||
unsigned short test_mode_enable; /* 0xFFFF - enable, 0- disable */
|
||||
unsigned short enc_mode; /* 0-MR475,1-MR515,2-MR59,3-MR67,4-MR74
|
||||
5-MR795, 6- MR102, 7- MR122(default) */
|
||||
};
|
||||
|
||||
struct msm_audio_amrnb_enc_config_v2 {
|
||||
uint32_t band_mode;
|
||||
uint32_t dtx_enable;
|
||||
uint32_t frame_format;
|
||||
};
|
||||
#endif /* _MSM_AUDIO_AMRNB_H */
|
||||
18
original-kernel-headers/linux/msm_audio_amrwb.h
Normal file
18
original-kernel-headers/linux/msm_audio_amrwb.h
Normal file
@@ -0,0 +1,18 @@
|
||||
#ifndef _MSM_AUDIO_AMRWB_H
|
||||
#define _MSM_AUDIO_AMRWB_H
|
||||
|
||||
#include <linux/msm_audio.h>
|
||||
|
||||
#define AUDIO_GET_AMRWB_ENC_CONFIG _IOW(AUDIO_IOCTL_MAGIC, \
|
||||
(AUDIO_MAX_COMMON_IOCTL_NUM+0), \
|
||||
struct msm_audio_amrwb_enc_config)
|
||||
#define AUDIO_SET_AMRWB_ENC_CONFIG _IOR(AUDIO_IOCTL_MAGIC, \
|
||||
(AUDIO_MAX_COMMON_IOCTL_NUM+1), \
|
||||
struct msm_audio_amrwb_enc_config)
|
||||
|
||||
struct msm_audio_amrwb_enc_config {
|
||||
uint32_t band_mode;
|
||||
uint32_t dtx_enable;
|
||||
uint32_t frame_format;
|
||||
};
|
||||
#endif /* _MSM_AUDIO_AMRWB_H */
|
||||
18
original-kernel-headers/linux/msm_audio_amrwbplus.h
Normal file
18
original-kernel-headers/linux/msm_audio_amrwbplus.h
Normal file
@@ -0,0 +1,18 @@
|
||||
#ifndef _MSM_AUDIO_AMR_WB_PLUS_H
|
||||
#define _MSM_AUDIO_AMR_WB_PLUS_H
|
||||
|
||||
#define AUDIO_GET_AMRWBPLUS_CONFIG_V2 _IOR(AUDIO_IOCTL_MAGIC, \
|
||||
(AUDIO_MAX_COMMON_IOCTL_NUM+2), struct msm_audio_amrwbplus_config_v2)
|
||||
#define AUDIO_SET_AMRWBPLUS_CONFIG_V2 _IOW(AUDIO_IOCTL_MAGIC, \
|
||||
(AUDIO_MAX_COMMON_IOCTL_NUM+3), struct msm_audio_amrwbplus_config_v2)
|
||||
|
||||
struct msm_audio_amrwbplus_config_v2 {
|
||||
unsigned int size_bytes;
|
||||
unsigned int version;
|
||||
unsigned int num_channels;
|
||||
unsigned int amr_band_mode;
|
||||
unsigned int amr_dtx_mode;
|
||||
unsigned int amr_frame_fmt;
|
||||
unsigned int amr_lsf_idx;
|
||||
};
|
||||
#endif /* _MSM_AUDIO_AMR_WB_PLUS_H */
|
||||
25
original-kernel-headers/linux/msm_audio_ape.h
Normal file
25
original-kernel-headers/linux/msm_audio_ape.h
Normal file
@@ -0,0 +1,25 @@
|
||||
/*The following structure has been taken
|
||||
from Monkey's Audio SDK with permission*/
|
||||
|
||||
#ifndef _MSM_AUDIO_APE_H
|
||||
#define _MSM_AUDIO_APE_H
|
||||
|
||||
#define AUDIO_GET_APE_CONFIG _IOR(AUDIO_IOCTL_MAGIC, \
|
||||
(AUDIO_MAX_COMMON_IOCTL_NUM+0), struct msm_audio_ape_config)
|
||||
#define AUDIO_SET_APE_CONFIG _IOW(AUDIO_IOCTL_MAGIC, \
|
||||
(AUDIO_MAX_COMMON_IOCTL_NUM+1), struct msm_audio_ape_config)
|
||||
|
||||
struct msm_audio_ape_config {
|
||||
uint16_t compatibleVersion;
|
||||
uint16_t compressionLevel;
|
||||
uint32_t formatFlags;
|
||||
uint32_t blocksPerFrame;
|
||||
uint32_t finalFrameBlocks;
|
||||
uint32_t totalFrames;
|
||||
uint16_t bitsPerSample;
|
||||
uint16_t numChannels;
|
||||
uint32_t sampleRate;
|
||||
uint32_t seekTablePresent;
|
||||
};
|
||||
|
||||
#endif /* _MSM_AUDIO_APE_H */
|
||||
692
original-kernel-headers/linux/msm_audio_calibration.h
Normal file
692
original-kernel-headers/linux/msm_audio_calibration.h
Normal file
@@ -0,0 +1,692 @@
|
||||
#ifndef _MSM_AUDIO_CALIBRATION_H
|
||||
#define _MSM_AUDIO_CALIBRATION_H
|
||||
|
||||
#include <linux/types.h>
|
||||
#include <linux/ioctl.h>
|
||||
|
||||
#define CAL_IOCTL_MAGIC 'a'
|
||||
|
||||
#define AUDIO_ALLOCATE_CALIBRATION _IOWR(CAL_IOCTL_MAGIC, \
|
||||
200, void *)
|
||||
#define AUDIO_DEALLOCATE_CALIBRATION _IOWR(CAL_IOCTL_MAGIC, \
|
||||
201, void *)
|
||||
#define AUDIO_PREPARE_CALIBRATION _IOWR(CAL_IOCTL_MAGIC, \
|
||||
202, void *)
|
||||
#define AUDIO_SET_CALIBRATION _IOWR(CAL_IOCTL_MAGIC, \
|
||||
203, void *)
|
||||
#define AUDIO_GET_CALIBRATION _IOWR(CAL_IOCTL_MAGIC, \
|
||||
204, void *)
|
||||
#define AUDIO_POST_CALIBRATION _IOWR(CAL_IOCTL_MAGIC, \
|
||||
205, void *)
|
||||
|
||||
/* For Real-Time Audio Calibration */
|
||||
#define AUDIO_GET_RTAC_ADM_INFO _IOR(CAL_IOCTL_MAGIC, \
|
||||
207, void *)
|
||||
#define AUDIO_GET_RTAC_VOICE_INFO _IOR(CAL_IOCTL_MAGIC, \
|
||||
208, void *)
|
||||
#define AUDIO_GET_RTAC_ADM_CAL _IOWR(CAL_IOCTL_MAGIC, \
|
||||
209, void *)
|
||||
#define AUDIO_SET_RTAC_ADM_CAL _IOWR(CAL_IOCTL_MAGIC, \
|
||||
210, void *)
|
||||
#define AUDIO_GET_RTAC_ASM_CAL _IOWR(CAL_IOCTL_MAGIC, \
|
||||
211, void *)
|
||||
#define AUDIO_SET_RTAC_ASM_CAL _IOWR(CAL_IOCTL_MAGIC, \
|
||||
212, void *)
|
||||
#define AUDIO_GET_RTAC_CVS_CAL _IOWR(CAL_IOCTL_MAGIC, \
|
||||
213, void *)
|
||||
#define AUDIO_SET_RTAC_CVS_CAL _IOWR(CAL_IOCTL_MAGIC, \
|
||||
214, void *)
|
||||
#define AUDIO_GET_RTAC_CVP_CAL _IOWR(CAL_IOCTL_MAGIC, \
|
||||
215, void *)
|
||||
#define AUDIO_SET_RTAC_CVP_CAL _IOWR(CAL_IOCTL_MAGIC, \
|
||||
216, void *)
|
||||
#define AUDIO_GET_RTAC_AFE_CAL _IOWR(CAL_IOCTL_MAGIC, \
|
||||
217, void *)
|
||||
#define AUDIO_SET_RTAC_AFE_CAL _IOWR(CAL_IOCTL_MAGIC, \
|
||||
218, void *)
|
||||
enum {
|
||||
CVP_VOC_RX_TOPOLOGY_CAL_TYPE = 0,
|
||||
CVP_VOC_TX_TOPOLOGY_CAL_TYPE,
|
||||
CVP_VOCPROC_STATIC_CAL_TYPE,
|
||||
CVP_VOCPROC_DYNAMIC_CAL_TYPE,
|
||||
CVS_VOCSTRM_STATIC_CAL_TYPE,
|
||||
CVP_VOCDEV_CFG_CAL_TYPE,
|
||||
CVP_VOCPROC_STATIC_COL_CAL_TYPE,
|
||||
CVP_VOCPROC_DYNAMIC_COL_CAL_TYPE,
|
||||
CVS_VOCSTRM_STATIC_COL_CAL_TYPE,
|
||||
|
||||
ADM_TOPOLOGY_CAL_TYPE,
|
||||
ADM_CUST_TOPOLOGY_CAL_TYPE,
|
||||
ADM_AUDPROC_CAL_TYPE,
|
||||
ADM_AUDVOL_CAL_TYPE,
|
||||
|
||||
ASM_TOPOLOGY_CAL_TYPE,
|
||||
ASM_CUST_TOPOLOGY_CAL_TYPE,
|
||||
ASM_AUDSTRM_CAL_TYPE,
|
||||
|
||||
AFE_COMMON_RX_CAL_TYPE,
|
||||
AFE_COMMON_TX_CAL_TYPE,
|
||||
AFE_ANC_CAL_TYPE,
|
||||
AFE_AANC_CAL_TYPE,
|
||||
AFE_FB_SPKR_PROT_CAL_TYPE,
|
||||
AFE_HW_DELAY_CAL_TYPE,
|
||||
AFE_SIDETONE_CAL_TYPE,
|
||||
AFE_TOPOLOGY_CAL_TYPE,
|
||||
AFE_CUST_TOPOLOGY_CAL_TYPE,
|
||||
|
||||
LSM_CUST_TOPOLOGY_CAL_TYPE,
|
||||
LSM_TOPOLOGY_CAL_TYPE,
|
||||
LSM_CAL_TYPE,
|
||||
|
||||
ADM_RTAC_INFO_CAL_TYPE,
|
||||
VOICE_RTAC_INFO_CAL_TYPE,
|
||||
ADM_RTAC_APR_CAL_TYPE,
|
||||
ASM_RTAC_APR_CAL_TYPE,
|
||||
VOICE_RTAC_APR_CAL_TYPE,
|
||||
|
||||
MAD_CAL_TYPE,
|
||||
ULP_AFE_CAL_TYPE,
|
||||
ULP_LSM_CAL_TYPE,
|
||||
|
||||
DTS_EAGLE_CAL_TYPE,
|
||||
AUDIO_CORE_METAINFO_CAL_TYPE,
|
||||
SRS_TRUMEDIA_CAL_TYPE,
|
||||
|
||||
CORE_CUSTOM_TOPOLOGIES_CAL_TYPE,
|
||||
ADM_RTAC_AUDVOL_CAL_TYPE,
|
||||
|
||||
ULP_LSM_TOPOLOGY_ID_CAL_TYPE,
|
||||
AFE_FB_SPKR_PROT_TH_VI_CAL_TYPE,
|
||||
AFE_FB_SPKR_PROT_EX_VI_CAL_TYPE,
|
||||
MAX_CAL_TYPES,
|
||||
};
|
||||
|
||||
#define AFE_FB_SPKR_PROT_TH_VI_CAL_TYPE AFE_FB_SPKR_PROT_TH_VI_CAL_TYPE
|
||||
#define AFE_FB_SPKR_PROT_EX_VI_CAL_TYPE AFE_FB_SPKR_PROT_EX_VI_CAL_TYPE
|
||||
|
||||
enum {
|
||||
VERSION_0_0,
|
||||
};
|
||||
|
||||
enum {
|
||||
PER_VOCODER_CAL_BIT_MASK = 0x10000,
|
||||
};
|
||||
|
||||
#define MAX_IOCTL_CMD_SIZE 512
|
||||
|
||||
/* common structures */
|
||||
|
||||
struct audio_cal_header {
|
||||
int32_t data_size;
|
||||
int32_t version;
|
||||
int32_t cal_type;
|
||||
int32_t cal_type_size;
|
||||
};
|
||||
|
||||
struct audio_cal_type_header {
|
||||
int32_t version;
|
||||
int32_t buffer_number;
|
||||
};
|
||||
|
||||
struct audio_cal_data {
|
||||
/* Size of cal data at mem_handle allocation or at vaddr */
|
||||
int32_t cal_size;
|
||||
/* If mem_handle if shared memory is used*/
|
||||
int32_t mem_handle;
|
||||
/* size of virtual memory if shared memory not used */
|
||||
};
|
||||
|
||||
|
||||
/* AUDIO_ALLOCATE_CALIBRATION */
|
||||
struct audio_cal_type_alloc {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
};
|
||||
|
||||
struct audio_cal_alloc {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_alloc cal_type;
|
||||
};
|
||||
|
||||
|
||||
/* AUDIO_DEALLOCATE_CALIBRATION */
|
||||
struct audio_cal_type_dealloc {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
};
|
||||
|
||||
struct audio_cal_dealloc {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_dealloc cal_type;
|
||||
};
|
||||
|
||||
|
||||
/* AUDIO_PREPARE_CALIBRATION */
|
||||
struct audio_cal_type_prepare {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
};
|
||||
|
||||
struct audio_cal_prepare {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_prepare cal_type;
|
||||
};
|
||||
|
||||
|
||||
/* AUDIO_POST_CALIBRATION */
|
||||
struct audio_cal_type_post {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
};
|
||||
|
||||
struct audio_cal_post {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_post cal_type;
|
||||
};
|
||||
|
||||
/*AUDIO_CORE_META_INFO */
|
||||
|
||||
struct audio_cal_info_metainfo {
|
||||
uint32_t nKey;
|
||||
};
|
||||
|
||||
/* Cal info types */
|
||||
enum {
|
||||
RX_DEVICE,
|
||||
TX_DEVICE,
|
||||
MAX_PATH_TYPE
|
||||
};
|
||||
|
||||
struct audio_cal_info_adm_top {
|
||||
int32_t topology;
|
||||
int32_t acdb_id;
|
||||
/* RX_DEVICE or TX_DEVICE */
|
||||
int32_t path;
|
||||
int32_t app_type;
|
||||
int32_t sample_rate;
|
||||
};
|
||||
|
||||
struct audio_cal_info_audproc {
|
||||
int32_t acdb_id;
|
||||
/* RX_DEVICE or TX_DEVICE */
|
||||
int32_t path;
|
||||
int32_t app_type;
|
||||
int32_t sample_rate;
|
||||
};
|
||||
|
||||
struct audio_cal_info_audvol {
|
||||
int32_t acdb_id;
|
||||
/* RX_DEVICE or TX_DEVICE */
|
||||
int32_t path;
|
||||
int32_t app_type;
|
||||
int32_t vol_index;
|
||||
};
|
||||
|
||||
struct audio_cal_info_afe {
|
||||
int32_t acdb_id;
|
||||
/* RX_DEVICE or TX_DEVICE */
|
||||
int32_t path;
|
||||
int32_t sample_rate;
|
||||
};
|
||||
|
||||
struct audio_cal_info_afe_top {
|
||||
int32_t topology;
|
||||
int32_t acdb_id;
|
||||
/* RX_DEVICE or TX_DEVICE */
|
||||
int32_t path;
|
||||
int32_t sample_rate;
|
||||
};
|
||||
|
||||
struct audio_cal_info_asm_top {
|
||||
int32_t topology;
|
||||
int32_t app_type;
|
||||
};
|
||||
|
||||
struct audio_cal_info_audstrm {
|
||||
int32_t app_type;
|
||||
};
|
||||
|
||||
struct audio_cal_info_aanc {
|
||||
int32_t acdb_id;
|
||||
};
|
||||
|
||||
#define MAX_HW_DELAY_ENTRIES 25
|
||||
|
||||
struct audio_cal_hw_delay_entry {
|
||||
uint32_t sample_rate;
|
||||
uint32_t delay_usec;
|
||||
};
|
||||
|
||||
struct audio_cal_hw_delay_data {
|
||||
uint32_t num_entries;
|
||||
struct audio_cal_hw_delay_entry entry[MAX_HW_DELAY_ENTRIES];
|
||||
};
|
||||
|
||||
struct audio_cal_info_hw_delay {
|
||||
int32_t acdb_id;
|
||||
/* RX_DEVICE or TX_DEVICE */
|
||||
int32_t path;
|
||||
int32_t property_type;
|
||||
struct audio_cal_hw_delay_data data;
|
||||
};
|
||||
|
||||
enum msm_spkr_prot_states {
|
||||
MSM_SPKR_PROT_CALIBRATED,
|
||||
MSM_SPKR_PROT_CALIBRATION_IN_PROGRESS,
|
||||
MSM_SPKR_PROT_DISABLED,
|
||||
MSM_SPKR_PROT_NOT_CALIBRATED,
|
||||
MSM_SPKR_PROT_PRE_CALIBRATED,
|
||||
MSM_SPKR_PROT_IN_FTM_MODE
|
||||
};
|
||||
#define MSM_SPKR_PROT_IN_FTM_MODE MSM_SPKR_PROT_IN_FTM_MODE
|
||||
|
||||
enum msm_spkr_count {
|
||||
SP_V2_SPKR_1,
|
||||
SP_V2_SPKR_2,
|
||||
SP_V2_NUM_MAX_SPKRS
|
||||
};
|
||||
|
||||
struct audio_cal_info_spk_prot_cfg {
|
||||
int32_t r0[SP_V2_NUM_MAX_SPKRS];
|
||||
int32_t t0[SP_V2_NUM_MAX_SPKRS];
|
||||
uint32_t quick_calib_flag;
|
||||
uint32_t mode;
|
||||
/*
|
||||
* 0 - Start spk prot
|
||||
* 1 - Start calib
|
||||
* 2 - Disable spk prot
|
||||
*/
|
||||
};
|
||||
|
||||
struct audio_cal_info_sp_th_vi_ftm_cfg {
|
||||
uint32_t wait_time[SP_V2_NUM_MAX_SPKRS];
|
||||
uint32_t ftm_time[SP_V2_NUM_MAX_SPKRS];
|
||||
uint32_t mode;
|
||||
/*
|
||||
* 0 - normal running mode
|
||||
* 1 - Calibration
|
||||
* 2 - FTM mode
|
||||
*/
|
||||
};
|
||||
|
||||
struct audio_cal_info_sp_ex_vi_ftm_cfg {
|
||||
uint32_t wait_time[SP_V2_NUM_MAX_SPKRS];
|
||||
uint32_t ftm_time[SP_V2_NUM_MAX_SPKRS];
|
||||
uint32_t mode;
|
||||
/*
|
||||
* 0 - normal running mode
|
||||
* 2 - FTM mode
|
||||
*/
|
||||
};
|
||||
|
||||
struct audio_cal_info_sp_ex_vi_param {
|
||||
int32_t freq_q20[SP_V2_NUM_MAX_SPKRS];
|
||||
int32_t resis_q24[SP_V2_NUM_MAX_SPKRS];
|
||||
int32_t qmct_q24[SP_V2_NUM_MAX_SPKRS];
|
||||
int32_t status[SP_V2_NUM_MAX_SPKRS];
|
||||
};
|
||||
|
||||
struct audio_cal_info_sp_th_vi_param {
|
||||
int32_t r_dc_q24[SP_V2_NUM_MAX_SPKRS];
|
||||
int32_t temp_q22[SP_V2_NUM_MAX_SPKRS];
|
||||
int32_t status[SP_V2_NUM_MAX_SPKRS];
|
||||
};
|
||||
|
||||
struct audio_cal_info_msm_spk_prot_status {
|
||||
int32_t r0[SP_V2_NUM_MAX_SPKRS];
|
||||
int32_t status;
|
||||
};
|
||||
|
||||
struct audio_cal_info_sidetone {
|
||||
uint16_t enable;
|
||||
uint16_t gain;
|
||||
int32_t tx_acdb_id;
|
||||
int32_t rx_acdb_id;
|
||||
int32_t mid;
|
||||
int32_t pid;
|
||||
};
|
||||
|
||||
struct audio_cal_info_lsm_top {
|
||||
int32_t topology;
|
||||
int32_t acdb_id;
|
||||
int32_t app_type;
|
||||
};
|
||||
|
||||
|
||||
struct audio_cal_info_lsm {
|
||||
int32_t acdb_id;
|
||||
/* RX_DEVICE or TX_DEVICE */
|
||||
int32_t path;
|
||||
int32_t app_type;
|
||||
};
|
||||
|
||||
struct audio_cal_info_voc_top {
|
||||
int32_t topology;
|
||||
int32_t acdb_id;
|
||||
};
|
||||
|
||||
struct audio_cal_info_vocproc {
|
||||
int32_t tx_acdb_id;
|
||||
int32_t rx_acdb_id;
|
||||
int32_t tx_sample_rate;
|
||||
int32_t rx_sample_rate;
|
||||
};
|
||||
|
||||
enum {
|
||||
DEFAULT_FEATURE_SET,
|
||||
VOL_BOOST_FEATURE_SET,
|
||||
};
|
||||
|
||||
struct audio_cal_info_vocvol {
|
||||
int32_t tx_acdb_id;
|
||||
int32_t rx_acdb_id;
|
||||
/* DEFUALT_ or VOL_BOOST_FEATURE_SET */
|
||||
int32_t feature_set;
|
||||
};
|
||||
|
||||
struct audio_cal_info_vocdev_cfg {
|
||||
int32_t tx_acdb_id;
|
||||
int32_t rx_acdb_id;
|
||||
};
|
||||
|
||||
#define MAX_VOICE_COLUMNS 20
|
||||
|
||||
union audio_cal_col_na {
|
||||
uint8_t val8;
|
||||
uint16_t val16;
|
||||
uint32_t val32;
|
||||
uint64_t val64;
|
||||
} __attribute__((packed));
|
||||
|
||||
struct audio_cal_col {
|
||||
uint32_t id;
|
||||
uint32_t type;
|
||||
union audio_cal_col_na na_value;
|
||||
} __attribute__((packed));
|
||||
|
||||
struct audio_cal_col_data {
|
||||
uint32_t num_columns;
|
||||
struct audio_cal_col column[MAX_VOICE_COLUMNS];
|
||||
} __attribute__((packed));
|
||||
|
||||
struct audio_cal_info_voc_col {
|
||||
int32_t table_id;
|
||||
int32_t tx_acdb_id;
|
||||
int32_t rx_acdb_id;
|
||||
struct audio_cal_col_data data;
|
||||
};
|
||||
|
||||
/* AUDIO_SET_CALIBRATION & */
|
||||
struct audio_cal_type_basic {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
};
|
||||
|
||||
struct audio_cal_basic {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_basic cal_type;
|
||||
};
|
||||
|
||||
struct audio_cal_type_adm_top {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_adm_top cal_info;
|
||||
};
|
||||
|
||||
struct audio_cal_adm_top {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_adm_top cal_type;
|
||||
};
|
||||
|
||||
struct audio_cal_type_metainfo {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_metainfo cal_info;
|
||||
};
|
||||
|
||||
struct audio_core_metainfo {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_metainfo cal_type;
|
||||
};
|
||||
|
||||
struct audio_cal_type_audproc {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_audproc cal_info;
|
||||
};
|
||||
|
||||
struct audio_cal_audproc {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_audproc cal_type;
|
||||
};
|
||||
|
||||
struct audio_cal_type_audvol {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_audvol cal_info;
|
||||
};
|
||||
|
||||
struct audio_cal_audvol {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_audvol cal_type;
|
||||
};
|
||||
|
||||
struct audio_cal_type_asm_top {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_asm_top cal_info;
|
||||
};
|
||||
|
||||
struct audio_cal_asm_top {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_asm_top cal_type;
|
||||
};
|
||||
|
||||
struct audio_cal_type_audstrm {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_audstrm cal_info;
|
||||
};
|
||||
|
||||
struct audio_cal_audstrm {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_audstrm cal_type;
|
||||
};
|
||||
|
||||
struct audio_cal_type_afe {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_afe cal_info;
|
||||
};
|
||||
|
||||
struct audio_cal_afe {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_afe cal_type;
|
||||
};
|
||||
|
||||
struct audio_cal_type_afe_top {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_afe_top cal_info;
|
||||
};
|
||||
|
||||
struct audio_cal_afe_top {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_afe_top cal_type;
|
||||
};
|
||||
|
||||
struct audio_cal_type_aanc {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_aanc cal_info;
|
||||
};
|
||||
|
||||
struct audio_cal_aanc {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_aanc cal_type;
|
||||
};
|
||||
|
||||
struct audio_cal_type_fb_spk_prot_cfg {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_spk_prot_cfg cal_info;
|
||||
};
|
||||
|
||||
struct audio_cal_fb_spk_prot_cfg {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_fb_spk_prot_cfg cal_type;
|
||||
};
|
||||
|
||||
struct audio_cal_type_sp_th_vi_ftm_cfg {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_sp_th_vi_ftm_cfg cal_info;
|
||||
};
|
||||
|
||||
struct audio_cal_sp_th_vi_ftm_cfg {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_sp_th_vi_ftm_cfg cal_type;
|
||||
};
|
||||
|
||||
struct audio_cal_type_sp_ex_vi_ftm_cfg {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_sp_ex_vi_ftm_cfg cal_info;
|
||||
};
|
||||
|
||||
struct audio_cal_sp_ex_vi_ftm_cfg {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_sp_ex_vi_ftm_cfg cal_type;
|
||||
};
|
||||
struct audio_cal_type_hw_delay {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_hw_delay cal_info;
|
||||
};
|
||||
|
||||
struct audio_cal_hw_delay {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_hw_delay cal_type;
|
||||
};
|
||||
|
||||
struct audio_cal_type_sidetone {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_sidetone cal_info;
|
||||
};
|
||||
|
||||
struct audio_cal_sidetone {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_sidetone cal_type;
|
||||
};
|
||||
|
||||
struct audio_cal_type_lsm_top {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_lsm_top cal_info;
|
||||
};
|
||||
|
||||
struct audio_cal_lsm_top {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_lsm_top cal_type;
|
||||
};
|
||||
|
||||
struct audio_cal_type_lsm {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_lsm cal_info;
|
||||
};
|
||||
|
||||
struct audio_cal_lsm {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_lsm cal_type;
|
||||
};
|
||||
|
||||
struct audio_cal_type_voc_top {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_voc_top cal_info;
|
||||
};
|
||||
|
||||
struct audio_cal_voc_top {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_voc_top cal_type;
|
||||
};
|
||||
|
||||
struct audio_cal_type_vocproc {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_vocproc cal_info;
|
||||
};
|
||||
|
||||
struct audio_cal_vocproc {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_vocproc cal_type;
|
||||
};
|
||||
|
||||
struct audio_cal_type_vocvol {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_vocvol cal_info;
|
||||
};
|
||||
|
||||
struct audio_cal_vocvol {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_vocvol cal_type;
|
||||
};
|
||||
|
||||
struct audio_cal_type_vocdev_cfg {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_vocdev_cfg cal_info;
|
||||
};
|
||||
|
||||
struct audio_cal_vocdev_cfg {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_vocdev_cfg cal_type;
|
||||
};
|
||||
|
||||
struct audio_cal_type_voc_col {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_voc_col cal_info;
|
||||
};
|
||||
|
||||
struct audio_cal_voc_col {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_voc_col cal_type;
|
||||
};
|
||||
|
||||
/* AUDIO_GET_CALIBRATION */
|
||||
struct audio_cal_type_fb_spk_prot_status {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_msm_spk_prot_status cal_info;
|
||||
};
|
||||
|
||||
struct audio_cal_fb_spk_prot_status {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_fb_spk_prot_status cal_type;
|
||||
};
|
||||
|
||||
struct audio_cal_type_sp_th_vi_param {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_sp_th_vi_param cal_info;
|
||||
};
|
||||
|
||||
struct audio_cal_sp_th_vi_param {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_sp_th_vi_param cal_type;
|
||||
};
|
||||
struct audio_cal_type_sp_ex_vi_param {
|
||||
struct audio_cal_type_header cal_hdr;
|
||||
struct audio_cal_data cal_data;
|
||||
struct audio_cal_info_sp_ex_vi_param cal_info;
|
||||
};
|
||||
|
||||
struct audio_cal_sp_ex_vi_param {
|
||||
struct audio_cal_header hdr;
|
||||
struct audio_cal_type_sp_ex_vi_param cal_type;
|
||||
};
|
||||
#endif /* _MSM_AUDIO_CALIBRATION_H */
|
||||
154
original-kernel-headers/linux/msm_audio_mvs.h
Normal file
154
original-kernel-headers/linux/msm_audio_mvs.h
Normal file
@@ -0,0 +1,154 @@
|
||||
#ifndef _MSM_AUDIO_MVS_H
|
||||
#define _MSM_AUDIO_MVS_H
|
||||
|
||||
#include <linux/msm_audio.h>
|
||||
|
||||
#define AUDIO_GET_MVS_CONFIG _IOW(AUDIO_IOCTL_MAGIC, \
|
||||
(AUDIO_MAX_COMMON_IOCTL_NUM + 0), unsigned)
|
||||
#define AUDIO_SET_MVS_CONFIG _IOR(AUDIO_IOCTL_MAGIC, \
|
||||
(AUDIO_MAX_COMMON_IOCTL_NUM + 1), unsigned)
|
||||
|
||||
/* MVS modes */
|
||||
#define MVS_MODE_IS733 0x1 /*QCELP 13K*/
|
||||
#define MVS_MODE_IS127 0x2 /*EVRC-8k*/
|
||||
#define MVS_MODE_4GV_NB 0x3 /*EVRC-B*/
|
||||
#define MVS_MODE_4GV_WB 0x4 /*EVRC-WB*/
|
||||
#define MVS_MODE_AMR 0x5
|
||||
#define MVS_MODE_EFR 0x6
|
||||
#define MVS_MODE_FR 0x7
|
||||
#define MVS_MODE_HR 0x8
|
||||
#define MVS_MODE_LINEAR_PCM 0x9
|
||||
#define MVS_MODE_G711 0xA
|
||||
#define MVS_MODE_PCM 0xC
|
||||
#define MVS_MODE_AMR_WB 0xD
|
||||
#define MVS_MODE_G729A 0xE
|
||||
#define MVS_MODE_G711A 0xF
|
||||
#define MVS_MODE_G722 0x10
|
||||
#define MVS_MODE_PCM_WB 0x12
|
||||
|
||||
enum msm_audio_amr_mode {
|
||||
MVS_AMR_MODE_0475, /* AMR 4.75 kbps */
|
||||
MVS_AMR_MODE_0515, /* AMR 5.15 kbps */
|
||||
MVS_AMR_MODE_0590, /* AMR 5.90 kbps */
|
||||
MVS_AMR_MODE_0670, /* AMR 6.70 kbps */
|
||||
MVS_AMR_MODE_0740, /* AMR 7.40 kbps */
|
||||
MVS_AMR_MODE_0795, /* AMR 7.95 kbps */
|
||||
MVS_AMR_MODE_1020, /* AMR 10.20 kbps */
|
||||
MVS_AMR_MODE_1220, /* AMR 12.20 kbps */
|
||||
MVS_AMR_MODE_0660, /* AMR-WB 6.60 kbps */
|
||||
MVS_AMR_MODE_0885, /* AMR-WB 8.85 kbps */
|
||||
MVS_AMR_MODE_1265, /* AMR-WB 12.65 kbps */
|
||||
MVS_AMR_MODE_1425, /* AMR-WB 14.25 kbps */
|
||||
MVS_AMR_MODE_1585, /* AMR-WB 15.85 kbps */
|
||||
MVS_AMR_MODE_1825, /* AMR-WB 18.25 kbps */
|
||||
MVS_AMR_MODE_1985, /* AMR-WB 19.85 kbps */
|
||||
MVS_AMR_MODE_2305, /* AMR-WB 23.05 kbps */
|
||||
MVS_AMR_MODE_2385, /* AMR-WB 23.85 kbps */
|
||||
MVS_AMR_MODE_UNDEF
|
||||
};
|
||||
|
||||
/*The MVS VOC rate type is used to identify the rate of QCELP 13K(IS733),
|
||||
EVRC(IS127), 4GV, or 4GV-WB frame.*/
|
||||
enum msm_audio_voc_rate {
|
||||
MVS_VOC_0_RATE, /* Blank frame */
|
||||
MVS_VOC_8_RATE, /* 1/8 rate */
|
||||
MVS_VOC_4_RATE, /* 1/4 rate */
|
||||
MVS_VOC_2_RATE, /* 1/2 rate */
|
||||
MVS_VOC_1_RATE,/* Full rate */
|
||||
MVS_VOC_ERASURE, /* erasure frame */
|
||||
MVS_VOC_RATE_MAX,
|
||||
MVS_VOC_RATE_UNDEF = MVS_VOC_RATE_MAX
|
||||
};
|
||||
|
||||
enum msm_audio_amr_frame_type {
|
||||
MVS_AMR_SPEECH_GOOD, /* Good speech frame */
|
||||
MVS_AMR_SPEECH_DEGRADED, /* Speech degraded */
|
||||
MVS_AMR_ONSET, /* Onset */
|
||||
MVS_AMR_SPEECH_BAD, /* Corrupt speech frame (bad CRC) */
|
||||
MVS_AMR_SID_FIRST, /* First silence descriptor */
|
||||
MVS_AMR_SID_UPDATE, /* Comfort noise frame */
|
||||
MVS_AMR_SID_BAD, /* Corrupt SID frame (bad CRC) */
|
||||
MVS_AMR_NO_DATA, /* Nothing to transmit */
|
||||
MVS_AMR_SPEECH_LOST /* Downlink speech lost */
|
||||
};
|
||||
|
||||
enum msm_audio_g711a_mode {
|
||||
MVS_G711A_MODE_MULAW,
|
||||
MVS_G711A_MODE_ALAW
|
||||
};
|
||||
|
||||
enum msm_audio_g711_mode {
|
||||
MVS_G711_MODE_MULAW,
|
||||
MVS_G711_MODE_ALAW
|
||||
};
|
||||
|
||||
enum mvs_g722_mode_type {
|
||||
MVS_G722_MODE_01,
|
||||
MVS_G722_MODE_02,
|
||||
MVS_G722_MODE_03,
|
||||
MVS_G722_MODE_MAX,
|
||||
MVS_G722_MODE_UNDEF
|
||||
};
|
||||
|
||||
enum msm_audio_g711a_frame_type {
|
||||
MVS_G711A_SPEECH_GOOD,
|
||||
MVS_G711A_SID,
|
||||
MVS_G711A_NO_DATA,
|
||||
MVS_G711A_ERASURE
|
||||
};
|
||||
|
||||
enum msm_audio_g729a_frame_type {
|
||||
MVS_G729A_NO_DATA,
|
||||
MVS_G729A_SPEECH_GOOD,
|
||||
MVS_G729A_SID,
|
||||
MVS_G729A_ERASURE
|
||||
};
|
||||
|
||||
struct min_max_rate {
|
||||
uint32_t min_rate;
|
||||
uint32_t max_rate;
|
||||
};
|
||||
|
||||
struct msm_audio_mvs_config {
|
||||
uint32_t mvs_mode;
|
||||
uint32_t rate_type;
|
||||
struct min_max_rate min_max_rate;
|
||||
uint32_t dtx_mode;
|
||||
};
|
||||
|
||||
#define MVS_MAX_VOC_PKT_SIZE 640
|
||||
|
||||
struct gsm_header {
|
||||
uint8_t bfi;
|
||||
uint8_t sid;
|
||||
uint8_t taf;
|
||||
uint8_t ufi;
|
||||
};
|
||||
|
||||
struct q6_msm_audio_mvs_frame {
|
||||
union {
|
||||
uint32_t frame_type;
|
||||
uint32_t packet_rate;
|
||||
struct gsm_header gsm_frame_type;
|
||||
} header;
|
||||
uint32_t len;
|
||||
uint8_t voc_pkt[MVS_MAX_VOC_PKT_SIZE];
|
||||
|
||||
};
|
||||
|
||||
struct msm_audio_mvs_frame {
|
||||
uint32_t frame_type;
|
||||
uint32_t len;
|
||||
uint8_t voc_pkt[MVS_MAX_VOC_PKT_SIZE];
|
||||
|
||||
};
|
||||
|
||||
#define Q5V2_MVS_MAX_VOC_PKT_SIZE 320
|
||||
|
||||
struct q5v2_msm_audio_mvs_frame {
|
||||
uint32_t frame_type;
|
||||
uint32_t len;
|
||||
uint8_t voc_pkt[Q5V2_MVS_MAX_VOC_PKT_SIZE];
|
||||
|
||||
};
|
||||
#endif /* _MSM_AUDIO_MVS_H */
|
||||
37
original-kernel-headers/linux/msm_audio_qcp.h
Normal file
37
original-kernel-headers/linux/msm_audio_qcp.h
Normal file
@@ -0,0 +1,37 @@
|
||||
#ifndef _MSM_AUDIO_QCP_H
|
||||
#define _MSM_AUDIO_QCP_H
|
||||
|
||||
#include <linux/msm_audio.h>
|
||||
|
||||
#define AUDIO_SET_QCELP_ENC_CONFIG _IOW(AUDIO_IOCTL_MAGIC, \
|
||||
0, struct msm_audio_qcelp_enc_config)
|
||||
|
||||
#define AUDIO_GET_QCELP_ENC_CONFIG _IOR(AUDIO_IOCTL_MAGIC, \
|
||||
1, struct msm_audio_qcelp_enc_config)
|
||||
|
||||
#define AUDIO_SET_EVRC_ENC_CONFIG _IOW(AUDIO_IOCTL_MAGIC, \
|
||||
2, struct msm_audio_evrc_enc_config)
|
||||
|
||||
#define AUDIO_GET_EVRC_ENC_CONFIG _IOR(AUDIO_IOCTL_MAGIC, \
|
||||
3, struct msm_audio_evrc_enc_config)
|
||||
|
||||
#define CDMA_RATE_BLANK 0x00
|
||||
#define CDMA_RATE_EIGHTH 0x01
|
||||
#define CDMA_RATE_QUARTER 0x02
|
||||
#define CDMA_RATE_HALF 0x03
|
||||
#define CDMA_RATE_FULL 0x04
|
||||
#define CDMA_RATE_ERASURE 0x05
|
||||
|
||||
struct msm_audio_qcelp_enc_config {
|
||||
uint32_t cdma_rate;
|
||||
uint32_t min_bit_rate;
|
||||
uint32_t max_bit_rate;
|
||||
};
|
||||
|
||||
struct msm_audio_evrc_enc_config {
|
||||
uint32_t cdma_rate;
|
||||
uint32_t min_bit_rate;
|
||||
uint32_t max_bit_rate;
|
||||
};
|
||||
|
||||
#endif /* _MSM_AUDIO_QCP_H */
|
||||
36
original-kernel-headers/linux/msm_audio_sbc.h
Normal file
36
original-kernel-headers/linux/msm_audio_sbc.h
Normal file
@@ -0,0 +1,36 @@
|
||||
#ifndef _MSM_AUDIO_SBC_H
|
||||
#define _MSM_AUDIO_SBC_H
|
||||
|
||||
#include <linux/msm_audio.h>
|
||||
|
||||
#define AUDIO_SET_SBC_ENC_CONFIG _IOW(AUDIO_IOCTL_MAGIC, \
|
||||
(AUDIO_MAX_COMMON_IOCTL_NUM+0), struct msm_audio_sbc_enc_config)
|
||||
|
||||
#define AUDIO_GET_SBC_ENC_CONFIG _IOR(AUDIO_IOCTL_MAGIC, \
|
||||
(AUDIO_MAX_COMMON_IOCTL_NUM+1), struct msm_audio_sbc_enc_config)
|
||||
|
||||
#define AUDIO_SBC_BA_LOUDNESS 0x0
|
||||
#define AUDIO_SBC_BA_SNR 0x1
|
||||
|
||||
#define AUDIO_SBC_MODE_MONO 0x0
|
||||
#define AUDIO_SBC_MODE_DUAL 0x1
|
||||
#define AUDIO_SBC_MODE_STEREO 0x2
|
||||
#define AUDIO_SBC_MODE_JSTEREO 0x3
|
||||
|
||||
#define AUDIO_SBC_BANDS_8 0x1
|
||||
|
||||
#define AUDIO_SBC_BLOCKS_4 0x0
|
||||
#define AUDIO_SBC_BLOCKS_8 0x1
|
||||
#define AUDIO_SBC_BLOCKS_12 0x2
|
||||
#define AUDIO_SBC_BLOCKS_16 0x3
|
||||
|
||||
struct msm_audio_sbc_enc_config {
|
||||
uint32_t channels;
|
||||
uint32_t sample_rate;
|
||||
uint32_t bit_allocation;
|
||||
uint32_t number_of_subbands;
|
||||
uint32_t number_of_blocks;
|
||||
uint32_t bit_rate;
|
||||
uint32_t mode;
|
||||
};
|
||||
#endif /* _MSM_AUDIO_SBC_H */
|
||||
66
original-kernel-headers/linux/msm_audio_voicememo.h
Normal file
66
original-kernel-headers/linux/msm_audio_voicememo.h
Normal file
@@ -0,0 +1,66 @@
|
||||
#ifndef _MSM_AUDIO_VOICEMEMO_H
|
||||
#define _MSM_AUDIO_VOICEMEMO_H
|
||||
|
||||
#include <linux/msm_audio.h>
|
||||
|
||||
#define AUDIO_GET_VOICEMEMO_CONFIG _IOW(AUDIO_IOCTL_MAGIC, \
|
||||
(AUDIO_MAX_COMMON_IOCTL_NUM+0), unsigned)
|
||||
#define AUDIO_SET_VOICEMEMO_CONFIG _IOR(AUDIO_IOCTL_MAGIC, \
|
||||
(AUDIO_MAX_COMMON_IOCTL_NUM+1), unsigned)
|
||||
|
||||
/* rec_type */
|
||||
enum rpc_voc_rec_dir_type {
|
||||
RPC_VOC_REC_NONE,
|
||||
RPC_VOC_REC_FORWARD,
|
||||
RPC_VOC_REC_REVERSE,
|
||||
RPC_VOC_REC_BOTH,
|
||||
RPC_VOC_MAX_REC_TYPE
|
||||
};
|
||||
|
||||
/* capability */
|
||||
enum rpc_voc_capability_type {
|
||||
RPC_VOC_CAP_IS733 = 4,
|
||||
RPC_VOC_CAP_IS127 = 8,
|
||||
RPC_VOC_CAP_AMR = 64,
|
||||
RPC_VOC_CAP_32BIT_DUMMY = 2147483647
|
||||
};
|
||||
|
||||
/* Rate */
|
||||
enum rpc_voc_rate_type {
|
||||
RPC_VOC_0_RATE = 0,
|
||||
RPC_VOC_8_RATE,
|
||||
RPC_VOC_4_RATE,
|
||||
RPC_VOC_2_RATE,
|
||||
RPC_VOC_1_RATE,
|
||||
RPC_VOC_ERASURE,
|
||||
RPC_VOC_ERR_RATE,
|
||||
RPC_VOC_AMR_RATE_475 = 0,
|
||||
RPC_VOC_AMR_RATE_515 = 1,
|
||||
RPC_VOC_AMR_RATE_590 = 2,
|
||||
RPC_VOC_AMR_RATE_670 = 3,
|
||||
RPC_VOC_AMR_RATE_740 = 4,
|
||||
RPC_VOC_AMR_RATE_795 = 5,
|
||||
RPC_VOC_AMR_RATE_1020 = 6,
|
||||
RPC_VOC_AMR_RATE_1220 = 7,
|
||||
};
|
||||
|
||||
/* frame_format */
|
||||
enum rpc_voc_pb_len_rate_var_type {
|
||||
RPC_VOC_PB_NATIVE_QCP = 3,
|
||||
RPC_VOC_PB_AMR,
|
||||
RPC_VOC_PB_EVB
|
||||
};
|
||||
|
||||
struct msm_audio_voicememo_config {
|
||||
uint32_t rec_type;
|
||||
uint32_t rec_interval_ms;
|
||||
uint32_t auto_stop_ms;
|
||||
uint32_t capability;
|
||||
uint32_t max_rate;
|
||||
uint32_t min_rate;
|
||||
uint32_t frame_format;
|
||||
uint32_t dtx_enable;
|
||||
uint32_t data_req_ms;
|
||||
};
|
||||
|
||||
#endif /* _MSM_AUDIO_VOICEMEMO_H */
|
||||
33
original-kernel-headers/linux/msm_audio_wma.h
Normal file
33
original-kernel-headers/linux/msm_audio_wma.h
Normal file
@@ -0,0 +1,33 @@
|
||||
#ifndef _MSM_AUDIO_WMA_H
|
||||
#define _MSM_AUDIO_WMA_H
|
||||
|
||||
#define AUDIO_GET_WMA_CONFIG _IOR(AUDIO_IOCTL_MAGIC, \
|
||||
(AUDIO_MAX_COMMON_IOCTL_NUM+0), unsigned)
|
||||
#define AUDIO_SET_WMA_CONFIG _IOW(AUDIO_IOCTL_MAGIC, \
|
||||
(AUDIO_MAX_COMMON_IOCTL_NUM+1), unsigned)
|
||||
|
||||
#define AUDIO_GET_WMA_CONFIG_V2 _IOR(AUDIO_IOCTL_MAGIC, \
|
||||
(AUDIO_MAX_COMMON_IOCTL_NUM+2), struct msm_audio_wma_config_v2)
|
||||
#define AUDIO_SET_WMA_CONFIG_V2 _IOW(AUDIO_IOCTL_MAGIC, \
|
||||
(AUDIO_MAX_COMMON_IOCTL_NUM+3), struct msm_audio_wma_config_v2)
|
||||
|
||||
struct msm_audio_wma_config {
|
||||
unsigned short armdatareqthr;
|
||||
unsigned short channelsdecoded;
|
||||
unsigned short wmabytespersec;
|
||||
unsigned short wmasamplingfreq;
|
||||
unsigned short wmaencoderopts;
|
||||
};
|
||||
|
||||
struct msm_audio_wma_config_v2 {
|
||||
unsigned short format_tag;
|
||||
unsigned short numchannels;
|
||||
uint32_t samplingrate;
|
||||
uint32_t avgbytespersecond;
|
||||
unsigned short block_align;
|
||||
unsigned short validbitspersample;
|
||||
uint32_t channelmask;
|
||||
unsigned short encodeopt;
|
||||
};
|
||||
|
||||
#endif /* _MSM_AUDIO_WMA_H */
|
||||
22
original-kernel-headers/linux/msm_audio_wmapro.h
Normal file
22
original-kernel-headers/linux/msm_audio_wmapro.h
Normal file
@@ -0,0 +1,22 @@
|
||||
#ifndef _MSM_AUDIO_WMAPRO_H
|
||||
#define _MSM_AUDIO_WMAPRO_H
|
||||
|
||||
#define AUDIO_GET_WMAPRO_CONFIG _IOR(AUDIO_IOCTL_MAGIC, \
|
||||
(AUDIO_MAX_COMMON_IOCTL_NUM+0), struct msm_audio_wmapro_config)
|
||||
#define AUDIO_SET_WMAPRO_CONFIG _IOW(AUDIO_IOCTL_MAGIC, \
|
||||
(AUDIO_MAX_COMMON_IOCTL_NUM+1), struct msm_audio_wmapro_config)
|
||||
|
||||
struct msm_audio_wmapro_config {
|
||||
unsigned short armdatareqthr;
|
||||
uint8_t validbitspersample;
|
||||
uint8_t numchannels;
|
||||
unsigned short formattag;
|
||||
uint32_t samplingrate;
|
||||
uint32_t avgbytespersecond;
|
||||
unsigned short asfpacketlength;
|
||||
uint32_t channelmask;
|
||||
unsigned short encodeopt;
|
||||
unsigned short advancedencodeopt;
|
||||
uint32_t advancedencodeopt2;
|
||||
};
|
||||
#endif /* _MSM_AUDIO_WMAPRO_H */
|
||||
16
original-kernel-headers/linux/msm_dsps.h
Normal file
16
original-kernel-headers/linux/msm_dsps.h
Normal file
@@ -0,0 +1,16 @@
|
||||
#ifndef _DSPS_H_
|
||||
#define _DSPS_H_
|
||||
|
||||
#include <linux/ioctl.h>
|
||||
|
||||
#define DSPS_IOCTL_MAGIC 'd'
|
||||
|
||||
#define DSPS_IOCTL_ON _IO(DSPS_IOCTL_MAGIC, 1)
|
||||
#define DSPS_IOCTL_OFF _IO(DSPS_IOCTL_MAGIC, 2)
|
||||
|
||||
#define DSPS_IOCTL_READ_SLOW_TIMER _IOR(DSPS_IOCTL_MAGIC, 3, unsigned int*)
|
||||
#define DSPS_IOCTL_READ_FAST_TIMER _IOR(DSPS_IOCTL_MAGIC, 4, unsigned int*)
|
||||
|
||||
#define DSPS_IOCTL_RESET _IO(DSPS_IOCTL_MAGIC, 5)
|
||||
|
||||
#endif /* _DSPS_H_ */
|
||||
214
original-kernel-headers/linux/msm_ion.h
Normal file
214
original-kernel-headers/linux/msm_ion.h
Normal file
@@ -0,0 +1,214 @@
|
||||
#ifndef _MSM_ION_H
|
||||
#define _MSM_ION_H
|
||||
|
||||
#include "ion.h"
|
||||
|
||||
enum msm_ion_heap_types {
|
||||
ION_HEAP_TYPE_MSM_START = ION_HEAP_TYPE_CUSTOM + 1,
|
||||
ION_HEAP_TYPE_SECURE_DMA = ION_HEAP_TYPE_MSM_START,
|
||||
ION_HEAP_TYPE_SYSTEM_SECURE,
|
||||
ION_HEAP_TYPE_HYP_CMA,
|
||||
/*
|
||||
* if you add a heap type here you should also add it to
|
||||
* heap_types_info[] in msm_ion.c
|
||||
*/
|
||||
};
|
||||
|
||||
/**
|
||||
* 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_CP_MFC_HEAP_ID = 12,
|
||||
ION_SPSS_HEAP_ID = 13, /* Secure Processor ION heap */
|
||||
ION_CP_WB_HEAP_ID = 16, /* 8660 only */
|
||||
ION_CAMERA_HEAP_ID = 20, /* 8660 only */
|
||||
ION_SYSTEM_CONTIG_HEAP_ID = 21,
|
||||
ION_ADSP_HEAP_ID = 22,
|
||||
ION_PIL1_HEAP_ID = 23, /* Currently used for other PIL images */
|
||||
ION_SF_HEAP_ID = 24,
|
||||
ION_SYSTEM_HEAP_ID = 25,
|
||||
ION_PIL2_HEAP_ID = 26, /* Currently used for modem firmware images */
|
||||
ION_QSECOM_HEAP_ID = 27,
|
||||
ION_AUDIO_HEAP_ID = 28,
|
||||
|
||||
ION_MM_FIRMWARE_HEAP_ID = 29,
|
||||
|
||||
ION_HEAP_ID_RESERVED = 31 /** Bit reserved for ION_FLAG_SECURE flag */
|
||||
};
|
||||
|
||||
/*
|
||||
* The IOMMU heap is deprecated! Here are some aliases for backwards
|
||||
* compatibility:
|
||||
*/
|
||||
#define ION_IOMMU_HEAP_ID ION_SYSTEM_HEAP_ID
|
||||
#define ION_HEAP_TYPE_IOMMU ION_HEAP_TYPE_SYSTEM
|
||||
|
||||
#define ION_SPSS_HEAP_ID ION_SPSS_HEAP_ID
|
||||
|
||||
enum ion_fixed_position {
|
||||
NOT_FIXED,
|
||||
FIXED_LOW,
|
||||
FIXED_MIDDLE,
|
||||
FIXED_HIGH,
|
||||
};
|
||||
|
||||
enum cp_mem_usage {
|
||||
VIDEO_BITSTREAM = 0x1,
|
||||
VIDEO_PIXEL = 0x2,
|
||||
VIDEO_NONPIXEL = 0x3,
|
||||
DISPLAY_SECURE_CP_USAGE = 0x4,
|
||||
CAMERA_SECURE_CP_USAGE = 0x5,
|
||||
MAX_USAGE = 0x6,
|
||||
UNKNOWN = 0x7FFFFFFF,
|
||||
};
|
||||
|
||||
/**
|
||||
* Flags to be used when allocating from the secure heap for
|
||||
* content protection
|
||||
*/
|
||||
#define ION_FLAG_CP_TOUCH (1 << 17)
|
||||
#define ION_FLAG_CP_BITSTREAM (1 << 18)
|
||||
#define ION_FLAG_CP_PIXEL (1 << 19)
|
||||
#define ION_FLAG_CP_NON_PIXEL (1 << 20)
|
||||
#define ION_FLAG_CP_CAMERA (1 << 21)
|
||||
#define ION_FLAG_CP_HLOS (1 << 22)
|
||||
#define ION_FLAG_CP_HLOS_FREE (1 << 23)
|
||||
#define ION_FLAG_CP_SEC_DISPLAY (1 << 25)
|
||||
#define ION_FLAG_CP_APP (1 << 26)
|
||||
|
||||
/**
|
||||
* Flag to allow non continguous allocation of memory from secure
|
||||
* heap
|
||||
*/
|
||||
#define ION_FLAG_ALLOW_NON_CONTIG (1 << 24)
|
||||
|
||||
/**
|
||||
* Flag to use when allocating to indicate that a heap is secure.
|
||||
*/
|
||||
#define ION_FLAG_SECURE (1 << ION_HEAP_ID_RESERVED)
|
||||
|
||||
/**
|
||||
* Flag for clients to force contiguous memort allocation
|
||||
*
|
||||
* Use of this flag is carefully monitored!
|
||||
*/
|
||||
#define ION_FLAG_FORCE_CONTIGUOUS (1 << 30)
|
||||
|
||||
/*
|
||||
* Used in conjunction with heap which pool memory to force an allocation
|
||||
* to come from the page allocator directly instead of from the pool allocation
|
||||
*/
|
||||
#define ION_FLAG_POOL_FORCE_ALLOC (1 << 16)
|
||||
|
||||
#define ION_FLAG_POOL_PREFETCH (1 << 27)
|
||||
|
||||
/**
|
||||
* Deprecated! Please use the corresponding ION_FLAG_*
|
||||
*/
|
||||
#define ION_SECURE ION_FLAG_SECURE
|
||||
#define ION_FORCE_CONTIGUOUS ION_FLAG_FORCE_CONTIGUOUS
|
||||
|
||||
/**
|
||||
* Macro should be used with ion_heap_ids defined above.
|
||||
*/
|
||||
#define ION_HEAP(bit) (1 << (bit))
|
||||
|
||||
#define ION_ADSP_HEAP_NAME "adsp"
|
||||
#define ION_SYSTEM_HEAP_NAME "system"
|
||||
#define ION_VMALLOC_HEAP_NAME ION_SYSTEM_HEAP_NAME
|
||||
#define ION_KMALLOC_HEAP_NAME "kmalloc"
|
||||
#define ION_AUDIO_HEAP_NAME "audio"
|
||||
#define ION_SF_HEAP_NAME "sf"
|
||||
#define ION_MM_HEAP_NAME "mm"
|
||||
#define ION_CAMERA_HEAP_NAME "camera_preview"
|
||||
#define ION_IOMMU_HEAP_NAME "iommu"
|
||||
#define ION_MFC_HEAP_NAME "mfc"
|
||||
#define ION_SPSS_HEAP_NAME "spss"
|
||||
#define ION_WB_HEAP_NAME "wb"
|
||||
#define ION_MM_FIRMWARE_HEAP_NAME "mm_fw"
|
||||
#define ION_PIL1_HEAP_NAME "pil_1"
|
||||
#define ION_PIL2_HEAP_NAME "pil_2"
|
||||
#define ION_QSECOM_HEAP_NAME "qsecom"
|
||||
#define ION_SECURE_HEAP_NAME "secure_heap"
|
||||
#define ION_SECURE_DISPLAY_HEAP_NAME "secure_display"
|
||||
|
||||
#define ION_SET_CACHED(__cache) (__cache | ION_FLAG_CACHED)
|
||||
#define ION_SET_UNCACHED(__cache) (__cache & ~ION_FLAG_CACHED)
|
||||
|
||||
#define ION_IS_CACHED(__flags) ((__flags) & ION_FLAG_CACHED)
|
||||
|
||||
/* struct ion_flush_data - data passed to ion for flushing caches
|
||||
*
|
||||
* @handle: handle with data to flush
|
||||
* @fd: fd to flush
|
||||
* @vaddr: userspace virtual address mapped with mmap
|
||||
* @offset: offset into the handle to flush
|
||||
* @length: length of handle to flush
|
||||
*
|
||||
* Performs cache operations on the handle. If p is the start address
|
||||
* of the handle, p + offset through p + offset + length will have
|
||||
* the cache operations performed
|
||||
*/
|
||||
struct ion_flush_data {
|
||||
ion_user_handle_t handle;
|
||||
int fd;
|
||||
void *vaddr;
|
||||
unsigned int offset;
|
||||
unsigned int length;
|
||||
};
|
||||
|
||||
struct ion_prefetch_regions {
|
||||
unsigned int vmid;
|
||||
size_t *sizes;
|
||||
unsigned int nr_sizes;
|
||||
};
|
||||
|
||||
struct ion_prefetch_data {
|
||||
int heap_id;
|
||||
unsigned long len;
|
||||
/* Is unsigned long bad? 32bit compiler vs 64 bit compiler*/
|
||||
struct ion_prefetch_regions *regions;
|
||||
unsigned int nr_regions;
|
||||
};
|
||||
|
||||
#define ION_IOC_MSM_MAGIC 'M'
|
||||
|
||||
/**
|
||||
* DOC: ION_IOC_CLEAN_CACHES - clean the caches
|
||||
*
|
||||
* Clean the caches of the handle specified.
|
||||
*/
|
||||
#define ION_IOC_CLEAN_CACHES _IOWR(ION_IOC_MSM_MAGIC, 0, \
|
||||
struct ion_flush_data)
|
||||
/**
|
||||
* DOC: ION_IOC_INV_CACHES - invalidate the caches
|
||||
*
|
||||
* Invalidate the caches of the handle specified.
|
||||
*/
|
||||
#define ION_IOC_INV_CACHES _IOWR(ION_IOC_MSM_MAGIC, 1, \
|
||||
struct ion_flush_data)
|
||||
/**
|
||||
* DOC: ION_IOC_CLEAN_INV_CACHES - clean and invalidate the caches
|
||||
*
|
||||
* Clean and invalidate the caches of the handle specified.
|
||||
*/
|
||||
#define ION_IOC_CLEAN_INV_CACHES _IOWR(ION_IOC_MSM_MAGIC, 2, \
|
||||
struct ion_flush_data)
|
||||
|
||||
#define ION_IOC_PREFETCH _IOWR(ION_IOC_MSM_MAGIC, 3, \
|
||||
struct ion_prefetch_data)
|
||||
|
||||
#define ION_IOC_DRAIN _IOWR(ION_IOC_MSM_MAGIC, 4, \
|
||||
struct ion_prefetch_data)
|
||||
|
||||
#endif
|
||||
1741
original-kernel-headers/linux/msm_ipa.h
Normal file
1741
original-kernel-headers/linux/msm_ipa.h
Normal file
File diff suppressed because it is too large
Load Diff
1454
original-kernel-headers/linux/msm_kgsl.h
Normal file
1454
original-kernel-headers/linux/msm_kgsl.h
Normal file
File diff suppressed because it is too large
Load Diff
1450
original-kernel-headers/linux/msm_mdp.h
Normal file
1450
original-kernel-headers/linux/msm_mdp.h
Normal file
File diff suppressed because it is too large
Load Diff
673
original-kernel-headers/linux/msm_mdp_ext.h
Normal file
673
original-kernel-headers/linux/msm_mdp_ext.h
Normal file
@@ -0,0 +1,673 @@
|
||||
#ifndef _MSM_MDP_EXT_H_
|
||||
#define _MSM_MDP_EXT_H_
|
||||
|
||||
#include <linux/msm_mdp.h>
|
||||
|
||||
#define MDP_IOCTL_MAGIC 'S'
|
||||
/* atomic commit ioctl used for validate and commit request */
|
||||
#define MSMFB_ATOMIC_COMMIT _IOWR(MDP_IOCTL_MAGIC, 128, void *)
|
||||
|
||||
/*
|
||||
* Ioctl for updating the layer position asynchronously. Initially, pipes
|
||||
* should be configured with MDP_LAYER_ASYNC flag set during the atomic commit,
|
||||
* after which any number of position update calls can be made. This would
|
||||
* enable multiple position updates within a single vsync. However, the screen
|
||||
* update would happen only after vsync, which would pick the latest update.
|
||||
*
|
||||
* Limitations:
|
||||
* - Currently supported only for video mode panels with single LM or dual LM
|
||||
* with source_split enabled.
|
||||
* - Only position update is supported with no scaling/cropping.
|
||||
* - Async layers should have unique z_order.
|
||||
*/
|
||||
#define MSMFB_ASYNC_POSITION_UPDATE _IOWR(MDP_IOCTL_MAGIC, 129, \
|
||||
struct mdp_position_update)
|
||||
|
||||
/*
|
||||
* Ioctl for sending the config information.
|
||||
* QSEED3 coefficeint LUT tables is passed by the user space using this IOCTL.
|
||||
*/
|
||||
#define MSMFB_MDP_SET_CFG _IOW(MDP_IOCTL_MAGIC, 130, \
|
||||
struct mdp_set_cfg)
|
||||
|
||||
/*
|
||||
* To allow proper structure padding for 64bit/32bit target
|
||||
*/
|
||||
#ifdef __LP64
|
||||
#define MDP_LAYER_COMMIT_V1_PAD 3
|
||||
#else
|
||||
#define MDP_LAYER_COMMIT_V1_PAD 4
|
||||
#endif
|
||||
|
||||
/**********************************************************************
|
||||
LAYER FLAG CONFIGURATION
|
||||
**********************************************************************/
|
||||
/* left-right layer flip flag */
|
||||
#define MDP_LAYER_FLIP_LR 0x1
|
||||
|
||||
/* up-down layer flip flag */
|
||||
#define MDP_LAYER_FLIP_UD 0x2
|
||||
|
||||
/*
|
||||
* This flag enables pixel extension for the current layer. Validate/commit
|
||||
* call uses scale parameters when this flag is enabled.
|
||||
*/
|
||||
#define MDP_LAYER_ENABLE_PIXEL_EXT 0x4
|
||||
|
||||
/* Flag indicates that layer is foreground layer */
|
||||
#define MDP_LAYER_FORGROUND 0x8
|
||||
|
||||
/* Flag indicates that layer is associated with secure session */
|
||||
#define MDP_LAYER_SECURE_SESSION 0x10
|
||||
|
||||
/*
|
||||
* Flag indicates that layer is drawing solid fill. Validate/commit call
|
||||
* does not expect buffer when this flag is enabled.
|
||||
*/
|
||||
#define MDP_LAYER_SOLID_FILL 0x20
|
||||
|
||||
/* Layer format is deinterlace */
|
||||
#define MDP_LAYER_DEINTERLACE 0x40
|
||||
|
||||
/* layer contains bandwidth compressed format data */
|
||||
#define MDP_LAYER_BWC 0x80
|
||||
|
||||
/* layer is async position updatable */
|
||||
#define MDP_LAYER_ASYNC 0x100
|
||||
|
||||
/* layer contains postprocessing configuration data */
|
||||
#define MDP_LAYER_PP 0x200
|
||||
|
||||
/* Flag indicates that layer is associated with secure display session */
|
||||
#define MDP_LAYER_SECURE_DISPLAY_SESSION 0x400
|
||||
|
||||
/* Flag enabled qseed3 scaling for the current layer */
|
||||
#define MDP_LAYER_ENABLE_QSEED3_SCALE 0x800
|
||||
|
||||
/*
|
||||
* layer will work in multirect mode, where single hardware should
|
||||
* fetch multiple rectangles with a single hardware
|
||||
*/
|
||||
#define MDP_LAYER_MULTIRECT_ENABLE 0x1000
|
||||
|
||||
/*
|
||||
* if flag present and multirect is enabled, multirect will work in parallel
|
||||
* fetch mode, otherwise it will default to serial fetch mode.
|
||||
*/
|
||||
#define MDP_LAYER_MULTIRECT_PARALLEL_MODE 0x2000
|
||||
|
||||
/**********************************************************************
|
||||
DESTINATION SCALER FLAG CONFIGURATION
|
||||
**********************************************************************/
|
||||
|
||||
/* Enable/disable Destination scaler */
|
||||
#define MDP_DESTSCALER_ENABLE 0x1
|
||||
|
||||
/*
|
||||
* Indicating mdp_destination_scaler_data contains
|
||||
* Scaling parameter update. Can be set anytime.
|
||||
*/
|
||||
#define MDP_DESTSCALER_SCALE_UPDATE 0x2
|
||||
|
||||
/*
|
||||
* Indicating mdp_destination_scaler_data contains
|
||||
* Detail enhancement setting update. Can be set anytime.
|
||||
*/
|
||||
#define MDP_DESTSCALER_ENHANCER_UPDATE 0x4
|
||||
|
||||
/**********************************************************************
|
||||
VALIDATE/COMMIT FLAG CONFIGURATION
|
||||
**********************************************************************/
|
||||
|
||||
/*
|
||||
* Client enables it to inform that call is to validate layers before commit.
|
||||
* If this flag is not set then driver will use MSMFB_ATOMIC_COMMIT for commit.
|
||||
*/
|
||||
#define MDP_VALIDATE_LAYER 0x01
|
||||
|
||||
/*
|
||||
* This flag is only valid for commit call. Commit behavior is synchronous
|
||||
* when this flag is defined. It blocks current call till processing is
|
||||
* complete. Behavior is asynchronous otherwise.
|
||||
*/
|
||||
#define MDP_COMMIT_WAIT_FOR_FINISH 0x02
|
||||
|
||||
/*
|
||||
* This flag is only valid for commit call and used for debugging purpose. It
|
||||
* forces the to wait for sync fences.
|
||||
*/
|
||||
#define MDP_COMMIT_SYNC_FENCE_WAIT 0x04
|
||||
|
||||
/* Flag to enable concurrent writeback for the frame */
|
||||
#define MDP_COMMIT_CWB_EN 0x800
|
||||
|
||||
/*
|
||||
* Flag to select DSPP as the data point for CWB. If CWB
|
||||
* is enabled without this flag, LM will be selected as data point.
|
||||
*/
|
||||
#define MDP_COMMIT_CWB_DSPP 0x1000
|
||||
|
||||
#define MDP_COMMIT_VERSION_1_0 0x00010000
|
||||
|
||||
/**********************************************************************
|
||||
Configuration structures
|
||||
All parameters are input to driver unless mentioned output parameter
|
||||
explicitly.
|
||||
**********************************************************************/
|
||||
struct mdp_layer_plane {
|
||||
/* DMA buffer file descriptor information. */
|
||||
int fd;
|
||||
|
||||
/* Pixel offset in the dma buffer. */
|
||||
uint32_t offset;
|
||||
|
||||
/* Number of bytes in one scan line including padding bytes. */
|
||||
uint32_t stride;
|
||||
};
|
||||
|
||||
struct mdp_layer_buffer {
|
||||
/* layer width in pixels. */
|
||||
uint32_t width;
|
||||
|
||||
/* layer height in pixels. */
|
||||
uint32_t height;
|
||||
|
||||
/*
|
||||
* layer format in DRM-style fourcc, refer drm_fourcc.h for
|
||||
* standard formats
|
||||
*/
|
||||
uint32_t format;
|
||||
|
||||
/* plane to hold the fd, offset, etc for all color components */
|
||||
struct mdp_layer_plane planes[MAX_PLANES];
|
||||
|
||||
/* valid planes count in layer planes list */
|
||||
uint32_t plane_count;
|
||||
|
||||
/* compression ratio factor, value depends on the pixel format */
|
||||
struct mult_factor comp_ratio;
|
||||
|
||||
/*
|
||||
* SyncFence associated with this buffer. It is used in two ways.
|
||||
*
|
||||
* 1. Driver waits to consume the buffer till producer signals in case
|
||||
* of primary and external display.
|
||||
*
|
||||
* 2. Writeback device uses buffer structure for output buffer where
|
||||
* driver is producer. However, client sends the fence with buffer to
|
||||
* indicate that consumer is still using the buffer and it is not ready
|
||||
* for new content.
|
||||
*/
|
||||
int fence;
|
||||
|
||||
/* 32bits reserved value for future usage. */
|
||||
uint32_t reserved;
|
||||
};
|
||||
|
||||
/*
|
||||
* One layer holds configuration for one pipe. If client wants to stage single
|
||||
* layer on two pipes then it should send two different layers with relative
|
||||
* (x,y) information. Client must send same information during validate and
|
||||
* commit call. Commit call may fail if client sends different layer information
|
||||
* attached to same pipe during validate and commit. Device invalidate the pipe
|
||||
* once it receives the vsync for that commit.
|
||||
*/
|
||||
struct mdp_input_layer {
|
||||
/*
|
||||
* Flag to enable/disable properties for layer configuration. Refer
|
||||
* layer flag configuration section for all possible flags.
|
||||
*/
|
||||
uint32_t flags;
|
||||
|
||||
/*
|
||||
* Pipe selection for this layer by client. Client provides the index
|
||||
* in validate and commit call. Device reserves the pipe once validate
|
||||
* is successful. Device only uses validated pipe during commit call.
|
||||
* If client sends different layer/pipe configuration in validate &
|
||||
* commit then commit may fail.
|
||||
*/
|
||||
uint32_t pipe_ndx;
|
||||
|
||||
/*
|
||||
* Horizontal decimation value, this indicates the amount of pixels
|
||||
* dropped for each pixel that is fetched from a line. It does not
|
||||
* result in bandwidth reduction because pixels are still fetched from
|
||||
* memory but dropped internally by hardware.
|
||||
* The decimation value given should be power of two of decimation
|
||||
* amount.
|
||||
* 0: no decimation
|
||||
* 1: decimate by 2 (drop 1 pixel for each pixel fetched)
|
||||
* 2: decimate by 4 (drop 3 pixels for each pixel fetched)
|
||||
* 3: decimate by 8 (drop 7 pixels for each pixel fetched)
|
||||
* 4: decimate by 16 (drop 15 pixels for each pixel fetched)
|
||||
*/
|
||||
uint8_t horz_deci;
|
||||
|
||||
/*
|
||||
* Vertical decimation value, this indicates the amount of lines
|
||||
* dropped for each line that is fetched from overlay. It saves
|
||||
* bandwidth because decimated pixels are not fetched.
|
||||
* The decimation value given should be power of two of decimation
|
||||
* amount.
|
||||
* 0: no decimation
|
||||
* 1: decimation by 2 (drop 1 line for each line fetched)
|
||||
* 2: decimation by 4 (drop 3 lines for each line fetched)
|
||||
* 3: decimation by 8 (drop 7 lines for each line fetched)
|
||||
* 4: decimation by 16 (drop 15 lines for each line fetched)
|
||||
*/
|
||||
uint8_t vert_deci;
|
||||
|
||||
/*
|
||||
* Used to set plane opacity. The range can be from 0-255, where
|
||||
* 0 means completely transparent and 255 means fully opaque.
|
||||
*/
|
||||
uint8_t alpha;
|
||||
|
||||
/*
|
||||
* Blending stage to occupy in display, if multiple layers are present,
|
||||
* highest z_order usually means the top most visible layer. The range
|
||||
* acceptable is from 0-7 to support blending up to 8 layers.
|
||||
*/
|
||||
uint16_t z_order;
|
||||
|
||||
/*
|
||||
* Color used as color key for transparency. Any pixel in fetched
|
||||
* image matching this color will be transparent when blending.
|
||||
* The color should be in same format as the source image format.
|
||||
*/
|
||||
uint32_t transp_mask;
|
||||
|
||||
/*
|
||||
* Solid color used to fill the overlay surface when no source
|
||||
* buffer is provided.
|
||||
*/
|
||||
uint32_t bg_color;
|
||||
|
||||
/* blend operation defined in "mdss_mdp_blend_op" enum. */
|
||||
enum mdss_mdp_blend_op blend_op;
|
||||
|
||||
/* color space of the source */
|
||||
enum mdp_color_space color_space;
|
||||
|
||||
/*
|
||||
* Source crop rectangle, portion of image that will be fetched. This
|
||||
* should always be within boundaries of source image.
|
||||
*/
|
||||
struct mdp_rect src_rect;
|
||||
|
||||
/*
|
||||
* Destination rectangle, the position and size of image on screen.
|
||||
* This should always be within panel boundaries.
|
||||
*/
|
||||
struct mdp_rect dst_rect;
|
||||
|
||||
/* Scaling parameters. */
|
||||
void *scale;
|
||||
|
||||
/* Buffer attached with each layer. Device uses it for commit call. */
|
||||
struct mdp_layer_buffer buffer;
|
||||
|
||||
/*
|
||||
* Source side post processing configuration information for each
|
||||
* layer.
|
||||
*/
|
||||
void *pp_info;
|
||||
|
||||
/*
|
||||
* This is an output parameter.
|
||||
*
|
||||
* Only for validate call. Frame buffer device sets error code
|
||||
* based on validate call failure scenario.
|
||||
*/
|
||||
int error_code;
|
||||
|
||||
/* 32bits reserved value for future usage. */
|
||||
uint32_t reserved[6];
|
||||
};
|
||||
|
||||
struct mdp_output_layer {
|
||||
/*
|
||||
* Flag to enable/disable properties for layer configuration. Refer
|
||||
* layer flag config section for all possible flags.
|
||||
*/
|
||||
uint32_t flags;
|
||||
|
||||
/*
|
||||
* Writeback destination selection for output. Client provides the index
|
||||
* in validate and commit call.
|
||||
*/
|
||||
uint32_t writeback_ndx;
|
||||
|
||||
/* Buffer attached with output layer. Device uses it for commit call */
|
||||
struct mdp_layer_buffer buffer;
|
||||
|
||||
/* 32bits reserved value for future usage. */
|
||||
uint32_t reserved[6];
|
||||
};
|
||||
|
||||
/*
|
||||
* Destination scaling info structure holds setup paramaters for upscaling
|
||||
* setting in the destination scaling block.
|
||||
*/
|
||||
struct mdp_destination_scaler_data {
|
||||
/*
|
||||
* Flag to switch between mode for destination scaler. Please Refer to
|
||||
* destination scaler flag config for all possible setting.
|
||||
*/
|
||||
uint32_t flags;
|
||||
|
||||
/*
|
||||
* Destination scaler selection index. Client provides the index in
|
||||
* validate and commit call.
|
||||
*/
|
||||
uint32_t dest_scaler_ndx;
|
||||
|
||||
/*
|
||||
* LM width configuration per Destination scaling updates
|
||||
*/
|
||||
uint32_t lm_width;
|
||||
|
||||
/*
|
||||
* LM height configuration per Destination scaling updates
|
||||
*/
|
||||
uint32_t lm_height;
|
||||
|
||||
/*
|
||||
* The scaling parameters for all the mode except disable. For
|
||||
* disabling the scaler, there is no need to provide the scale.
|
||||
* A userspace pointer points to struct mdp_scale_data_v2.
|
||||
*/
|
||||
uint64_t scale;
|
||||
};
|
||||
|
||||
/*
|
||||
* Commit structure holds layer stack send by client for validate and commit
|
||||
* call. If layers are different between validate and commit call then commit
|
||||
* call will also do validation. In such case, commit may fail.
|
||||
*/
|
||||
struct mdp_layer_commit_v1 {
|
||||
/*
|
||||
* Flag to enable/disable properties for commit/validate call. Refer
|
||||
* validate/commit flag config section for all possible flags.
|
||||
*/
|
||||
uint32_t flags;
|
||||
|
||||
/*
|
||||
* This is an output parameter.
|
||||
*
|
||||
* Frame buffer device provides release fence handle to client. It
|
||||
* triggers release fence when display hardware has consumed all the
|
||||
* buffers attached to this commit call and buffer is ready for reuse
|
||||
* for primary and external. For writeback case, it triggers it when
|
||||
* output buffer is ready for consumer.
|
||||
*/
|
||||
int release_fence;
|
||||
|
||||
/*
|
||||
* Left_roi is optional configuration. Client configures it only when
|
||||
* partial update is enabled. It defines the "region of interest" on
|
||||
* left part of panel when it is split display. For non-split display,
|
||||
* it defines the "region of interest" on the panel.
|
||||
*/
|
||||
struct mdp_rect left_roi;
|
||||
|
||||
/*
|
||||
* Right_roi is optional configuration. Client configures it only when
|
||||
* partial update is enabled. It defines the "region of interest" on
|
||||
* right part of panel for split display configuration. It is not
|
||||
* required for non-split display.
|
||||
*/
|
||||
struct mdp_rect right_roi;
|
||||
|
||||
/* Pointer to a list of input layers for composition. */
|
||||
struct mdp_input_layer *input_layers;
|
||||
|
||||
/* Input layer count present in input list */
|
||||
uint32_t input_layer_cnt;
|
||||
|
||||
/*
|
||||
* Output layer for writeback display. It supports only one
|
||||
* layer as output layer. This is not required for primary
|
||||
* and external displays
|
||||
*/
|
||||
struct mdp_output_layer *output_layer;
|
||||
|
||||
/*
|
||||
* This is an output parameter.
|
||||
*
|
||||
* Frame buffer device provides retire fence handle if
|
||||
* COMMIT_RETIRE_FENCE flag is set in commit call. It triggers
|
||||
* retire fence when current layers are swapped with new layers
|
||||
* on display hardware. For video mode panel and writeback,
|
||||
* retire fence and release fences are triggered at the same
|
||||
* time while command mode panel triggers release fence first
|
||||
* (on pingpong done) and retire fence (on rdptr done)
|
||||
* after that.
|
||||
*/
|
||||
int retire_fence;
|
||||
|
||||
/*
|
||||
* Scaler data and control for setting up destination scaler.
|
||||
* A userspace pointer that points to a list of
|
||||
* struct mdp_destination_scaler_data.
|
||||
*/
|
||||
void *dest_scaler;
|
||||
|
||||
/*
|
||||
* Represents number of Destination scaler data provied by userspace.
|
||||
*/
|
||||
uint32_t dest_scaler_cnt;
|
||||
|
||||
/* 32-bits reserved value for future usage. */
|
||||
uint32_t reserved[MDP_LAYER_COMMIT_V1_PAD];
|
||||
};
|
||||
|
||||
/*
|
||||
* mdp_overlay_list - argument for ioctl MSMFB_ATOMIC_COMMIT
|
||||
*/
|
||||
struct mdp_layer_commit {
|
||||
/*
|
||||
* 32bit version indicates the commit structure selection
|
||||
* from union. Lower 16bits indicates the minor version while
|
||||
* higher 16bits indicates the major version. It selects the
|
||||
* commit structure based on major version selection. Minor version
|
||||
* indicates that reserved fields are in use.
|
||||
*
|
||||
* Current supported version is 1.0 (Major:1 Minor:0)
|
||||
*/
|
||||
uint32_t version;
|
||||
union {
|
||||
/* Layer commit/validate definition for V1 */
|
||||
struct mdp_layer_commit_v1 commit_v1;
|
||||
};
|
||||
};
|
||||
|
||||
struct mdp_point {
|
||||
uint32_t x;
|
||||
uint32_t y;
|
||||
};
|
||||
|
||||
/*
|
||||
* Async updatable layers. One layer holds configuration for one pipe.
|
||||
*/
|
||||
struct mdp_async_layer {
|
||||
/*
|
||||
* Flag to enable/disable properties for layer configuration. Refer
|
||||
* layer flag config section for all possible flags.
|
||||
*/
|
||||
uint32_t flags;
|
||||
|
||||
/*
|
||||
* Pipe selection for this layer by client. Client provides the
|
||||
* pipe index that the device reserved during ATOMIC_COMMIT.
|
||||
*/
|
||||
uint32_t pipe_ndx;
|
||||
|
||||
/* Source start x,y. */
|
||||
struct mdp_point src;
|
||||
|
||||
/* Destination start x,y. */
|
||||
struct mdp_point dst;
|
||||
|
||||
/*
|
||||
* This is an output parameter.
|
||||
*
|
||||
* Frame buffer device sets error code based on the failure.
|
||||
*/
|
||||
int error_code;
|
||||
|
||||
uint32_t reserved[3];
|
||||
};
|
||||
|
||||
/*
|
||||
* mdp_position_update - argument for ioctl MSMFB_ASYNC_POSITION_UPDATE
|
||||
*/
|
||||
struct mdp_position_update {
|
||||
/* Pointer to a list of async updatable input layers */
|
||||
struct mdp_async_layer *input_layers;
|
||||
|
||||
/* Input layer count present in input list */
|
||||
uint32_t input_layer_cnt;
|
||||
};
|
||||
|
||||
#define MAX_DET_CURVES 3
|
||||
struct mdp_det_enhance_data {
|
||||
uint32_t enable;
|
||||
int16_t sharpen_level1;
|
||||
int16_t sharpen_level2;
|
||||
uint16_t clip;
|
||||
uint16_t limit;
|
||||
uint16_t thr_quiet;
|
||||
uint16_t thr_dieout;
|
||||
uint16_t thr_low;
|
||||
uint16_t thr_high;
|
||||
uint16_t prec_shift;
|
||||
int16_t adjust_a[MAX_DET_CURVES];
|
||||
int16_t adjust_b[MAX_DET_CURVES];
|
||||
int16_t adjust_c[MAX_DET_CURVES];
|
||||
};
|
||||
|
||||
/* Flags to enable Scaler and its sub components */
|
||||
#define ENABLE_SCALE 0x1
|
||||
#define ENABLE_DETAIL_ENHANCE 0x2
|
||||
#define ENABLE_DIRECTION_DETECTION 0x4
|
||||
|
||||
/* LUT configuration flags */
|
||||
#define SCALER_LUT_SWAP 0x1
|
||||
#define SCALER_LUT_DIR_WR 0x2
|
||||
#define SCALER_LUT_Y_CIR_WR 0x4
|
||||
#define SCALER_LUT_UV_CIR_WR 0x8
|
||||
#define SCALER_LUT_Y_SEP_WR 0x10
|
||||
#define SCALER_LUT_UV_SEP_WR 0x20
|
||||
|
||||
/* Y/RGB and UV filter configuration */
|
||||
#define FILTER_EDGE_DIRECTED_2D 0x0
|
||||
#define FILTER_CIRCULAR_2D 0x1
|
||||
#define FILTER_SEPARABLE_1D 0x2
|
||||
#define FILTER_BILINEAR 0x3
|
||||
|
||||
/* Alpha filters */
|
||||
#define FILTER_ALPHA_DROP_REPEAT 0x0
|
||||
#define FILTER_ALPHA_BILINEAR 0x1
|
||||
|
||||
/**
|
||||
* struct mdp_scale_data_v2
|
||||
* Driver uses this new Data structure for storing all scaling params
|
||||
* This structure contains all pixel extension data and QSEED3 filter
|
||||
* configuration and coefficient table indices
|
||||
*/
|
||||
struct mdp_scale_data_v2 {
|
||||
uint32_t enable;
|
||||
|
||||
/* Init phase values */
|
||||
int32_t init_phase_x[MAX_PLANES];
|
||||
int32_t phase_step_x[MAX_PLANES];
|
||||
int32_t init_phase_y[MAX_PLANES];
|
||||
int32_t phase_step_y[MAX_PLANES];
|
||||
|
||||
/* This should be set to toal horizontal pixels
|
||||
* left + right + width */
|
||||
uint32_t num_ext_pxls_left[MAX_PLANES];
|
||||
|
||||
/* Unused param for backward compatibility */
|
||||
uint32_t num_ext_pxls_right[MAX_PLANES];
|
||||
|
||||
/* This should be set to vertical pixels
|
||||
* top + bottom + height */
|
||||
uint32_t num_ext_pxls_top[MAX_PLANES];
|
||||
|
||||
/* Unused param for backward compatibility */
|
||||
uint32_t num_ext_pxls_btm[MAX_PLANES];
|
||||
|
||||
/* over fetch pixels */
|
||||
int32_t left_ftch[MAX_PLANES];
|
||||
int32_t left_rpt[MAX_PLANES];
|
||||
int32_t right_ftch[MAX_PLANES];
|
||||
int32_t right_rpt[MAX_PLANES];
|
||||
|
||||
/* Repeat pixels */
|
||||
uint32_t top_rpt[MAX_PLANES];
|
||||
uint32_t btm_rpt[MAX_PLANES];
|
||||
uint32_t top_ftch[MAX_PLANES];
|
||||
uint32_t btm_ftch[MAX_PLANES];
|
||||
|
||||
uint32_t roi_w[MAX_PLANES];
|
||||
|
||||
/* alpha plane can only be scaled using bilinear or pixel
|
||||
* repeat/drop, specify these for Y and UV planes only */
|
||||
uint32_t preload_x[MAX_PLANES];
|
||||
uint32_t preload_y[MAX_PLANES];
|
||||
uint32_t src_width[MAX_PLANES];
|
||||
uint32_t src_height[MAX_PLANES];
|
||||
|
||||
uint32_t dst_width;
|
||||
uint32_t dst_height;
|
||||
|
||||
uint32_t y_rgb_filter_cfg;
|
||||
uint32_t uv_filter_cfg;
|
||||
uint32_t alpha_filter_cfg;
|
||||
uint32_t blend_cfg;
|
||||
|
||||
uint32_t lut_flag;
|
||||
uint32_t dir_lut_idx;
|
||||
|
||||
/* for Y(RGB) and UV planes*/
|
||||
uint32_t y_rgb_cir_lut_idx;
|
||||
uint32_t uv_cir_lut_idx;
|
||||
uint32_t y_rgb_sep_lut_idx;
|
||||
uint32_t uv_sep_lut_idx;
|
||||
|
||||
struct mdp_det_enhance_data detail_enhance;
|
||||
|
||||
/* reserved value for future usage. */
|
||||
uint64_t reserved[8];
|
||||
};
|
||||
|
||||
/**
|
||||
* struct mdp_scale_luts_info
|
||||
* This struct pointer is received as payload in SET_CFG_IOCTL when the flags
|
||||
* is set to MDP_QSEED3_LUT_CFG
|
||||
* @dir_lut: Direction detection coefficients table
|
||||
* @cir_lut: Circular coefficeints table
|
||||
* @sep_lut: Separable coefficeints table
|
||||
* @dir_lut_size: Size of direction coefficients table
|
||||
* @cir_lut_size: Size of circular coefficients table
|
||||
* @sep_lut_size: Size of separable coefficients table
|
||||
*/
|
||||
struct mdp_scale_luts_info {
|
||||
uint64_t dir_lut;
|
||||
uint64_t cir_lut;
|
||||
uint64_t sep_lut;
|
||||
uint32_t dir_lut_size;
|
||||
uint32_t cir_lut_size;
|
||||
uint32_t sep_lut_size;
|
||||
};
|
||||
|
||||
#define MDP_QSEED3_LUT_CFG 0x1
|
||||
|
||||
struct mdp_set_cfg {
|
||||
uint64_t flags;
|
||||
uint32_t len;
|
||||
uint64_t payload;
|
||||
};
|
||||
#endif
|
||||
134
original-kernel-headers/linux/msm_pft.h
Normal file
134
original-kernel-headers/linux/msm_pft.h
Normal file
@@ -0,0 +1,134 @@
|
||||
/* Copyright (c) 2014-2015, The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 and
|
||||
* only version 2 as published by the Free Software Foundation.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*/
|
||||
|
||||
#ifndef MSM_PFT_H_
|
||||
#define MSM_PFT_H_
|
||||
|
||||
#include <linux/types.h>
|
||||
|
||||
/**
|
||||
* enum pft_command_opcode - PFT driver command ID
|
||||
*
|
||||
* @PFT_CMD_OPCODE_SET_STATE -
|
||||
* command ID to set PFT driver state
|
||||
* @PFT_CMD_OPCODE_UPDATE_REG_APP_UID -
|
||||
* command ID to update the list of registered application
|
||||
* UID
|
||||
* @PFT_CMD_OPCODE_PERFORM_IN_PLACE_FILE_ENC -
|
||||
* command ID to perfrom in-place file encryption
|
||||
*/
|
||||
enum pft_command_opcode {
|
||||
PFT_CMD_OPCODE_SET_STATE,
|
||||
PFT_CMD_OPCODE_UPDATE_REG_APP_UID,
|
||||
PFT_CMD_OPCODE_PERFORM_IN_PLACE_FILE_ENC,
|
||||
/* */
|
||||
PFT_CMD_OPCODE_MAX_COMMAND_INDEX
|
||||
};
|
||||
|
||||
/**
|
||||
* enum pft_state - PFT driver operational states
|
||||
*
|
||||
* @PFT_STATE_DEACTIVATED - driver is deativated.
|
||||
* @PFT_STATE_DEACTIVATING - driver is in the process of being deativated.
|
||||
* @PFT_STATE_KEY_REMOVED - driver is active but no encryption key is loaded.
|
||||
* @PFT_STATE_REMOVING_KEY - driver is active, but the encryption key is being
|
||||
* removed.
|
||||
* @PFT_STATE_KEY_LOADED - driver is active, and the encryption key is loaded
|
||||
* to encryption block, hence registered apps can perform file operations
|
||||
* on encrypted files.
|
||||
*/
|
||||
enum pft_state {
|
||||
PFT_STATE_DEACTIVATED,
|
||||
PFT_STATE_DEACTIVATING,
|
||||
PFT_STATE_KEY_REMOVED,
|
||||
PFT_STATE_REMOVING_KEY,
|
||||
PFT_STATE_KEY_LOADED,
|
||||
/* Internal */
|
||||
PFT_STATE_MAX_INDEX
|
||||
};
|
||||
|
||||
/**
|
||||
* enum pft_command_response_code - PFT response on the previous
|
||||
* command
|
||||
*
|
||||
* @PFT_CMD_RESP_SUCCESS - The command was properly processed
|
||||
* without an error.
|
||||
* @PFT_CMD_RESP_GENERAL_ERROR -
|
||||
* Indicates an error that cannot be better described by a
|
||||
* more specific errors below.
|
||||
* @PFT_CMD_RESP_INVALID_COMMAND - Invalid or unsupported
|
||||
* command id.
|
||||
* @PFT_CMD_RESP_INVALID_CMD_PARAMS - Invalid command
|
||||
* parameters.
|
||||
* @PFT_CMD_RESP_INVALID_STATE - Invalid state
|
||||
* @PFT_CMD_RESP_ALREADY_IN_STATE - Used to indicates that
|
||||
* the new state is equal to the existing one.
|
||||
* @PFT_CMD_RESP_INPLACE_FILE_IS_OPEN - Used to indicates
|
||||
* that the file that should be encrypted is already open
|
||||
* and can be encrypted.
|
||||
* @PFT_CMD_RESP_ENT_FILES_CLOSING_FAILURE
|
||||
* Indicates about failure of the PFT to close Enterprise files
|
||||
* @PFT_CMD_RESP_MAX_INDEX
|
||||
*/
|
||||
enum pft_command_response_code {
|
||||
PFT_CMD_RESP_SUCCESS,
|
||||
PFT_CMD_RESP_GENERAL_ERROR,
|
||||
PFT_CMD_RESP_INVALID_COMMAND,
|
||||
PFT_CMD_RESP_INVALID_CMD_PARAMS,
|
||||
PFT_CMD_RESP_INVALID_STATE,
|
||||
PFT_CMD_RESP_ALREADY_IN_STATE,
|
||||
PFT_CMD_RESP_INPLACE_FILE_IS_OPEN,
|
||||
PFT_CMD_RESP_ENT_FILES_CLOSING_FAILURE,
|
||||
/* Internal */
|
||||
PFT_CMD_RESP_MAX_INDEX
|
||||
};
|
||||
|
||||
/**
|
||||
* struct pft_command_response - response structure
|
||||
*
|
||||
* @command_id - see enum pft_command_response_code
|
||||
* @error_codee - see enum pft_command_response_code
|
||||
*/
|
||||
struct pft_command_response {
|
||||
__u32 command_id;
|
||||
__u32 error_code;
|
||||
};
|
||||
|
||||
/**
|
||||
* struct pft_command - pft command
|
||||
*
|
||||
* @opcode - see enum pft_command_opcode.
|
||||
* @set_state.state - see enum pft_state.
|
||||
* @update_app_list.count - number of items in the
|
||||
* registered applications list.
|
||||
* @update_app_list.table - registered applications array
|
||||
* @preform_in_place_file_enc.file_descriptor - file descriptor
|
||||
* of the opened file to be in-placed encrypted.
|
||||
*/
|
||||
struct pft_command {
|
||||
__u32 opcode;
|
||||
union {
|
||||
struct {
|
||||
/* @see pft_state */
|
||||
__u32 state;
|
||||
} set_state;
|
||||
struct {
|
||||
__u32 items_count; /* number of items */
|
||||
uid_t table[0]; /* array of UIDs */
|
||||
} update_app_list;
|
||||
struct {
|
||||
__u32 file_descriptor;
|
||||
} preform_in_place_file_enc;
|
||||
};
|
||||
};
|
||||
|
||||
#endif /* MSM_PFT_H_ */
|
||||
156
original-kernel-headers/linux/msm_rmnet.h
Normal file
156
original-kernel-headers/linux/msm_rmnet.h
Normal file
@@ -0,0 +1,156 @@
|
||||
#ifndef _MSM_RMNET_H_
|
||||
#define _MSM_RMNET_H_
|
||||
|
||||
/* Bitmap macros for RmNET driver operation mode. */
|
||||
#define RMNET_MODE_NONE (0x00)
|
||||
#define RMNET_MODE_LLP_ETH (0x01)
|
||||
#define RMNET_MODE_LLP_IP (0x02)
|
||||
#define RMNET_MODE_QOS (0x04)
|
||||
#define RMNET_MODE_MASK (RMNET_MODE_LLP_ETH | \
|
||||
RMNET_MODE_LLP_IP | \
|
||||
RMNET_MODE_QOS)
|
||||
|
||||
#define RMNET_IS_MODE_QOS(mode) \
|
||||
((mode & RMNET_MODE_QOS) == RMNET_MODE_QOS)
|
||||
#define RMNET_IS_MODE_IP(mode) \
|
||||
((mode & RMNET_MODE_LLP_IP) == RMNET_MODE_LLP_IP)
|
||||
|
||||
/* IOCTL command enum
|
||||
* Values chosen to not conflict with other drivers in the ecosystem */
|
||||
enum rmnet_ioctl_cmds_e {
|
||||
RMNET_IOCTL_SET_LLP_ETHERNET = 0x000089F1, /* Set Ethernet protocol */
|
||||
RMNET_IOCTL_SET_LLP_IP = 0x000089F2, /* Set RAWIP protocol */
|
||||
RMNET_IOCTL_GET_LLP = 0x000089F3, /* Get link protocol */
|
||||
RMNET_IOCTL_SET_QOS_ENABLE = 0x000089F4, /* Set QoS header enabled */
|
||||
RMNET_IOCTL_SET_QOS_DISABLE = 0x000089F5, /* Set QoS header disabled*/
|
||||
RMNET_IOCTL_GET_QOS = 0x000089F6, /* Get QoS header state */
|
||||
RMNET_IOCTL_GET_OPMODE = 0x000089F7, /* Get operation mode */
|
||||
RMNET_IOCTL_OPEN = 0x000089F8, /* Open transport port */
|
||||
RMNET_IOCTL_CLOSE = 0x000089F9, /* Close transport port */
|
||||
RMNET_IOCTL_FLOW_ENABLE = 0x000089FA, /* Flow enable */
|
||||
RMNET_IOCTL_FLOW_DISABLE = 0x000089FB, /* Flow disable */
|
||||
RMNET_IOCTL_FLOW_SET_HNDL = 0x000089FC, /* Set flow handle */
|
||||
RMNET_IOCTL_EXTENDED = 0x000089FD, /* Extended IOCTLs */
|
||||
RMNET_IOCTL_MAX
|
||||
};
|
||||
|
||||
enum rmnet_ioctl_extended_cmds_e {
|
||||
/* RmNet Data Required IOCTLs */
|
||||
RMNET_IOCTL_GET_SUPPORTED_FEATURES = 0x0000, /* Get features */
|
||||
RMNET_IOCTL_SET_MRU = 0x0001, /* Set MRU */
|
||||
RMNET_IOCTL_GET_MRU = 0x0002, /* Get MRU */
|
||||
RMNET_IOCTL_GET_EPID = 0x0003, /* Get endpoint ID */
|
||||
RMNET_IOCTL_GET_DRIVER_NAME = 0x0004, /* Get driver name */
|
||||
RMNET_IOCTL_ADD_MUX_CHANNEL = 0x0005, /* Add MUX ID */
|
||||
RMNET_IOCTL_SET_EGRESS_DATA_FORMAT = 0x0006, /* Set EDF */
|
||||
RMNET_IOCTL_SET_INGRESS_DATA_FORMAT = 0x0007, /* Set IDF */
|
||||
RMNET_IOCTL_SET_AGGREGATION_COUNT = 0x0008, /* Set agg count */
|
||||
RMNET_IOCTL_GET_AGGREGATION_COUNT = 0x0009, /* Get agg count */
|
||||
RMNET_IOCTL_SET_AGGREGATION_SIZE = 0x000A, /* Set agg size */
|
||||
RMNET_IOCTL_GET_AGGREGATION_SIZE = 0x000B, /* Get agg size */
|
||||
RMNET_IOCTL_FLOW_CONTROL = 0x000C, /* Do flow control */
|
||||
RMNET_IOCTL_GET_DFLT_CONTROL_CHANNEL = 0x000D, /* For legacy use */
|
||||
RMNET_IOCTL_GET_HWSW_MAP = 0x000E, /* Get HW/SW map */
|
||||
RMNET_IOCTL_SET_RX_HEADROOM = 0x000F, /* RX Headroom */
|
||||
RMNET_IOCTL_GET_EP_PAIR = 0x0010, /* Endpoint pair */
|
||||
RMNET_IOCTL_SET_QOS_VERSION = 0x0011, /* 8/6 byte QoS hdr*/
|
||||
RMNET_IOCTL_GET_QOS_VERSION = 0x0012, /* 8/6 byte QoS hdr*/
|
||||
RMNET_IOCTL_GET_SUPPORTED_QOS_MODES = 0x0013, /* Get QoS modes */
|
||||
RMNET_IOCTL_SET_SLEEP_STATE = 0x0014, /* Set sleep state */
|
||||
RMNET_IOCTL_SET_XLAT_DEV_INFO = 0x0015, /* xlat dev name */
|
||||
RMNET_IOCTL_DEREGISTER_DEV = 0x0016, /* Dereg a net dev */
|
||||
RMNET_IOCTL_GET_SG_SUPPORT = 0x0017, /* Query sg support*/
|
||||
RMNET_IOCTL_EXTENDED_MAX = 0x0018
|
||||
};
|
||||
|
||||
/* Return values for the RMNET_IOCTL_GET_SUPPORTED_FEATURES IOCTL */
|
||||
#define RMNET_IOCTL_FEAT_NOTIFY_MUX_CHANNEL (1<<0)
|
||||
#define RMNET_IOCTL_FEAT_SET_EGRESS_DATA_FORMAT (1<<1)
|
||||
#define RMNET_IOCTL_FEAT_SET_INGRESS_DATA_FORMAT (1<<2)
|
||||
#define RMNET_IOCTL_FEAT_SET_AGGREGATION_COUNT (1<<3)
|
||||
#define RMNET_IOCTL_FEAT_GET_AGGREGATION_COUNT (1<<4)
|
||||
#define RMNET_IOCTL_FEAT_SET_AGGREGATION_SIZE (1<<5)
|
||||
#define RMNET_IOCTL_FEAT_GET_AGGREGATION_SIZE (1<<6)
|
||||
#define RMNET_IOCTL_FEAT_FLOW_CONTROL (1<<7)
|
||||
#define RMNET_IOCTL_FEAT_GET_DFLT_CONTROL_CHANNEL (1<<8)
|
||||
#define RMNET_IOCTL_FEAT_GET_HWSW_MAP (1<<9)
|
||||
|
||||
/* Input values for the RMNET_IOCTL_SET_EGRESS_DATA_FORMAT IOCTL */
|
||||
#define RMNET_IOCTL_EGRESS_FORMAT_MAP (1<<1)
|
||||
#define RMNET_IOCTL_EGRESS_FORMAT_AGGREGATION (1<<2)
|
||||
#define RMNET_IOCTL_EGRESS_FORMAT_MUXING (1<<3)
|
||||
#define RMNET_IOCTL_EGRESS_FORMAT_CHECKSUM (1<<4)
|
||||
|
||||
/* Input values for the RMNET_IOCTL_SET_INGRESS_DATA_FORMAT IOCTL */
|
||||
#define RMNET_IOCTL_INGRESS_FORMAT_MAP (1<<1)
|
||||
#define RMNET_IOCTL_INGRESS_FORMAT_DEAGGREGATION (1<<2)
|
||||
#define RMNET_IOCTL_INGRESS_FORMAT_DEMUXING (1<<3)
|
||||
#define RMNET_IOCTL_INGRESS_FORMAT_CHECKSUM (1<<4)
|
||||
#define RMNET_IOCTL_INGRESS_FORMAT_AGG_DATA (1<<5)
|
||||
|
||||
/* User space may not have this defined. */
|
||||
#ifndef IFNAMSIZ
|
||||
#define IFNAMSIZ 16
|
||||
#endif
|
||||
|
||||
struct rmnet_ioctl_extended_s {
|
||||
uint32_t extended_ioctl;
|
||||
union {
|
||||
uint32_t data; /* Generic data field for most extended IOCTLs */
|
||||
|
||||
/* Return values for
|
||||
* RMNET_IOCTL_GET_DRIVER_NAME
|
||||
* RMNET_IOCTL_GET_DFLT_CONTROL_CHANNEL */
|
||||
int8_t if_name[IFNAMSIZ];
|
||||
|
||||
/* Input values for the RMNET_IOCTL_ADD_MUX_CHANNEL IOCTL */
|
||||
struct {
|
||||
uint32_t mux_id;
|
||||
int8_t vchannel_name[IFNAMSIZ];
|
||||
} rmnet_mux_val;
|
||||
|
||||
/* Input values for the RMNET_IOCTL_FLOW_CONTROL IOCTL */
|
||||
struct {
|
||||
uint8_t flow_mode;
|
||||
uint8_t mux_id;
|
||||
} flow_control_prop;
|
||||
|
||||
/* Return values for RMNET_IOCTL_GET_EP_PAIR */
|
||||
struct {
|
||||
uint32_t consumer_pipe_num;
|
||||
uint32_t producer_pipe_num;
|
||||
} ipa_ep_pair;
|
||||
|
||||
struct {
|
||||
uint32_t __data; /* Placeholder for legacy data*/
|
||||
uint32_t agg_size;
|
||||
uint32_t agg_count;
|
||||
} ingress_format;
|
||||
} u;
|
||||
};
|
||||
|
||||
struct rmnet_ioctl_data_s {
|
||||
union {
|
||||
uint32_t operation_mode;
|
||||
uint32_t tcm_handle;
|
||||
} u;
|
||||
};
|
||||
|
||||
#define RMNET_IOCTL_QOS_MODE_6 (1<<0)
|
||||
#define RMNET_IOCTL_QOS_MODE_8 (1<<1)
|
||||
|
||||
/* QMI QoS header definition */
|
||||
#define QMI_QOS_HDR_S __attribute((__packed__)) qmi_qos_hdr_s
|
||||
struct QMI_QOS_HDR_S {
|
||||
unsigned char version;
|
||||
unsigned char flags;
|
||||
uint32_t flow_id;
|
||||
};
|
||||
|
||||
/* QMI QoS 8-byte header. */
|
||||
struct qmi_qos_hdr8_s {
|
||||
struct QMI_QOS_HDR_S hdr;
|
||||
uint8_t reserved[2];
|
||||
} __attribute((__packed__));
|
||||
|
||||
#endif /* _MSM_RMNET_H_ */
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user