summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Bestas <mkbestas@lineageos.org>2025-09-14 17:11:03 +0300
committerSiluxsept <ronny.horn.rh@gmail.com>2025-09-22 16:42:58 +0200
commite51eea6bc93e82ea59eadf6bed086a6f0e42c46c (patch)
tree55b6b3fdcf08006fe028b0a906392528dc8fe901
parent18e605558bd7223f8144752cc804b851c5d4b763 (diff)
b4s4: Drop unused in-tree kernel headers
Change-Id: If871800764cdb47a4423c615c57267dea964bbe8
-rw-r--r--device.mk2
-rw-r--r--sdm710/kernel-headers/asm-generic/ioctls.h113
-rw-r--r--sdm710/kernel-headers/drm/msm_drm.h217
-rw-r--r--sdm710/kernel-headers/drm/msm_drm_pp.h297
-rw-r--r--sdm710/kernel-headers/drm/sde_drm.h181
-rw-r--r--sdm710/kernel-headers/linux/avtimer.h10
-rw-r--r--sdm710/kernel-headers/linux/ion.h67
-rw-r--r--sdm710/kernel-headers/linux/ipa_qmi_service_v01.h610
-rw-r--r--sdm710/kernel-headers/linux/mdss_rotator.h73
-rw-r--r--sdm710/kernel-headers/linux/mfd/msm-adie-codec.h80
-rw-r--r--sdm710/kernel-headers/linux/mfd/wcd9xxx/wcd9320_registers.h1401
-rw-r--r--sdm710/kernel-headers/linux/mfd/wcd9xxx/wcd9xxx_registers.h364
-rw-r--r--sdm710/kernel-headers/linux/msm-core-interface.h39
-rw-r--r--sdm710/kernel-headers/linux/msm_adsp.h49
-rw-r--r--sdm710/kernel-headers/linux/msm_audio.h353
-rw-r--r--sdm710/kernel-headers/linux/msm_audio_aac.h76
-rw-r--r--sdm710/kernel-headers/linux/msm_audio_ac3.h41
-rw-r--r--sdm710/kernel-headers/linux/msm_audio_alac.h24
-rw-r--r--sdm710/kernel-headers/linux/msm_audio_amrnb.h34
-rw-r--r--sdm710/kernel-headers/linux/msm_audio_amrwb.h18
-rw-r--r--sdm710/kernel-headers/linux/msm_audio_amrwbplus.h18
-rw-r--r--sdm710/kernel-headers/linux/msm_audio_ape.h26
-rw-r--r--sdm710/kernel-headers/linux/msm_audio_calibration.h742
-rw-r--r--sdm710/kernel-headers/linux/msm_audio_g711.h17
-rw-r--r--sdm710/kernel-headers/linux/msm_audio_g711_dec.h16
-rw-r--r--sdm710/kernel-headers/linux/msm_audio_mvs.h155
-rw-r--r--sdm710/kernel-headers/linux/msm_audio_qcp.h37
-rw-r--r--sdm710/kernel-headers/linux/msm_audio_sbc.h36
-rw-r--r--sdm710/kernel-headers/linux/msm_audio_voicememo.h66
-rw-r--r--sdm710/kernel-headers/linux/msm_audio_wma.h33
-rw-r--r--sdm710/kernel-headers/linux/msm_audio_wmapro.h22
-rw-r--r--sdm710/kernel-headers/linux/msm_dsps.h29
-rw-r--r--sdm710/kernel-headers/linux/msm_ion.h138
-rw-r--r--sdm710/kernel-headers/linux/msm_ipa.h969
-rw-r--r--sdm710/kernel-headers/linux/msm_kgsl.h773
-rw-r--r--sdm710/kernel-headers/linux/msm_mdp.h1150
-rw-r--r--sdm710/kernel-headers/linux/msm_mdp_ext.h230
-rw-r--r--sdm710/kernel-headers/linux/msm_pft.h67
-rw-r--r--sdm710/kernel-headers/linux/msm_rmnet.h129
-rw-r--r--sdm710/kernel-headers/linux/msm_rotator.h66
-rw-r--r--sdm710/kernel-headers/linux/msm_thermal_ioctl.h65
-rw-r--r--sdm710/kernel-headers/linux/msm_vidc_dec.h469
-rw-r--r--sdm710/kernel-headers/linux/msm_vidc_enc.h387
-rw-r--r--sdm710/kernel-headers/linux/qseecom.h214
-rw-r--r--sdm710/kernel-headers/linux/rmnet_data.h115
-rw-r--r--sdm710/kernel-headers/linux/rmnet_ipa_fd_ioctl.h140
-rw-r--r--sdm710/kernel-headers/linux/sockios.h99
-rw-r--r--sdm710/kernel-headers/linux/spcom.h78
-rw-r--r--sdm710/kernel-headers/linux/v4l2-controls.h1286
-rw-r--r--sdm710/kernel-headers/linux/videodev2.h1400
-rw-r--r--sdm710/kernel-headers/linux/wcd-spi-ac-params.h38
-rw-r--r--sdm710/kernel-headers/media/cam_cpas.h31
-rw-r--r--sdm710/kernel-headers/media/cam_defs.h262
-rw-r--r--sdm710/kernel-headers/media/cam_fd.h73
-rw-r--r--sdm710/kernel-headers/media/cam_icp.h106
-rw-r--r--sdm710/kernel-headers/media/cam_isp.h188
-rw-r--r--sdm710/kernel-headers/media/cam_isp_ife.h50
-rw-r--r--sdm710/kernel-headers/media/cam_isp_vfe.h56
-rw-r--r--sdm710/kernel-headers/media/cam_jpeg.h67
-rw-r--r--sdm710/kernel-headers/media/cam_lrme.h60
-rw-r--r--sdm710/kernel-headers/media/cam_req_mgr.h217
-rw-r--r--sdm710/kernel-headers/media/cam_sensor.h239
-rw-r--r--sdm710/kernel-headers/media/cam_sync.h79
-rw-r--r--sdm710/kernel-headers/media/msm_cam_sensor.h540
-rw-r--r--sdm710/kernel-headers/media/msm_camera.h1707
-rw-r--r--sdm710/kernel-headers/media/msm_camsensor_sdk.h383
-rw-r--r--sdm710/kernel-headers/media/msm_fd.h57
-rw-r--r--sdm710/kernel-headers/media/msm_gemini.h90
-rw-r--r--sdm710/kernel-headers/media/msm_gestures.h54
-rw-r--r--sdm710/kernel-headers/media/msm_isp.h334
-rw-r--r--sdm710/kernel-headers/media/msm_jpeg.h91
-rw-r--r--sdm710/kernel-headers/media/msm_jpeg_dma.h29
-rw-r--r--sdm710/kernel-headers/media/msm_media_info.h1398
-rw-r--r--sdm710/kernel-headers/media/msm_mercury.h90
-rw-r--r--sdm710/kernel-headers/media/msm_sde_rotator.h103
-rw-r--r--sdm710/kernel-headers/media/msm_vidc.h384
-rw-r--r--sdm710/kernel-headers/media/msm_vpu.h184
-rw-r--r--sdm710/kernel-headers/media/msmb_camera.h162
-rw-r--r--sdm710/kernel-headers/media/msmb_generic_buf_mgr.h61
-rw-r--r--sdm710/kernel-headers/media/msmb_isp.h778
-rw-r--r--sdm710/kernel-headers/media/msmb_ispif.h169
-rw-r--r--sdm710/kernel-headers/media/msmb_pproc.h193
-rw-r--r--sdm710/kernel-headers/scsi/ufs/ioctl.h30
-rw-r--r--sdm710/kernel-headers/scsi/ufs/ufs.h86
-rw-r--r--sdm710/kernel-headers/sound/asound.h830
-rw-r--r--sdm710/kernel-headers/sound/audio_effects.h361
-rw-r--r--sdm710/kernel-headers/sound/audio_slimslave.h18
-rw-r--r--sdm710/kernel-headers/sound/compress_offload.h118
-rw-r--r--sdm710/kernel-headers/sound/compress_params.h296
-rw-r--r--sdm710/kernel-headers/sound/devdep_params.h66
-rw-r--r--sdm710/kernel-headers/sound/lsm_params.h200
-rw-r--r--sdm710/kernel-headers/sound/msmcal-hwdep.h37
-rw-r--r--sdm710/kernel-headers/sound/voice_params.h14
-rw-r--r--sdm710/kernel-headers/sound/voice_svc.h57
-rw-r--r--sdm710/kernel-headers/sound/wcd-dsp-glink.h60
-rw-r--r--sdm710/kernel-headers/video/msm_hdmi_modes.h290
-rw-r--r--sdm710/original-kernel-headers/asm-generic/ioctls.h120
-rw-r--r--sdm710/original-kernel-headers/drm/msm_drm.h394
-rw-r--r--sdm710/original-kernel-headers/drm/msm_drm_pp.h439
-rw-r--r--sdm710/original-kernel-headers/drm/sde_drm.h449
-rw-r--r--sdm710/original-kernel-headers/linux/avtimer.h10
-rw-r--r--sdm710/original-kernel-headers/linux/ion.h203
-rw-r--r--sdm710/original-kernel-headers/linux/ipa_qmi_service_v01.h2041
-rw-r--r--sdm710/original-kernel-headers/linux/mdss_rotator.h144
-rw-r--r--sdm710/original-kernel-headers/linux/mfd/msm-adie-codec.h147
-rw-r--r--sdm710/original-kernel-headers/linux/mfd/wcd9xxx/wcd9320_registers.h1399
-rw-r--r--sdm710/original-kernel-headers/linux/mfd/wcd9xxx/wcd9xxx_registers.h361
-rw-r--r--sdm710/original-kernel-headers/linux/msm-core-interface.h29
-rw-r--r--sdm710/original-kernel-headers/linux/msm_adsp.h77
-rw-r--r--sdm710/original-kernel-headers/linux/msm_audio.h480
-rw-r--r--sdm710/original-kernel-headers/linux/msm_audio_aac.h76
-rw-r--r--sdm710/original-kernel-headers/linux/msm_audio_ac3.h41
-rw-r--r--sdm710/original-kernel-headers/linux/msm_audio_alac.h24
-rw-r--r--sdm710/original-kernel-headers/linux/msm_audio_amrnb.h34
-rw-r--r--sdm710/original-kernel-headers/linux/msm_audio_amrwb.h18
-rw-r--r--sdm710/original-kernel-headers/linux/msm_audio_amrwbplus.h18
-rw-r--r--sdm710/original-kernel-headers/linux/msm_audio_ape.h26
-rw-r--r--sdm710/original-kernel-headers/linux/msm_audio_calibration.h742
-rw-r--r--sdm710/original-kernel-headers/linux/msm_audio_mvs.h155
-rw-r--r--sdm710/original-kernel-headers/linux/msm_audio_qcp.h37
-rw-r--r--sdm710/original-kernel-headers/linux/msm_audio_sbc.h36
-rw-r--r--sdm710/original-kernel-headers/linux/msm_audio_voicememo.h66
-rw-r--r--sdm710/original-kernel-headers/linux/msm_audio_wma.h33
-rw-r--r--sdm710/original-kernel-headers/linux/msm_audio_wmapro.h22
-rw-r--r--sdm710/original-kernel-headers/linux/msm_dsps.h16
-rw-r--r--sdm710/original-kernel-headers/linux/msm_ion.h218
-rw-r--r--sdm710/original-kernel-headers/linux/msm_ipa.h2196
-rw-r--r--sdm710/original-kernel-headers/linux/msm_kgsl.h1622
-rw-r--r--sdm710/original-kernel-headers/linux/msm_mdp.h1462
-rw-r--r--sdm710/original-kernel-headers/linux/msm_mdp_ext.h706
-rw-r--r--sdm710/original-kernel-headers/linux/msm_pft.h134
-rw-r--r--sdm710/original-kernel-headers/linux/msm_rmnet.h152
-rw-r--r--sdm710/original-kernel-headers/linux/msm_rotator.h60
-rw-r--r--sdm710/original-kernel-headers/linux/msm_thermal_ioctl.h92
-rw-r--r--sdm710/original-kernel-headers/linux/msm_vidc_dec.h629
-rw-r--r--sdm710/original-kernel-headers/linux/msm_vidc_enc.h752
-rw-r--r--sdm710/original-kernel-headers/linux/qseecom.h389
-rw-r--r--sdm710/original-kernel-headers/linux/rmnet_data.h247
-rw-r--r--sdm710/original-kernel-headers/linux/rmnet_ipa_fd_ioctl.h261
-rw-r--r--sdm710/original-kernel-headers/linux/sockios.h149
-rw-r--r--sdm710/original-kernel-headers/linux/spcom.h119
-rw-r--r--sdm710/original-kernel-headers/linux/v4l2-controls.h1696
-rw-r--r--sdm710/original-kernel-headers/linux/videodev2.h2453
-rw-r--r--sdm710/original-kernel-headers/linux/wcd-spi-ac-params.h52
-rw-r--r--sdm710/original-kernel-headers/media/cam_cpas.h25
-rw-r--r--sdm710/original-kernel-headers/media/cam_defs.h477
-rw-r--r--sdm710/original-kernel-headers/media/cam_fd.h127
-rw-r--r--sdm710/original-kernel-headers/media/cam_icp.h178
-rw-r--r--sdm710/original-kernel-headers/media/cam_isp.h378
-rw-r--r--sdm710/original-kernel-headers/media/cam_isp_ife.h39
-rw-r--r--sdm710/original-kernel-headers/media/cam_isp_vfe.h44
-rw-r--r--sdm710/original-kernel-headers/media/cam_jpeg.h117
-rw-r--r--sdm710/original-kernel-headers/media/cam_lrme.h65
-rw-r--r--sdm710/original-kernel-headers/media/cam_req_mgr.h434
-rw-r--r--sdm710/original-kernel-headers/media/cam_sensor.h526
-rw-r--r--sdm710/original-kernel-headers/media/cam_sync.h134
-rw-r--r--sdm710/original-kernel-headers/media/msm_cam_sensor.h635
-rw-r--r--sdm710/original-kernel-headers/media/msm_camera.h2232
-rw-r--r--sdm710/original-kernel-headers/media/msm_camsensor_sdk.h432
-rw-r--r--sdm710/original-kernel-headers/media/msm_fd.h76
-rw-r--r--sdm710/original-kernel-headers/media/msm_gemini.h123
-rw-r--r--sdm710/original-kernel-headers/media/msm_gestures.h54
-rw-r--r--sdm710/original-kernel-headers/media/msm_isp.h344
-rw-r--r--sdm710/original-kernel-headers/media/msm_jpeg.h125
-rw-r--r--sdm710/original-kernel-headers/media/msm_jpeg_dma.h28
-rw-r--r--sdm710/original-kernel-headers/media/msm_media_info.h1398
-rw-r--r--sdm710/original-kernel-headers/media/msm_mercury.h119
-rw-r--r--sdm710/original-kernel-headers/media/msm_sde_rotator.h117
-rw-r--r--sdm710/original-kernel-headers/media/msm_vidc.h423
-rw-r--r--sdm710/original-kernel-headers/media/msm_vpu.h475
-rw-r--r--sdm710/original-kernel-headers/media/msmb_camera.h234
-rw-r--r--sdm710/original-kernel-headers/media/msmb_generic_buf_mgr.h68
-rw-r--r--sdm710/original-kernel-headers/media/msmb_isp.h1046
-rw-r--r--sdm710/original-kernel-headers/media/msmb_ispif.h179
-rw-r--r--sdm710/original-kernel-headers/media/msmb_pproc.h255
-rw-r--r--sdm710/original-kernel-headers/scsi/ufs/ioctl.h57
-rw-r--r--sdm710/original-kernel-headers/scsi/ufs/ufs.h85
-rw-r--r--sdm710/original-kernel-headers/sound/asound.h1022
-rw-r--r--sdm710/original-kernel-headers/sound/audio_effects.h361
-rw-r--r--sdm710/original-kernel-headers/sound/compress_offload.h237
-rw-r--r--sdm710/original-kernel-headers/sound/compress_params.h524
-rw-r--r--sdm710/original-kernel-headers/sound/devdep_params.h66
-rw-r--r--sdm710/original-kernel-headers/sound/lsm_params.h200
-rw-r--r--sdm710/original-kernel-headers/sound/msmcal-hwdep.h23
-rw-r--r--sdm710/original-kernel-headers/sound/voice_params.h14
-rw-r--r--sdm710/original-kernel-headers/sound/voice_svc.h47
-rw-r--r--sdm710/original-kernel-headers/sound/wcd-dsp-glink.h60
-rw-r--r--sdm710/original-kernel-headers/video/msm_hdmi_modes.h559
188 files changed, 0 insertions, 58945 deletions
diff --git a/device.mk b/device.mk
index 4c31fc98..79f95920 100644
--- a/device.mk
+++ b/device.mk
@@ -674,8 +674,6 @@ PRODUCT_COPY_FILES += \
device/google/bonito/vibrator/cs40l20/cs40l20.wmfw:$(TARGET_COPY_OUT_VENDOR)/firmware/cs40l20.wmfw \
device/google/bonito/vibrator/cs40l20/cs40l20.bin:$(TARGET_COPY_OUT_VENDOR)/firmware/cs40l20.bin
-PRODUCT_VENDOR_KERNEL_HEADERS := device/google/bonito/sdm710/kernel-headers
-
# Audio ACDB data
PRODUCT_COPY_FILES += \
device/google/bonito/acdbdata/OEM/sdm670-intcodec-b4-snd-card/Bluetooth_cal.acdb:$(TARGET_COPY_OUT_VENDOR)/etc/acdbdata/OEM/sdm670-intcodec-b4-snd-card/Bluetooth_cal.acdb \
diff --git a/sdm710/kernel-headers/asm-generic/ioctls.h b/sdm710/kernel-headers/asm-generic/ioctls.h
deleted file mode 100644
index 9cdc364d..00000000
--- a/sdm710/kernel-headers/asm-generic/ioctls.h
+++ /dev/null
@@ -1,113 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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 __ASM_GENERIC_IOCTLS_H
-#define __ASM_GENERIC_IOCTLS_H
-#include <linux/ioctl.h>
-#define TCGETS 0x5401
-#define TCSETS 0x5402
-#define TCSETSW 0x5403
-#define TCSETSF 0x5404
-#define TCGETA 0x5405
-#define TCSETA 0x5406
-#define TCSETAW 0x5407
-#define TCSETAF 0x5408
-#define TCSBRK 0x5409
-#define TCXONC 0x540A
-#define TCFLSH 0x540B
-#define TIOCEXCL 0x540C
-#define TIOCNXCL 0x540D
-#define TIOCSCTTY 0x540E
-#define TIOCGPGRP 0x540F
-#define TIOCSPGRP 0x5410
-#define TIOCOUTQ 0x5411
-#define TIOCSTI 0x5412
-#define TIOCGWINSZ 0x5413
-#define TIOCSWINSZ 0x5414
-#define TIOCMGET 0x5415
-#define TIOCMBIS 0x5416
-#define TIOCMBIC 0x5417
-#define TIOCMSET 0x5418
-#define TIOCGSOFTCAR 0x5419
-#define TIOCSSOFTCAR 0x541A
-#define FIONREAD 0x541B
-#define TIOCINQ FIONREAD
-#define TIOCLINUX 0x541C
-#define TIOCCONS 0x541D
-#define TIOCGSERIAL 0x541E
-#define TIOCSSERIAL 0x541F
-#define TIOCPKT 0x5420
-#define FIONBIO 0x5421
-#define TIOCNOTTY 0x5422
-#define TIOCSETD 0x5423
-#define TIOCGETD 0x5424
-#define TCSBRKP 0x5425
-#define TIOCSBRK 0x5427
-#define TIOCCBRK 0x5428
-#define TIOCGSID 0x5429
-#define TCGETS2 _IOR('T', 0x2A, struct termios2)
-#define TCSETS2 _IOW('T', 0x2B, struct termios2)
-#define TCSETSW2 _IOW('T', 0x2C, struct termios2)
-#define TCSETSF2 _IOW('T', 0x2D, struct termios2)
-#define TIOCGRS485 0x542E
-#ifndef TIOCSRS485
-#define TIOCSRS485 0x542F
-#endif
-#define TIOCGPTN _IOR('T', 0x30, unsigned int)
-#define TIOCSPTLCK _IOW('T', 0x31, int)
-#define TIOCGDEV _IOR('T', 0x32, unsigned int)
-#define TCGETX 0x5432
-#define TCSETX 0x5433
-#define TCSETXF 0x5434
-#define TCSETXW 0x5435
-#define TIOCSIG _IOW('T', 0x36, int)
-#define TIOCVHANGUP 0x5437
-#define TIOCGPKT _IOR('T', 0x38, int)
-#define TIOCGPTLCK _IOR('T', 0x39, int)
-#define TIOCGEXCL _IOR('T', 0x40, int)
-#define TIOCPMGET 0x5441
-#define TIOCPMPUT 0x5442
-#define TIOCPMACT 0x5443
-#define FIONCLEX 0x5450
-#define FIOCLEX 0x5451
-#define FIOASYNC 0x5452
-#define TIOCSERCONFIG 0x5453
-#define TIOCSERGWILD 0x5454
-#define TIOCSERSWILD 0x5455
-#define TIOCGLCKTRMIOS 0x5456
-#define TIOCSLCKTRMIOS 0x5457
-#define TIOCSERGSTRUCT 0x5458
-#define TIOCSERGETLSR 0x5459
-#define TIOCSERGETMULTI 0x545A
-#define TIOCSERSETMULTI 0x545B
-#define TIOCMIWAIT 0x545C
-#define TIOCGICOUNT 0x545D
-#ifndef FIOQSIZE
-#define FIOQSIZE 0x5460
-#endif
-#define TIOCPKT_DATA 0
-#define TIOCPKT_FLUSHREAD 1
-#define TIOCPKT_FLUSHWRITE 2
-#define TIOCPKT_STOP 4
-#define TIOCPKT_START 8
-#define TIOCPKT_NOSTOP 16
-#define TIOCPKT_DOSTOP 32
-#define TIOCPKT_IOCTL 64
-#define TIOCSER_TEMT 0x01
-#endif
-
diff --git a/sdm710/kernel-headers/drm/msm_drm.h b/sdm710/kernel-headers/drm/msm_drm.h
deleted file mode 100644
index 820a65dc..00000000
--- a/sdm710/kernel-headers/drm/msm_drm.h
+++ /dev/null
@@ -1,217 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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_DRM_H__
-#define __MSM_DRM_H__
-#include "drm.h"
-#include "sde_drm.h"
-#ifdef __cplusplus
-#endif
-#define MSM_PIPE_NONE 0x00
-#define MSM_PIPE_2D0 0x01
-#define MSM_PIPE_2D1 0x02
-#define MSM_PIPE_3D0 0x10
-#define MSM_PIPE_ID_MASK 0xffff
-#define MSM_PIPE_ID(x) ((x) & MSM_PIPE_ID_MASK)
-#define MSM_PIPE_FLAGS(x) ((x) & ~MSM_PIPE_ID_MASK)
-struct drm_msm_timespec {
- __s64 tv_sec;
- __s64 tv_nsec;
-};
-#define HDR_PRIMARIES_COUNT 3
-#define HDR_EOTF_SDR_LUM_RANGE 0x0
-#define HDR_EOTF_HDR_LUM_RANGE 0x1
-#define HDR_EOTF_SMTPE_ST2084 0x2
-#define HDR_EOTF_HLG 0x3
-#define DRM_MSM_EXT_HDR_METADATA
-struct drm_msm_ext_hdr_metadata {
- __u32 hdr_state;
- __u32 eotf;
- __u32 hdr_supported;
- __u32 display_primaries_x[HDR_PRIMARIES_COUNT];
- __u32 display_primaries_y[HDR_PRIMARIES_COUNT];
- __u32 white_point_x;
- __u32 white_point_y;
- __u32 max_luminance;
- __u32 min_luminance;
- __u32 max_content_light_level;
- __u32 max_average_light_level;
-};
-#define DRM_MSM_EXT_HDR_PROPERTIES
-struct drm_msm_ext_hdr_properties {
- __u8 hdr_metadata_type_one;
- __u32 hdr_supported;
- __u32 hdr_eotf;
- __u32 hdr_max_luminance;
- __u32 hdr_avg_luminance;
- __u32 hdr_min_luminance;
-};
-#define MSM_PARAM_GPU_ID 0x01
-#define MSM_PARAM_GMEM_SIZE 0x02
-#define MSM_PARAM_CHIP_ID 0x03
-#define MSM_PARAM_MAX_FREQ 0x04
-#define MSM_PARAM_TIMESTAMP 0x05
-struct drm_msm_param {
- __u32 pipe;
- __u32 param;
- __u64 value;
-};
-#define MSM_BO_SCANOUT 0x00000001
-#define MSM_BO_GPU_READONLY 0x00000002
-#define MSM_BO_CACHE_MASK 0x000f0000
-#define MSM_BO_CACHED 0x00010000
-#define MSM_BO_WC 0x00020000
-#define MSM_BO_UNCACHED 0x00040000
-#define MSM_BO_FLAGS (MSM_BO_SCANOUT | MSM_BO_GPU_READONLY | MSM_BO_CACHED | MSM_BO_WC | MSM_BO_UNCACHED)
-struct drm_msm_gem_new {
- __u64 size;
- __u32 flags;
- __u32 handle;
-};
-struct drm_msm_gem_info {
- __u32 handle;
- __u32 pad;
- __u64 offset;
-};
-#define MSM_PREP_READ 0x01
-#define MSM_PREP_WRITE 0x02
-#define MSM_PREP_NOSYNC 0x04
-#define MSM_PREP_FLAGS (MSM_PREP_READ | MSM_PREP_WRITE | MSM_PREP_NOSYNC)
-struct drm_msm_gem_cpu_prep {
- __u32 handle;
- __u32 op;
- struct drm_msm_timespec timeout;
-};
-struct drm_msm_gem_cpu_fini {
- __u32 handle;
-};
-struct drm_msm_gem_submit_reloc {
- __u32 submit_offset;
- __u32 or;
- __s32 shift;
- __u32 reloc_idx;
- __u64 reloc_offset;
-};
-#define MSM_SUBMIT_CMD_BUF 0x0001
-#define MSM_SUBMIT_CMD_IB_TARGET_BUF 0x0002
-#define MSM_SUBMIT_CMD_CTX_RESTORE_BUF 0x0003
-struct drm_msm_gem_submit_cmd {
- __u32 type;
- __u32 submit_idx;
- __u32 submit_offset;
- __u32 size;
- __u32 pad;
- __u32 nr_relocs;
- __u64 relocs;
-};
-#define MSM_SUBMIT_BO_READ 0x0001
-#define MSM_SUBMIT_BO_WRITE 0x0002
-#define MSM_SUBMIT_BO_FLAGS (MSM_SUBMIT_BO_READ | MSM_SUBMIT_BO_WRITE)
-struct drm_msm_gem_submit_bo {
- __u32 flags;
- __u32 handle;
- __u64 presumed;
-};
-#define MSM_SUBMIT_NO_IMPLICIT 0x80000000
-#define MSM_SUBMIT_FENCE_FD_IN 0x40000000
-#define MSM_SUBMIT_FENCE_FD_OUT 0x20000000
-#define MSM_SUBMIT_FLAGS (MSM_SUBMIT_NO_IMPLICIT | MSM_SUBMIT_FENCE_FD_IN | MSM_SUBMIT_FENCE_FD_OUT | 0)
-struct drm_msm_gem_submit {
- __u32 flags;
- __u32 fence;
- __u32 nr_bos;
- __u32 nr_cmds;
- __u64 bos;
- __u64 cmds;
- __s32 fence_fd;
-};
-struct drm_msm_wait_fence {
- __u32 fence;
- __u32 pad;
- struct drm_msm_timespec timeout;
-};
-#define MSM_MADV_WILLNEED 0
-#define MSM_MADV_DONTNEED 1
-#define __MSM_MADV_PURGED 2
-struct drm_msm_gem_madvise {
- __u32 handle;
- __u32 madv;
- __u32 retained;
-};
-#define DISPLAY_PRIMARIES_WX 0
-#define DISPLAY_PRIMARIES_WY 1
-#define DISPLAY_PRIMARIES_RX 2
-#define DISPLAY_PRIMARIES_RY 3
-#define DISPLAY_PRIMARIES_GX 4
-#define DISPLAY_PRIMARIES_GY 5
-#define DISPLAY_PRIMARIES_BX 6
-#define DISPLAY_PRIMARIES_BY 7
-#define DISPLAY_PRIMARIES_MAX 8
-struct drm_panel_hdr_properties {
- __u32 hdr_enabled;
- __u32 display_primaries[DISPLAY_PRIMARIES_MAX];
- __u32 peak_brightness;
- __u32 blackness_level;
-};
-struct drm_msm_event_req {
- __u32 object_id;
- __u32 object_type;
- __u32 event;
- __u64 client_context;
- __u32 index;
-};
-struct drm_msm_event_resp {
- struct drm_event base;
- struct drm_msm_event_req info;
- __u8 data[];
-};
-#define DRM_MSM_GET_PARAM 0x00
-#define DRM_MSM_GEM_NEW 0x02
-#define DRM_MSM_GEM_INFO 0x03
-#define DRM_MSM_GEM_CPU_PREP 0x04
-#define DRM_MSM_GEM_CPU_FINI 0x05
-#define DRM_MSM_GEM_SUBMIT 0x06
-#define DRM_MSM_WAIT_FENCE 0x07
-#define DRM_MSM_GEM_MADVISE 0x08
-#define DRM_SDE_WB_CONFIG 0x40
-#define DRM_MSM_REGISTER_EVENT 0x41
-#define DRM_MSM_DEREGISTER_EVENT 0x42
-#define DRM_MSM_RMFB2 0x43
-#define DRM_EVENT_HISTOGRAM 0x80000000
-#define DRM_EVENT_AD_BACKLIGHT 0x80000001
-#define DRM_EVENT_CRTC_POWER 0x80000002
-#define DRM_EVENT_SYS_BACKLIGHT 0x80000003
-#define DRM_EVENT_SDE_POWER 0x80000004
-#define DRM_EVENT_IDLE_NOTIFY 0x80000005
-#define DRM_EVENT_PANEL_DEAD 0x80000006
-#define DRM_IOCTL_MSM_GET_PARAM DRM_IOWR(DRM_COMMAND_BASE + DRM_MSM_GET_PARAM, struct drm_msm_param)
-#define DRM_IOCTL_MSM_GEM_NEW DRM_IOWR(DRM_COMMAND_BASE + DRM_MSM_GEM_NEW, struct drm_msm_gem_new)
-#define DRM_IOCTL_MSM_GEM_INFO DRM_IOWR(DRM_COMMAND_BASE + DRM_MSM_GEM_INFO, struct drm_msm_gem_info)
-#define DRM_IOCTL_MSM_GEM_CPU_PREP DRM_IOW(DRM_COMMAND_BASE + DRM_MSM_GEM_CPU_PREP, struct drm_msm_gem_cpu_prep)
-#define DRM_IOCTL_MSM_GEM_CPU_FINI DRM_IOW(DRM_COMMAND_BASE + DRM_MSM_GEM_CPU_FINI, struct drm_msm_gem_cpu_fini)
-#define DRM_IOCTL_MSM_GEM_SUBMIT DRM_IOWR(DRM_COMMAND_BASE + DRM_MSM_GEM_SUBMIT, struct drm_msm_gem_submit)
-#define DRM_IOCTL_MSM_WAIT_FENCE DRM_IOW(DRM_COMMAND_BASE + DRM_MSM_WAIT_FENCE, struct drm_msm_wait_fence)
-#define DRM_IOCTL_MSM_GEM_MADVISE DRM_IOWR(DRM_COMMAND_BASE + DRM_MSM_GEM_MADVISE, struct drm_msm_gem_madvise)
-#define DRM_IOCTL_SDE_WB_CONFIG DRM_IOW((DRM_COMMAND_BASE + DRM_SDE_WB_CONFIG), struct sde_drm_wb_cfg)
-#define DRM_IOCTL_MSM_REGISTER_EVENT DRM_IOW((DRM_COMMAND_BASE + DRM_MSM_REGISTER_EVENT), struct drm_msm_event_req)
-#define DRM_IOCTL_MSM_DEREGISTER_EVENT DRM_IOW((DRM_COMMAND_BASE + DRM_MSM_DEREGISTER_EVENT), struct drm_msm_event_req)
-#define DRM_IOCTL_MSM_RMFB2 DRM_IOW((DRM_COMMAND_BASE + DRM_MSM_RMFB2), unsigned int)
-#ifdef __cplusplus
-#endif
-#endif
-
diff --git a/sdm710/kernel-headers/drm/msm_drm_pp.h b/sdm710/kernel-headers/drm/msm_drm_pp.h
deleted file mode 100644
index e12ed709..00000000
--- a/sdm710/kernel-headers/drm/msm_drm_pp.h
+++ /dev/null
@@ -1,297 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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_DRM_PP_H_
-#define _MSM_DRM_PP_H_
-#include <linux/types.h>
-struct drm_msm_pcc_coeff {
- __u32 c;
- __u32 r;
- __u32 g;
- __u32 b;
- __u32 rg;
- __u32 gb;
- __u32 rb;
- __u32 rgb;
-};
-#define DRM_MSM_PCC3
-struct drm_msm_pcc {
- __u64 flags;
- struct drm_msm_pcc_coeff r;
- struct drm_msm_pcc_coeff g;
- struct drm_msm_pcc_coeff b;
- __u32 r_rr;
- __u32 r_gg;
- __u32 r_bb;
- __u32 g_rr;
- __u32 g_gg;
- __u32 g_bb;
- __u32 b_rr;
- __u32 b_gg;
- __u32 b_bb;
-};
-#define PA_VLUT_SIZE 256
-struct drm_msm_pa_vlut {
- __u64 flags;
- __u32 val[PA_VLUT_SIZE];
-};
-#define PA_HSIC_HUE_ENABLE (1 << 0)
-#define PA_HSIC_SAT_ENABLE (1 << 1)
-#define PA_HSIC_VAL_ENABLE (1 << 2)
-#define PA_HSIC_CONT_ENABLE (1 << 3)
-#define DRM_MSM_PA_HSIC
-struct drm_msm_pa_hsic {
- __u64 flags;
- __u32 hue;
- __u32 saturation;
- __u32 value;
- __u32 contrast;
-};
-#define MEMCOL_PROT_HUE (1 << 0)
-#define MEMCOL_PROT_SAT (1 << 1)
-#define MEMCOL_PROT_VAL (1 << 2)
-#define MEMCOL_PROT_CONT (1 << 3)
-#define MEMCOL_PROT_SIXZONE (1 << 4)
-#define MEMCOL_PROT_BLEND (1 << 5)
-#define DRM_MSM_MEMCOL
-struct drm_msm_memcol {
- __u64 prot_flags;
- __u32 color_adjust_p0;
- __u32 color_adjust_p1;
- __u32 color_adjust_p2;
- __u32 blend_gain;
- __u32 sat_hold;
- __u32 val_hold;
- __u32 hue_region;
- __u32 sat_region;
- __u32 val_region;
-};
-#define DRM_MSM_SIXZONE
-#define SIXZONE_LUT_SIZE 384
-#define SIXZONE_HUE_ENABLE (1 << 0)
-#define SIXZONE_SAT_ENABLE (1 << 1)
-#define SIXZONE_VAL_ENABLE (1 << 2)
-struct drm_msm_sixzone_curve {
- __u32 p1;
- __u32 p0;
-};
-struct drm_msm_sixzone {
- __u64 flags;
- __u32 threshold;
- __u32 adjust_p0;
- __u32 adjust_p1;
- __u32 sat_hold;
- __u32 val_hold;
- struct drm_msm_sixzone_curve curve[SIXZONE_LUT_SIZE];
-};
-#define GAMUT_3D_MODE_17 1
-#define GAMUT_3D_MODE_5 2
-#define GAMUT_3D_MODE_13 3
-#define GAMUT_3D_MODE17_TBL_SZ 1229
-#define GAMUT_3D_MODE5_TBL_SZ 32
-#define GAMUT_3D_MODE13_TBL_SZ 550
-#define GAMUT_3D_SCALE_OFF_SZ 16
-#define GAMUT_3D_SCALEB_OFF_SZ 12
-#define GAMUT_3D_TBL_NUM 4
-#define GAMUT_3D_SCALE_OFF_TBL_NUM 3
-#define GAMUT_3D_MAP_EN (1 << 0)
-struct drm_msm_3d_col {
- __u32 c2_c1;
- __u32 c0;
-};
-struct drm_msm_3d_gamut {
- __u64 flags;
- __u32 mode;
- __u32 scale_off[GAMUT_3D_SCALE_OFF_TBL_NUM][GAMUT_3D_SCALE_OFF_SZ];
- struct drm_msm_3d_col col[GAMUT_3D_TBL_NUM][GAMUT_3D_MODE17_TBL_SZ];
-};
-#define PGC_TBL_LEN 512
-#define PGC_8B_ROUND (1 << 0)
-struct drm_msm_pgc_lut {
- __u64 flags;
- __u32 c0[PGC_TBL_LEN];
- __u32 c1[PGC_TBL_LEN];
- __u32 c2[PGC_TBL_LEN];
-};
-#define IGC_TBL_LEN 256
-#define IGC_DITHER_ENABLE (1 << 0)
-struct drm_msm_igc_lut {
- __u64 flags;
- __u32 c0[IGC_TBL_LEN];
- __u32 c1[IGC_TBL_LEN];
- __u32 c2[IGC_TBL_LEN];
- __u32 strength;
-};
-#define HIST_V_SIZE 256
-struct drm_msm_hist {
- __u64 flags;
- __u32 data[HIST_V_SIZE];
-};
-#define AD4_LUT_GRP0_SIZE 33
-#define AD4_LUT_GRP1_SIZE 32
-struct drm_msm_ad4_init {
- __u32 init_param_001[AD4_LUT_GRP0_SIZE];
- __u32 init_param_002[AD4_LUT_GRP0_SIZE];
- __u32 init_param_003[AD4_LUT_GRP0_SIZE];
- __u32 init_param_004[AD4_LUT_GRP0_SIZE];
- __u32 init_param_005[AD4_LUT_GRP1_SIZE];
- __u32 init_param_006[AD4_LUT_GRP1_SIZE];
- __u32 init_param_007[AD4_LUT_GRP0_SIZE];
- __u32 init_param_008[AD4_LUT_GRP0_SIZE];
- __u32 init_param_009;
- __u32 init_param_010;
- __u32 init_param_011;
- __u32 init_param_012;
- __u32 init_param_013;
- __u32 init_param_014;
- __u32 init_param_015;
- __u32 init_param_016;
- __u32 init_param_017;
- __u32 init_param_018;
- __u32 init_param_019;
- __u32 init_param_020;
- __u32 init_param_021;
- __u32 init_param_022;
- __u32 init_param_023;
- __u32 init_param_024;
- __u32 init_param_025;
- __u32 init_param_026;
- __u32 init_param_027;
- __u32 init_param_028;
- __u32 init_param_029;
- __u32 init_param_030;
- __u32 init_param_031;
- __u32 init_param_032;
- __u32 init_param_033;
- __u32 init_param_034;
- __u32 init_param_035;
- __u32 init_param_036;
- __u32 init_param_037;
- __u32 init_param_038;
- __u32 init_param_039;
- __u32 init_param_040;
- __u32 init_param_041;
- __u32 init_param_042;
- __u32 init_param_043;
- __u32 init_param_044;
- __u32 init_param_045;
- __u32 init_param_046;
- __u32 init_param_047;
- __u32 init_param_048;
- __u32 init_param_049;
- __u32 init_param_050;
- __u32 init_param_051;
- __u32 init_param_052;
- __u32 init_param_053;
- __u32 init_param_054;
- __u32 init_param_055;
- __u32 init_param_056;
- __u32 init_param_057;
- __u32 init_param_058;
- __u32 init_param_059;
- __u32 init_param_060;
- __u32 init_param_061;
- __u32 init_param_062;
- __u32 init_param_063;
- __u32 init_param_064;
- __u32 init_param_065;
- __u32 init_param_066;
- __u32 init_param_067;
- __u32 init_param_068;
- __u32 init_param_069;
- __u32 init_param_070;
- __u32 init_param_071;
- __u32 init_param_072;
- __u32 init_param_073;
- __u32 init_param_074;
- __u32 init_param_075;
-};
-struct drm_msm_ad4_cfg {
- __u32 cfg_param_001;
- __u32 cfg_param_002;
- __u32 cfg_param_003;
- __u32 cfg_param_004;
- __u32 cfg_param_005;
- __u32 cfg_param_006;
- __u32 cfg_param_007;
- __u32 cfg_param_008;
- __u32 cfg_param_009;
- __u32 cfg_param_010;
- __u32 cfg_param_011;
- __u32 cfg_param_012;
- __u32 cfg_param_013;
- __u32 cfg_param_014;
- __u32 cfg_param_015;
- __u32 cfg_param_016;
- __u32 cfg_param_017;
- __u32 cfg_param_018;
- __u32 cfg_param_019;
- __u32 cfg_param_020;
- __u32 cfg_param_021;
- __u32 cfg_param_022;
- __u32 cfg_param_023;
- __u32 cfg_param_024;
- __u32 cfg_param_025;
- __u32 cfg_param_026;
- __u32 cfg_param_027;
- __u32 cfg_param_028;
- __u32 cfg_param_029;
- __u32 cfg_param_030;
- __u32 cfg_param_031;
- __u32 cfg_param_032;
- __u32 cfg_param_033;
- __u32 cfg_param_034;
- __u32 cfg_param_035;
- __u32 cfg_param_036;
- __u32 cfg_param_037;
- __u32 cfg_param_038;
- __u32 cfg_param_039;
- __u32 cfg_param_040;
- __u32 cfg_param_041;
- __u32 cfg_param_042;
- __u32 cfg_param_043;
- __u32 cfg_param_044;
- __u32 cfg_param_045;
- __u32 cfg_param_046;
- __u32 cfg_param_047;
- __u32 cfg_param_048;
- __u32 cfg_param_049;
- __u32 cfg_param_050;
- __u32 cfg_param_051;
- __u32 cfg_param_052;
- __u32 cfg_param_053;
-};
-#define DITHER_MATRIX_SZ 16
-struct drm_msm_dither {
- __u64 flags;
- __u32 temporal_en;
- __u32 c0_bitdepth;
- __u32 c1_bitdepth;
- __u32 c2_bitdepth;
- __u32 c3_bitdepth;
- __u32 matrix[DITHER_MATRIX_SZ];
-};
-#define DRM_MSM_PA_DITHER
-struct drm_msm_pa_dither {
- __u64 flags;
- __u32 strength;
- __u32 offset_en;
- __u32 matrix[DITHER_MATRIX_SZ];
-};
-#endif
-
diff --git a/sdm710/kernel-headers/drm/sde_drm.h b/sdm710/kernel-headers/drm/sde_drm.h
deleted file mode 100644
index ea75b860..00000000
--- a/sdm710/kernel-headers/drm/sde_drm.h
+++ /dev/null
@@ -1,181 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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 _SDE_DRM_H_
-#define _SDE_DRM_H_
-#include "drm.h"
-#define SDE_MAX_PLANES 4
-#define SDE_MAX_DE_CURVES 3
-#define FILTER_EDGE_DIRECTED_2D 0x0
-#define FILTER_CIRCULAR_2D 0x1
-#define FILTER_SEPARABLE_1D 0x2
-#define FILTER_BILINEAR 0x3
-#define FILTER_ALPHA_DROP_REPEAT 0x0
-#define FILTER_ALPHA_BILINEAR 0x1
-#define FILTER_ALPHA_2D 0x3
-#define FILTER_BLEND_CIRCULAR_2D 0x0
-#define FILTER_BLEND_SEPARABLE_1D 0x1
-#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
-#define SDE_DRM_BLEND_OP_NOT_DEFINED 0
-#define SDE_DRM_BLEND_OP_OPAQUE 1
-#define SDE_DRM_BLEND_OP_PREMULTIPLIED 2
-#define SDE_DRM_BLEND_OP_COVERAGE 3
-#define SDE_DRM_BLEND_OP_MAX 4
-#define SDE_DRM_DEINTERLACE 0
-#define SDE_DRM_BITMASK_COUNT 64
-#define SDE_DRM_FB_NON_SEC 0
-#define SDE_DRM_FB_SEC 1
-#define SDE_DRM_FB_NON_SEC_DIR_TRANS 2
-#define SDE_DRM_FB_SEC_DIR_TRANS 3
-#define SDE_DRM_SEC_NON_SEC 0
-#define SDE_DRM_SEC_ONLY 1
-struct sde_drm_pix_ext_v1 {
- int32_t num_ext_pxls_lr[SDE_MAX_PLANES];
- int32_t num_ext_pxls_tb[SDE_MAX_PLANES];
- int32_t left_ftch[SDE_MAX_PLANES];
- int32_t right_ftch[SDE_MAX_PLANES];
- int32_t top_ftch[SDE_MAX_PLANES];
- int32_t btm_ftch[SDE_MAX_PLANES];
- int32_t left_rpt[SDE_MAX_PLANES];
- int32_t right_rpt[SDE_MAX_PLANES];
- int32_t top_rpt[SDE_MAX_PLANES];
- int32_t btm_rpt[SDE_MAX_PLANES];
-};
-struct sde_drm_scaler_v1 {
- struct sde_drm_pix_ext_v1 pe;
- int32_t init_phase_x[SDE_MAX_PLANES];
- int32_t phase_step_x[SDE_MAX_PLANES];
- int32_t init_phase_y[SDE_MAX_PLANES];
- int32_t phase_step_y[SDE_MAX_PLANES];
- uint32_t horz_filter[SDE_MAX_PLANES];
- uint32_t vert_filter[SDE_MAX_PLANES];
-};
-struct sde_drm_de_v1 {
- 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[SDE_MAX_DE_CURVES];
- int16_t adjust_b[SDE_MAX_DE_CURVES];
- int16_t adjust_c[SDE_MAX_DE_CURVES];
-};
-struct sde_drm_scaler_v2 {
- uint32_t enable;
- uint32_t dir_en;
- struct sde_drm_pix_ext_v1 pe;
- uint32_t horz_decimate;
- uint32_t vert_decimate;
- int32_t init_phase_x[SDE_MAX_PLANES];
- int32_t phase_step_x[SDE_MAX_PLANES];
- int32_t init_phase_y[SDE_MAX_PLANES];
- int32_t phase_step_y[SDE_MAX_PLANES];
- uint32_t preload_x[SDE_MAX_PLANES];
- uint32_t preload_y[SDE_MAX_PLANES];
- uint32_t src_width[SDE_MAX_PLANES];
- uint32_t src_height[SDE_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;
- 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 sde_drm_de_v1 de;
-};
-#define SDE_MAX_DS_COUNT 2
-#define SDE_DRM_DESTSCALER_ENABLE 0x1
-#define SDE_DRM_DESTSCALER_SCALE_UPDATE 0x2
-#define SDE_DRM_DESTSCALER_ENHANCER_UPDATE 0x4
-#define SDE_DRM_DESTSCALER_PU_ENABLE 0x8
-struct sde_drm_dest_scaler_cfg {
- uint32_t flags;
- uint32_t index;
- uint32_t lm_width;
- uint32_t lm_height;
- uint64_t scaler_cfg;
-};
-struct sde_drm_dest_scaler_data {
- uint32_t num_dest_scaler;
- struct sde_drm_dest_scaler_cfg ds_cfg[SDE_MAX_DS_COUNT];
-};
-#define SDE_CSC_MATRIX_COEFF_SIZE 9
-#define SDE_CSC_CLAMP_SIZE 6
-#define SDE_CSC_BIAS_SIZE 3
-struct sde_drm_csc_v1 {
- int64_t ctm_coeff[SDE_CSC_MATRIX_COEFF_SIZE];
- uint32_t pre_bias[SDE_CSC_BIAS_SIZE];
- uint32_t post_bias[SDE_CSC_BIAS_SIZE];
- uint32_t pre_clamp[SDE_CSC_CLAMP_SIZE];
- uint32_t post_clamp[SDE_CSC_CLAMP_SIZE];
-};
-struct sde_drm_color {
- uint32_t color_0;
- uint32_t color_1;
- uint32_t color_2;
- uint32_t color_3;
-};
-#define SDE_MAX_DIM_LAYERS 7
-#define SDE_DRM_DIM_LAYER_INCLUSIVE 0x1
-#define SDE_DRM_DIM_LAYER_EXCLUSIVE 0x2
-struct sde_drm_dim_layer_cfg {
- uint32_t flags;
- uint32_t stage;
- struct sde_drm_color color_fill;
- struct drm_clip_rect rect;
-};
-struct sde_drm_dim_layer_v1 {
- uint32_t num_layers;
- struct sde_drm_dim_layer_cfg layer_cfg[SDE_MAX_DIM_LAYERS];
-};
-#define SDE_DRM_WB_CFG 0x1
-#define SDE_DRM_WB_CFG_FLAGS_CONNECTED (1 << 0)
-struct sde_drm_wb_cfg {
- uint32_t flags;
- uint32_t connector_id;
- uint32_t count_modes;
- uint64_t modes;
-};
-#define SDE_MAX_ROI_V1 4
-struct sde_drm_roi_v1 {
- uint32_t num_rects;
- struct drm_clip_rect roi[SDE_MAX_ROI_V1];
-};
-#define SDE_MODE_DPMS_ON 0
-#define SDE_MODE_DPMS_LP1 1
-#define SDE_MODE_DPMS_LP2 2
-#define SDE_MODE_DPMS_STANDBY 3
-#define SDE_MODE_DPMS_SUSPEND 4
-#define SDE_MODE_DPMS_OFF 5
-#endif
-
diff --git a/sdm710/kernel-headers/linux/avtimer.h b/sdm710/kernel-headers/linux/avtimer.h
deleted file mode 100644
index cbcd8247..00000000
--- a/sdm710/kernel-headers/linux/avtimer.h
+++ /dev/null
@@ -1,10 +0,0 @@
-#ifndef _AVTIMER_H
-#define _AVTIMER_H
-
-#include <linux/ioctl.h>
-
-#define MAJOR_NUM 100
-
-#define IOCTL_GET_AVTIMER_TICK _IOR(MAJOR_NUM, 0, uint64_t)
-
-#endif
diff --git a/sdm710/kernel-headers/linux/ion.h b/sdm710/kernel-headers/linux/ion.h
deleted file mode 100644
index 36c46561..00000000
--- a/sdm710/kernel-headers/linux/ion.h
+++ /dev/null
@@ -1,67 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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>
-typedef int ion_user_handle_t;
-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,
- 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)
-#define ION_FLAG_CACHED 1
-#define ION_FLAG_CACHED_NEEDS_SYNC 2
-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 {
- ion_user_handle_t handle;
- int fd;
-};
-struct ion_handle_data {
- ion_user_handle_t handle;
-};
-struct ion_custom_data {
- unsigned int cmd;
- unsigned long arg;
-};
-#define ION_IOC_MAGIC 'I'
-#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)
-#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
-
diff --git a/sdm710/kernel-headers/linux/ipa_qmi_service_v01.h b/sdm710/kernel-headers/linux/ipa_qmi_service_v01.h
deleted file mode 100644
index c2592317..00000000
--- a/sdm710/kernel-headers/linux/ipa_qmi_service_v01.h
+++ /dev/null
@@ -1,610 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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 IPA_QMI_SERVICE_V01_H
-#define IPA_QMI_SERVICE_V01_H
-#define QMI_IPA_IPFLTR_NUM_IHL_RANGE_16_EQNS_V01 2
-#define QMI_IPA_IPFLTR_NUM_MEQ_32_EQNS_V01 2
-#define QMI_IPA_IPFLTR_NUM_IHL_MEQ_32_EQNS_V01 2
-#define QMI_IPA_IPFLTR_NUM_MEQ_128_EQNS_V01 2
-#define QMI_IPA_MAX_FILTERS_V01 64
-#define QMI_IPA_MAX_FILTERS_EX_V01 128
-#define QMI_IPA_MAX_PIPES_V01 20
-#define QMI_IPA_MAX_APN_V01 8
-#define QMI_IPA_MAX_PER_CLIENTS_V01 64
-#define QMI_IPA_MAX_CLIENT_DST_PIPES_V01 8
-#define QMI_IPA_MAX_UL_FIREWALL_RULES_V01 64
-#define IPA_QMI_SUPPORTS_STATS
-#define IPA_INT_MAX ((int) (~0U >> 1))
-#define IPA_INT_MIN (- IPA_INT_MAX - 1)
-enum ipa_qmi_result_type_v01 {
- IPA_QMI_RESULT_TYPE_MIN_ENUM_VAL_V01 = IPA_INT_MIN,
- IPA_QMI_RESULT_SUCCESS_V01 = 0,
- IPA_QMI_RESULT_FAILURE_V01 = 1,
- IPA_QMI_RESULT_TYPE_MAX_ENUM_VAL_V01 = IPA_INT_MAX,
-};
-enum ipa_qmi_error_type_v01 {
- IPA_QMI_ERROR_TYPE_MIN_ENUM_VAL_V01 = IPA_INT_MIN,
- IPA_QMI_ERR_NONE_V01 = 0x0000,
- IPA_QMI_ERR_MALFORMED_MSG_V01 = 0x0001,
- IPA_QMI_ERR_NO_MEMORY_V01 = 0x0002,
- IPA_QMI_ERR_INTERNAL_V01 = 0x0003,
- IPA_QMI_ERR_CLIENT_IDS_EXHAUSTED_V01 = 0x0005,
- IPA_QMI_ERR_INVALID_ID_V01 = 0x0029,
- IPA_QMI_ERR_ENCODING_V01 = 0x003A,
- IPA_QMI_ERR_INCOMPATIBLE_STATE_V01 = 0x005A,
- IPA_QMI_ERR_NOT_SUPPORTED_V01 = 0x005E,
- IPA_QMI_ERROR_TYPE_MAX_ENUM_VAL_V01 = IPA_INT_MAX,
-};
-struct ipa_qmi_response_type_v01 {
- enum ipa_qmi_result_type_v01 result;
- enum ipa_qmi_error_type_v01 error;
-};
-enum ipa_platform_type_enum_v01 {
- IPA_PLATFORM_TYPE_ENUM_MIN_ENUM_VAL_V01 = - 2147483647,
- QMI_IPA_PLATFORM_TYPE_INVALID_V01 = 0,
- QMI_IPA_PLATFORM_TYPE_TN_V01 = 1,
- QMI_IPA_PLATFORM_TYPE_LE_V01 = 2,
- QMI_IPA_PLATFORM_TYPE_MSM_ANDROID_V01 = 3,
- QMI_IPA_PLATFORM_TYPE_MSM_WINDOWS_V01 = 4,
- QMI_IPA_PLATFORM_TYPE_MSM_QNX_V01 = 5,
- IPA_PLATFORM_TYPE_ENUM_MAX_ENUM_VAL_V01 = 2147483647
-};
-struct ipa_hdr_tbl_info_type_v01 {
- uint32_t modem_offset_start;
- uint32_t modem_offset_end;
-};
-struct ipa_route_tbl_info_type_v01 {
- uint32_t route_tbl_start_addr;
- uint32_t num_indices;
-};
-struct ipa_modem_mem_info_type_v01 {
- uint32_t block_start_addr;
- uint32_t size;
-};
-struct ipa_hdr_proc_ctx_tbl_info_type_v01 {
- uint32_t modem_offset_start;
- uint32_t modem_offset_end;
-};
-struct ipa_zip_tbl_info_type_v01 {
- uint32_t modem_offset_start;
- uint32_t modem_offset_end;
-};
-struct ipa_init_modem_driver_req_msg_v01 {
- uint8_t platform_type_valid;
- enum ipa_platform_type_enum_v01 platform_type;
- uint8_t hdr_tbl_info_valid;
- struct ipa_hdr_tbl_info_type_v01 hdr_tbl_info;
- uint8_t v4_route_tbl_info_valid;
- struct ipa_route_tbl_info_type_v01 v4_route_tbl_info;
- uint8_t v6_route_tbl_info_valid;
- struct ipa_route_tbl_info_type_v01 v6_route_tbl_info;
- uint8_t v4_filter_tbl_start_addr_valid;
- uint32_t v4_filter_tbl_start_addr;
- uint8_t v6_filter_tbl_start_addr_valid;
- uint32_t v6_filter_tbl_start_addr;
- uint8_t modem_mem_info_valid;
- struct ipa_modem_mem_info_type_v01 modem_mem_info;
- uint8_t ctrl_comm_dest_end_pt_valid;
- uint32_t ctrl_comm_dest_end_pt;
- uint8_t is_ssr_bootup_valid;
- uint8_t is_ssr_bootup;
- uint8_t hdr_proc_ctx_tbl_info_valid;
- struct ipa_hdr_proc_ctx_tbl_info_type_v01 hdr_proc_ctx_tbl_info;
- uint8_t zip_tbl_info_valid;
- struct ipa_zip_tbl_info_type_v01 zip_tbl_info;
- uint8_t v4_hash_route_tbl_info_valid;
- struct ipa_route_tbl_info_type_v01 v4_hash_route_tbl_info;
- uint8_t v6_hash_route_tbl_info_valid;
- struct ipa_route_tbl_info_type_v01 v6_hash_route_tbl_info;
- uint8_t v4_hash_filter_tbl_start_addr_valid;
- uint32_t v4_hash_filter_tbl_start_addr;
- uint8_t v6_hash_filter_tbl_start_addr_valid;
- uint32_t v6_hash_filter_tbl_start_addr;
- uint8_t hw_stats_quota_base_addr_valid;
- uint32_t hw_stats_quota_base_addr;
- uint8_t hw_stats_quota_size_valid;
- uint32_t hw_stats_quota_size;
- uint8_t hw_drop_stats_base_addr_valid;
- uint32_t hw_drop_stats_base_addr;
- uint8_t hw_drop_stats_table_size_valid;
- uint32_t hw_drop_stats_table_size;
-};
-struct ipa_init_modem_driver_resp_msg_v01 {
- struct ipa_qmi_response_type_v01 resp;
- uint8_t ctrl_comm_dest_end_pt_valid;
- uint32_t ctrl_comm_dest_end_pt;
- uint8_t default_end_pt_valid;
- uint32_t default_end_pt;
- uint8_t modem_driver_init_pending_valid;
- uint8_t modem_driver_init_pending;
-};
-struct ipa_init_modem_driver_cmplt_req_msg_v01 {
- uint8_t status;
-};
-struct ipa_init_modem_driver_cmplt_resp_msg_v01 {
- struct ipa_qmi_response_type_v01 resp;
-};
-struct ipa_indication_reg_req_msg_v01 {
- uint8_t master_driver_init_complete_valid;
- uint8_t master_driver_init_complete;
- uint8_t data_usage_quota_reached_valid;
- uint8_t data_usage_quota_reached;
-};
-struct ipa_indication_reg_resp_msg_v01 {
- struct ipa_qmi_response_type_v01 resp;
-};
-struct ipa_master_driver_init_complt_ind_msg_v01 {
- struct ipa_qmi_response_type_v01 master_driver_init_status;
-};
-struct ipa_ipfltr_range_eq_16_type_v01 {
- uint8_t offset;
- uint16_t range_low;
- uint16_t range_high;
-};
-struct ipa_ipfltr_mask_eq_32_type_v01 {
- uint8_t offset;
- uint32_t mask;
- uint32_t value;
-};
-struct ipa_ipfltr_eq_16_type_v01 {
- uint8_t offset;
- uint16_t value;
-};
-struct ipa_ipfltr_eq_32_type_v01 {
- uint8_t offset;
- uint32_t value;
-};
-struct ipa_ipfltr_mask_eq_128_type_v01 {
- uint8_t offset;
- uint8_t mask[16];
- uint8_t value[16];
-};
-struct ipa_filter_rule_type_v01 {
- uint16_t rule_eq_bitmap;
- uint8_t tos_eq_present;
- uint8_t tos_eq;
- uint8_t protocol_eq_present;
- uint8_t protocol_eq;
- uint8_t num_ihl_offset_range_16;
- struct ipa_ipfltr_range_eq_16_type_v01 ihl_offset_range_16[QMI_IPA_IPFLTR_NUM_IHL_RANGE_16_EQNS_V01];
- uint8_t num_offset_meq_32;
- struct ipa_ipfltr_mask_eq_32_type_v01 offset_meq_32[QMI_IPA_IPFLTR_NUM_MEQ_32_EQNS_V01];
- uint8_t tc_eq_present;
- uint8_t tc_eq;
- uint8_t flow_eq_present;
- uint32_t flow_eq;
- uint8_t ihl_offset_eq_16_present;
- struct ipa_ipfltr_eq_16_type_v01 ihl_offset_eq_16;
- uint8_t ihl_offset_eq_32_present;
- struct ipa_ipfltr_eq_32_type_v01 ihl_offset_eq_32;
- uint8_t num_ihl_offset_meq_32;
- struct ipa_ipfltr_mask_eq_32_type_v01 ihl_offset_meq_32[QMI_IPA_IPFLTR_NUM_IHL_MEQ_32_EQNS_V01];
- uint8_t num_offset_meq_128;
- struct ipa_ipfltr_mask_eq_128_type_v01 offset_meq_128[QMI_IPA_IPFLTR_NUM_MEQ_128_EQNS_V01];
- uint8_t metadata_meq32_present;
- struct ipa_ipfltr_mask_eq_32_type_v01 metadata_meq32;
- uint8_t ipv4_frag_eq_present;
-};
-enum ipa_ip_type_enum_v01 {
- IPA_IP_TYPE_ENUM_MIN_ENUM_VAL_V01 = - 2147483647,
- QMI_IPA_IP_TYPE_INVALID_V01 = 0,
- QMI_IPA_IP_TYPE_V4_V01 = 1,
- QMI_IPA_IP_TYPE_V6_V01 = 2,
- QMI_IPA_IP_TYPE_V4V6_V01 = 3,
- IPA_IP_TYPE_ENUM_MAX_ENUM_VAL_V01 = 2147483647
-};
-enum ipa_filter_action_enum_v01 {
- IPA_FILTER_ACTION_ENUM_MIN_ENUM_VAL_V01 = - 2147483647,
- QMI_IPA_FILTER_ACTION_INVALID_V01 = 0,
- QMI_IPA_FILTER_ACTION_SRC_NAT_V01 = 1,
- QMI_IPA_FILTER_ACTION_DST_NAT_V01 = 2,
- QMI_IPA_FILTER_ACTION_ROUTING_V01 = 3,
- QMI_IPA_FILTER_ACTION_EXCEPTION_V01 = 4,
- IPA_FILTER_ACTION_ENUM_MAX_ENUM_VAL_V01 = 2147483647
-};
-struct ipa_filter_spec_type_v01 {
- uint32_t filter_spec_identifier;
- enum ipa_ip_type_enum_v01 ip_type;
- struct ipa_filter_rule_type_v01 filter_rule;
- enum ipa_filter_action_enum_v01 filter_action;
- uint8_t is_routing_table_index_valid;
- uint32_t route_table_index;
- uint8_t is_mux_id_valid;
- uint32_t mux_id;
-};
-struct ipa_filter_spec_ex_type_v01 {
- enum ipa_ip_type_enum_v01 ip_type;
- struct ipa_filter_rule_type_v01 filter_rule;
- enum ipa_filter_action_enum_v01 filter_action;
- uint8_t is_routing_table_index_valid;
- uint32_t route_table_index;
- uint8_t is_mux_id_valid;
- uint32_t mux_id;
- uint32_t rule_id;
- uint8_t is_rule_hashable;
-};
-struct ipa_install_fltr_rule_req_msg_v01 {
- uint8_t filter_spec_list_valid;
- uint32_t filter_spec_list_len;
- struct ipa_filter_spec_type_v01 filter_spec_list[QMI_IPA_MAX_FILTERS_V01];
- uint8_t source_pipe_index_valid;
- uint32_t source_pipe_index;
- uint8_t num_ipv4_filters_valid;
- uint32_t num_ipv4_filters;
- uint8_t num_ipv6_filters_valid;
- uint32_t num_ipv6_filters;
- uint8_t xlat_filter_indices_list_valid;
- uint32_t xlat_filter_indices_list_len;
- uint32_t xlat_filter_indices_list[QMI_IPA_MAX_FILTERS_V01];
- uint8_t filter_spec_ex_list_valid;
- uint32_t filter_spec_ex_list_len;
- struct ipa_filter_spec_ex_type_v01 filter_spec_ex_list[QMI_IPA_MAX_FILTERS_V01];
-};
-struct ipa_filter_rule_identifier_to_handle_map_v01 {
- uint32_t filter_spec_identifier;
- uint32_t filter_handle;
-};
-struct ipa_install_fltr_rule_resp_msg_v01 {
- struct ipa_qmi_response_type_v01 resp;
- uint8_t filter_handle_list_valid;
- uint32_t filter_handle_list_len;
- struct ipa_filter_rule_identifier_to_handle_map_v01 filter_handle_list[QMI_IPA_MAX_FILTERS_V01];
- uint8_t rule_id_valid;
- uint32_t rule_id_len;
- uint32_t rule_id[QMI_IPA_MAX_FILTERS_V01];
-};
-struct ipa_filter_handle_to_index_map_v01 {
- uint32_t filter_handle;
- uint32_t filter_index;
-};
-struct ipa_fltr_installed_notif_req_msg_v01 {
- uint32_t source_pipe_index;
- enum ipa_qmi_result_type_v01 install_status;
- uint32_t filter_index_list_len;
- struct ipa_filter_handle_to_index_map_v01 filter_index_list[QMI_IPA_MAX_FILTERS_V01];
- uint8_t embedded_pipe_index_valid;
- uint32_t embedded_pipe_index;
- uint8_t retain_header_valid;
- uint8_t retain_header;
- uint8_t embedded_call_mux_id_valid;
- uint32_t embedded_call_mux_id;
- uint8_t num_ipv4_filters_valid;
- uint32_t num_ipv4_filters;
- uint8_t num_ipv6_filters_valid;
- uint32_t num_ipv6_filters;
- uint8_t start_ipv4_filter_idx_valid;
- uint32_t start_ipv4_filter_idx;
- uint8_t start_ipv6_filter_idx_valid;
- uint32_t start_ipv6_filter_idx;
- uint8_t rule_id_valid;
- uint32_t rule_id_len;
- uint32_t rule_id[QMI_IPA_MAX_FILTERS_V01];
- uint8_t dst_pipe_id_valid;
- uint32_t dst_pipe_id_len;
- uint32_t dst_pipe_id[QMI_IPA_MAX_CLIENT_DST_PIPES_V01];
-};
-struct ipa_fltr_installed_notif_resp_msg_v01 {
- struct ipa_qmi_response_type_v01 resp;
-};
-struct ipa_enable_force_clear_datapath_req_msg_v01 {
- uint32_t source_pipe_bitmask;
- uint32_t request_id;
- uint8_t throttle_source_valid;
- uint8_t throttle_source;
-};
-struct ipa_enable_force_clear_datapath_resp_msg_v01 {
- struct ipa_qmi_response_type_v01 resp;
-};
-struct ipa_disable_force_clear_datapath_req_msg_v01 {
- uint32_t request_id;
-};
-struct ipa_disable_force_clear_datapath_resp_msg_v01 {
- struct ipa_qmi_response_type_v01 resp;
-};
-enum ipa_peripheral_speed_enum_v01 {
- IPA_PERIPHERAL_SPEED_ENUM_MIN_ENUM_VAL_V01 = - 2147483647,
- QMI_IPA_PER_USB_FS_V01 = 1,
- QMI_IPA_PER_USB_HS_V01 = 2,
- QMI_IPA_PER_USB_SS_V01 = 3,
- QMI_IPA_PER_WLAN_V01 = 4,
- IPA_PERIPHERAL_SPEED_ENUM_MAX_ENUM_VAL_V01 = 2147483647
-};
-enum ipa_pipe_mode_enum_v01 {
- IPA_PIPE_MODE_ENUM_MIN_ENUM_VAL_V01 = - 2147483647,
- QMI_IPA_PIPE_MODE_HW_V01 = 1,
- QMI_IPA_PIPE_MODE_SW_V01 = 2,
- IPA_PIPE_MODE_ENUM_MAX_ENUM_VAL_V01 = 2147483647
-};
-enum ipa_peripheral_type_enum_v01 {
- IPA_PERIPHERAL_TYPE_ENUM_MIN_ENUM_VAL_V01 = - 2147483647,
- QMI_IPA_PERIPHERAL_USB_V01 = 1,
- QMI_IPA_PERIPHERAL_HSIC_V01 = 2,
- QMI_IPA_PERIPHERAL_PCIE_V01 = 3,
- IPA_PERIPHERAL_TYPE_ENUM_MAX_ENUM_VAL_V01 = 2147483647
-};
-struct ipa_config_req_msg_v01 {
- uint8_t peripheral_type_valid;
- enum ipa_peripheral_type_enum_v01 peripheral_type;
- uint8_t hw_deaggr_supported_valid;
- uint8_t hw_deaggr_supported;
- uint8_t max_aggr_frame_size_valid;
- uint32_t max_aggr_frame_size;
- uint8_t ipa_ingress_pipe_mode_valid;
- enum ipa_pipe_mode_enum_v01 ipa_ingress_pipe_mode;
- uint8_t peripheral_speed_info_valid;
- enum ipa_peripheral_speed_enum_v01 peripheral_speed_info;
- uint8_t dl_accumulation_time_limit_valid;
- uint32_t dl_accumulation_time_limit;
- uint8_t dl_accumulation_pkt_limit_valid;
- uint32_t dl_accumulation_pkt_limit;
- uint8_t dl_accumulation_byte_limit_valid;
- uint32_t dl_accumulation_byte_limit;
- uint8_t ul_accumulation_time_limit_valid;
- uint32_t ul_accumulation_time_limit;
- uint8_t hw_control_flags_valid;
- uint32_t hw_control_flags;
- uint8_t ul_msi_event_threshold_valid;
- uint32_t ul_msi_event_threshold;
- uint8_t dl_msi_event_threshold_valid;
- uint32_t dl_msi_event_threshold;
- uint8_t ul_fifo_size_valid;
- uint32_t ul_fifo_size;
- uint8_t dl_fifo_size_valid;
- uint32_t dl_fifo_size;
- uint8_t dl_buf_size_valid;
- uint32_t dl_buf_size;
-};
-struct ipa_config_resp_msg_v01 {
- struct ipa_qmi_response_type_v01 resp;
-};
-enum ipa_stats_type_enum_v01 {
- IPA_STATS_TYPE_ENUM_MIN_ENUM_VAL_V01 = - 2147483647,
- QMI_IPA_STATS_TYPE_INVALID_V01 = 0,
- QMI_IPA_STATS_TYPE_PIPE_V01 = 1,
- QMI_IPA_STATS_TYPE_FILTER_RULES_V01 = 2,
- IPA_STATS_TYPE_ENUM_MAX_ENUM_VAL_V01 = 2147483647
-};
-struct ipa_pipe_stats_info_type_v01 {
- uint32_t pipe_index;
- uint64_t num_ipv4_packets;
- uint64_t num_ipv4_bytes;
- uint64_t num_ipv6_packets;
- uint64_t num_ipv6_bytes;
-};
-struct ipa_stats_type_filter_rule_v01 {
- uint32_t filter_rule_index;
- uint64_t num_packets;
-};
-struct ipa_get_data_stats_req_msg_v01 {
- enum ipa_stats_type_enum_v01 ipa_stats_type;
- uint8_t reset_stats_valid;
- uint8_t reset_stats;
-};
-struct ipa_get_data_stats_resp_msg_v01 {
- struct ipa_qmi_response_type_v01 resp;
- uint8_t ipa_stats_type_valid;
- enum ipa_stats_type_enum_v01 ipa_stats_type;
- uint8_t ul_src_pipe_stats_list_valid;
- uint32_t ul_src_pipe_stats_list_len;
- struct ipa_pipe_stats_info_type_v01 ul_src_pipe_stats_list[QMI_IPA_MAX_PIPES_V01];
- uint8_t dl_dst_pipe_stats_list_valid;
- uint32_t dl_dst_pipe_stats_list_len;
- struct ipa_pipe_stats_info_type_v01 dl_dst_pipe_stats_list[QMI_IPA_MAX_PIPES_V01];
- uint8_t dl_filter_rule_stats_list_valid;
- uint32_t dl_filter_rule_stats_list_len;
- struct ipa_stats_type_filter_rule_v01 dl_filter_rule_stats_list[QMI_IPA_MAX_FILTERS_V01];
-};
-struct ipa_apn_data_stats_info_type_v01 {
- uint32_t mux_id;
- uint64_t num_ul_packets;
- uint64_t num_ul_bytes;
- uint64_t num_dl_packets;
- uint64_t num_dl_bytes;
-};
-struct ipa_get_apn_data_stats_req_msg_v01 {
- uint8_t mux_id_list_valid;
- uint32_t mux_id_list_len;
- uint32_t mux_id_list[QMI_IPA_MAX_APN_V01];
-};
-struct ipa_get_apn_data_stats_resp_msg_v01 {
- struct ipa_qmi_response_type_v01 resp;
- uint8_t apn_data_stats_list_valid;
- uint32_t apn_data_stats_list_len;
- struct ipa_apn_data_stats_info_type_v01 apn_data_stats_list[QMI_IPA_MAX_APN_V01];
-};
-struct ipa_data_usage_quota_info_type_v01 {
- uint32_t mux_id;
- uint64_t num_Mbytes;
-};
-struct ipa_set_data_usage_quota_req_msg_v01 {
- uint8_t apn_quota_list_valid;
- uint32_t apn_quota_list_len;
- struct ipa_data_usage_quota_info_type_v01 apn_quota_list[QMI_IPA_MAX_APN_V01];
-};
-struct ipa_set_data_usage_quota_resp_msg_v01 {
- struct ipa_qmi_response_type_v01 resp;
-};
-struct ipa_data_usage_quota_reached_ind_msg_v01 {
- struct ipa_data_usage_quota_info_type_v01 apn;
-};
-struct ipa_stop_data_usage_quota_req_msg_v01 {
- char __placeholder;
-};
-struct ipa_stop_data_usage_quota_resp_msg_v01 {
- struct ipa_qmi_response_type_v01 resp;
-};
-struct ipa_install_fltr_rule_req_ex_msg_v01 {
- uint8_t filter_spec_ex_list_valid;
- uint32_t filter_spec_ex_list_len;
- struct ipa_filter_spec_ex_type_v01 filter_spec_ex_list[QMI_IPA_MAX_FILTERS_EX_V01];
- uint8_t source_pipe_index_valid;
- uint32_t source_pipe_index;
- uint8_t num_ipv4_filters_valid;
- uint32_t num_ipv4_filters;
- uint8_t num_ipv6_filters_valid;
- uint32_t num_ipv6_filters;
- uint8_t xlat_filter_indices_list_valid;
- uint32_t xlat_filter_indices_list_len;
- uint32_t xlat_filter_indices_list[QMI_IPA_MAX_FILTERS_EX_V01];
-};
-struct ipa_install_fltr_rule_resp_ex_msg_v01 {
- struct ipa_qmi_response_type_v01 resp;
- uint8_t rule_id_valid;
- uint32_t rule_id_len;
- uint32_t rule_id[QMI_IPA_MAX_FILTERS_EX_V01];
-};
-struct ipa_enable_per_client_stats_req_msg_v01 {
- uint8_t enable_per_client_stats;
-};
-struct ipa_enable_per_client_stats_resp_msg_v01 {
- struct ipa_qmi_response_type_v01 resp;
-};
-struct ipa_per_client_stats_info_type_v01 {
- uint32_t client_id;
- uint32_t src_pipe_id;
- uint64_t num_ul_ipv4_bytes;
- uint64_t num_ul_ipv6_bytes;
- uint64_t num_dl_ipv4_bytes;
- uint64_t num_dl_ipv6_bytes;
- uint32_t num_ul_ipv4_pkts;
- uint32_t num_ul_ipv6_pkts;
- uint32_t num_dl_ipv4_pkts;
- uint32_t num_dl_ipv6_pkts;
-};
-struct ipa_get_stats_per_client_req_msg_v01 {
- uint32_t client_id;
- uint32_t src_pipe_id;
- uint8_t reset_stats_valid;
- uint8_t reset_stats;
-};
-struct ipa_get_stats_per_client_resp_msg_v01 {
- struct ipa_qmi_response_type_v01 resp;
- uint8_t per_client_stats_list_valid;
- uint32_t per_client_stats_list_len;
- struct ipa_per_client_stats_info_type_v01 per_client_stats_list[QMI_IPA_MAX_PER_CLIENTS_V01];
-};
-struct ipa_ul_firewall_rule_type_v01 {
- enum ipa_ip_type_enum_v01 ip_type;
- struct ipa_filter_rule_type_v01 filter_rule;
-};
-struct ipa_configure_ul_firewall_rules_req_msg_v01 {
- uint32_t firewall_rules_list_len;
- struct ipa_ul_firewall_rule_type_v01 firewall_rules_list[QMI_IPA_MAX_UL_FIREWALL_RULES_V01];
- uint32_t mux_id;
- uint8_t disable_valid;
- uint8_t disable;
- uint8_t are_blacklist_filters_valid;
- uint8_t are_blacklist_filters;
-};
-struct ipa_configure_ul_firewall_rules_resp_msg_v01 {
- struct ipa_qmi_response_type_v01 resp;
-};
-enum ipa_ul_firewall_status_enum_v01 {
- IPA_UL_FIREWALL_STATUS_ENUM_MIN_ENUM_VAL_V01 = - 2147483647,
- QMI_IPA_UL_FIREWALL_STATUS_SUCCESS_V01 = 0,
- QMI_IPA_UL_FIREWALL_STATUS_FAILURE_V01 = 1,
- IPA_UL_FIREWALL_STATUS_ENUM_MAX_ENUM_VAL_V01 = 2147483647
-};
-struct ipa_ul_firewall_config_result_type_v01 {
- enum ipa_ul_firewall_status_enum_v01 is_success;
- uint32_t mux_id;
-};
-struct ipa_configure_ul_firewall_rules_ind_msg_v01 {
- struct ipa_ul_firewall_config_result_type_v01 result;
-};
-#define QMI_IPA_INDICATION_REGISTER_REQ_V01 0x0020
-#define QMI_IPA_INDICATION_REGISTER_RESP_V01 0x0020
-#define QMI_IPA_INIT_MODEM_DRIVER_REQ_V01 0x0021
-#define QMI_IPA_INIT_MODEM_DRIVER_RESP_V01 0x0021
-#define QMI_IPA_MASTER_DRIVER_INIT_COMPLETE_IND_V01 0x0022
-#define QMI_IPA_INSTALL_FILTER_RULE_REQ_V01 0x0023
-#define QMI_IPA_INSTALL_FILTER_RULE_RESP_V01 0x0023
-#define QMI_IPA_FILTER_INSTALLED_NOTIF_REQ_V01 0x0024
-#define QMI_IPA_FILTER_INSTALLED_NOTIF_RESP_V01 0x0024
-#define QMI_IPA_ENABLE_FORCE_CLEAR_DATAPATH_REQ_V01 0x0025
-#define QMI_IPA_ENABLE_FORCE_CLEAR_DATAPATH_RESP_V01 0x0025
-#define QMI_IPA_DISABLE_FORCE_CLEAR_DATAPATH_REQ_V01 0x0026
-#define QMI_IPA_DISABLE_FORCE_CLEAR_DATAPATH_RESP_V01 0x0026
-#define QMI_IPA_CONFIG_REQ_V01 0x0027
-#define QMI_IPA_CONFIG_RESP_V01 0x0027
-#define QMI_IPA_DISABLE_LINK_LOW_PWR_STATE_REQ_V01 0x0028
-#define QMI_IPA_DISABLE_LINK_LOW_PWR_STATE_RESP_V01 0x0028
-#define QMI_IPA_ENABLE_LINK_LOW_PWR_STATE_REQ_V01 0x0029
-#define QMI_IPA_ENABLE_LINK_LOW_PWR_STATE_RESP_V01 0x0029
-#define QMI_IPA_GET_DATA_STATS_REQ_V01 0x0030
-#define QMI_IPA_GET_DATA_STATS_RESP_V01 0x0030
-#define QMI_IPA_GET_APN_DATA_STATS_REQ_V01 0x0031
-#define QMI_IPA_GET_APN_DATA_STATS_RESP_V01 0x0031
-#define QMI_IPA_SET_DATA_USAGE_QUOTA_REQ_V01 0x0032
-#define QMI_IPA_SET_DATA_USAGE_QUOTA_RESP_V01 0x0032
-#define QMI_IPA_DATA_USAGE_QUOTA_REACHED_IND_V01 0x0033
-#define QMI_IPA_STOP_DATA_USAGE_QUOTA_REQ_V01 0x0034
-#define QMI_IPA_STOP_DATA_USAGE_QUOTA_RESP_V01 0x0034
-#define QMI_IPA_INIT_MODEM_DRIVER_CMPLT_REQ_V01 0x0035
-#define QMI_IPA_INIT_MODEM_DRIVER_CMPLT_RESP_V01 0x0035
-#define QMI_IPA_INSTALL_FILTER_RULE_EX_REQ_V01 0x0037
-#define QMI_IPA_INSTALL_FILTER_RULE_EX_RESP_V01 0x0037
-#define QMI_IPA_ENABLE_PER_CLIENT_STATS_REQ_V01 0x0038
-#define QMI_IPA_ENABLE_PER_CLIENT_STATS_RESP_V01 0x0038
-#define QMI_IPA_GET_STATS_PER_CLIENT_REQ_V01 0x0039
-#define QMI_IPA_GET_STATS_PER_CLIENT_RESP_V01 0x0039
-#define QMI_IPA_INSTALL_UL_FIREWALL_RULES_REQ_V01 0x003A
-#define QMI_IPA_INSTALL_UL_FIREWALL_RULES_RESP_V01 0x003A
-#define QMI_IPA_INSTALL_UL_FIREWALL_RULES_IND_V01 0x003A
-#define QMI_IPA_INIT_MODEM_DRIVER_REQ_MAX_MSG_LEN_V01 162
-#define QMI_IPA_INIT_MODEM_DRIVER_RESP_MAX_MSG_LEN_V01 25
-#define QMI_IPA_INDICATION_REGISTER_REQ_MAX_MSG_LEN_V01 8
-#define QMI_IPA_INDICATION_REGISTER_RESP_MAX_MSG_LEN_V01 7
-#define QMI_IPA_INSTALL_FILTER_RULE_REQ_MAX_MSG_LEN_V01 22369
-#define QMI_IPA_INSTALL_FILTER_RULE_RESP_MAX_MSG_LEN_V01 783
-#define QMI_IPA_FILTER_INSTALLED_NOTIF_REQ_MAX_MSG_LEN_V01 870
-#define QMI_IPA_FILTER_INSTALLED_NOTIF_RESP_MAX_MSG_LEN_V01 7
-#define QMI_IPA_MASTER_DRIVER_INIT_COMPLETE_IND_MAX_MSG_LEN_V01 7
-#define QMI_IPA_DATA_USAGE_QUOTA_REACHED_IND_MAX_MSG_LEN_V01 15
-#define QMI_IPA_ENABLE_FORCE_CLEAR_DATAPATH_REQ_MAX_MSG_LEN_V01 18
-#define QMI_IPA_DISABLE_FORCE_CLEAR_DATAPATH_REQ_MAX_MSG_LEN_V01 7
-#define QMI_IPA_ENABLE_FORCE_CLEAR_DATAPATH_RESP_MAX_MSG_LEN_V01 7
-#define QMI_IPA_DISABLE_FORCE_CLEAR_DATAPATH_RESP_MAX_MSG_LEN_V01 7
-#define QMI_IPA_CONFIG_REQ_MAX_MSG_LEN_V01 102
-#define QMI_IPA_CONFIG_RESP_MAX_MSG_LEN_V01 7
-#define QMI_IPA_DISABLE_LINK_LOW_PWR_STATE_REQ_MAX_MSG_LEN_V01 18
-#define QMI_IPA_DISABLE_LINK_LOW_PWR_STATE_RESP_MAX_MSG_LEN_V01 7
-#define QMI_IPA_ENABLE_LINK_LOW_PWR_STATE_REQ_MAX_MSG_LEN_V01 7
-#define QMI_IPA_ENABLE_LINK_LOW_PWR_STATE_RESP_MAX_MSG_LEN_V01 7
-#define QMI_IPA_GET_DATA_STATS_REQ_MAX_MSG_LEN_V01 11
-#define QMI_IPA_GET_DATA_STATS_RESP_MAX_MSG_LEN_V01 2234
-#define QMI_IPA_GET_APN_DATA_STATS_REQ_MAX_MSG_LEN_V01 36
-#define QMI_IPA_GET_APN_DATA_STATS_RESP_MAX_MSG_LEN_V01 299
-#define QMI_IPA_SET_DATA_USAGE_QUOTA_REQ_MAX_MSG_LEN_V01 100
-#define QMI_IPA_SET_DATA_USAGE_QUOTA_RESP_MAX_MSG_LEN_V01 7
-#define QMI_IPA_STOP_DATA_USAGE_QUOTA_REQ_MAX_MSG_LEN_V01 0
-#define QMI_IPA_STOP_DATA_USAGE_QUOTA_RESP_MAX_MSG_LEN_V01 7
-#define QMI_IPA_INIT_MODEM_DRIVER_CMPLT_REQ_MAX_MSG_LEN_V01 4
-#define QMI_IPA_INIT_MODEM_DRIVER_CMPLT_RESP_MAX_MSG_LEN_V01 7
-#define QMI_IPA_INSTALL_FILTER_RULE_EX_REQ_MAX_MSG_LEN_V01 22685
-#define QMI_IPA_INSTALL_FILTER_RULE_EX_RESP_MAX_MSG_LEN_V01 523
-#define QMI_IPA_ENABLE_PER_CLIENT_STATS_REQ_MAX_MSG_LEN_V01 4
-#define QMI_IPA_ENABLE_PER_CLIENT_STATS_RESP_MAX_MSG_LEN_V01 7
-#define QMI_IPA_GET_STATS_PER_CLIENT_REQ_MAX_MSG_LEN_V01 18
-#define QMI_IPA_GET_STATS_PER_CLIENT_RESP_MAX_MSG_LEN_V01 3595
-#define QMI_IPA_INSTALL_UL_FIREWALL_RULES_REQ_MAX_MSG_LEN_V01 9875
-#define QMI_IPA_INSTALL_UL_FIREWALL_RULES_RESP_MAX_MSG_LEN_V01 7
-#define QMI_IPA_INSTALL_UL_FIREWALL_RULES_IND_MAX_MSG_LEN_V01 11
-#endif
-
diff --git a/sdm710/kernel-headers/linux/mdss_rotator.h b/sdm710/kernel-headers/linux/mdss_rotator.h
deleted file mode 100644
index e8c99ba2..00000000
--- a/sdm710/kernel-headers/linux/mdss_rotator.h
+++ /dev/null
@@ -1,73 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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'
-#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)
-#define MDP_ROTATION_NOP 0x01
-#define MDP_ROTATION_FLIP_LR 0x02
-#define MDP_ROTATION_FLIP_UD 0x04
-#define MDP_ROTATION_90 0x08
-#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
-#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
-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 {
- uint32_t flags;
- struct mdp_rect src_rect;
- struct mdp_rect dst_rect;
- struct mdp_layer_buffer input;
- struct mdp_layer_buffer output;
- uint32_t pipe_idx;
- uint32_t wb_idx;
- uint32_t session_id;
- uint32_t reserved[6];
-};
-struct mdp_rotation_request {
- uint32_t version;
- uint32_t flags;
- uint32_t count;
- struct mdp_rotation_item * list;
- uint32_t reserved[6];
-};
-#endif
-
diff --git a/sdm710/kernel-headers/linux/mfd/msm-adie-codec.h b/sdm710/kernel-headers/linux/mfd/msm-adie-codec.h
deleted file mode 100644
index 80cdc6cf..00000000
--- a/sdm710/kernel-headers/linux/mfd/msm-adie-codec.h
+++ /dev/null
@@ -1,80 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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
-#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
-#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
-#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;
-};
-struct adie_codec_dev_profile {
- u32 path_type;
- 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);
-};
-#endif
-
diff --git a/sdm710/kernel-headers/linux/mfd/wcd9xxx/wcd9320_registers.h b/sdm710/kernel-headers/linux/mfd/wcd9xxx/wcd9320_registers.h
deleted file mode 100644
index 50a6aa33..00000000
--- a/sdm710/kernel-headers/linux/mfd/wcd9xxx/wcd9320_registers.h
+++ /dev/null
@@ -1,1401 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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 WCD9320_REGISTERS_H
-#define WCD9320_REGISTERS_H
-#include <linux/mfd/wcd9xxx/wcd9xxx_registers.h>
-#define TAIKO_A_CHIP_CTL WCD9XXX_A_CHIP_CTL
-#define TAIKO_A_CHIP_CTL__POR WCD9XXX_A_CHIP_CTL__POR
-#define TAIKO_A_CHIP_STATUS WCD9XXX_A_CHIP_STATUS
-#define TAIKO_A_CHIP_STATUS__POR WCD9XXX_A_CHIP_STATUS__POR
-#define TAIKO_A_CHIP_ID_BYTE_0 WCD9XXX_A_CHIP_ID_BYTE_0
-#define TAIKO_A_CHIP_ID_BYTE_0__POR WCD9XXX_A_CHIP_ID_BYTE_0__POR
-#define TAIKO_A_CHIP_ID_BYTE_1 WCD9XXX_A_CHIP_ID_BYTE_1
-#define TAIKO_A_CHIP_ID_BYTE_1__POR WCD9XXX_A_CHIP_ID_BYTE_1__POR
-#define TAIKO_A_CHIP_ID_BYTE_2 WCD9XXX_A_CHIP_ID_BYTE_2
-#define TAIKO_A_CHIP_ID_BYTE_2__POR WCD9XXX_A_CHIP_ID_BYTE_2__POR
-#define TAIKO_A_CHIP_ID_BYTE_3 WCD9XXX_A_CHIP_ID_BYTE_3
-#define TAIKO_A_CHIP_ID_BYTE_3__POR WCD9XXX_A_CHIP_ID_BYTE_3__POR
-#define TAIKO_A_CHIP_VERSION WCD9XXX_A_CHIP_VERSION
-#define TAIKO_A_CHIP_VERSION__POR WCD9XXX_A_CHIP_VERSION__POR
-#define TAIKO_A_SB_VERSION WCD9XXX_A_SB_VERSION
-#define TAIKO_A_SB_VERSION__POR WCD9XXX_A_SB_VERSION__POR
-#define TAIKO_A_SLAVE_ID_1 WCD9XXX_A_SLAVE_ID_1
-#define TAIKO_A_SLAVE_ID_1__POR WCD9XXX_A_SLAVE_ID_1__POR
-#define TAIKO_A_SLAVE_ID_2 WCD9XXX_A_SLAVE_ID_2
-#define TAIKO_A_SLAVE_ID_2__POR WCD9XXX_A_SLAVE_ID_2__POR
-#define TAIKO_A_SLAVE_ID_3 WCD9XXX_A_SLAVE_ID_3
-#define TAIKO_A_SLAVE_ID_3__POR WCD9XXX_A_SLAVE_ID_3__POR
-#define TAIKO_A_PIN_CTL_OE0 (0x010)
-#define TAIKO_A_PIN_CTL_OE0__POR (0x00)
-#define TAIKO_A_PIN_CTL_OE1 (0x011)
-#define TAIKO_A_PIN_CTL_OE1__POR (0x00)
-#define TAIKO_A_PIN_CTL_DATA0 (0x012)
-#define TAIKO_A_PIN_CTL_DATA0__POR (0x00)
-#define TAIKO_A_PIN_CTL_DATA1 (0x013)
-#define TAIKO_A_PIN_CTL_DATA1__POR (0x00)
-#define TAIKO_A_HDRIVE_GENERIC (0x018)
-#define TAIKO_A_HDRIVE_GENERIC__POR (0x00)
-#define TAIKO_A_HDRIVE_OVERRIDE (0x019)
-#define TAIKO_A_HDRIVE_OVERRIDE__POR (0x08)
-#define TAIKO_A_ANA_CSR_WAIT_STATE (0x020)
-#define TAIKO_A_ANA_CSR_WAIT_STATE__POR (0x44)
-#define TAIKO_A_PROCESS_MONITOR_CTL0 (0x040)
-#define TAIKO_A_PROCESS_MONITOR_CTL0__POR (0x80)
-#define TAIKO_A_PROCESS_MONITOR_CTL1 (0x041)
-#define TAIKO_A_PROCESS_MONITOR_CTL1__POR (0x00)
-#define TAIKO_A_PROCESS_MONITOR_CTL2 (0x042)
-#define TAIKO_A_PROCESS_MONITOR_CTL2__POR (0x00)
-#define TAIKO_A_PROCESS_MONITOR_CTL3 (0x043)
-#define TAIKO_A_PROCESS_MONITOR_CTL3__POR (0x01)
-#define TAIKO_A_QFUSE_CTL (0x048)
-#define TAIKO_A_QFUSE_CTL__POR (0x00)
-#define TAIKO_A_QFUSE_STATUS (0x049)
-#define TAIKO_A_QFUSE_STATUS__POR (0x00)
-#define TAIKO_A_QFUSE_DATA_OUT0 (0x04A)
-#define TAIKO_A_QFUSE_DATA_OUT0__POR (0x00)
-#define TAIKO_A_QFUSE_DATA_OUT1 (0x04B)
-#define TAIKO_A_QFUSE_DATA_OUT1__POR (0x00)
-#define TAIKO_A_QFUSE_DATA_OUT2 (0x04C)
-#define TAIKO_A_QFUSE_DATA_OUT2__POR (0x00)
-#define TAIKO_A_QFUSE_DATA_OUT3 (0x04D)
-#define TAIKO_A_QFUSE_DATA_OUT3__POR (0x00)
-#define TAIKO_A_QFUSE_DATA_OUT4 (0x04E)
-#define TAIKO_A_QFUSE_DATA_OUT4__POR (0x00)
-#define TAIKO_A_QFUSE_DATA_OUT5 (0x04F)
-#define TAIKO_A_QFUSE_DATA_OUT5__POR (0x00)
-#define TAIKO_A_QFUSE_DATA_OUT6 (0x050)
-#define TAIKO_A_QFUSE_DATA_OUT6__POR (0x00)
-#define TAIKO_A_QFUSE_DATA_OUT7 (0x051)
-#define TAIKO_A_QFUSE_DATA_OUT7__POR (0x00)
-#define TAIKO_A_CDC_CTL WCD9XXX_A_CDC_CTL
-#define TAIKO_A_CDC_CTL__POR WCD9XXX_A_CDC_CTL__POR
-#define TAIKO_A_LEAKAGE_CTL WCD9XXX_A_LEAKAGE_CTL
-#define TAIKO_A_LEAKAGE_CTL__POR WCD9XXX_A_LEAKAGE_CTL__POR
-#define TAIKO_A_INTR_MODE (0x090)
-#define TAIKO_A_INTR_MODE__POR (0x00)
-#define TAIKO_A_INTR_MASK0 (0x094)
-#define TAIKO_A_INTR_MASK0__POR (0xFF)
-#define TAIKO_A_INTR_MASK1 (0x095)
-#define TAIKO_A_INTR_MASK1__POR (0xFF)
-#define TAIKO_A_INTR_MASK2 (0x096)
-#define TAIKO_A_INTR_MASK2__POR (0x3F)
-#define TAIKO_A_INTR_MASK3 (0x097)
-#define TAIKO_A_INTR_MASK3__POR (0x3F)
-#define TAIKO_A_INTR_STATUS0 (0x098)
-#define TAIKO_A_INTR_STATUS0__POR (0x00)
-#define TAIKO_A_INTR_STATUS1 (0x099)
-#define TAIKO_A_INTR_STATUS1__POR (0x00)
-#define TAIKO_A_INTR_STATUS2 (0x09A)
-#define TAIKO_A_INTR_STATUS2__POR (0x00)
-#define TAIKO_A_INTR_STATUS3 (0x09B)
-#define TAIKO_A_INTR_STATUS3__POR (0x00)
-#define TAIKO_A_INTR_CLEAR0 (0x09C)
-#define TAIKO_A_INTR_CLEAR0__POR (0x00)
-#define TAIKO_A_INTR_CLEAR1 (0x09D)
-#define TAIKO_A_INTR_CLEAR1__POR (0x00)
-#define TAIKO_A_INTR_CLEAR2 (0x09E)
-#define TAIKO_A_INTR_CLEAR2__POR (0x00)
-#define TAIKO_A_INTR_CLEAR3 (0x09F)
-#define TAIKO_A_INTR_CLEAR3__POR (0x00)
-#define TAIKO_A_INTR_LEVEL0 (0x0A0)
-#define TAIKO_A_INTR_LEVEL0__POR (0x01)
-#define TAIKO_A_INTR_LEVEL1 (0x0A1)
-#define TAIKO_A_INTR_LEVEL1__POR (0x00)
-#define TAIKO_A_INTR_LEVEL2 (0x0A2)
-#define TAIKO_A_INTR_LEVEL2__POR (0x00)
-#define TAIKO_A_INTR_LEVEL3 (0x0A3)
-#define TAIKO_A_INTR_LEVEL3__POR (0x00)
-#define TAIKO_A_INTR_TEST0 (0x0A4)
-#define TAIKO_A_INTR_TEST0__POR (0x00)
-#define TAIKO_A_INTR_TEST1 (0x0A5)
-#define TAIKO_A_INTR_TEST1__POR (0x00)
-#define TAIKO_A_INTR_TEST2 (0x0A6)
-#define TAIKO_A_INTR_TEST2__POR (0x00)
-#define TAIKO_A_INTR_TEST3 (0x0A7)
-#define TAIKO_A_INTR_TEST3__POR (0x00)
-#define TAIKO_A_INTR_SET0 (0x0A8)
-#define TAIKO_A_INTR_SET0__POR (0x00)
-#define TAIKO_A_INTR_SET1 (0x0A9)
-#define TAIKO_A_INTR_SET1__POR (0x00)
-#define TAIKO_A_INTR_SET2 (0x0AA)
-#define TAIKO_A_INTR_SET2__POR (0x00)
-#define TAIKO_A_INTR_SET3 (0x0AB)
-#define TAIKO_A_INTR_SET3__POR (0x00)
-#define TAIKO_A_INTR_DESTN0 (0x0AC)
-#define TAIKO_A_INTR_DESTN0__POR (0x00)
-#define TAIKO_A_INTR_DESTN1 (0x0AD)
-#define TAIKO_A_INTR_DESTN1__POR (0x00)
-#define TAIKO_A_INTR_DESTN2 (0x0AE)
-#define TAIKO_A_INTR_DESTN2__POR (0x00)
-#define TAIKO_A_INTR_DESTN3 (0x0AF)
-#define TAIKO_A_INTR_DESTN3__POR (0x00)
-#define TAIKO_A_CDC_TX_I2S_SCK_MODE (0x0C0)
-#define TAIKO_A_CDC_TX_I2S_SCK_MODE__POR (0x00)
-#define TAIKO_A_CDC_TX_I2S_WS_MODE (0x0C1)
-#define TAIKO_A_CDC_TX_I2S_WS_MODE__POR (0x00)
-#define TAIKO_A_CDC_DMIC_DATA0_MODE (0x0C4)
-#define TAIKO_A_CDC_DMIC_DATA0_MODE__POR (0x00)
-#define TAIKO_A_CDC_DMIC_CLK0_MODE (0x0C5)
-#define TAIKO_A_CDC_DMIC_CLK0_MODE__POR (0x00)
-#define TAIKO_A_CDC_DMIC_DATA1_MODE (0x0C6)
-#define TAIKO_A_CDC_DMIC_DATA1_MODE__POR (0x00)
-#define TAIKO_A_CDC_DMIC_CLK1_MODE (0x0C7)
-#define TAIKO_A_CDC_DMIC_CLK1_MODE__POR (0x00)
-#define TAIKO_A_CDC_RX_I2S_SCK_MODE (0x0C8)
-#define TAIKO_A_CDC_RX_I2S_SCK_MODE__POR (0x00)
-#define TAIKO_A_CDC_RX_I2S_WS_MODE (0x0C9)
-#define TAIKO_A_CDC_RX_I2S_WS_MODE__POR (0x00)
-#define TAIKO_A_CDC_DMIC_DATA2_MODE (0x0CA)
-#define TAIKO_A_CDC_DMIC_DATA2_MODE__POR (0x00)
-#define TAIKO_A_CDC_DMIC_CLK2_MODE (0x0CB)
-#define TAIKO_A_CDC_DMIC_CLK2_MODE__POR (0x00)
-#define TAIKO_A_CDC_INTR1_MODE (0x0CC)
-#define TAIKO_A_CDC_INTR1_MODE__POR (0x00)
-#define TAIKO_A_CDC_SB_NRZ_SEL_MODE (0x0CD)
-#define TAIKO_A_CDC_SB_NRZ_SEL_MODE__POR (0x00)
-#define TAIKO_A_CDC_INTR2_MODE (0x0CE)
-#define TAIKO_A_CDC_INTR2_MODE__POR (0x00)
-#define TAIKO_A_CDC_RF_PA_ON_MODE (0x0CF)
-#define TAIKO_A_CDC_RF_PA_ON_MODE__POR (0x00)
-#define TAIKO_A_BIAS_REF_CTL (0x100)
-#define TAIKO_A_BIAS_REF_CTL__POR (0x1C)
-#define TAIKO_A_BIAS_CENTRAL_BG_CTL (0x101)
-#define TAIKO_A_BIAS_CENTRAL_BG_CTL__POR (0x50)
-#define TAIKO_A_BIAS_PRECHRG_CTL (0x102)
-#define TAIKO_A_BIAS_PRECHRG_CTL__POR (0x07)
-#define TAIKO_A_BIAS_CURR_CTL_1 (0x103)
-#define TAIKO_A_BIAS_CURR_CTL_1__POR (0x52)
-#define TAIKO_A_BIAS_CURR_CTL_2 (0x104)
-#define TAIKO_A_BIAS_CURR_CTL_2__POR (0x00)
-#define TAIKO_A_BIAS_OSC_BG_CTL (0x105)
-#define TAIKO_A_BIAS_OSC_BG_CTL__POR (0x16)
-#define TAIKO_A_CLK_BUFF_EN1 (0x108)
-#define TAIKO_A_CLK_BUFF_EN1__POR (0x04)
-#define TAIKO_A_CLK_BUFF_EN2 (0x109)
-#define TAIKO_A_CLK_BUFF_EN2__POR (0x02)
-#define TAIKO_A_LDO_H_MODE_1 (0x110)
-#define TAIKO_A_LDO_H_MODE_1__POR (0x65)
-#define TAIKO_A_LDO_H_MODE_2 (0x111)
-#define TAIKO_A_LDO_H_MODE_2__POR (0xA8)
-#define TAIKO_A_LDO_H_LOOP_CTL (0x112)
-#define TAIKO_A_LDO_H_LOOP_CTL__POR (0x6B)
-#define TAIKO_A_LDO_H_COMP_1 (0x113)
-#define TAIKO_A_LDO_H_COMP_1__POR (0x84)
-#define TAIKO_A_LDO_H_COMP_2 (0x114)
-#define TAIKO_A_LDO_H_COMP_2__POR (0xE0)
-#define TAIKO_A_LDO_H_BIAS_1 (0x115)
-#define TAIKO_A_LDO_H_BIAS_1__POR (0x6D)
-#define TAIKO_A_LDO_H_BIAS_2 (0x116)
-#define TAIKO_A_LDO_H_BIAS_2__POR (0xA5)
-#define TAIKO_A_LDO_H_BIAS_3 (0x117)
-#define TAIKO_A_LDO_H_BIAS_3__POR (0x60)
-#define TAIKO_A_VBAT_CLK (0x118)
-#define TAIKO_A_VBAT_CLK__POR (0x03)
-#define TAIKO_A_VBAT_LOOP (0x119)
-#define TAIKO_A_VBAT_LOOP__POR (0x02)
-#define TAIKO_A_VBAT_REF (0x11A)
-#define TAIKO_A_VBAT_REF__POR (0x20)
-#define TAIKO_A_VBAT_ADC_TEST (0x11B)
-#define TAIKO_A_VBAT_ADC_TEST__POR (0x00)
-#define TAIKO_A_VBAT_FE (0x11C)
-#define TAIKO_A_VBAT_FE__POR (0x48)
-#define TAIKO_A_VBAT_BIAS_1 (0x11D)
-#define TAIKO_A_VBAT_BIAS_1__POR (0x03)
-#define TAIKO_A_VBAT_BIAS_2 (0x11E)
-#define TAIKO_A_VBAT_BIAS_2__POR (0x00)
-#define TAIKO_A_VBAT_ADC_DATA_MSB (0x11F)
-#define TAIKO_A_VBAT_ADC_DATA_MSB__POR (0x00)
-#define TAIKO_A_VBAT_ADC_DATA_LSB (0x120)
-#define TAIKO_A_VBAT_ADC_DATA_LSB__POR (0x00)
-#define TAIKO_A_MICB_CFILT_1_CTL (0x128)
-#define TAIKO_A_MICB_CFILT_1_CTL__POR (0x40)
-#define TAIKO_A_MICB_CFILT_1_VAL (0x129)
-#define TAIKO_A_MICB_CFILT_1_VAL__POR (0x80)
-#define TAIKO_A_MICB_CFILT_1_PRECHRG (0x12A)
-#define TAIKO_A_MICB_CFILT_1_PRECHRG__POR (0x38)
-#define TAIKO_A_MICB_1_CTL (0x12B)
-#define TAIKO_A_MICB_1_CTL__POR (0x16)
-#define TAIKO_A_MICB_1_INT_RBIAS (0x12C)
-#define TAIKO_A_MICB_1_INT_RBIAS__POR (0x24)
-#define TAIKO_A_MICB_1_MBHC (0x12D)
-#define TAIKO_A_MICB_1_MBHC__POR (0x01)
-#define TAIKO_A_MICB_CFILT_2_CTL (0x12E)
-#define TAIKO_A_MICB_CFILT_2_CTL__POR (0x40)
-#define TAIKO_A_MICB_CFILT_2_VAL (0x12F)
-#define TAIKO_A_MICB_CFILT_2_VAL__POR (0x80)
-#define TAIKO_A_MICB_CFILT_2_PRECHRG (0x130)
-#define TAIKO_A_MICB_CFILT_2_PRECHRG__POR (0x38)
-#define TAIKO_A_MICB_2_CTL (0x131)
-#define TAIKO_A_MICB_2_CTL__POR (0x16)
-#define TAIKO_A_MICB_2_INT_RBIAS (0x132)
-#define TAIKO_A_MICB_2_INT_RBIAS__POR (0x24)
-#define TAIKO_A_MICB_2_MBHC (0x133)
-#define TAIKO_A_MICB_2_MBHC__POR (0x02)
-#define TAIKO_A_MICB_CFILT_3_CTL (0x134)
-#define TAIKO_A_MICB_CFILT_3_CTL__POR (0x40)
-#define TAIKO_A_MICB_CFILT_3_VAL (0x135)
-#define TAIKO_A_MICB_CFILT_3_VAL__POR (0x80)
-#define TAIKO_A_MICB_CFILT_3_PRECHRG (0x136)
-#define TAIKO_A_MICB_CFILT_3_PRECHRG__POR (0x38)
-#define TAIKO_A_MICB_3_CTL (0x137)
-#define TAIKO_A_MICB_3_CTL__POR (0x16)
-#define TAIKO_A_MICB_3_INT_RBIAS (0x138)
-#define TAIKO_A_MICB_3_INT_RBIAS__POR (0x24)
-#define TAIKO_A_MICB_3_MBHC (0x139)
-#define TAIKO_A_MICB_3_MBHC__POR (0x00)
-#define TAIKO_A_MICB_4_CTL (0x13D)
-#define TAIKO_A_MICB_4_CTL__POR (0x16)
-#define TAIKO_A_MICB_4_INT_RBIAS (0x13E)
-#define TAIKO_A_MICB_4_INT_RBIAS__POR (0x24)
-#define TAIKO_A_MICB_4_MBHC (0x13F)
-#define TAIKO_A_MICB_4_MBHC__POR (0x01)
-#define TAIKO_A_MBHC_INSERT_DETECT (0x14A)
-#define TAIKO_A_MBHC_INSERT_DETECT__POR (0x00)
-#define TAIKO_A_MBHC_INSERT_DET_STATUS (0x14B)
-#define TAIKO_A_MBHC_INSERT_DET_STATUS__POR (0x00)
-#define TAIKO_A_TX_COM_BIAS (0x14C)
-#define TAIKO_A_TX_COM_BIAS__POR (0xF0)
-#define TAIKO_A_MBHC_SCALING_MUX_1 (0x14E)
-#define TAIKO_A_MBHC_SCALING_MUX_1__POR (0x00)
-#define TAIKO_A_MBHC_SCALING_MUX_2 (0x14F)
-#define TAIKO_A_MBHC_SCALING_MUX_2__POR (0x80)
-#define TAIKO_A_MAD_ANA_CTRL (0x150)
-#define TAIKO_A_MAD_ANA_CTRL__POR (0xF1)
-#define TAIKO_A_TX_SUP_SWITCH_CTRL_1 (0x151)
-#define TAIKO_A_TX_SUP_SWITCH_CTRL_1__POR (0x00)
-#define TAIKO_A_TX_SUP_SWITCH_CTRL_2 (0x152)
-#define TAIKO_A_TX_SUP_SWITCH_CTRL_2__POR (0x80)
-#define TAIKO_A_TX_1_2_EN (0x153)
-#define TAIKO_A_TX_1_2_EN__POR (0x00)
-#define TAIKO_A_TX_1_2_TEST_EN (0x154)
-#define TAIKO_A_TX_1_2_TEST_EN__POR (0xCC)
-#define TAIKO_A_TX_1_2_ADC_CH1 (0x155)
-#define TAIKO_A_TX_1_2_ADC_CH1__POR (0x44)
-#define TAIKO_A_TX_1_2_ADC_CH2 (0x156)
-#define TAIKO_A_TX_1_2_ADC_CH2__POR (0x44)
-#define TAIKO_A_TX_1_2_ATEST_REFCTRL (0x157)
-#define TAIKO_A_TX_1_2_ATEST_REFCTRL__POR (0x00)
-#define TAIKO_A_TX_1_2_TEST_CTL (0x158)
-#define TAIKO_A_TX_1_2_TEST_CTL__POR (0x38)
-#define TAIKO_A_TX_1_2_TEST_BLOCK_EN (0x159)
-#define TAIKO_A_TX_1_2_TEST_BLOCK_EN__POR (0xFC)
-#define TAIKO_A_TX_1_2_TXFE_CLKDIV (0x15A)
-#define TAIKO_A_TX_1_2_TXFE_CLKDIV__POR (0x55)
-#define TAIKO_A_TX_1_2_SAR_ERR_CH1 (0x15B)
-#define TAIKO_A_TX_1_2_SAR_ERR_CH1__POR (0x00)
-#define TAIKO_A_TX_1_2_SAR_ERR_CH2 (0x15C)
-#define TAIKO_A_TX_1_2_SAR_ERR_CH2__POR (0x00)
-#define TAIKO_A_TX_3_4_EN (0x15D)
-#define TAIKO_A_TX_3_4_EN__POR (0x00)
-#define TAIKO_A_TX_3_4_TEST_EN (0x15E)
-#define TAIKO_A_TX_3_4_TEST_EN__POR (0xCC)
-#define TAIKO_A_TX_3_4_ADC_CH3 (0x15F)
-#define TAIKO_A_TX_3_4_ADC_CH3__POR (0x44)
-#define TAIKO_A_TX_3_4_ADC_CH4 (0x160)
-#define TAIKO_A_TX_3_4_ADC_CH4__POR (0x44)
-#define TAIKO_A_TX_3_4_ATEST_REFCTRL (0x161)
-#define TAIKO_A_TX_3_4_ATEST_REFCTRL__POR (0x00)
-#define TAIKO_A_TX_3_4_TEST_CTL (0x162)
-#define TAIKO_A_TX_3_4_TEST_CTL__POR (0x38)
-#define TAIKO_A_TX_3_4_TEST_BLOCK_EN (0x163)
-#define TAIKO_A_TX_3_4_TEST_BLOCK_EN__POR (0xFC)
-#define TAIKO_A_TX_3_4_TXFE_CKDIV (0x164)
-#define TAIKO_A_TX_3_4_TXFE_CKDIV__POR (0x55)
-#define TAIKO_A_TX_3_4_SAR_ERR_CH3 (0x165)
-#define TAIKO_A_TX_3_4_SAR_ERR_CH3__POR (0x00)
-#define TAIKO_A_TX_3_4_SAR_ERR_CH4 (0x166)
-#define TAIKO_A_TX_3_4_SAR_ERR_CH4__POR (0x00)
-#define TAIKO_A_TX_5_6_EN (0x167)
-#define TAIKO_A_TX_5_6_EN__POR (0x11)
-#define TAIKO_A_TX_5_6_TEST_EN (0x168)
-#define TAIKO_A_TX_5_6_TEST_EN__POR (0xCC)
-#define TAIKO_A_TX_5_6_ADC_CH5 (0x169)
-#define TAIKO_A_TX_5_6_ADC_CH5__POR (0x44)
-#define TAIKO_A_TX_5_6_ADC_CH6 (0x16A)
-#define TAIKO_A_TX_5_6_ADC_CH6__POR (0x44)
-#define TAIKO_A_TX_5_6_ATEST_REFCTRL (0x16B)
-#define TAIKO_A_TX_5_6_ATEST_REFCTRL__POR (0x00)
-#define TAIKO_A_TX_5_6_TEST_CTL (0x16C)
-#define TAIKO_A_TX_5_6_TEST_CTL__POR (0x38)
-#define TAIKO_A_TX_5_6_TEST_BLOCK_EN (0x16D)
-#define TAIKO_A_TX_5_6_TEST_BLOCK_EN__POR (0xFC)
-#define TAIKO_A_TX_5_6_TXFE_CKDIV (0x16E)
-#define TAIKO_A_TX_5_6_TXFE_CKDIV__POR (0x55)
-#define TAIKO_A_TX_5_6_SAR_ERR_CH5 (0x16F)
-#define TAIKO_A_TX_5_6_SAR_ERR_CH5__POR (0x00)
-#define TAIKO_A_TX_5_6_SAR_ERR_CH6 (0x170)
-#define TAIKO_A_TX_5_6_SAR_ERR_CH6__POR (0x00)
-#define TAIKO_A_TX_7_MBHC_EN (0x171)
-#define TAIKO_A_TX_7_MBHC_EN__POR (0x0C)
-#define TAIKO_A_TX_7_MBHC_ATEST_REFCTRL (0x172)
-#define TAIKO_A_TX_7_MBHC_ATEST_REFCTRL__POR (0x00)
-#define TAIKO_A_TX_7_MBHC_ADC (0x173)
-#define TAIKO_A_TX_7_MBHC_ADC__POR (0x44)
-#define TAIKO_A_TX_7_MBHC_TEST_CTL (0x174)
-#define TAIKO_A_TX_7_MBHC_TEST_CTL__POR (0x38)
-#define TAIKO_A_TX_7_MBHC_SAR_ERR (0x175)
-#define TAIKO_A_TX_7_MBHC_SAR_ERR__POR (0x00)
-#define TAIKO_A_TX_7_TXFE_CLKDIV (0x176)
-#define TAIKO_A_TX_7_TXFE_CLKDIV__POR (0x0B)
-#define TAIKO_A_BUCK_MODE_1 (0x181)
-#define TAIKO_A_BUCK_MODE_1__POR (0x21)
-#define TAIKO_A_BUCK_MODE_2 (0x182)
-#define TAIKO_A_BUCK_MODE_2__POR (0xFF)
-#define TAIKO_A_BUCK_MODE_3 (0x183)
-#define TAIKO_A_BUCK_MODE_3__POR (0xCC)
-#define TAIKO_A_BUCK_MODE_4 (0x184)
-#define TAIKO_A_BUCK_MODE_4__POR (0x3A)
-#define TAIKO_A_BUCK_MODE_5 (0x185)
-#define TAIKO_A_BUCK_MODE_5__POR (0x00)
-#define TAIKO_A_BUCK_CTRL_VCL_1 (0x186)
-#define TAIKO_A_BUCK_CTRL_VCL_1__POR (0x48)
-#define TAIKO_A_BUCK_CTRL_VCL_2 (0x187)
-#define TAIKO_A_BUCK_CTRL_VCL_2__POR (0xA3)
-#define TAIKO_A_BUCK_CTRL_VCL_3 (0x188)
-#define TAIKO_A_BUCK_CTRL_VCL_3__POR (0x82)
-#define TAIKO_A_BUCK_CTRL_CCL_1 (0x189)
-#define TAIKO_A_BUCK_CTRL_CCL_1__POR (0xAB)
-#define TAIKO_A_BUCK_CTRL_CCL_2 (0x18A)
-#define TAIKO_A_BUCK_CTRL_CCL_2__POR (0xDC)
-#define TAIKO_A_BUCK_CTRL_CCL_3 (0x18B)
-#define TAIKO_A_BUCK_CTRL_CCL_3__POR (0x6A)
-#define TAIKO_A_BUCK_CTRL_CCL_4 (0x18C)
-#define TAIKO_A_BUCK_CTRL_CCL_4__POR (0x58)
-#define TAIKO_A_BUCK_CTRL_PWM_DRVR_1 (0x18D)
-#define TAIKO_A_BUCK_CTRL_PWM_DRVR_1__POR (0x50)
-#define TAIKO_A_BUCK_CTRL_PWM_DRVR_2 (0x18E)
-#define TAIKO_A_BUCK_CTRL_PWM_DRVR_2__POR (0x64)
-#define TAIKO_A_BUCK_CTRL_PWM_DRVR_3 (0x18F)
-#define TAIKO_A_BUCK_CTRL_PWM_DRVR_3__POR (0x77)
-#define TAIKO_A_BUCK_TMUX_A_D (0x190)
-#define TAIKO_A_BUCK_TMUX_A_D__POR (0x00)
-#define TAIKO_A_NCP_BUCKREF (0x191)
-#define TAIKO_A_NCP_BUCKREF__POR (0x00)
-#define TAIKO_A_NCP_EN (0x192)
-#define TAIKO_A_NCP_EN__POR (0xFE)
-#define TAIKO_A_NCP_CLK (0x193)
-#define TAIKO_A_NCP_CLK__POR (0x94)
-#define TAIKO_A_NCP_STATIC (0x194)
-#define TAIKO_A_NCP_STATIC__POR (0x28)
-#define TAIKO_A_NCP_VTH_LOW (0x195)
-#define TAIKO_A_NCP_VTH_LOW__POR (0x88)
-#define TAIKO_A_NCP_VTH_HIGH (0x196)
-#define TAIKO_A_NCP_VTH_HIGH__POR (0xA0)
-#define TAIKO_A_NCP_ATEST (0x197)
-#define TAIKO_A_NCP_ATEST__POR (0x00)
-#define TAIKO_A_NCP_DTEST (0x198)
-#define TAIKO_A_NCP_DTEST__POR (0x00)
-#define TAIKO_A_NCP_DLY1 (0x199)
-#define TAIKO_A_NCP_DLY1__POR (0x06)
-#define TAIKO_A_NCP_DLY2 (0x19A)
-#define TAIKO_A_NCP_DLY2__POR (0x06)
-#define TAIKO_A_RX_AUX_SW_CTL (0x19B)
-#define TAIKO_A_RX_AUX_SW_CTL__POR (0x00)
-#define TAIKO_A_RX_PA_AUX_IN_CONN (0x19C)
-#define TAIKO_A_RX_PA_AUX_IN_CONN__POR (0x00)
-#define TAIKO_A_RX_COM_TIMER_DIV (0x19E)
-#define TAIKO_A_RX_COM_TIMER_DIV__POR (0xE8)
-#define TAIKO_A_RX_COM_OCP_CTL (0x19F)
-#define TAIKO_A_RX_COM_OCP_CTL__POR (0x1F)
-#define TAIKO_A_RX_COM_OCP_COUNT (0x1A0)
-#define TAIKO_A_RX_COM_OCP_COUNT__POR (0x77)
-#define TAIKO_A_RX_COM_DAC_CTL (0x1A1)
-#define TAIKO_A_RX_COM_DAC_CTL__POR (0x00)
-#define TAIKO_A_RX_COM_BIAS (0x1A2)
-#define TAIKO_A_RX_COM_BIAS__POR (0x00)
-#define TAIKO_A_RX_HPH_AUTO_CHOP (0x1A4)
-#define TAIKO_A_RX_HPH_AUTO_CHOP__POR (0x38)
-#define TAIKO_A_RX_HPH_CHOP_CTL (0x1A5)
-#define TAIKO_A_RX_HPH_CHOP_CTL__POR (0xB4)
-#define TAIKO_A_RX_HPH_BIAS_PA (0x1A6)
-#define TAIKO_A_RX_HPH_BIAS_PA__POR (0xAA)
-#define TAIKO_A_RX_HPH_BIAS_LDO (0x1A7)
-#define TAIKO_A_RX_HPH_BIAS_LDO__POR (0x87)
-#define TAIKO_A_RX_HPH_BIAS_CNP (0x1A8)
-#define TAIKO_A_RX_HPH_BIAS_CNP__POR (0x8A)
-#define TAIKO_A_RX_HPH_BIAS_WG_OCP (0x1A9)
-#define TAIKO_A_RX_HPH_BIAS_WG_OCP__POR (0x2A)
-#define TAIKO_A_RX_HPH_OCP_CTL (0x1AA)
-#define TAIKO_A_RX_HPH_OCP_CTL__POR (0x68)
-#define TAIKO_A_RX_HPH_CNP_EN (0x1AB)
-#define TAIKO_A_RX_HPH_CNP_EN__POR (0x80)
-#define TAIKO_A_RX_HPH_CNP_WG_CTL (0x1AC)
-#define TAIKO_A_RX_HPH_CNP_WG_CTL__POR (0xDE)
-#define TAIKO_A_RX_HPH_CNP_WG_TIME (0x1AD)
-#define TAIKO_A_RX_HPH_CNP_WG_TIME__POR (0x2A)
-#define TAIKO_A_RX_HPH_L_GAIN (0x1AE)
-#define TAIKO_A_RX_HPH_L_GAIN__POR (0x00)
-#define TAIKO_A_RX_HPH_L_TEST (0x1AF)
-#define TAIKO_A_RX_HPH_L_TEST__POR (0x00)
-#define TAIKO_A_RX_HPH_L_PA_CTL (0x1B0)
-#define TAIKO_A_RX_HPH_L_PA_CTL__POR (0x40)
-#define TAIKO_A_RX_HPH_L_DAC_CTL (0x1B1)
-#define TAIKO_A_RX_HPH_L_DAC_CTL__POR (0x00)
-#define TAIKO_A_RX_HPH_L_ATEST (0x1B2)
-#define TAIKO_A_RX_HPH_L_ATEST__POR (0x00)
-#define TAIKO_A_RX_HPH_L_STATUS (0x1B3)
-#define TAIKO_A_RX_HPH_L_STATUS__POR (0x00)
-#define TAIKO_A_RX_HPH_R_GAIN (0x1B4)
-#define TAIKO_A_RX_HPH_R_GAIN__POR (0x00)
-#define TAIKO_A_RX_HPH_R_TEST (0x1B5)
-#define TAIKO_A_RX_HPH_R_TEST__POR (0x00)
-#define TAIKO_A_RX_HPH_R_PA_CTL (0x1B6)
-#define TAIKO_A_RX_HPH_R_PA_CTL__POR (0x40)
-#define TAIKO_A_RX_HPH_R_DAC_CTL (0x1B7)
-#define TAIKO_A_RX_HPH_R_DAC_CTL__POR (0x00)
-#define TAIKO_A_RX_HPH_R_ATEST (0x1B8)
-#define TAIKO_A_RX_HPH_R_ATEST__POR (0x00)
-#define TAIKO_A_RX_HPH_R_STATUS (0x1B9)
-#define TAIKO_A_RX_HPH_R_STATUS__POR (0x00)
-#define TAIKO_A_RX_EAR_BIAS_PA (0x1BA)
-#define TAIKO_A_RX_EAR_BIAS_PA__POR (0xA6)
-#define TAIKO_A_RX_EAR_BIAS_CMBUFF (0x1BB)
-#define TAIKO_A_RX_EAR_BIAS_CMBUFF__POR (0xA0)
-#define TAIKO_A_RX_EAR_EN (0x1BC)
-#define TAIKO_A_RX_EAR_EN__POR (0x00)
-#define TAIKO_A_RX_EAR_GAIN (0x1BD)
-#define TAIKO_A_RX_EAR_GAIN__POR (0x02)
-#define TAIKO_A_RX_EAR_CMBUFF (0x1BE)
-#define TAIKO_A_RX_EAR_CMBUFF__POR (0x04)
-#define TAIKO_A_RX_EAR_ICTL (0x1BF)
-#define TAIKO_A_RX_EAR_ICTL__POR (0x40)
-#define TAIKO_A_RX_EAR_CCOMP (0x1C0)
-#define TAIKO_A_RX_EAR_CCOMP__POR (0x08)
-#define TAIKO_A_RX_EAR_VCM (0x1C1)
-#define TAIKO_A_RX_EAR_VCM__POR (0x03)
-#define TAIKO_A_RX_EAR_CNP (0x1C2)
-#define TAIKO_A_RX_EAR_CNP__POR (0xF2)
-#define TAIKO_A_RX_EAR_DAC_CTL_ATEST (0x1C3)
-#define TAIKO_A_RX_EAR_DAC_CTL_ATEST__POR (0x00)
-#define TAIKO_A_RX_EAR_STATUS (0x1C5)
-#define TAIKO_A_RX_EAR_STATUS__POR (0x04)
-#define TAIKO_A_RX_LINE_BIAS_PA (0x1C6)
-#define TAIKO_A_RX_LINE_BIAS_PA__POR (0xA8)
-#define TAIKO_A_RX_BUCK_BIAS1 (0x1C7)
-#define TAIKO_A_RX_BUCK_BIAS1__POR (0x42)
-#define TAIKO_A_RX_BUCK_BIAS2 (0x1C8)
-#define TAIKO_A_RX_BUCK_BIAS2__POR (0x84)
-#define TAIKO_A_RX_LINE_COM (0x1C9)
-#define TAIKO_A_RX_LINE_COM__POR (0x80)
-#define TAIKO_A_RX_LINE_CNP_EN (0x1CA)
-#define TAIKO_A_RX_LINE_CNP_EN__POR (0x00)
-#define TAIKO_A_RX_LINE_CNP_WG_CTL (0x1CB)
-#define TAIKO_A_RX_LINE_CNP_WG_CTL__POR (0x00)
-#define TAIKO_A_RX_LINE_CNP_WG_TIME (0x1CC)
-#define TAIKO_A_RX_LINE_CNP_WG_TIME__POR (0x04)
-#define TAIKO_A_RX_LINE_1_GAIN (0x1CD)
-#define TAIKO_A_RX_LINE_1_GAIN__POR (0x00)
-#define TAIKO_A_RX_LINE_1_TEST (0x1CE)
-#define TAIKO_A_RX_LINE_1_TEST__POR (0x00)
-#define TAIKO_A_RX_LINE_1_DAC_CTL (0x1CF)
-#define TAIKO_A_RX_LINE_1_DAC_CTL__POR (0x00)
-#define TAIKO_A_RX_LINE_1_STATUS (0x1D0)
-#define TAIKO_A_RX_LINE_1_STATUS__POR (0x00)
-#define TAIKO_A_RX_LINE_2_GAIN (0x1D1)
-#define TAIKO_A_RX_LINE_2_GAIN__POR (0x00)
-#define TAIKO_A_RX_LINE_2_TEST (0x1D2)
-#define TAIKO_A_RX_LINE_2_TEST__POR (0x00)
-#define TAIKO_A_RX_LINE_2_DAC_CTL (0x1D3)
-#define TAIKO_A_RX_LINE_2_DAC_CTL__POR (0x00)
-#define TAIKO_A_RX_LINE_2_STATUS (0x1D4)
-#define TAIKO_A_RX_LINE_2_STATUS__POR (0x00)
-#define TAIKO_A_RX_LINE_3_GAIN (0x1D5)
-#define TAIKO_A_RX_LINE_3_GAIN__POR (0x00)
-#define TAIKO_A_RX_LINE_3_TEST (0x1D6)
-#define TAIKO_A_RX_LINE_3_TEST__POR (0x00)
-#define TAIKO_A_RX_LINE_3_DAC_CTL (0x1D7)
-#define TAIKO_A_RX_LINE_3_DAC_CTL__POR (0x00)
-#define TAIKO_A_RX_LINE_3_STATUS (0x1D8)
-#define TAIKO_A_RX_LINE_3_STATUS__POR (0x00)
-#define TAIKO_A_RX_LINE_4_GAIN (0x1D9)
-#define TAIKO_A_RX_LINE_4_GAIN__POR (0x00)
-#define TAIKO_A_RX_LINE_4_TEST (0x1DA)
-#define TAIKO_A_RX_LINE_4_TEST__POR (0x00)
-#define TAIKO_A_RX_LINE_4_DAC_CTL (0x1DB)
-#define TAIKO_A_RX_LINE_4_DAC_CTL__POR (0x00)
-#define TAIKO_A_RX_LINE_4_STATUS (0x1DC)
-#define TAIKO_A_RX_LINE_4_STATUS__POR (0x00)
-#define TAIKO_A_RX_LINE_CNP_DBG (0x1DD)
-#define TAIKO_A_RX_LINE_CNP_DBG__POR (0x00)
-#define TAIKO_A_SPKR_DRV_EN (0x1DF)
-#define TAIKO_A_SPKR_DRV_EN__POR (0x6F)
-#define TAIKO_A_SPKR_DRV_GAIN (0x1E0)
-#define TAIKO_A_SPKR_DRV_GAIN__POR (0x00)
-#define TAIKO_A_SPKR_DRV_DAC_CTL (0x1E1)
-#define TAIKO_A_SPKR_DRV_DAC_CTL__POR (0x04)
-#define TAIKO_A_SPKR_DRV_OCP_CTL (0x1E2)
-#define TAIKO_A_SPKR_DRV_OCP_CTL__POR (0x98)
-#define TAIKO_A_SPKR_DRV_CLIP_DET (0x1E3)
-#define TAIKO_A_SPKR_DRV_CLIP_DET__POR (0x48)
-#define TAIKO_A_SPKR_DRV_IEC (0x1E4)
-#define TAIKO_A_SPKR_DRV_IEC__POR (0x20)
-#define TAIKO_A_SPKR_DRV_DBG_DAC (0x1E5)
-#define TAIKO_A_SPKR_DRV_DBG_DAC__POR (0x05)
-#define TAIKO_A_SPKR_DRV_DBG_PA (0x1E6)
-#define TAIKO_A_SPKR_DRV_DBG_PA__POR (0x18)
-#define TAIKO_A_SPKR_DRV_DBG_PWRSTG (0x1E7)
-#define TAIKO_A_SPKR_DRV_DBG_PWRSTG__POR (0x00)
-#define TAIKO_A_SPKR_DRV_BIAS_LDO (0x1E8)
-#define TAIKO_A_SPKR_DRV_BIAS_LDO__POR (0x45)
-#define TAIKO_A_SPKR_DRV_BIAS_INT (0x1E9)
-#define TAIKO_A_SPKR_DRV_BIAS_INT__POR (0xA5)
-#define TAIKO_A_SPKR_DRV_BIAS_PA (0x1EA)
-#define TAIKO_A_SPKR_DRV_BIAS_PA__POR (0x55)
-#define TAIKO_A_SPKR_DRV_STATUS_OCP (0x1EB)
-#define TAIKO_A_SPKR_DRV_STATUS_OCP__POR (0x00)
-#define TAIKO_A_SPKR_DRV_STATUS_PA (0x1EC)
-#define TAIKO_A_SPKR_DRV_STATUS_PA__POR (0x00)
-#define TAIKO_A_SPKR_PROT_EN (0x1ED)
-#define TAIKO_A_SPKR_PROT_EN__POR (0x00)
-#define TAIKO_A_SPKR_PROT_ADC_EN (0x1EE)
-#define TAIKO_A_SPKR_PROT_ADC_EN__POR (0x44)
-#define TAIKO_A_SPKR_PROT_ISENSE_BIAS (0x1EF)
-#define TAIKO_A_SPKR_PROT_ISENSE_BIAS__POR (0x44)
-#define TAIKO_A_SPKR_PROT_VSENSE_BIAS (0x1F0)
-#define TAIKO_A_SPKR_PROT_VSENSE_BIAS__POR (0x44)
-#define TAIKO_A_SPKR_PROT_ADC_ATEST_REFCTRL (0x1F1)
-#define TAIKO_A_SPKR_PROT_ADC_ATEST_REFCTRL__POR (0x00)
-#define TAIKO_A_SPKR_PROT_ADC_TEST_CTL (0x1F2)
-#define TAIKO_A_SPKR_PROT_ADC_TEST_CTL__POR (0x38)
-#define TAIKO_A_SPKR_PROT_TEST_BLOCK_EN (0x1F3)
-#define TAIKO_A_SPKR_PROT_TEST_BLOCK_EN__POR (0xFC)
-#define TAIKO_A_SPKR_PROT_ATEST (0x1F4)
-#define TAIKO_A_SPKR_PROT_ATEST__POR (0x00)
-#define TAIKO_A_SPKR_PROT_V_SAR_ERR (0x1F5)
-#define TAIKO_A_SPKR_PROT_V_SAR_ERR__POR (0x00)
-#define TAIKO_A_SPKR_PROT_I_SAR_ERR (0x1F6)
-#define TAIKO_A_SPKR_PROT_I_SAR_ERR__POR (0x00)
-#define TAIKO_A_SPKR_PROT_LDO_CTRL (0x1F7)
-#define TAIKO_A_SPKR_PROT_LDO_CTRL__POR (0x00)
-#define TAIKO_A_SPKR_PROT_ISENSE_CTRL (0x1F8)
-#define TAIKO_A_SPKR_PROT_ISENSE_CTRL__POR (0x00)
-#define TAIKO_A_SPKR_PROT_VSENSE_CTRL (0x1F9)
-#define TAIKO_A_SPKR_PROT_VSENSE_CTRL__POR (0x00)
-#define TAIKO_A_RC_OSC_FREQ (0x1FA)
-#define TAIKO_A_RC_OSC_FREQ__POR (0x46)
-#define TAIKO_A_RC_OSC_TEST (0x1FB)
-#define TAIKO_A_RC_OSC_TEST__POR (0x0A)
-#define TAIKO_A_RC_OSC_STATUS (0x1FC)
-#define TAIKO_A_RC_OSC_STATUS__POR (0x18)
-#define TAIKO_A_RC_OSC_TUNER (0x1FD)
-#define TAIKO_A_RC_OSC_TUNER__POR (0x00)
-#define TAIKO_A_MBHC_HPH (0x1FE)
-#define TAIKO_A_MBHC_HPH__POR (0x44)
-#define TAIKO_A_CDC_ANC1_B1_CTL (0x200)
-#define TAIKO_A_CDC_ANC1_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC2_B1_CTL (0x280)
-#define TAIKO_A_CDC_ANC2_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC1_SHIFT (0x201)
-#define TAIKO_A_CDC_ANC1_SHIFT__POR (0x00)
-#define TAIKO_A_CDC_ANC2_SHIFT (0x281)
-#define TAIKO_A_CDC_ANC2_SHIFT__POR (0x00)
-#define TAIKO_A_CDC_ANC1_IIR_B1_CTL (0x202)
-#define TAIKO_A_CDC_ANC1_IIR_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC2_IIR_B1_CTL (0x282)
-#define TAIKO_A_CDC_ANC2_IIR_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC1_IIR_B2_CTL (0x203)
-#define TAIKO_A_CDC_ANC1_IIR_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC2_IIR_B2_CTL (0x283)
-#define TAIKO_A_CDC_ANC2_IIR_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC1_IIR_B3_CTL (0x204)
-#define TAIKO_A_CDC_ANC1_IIR_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC2_IIR_B3_CTL (0x284)
-#define TAIKO_A_CDC_ANC2_IIR_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC1_LPF_B1_CTL (0x206)
-#define TAIKO_A_CDC_ANC1_LPF_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC2_LPF_B1_CTL (0x286)
-#define TAIKO_A_CDC_ANC2_LPF_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC1_LPF_B2_CTL (0x207)
-#define TAIKO_A_CDC_ANC1_LPF_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC2_LPF_B2_CTL (0x287)
-#define TAIKO_A_CDC_ANC2_LPF_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC1_SPARE (0x209)
-#define TAIKO_A_CDC_ANC1_SPARE__POR (0x00)
-#define TAIKO_A_CDC_ANC2_SPARE (0x289)
-#define TAIKO_A_CDC_ANC2_SPARE__POR (0x00)
-#define TAIKO_A_CDC_ANC1_SMLPF_CTL (0x20A)
-#define TAIKO_A_CDC_ANC1_SMLPF_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC2_SMLPF_CTL (0x28A)
-#define TAIKO_A_CDC_ANC2_SMLPF_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC1_DCFLT_CTL (0x20B)
-#define TAIKO_A_CDC_ANC1_DCFLT_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC2_DCFLT_CTL (0x28B)
-#define TAIKO_A_CDC_ANC2_DCFLT_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC1_GAIN_CTL (0x20C)
-#define TAIKO_A_CDC_ANC1_GAIN_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC2_GAIN_CTL (0x28C)
-#define TAIKO_A_CDC_ANC2_GAIN_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC1_B2_CTL (0x20D)
-#define TAIKO_A_CDC_ANC1_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC2_B2_CTL (0x28D)
-#define TAIKO_A_CDC_ANC2_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_TX1_VOL_CTL_TIMER (0x220)
-#define TAIKO_A_CDC_TX1_VOL_CTL_TIMER__POR (0x00)
-#define TAIKO_A_CDC_TX2_VOL_CTL_TIMER (0x228)
-#define TAIKO_A_CDC_TX2_VOL_CTL_TIMER__POR (0x00)
-#define TAIKO_A_CDC_TX3_VOL_CTL_TIMER (0x230)
-#define TAIKO_A_CDC_TX3_VOL_CTL_TIMER__POR (0x00)
-#define TAIKO_A_CDC_TX4_VOL_CTL_TIMER (0x238)
-#define TAIKO_A_CDC_TX4_VOL_CTL_TIMER__POR (0x00)
-#define TAIKO_A_CDC_TX5_VOL_CTL_TIMER (0x240)
-#define TAIKO_A_CDC_TX5_VOL_CTL_TIMER__POR (0x00)
-#define TAIKO_A_CDC_TX6_VOL_CTL_TIMER (0x248)
-#define TAIKO_A_CDC_TX6_VOL_CTL_TIMER__POR (0x00)
-#define TAIKO_A_CDC_TX7_VOL_CTL_TIMER (0x250)
-#define TAIKO_A_CDC_TX7_VOL_CTL_TIMER__POR (0x00)
-#define TAIKO_A_CDC_TX8_VOL_CTL_TIMER (0x258)
-#define TAIKO_A_CDC_TX8_VOL_CTL_TIMER__POR (0x00)
-#define TAIKO_A_CDC_TX9_VOL_CTL_TIMER (0x260)
-#define TAIKO_A_CDC_TX9_VOL_CTL_TIMER__POR (0x00)
-#define TAIKO_A_CDC_TX10_VOL_CTL_TIMER (0x268)
-#define TAIKO_A_CDC_TX10_VOL_CTL_TIMER__POR (0x00)
-#define TAIKO_A_CDC_TX1_VOL_CTL_GAIN (0x221)
-#define TAIKO_A_CDC_TX1_VOL_CTL_GAIN__POR (0x00)
-#define TAIKO_A_CDC_TX2_VOL_CTL_GAIN (0x229)
-#define TAIKO_A_CDC_TX2_VOL_CTL_GAIN__POR (0x00)
-#define TAIKO_A_CDC_TX3_VOL_CTL_GAIN (0x231)
-#define TAIKO_A_CDC_TX3_VOL_CTL_GAIN__POR (0x00)
-#define TAIKO_A_CDC_TX4_VOL_CTL_GAIN (0x239)
-#define TAIKO_A_CDC_TX4_VOL_CTL_GAIN__POR (0x00)
-#define TAIKO_A_CDC_TX5_VOL_CTL_GAIN (0x241)
-#define TAIKO_A_CDC_TX5_VOL_CTL_GAIN__POR (0x00)
-#define TAIKO_A_CDC_TX6_VOL_CTL_GAIN (0x249)
-#define TAIKO_A_CDC_TX6_VOL_CTL_GAIN__POR (0x00)
-#define TAIKO_A_CDC_TX7_VOL_CTL_GAIN (0x251)
-#define TAIKO_A_CDC_TX7_VOL_CTL_GAIN__POR (0x00)
-#define TAIKO_A_CDC_TX8_VOL_CTL_GAIN (0x259)
-#define TAIKO_A_CDC_TX8_VOL_CTL_GAIN__POR (0x00)
-#define TAIKO_A_CDC_TX9_VOL_CTL_GAIN (0x261)
-#define TAIKO_A_CDC_TX9_VOL_CTL_GAIN__POR (0x00)
-#define TAIKO_A_CDC_TX10_VOL_CTL_GAIN (0x269)
-#define TAIKO_A_CDC_TX10_VOL_CTL_GAIN__POR (0x00)
-#define TAIKO_A_CDC_TX1_VOL_CTL_CFG (0x222)
-#define TAIKO_A_CDC_TX1_VOL_CTL_CFG__POR (0x00)
-#define TAIKO_A_CDC_TX2_VOL_CTL_CFG (0x22A)
-#define TAIKO_A_CDC_TX2_VOL_CTL_CFG__POR (0x00)
-#define TAIKO_A_CDC_TX3_VOL_CTL_CFG (0x232)
-#define TAIKO_A_CDC_TX3_VOL_CTL_CFG__POR (0x00)
-#define TAIKO_A_CDC_TX4_VOL_CTL_CFG (0x23A)
-#define TAIKO_A_CDC_TX4_VOL_CTL_CFG__POR (0x00)
-#define TAIKO_A_CDC_TX5_VOL_CTL_CFG (0x242)
-#define TAIKO_A_CDC_TX5_VOL_CTL_CFG__POR (0x00)
-#define TAIKO_A_CDC_TX6_VOL_CTL_CFG (0x24A)
-#define TAIKO_A_CDC_TX6_VOL_CTL_CFG__POR (0x00)
-#define TAIKO_A_CDC_TX7_VOL_CTL_CFG (0x252)
-#define TAIKO_A_CDC_TX7_VOL_CTL_CFG__POR (0x00)
-#define TAIKO_A_CDC_TX8_VOL_CTL_CFG (0x25A)
-#define TAIKO_A_CDC_TX8_VOL_CTL_CFG__POR (0x00)
-#define TAIKO_A_CDC_TX9_VOL_CTL_CFG (0x262)
-#define TAIKO_A_CDC_TX9_VOL_CTL_CFG__POR (0x00)
-#define TAIKO_A_CDC_TX10_VOL_CTL_CFG (0x26A)
-#define TAIKO_A_CDC_TX10_VOL_CTL_CFG__POR (0x00)
-#define TAIKO_A_CDC_TX1_MUX_CTL (0x223)
-#define TAIKO_A_CDC_TX1_MUX_CTL__POR (0x08)
-#define TAIKO_A_CDC_TX2_MUX_CTL (0x22B)
-#define TAIKO_A_CDC_TX2_MUX_CTL__POR (0x08)
-#define TAIKO_A_CDC_TX3_MUX_CTL (0x233)
-#define TAIKO_A_CDC_TX3_MUX_CTL__POR (0x08)
-#define TAIKO_A_CDC_TX4_MUX_CTL (0x23B)
-#define TAIKO_A_CDC_TX4_MUX_CTL__POR (0x08)
-#define TAIKO_A_CDC_TX5_MUX_CTL (0x243)
-#define TAIKO_A_CDC_TX5_MUX_CTL__POR (0x08)
-#define TAIKO_A_CDC_TX6_MUX_CTL (0x24B)
-#define TAIKO_A_CDC_TX6_MUX_CTL__POR (0x08)
-#define TAIKO_A_CDC_TX7_MUX_CTL (0x253)
-#define TAIKO_A_CDC_TX7_MUX_CTL__POR (0x08)
-#define TAIKO_A_CDC_TX8_MUX_CTL (0x25B)
-#define TAIKO_A_CDC_TX8_MUX_CTL__POR (0x08)
-#define TAIKO_A_CDC_TX9_MUX_CTL (0x263)
-#define TAIKO_A_CDC_TX9_MUX_CTL__POR (0x08)
-#define TAIKO_A_CDC_TX10_MUX_CTL (0x26B)
-#define TAIKO_A_CDC_TX10_MUX_CTL__POR (0x08)
-#define TAIKO_A_CDC_TX1_CLK_FS_CTL (0x224)
-#define TAIKO_A_CDC_TX1_CLK_FS_CTL__POR (0x03)
-#define TAIKO_A_CDC_TX2_CLK_FS_CTL (0x22C)
-#define TAIKO_A_CDC_TX2_CLK_FS_CTL__POR (0x03)
-#define TAIKO_A_CDC_TX3_CLK_FS_CTL (0x234)
-#define TAIKO_A_CDC_TX3_CLK_FS_CTL__POR (0x03)
-#define TAIKO_A_CDC_TX4_CLK_FS_CTL (0x23C)
-#define TAIKO_A_CDC_TX4_CLK_FS_CTL__POR (0x03)
-#define TAIKO_A_CDC_TX5_CLK_FS_CTL (0x244)
-#define TAIKO_A_CDC_TX5_CLK_FS_CTL__POR (0x03)
-#define TAIKO_A_CDC_TX6_CLK_FS_CTL (0x24C)
-#define TAIKO_A_CDC_TX6_CLK_FS_CTL__POR (0x03)
-#define TAIKO_A_CDC_TX7_CLK_FS_CTL (0x254)
-#define TAIKO_A_CDC_TX7_CLK_FS_CTL__POR (0x03)
-#define TAIKO_A_CDC_TX8_CLK_FS_CTL (0x25C)
-#define TAIKO_A_CDC_TX8_CLK_FS_CTL__POR (0x03)
-#define TAIKO_A_CDC_TX9_CLK_FS_CTL (0x264)
-#define TAIKO_A_CDC_TX9_CLK_FS_CTL__POR (0x03)
-#define TAIKO_A_CDC_TX10_CLK_FS_CTL (0x26C)
-#define TAIKO_A_CDC_TX10_CLK_FS_CTL__POR (0x03)
-#define TAIKO_A_CDC_TX1_DMIC_CTL (0x225)
-#define TAIKO_A_CDC_TX1_DMIC_CTL__POR (0x00)
-#define TAIKO_A_CDC_TX2_DMIC_CTL (0x22D)
-#define TAIKO_A_CDC_TX2_DMIC_CTL__POR (0x00)
-#define TAIKO_A_CDC_TX3_DMIC_CTL (0x235)
-#define TAIKO_A_CDC_TX3_DMIC_CTL__POR (0x00)
-#define TAIKO_A_CDC_TX4_DMIC_CTL (0x23D)
-#define TAIKO_A_CDC_TX4_DMIC_CTL__POR (0x00)
-#define TAIKO_A_CDC_TX5_DMIC_CTL (0x245)
-#define TAIKO_A_CDC_TX5_DMIC_CTL__POR (0x00)
-#define TAIKO_A_CDC_TX6_DMIC_CTL (0x24D)
-#define TAIKO_A_CDC_TX6_DMIC_CTL__POR (0x00)
-#define TAIKO_A_CDC_TX7_DMIC_CTL (0x255)
-#define TAIKO_A_CDC_TX7_DMIC_CTL__POR (0x00)
-#define TAIKO_A_CDC_TX8_DMIC_CTL (0x25D)
-#define TAIKO_A_CDC_TX8_DMIC_CTL__POR (0x00)
-#define TAIKO_A_CDC_TX9_DMIC_CTL (0x265)
-#define TAIKO_A_CDC_TX9_DMIC_CTL__POR (0x00)
-#define TAIKO_A_CDC_TX10_DMIC_CTL (0x26D)
-#define TAIKO_A_CDC_TX10_DMIC_CTL__POR (0x00)
-#define TAIKO_A_CDC_DEBUG_B1_CTL (0x278)
-#define TAIKO_A_CDC_DEBUG_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_DEBUG_B2_CTL (0x279)
-#define TAIKO_A_CDC_DEBUG_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_DEBUG_B3_CTL (0x27A)
-#define TAIKO_A_CDC_DEBUG_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_DEBUG_B4_CTL (0x27B)
-#define TAIKO_A_CDC_DEBUG_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_DEBUG_B5_CTL (0x27C)
-#define TAIKO_A_CDC_DEBUG_B5_CTL__POR (0x00)
-#define TAIKO_A_CDC_DEBUG_B6_CTL (0x27D)
-#define TAIKO_A_CDC_DEBUG_B6_CTL__POR (0x00)
-#define TAIKO_A_CDC_DEBUG_B7_CTL (0x27E)
-#define TAIKO_A_CDC_DEBUG_B7_CTL__POR (0x00)
-#define TAIKO_A_CDC_SRC1_PDA_CFG (0x2A0)
-#define TAIKO_A_CDC_SRC1_PDA_CFG__POR (0x00)
-#define TAIKO_A_CDC_SRC2_PDA_CFG (0x2A8)
-#define TAIKO_A_CDC_SRC2_PDA_CFG__POR (0x00)
-#define TAIKO_A_CDC_SRC1_FS_CTL (0x2A1)
-#define TAIKO_A_CDC_SRC1_FS_CTL__POR (0x1B)
-#define TAIKO_A_CDC_SRC2_FS_CTL (0x2A9)
-#define TAIKO_A_CDC_SRC2_FS_CTL__POR (0x1B)
-#define TAIKO_A_CDC_RX1_B1_CTL (0x2B0)
-#define TAIKO_A_CDC_RX1_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX2_B1_CTL (0x2B8)
-#define TAIKO_A_CDC_RX2_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX3_B1_CTL (0x2C0)
-#define TAIKO_A_CDC_RX3_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX4_B1_CTL (0x2C8)
-#define TAIKO_A_CDC_RX4_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX5_B1_CTL (0x2D0)
-#define TAIKO_A_CDC_RX5_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX6_B1_CTL (0x2D8)
-#define TAIKO_A_CDC_RX6_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX7_B1_CTL (0x2E0)
-#define TAIKO_A_CDC_RX7_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX1_B2_CTL (0x2B1)
-#define TAIKO_A_CDC_RX1_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX2_B2_CTL (0x2B9)
-#define TAIKO_A_CDC_RX2_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX3_B2_CTL (0x2C1)
-#define TAIKO_A_CDC_RX3_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX4_B2_CTL (0x2C9)
-#define TAIKO_A_CDC_RX4_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX5_B2_CTL (0x2D1)
-#define TAIKO_A_CDC_RX5_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX6_B2_CTL (0x2D9)
-#define TAIKO_A_CDC_RX6_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX7_B2_CTL (0x2E1)
-#define TAIKO_A_CDC_RX7_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX1_B3_CTL (0x2B2)
-#define TAIKO_A_CDC_RX1_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX2_B3_CTL (0x2BA)
-#define TAIKO_A_CDC_RX2_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX3_B3_CTL (0x2C2)
-#define TAIKO_A_CDC_RX3_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX4_B3_CTL (0x2CA)
-#define TAIKO_A_CDC_RX4_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX5_B3_CTL (0x2D2)
-#define TAIKO_A_CDC_RX5_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX6_B3_CTL (0x2DA)
-#define TAIKO_A_CDC_RX6_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX7_B3_CTL (0x2E2)
-#define TAIKO_A_CDC_RX7_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX1_B4_CTL (0x2B3)
-#define TAIKO_A_CDC_RX1_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX2_B4_CTL (0x2BB)
-#define TAIKO_A_CDC_RX2_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX3_B4_CTL (0x2C3)
-#define TAIKO_A_CDC_RX3_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX4_B4_CTL (0x2CB)
-#define TAIKO_A_CDC_RX4_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX5_B4_CTL (0x2D3)
-#define TAIKO_A_CDC_RX5_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX6_B4_CTL (0x2DB)
-#define TAIKO_A_CDC_RX6_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX7_B4_CTL (0x2E3)
-#define TAIKO_A_CDC_RX7_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX1_B5_CTL (0x2B4)
-#define TAIKO_A_CDC_RX1_B5_CTL__POR (0x78)
-#define TAIKO_A_CDC_RX2_B5_CTL (0x2BC)
-#define TAIKO_A_CDC_RX2_B5_CTL__POR (0x78)
-#define TAIKO_A_CDC_RX3_B5_CTL (0x2C4)
-#define TAIKO_A_CDC_RX3_B5_CTL__POR (0x78)
-#define TAIKO_A_CDC_RX4_B5_CTL (0x2CC)
-#define TAIKO_A_CDC_RX4_B5_CTL__POR (0x78)
-#define TAIKO_A_CDC_RX5_B5_CTL (0x2D4)
-#define TAIKO_A_CDC_RX5_B5_CTL__POR (0x78)
-#define TAIKO_A_CDC_RX6_B5_CTL (0x2DC)
-#define TAIKO_A_CDC_RX6_B5_CTL__POR (0x78)
-#define TAIKO_A_CDC_RX7_B5_CTL (0x2E4)
-#define TAIKO_A_CDC_RX7_B5_CTL__POR (0x78)
-#define TAIKO_A_CDC_RX1_B6_CTL (0x2B5)
-#define TAIKO_A_CDC_RX1_B6_CTL__POR (0x80)
-#define TAIKO_A_CDC_RX2_B6_CTL (0x2BD)
-#define TAIKO_A_CDC_RX2_B6_CTL__POR (0x80)
-#define TAIKO_A_CDC_RX3_B6_CTL (0x2C5)
-#define TAIKO_A_CDC_RX3_B6_CTL__POR (0x80)
-#define TAIKO_A_CDC_RX4_B6_CTL (0x2CD)
-#define TAIKO_A_CDC_RX4_B6_CTL__POR (0x80)
-#define TAIKO_A_CDC_RX5_B6_CTL (0x2D5)
-#define TAIKO_A_CDC_RX5_B6_CTL__POR (0x80)
-#define TAIKO_A_CDC_RX6_B6_CTL (0x2DD)
-#define TAIKO_A_CDC_RX6_B6_CTL__POR (0x80)
-#define TAIKO_A_CDC_RX7_B6_CTL (0x2E5)
-#define TAIKO_A_CDC_RX7_B6_CTL__POR (0x80)
-#define TAIKO_A_CDC_RX1_VOL_CTL_B1_CTL (0x2B6)
-#define TAIKO_A_CDC_RX1_VOL_CTL_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX2_VOL_CTL_B1_CTL (0x2BE)
-#define TAIKO_A_CDC_RX2_VOL_CTL_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX3_VOL_CTL_B1_CTL (0x2C6)
-#define TAIKO_A_CDC_RX3_VOL_CTL_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX4_VOL_CTL_B1_CTL (0x2CE)
-#define TAIKO_A_CDC_RX4_VOL_CTL_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX5_VOL_CTL_B1_CTL (0x2D6)
-#define TAIKO_A_CDC_RX5_VOL_CTL_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX6_VOL_CTL_B1_CTL (0x2DE)
-#define TAIKO_A_CDC_RX6_VOL_CTL_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX7_VOL_CTL_B1_CTL (0x2E6)
-#define TAIKO_A_CDC_RX7_VOL_CTL_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX1_VOL_CTL_B2_CTL (0x2B7)
-#define TAIKO_A_CDC_RX1_VOL_CTL_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX2_VOL_CTL_B2_CTL (0x2BF)
-#define TAIKO_A_CDC_RX2_VOL_CTL_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX3_VOL_CTL_B2_CTL (0x2C7)
-#define TAIKO_A_CDC_RX3_VOL_CTL_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX4_VOL_CTL_B2_CTL (0x2CF)
-#define TAIKO_A_CDC_RX4_VOL_CTL_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX5_VOL_CTL_B2_CTL (0x2D7)
-#define TAIKO_A_CDC_RX5_VOL_CTL_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX6_VOL_CTL_B2_CTL (0x2DF)
-#define TAIKO_A_CDC_RX6_VOL_CTL_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX7_VOL_CTL_B2_CTL (0x2E7)
-#define TAIKO_A_CDC_RX7_VOL_CTL_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_VBAT_CFG (0x2E8)
-#define TAIKO_A_CDC_VBAT_CFG__POR (0x1A)
-#define TAIKO_A_CDC_VBAT_ADC_CAL1 (0x2E9)
-#define TAIKO_A_CDC_VBAT_ADC_CAL1__POR (0x00)
-#define TAIKO_A_CDC_VBAT_ADC_CAL2 (0x2EA)
-#define TAIKO_A_CDC_VBAT_ADC_CAL2__POR (0x00)
-#define TAIKO_A_CDC_VBAT_ADC_CAL3 (0x2EB)
-#define TAIKO_A_CDC_VBAT_ADC_CAL3__POR (0x04)
-#define TAIKO_A_CDC_VBAT_PK_EST1 (0x2EC)
-#define TAIKO_A_CDC_VBAT_PK_EST1__POR (0xE0)
-#define TAIKO_A_CDC_VBAT_PK_EST2 (0x2ED)
-#define TAIKO_A_CDC_VBAT_PK_EST2__POR (0x01)
-#define TAIKO_A_CDC_VBAT_PK_EST3 (0x2EE)
-#define TAIKO_A_CDC_VBAT_PK_EST3__POR (0x40)
-#define TAIKO_A_CDC_VBAT_RF_PROC1 (0x2EF)
-#define TAIKO_A_CDC_VBAT_RF_PROC1__POR (0x2A)
-#define TAIKO_A_CDC_VBAT_RF_PROC2 (0x2F0)
-#define TAIKO_A_CDC_VBAT_RF_PROC2__POR (0x86)
-#define TAIKO_A_CDC_VBAT_TAC1 (0x2F1)
-#define TAIKO_A_CDC_VBAT_TAC1__POR (0x70)
-#define TAIKO_A_CDC_VBAT_TAC2 (0x2F2)
-#define TAIKO_A_CDC_VBAT_TAC2__POR (0x18)
-#define TAIKO_A_CDC_VBAT_TAC3 (0x2F3)
-#define TAIKO_A_CDC_VBAT_TAC3__POR (0x18)
-#define TAIKO_A_CDC_VBAT_TAC4 (0x2F4)
-#define TAIKO_A_CDC_VBAT_TAC4__POR (0x03)
-#define TAIKO_A_CDC_VBAT_GAIN_UPD1 (0x2F5)
-#define TAIKO_A_CDC_VBAT_GAIN_UPD1__POR (0x01)
-#define TAIKO_A_CDC_VBAT_GAIN_UPD2 (0x2F6)
-#define TAIKO_A_CDC_VBAT_GAIN_UPD2__POR (0x00)
-#define TAIKO_A_CDC_VBAT_GAIN_UPD3 (0x2F7)
-#define TAIKO_A_CDC_VBAT_GAIN_UPD3__POR (0x64)
-#define TAIKO_A_CDC_VBAT_GAIN_UPD4 (0x2F8)
-#define TAIKO_A_CDC_VBAT_GAIN_UPD4__POR (0x01)
-#define TAIKO_A_CDC_VBAT_DEBUG1 (0x2F9)
-#define TAIKO_A_CDC_VBAT_DEBUG1__POR (0x00)
-#define TAIKO_A_CDC_CLK_ANC_RESET_CTL (0x300)
-#define TAIKO_A_CDC_CLK_ANC_RESET_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_RX_RESET_CTL (0x301)
-#define TAIKO_A_CDC_CLK_RX_RESET_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_TX_RESET_B1_CTL (0x302)
-#define TAIKO_A_CDC_CLK_TX_RESET_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_TX_RESET_B2_CTL (0x303)
-#define TAIKO_A_CDC_CLK_TX_RESET_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_DMIC_B1_CTL (0x304)
-#define TAIKO_A_CDC_CLK_DMIC_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_DMIC_B2_CTL (0x305)
-#define TAIKO_A_CDC_CLK_DMIC_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_RX_I2S_CTL (0x306)
-#define TAIKO_A_CDC_CLK_RX_I2S_CTL__POR (0x03)
-#define TAIKO_A_CDC_CLK_TX_I2S_CTL (0x307)
-#define TAIKO_A_CDC_CLK_TX_I2S_CTL__POR (0x03)
-#define TAIKO_A_CDC_CLK_OTHR_RESET_B1_CTL (0x308)
-#define TAIKO_A_CDC_CLK_OTHR_RESET_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_OTHR_RESET_B2_CTL (0x309)
-#define TAIKO_A_CDC_CLK_OTHR_RESET_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_TX_CLK_EN_B1_CTL (0x30A)
-#define TAIKO_A_CDC_CLK_TX_CLK_EN_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_TX_CLK_EN_B2_CTL (0x30B)
-#define TAIKO_A_CDC_CLK_TX_CLK_EN_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_OTHR_CTL (0x30C)
-#define TAIKO_A_CDC_CLK_OTHR_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_RDAC_CLK_EN_CTL (0x30D)
-#define TAIKO_A_CDC_CLK_RDAC_CLK_EN_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_ANC_CLK_EN_CTL (0x30E)
-#define TAIKO_A_CDC_CLK_ANC_CLK_EN_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_RX_B1_CTL (0x30F)
-#define TAIKO_A_CDC_CLK_RX_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_RX_B2_CTL (0x310)
-#define TAIKO_A_CDC_CLK_RX_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_MCLK_CTL (0x311)
-#define TAIKO_A_CDC_CLK_MCLK_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_PDM_CTL (0x312)
-#define TAIKO_A_CDC_CLK_PDM_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_SD_CTL (0x313)
-#define TAIKO_A_CDC_CLK_SD_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_POWER_CTL (0x314)
-#define TAIKO_A_CDC_CLK_POWER_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLSH_B1_CTL (0x320)
-#define TAIKO_A_CDC_CLSH_B1_CTL__POR (0xE4)
-#define TAIKO_A_CDC_CLSH_B2_CTL (0x321)
-#define TAIKO_A_CDC_CLSH_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLSH_B3_CTL (0x322)
-#define TAIKO_A_CDC_CLSH_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLSH_BUCK_NCP_VARS (0x323)
-#define TAIKO_A_CDC_CLSH_BUCK_NCP_VARS__POR (0x00)
-#define TAIKO_A_CDC_CLSH_IDLE_HPH_THSD (0x324)
-#define TAIKO_A_CDC_CLSH_IDLE_HPH_THSD__POR (0x12)
-#define TAIKO_A_CDC_CLSH_IDLE_EAR_THSD (0x325)
-#define TAIKO_A_CDC_CLSH_IDLE_EAR_THSD__POR (0x0C)
-#define TAIKO_A_CDC_CLSH_FCLKONLY_HPH_THSD (0x326)
-#define TAIKO_A_CDC_CLSH_FCLKONLY_HPH_THSD__POR (0x18)
-#define TAIKO_A_CDC_CLSH_FCLKONLY_EAR_THSD (0x327)
-#define TAIKO_A_CDC_CLSH_FCLKONLY_EAR_THSD__POR (0x23)
-#define TAIKO_A_CDC_CLSH_K_ADDR (0x328)
-#define TAIKO_A_CDC_CLSH_K_ADDR__POR (0x00)
-#define TAIKO_A_CDC_CLSH_K_DATA (0x329)
-#define TAIKO_A_CDC_CLSH_K_DATA__POR (0xA4)
-#define TAIKO_A_CDC_CLSH_I_PA_FACT_HPH_L (0x32A)
-#define TAIKO_A_CDC_CLSH_I_PA_FACT_HPH_L__POR (0xD7)
-#define TAIKO_A_CDC_CLSH_I_PA_FACT_HPH_U (0x32B)
-#define TAIKO_A_CDC_CLSH_I_PA_FACT_HPH_U__POR (0x05)
-#define TAIKO_A_CDC_CLSH_I_PA_FACT_EAR_L (0x32C)
-#define TAIKO_A_CDC_CLSH_I_PA_FACT_EAR_L__POR (0x60)
-#define TAIKO_A_CDC_CLSH_I_PA_FACT_EAR_U (0x32D)
-#define TAIKO_A_CDC_CLSH_I_PA_FACT_EAR_U__POR (0x09)
-#define TAIKO_A_CDC_CLSH_V_PA_HD_EAR (0x32E)
-#define TAIKO_A_CDC_CLSH_V_PA_HD_EAR__POR (0x00)
-#define TAIKO_A_CDC_CLSH_V_PA_HD_HPH (0x32F)
-#define TAIKO_A_CDC_CLSH_V_PA_HD_HPH__POR (0x00)
-#define TAIKO_A_CDC_CLSH_V_PA_MIN_EAR (0x330)
-#define TAIKO_A_CDC_CLSH_V_PA_MIN_EAR__POR (0x00)
-#define TAIKO_A_CDC_CLSH_V_PA_MIN_HPH (0x331)
-#define TAIKO_A_CDC_CLSH_V_PA_MIN_HPH__POR (0x00)
-#define TAIKO_A_CDC_IIR1_GAIN_B1_CTL (0x340)
-#define TAIKO_A_CDC_IIR1_GAIN_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR2_GAIN_B1_CTL (0x350)
-#define TAIKO_A_CDC_IIR2_GAIN_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR1_GAIN_B2_CTL (0x341)
-#define TAIKO_A_CDC_IIR1_GAIN_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR2_GAIN_B2_CTL (0x351)
-#define TAIKO_A_CDC_IIR2_GAIN_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR1_GAIN_B3_CTL (0x342)
-#define TAIKO_A_CDC_IIR1_GAIN_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR2_GAIN_B3_CTL (0x352)
-#define TAIKO_A_CDC_IIR2_GAIN_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR1_GAIN_B4_CTL (0x343)
-#define TAIKO_A_CDC_IIR1_GAIN_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR2_GAIN_B4_CTL (0x353)
-#define TAIKO_A_CDC_IIR2_GAIN_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR1_GAIN_B5_CTL (0x344)
-#define TAIKO_A_CDC_IIR1_GAIN_B5_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR2_GAIN_B5_CTL (0x354)
-#define TAIKO_A_CDC_IIR2_GAIN_B5_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR1_GAIN_B6_CTL (0x345)
-#define TAIKO_A_CDC_IIR1_GAIN_B6_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR2_GAIN_B6_CTL (0x355)
-#define TAIKO_A_CDC_IIR2_GAIN_B6_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR1_GAIN_B7_CTL (0x346)
-#define TAIKO_A_CDC_IIR1_GAIN_B7_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR2_GAIN_B7_CTL (0x356)
-#define TAIKO_A_CDC_IIR2_GAIN_B7_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR1_GAIN_B8_CTL (0x347)
-#define TAIKO_A_CDC_IIR1_GAIN_B8_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR2_GAIN_B8_CTL (0x357)
-#define TAIKO_A_CDC_IIR2_GAIN_B8_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR1_CTL (0x348)
-#define TAIKO_A_CDC_IIR1_CTL__POR (0x40)
-#define TAIKO_A_CDC_IIR2_CTL (0x358)
-#define TAIKO_A_CDC_IIR2_CTL__POR (0x40)
-#define TAIKO_A_CDC_IIR1_GAIN_TIMER_CTL (0x349)
-#define TAIKO_A_CDC_IIR1_GAIN_TIMER_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR2_GAIN_TIMER_CTL (0x359)
-#define TAIKO_A_CDC_IIR2_GAIN_TIMER_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR1_COEF_B1_CTL (0x34A)
-#define TAIKO_A_CDC_IIR1_COEF_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR2_COEF_B1_CTL (0x35A)
-#define TAIKO_A_CDC_IIR2_COEF_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR1_COEF_B2_CTL (0x34B)
-#define TAIKO_A_CDC_IIR1_COEF_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR2_COEF_B2_CTL (0x35B)
-#define TAIKO_A_CDC_IIR2_COEF_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_TOP_GAIN_UPDATE (0x360)
-#define TAIKO_A_CDC_TOP_GAIN_UPDATE__POR (0x00)
-#define TAIKO_A_CDC_COMP0_B1_CTL (0x368)
-#define TAIKO_A_CDC_COMP0_B1_CTL__POR (0x30)
-#define TAIKO_A_CDC_COMP1_B1_CTL (0x370)
-#define TAIKO_A_CDC_COMP1_B1_CTL__POR (0x30)
-#define TAIKO_A_CDC_COMP2_B1_CTL (0x378)
-#define TAIKO_A_CDC_COMP2_B1_CTL__POR (0x30)
-#define TAIKO_A_CDC_COMP0_B2_CTL (0x369)
-#define TAIKO_A_CDC_COMP0_B2_CTL__POR (0xB5)
-#define TAIKO_A_CDC_COMP1_B2_CTL (0x371)
-#define TAIKO_A_CDC_COMP1_B2_CTL__POR (0xB5)
-#define TAIKO_A_CDC_COMP2_B2_CTL (0x379)
-#define TAIKO_A_CDC_COMP2_B2_CTL__POR (0xB5)
-#define TAIKO_A_CDC_COMP0_B3_CTL (0x36A)
-#define TAIKO_A_CDC_COMP0_B3_CTL__POR (0x28)
-#define TAIKO_A_CDC_COMP1_B3_CTL (0x372)
-#define TAIKO_A_CDC_COMP1_B3_CTL__POR (0x28)
-#define TAIKO_A_CDC_COMP2_B3_CTL (0x37A)
-#define TAIKO_A_CDC_COMP2_B3_CTL__POR (0x28)
-#define TAIKO_A_CDC_COMP0_B4_CTL (0x36B)
-#define TAIKO_A_CDC_COMP0_B4_CTL__POR (0x3C)
-#define TAIKO_A_CDC_COMP1_B4_CTL (0x373)
-#define TAIKO_A_CDC_COMP1_B4_CTL__POR (0x3C)
-#define TAIKO_A_CDC_COMP2_B4_CTL (0x37B)
-#define TAIKO_A_CDC_COMP2_B4_CTL__POR (0x3C)
-#define TAIKO_A_CDC_COMP0_B5_CTL (0x36C)
-#define TAIKO_A_CDC_COMP0_B5_CTL__POR (0x1F)
-#define TAIKO_A_CDC_COMP1_B5_CTL (0x374)
-#define TAIKO_A_CDC_COMP1_B5_CTL__POR (0x1F)
-#define TAIKO_A_CDC_COMP2_B5_CTL (0x37C)
-#define TAIKO_A_CDC_COMP2_B5_CTL__POR (0x1F)
-#define TAIKO_A_CDC_COMP0_B6_CTL (0x36D)
-#define TAIKO_A_CDC_COMP0_B6_CTL__POR (0x00)
-#define TAIKO_A_CDC_COMP1_B6_CTL (0x375)
-#define TAIKO_A_CDC_COMP1_B6_CTL__POR (0x00)
-#define TAIKO_A_CDC_COMP2_B6_CTL (0x37D)
-#define TAIKO_A_CDC_COMP2_B6_CTL__POR (0x00)
-#define TAIKO_A_CDC_COMP0_SHUT_DOWN_STATUS (0x36E)
-#define TAIKO_A_CDC_COMP0_SHUT_DOWN_STATUS__POR (0x03)
-#define TAIKO_A_CDC_COMP1_SHUT_DOWN_STATUS (0x376)
-#define TAIKO_A_CDC_COMP1_SHUT_DOWN_STATUS__POR (0x03)
-#define TAIKO_A_CDC_COMP2_SHUT_DOWN_STATUS (0x37E)
-#define TAIKO_A_CDC_COMP2_SHUT_DOWN_STATUS__POR (0x03)
-#define TAIKO_A_CDC_COMP0_FS_CFG (0x36F)
-#define TAIKO_A_CDC_COMP0_FS_CFG__POR (0x03)
-#define TAIKO_A_CDC_COMP1_FS_CFG (0x377)
-#define TAIKO_A_CDC_COMP1_FS_CFG__POR (0x03)
-#define TAIKO_A_CDC_COMP2_FS_CFG (0x37F)
-#define TAIKO_A_CDC_COMP2_FS_CFG__POR (0x03)
-#define TAIKO_A_CDC_CONN_RX1_B1_CTL (0x380)
-#define TAIKO_A_CDC_CONN_RX1_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX1_B2_CTL (0x381)
-#define TAIKO_A_CDC_CONN_RX1_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX1_B3_CTL (0x382)
-#define TAIKO_A_CDC_CONN_RX1_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX2_B1_CTL (0x383)
-#define TAIKO_A_CDC_CONN_RX2_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX2_B2_CTL (0x384)
-#define TAIKO_A_CDC_CONN_RX2_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX2_B3_CTL (0x385)
-#define TAIKO_A_CDC_CONN_RX2_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX3_B1_CTL (0x386)
-#define TAIKO_A_CDC_CONN_RX3_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX3_B2_CTL (0x387)
-#define TAIKO_A_CDC_CONN_RX3_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX4_B1_CTL (0x388)
-#define TAIKO_A_CDC_CONN_RX4_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX4_B2_CTL (0x389)
-#define TAIKO_A_CDC_CONN_RX4_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX5_B1_CTL (0x38A)
-#define TAIKO_A_CDC_CONN_RX5_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX5_B2_CTL (0x38B)
-#define TAIKO_A_CDC_CONN_RX5_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX6_B1_CTL (0x38C)
-#define TAIKO_A_CDC_CONN_RX6_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX6_B2_CTL (0x38D)
-#define TAIKO_A_CDC_CONN_RX6_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX7_B1_CTL (0x38E)
-#define TAIKO_A_CDC_CONN_RX7_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX7_B2_CTL (0x38F)
-#define TAIKO_A_CDC_CONN_RX7_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX7_B3_CTL (0x390)
-#define TAIKO_A_CDC_CONN_RX7_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_ANC_B1_CTL (0x391)
-#define TAIKO_A_CDC_CONN_ANC_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_ANC_B2_CTL (0x392)
-#define TAIKO_A_CDC_CONN_ANC_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_TX_B1_CTL (0x393)
-#define TAIKO_A_CDC_CONN_TX_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_TX_B2_CTL (0x394)
-#define TAIKO_A_CDC_CONN_TX_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_TX_B3_CTL (0x395)
-#define TAIKO_A_CDC_CONN_TX_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_TX_B4_CTL (0x396)
-#define TAIKO_A_CDC_CONN_TX_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_EQ1_B1_CTL (0x397)
-#define TAIKO_A_CDC_CONN_EQ1_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_EQ1_B2_CTL (0x398)
-#define TAIKO_A_CDC_CONN_EQ1_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_EQ1_B3_CTL (0x399)
-#define TAIKO_A_CDC_CONN_EQ1_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_EQ1_B4_CTL (0x39A)
-#define TAIKO_A_CDC_CONN_EQ1_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_EQ2_B1_CTL (0x39B)
-#define TAIKO_A_CDC_CONN_EQ2_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_EQ2_B2_CTL (0x39C)
-#define TAIKO_A_CDC_CONN_EQ2_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_EQ2_B3_CTL (0x39D)
-#define TAIKO_A_CDC_CONN_EQ2_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_EQ2_B4_CTL (0x39E)
-#define TAIKO_A_CDC_CONN_EQ2_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_SRC1_B1_CTL (0x39F)
-#define TAIKO_A_CDC_CONN_SRC1_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_SRC1_B2_CTL (0x3A0)
-#define TAIKO_A_CDC_CONN_SRC1_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_SRC2_B1_CTL (0x3A1)
-#define TAIKO_A_CDC_CONN_SRC2_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_SRC2_B2_CTL (0x3A2)
-#define TAIKO_A_CDC_CONN_SRC2_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_TX_SB_B1_CTL (0x3A3)
-#define TAIKO_A_CDC_CONN_TX_SB_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_TX_SB_B2_CTL (0x3A4)
-#define TAIKO_A_CDC_CONN_TX_SB_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_TX_SB_B3_CTL (0x3A5)
-#define TAIKO_A_CDC_CONN_TX_SB_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_TX_SB_B4_CTL (0x3A6)
-#define TAIKO_A_CDC_CONN_TX_SB_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_TX_SB_B5_CTL (0x3A7)
-#define TAIKO_A_CDC_CONN_TX_SB_B5_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_TX_SB_B6_CTL (0x3A8)
-#define TAIKO_A_CDC_CONN_TX_SB_B6_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_TX_SB_B7_CTL (0x3A9)
-#define TAIKO_A_CDC_CONN_TX_SB_B7_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_TX_SB_B8_CTL (0x3AA)
-#define TAIKO_A_CDC_CONN_TX_SB_B8_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_TX_SB_B9_CTL (0x3AB)
-#define TAIKO_A_CDC_CONN_TX_SB_B9_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_TX_SB_B10_CTL (0x3AC)
-#define TAIKO_A_CDC_CONN_TX_SB_B10_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_TX_SB_B11_CTL (0x3AD)
-#define TAIKO_A_CDC_CONN_TX_SB_B11_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX_SB_B1_CTL (0x3AE)
-#define TAIKO_A_CDC_CONN_RX_SB_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX_SB_B2_CTL (0x3AF)
-#define TAIKO_A_CDC_CONN_RX_SB_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_CLSH_CTL (0x3B0)
-#define TAIKO_A_CDC_CONN_CLSH_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_MISC (0x3B1)
-#define TAIKO_A_CDC_CONN_MISC__POR (0x01)
-#define TAIKO_A_CDC_CONN_MAD (0x3B2)
-#define TAIKO_A_CDC_CONN_MAD__POR (0x01)
-#define TAIKO_A_CDC_MBHC_EN_CTL (0x3C0)
-#define TAIKO_A_CDC_MBHC_EN_CTL__POR (0x00)
-#define TAIKO_A_CDC_MBHC_FIR_B1_CFG (0x3C1)
-#define TAIKO_A_CDC_MBHC_FIR_B1_CFG__POR (0x00)
-#define TAIKO_A_CDC_MBHC_FIR_B2_CFG (0x3C2)
-#define TAIKO_A_CDC_MBHC_FIR_B2_CFG__POR (0x06)
-#define TAIKO_A_CDC_MBHC_TIMER_B1_CTL (0x3C3)
-#define TAIKO_A_CDC_MBHC_TIMER_B1_CTL__POR (0x03)
-#define TAIKO_A_CDC_MBHC_TIMER_B2_CTL (0x3C4)
-#define TAIKO_A_CDC_MBHC_TIMER_B2_CTL__POR (0x09)
-#define TAIKO_A_CDC_MBHC_TIMER_B3_CTL (0x3C5)
-#define TAIKO_A_CDC_MBHC_TIMER_B3_CTL__POR (0x1E)
-#define TAIKO_A_CDC_MBHC_TIMER_B4_CTL (0x3C6)
-#define TAIKO_A_CDC_MBHC_TIMER_B4_CTL__POR (0x45)
-#define TAIKO_A_CDC_MBHC_TIMER_B5_CTL (0x3C7)
-#define TAIKO_A_CDC_MBHC_TIMER_B5_CTL__POR (0x04)
-#define TAIKO_A_CDC_MBHC_TIMER_B6_CTL (0x3C8)
-#define TAIKO_A_CDC_MBHC_TIMER_B6_CTL__POR (0x78)
-#define TAIKO_A_CDC_MBHC_B1_STATUS (0x3C9)
-#define TAIKO_A_CDC_MBHC_B1_STATUS__POR (0x00)
-#define TAIKO_A_CDC_MBHC_B2_STATUS (0x3CA)
-#define TAIKO_A_CDC_MBHC_B2_STATUS__POR (0x00)
-#define TAIKO_A_CDC_MBHC_B3_STATUS (0x3CB)
-#define TAIKO_A_CDC_MBHC_B3_STATUS__POR (0x00)
-#define TAIKO_A_CDC_MBHC_B4_STATUS (0x3CC)
-#define TAIKO_A_CDC_MBHC_B4_STATUS__POR (0x00)
-#define TAIKO_A_CDC_MBHC_B5_STATUS (0x3CD)
-#define TAIKO_A_CDC_MBHC_B5_STATUS__POR (0x00)
-#define TAIKO_A_CDC_MBHC_B1_CTL (0x3CE)
-#define TAIKO_A_CDC_MBHC_B1_CTL__POR (0xC0)
-#define TAIKO_A_CDC_MBHC_B2_CTL (0x3CF)
-#define TAIKO_A_CDC_MBHC_B2_CTL__POR (0x5D)
-#define TAIKO_A_CDC_MBHC_VOLT_B1_CTL (0x3D0)
-#define TAIKO_A_CDC_MBHC_VOLT_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_MBHC_VOLT_B2_CTL (0x3D1)
-#define TAIKO_A_CDC_MBHC_VOLT_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_MBHC_VOLT_B3_CTL (0x3D2)
-#define TAIKO_A_CDC_MBHC_VOLT_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_MBHC_VOLT_B4_CTL (0x3D3)
-#define TAIKO_A_CDC_MBHC_VOLT_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_MBHC_VOLT_B5_CTL (0x3D4)
-#define TAIKO_A_CDC_MBHC_VOLT_B5_CTL__POR (0x00)
-#define TAIKO_A_CDC_MBHC_VOLT_B6_CTL (0x3D5)
-#define TAIKO_A_CDC_MBHC_VOLT_B6_CTL__POR (0x00)
-#define TAIKO_A_CDC_MBHC_VOLT_B7_CTL (0x3D6)
-#define TAIKO_A_CDC_MBHC_VOLT_B7_CTL__POR (0xFF)
-#define TAIKO_A_CDC_MBHC_VOLT_B8_CTL (0x3D7)
-#define TAIKO_A_CDC_MBHC_VOLT_B8_CTL__POR (0x07)
-#define TAIKO_A_CDC_MBHC_VOLT_B9_CTL (0x3D8)
-#define TAIKO_A_CDC_MBHC_VOLT_B9_CTL__POR (0xFF)
-#define TAIKO_A_CDC_MBHC_VOLT_B10_CTL (0x3D9)
-#define TAIKO_A_CDC_MBHC_VOLT_B10_CTL__POR (0x7F)
-#define TAIKO_A_CDC_MBHC_VOLT_B11_CTL (0x3DA)
-#define TAIKO_A_CDC_MBHC_VOLT_B11_CTL__POR (0x00)
-#define TAIKO_A_CDC_MBHC_VOLT_B12_CTL (0x3DB)
-#define TAIKO_A_CDC_MBHC_VOLT_B12_CTL__POR (0x80)
-#define TAIKO_A_CDC_MBHC_CLK_CTL (0x3DC)
-#define TAIKO_A_CDC_MBHC_CLK_CTL__POR (0x00)
-#define TAIKO_A_CDC_MBHC_INT_CTL (0x3DD)
-#define TAIKO_A_CDC_MBHC_INT_CTL__POR (0x00)
-#define TAIKO_A_CDC_MBHC_DEBUG_CTL (0x3DE)
-#define TAIKO_A_CDC_MBHC_DEBUG_CTL__POR (0x00)
-#define TAIKO_A_CDC_MBHC_SPARE (0x3DF)
-#define TAIKO_A_CDC_MBHC_SPARE__POR (0x00)
-#define TAIKO_A_CDC_MAD_MAIN_CTL_1 (0x3E0)
-#define TAIKO_A_CDC_MAD_MAIN_CTL_1__POR (0x00)
-#define TAIKO_A_CDC_MAD_MAIN_CTL_2 (0x3E1)
-#define TAIKO_A_CDC_MAD_MAIN_CTL_2__POR (0x00)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_1 (0x3E2)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_1__POR (0x00)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_2 (0x3E3)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_2__POR (0x00)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_3 (0x3E4)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_3__POR (0x00)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_4 (0x3E5)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_4__POR (0x00)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_5 (0x3E6)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_5__POR (0x00)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_6 (0x3E7)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_6__POR (0x00)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_7 (0x3E8)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_7__POR (0x00)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_8 (0x3E9)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_8__POR (0x00)
-#define TAIKO_A_CDC_MAD_AUDIO_IIR_CTL_PTR (0x3EA)
-#define TAIKO_A_CDC_MAD_AUDIO_IIR_CTL_PTR__POR (0x00)
-#define TAIKO_A_CDC_MAD_AUDIO_IIR_CTL_VAL (0x3EB)
-#define TAIKO_A_CDC_MAD_AUDIO_IIR_CTL_VAL__POR (0x40)
-#define TAIKO_A_CDC_MAD_ULTR_CTL_1 (0x3EC)
-#define TAIKO_A_CDC_MAD_ULTR_CTL_1__POR (0x00)
-#define TAIKO_A_CDC_MAD_ULTR_CTL_2 (0x3ED)
-#define TAIKO_A_CDC_MAD_ULTR_CTL_2__POR (0x00)
-#define TAIKO_A_CDC_MAD_ULTR_CTL_3 (0x3EE)
-#define TAIKO_A_CDC_MAD_ULTR_CTL_3__POR (0x00)
-#define TAIKO_A_CDC_MAD_ULTR_CTL_4 (0x3EF)
-#define TAIKO_A_CDC_MAD_ULTR_CTL_4__POR (0x00)
-#define TAIKO_A_CDC_MAD_ULTR_CTL_5 (0x3F0)
-#define TAIKO_A_CDC_MAD_ULTR_CTL_5__POR (0x00)
-#define TAIKO_A_CDC_MAD_ULTR_CTL_6 (0x3F1)
-#define TAIKO_A_CDC_MAD_ULTR_CTL_6__POR (0x00)
-#define TAIKO_A_CDC_MAD_ULTR_CTL_7 (0x3F2)
-#define TAIKO_A_CDC_MAD_ULTR_CTL_7__POR (0x00)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_1 (0x3F3)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_1__POR (0x00)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_2 (0x3F4)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_2__POR (0x00)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_3 (0x3F5)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_3__POR (0x00)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_4 (0x3F6)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_4__POR (0x00)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_5 (0x3F7)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_5__POR (0x00)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_6 (0x3F8)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_6__POR (0x00)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_7 (0x3F9)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_7__POR (0x00)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_8 (0x3FA)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_8__POR (0x00)
-#define TAIKO_A_CDC_MAD_BEACON_IIR_CTL_PTR (0x3FB)
-#define TAIKO_A_CDC_MAD_BEACON_IIR_CTL_PTR__POR (0x00)
-#define TAIKO_A_CDC_MAD_BEACON_IIR_CTL_VAL (0x3FC)
-#define TAIKO_A_CDC_MAD_BEACON_IIR_CTL_VAL__POR (0x00)
-#define TAIKO_A_CDC_TX_1_GAIN (0x153)
-#define TAIKO_A_CDC_TX_1_GAIN__POR (0x02)
-#define TAIKO_A_CDC_TX_2_GAIN (0x155)
-#define TAIKO_A_CDC_TX_2_GAIN__POR (0x02)
-#define TAIKO_A_CDC_TX_1_2_ADC_IB (0x156)
-#define TAIKO_A_CDC_TX_1_2_ADC_IB__POR (0x44)
-#define TAIKO_A_CDC_TX_3_GAIN (0x15D)
-#define TAIKO_A_CDC_TX_3_GAIN__POR (0x02)
-#define TAIKO_A_CDC_TX_4_GAIN (0x15F)
-#define TAIKO_A_CDC_TX_4_GAIN__POR (0x02)
-#define TAIKO_A_CDC_TX_3_4_ADC_IB (0x160)
-#define TAIKO_A_CDC_TX_3_4_ADC_IB__POR (0x44)
-#define TAIKO_A_CDC_TX_5_GAIN (0x167)
-#define TAIKO_A_CDC_TX_5_GAIN__POR (0x02)
-#define TAIKO_A_CDC_TX_6_GAIN (0x169)
-#define TAIKO_A_CDC_TX_6_GAIN__POR (0x02)
-#define TAIKO_A_CDC_TX_5_6_ADC_IB (0x16A)
-#define TAIKO_A_CDC_TX_5_6_ADC_IB__POR (0x44)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL0 (0x270)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL0__POR (0x00)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL1 (0x271)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL1__POR (0x00)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL2 (0x272)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL2__POR (0x00)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL3 (0x273)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL3__POR (0x00)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL4 (0x274)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL4__POR (0x00)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL5 (0x275)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL5__POR (0x00)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL6 (0x276)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL6__POR (0x00)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL7 (0x277)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL7__POR (0x00)
-#define TAIKO_A_CDC_VBAT_GAIN_UPD_MON (0x2FA)
-#define TAIKO_A_CDC_VBAT_GAIN_UPD_MON__POR (0x00)
-#define TAIKO_A_CDC_VBAT_GAIN_MON_VAL (0x2FB)
-#define TAIKO_A_CDC_VBAT_GAIN_MON_VAL__POR (0x00)
-#define TAIKO_A_CDC_PA_RAMP_B1_CTL (0x361)
-#define TAIKO_A_CDC_PA_RAMP_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_PA_RAMP_B2_CTL (0x362)
-#define TAIKO_A_CDC_PA_RAMP_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_PA_RAMP_B3_CTL (0x363)
-#define TAIKO_A_CDC_PA_RAMP_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_PA_RAMP_B4_CTL (0x364)
-#define TAIKO_A_CDC_PA_RAMP_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_SPKR_CLIPDET_B1_CTL (0x365)
-#define TAIKO_A_CDC_SPKR_CLIPDET_B1_CTL__POR (0x00)
-#define TAIKO_SLIM_PGD_PORT_INT_EN0 (0x30)
-#define TAIKO_SLIM_PGD_PORT_INT_STATUS_RX_0 (0x34)
-#define TAIKO_SLIM_PGD_PORT_INT_STATUS_RX_1 (0x35)
-#define TAIKO_SLIM_PGD_PORT_INT_STATUS_TX_0 (0x36)
-#define TAIKO_SLIM_PGD_PORT_INT_STATUS_TX_1 (0x37)
-#define TAIKO_SLIM_PGD_PORT_INT_CLR_RX_0 (0x38)
-#define TAIKO_SLIM_PGD_PORT_INT_CLR_RX_1 (0x39)
-#define TAIKO_SLIM_PGD_PORT_INT_CLR_TX_0 (0x3A)
-#define TAIKO_SLIM_PGD_PORT_INT_CLR_TX_1 (0x3B)
-#define TAIKO_SLIM_PGD_PORT_INT_RX_SOURCE0 (0x60)
-#define TAIKO_SLIM_PGD_PORT_INT_TX_SOURCE0 (0x70)
-#define TAIKO_PACKED_REG_SIZE sizeof(u32)
-#define TAIKO_CODEC_PACK_ENTRY(reg,mask,val) ((val & 0xff) | ((mask & 0xff) << 8) | ((reg & 0xffff) << 16))
-#define TAIKO_CODEC_UNPACK_ENTRY(packed,reg,mask,val) do { ((reg) = ((packed >> 16) & (0xffff))); ((mask) = ((packed >> 8) & (0xff))); ((val) = ((packed) & (0xff))); } while(0);
-#endif
-
diff --git a/sdm710/kernel-headers/linux/mfd/wcd9xxx/wcd9xxx_registers.h b/sdm710/kernel-headers/linux/mfd/wcd9xxx/wcd9xxx_registers.h
deleted file mode 100644
index fe6b6b97..00000000
--- a/sdm710/kernel-headers/linux/mfd/wcd9xxx/wcd9xxx_registers.h
+++ /dev/null
@@ -1,364 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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)
-#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)
-#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)
-#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)
-#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)
-#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_FLYBACK_VNEG_CTRL_1 (0x6A5)
-#define WCD9XXX_FLYBACK_VNEGDAC_CTRL_2 (0x6AF)
-#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)
-#define WCD9XXX_CDC_RX1_RX_VOL_CTL (0xB59)
-#define WCD9XXX_CDC_RX1_RX_VOL_MIX_CTL (0xB5C)
-#define WCD9XXX_CDC_RX1_RX_PATH_SEC1 (0xB5E)
-#define WCD9XXX_CDC_RX2_RX_VOL_CTL (0xB6D)
-#define WCD9XXX_CDC_RX2_RX_VOL_MIX_CTL (0xB70)
-#define WCD9XXX_CDC_RX2_RX_PATH_SEC1 (0xB72)
-#define WCD9XXX_HPH_CNP_WG_CTL (0x06cc)
-#define WCD9XXX_FLYBACK_VNEG_CTRL_4 (0x06a8)
-#define WCD9XXX_HPH_NEW_INT_PA_MISC2 (0x0738)
-#define WCD9XXX_RX_BIAS_HPH_LOWPOWER (0x06bf)
-#define WCD9XXX_HPH_PA_CTL1 (0x06d1)
-#endif
-
diff --git a/sdm710/kernel-headers/linux/msm-core-interface.h b/sdm710/kernel-headers/linux/msm-core-interface.h
deleted file mode 100644
index 681e0b72..00000000
--- a/sdm710/kernel-headers/linux/msm-core-interface.h
+++ /dev/null
@@ -1,39 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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
-#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
-
diff --git a/sdm710/kernel-headers/linux/msm_adsp.h b/sdm710/kernel-headers/linux/msm_adsp.h
deleted file mode 100644
index 7bf7c76b..00000000
--- a/sdm710/kernel-headers/linux/msm_adsp.h
+++ /dev/null
@@ -1,49 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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>
-#define ADSP_IOCTL_MAGIC 'q'
-struct adsp_command_t {
- uint16_t queue;
- uint32_t len;
- uint8_t * data;
-};
-struct adsp_event_t {
- uint16_t type;
- uint32_t timeout_ms;
- uint16_t msg_id;
- uint16_t flags;
- uint32_t len;
- 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)
-#define ADSP_IOCTL_ABORT_EVENT_READ _IOW(ADSP_IOCTL_MAGIC, 15, unsigned)
-#define ADSP_IOCTL_LINK_TASK _IOW(ADSP_IOCTL_MAGIC, 16, unsigned)
-#endif
-
diff --git a/sdm710/kernel-headers/linux/msm_audio.h b/sdm710/kernel-headers/linux/msm_audio.h
deleted file mode 100644
index 586738a2..00000000
--- a/sdm710/kernel-headers/linux/msm_audio.h
+++ /dev/null
@@ -1,353 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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>
-#define AUDIO_IOCTL_MAGIC 'a'
-#define AUDIO_START _IOW(AUDIO_IOCTL_MAGIC, 0, unsigned int)
-#define AUDIO_STOP _IOW(AUDIO_IOCTL_MAGIC, 1, unsigned int)
-#define AUDIO_FLUSH _IOW(AUDIO_IOCTL_MAGIC, 2, unsigned int)
-#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 int)
-#define AUDIO_SET_ADRC _IOW(AUDIO_IOCTL_MAGIC, 7, unsigned int)
-#define AUDIO_SET_EQ _IOW(AUDIO_IOCTL_MAGIC, 8, unsigned int)
-#define AUDIO_SET_RX_IIR _IOW(AUDIO_IOCTL_MAGIC, 9, unsigned int)
-#define AUDIO_SET_VOLUME _IOW(AUDIO_IOCTL_MAGIC, 10, unsigned int)
-#define AUDIO_PAUSE _IOW(AUDIO_IOCTL_MAGIC, 11, unsigned int)
-#define AUDIO_PLAY_DTMF _IOW(AUDIO_IOCTL_MAGIC, 12, unsigned int)
-#define AUDIO_GET_EVENT _IOR(AUDIO_IOCTL_MAGIC, 13, struct msm_audio_event)
-#define AUDIO_ABORT_GET_EVENT _IOW(AUDIO_IOCTL_MAGIC, 14, unsigned int)
-#define AUDIO_REGISTER_PMEM _IOW(AUDIO_IOCTL_MAGIC, 15, unsigned int)
-#define AUDIO_DEREGISTER_PMEM _IOW(AUDIO_IOCTL_MAGIC, 16, unsigned int)
-#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 int)
-#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 int)
-#define AUDIO_DISABLE_SND_DEVICE _IOW(AUDIO_IOCTL_MAGIC, 23, unsigned int)
-#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 int)
-#define AUDIO_SET_PCM_CONFIG _IOW(AUDIO_IOCTL_MAGIC, 31, unsigned int)
-#define AUDIO_SWITCH_DEVICE _IOW(AUDIO_IOCTL_MAGIC, 32, unsigned int)
-#define AUDIO_SET_MUTE _IOW(AUDIO_IOCTL_MAGIC, 33, unsigned int)
-#define AUDIO_UPDATE_ACDB _IOW(AUDIO_IOCTL_MAGIC, 34, unsigned int)
-#define AUDIO_START_VOICE _IOW(AUDIO_IOCTL_MAGIC, 35, unsigned int)
-#define AUDIO_STOP_VOICE _IOW(AUDIO_IOCTL_MAGIC, 36, unsigned int)
-#define AUDIO_REINIT_ACDB _IOW(AUDIO_IOCTL_MAGIC, 39, unsigned int)
-#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 int)
-#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 int)
-#define AUDIO_SET_QCONCERT_PLUS _IOW(AUDIO_IOCTL_MAGIC, 85, unsigned int)
-#define AUDIO_SET_MBADRC _IOW(AUDIO_IOCTL_MAGIC, 86, unsigned int)
-#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 int)
-#define AUDIO_ENABLE_AUDPRE _IOW(AUDIO_IOCTL_MAGIC, 89, unsigned int)
-#define AUDIO_SET_AGC _IOW(AUDIO_IOCTL_MAGIC, 90, unsigned int)
-#define AUDIO_SET_NS _IOW(AUDIO_IOCTL_MAGIC, 91, unsigned int)
-#define AUDIO_SET_TX_IIR _IOW(AUDIO_IOCTL_MAGIC, 92, unsigned int)
-#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 int)
-#define AUDIO_PM_RELAX _IOW(AUDIO_IOCTL_MAGIC, 106, unsigned int)
-#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
-#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;
-};
-#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,
- CAD_DEVICE_PATH_TX,
- CAD_DEVICE_PATH_RX_TX,
- CAD_DEVICE_PATH_LB,
- 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 *)
-#define SND_GET_NUM_ENDPOINTS _IOR(SND_IOCTL_MAGIC, 4, unsigned int *)
-struct msm_snd_endpoint {
- int id;
- char name[64];
-};
-#define SND_GET_ENDPOINT _IOWR(SND_IOCTL_MAGIC, 5, struct msm_snd_endpoint *)
-#define SND_AVC_CTL _IOW(SND_IOCTL_MAGIC, 6, unsigned int *)
-#define SND_AGC_CTL _IOW(SND_IOCTL_MAGIC, 7, unsigned int *)
-#define CAD_GET_NUM_ENDPOINTS _IOR(SND_IOCTL_MAGIC, 4, unsigned int *)
-struct msm_cad_endpoint {
- int id;
- char name[64];
-};
-#define CAD_GET_ENDPOINT _IOWR(SND_IOCTL_MAGIC, 5, struct msm_cad_endpoint *)
-struct msm_audio_pcm_config {
- uint32_t pcm_feedback;
- uint32_t buffer_count;
- uint32_t buffer_size;
-};
-#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;
- char dev_name[64];
-};
-struct msm_snd_device_list {
- uint32_t num_dev;
- 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;
- uint32_t filter_type;
- uint32_t center_freq_hz;
- uint32_t filter_gain;
- uint32_t q_factor;
-} __attribute__((packed));
-struct msm_audio_eq_stream_config {
- uint32_t enable;
- 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;
- uint32_t interface_id;
- uint32_t algorithm_block_id;
- uint32_t total_bytes;
- uint32_t * phys_buf;
-};
-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;
-};
-#define ADSP_STREAM_PP_EVENT 0
-#define ADSP_STREAM_ENCDEC_EVENT 1
-#define ADSP_STREAM_IEC_61937_FMT_UPDATE_EVENT 2
-#define ADSP_STREAM_EVENT_MAX 3
-struct msm_adsp_event_data {
- __u32 event_type;
- __u32 payload_len;
- __u8 payload[0];
-};
-#endif
-
diff --git a/sdm710/kernel-headers/linux/msm_audio_aac.h b/sdm710/kernel-headers/linux/msm_audio_aac.h
deleted file mode 100644
index 8499ac48..00000000
--- a/sdm710/kernel-headers/linux/msm_audio_aac.h
+++ /dev/null
@@ -1,76 +0,0 @@
-#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 */
diff --git a/sdm710/kernel-headers/linux/msm_audio_ac3.h b/sdm710/kernel-headers/linux/msm_audio_ac3.h
deleted file mode 100644
index 2203d9e4..00000000
--- a/sdm710/kernel-headers/linux/msm_audio_ac3.h
+++ /dev/null
@@ -1,41 +0,0 @@
-#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 int)
-#define AUDIO_GET_AC3_CONFIG _IOR(AUDIO_IOCTL_MAGIC, \
- (AUDIO_MAX_COMMON_IOCTL_NUM+1), unsigned int)
-
-#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 */
diff --git a/sdm710/kernel-headers/linux/msm_audio_alac.h b/sdm710/kernel-headers/linux/msm_audio_alac.h
deleted file mode 100644
index 36b96567..00000000
--- a/sdm710/kernel-headers/linux/msm_audio_alac.h
+++ /dev/null
@@ -1,24 +0,0 @@
-#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 */
diff --git a/sdm710/kernel-headers/linux/msm_audio_amrnb.h b/sdm710/kernel-headers/linux/msm_audio_amrnb.h
deleted file mode 100644
index 04099835..00000000
--- a/sdm710/kernel-headers/linux/msm_audio_amrnb.h
+++ /dev/null
@@ -1,34 +0,0 @@
-#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 int)
-#define AUDIO_SET_AMRNB_ENC_CONFIG _IOR(AUDIO_IOCTL_MAGIC, \
- (AUDIO_MAX_COMMON_IOCTL_NUM+1), unsigned int)
-#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 */
diff --git a/sdm710/kernel-headers/linux/msm_audio_amrwb.h b/sdm710/kernel-headers/linux/msm_audio_amrwb.h
deleted file mode 100644
index 0d55397d..00000000
--- a/sdm710/kernel-headers/linux/msm_audio_amrwb.h
+++ /dev/null
@@ -1,18 +0,0 @@
-#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 */
diff --git a/sdm710/kernel-headers/linux/msm_audio_amrwbplus.h b/sdm710/kernel-headers/linux/msm_audio_amrwbplus.h
deleted file mode 100644
index 5b8a980a..00000000
--- a/sdm710/kernel-headers/linux/msm_audio_amrwbplus.h
+++ /dev/null
@@ -1,18 +0,0 @@
-#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 */
diff --git a/sdm710/kernel-headers/linux/msm_audio_ape.h b/sdm710/kernel-headers/linux/msm_audio_ape.h
deleted file mode 100644
index b14f6852..00000000
--- a/sdm710/kernel-headers/linux/msm_audio_ape.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/* 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 */
diff --git a/sdm710/kernel-headers/linux/msm_audio_calibration.h b/sdm710/kernel-headers/linux/msm_audio_calibration.h
deleted file mode 100644
index 42800d7b..00000000
--- a/sdm710/kernel-headers/linux/msm_audio_calibration.h
+++ /dev/null
@@ -1,742 +0,0 @@
-#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,
- AFE_SIDETONE_IIR_CAL_TYPE,
- AFE_LSM_TOPOLOGY_CAL_TYPE,
- AFE_LSM_TX_CAL_TYPE,
- ADM_LSM_TOPOLOGY_CAL_TYPE,
- ADM_LSM_AUDPROC_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
-
-#define AFE_SIDETONE_IIR_CAL_TYPE AFE_SIDETONE_IIR_CAL_TYPE
-
-#define AFE_LSM_TOPOLOGY_CAL_TYPE AFE_LSM_TOPOLOGY_CAL_TYPE
-#define AFE_LSM_TX_CAL_TYPE AFE_LSM_TX_CAL_TYPE
-#define ADM_LSM_TOPOLOGY_CAL_TYPE ADM_LSM_TOPOLOGY_CAL_TYPE
-#define ADM_LSM_AUDPROC_CAL_TYPE ADM_LSM_AUDPROC_CAL_TYPE
-#define LSM_CAL_TYPES
-
-#define TOPOLOGY_SPECIFIC_CHANNEL_INFO
-#define MSM_SPKR_PROT_SPV3
-
-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
- */
-#ifdef MSM_SPKR_PROT_SPV3
- uint32_t sp_version;
- int32_t limiter_th[SP_V2_NUM_MAX_SPKRS];
-#endif
-};
-
-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;
-};
-
-#define MAX_SIDETONE_IIR_DATA_SIZE 224
-#define MAX_NO_IIR_FILTER_STAGE 10
-
-struct audio_cal_info_sidetone_iir {
- uint16_t iir_enable;
- uint16_t num_biquad_stages;
- uint16_t pregain;
- int32_t tx_acdb_id;
- int32_t rx_acdb_id;
- int32_t mid;
- int32_t pid;
- uint8_t iir_config[MAX_SIDETONE_IIR_DATA_SIZE];
-};
-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;
-};
-
-#define VSS_NUM_CHANNELS_MAX 8
-
-struct audio_cal_info_voc_top {
- int32_t topology;
- int32_t acdb_id;
-#ifdef TOPOLOGY_SPECIFIC_CHANNEL_INFO
- uint32_t num_channels;
- uint8_t channel_mapping[VSS_NUM_CHANNELS_MAX];
-#endif
-};
-
-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;
- /* DEFAULT_ 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_sidetone_iir {
- struct audio_cal_type_header cal_hdr;
- struct audio_cal_data cal_data;
- struct audio_cal_info_sidetone_iir cal_info;
-};
-
-struct audio_cal_sidetone_iir {
- struct audio_cal_header hdr;
- struct audio_cal_type_sidetone_iir 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 */
diff --git a/sdm710/kernel-headers/linux/msm_audio_g711.h b/sdm710/kernel-headers/linux/msm_audio_g711.h
deleted file mode 100644
index 658c1a59..00000000
--- a/sdm710/kernel-headers/linux/msm_audio_g711.h
+++ /dev/null
@@ -1,17 +0,0 @@
-#ifndef _MSM_AUDIO_G711_H
-#define _MSM_AUDIO_G711_H
-
-#include <linux/msm_audio.h>
-
-struct msm_audio_g711_enc_config {
- uint32_t sample_rate;
-};
-
-#define AUDIO_SET_G711_ENC_CONFIG _IOW(AUDIO_IOCTL_MAGIC, \
- (AUDIO_MAX_COMMON_IOCTL_NUM+0), struct msm_audio_g711_enc_config)
-
-#define AUDIO_GET_G711_ENC_CONFIG _IOR(AUDIO_IOCTL_MAGIC, \
- (AUDIO_MAX_COMMON_IOCTL_NUM+1), struct msm_audio_g711_enc_config)
-
-
-#endif /* _MSM_AUDIO_G711_H */
diff --git a/sdm710/kernel-headers/linux/msm_audio_g711_dec.h b/sdm710/kernel-headers/linux/msm_audio_g711_dec.h
deleted file mode 100644
index a597a94f..00000000
--- a/sdm710/kernel-headers/linux/msm_audio_g711_dec.h
+++ /dev/null
@@ -1,16 +0,0 @@
-#ifndef _MSM_AUDIO_G711_H
-#define _MSM_AUDIO_G711_H
-
-#include <linux/msm_audio.h>
-
-struct msm_audio_g711_dec_config {
- uint32_t sample_rate;
-};
-
-#define AUDIO_SET_G711_DEC_CONFIG _IOW(AUDIO_IOCTL_MAGIC, \
- (AUDIO_MAX_COMMON_IOCTL_NUM+0), struct msm_audio_g711_dec_config)
-
-#define AUDIO_GET_G711_DEC_CONFIG _IOR(AUDIO_IOCTL_MAGIC, \
- (AUDIO_MAX_COMMON_IOCTL_NUM+1), struct msm_audio_g711_dec_config)
-
-#endif /* _MSM_AUDIO_G711_H */
diff --git a/sdm710/kernel-headers/linux/msm_audio_mvs.h b/sdm710/kernel-headers/linux/msm_audio_mvs.h
deleted file mode 100644
index 36d3b55b..00000000
--- a/sdm710/kernel-headers/linux/msm_audio_mvs.h
+++ /dev/null
@@ -1,155 +0,0 @@
-#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 int)
-#define AUDIO_SET_MVS_CONFIG _IOR(AUDIO_IOCTL_MAGIC, \
- (AUDIO_MAX_COMMON_IOCTL_NUM + 1), unsigned int)
-
-/* 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 */
diff --git a/sdm710/kernel-headers/linux/msm_audio_qcp.h b/sdm710/kernel-headers/linux/msm_audio_qcp.h
deleted file mode 100644
index de8552a2..00000000
--- a/sdm710/kernel-headers/linux/msm_audio_qcp.h
+++ /dev/null
@@ -1,37 +0,0 @@
-#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 */
diff --git a/sdm710/kernel-headers/linux/msm_audio_sbc.h b/sdm710/kernel-headers/linux/msm_audio_sbc.h
deleted file mode 100644
index 206b183c..00000000
--- a/sdm710/kernel-headers/linux/msm_audio_sbc.h
+++ /dev/null
@@ -1,36 +0,0 @@
-#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 */
diff --git a/sdm710/kernel-headers/linux/msm_audio_voicememo.h b/sdm710/kernel-headers/linux/msm_audio_voicememo.h
deleted file mode 100644
index 50e1696f..00000000
--- a/sdm710/kernel-headers/linux/msm_audio_voicememo.h
+++ /dev/null
@@ -1,66 +0,0 @@
-#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 int)
-#define AUDIO_SET_VOICEMEMO_CONFIG _IOR(AUDIO_IOCTL_MAGIC, \
- (AUDIO_MAX_COMMON_IOCTL_NUM+1), unsigned int)
-
-/* 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 */
diff --git a/sdm710/kernel-headers/linux/msm_audio_wma.h b/sdm710/kernel-headers/linux/msm_audio_wma.h
deleted file mode 100644
index 8f46f2c6..00000000
--- a/sdm710/kernel-headers/linux/msm_audio_wma.h
+++ /dev/null
@@ -1,33 +0,0 @@
-#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 int)
-#define AUDIO_SET_WMA_CONFIG _IOW(AUDIO_IOCTL_MAGIC, \
- (AUDIO_MAX_COMMON_IOCTL_NUM+1), unsigned int)
-
-#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 */
diff --git a/sdm710/kernel-headers/linux/msm_audio_wmapro.h b/sdm710/kernel-headers/linux/msm_audio_wmapro.h
deleted file mode 100644
index 7559a877..00000000
--- a/sdm710/kernel-headers/linux/msm_audio_wmapro.h
+++ /dev/null
@@ -1,22 +0,0 @@
-#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 */
diff --git a/sdm710/kernel-headers/linux/msm_dsps.h b/sdm710/kernel-headers/linux/msm_dsps.h
deleted file mode 100644
index 7e04490c..00000000
--- a/sdm710/kernel-headers/linux/msm_dsps.h
+++ /dev/null
@@ -1,29 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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'
-#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
-
diff --git a/sdm710/kernel-headers/linux/msm_ion.h b/sdm710/kernel-headers/linux/msm_ion.h
deleted file mode 100644
index 4f4399da..00000000
--- a/sdm710/kernel-headers/linux/msm_ion.h
+++ /dev/null
@@ -1,138 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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"
-#define ION_BIT(nr) (1UL << (nr))
-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,
- ION_HEAP_TYPE_SECURE_CARVEOUT,
-};
-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,
- ION_SECURE_CARVEOUT_HEAP_ID = 14,
- ION_CP_WB_HEAP_ID = 16,
- ION_QSECOM_TA_HEAP_ID = 19,
- ION_CAMERA_HEAP_ID = 20,
- ION_SYSTEM_CONTIG_HEAP_ID = 21,
- ION_ADSP_HEAP_ID = 22,
- ION_PIL1_HEAP_ID = 23,
- ION_SF_HEAP_ID = 24,
- ION_SYSTEM_HEAP_ID = 25,
- ION_PIL2_HEAP_ID = 26,
- ION_QSECOM_HEAP_ID = 27,
- ION_AUDIO_HEAP_ID = 28,
- ION_MM_FIRMWARE_HEAP_ID = 29,
- ION_GOOGLE_HEAP_ID = 30,
- ION_HEAP_ID_RESERVED = 31
-};
-#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,
-};
-#define ION_FLAG_CP_TOUCH ION_BIT(17)
-#define ION_FLAG_CP_BITSTREAM ION_BIT(18)
-#define ION_FLAG_CP_PIXEL ION_BIT(19)
-#define ION_FLAG_CP_NON_PIXEL ION_BIT(20)
-#define ION_FLAG_CP_CAMERA ION_BIT(21)
-#define ION_FLAG_CP_HLOS ION_BIT(22)
-#define ION_FLAG_CP_SPSS_SP ION_BIT(23)
-#define ION_FLAG_CP_SPSS_SP_SHARED ION_BIT(24)
-#define ION_FLAG_CP_SEC_DISPLAY ION_BIT(25)
-#define ION_FLAG_CP_APP ION_BIT(26)
-#define ION_FLAG_CP_CAMERA_PREVIEW ION_BIT(27)
-#define ION_FLAG_CP_CDSP ION_BIT(29)
-#define ION_FLAG_CP_SPSS_HLOS_SHARED ION_BIT(30)
-#define ION_FLAG_ALLOW_NON_CONTIG ION_BIT(28)
-#define ION_FLAG_SECURE ION_BIT(ION_HEAP_ID_RESERVED)
-#define ION_FLAG_POOL_FORCE_ALLOC ION_BIT(16)
-#define ION_SECURE ION_FLAG_SECURE
-#define ION_HEAP(bit) ION_BIT(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_SECURE_CARVEOUT_HEAP_NAME "secure_carveout"
-#define ION_WB_HEAP_NAME "wb"
-#define ION_MM_FIRMWARE_HEAP_NAME "mm_fw"
-#define ION_GOOGLE_HEAP_NAME "easel_mem"
-#define ION_PIL1_HEAP_NAME "pil_1"
-#define ION_PIL2_HEAP_NAME "pil_2"
-#define ION_QSECOM_HEAP_NAME "qsecom"
-#define ION_QSECOM_TA_HEAP_NAME "qsecom_ta"
-#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 {
- 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;
- struct ion_prefetch_regions * regions;
- unsigned int nr_regions;
-};
-#define ION_IOC_MSM_MAGIC 'M'
-#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)
-#define ION_IOC_DRAIN _IOWR(ION_IOC_MSM_MAGIC, 4, struct ion_prefetch_data)
-#endif
-
diff --git a/sdm710/kernel-headers/linux/msm_ipa.h b/sdm710/kernel-headers/linux/msm_ipa.h
deleted file mode 100644
index 89e7eb0b..00000000
--- a/sdm710/kernel-headers/linux/msm_ipa.h
+++ /dev/null
@@ -1,969 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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>
-#include <sys/stat.h>
-#include <linux/ioctl.h>
-#include <linux/types.h>
-#include <linux/if_ether.h>
-#define IPA_IOC_MAGIC 0xCF
-#define IPA_DEV_NAME "/dev/ipa"
-#define IPA_NAT_DEV_NAME "ipaNatTable"
-#define IPA_IPV6CT_DEV_NAME "ipaIpv6CTTable"
-#define IPA_DFLT_RT_TBL_NAME "ipa_dflt_rt"
-#define IPA_IOCTL_ADD_HDR 0
-#define IPA_IOCTL_DEL_HDR 1
-#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
-#define IPA_IOCTL_COMMIT_HDR 6
-#define IPA_IOCTL_RESET_HDR 7
-#define IPA_IOCTL_COMMIT_RT 8
-#define IPA_IOCTL_RESET_RT 9
-#define IPA_IOCTL_COMMIT_FLT 10
-#define IPA_IOCTL_RESET_FLT 11
-#define IPA_IOCTL_DUMP 12
-#define IPA_IOCTL_GET_RT_TBL 13
-#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
-#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
-#define IPA_IOCTL_ALLOC_NAT_MEM 22
-#define IPA_IOCTL_V4_INIT_NAT 23
-#define IPA_IOCTL_TABLE_DMA_CMD 24
-#define IPA_IOCTL_NAT_DMA IPA_IOCTL_TABLE_DMA_CMD
-#define IPA_IOCTL_INIT_IPV6CT_TABLE 25
-#define IPA_IOCTL_V4_DEL_NAT 26
-#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
-#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
-#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
-#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
-#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_ADD_RT_RULE_EXT 46
-#define IPA_IOCTL_ADD_VLAN_IFACE 47
-#define IPA_IOCTL_DEL_VLAN_IFACE 48
-#define IPA_IOCTL_ADD_L2TP_VLAN_MAPPING 49
-#define IPA_IOCTL_DEL_L2TP_VLAN_MAPPING 50
-#define IPA_IOCTL_NAT_MODIFY_PDN 51
-#define IPA_IOCTL_ALLOC_NAT_TABLE 52
-#define IPA_IOCTL_ALLOC_IPV6CT_TABLE 53
-#define IPA_IOCTL_DEL_NAT_TABLE 54
-#define IPA_IOCTL_DEL_IPV6CT_TABLE 55
-#define IPA_IOCTL_CLEANUP 56
-#define IPA_IOCTL_QUERY_WLAN_CLIENT 57
-#define IPA_IOCTL_GET_VLAN_MODE 58
-#define IPA_HDR_MAX_SIZE 64
-#define IPA_RESOURCE_NAME_MAX 32
-#define IPA_NUM_PROPS_MAX 35
-#define IPA_MAC_ADDR_SIZE 6
-#define IPA_MBIM_MAX_STREAM_NUM 8
-#define IPA_WAN_MSG_IPv6_ADDR_GW_LEN 4
-#define IPA_MAX_NUM_HW_PATH_CLIENTS 16
-#define QMI_IPA_MAX_CLIENT_DST_PIPES 4
-#define IPA_FLT_TOS (1ul << 0)
-#define IPA_FLT_PROTOCOL (1ul << 1)
-#define IPA_FLT_SRC_ADDR (1ul << 2)
-#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)
-#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)
-#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)
-#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)
-#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)
-#define IPA_FLT_MAC_DST_ADDR_L2TP (1ul << 22)
-#define IPA_FLT_TCP_SYN (1ul << 23)
-#define IPA_FLT_TCP_SYN_L2TP (1ul << 24)
-#define IPA_FLT_L2TP_INNER_IP_TYPE (1ul << 25)
-#define IPA_FLT_L2TP_INNER_IPV4_DST_ADDR (1ul << 26)
-#define IPA_MAX_PDN_NUM 5
-enum ipa_client_type {
- IPA_CLIENT_HSIC1_PROD = 0,
- IPA_CLIENT_HSIC1_CONS = 1,
- IPA_CLIENT_HSIC2_PROD = 2,
- IPA_CLIENT_HSIC2_CONS = 3,
- IPA_CLIENT_HSIC3_PROD = 4,
- IPA_CLIENT_HSIC3_CONS = 5,
- IPA_CLIENT_HSIC4_PROD = 6,
- IPA_CLIENT_HSIC4_CONS = 7,
- IPA_CLIENT_HSIC5_PROD = 8,
- IPA_CLIENT_HSIC5_CONS = 9,
- IPA_CLIENT_WLAN1_PROD = 10,
- IPA_CLIENT_WLAN1_CONS = 11,
- IPA_CLIENT_A5_WLAN_AMPDU_PROD = 12,
- IPA_CLIENT_WLAN2_CONS = 13,
- IPA_CLIENT_WLAN3_CONS = 15,
- IPA_CLIENT_WLAN4_CONS = 17,
- IPA_CLIENT_USB_PROD = 18,
- IPA_CLIENT_USB_CONS = 19,
- IPA_CLIENT_USB2_PROD = 20,
- IPA_CLIENT_USB2_CONS = 21,
- IPA_CLIENT_USB3_PROD = 22,
- IPA_CLIENT_USB3_CONS = 23,
- IPA_CLIENT_USB4_PROD = 24,
- IPA_CLIENT_USB4_CONS = 25,
- IPA_CLIENT_UC_USB_PROD = 26,
- IPA_CLIENT_USB_DPL_CONS = 27,
- IPA_CLIENT_A2_EMBEDDED_PROD = 28,
- IPA_CLIENT_A2_EMBEDDED_CONS = 29,
- IPA_CLIENT_A2_TETHERED_PROD = 30,
- IPA_CLIENT_A2_TETHERED_CONS = 31,
- IPA_CLIENT_APPS_LAN_PROD = 32,
- IPA_CLIENT_APPS_LAN_CONS = 33,
- IPA_CLIENT_APPS_WAN_PROD = 34,
- IPA_CLIENT_APPS_LAN_WAN_PROD = IPA_CLIENT_APPS_WAN_PROD,
- IPA_CLIENT_APPS_WAN_CONS = 35,
- IPA_CLIENT_APPS_CMD_PROD = 36,
- IPA_CLIENT_A5_LAN_WAN_CONS = 37,
- IPA_CLIENT_ODU_PROD = 38,
- IPA_CLIENT_ODU_EMB_CONS = 39,
- IPA_CLIENT_ODU_TETH_CONS = 41,
- IPA_CLIENT_MHI_PROD = 42,
- IPA_CLIENT_MHI_CONS = 43,
- IPA_CLIENT_MEMCPY_DMA_SYNC_PROD = 44,
- IPA_CLIENT_MEMCPY_DMA_SYNC_CONS = 45,
- IPA_CLIENT_MEMCPY_DMA_ASYNC_PROD = 46,
- IPA_CLIENT_MEMCPY_DMA_ASYNC_CONS = 47,
- IPA_CLIENT_ETHERNET_PROD = 48,
- IPA_CLIENT_ETHERNET_CONS = 49,
- IPA_CLIENT_Q6_LAN_PROD = 50,
- IPA_CLIENT_Q6_LAN_CONS = 51,
- IPA_CLIENT_Q6_WAN_PROD = 52,
- IPA_CLIENT_Q6_WAN_CONS = 53,
- IPA_CLIENT_Q6_CMD_PROD = 54,
- IPA_CLIENT_Q6_DUN_CONS = 55,
- IPA_CLIENT_Q6_DECOMP_PROD = 56,
- IPA_CLIENT_Q6_DECOMP_CONS = 57,
- IPA_CLIENT_Q6_DECOMP2_PROD = 58,
- IPA_CLIENT_Q6_DECOMP2_CONS = 59,
- IPA_CLIENT_Q6_LTE_WIFI_AGGR_CONS = 61,
- IPA_CLIENT_TEST_PROD = 62,
- IPA_CLIENT_TEST_CONS = 63,
- IPA_CLIENT_TEST1_PROD = 64,
- IPA_CLIENT_TEST1_CONS = 65,
- IPA_CLIENT_TEST2_PROD = 66,
- IPA_CLIENT_TEST2_CONS = 67,
- IPA_CLIENT_TEST3_PROD = 68,
- IPA_CLIENT_TEST3_CONS = 69,
- IPA_CLIENT_TEST4_PROD = 70,
- IPA_CLIENT_TEST4_CONS = 71,
- IPA_CLIENT_DUMMY_CONS = 73
-};
-#define IPA_CLIENT_MAX (IPA_CLIENT_DUMMY_CONS + 1)
-#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)
-#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)
-#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)
-#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)
-#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,
- IPA_IP_v6,
- IPA_IP_MAX
-};
-enum ipa_rule_type {
- IPA_RULE_HASHABLE,
- IPA_RULE_NON_HASHABLE,
-};
-#define IPA_RULE_TYPE_MAX (IPA_RULE_NON_HASHABLE + 1)
-enum ipa_flt_action {
- IPA_PASS_TO_ROUTING,
- IPA_PASS_TO_SRC_NAT,
- IPA_PASS_TO_DST_NAT,
- IPA_PASS_TO_EXCEPTION
-};
-enum ipa_wlan_event {
- WLAN_CLIENT_CONNECT,
- WLAN_CLIENT_DISCONNECT,
- WLAN_CLIENT_POWER_SAVE_MODE,
- WLAN_CLIENT_NORMAL_MODE,
- SW_ROUTING_ENABLE,
- SW_ROUTING_DISABLE,
- WLAN_AP_CONNECT,
- WLAN_AP_DISCONNECT,
- WLAN_STA_CONNECT,
- WLAN_STA_DISCONNECT,
- WLAN_CLIENT_CONNECT_EX,
- WLAN_SWITCH_TO_SCC,
- WLAN_SWITCH_TO_MCC,
- WLAN_WDI_ENABLE,
- WLAN_WDI_DISABLE,
- IPA_WLAN_EVENT_MAX
-};
-enum ipa_wan_event {
- WAN_UPSTREAM_ROUTE_ADD = IPA_WLAN_EVENT_MAX,
- WAN_UPSTREAM_ROUTE_DEL,
- WAN_EMBMS_CONNECT,
- WAN_XLAT_CONNECT,
- IPA_WAN_EVENT_MAX
-};
-enum ipa_ecm_event {
- ECM_CONNECT = IPA_WAN_EVENT_MAX,
- ECM_DISCONNECT,
- IPA_ECM_EVENT_MAX,
-};
-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,
-};
-enum ipa_quota_event {
- IPA_QUOTA_REACH = IPA_TETHERING_STATS_EVENT_MAX,
- IPA_QUOTA_EVENT_MAX,
-};
-enum ipa_ssr_event {
- IPA_SSR_BEFORE_SHUTDOWN = IPA_QUOTA_EVENT_MAX,
- IPA_SSR_AFTER_POWERUP,
- IPA_SSR_EVENT_MAX
-};
-enum ipa_vlan_l2tp_event {
- ADD_VLAN_IFACE = IPA_SSR_EVENT_MAX,
- DEL_VLAN_IFACE,
- ADD_L2TP_VLAN_MAPPING,
- DEL_L2TP_VLAN_MAPPING,
- IPA_VLAN_L2TP_EVENT_MAX,
-};
-enum ipa_per_client_stats_event {
- IPA_PER_CLIENT_STATS_CONNECT_EVENT = IPA_VLAN_L2TP_EVENT_MAX,
- IPA_PER_CLIENT_STATS_DISCONNECT_EVENT,
- IPA_PER_CLIENT_STATS_EVENT_MAX
-};
-enum ipa_wlan_fw_ssr_event {
- WLAN_FWR_SSR_BEFORE_SHUTDOWN = IPA_PER_CLIENT_STATS_EVENT_MAX,
- IPA_WLAN_FW_SSR_EVENT_MAX,
-#define IPA_WLAN_FW_SSR_EVENT_MAX IPA_WLAN_FW_SSR_EVENT_MAX
-};
-#define IPA_EVENT_MAX_NUM (IPA_WLAN_FW_SSR_EVENT_MAX)
-#define IPA_EVENT_MAX ((int) IPA_EVENT_MAX_NUM)
-enum ipa_rm_resource_name {
- IPA_RM_RESOURCE_Q6_PROD = 0,
- IPA_RM_RESOURCE_Q6_CONS = 1,
- IPA_RM_RESOURCE_USB_PROD = 2,
- IPA_RM_RESOURCE_USB_CONS = 3,
- IPA_RM_RESOURCE_USB_DPL_DUMMY_PROD = 4,
- IPA_RM_RESOURCE_USB_DPL_CONS = 5,
- IPA_RM_RESOURCE_HSIC_PROD = 6,
- IPA_RM_RESOURCE_HSIC_CONS = 7,
- IPA_RM_RESOURCE_STD_ECM_PROD = 8,
- IPA_RM_RESOURCE_APPS_CONS = 9,
- IPA_RM_RESOURCE_RNDIS_PROD = 10,
- IPA_RM_RESOURCE_WWAN_0_PROD = 12,
- IPA_RM_RESOURCE_WLAN_PROD = 14,
- IPA_RM_RESOURCE_WLAN_CONS = 15,
- IPA_RM_RESOURCE_ODU_ADAPT_PROD = 16,
- IPA_RM_RESOURCE_ODU_ADAPT_CONS = 17,
- IPA_RM_RESOURCE_MHI_PROD = 18,
- IPA_RM_RESOURCE_MHI_CONS = 19,
- IPA_RM_RESOURCE_ETHERNET_PROD = 20,
- IPA_RM_RESOURCE_ETHERNET_CONS = 21,
-};
-#define IPA_RM_RESOURCE_MAX (IPA_RM_RESOURCE_ETHERNET_CONS + 1)
-enum ipa_hw_type {
- IPA_HW_None = 0,
- IPA_HW_v1_0 = 1,
- IPA_HW_v1_1 = 2,
- IPA_HW_v2_0 = 3,
- IPA_HW_v2_1 = 4,
- IPA_HW_v2_5 = 5,
- IPA_HW_v2_6 = IPA_HW_v2_5,
- IPA_HW_v2_6L = 6,
- IPA_HW_v3_0 = 10,
- IPA_HW_v3_1 = 11,
- IPA_HW_v3_5 = 12,
- IPA_HW_v3_5_1 = 13,
- IPA_HW_v4_0 = 14,
-};
-#define IPA_HW_MAX (IPA_HW_v4_0 + 1)
-#define IPA_HW_v4_0 IPA_HW_v4_0
-struct ipa_rule_attrib {
- uint32_t attrib_mask;
- uint16_t src_port_lo;
- uint16_t src_port_hi;
- uint16_t dst_port_lo;
- uint16_t dst_port_hi;
- uint8_t type;
- uint8_t code;
- uint8_t tos_value;
- uint8_t tos_mask;
- uint32_t spi;
- uint16_t src_port;
- uint16_t dst_port;
- uint32_t meta_data;
- uint32_t meta_data_mask;
- uint8_t src_mac_addr[ETH_ALEN];
- uint8_t src_mac_addr_mask[ETH_ALEN];
- uint8_t dst_mac_addr[ETH_ALEN];
- uint8_t dst_mac_addr_mask[ETH_ALEN];
- uint16_t ether_type;
- union {
- struct {
- uint8_t tos;
- uint8_t protocol;
- uint32_t src_addr;
- uint32_t src_addr_mask;
- uint32_t dst_addr;
- uint32_t dst_addr_mask;
- } v4;
- struct {
- uint8_t tc;
- uint32_t flow_label;
- uint8_t next_hdr;
- uint32_t src_addr[4];
- uint32_t src_addr_mask[4];
- uint32_t dst_addr[4];
- uint32_t dst_addr_mask[4];
- } v6;
- } u;
-};
-#define IPA_IPFLTR_NUM_MEQ_32_EQNS 2
-#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 {
- int8_t offset;
- uint16_t value;
-};
-struct ipa_ipfltr_eq_32 {
- int8_t offset;
- uint32_t value;
-};
-struct ipa_ipfltr_mask_eq_128 {
- int8_t offset;
- uint8_t mask[16];
- uint8_t value[16];
-};
-struct ipa_ipfltr_mask_eq_32 {
- int8_t offset;
- uint32_t mask;
- uint32_t value;
-};
-struct ipa_ipfltr_range_eq_16 {
- int8_t offset;
- uint16_t range_low;
- uint16_t range_high;
-};
-struct ipa_ipfltri_rule_eq {
- uint16_t rule_eq_bitmap;
- uint8_t tos_eq_present;
- uint8_t tos_eq;
- uint8_t protocol_eq_present;
- uint8_t protocol_eq;
- 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];
- uint8_t tc_eq_present;
- uint8_t tc_eq;
- uint8_t fl_eq_present;
- uint32_t fl_eq;
- 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;
- 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];
- uint8_t metadata_meq32_present;
- struct ipa_ipfltr_mask_eq_32 metadata_meq32;
- uint8_t ipv4_frag_eq_present;
-};
-struct ipa_flt_rule {
- uint8_t retain_hdr;
- uint8_t to_uc;
- enum ipa_flt_action action;
- uint32_t rt_tbl_hdl;
- struct ipa_rule_attrib attrib;
- struct ipa_ipfltri_rule_eq eq_attrib;
- uint32_t rt_tbl_idx;
- uint8_t eq_attrib_type;
- uint8_t max_prio;
- uint8_t hashable;
- uint16_t rule_id;
- uint8_t set_metadata;
- uint8_t pdn_idx;
-};
-enum ipa_hdr_l2_type {
- IPA_HDR_L2_NONE,
- IPA_HDR_L2_ETHERNET_II,
- IPA_HDR_L2_802_3,
- IPA_HDR_L2_802_1Q,
-};
-#define IPA_HDR_L2_MAX (IPA_HDR_L2_802_1Q + 1)
-#define IPA_HDR_L2_802_1Q IPA_HDR_L2_802_1Q
-enum ipa_hdr_proc_type {
- IPA_HDR_PROC_NONE,
- IPA_HDR_PROC_ETHII_TO_ETHII,
- IPA_HDR_PROC_ETHII_TO_802_3,
- IPA_HDR_PROC_802_3_TO_ETHII,
- IPA_HDR_PROC_802_3_TO_802_3,
- IPA_HDR_PROC_L2TP_HEADER_ADD,
- IPA_HDR_PROC_L2TP_HEADER_REMOVE
-};
-#define IPA_HDR_PROC_MAX (IPA_HDR_PROC_L2TP_HEADER_REMOVE + 1)
-struct ipa_rt_rule {
- enum ipa_client_type dst;
- uint32_t hdr_hdl;
- uint32_t hdr_proc_ctx_hdl;
- struct ipa_rule_attrib attrib;
- uint8_t max_prio;
- uint8_t hashable;
- uint8_t retain_hdr;
-};
-struct ipa_hdr_add {
- char name[IPA_RESOURCE_NAME_MAX];
- uint8_t hdr[IPA_HDR_MAX_SIZE];
- uint8_t hdr_len;
- enum ipa_hdr_l2_type type;
- uint8_t is_partial;
- uint32_t hdr_hdl;
- int status;
- uint8_t is_eth2_ofst_valid;
- uint16_t eth2_ofst;
-};
-struct ipa_ioc_add_hdr {
- uint8_t commit;
- uint8_t num_hdrs;
- struct ipa_hdr_add hdr[0];
-};
-struct ipa_l2tp_header_add_procparams {
- uint32_t eth_hdr_retained : 1;
- uint32_t input_ip_version : 1;
- uint32_t output_ip_version : 1;
- uint32_t reserved : 29;
-};
-struct ipa_l2tp_header_remove_procparams {
- uint32_t hdr_len_remove : 8;
- uint32_t eth_hdr_retained : 1;
- uint32_t hdr_ofst_pkt_size_valid : 1;
- uint32_t hdr_ofst_pkt_size : 6;
- uint32_t hdr_endianness : 1;
- uint32_t reserved : 15;
-};
-struct ipa_l2tp_hdr_proc_ctx_params {
- struct ipa_l2tp_header_add_procparams hdr_add_param;
- struct ipa_l2tp_header_remove_procparams hdr_remove_param;
- uint8_t is_dst_pipe_valid;
- enum ipa_client_type dst_pipe;
-};
-#define L2TP_USER_SPACE_SPECIFY_DST_PIPE
-struct ipa_hdr_proc_ctx_add {
- enum ipa_hdr_proc_type type;
- uint32_t hdr_hdl;
- uint32_t proc_ctx_hdl;
- int status;
- struct ipa_l2tp_hdr_proc_ctx_params l2tp_params;
-};
-#define IPA_L2TP_HDR_PROC_SUPPORT
-struct ipa_ioc_add_hdr_proc_ctx {
- uint8_t commit;
- uint8_t num_proc_ctxs;
- struct ipa_hdr_proc_ctx_add proc_ctx[0];
-};
-struct ipa_ioc_copy_hdr {
- char name[IPA_RESOURCE_NAME_MAX];
- uint8_t hdr[IPA_HDR_MAX_SIZE];
- uint8_t hdr_len;
- enum ipa_hdr_l2_type type;
- uint8_t is_partial;
- uint8_t is_eth2_ofst_valid;
- uint16_t eth2_ofst;
-};
-struct ipa_ioc_get_hdr {
- char name[IPA_RESOURCE_NAME_MAX];
- uint32_t hdl;
-};
-struct ipa_hdr_del {
- uint32_t hdl;
- int status;
-};
-struct ipa_ioc_del_hdr {
- uint8_t commit;
- uint8_t num_hdls;
- struct ipa_hdr_del hdl[0];
-};
-struct ipa_hdr_proc_ctx_del {
- uint32_t hdl;
- int status;
-};
-struct ipa_ioc_del_hdr_proc_ctx {
- uint8_t commit;
- uint8_t num_hdls;
- struct ipa_hdr_proc_ctx_del hdl[0];
-};
-struct ipa_rt_rule_add {
- struct ipa_rt_rule rule;
- uint8_t at_rear;
- uint32_t rt_rule_hdl;
- int status;
-};
-struct ipa_ioc_add_rt_rule {
- uint8_t commit;
- enum ipa_ip_type ip;
- char rt_tbl_name[IPA_RESOURCE_NAME_MAX];
- uint8_t num_rules;
- struct ipa_rt_rule_add rules[0];
-};
-struct ipa_ioc_add_rt_rule_after {
- uint8_t commit;
- enum ipa_ip_type ip;
- char rt_tbl_name[IPA_RESOURCE_NAME_MAX];
- uint8_t num_rules;
- uint32_t add_after_hdl;
- struct ipa_rt_rule_add rules[0];
-};
-struct ipa_rt_rule_mdfy {
- struct ipa_rt_rule rule;
- uint32_t rt_rule_hdl;
- int status;
-};
-struct ipa_ioc_mdfy_rt_rule {
- uint8_t commit;
- enum ipa_ip_type ip;
- uint8_t num_rules;
- struct ipa_rt_rule_mdfy rules[0];
-};
-struct ipa_rt_rule_del {
- uint32_t hdl;
- int status;
-};
-struct ipa_rt_rule_add_ext {
- struct ipa_rt_rule rule;
- uint8_t at_rear;
- uint32_t rt_rule_hdl;
- int status;
- uint16_t rule_id;
-};
-struct ipa_ioc_add_rt_rule_ext {
- uint8_t commit;
- enum ipa_ip_type ip;
- char rt_tbl_name[IPA_RESOURCE_NAME_MAX];
- uint8_t num_rules;
- struct ipa_rt_rule_add_ext rules[0];
-};
-struct ipa_ioc_del_rt_rule {
- uint8_t commit;
- enum ipa_ip_type ip;
- uint8_t num_hdls;
- struct ipa_rt_rule_del hdl[0];
-};
-struct ipa_ioc_get_rt_tbl_indx {
- enum ipa_ip_type ip;
- char name[IPA_RESOURCE_NAME_MAX];
- uint32_t idx;
-};
-struct ipa_flt_rule_add {
- struct ipa_flt_rule rule;
- uint8_t at_rear;
- uint32_t flt_rule_hdl;
- int status;
-};
-struct ipa_ioc_add_flt_rule {
- uint8_t commit;
- enum ipa_ip_type ip;
- enum ipa_client_type ep;
- uint8_t global;
- uint8_t num_rules;
- struct ipa_flt_rule_add rules[0];
-};
-struct ipa_ioc_add_flt_rule_after {
- uint8_t commit;
- enum ipa_ip_type ip;
- enum ipa_client_type ep;
- uint8_t num_rules;
- uint32_t add_after_hdl;
- struct ipa_flt_rule_add rules[0];
-};
-struct ipa_flt_rule_mdfy {
- struct ipa_flt_rule rule;
- uint32_t rule_hdl;
- int status;
-};
-struct ipa_ioc_mdfy_flt_rule {
- uint8_t commit;
- enum ipa_ip_type ip;
- uint8_t num_rules;
- struct ipa_flt_rule_mdfy rules[0];
-};
-struct ipa_flt_rule_del {
- uint32_t hdl;
- int status;
-};
-struct ipa_ioc_del_flt_rule {
- uint8_t commit;
- enum ipa_ip_type ip;
- uint8_t num_hdls;
- struct ipa_flt_rule_del hdl[0];
-};
-struct ipa_ioc_get_rt_tbl {
- enum ipa_ip_type ip;
- char name[IPA_RESOURCE_NAME_MAX];
- uint32_t hdl;
-};
-struct ipa_ioc_query_intf {
- char name[IPA_RESOURCE_NAME_MAX];
- uint32_t num_tx_props;
- uint32_t num_rx_props;
- uint32_t num_ext_props;
- enum ipa_client_type excp_pipe;
-};
-struct ipa_ioc_tx_intf_prop {
- enum ipa_ip_type ip;
- struct ipa_rule_attrib attrib;
- enum ipa_client_type dst_pipe;
- enum ipa_client_type alt_dst_pipe;
- char hdr_name[IPA_RESOURCE_NAME_MAX];
- enum ipa_hdr_l2_type hdr_l2_type;
-};
-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];
-};
-struct ipa_ioc_ext_intf_prop {
- enum ipa_ip_type ip;
- struct ipa_ipfltri_rule_eq eq_attrib;
- enum ipa_flt_action action;
- uint32_t rt_tbl_idx;
- uint8_t mux_id;
- uint32_t filter_hdl;
- uint8_t is_xlat_rule;
- uint32_t rule_id;
- uint8_t is_rule_hashable;
-};
-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];
-};
-struct ipa_ioc_rx_intf_prop {
- enum ipa_ip_type ip;
- struct ipa_rule_attrib attrib;
- enum ipa_client_type src_pipe;
- enum ipa_hdr_l2_type hdr_l2_type;
-};
-struct ipa_ioc_query_intf_rx_props {
- char name[IPA_RESOURCE_NAME_MAX];
- uint32_t num_rx_props;
- struct ipa_ioc_rx_intf_prop rx[0];
-};
-struct ipa_ioc_nat_alloc_mem {
- char dev_name[IPA_RESOURCE_NAME_MAX];
- size_t size;
- off_t offset;
-};
-struct ipa_ioc_nat_ipv6ct_table_alloc {
- size_t size;
- off_t offset;
-};
-struct ipa_ioc_v4_nat_init {
- uint8_t tbl_index;
- uint32_t ipv4_rules_offset;
- uint32_t expn_rules_offset;
- uint32_t index_offset;
- uint32_t index_expn_offset;
- uint16_t table_entries;
- uint16_t expn_table_entries;
- uint32_t ip_addr;
-};
-struct ipa_ioc_ipv6ct_init {
- uint32_t base_table_offset;
- uint32_t expn_table_offset;
- uint16_t table_entries;
- uint16_t expn_table_entries;
- uint8_t tbl_index;
-};
-struct ipa_ioc_v4_nat_del {
- uint8_t table_index;
- uint32_t public_ip_addr;
-};
-struct ipa_ioc_nat_ipv6ct_table_del {
- uint8_t table_index;
-};
-struct ipa_ioc_nat_dma_one {
- uint8_t table_index;
- uint8_t base_addr;
- uint32_t offset;
- uint16_t data;
-};
-struct ipa_ioc_nat_dma_cmd {
- uint8_t entries;
- struct ipa_ioc_nat_dma_one dma[0];
-};
-struct ipa_ioc_nat_pdn_entry {
- uint8_t pdn_index;
- uint32_t public_ip;
- uint32_t src_metadata;
- uint32_t dst_metadata;
-};
-struct ipa_ioc_vlan_iface_info {
- char name[IPA_RESOURCE_NAME_MAX];
- uint8_t vlan_id;
-};
-struct ipa_ioc_l2tp_vlan_mapping_info {
- enum ipa_ip_type iptype;
- char l2tp_iface_name[IPA_RESOURCE_NAME_MAX];
- uint8_t l2tp_session_id;
- char vlan_iface_name[IPA_RESOURCE_NAME_MAX];
-};
-struct ipa_msg_meta {
- uint8_t msg_type;
- uint8_t rsvd;
- uint16_t msg_len;
-};
-struct ipa_wlan_msg {
- char name[IPA_RESOURCE_NAME_MAX];
- uint8_t mac_addr[IPA_MAC_ADDR_SIZE];
-};
-enum ipa_wlan_hdr_attrib_type {
- WLAN_HDR_ATTRIB_MAC_ADDR,
- WLAN_HDR_ATTRIB_STA_ID
-};
-struct ipa_wlan_hdr_attrib_val {
- enum ipa_wlan_hdr_attrib_type attrib_type;
- uint8_t offset;
- union {
- uint8_t mac_addr[IPA_MAC_ADDR_SIZE];
- uint8_t sta_id;
- } u;
-};
-struct ipa_wlan_msg_ex {
- char name[IPA_RESOURCE_NAME_MAX];
- uint8_t num_of_attribs;
- struct ipa_wlan_hdr_attrib_val attribs[0];
-};
-struct ipa_ecm_msg {
- char name[IPA_RESOURCE_NAME_MAX];
- int ifindex;
-};
-struct ipa_wan_msg {
- char upstream_ifname[IPA_RESOURCE_NAME_MAX];
- char tethered_ifname[IPA_RESOURCE_NAME_MAX];
- enum ipa_ip_type ip;
- uint32_t ipv4_addr_gw;
- uint32_t ipv6_addr_gw[IPA_WAN_MSG_IPv6_ADDR_GW_LEN];
-};
-struct ipa_ioc_rm_dependency {
- enum ipa_rm_resource_name resource_name;
- enum ipa_rm_resource_name depends_on_name;
-};
-struct ipa_ioc_generate_flt_eq {
- enum ipa_ip_type ip;
- struct ipa_rule_attrib attrib;
- struct ipa_ipfltri_rule_eq eq_attrib;
-};
-struct ipa_ioc_write_qmapid {
- enum ipa_client_type client;
- uint8_t qmap_id;
-};
-enum ipacm_client_enum {
- IPACM_CLIENT_USB = 1,
- IPACM_CLIENT_WLAN,
- IPACM_CLIENT_MAX
-};
-enum ipacm_per_client_device_type {
- IPACM_CLIENT_DEVICE_TYPE_USB = 0,
- IPACM_CLIENT_DEVICE_TYPE_WLAN = 1,
- IPACM_CLIENT_DEVICE_TYPE_ETH = 2
-};
-#define IPACM_MAX_CLIENT_DEVICE_TYPES 3
-struct ipa_lan_client_msg {
- char lanIface[IPA_RESOURCE_NAME_MAX];
- uint8_t mac[IPA_MAC_ADDR_SIZE];
-};
-struct ipa_lan_client {
- uint8_t mac[IPA_MAC_ADDR_SIZE];
- int8_t client_idx;
- uint8_t inited;
-};
-struct ipa_tether_device_info {
- int32_t ul_src_pipe;
- uint8_t hdr_len;
- uint32_t num_clients;
- struct ipa_lan_client lan_client[IPA_MAX_NUM_HW_PATH_CLIENTS];
-};
-enum ipa_vlan_ifaces {
- IPA_VLAN_IF_ETH,
- IPA_VLAN_IF_RNDIS,
- IPA_VLAN_IF_ECM
-};
-#define IPA_VLAN_IF_EMAC IPA_VLAN_IF_ETH
-#define IPA_VLAN_IF_MAX (IPA_VLAN_IF_ECM + 1)
-struct ipa_ioc_get_vlan_mode {
- enum ipa_vlan_ifaces iface;
- uint32_t is_vlan_mode;
-};
-#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 *)
-#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_EXT _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_ADD_RT_RULE_EXT, struct ipa_ioc_add_rt_rule_ext *)
-#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 *)
-#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)
-#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)
-#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 *)
-#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 *)
-#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_ALLOC_NAT_TABLE _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_ALLOC_NAT_TABLE, struct ipa_ioc_nat_ipv6ct_table_alloc *)
-#define IPA_IOC_ALLOC_IPV6CT_TABLE _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_ALLOC_IPV6CT_TABLE, struct ipa_ioc_nat_ipv6ct_table_alloc *)
-#define IPA_IOC_V4_INIT_NAT _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_V4_INIT_NAT, struct ipa_ioc_v4_nat_init *)
-#define IPA_IOC_INIT_IPV6CT_TABLE _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_INIT_IPV6CT_TABLE, struct ipa_ioc_ipv6ct_init *)
-#define IPA_IOC_NAT_DMA _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_NAT_DMA, struct ipa_ioc_nat_dma_cmd *)
-#define IPA_IOC_TABLE_DMA_CMD _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_TABLE_DMA_CMD, 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_DEL_NAT_TABLE _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_DEL_NAT_TABLE, struct ipa_ioc_nat_ipv6ct_table_del *)
-#define IPA_IOC_DEL_IPV6CT_TABLE _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_DEL_IPV6CT_TABLE, struct ipa_ioc_nat_ipv6ct_table_del *)
-#define IPA_IOC_GET_NAT_OFFSET _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_GET_NAT_OFFSET, uint32_t *)
-#define IPA_IOC_NAT_MODIFY_PDN _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_NAT_MODIFY_PDN, struct ipa_ioc_nat_pdn_entry *)
-#define IPA_IOC_SET_FLT _IOW(IPA_IOC_MAGIC, IPA_IOCTL_SET_FLT, uint32_t)
-#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 *)
-#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 *)
-#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 *)
-#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 IPA_IOC_ADD_VLAN_IFACE _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_ADD_VLAN_IFACE, struct ipa_ioc_vlan_iface_info *)
-#define IPA_IOC_DEL_VLAN_IFACE _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_DEL_VLAN_IFACE, struct ipa_ioc_vlan_iface_info *)
-#define IPA_IOC_ADD_L2TP_VLAN_MAPPING _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_ADD_L2TP_VLAN_MAPPING, struct ipa_ioc_l2tp_vlan_mapping_info *)
-#define IPA_IOC_DEL_L2TP_VLAN_MAPPING _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_DEL_L2TP_VLAN_MAPPING, struct ipa_ioc_l2tp_vlan_mapping_info *)
-#define IPA_IOC_CLEANUP _IO(IPA_IOC_MAGIC, IPA_IOCTL_CLEANUP)
-#define IPA_IOC_QUERY_WLAN_CLIENT _IO(IPA_IOC_MAGIC, IPA_IOCTL_QUERY_WLAN_CLIENT)
-#define IPA_IOC_GET_VLAN_MODE _IOWR(IPA_IOC_MAGIC, IPA_IOCTL_GET_VLAN_MODE, struct ipa_ioc_get_vlan_mode *)
-#define TETH_BRIDGE_IOC_MAGIC 0xCE
-#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
-#define TETH_BRIDGE_IOCTL_MAX 4
-enum teth_link_protocol_type {
- TETH_LINK_PROTOCOL_IP,
- TETH_LINK_PROTOCOL_ETHERNET,
- TETH_LINK_PROTOCOL_MAX,
-};
-enum teth_aggr_protocol_type {
- TETH_AGGR_PROTOCOL_NONE,
- TETH_AGGR_PROTOCOL_MBIM,
- TETH_AGGR_PROTOCOL_TLP,
- TETH_AGGR_PROTOCOL_MAX,
-};
-struct teth_aggr_params_link {
- enum teth_aggr_protocol_type aggr_prot;
- uint32_t max_transfer_size_byte;
- uint32_t max_datagrams;
-};
-struct teth_aggr_params {
- struct teth_aggr_params_link ul;
- struct teth_aggr_params_link dl;
-};
-struct teth_aggr_capabilities {
- uint16_t num_protocols;
- struct teth_aggr_params_link prot_caps[0];
-};
-struct teth_ioc_set_bridge_mode {
- enum teth_link_protocol_type link_protocol;
- uint16_t lcid;
-};
-struct teth_ioc_aggr_params {
- struct teth_aggr_params aggr_params;
- uint16_t lcid;
-};
-#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 *)
-#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
-#define ODU_BRIDGE_IOCTL_MAX 2
-enum odu_bridge_mode {
- ODU_BRIDGE_MODE_ROUTER,
- ODU_BRIDGE_MODE_BRIDGE,
- 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 *)
-#endif
-
diff --git a/sdm710/kernel-headers/linux/msm_kgsl.h b/sdm710/kernel-headers/linux/msm_kgsl.h
deleted file mode 100644
index c88e9a9b..00000000
--- a/sdm710/kernel-headers/linux/msm_kgsl.h
+++ /dev/null
@@ -1,773 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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>
-#define KGSL_VERSION_MAJOR 3
-#define KGSL_VERSION_MINOR 14
-#define KGSL_CONTEXT_SAVE_GMEM 0x00000001
-#define KGSL_CONTEXT_NO_GMEM_ALLOC 0x00000002
-#define KGSL_CONTEXT_SUBMIT_IB_LIST 0x00000004
-#define KGSL_CONTEXT_CTX_SWITCH 0x00000008
-#define KGSL_CONTEXT_PREAMBLE 0x00000010
-#define KGSL_CONTEXT_TRASH_STATE 0x00000020
-#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
-#define KGSL_CONTEXT_SYNC 0x00000400
-#define KGSL_CONTEXT_PWR_CONSTRAINT 0x00000800
-#define KGSL_CONTEXT_PRIORITY_MASK 0x0000F000
-#define KGSL_CONTEXT_PRIORITY_SHIFT 12
-#define KGSL_CONTEXT_PRIORITY_UNDEF 0
-#define KGSL_CONTEXT_IFH_NOP 0x00010000
-#define KGSL_CONTEXT_SECURE 0x00020000
-#define KGSL_CONTEXT_NO_SNAPSHOT 0x00040000
-#define KGSL_CONTEXT_SPARSE 0x00080000
-#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
-#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
-#define KGSL_CONTEXT_TYPE_GL 1
-#define KGSL_CONTEXT_TYPE_CL 2
-#define KGSL_CONTEXT_TYPE_C2D 3
-#define KGSL_CONTEXT_TYPE_RS 4
-#define KGSL_CONTEXT_TYPE_UNKNOWN 0x1E
-#define KGSL_CONTEXT_INVALIDATE_ON_FAULT 0x10000000
-#define KGSL_CONTEXT_INVALID 0xffffffff
-#define KGSL_CMDBATCH_MEMLIST 0x00000001
-#define KGSL_CMDBATCH_MARKER 0x00000002
-#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
-#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_CMDBATCH_SPARSE 0x1000
-#define KGSL_CMDLIST_IB 0x00000001U
-#define KGSL_CMDLIST_CTXTSWITCH_PREAMBLE 0x00000002U
-#define KGSL_CMDLIST_IB_PREAMBLE 0x00000004U
-#define KGSL_OBJLIST_MEMOBJ 0x00000008U
-#define KGSL_OBJLIST_PROFILE 0x00000010U
-#define KGSL_CMD_SYNCPOINT_TYPE_TIMESTAMP 0
-#define KGSL_CMD_SYNCPOINT_TYPE_FENCE 1
-#define KGSL_MEMFLAGS_SECURE 0x00000008ULL
-#define KGSL_MEMFLAGS_GPUREADONLY 0x01000000U
-#define KGSL_MEMFLAGS_GPUWRITEONLY 0x02000000U
-#define KGSL_MEMFLAGS_FORCE_32BIT 0x100000000ULL
-#define KGSL_SPARSE_BIND_MULTIPLE_TO_PHYS 0x400000000ULL
-#define KGSL_SPARSE_BIND 0x1ULL
-#define KGSL_SPARSE_UNBIND 0x2ULL
-#define KGSL_CACHEMODE_MASK 0x0C000000U
-#define KGSL_CACHEMODE_SHIFT 26
-#define KGSL_CACHEMODE_WRITECOMBINE 0
-#define KGSL_CACHEMODE_UNCACHED 1
-#define KGSL_CACHEMODE_WRITETHROUGH 2
-#define KGSL_CACHEMODE_WRITEBACK 3
-#define KGSL_MEMFLAGS_USE_CPU_MAP 0x10000000ULL
-#define KGSL_MEMFLAGS_SPARSE_PHYS 0x20000000ULL
-#define KGSL_MEMFLAGS_SPARSE_VIRT 0x40000000ULL
-#define KGSL_MEMFLAGS_IOCOHERENT 0x80000000ULL
-#define KGSL_MEMTYPE_MASK 0x0000FF00
-#define KGSL_MEMTYPE_SHIFT 8
-#define KGSL_MEMTYPE_OBJECTANY 0
-#define KGSL_MEMTYPE_FRAMEBUFFER 1
-#define KGSL_MEMTYPE_RENDERBUFFER 2
-#define KGSL_MEMTYPE_ARRAYBUFFER 3
-#define KGSL_MEMTYPE_ELEMENTARRAYBUFFER 4
-#define KGSL_MEMTYPE_VERTEXARRAYBUFFER 5
-#define KGSL_MEMTYPE_TEXTURE 6
-#define KGSL_MEMTYPE_SURFACE 7
-#define KGSL_MEMTYPE_EGL_SURFACE 8
-#define KGSL_MEMTYPE_GL 9
-#define KGSL_MEMTYPE_CL 10
-#define KGSL_MEMTYPE_CL_BUFFER_MAP 11
-#define KGSL_MEMTYPE_CL_BUFFER_NOMAP 12
-#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
-#define KGSL_MEMTYPE_2D 17
-#define KGSL_MEMTYPE_EGL_IMAGE 18
-#define KGSL_MEMTYPE_EGL_SHADOW 19
-#define KGSL_MEMTYPE_MULTISAMPLE 20
-#define KGSL_MEMTYPE_KERNEL 255
-#define KGSL_MEMALIGN_MASK 0x00FF0000
-#define KGSL_MEMALIGN_SHIFT 16
-enum kgsl_user_mem_type {
- KGSL_USER_MEM_TYPE_PMEM = 0x00000000,
- KGSL_USER_MEM_TYPE_ASHMEM = 0x00000001,
- KGSL_USER_MEM_TYPE_ADDR = 0x00000002,
- KGSL_USER_MEM_TYPE_ION = 0x00000003,
- KGSL_USER_MEM_TYPE_DMABUF = 0x00000003,
- KGSL_USER_MEM_TYPE_MAX = 0x00000007,
-};
-#define KGSL_MEMFLAGS_USERMEM_MASK 0x000000e0
-#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)
-#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
-#define KGSL_FLAGS_SAFEMODE 0x00000001
-#define KGSL_FLAGS_INITIALIZED0 0x00000002
-#define KGSL_FLAGS_INITIALIZED 0x00000004
-#define KGSL_FLAGS_STARTED 0x00000008
-#define KGSL_FLAGS_ACTIVE 0x00000010
-#define KGSL_FLAGS_RESERVED0 0x00000020
-#define KGSL_FLAGS_RESERVED1 0x00000040
-#define KGSL_FLAGS_RESERVED2 0x00000080
-#define KGSL_FLAGS_SOFT_RESET 0x00000100
-#define KGSL_FLAGS_PER_CONTEXT_TIMESTAMPS 0x00000200
-#define KGSL_SYNCOBJ_SERVER_TIMEOUT 2000
-#define KGSL_UBWC_NONE 0
-#define KGSL_UBWC_1_0 1
-#define KGSL_UBWC_2_0 2
-#define KGSL_UBWC_3_0 3
-enum kgsl_ctx_reset_stat {
- 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
-};
-#define KGSL_CONVERT_TO_MBPS(val) (val * 1000 * 1000U)
-enum kgsl_deviceid {
- KGSL_DEVICE_3D0 = 0x00000000,
- KGSL_DEVICE_MAX
-};
-struct kgsl_devinfo {
- unsigned int device_id;
- unsigned int chip_id;
- unsigned int mmu_enabled;
- unsigned long gmem_gpubaseaddr;
- unsigned int gpu_id;
- size_t gmem_sizebytes;
-};
-struct kgsl_devmemstore {
- __volatile__ unsigned int soptimestamp;
- unsigned int sbz;
- __volatile__ unsigned int eoptimestamp;
- unsigned int sbz2;
- __volatile__ unsigned int preempted;
- unsigned int sbz3;
- __volatile__ unsigned int ref_wait_ts;
- unsigned int sbz4;
- unsigned int current_context;
- 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 {
- KGSL_TIMESTAMP_CONSUMED = 0x00000001,
- KGSL_TIMESTAMP_RETIRED = 0x00000002,
- KGSL_TIMESTAMP_QUEUED = 0x00000003,
-};
-#define KGSL_PROP_DEVICE_INFO 0x1
-#define KGSL_PROP_DEVICE_SHADOW 0x2
-#define KGSL_PROP_DEVICE_POWER 0x3
-#define KGSL_PROP_SHMEM 0x4
-#define KGSL_PROP_SHMEM_APERTURES 0x5
-#define KGSL_PROP_MMU_ENABLE 0x6
-#define KGSL_PROP_INTERRUPT_WAITS 0x7
-#define KGSL_PROP_VERSION 0x8
-#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
-#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
-#define KGSL_PROP_DEVICE_BITNESS 0x18
-#define KGSL_PROP_DEVICE_QDSS_STM 0x19
-#define KGSL_PROP_MIN_ACCESS_LENGTH 0x1A
-#define KGSL_PROP_UBWC_MODE 0x1B
-#define KGSL_PROP_DEVICE_QTIMER 0x20
-#define KGSL_PROP_L3_PWR_CONSTRAINT 0x22
-struct kgsl_shadowprop {
- unsigned long gpuaddr;
- size_t size;
- unsigned int flags;
-};
-struct kgsl_qdss_stm_prop {
- uint64_t gpuaddr;
- uint64_t size;
-};
-struct kgsl_qtimer_prop {
- uint64_t gpuaddr;
- uint64_t size;
-};
-struct kgsl_version {
- unsigned int drv_major;
- unsigned int drv_minor;
- unsigned int dev_major;
- unsigned int dev_minor;
-};
-struct kgsl_sp_generic_mem {
- uint64_t local;
- uint64_t pvt;
-};
-struct kgsl_ucode_version {
- unsigned int pfp;
- unsigned int pm4;
-};
-struct kgsl_gpmu_version {
- unsigned int major;
- unsigned int minor;
- unsigned int features;
-};
-#define KGSL_PERFCOUNTER_GROUP_CP 0x0
-#define KGSL_PERFCOUNTER_GROUP_RBBM 0x1
-#define KGSL_PERFCOUNTER_GROUP_PC 0x2
-#define KGSL_PERFCOUNTER_GROUP_VFD 0x3
-#define KGSL_PERFCOUNTER_GROUP_HLSQ 0x4
-#define KGSL_PERFCOUNTER_GROUP_VPC 0x5
-#define KGSL_PERFCOUNTER_GROUP_TSE 0x6
-#define KGSL_PERFCOUNTER_GROUP_RAS 0x7
-#define KGSL_PERFCOUNTER_GROUP_UCHE 0x8
-#define KGSL_PERFCOUNTER_GROUP_TP 0x9
-#define KGSL_PERFCOUNTER_GROUP_SP 0xA
-#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
-#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
-#define KGSL_PERFCOUNTER_GROUP_TCF 0x13
-#define KGSL_PERFCOUNTER_GROUP_TCM 0x14
-#define KGSL_PERFCOUNTER_GROUP_TCR 0x15
-#define KGSL_PERFCOUNTER_GROUP_L2 0x16
-#define KGSL_PERFCOUNTER_GROUP_VSC 0x17
-#define KGSL_PERFCOUNTER_GROUP_CCU 0x18
-#define KGSL_PERFCOUNTER_GROUP_LRZ 0x19
-#define KGSL_PERFCOUNTER_GROUP_CMP 0x1A
-#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
-#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
-#define KGSL_PERFCOUNTER_GROUP_ALWAYSON_PWR 0x23
-#define KGSL_PERFCOUNTER_GROUP_MAX 0x24
-#define KGSL_PERFCOUNTER_NOT_USED 0xFFFFFFFF
-#define KGSL_PERFCOUNTER_BROKEN 0xFFFFFFFE
-struct kgsl_ibdesc {
- unsigned long gpuaddr;
- unsigned long __pad;
- size_t sizedwords;
- unsigned int ctrl;
-};
-struct kgsl_cmdbatch_profiling_buffer {
- uint64_t wall_clock_s;
- uint64_t wall_clock_ns;
- uint64_t gpu_ticks_queued;
- uint64_t gpu_ticks_submitted;
- uint64_t gpu_ticks_retired;
-};
-#define KGSL_IOC_TYPE 0x09
-struct kgsl_device_getproperty {
- unsigned int type;
- void * value;
- size_t sizebytes;
-};
-#define IOCTL_KGSL_DEVICE_GETPROPERTY _IOWR(KGSL_IOC_TYPE, 0x2, struct kgsl_device_getproperty)
-struct kgsl_device_waittimestamp {
- unsigned int timestamp;
- unsigned int timeout;
-};
-#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;
- unsigned int timeout;
-};
-#define IOCTL_KGSL_DEVICE_WAITTIMESTAMP_CTXTID _IOW(KGSL_IOC_TYPE, 0x7, struct kgsl_device_waittimestamp_ctxtid)
-struct kgsl_ringbuffer_issueibcmds {
- unsigned int drawctxt_id;
- unsigned long ibdesc_addr;
- unsigned int numibs;
- unsigned int timestamp;
- unsigned int flags;
-};
-#define IOCTL_KGSL_RINGBUFFER_ISSUEIBCMDS _IOWR(KGSL_IOC_TYPE, 0x10, struct kgsl_ringbuffer_issueibcmds)
-struct kgsl_cmdstream_readtimestamp {
- unsigned int type;
- unsigned int timestamp;
-};
-#define IOCTL_KGSL_CMDSTREAM_READTIMESTAMP_OLD _IOR(KGSL_IOC_TYPE, 0x11, struct kgsl_cmdstream_readtimestamp)
-#define IOCTL_KGSL_CMDSTREAM_READTIMESTAMP _IOWR(KGSL_IOC_TYPE, 0x11, struct kgsl_cmdstream_readtimestamp)
-struct kgsl_cmdstream_freememontimestamp {
- unsigned long gpuaddr;
- unsigned int type;
- 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)
-struct kgsl_drawctxt_create {
- unsigned int flags;
- unsigned int drawctxt_id;
-};
-#define IOCTL_KGSL_DRAWCTXT_CREATE _IOWR(KGSL_IOC_TYPE, 0x13, struct kgsl_drawctxt_create)
-struct kgsl_drawctxt_destroy {
- unsigned int drawctxt_id;
-};
-#define IOCTL_KGSL_DRAWCTXT_DESTROY _IOW(KGSL_IOC_TYPE, 0x14, struct kgsl_drawctxt_destroy)
-struct kgsl_map_user_mem {
- int fd;
- unsigned long gpuaddr;
- size_t len;
- size_t offset;
- unsigned long hostptr;
- enum kgsl_user_mem_type memtype;
- unsigned int flags;
-};
-#define IOCTL_KGSL_MAP_USER_MEM _IOWR(KGSL_IOC_TYPE, 0x15, struct kgsl_map_user_mem)
-struct kgsl_cmdstream_readtimestamp_ctxtid {
- unsigned int context_id;
- unsigned int type;
- unsigned int timestamp;
-};
-#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;
- unsigned int type;
- unsigned int timestamp;
-};
-#define IOCTL_KGSL_CMDSTREAM_FREEMEMONTIMESTAMP_CTXTID _IOW(KGSL_IOC_TYPE, 0x17, struct kgsl_cmdstream_freememontimestamp_ctxtid)
-struct kgsl_sharedmem_from_pmem {
- int pmem_fd;
- unsigned long gpuaddr;
- unsigned int len;
- unsigned int offset;
-};
-#define IOCTL_KGSL_SHAREDMEM_FROM_PMEM _IOWR(KGSL_IOC_TYPE, 0x20, struct kgsl_sharedmem_from_pmem)
-struct kgsl_sharedmem_free {
- unsigned long gpuaddr;
-};
-#define IOCTL_KGSL_SHAREDMEM_FREE _IOW(KGSL_IOC_TYPE, 0x21, struct kgsl_sharedmem_free)
-struct kgsl_cff_user_event {
- unsigned char cff_opcode;
- unsigned int op1;
- unsigned int op2;
- unsigned int op3;
- unsigned int op4;
- unsigned int op5;
- unsigned int __pad[2];
-};
-#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;
- unsigned int width;
- unsigned int height;
- unsigned int pitch;
-};
-struct kgsl_buffer_desc {
- void * hostptr;
- unsigned long gpuaddr;
- int size;
- unsigned int format;
- unsigned int pitch;
- unsigned int enabled;
-};
-struct kgsl_bind_gmem_shadow {
- unsigned int drawctxt_id;
- struct kgsl_gmem_desc gmem_desc;
- unsigned int shadow_x;
- unsigned int shadow_y;
- struct kgsl_buffer_desc shadow_buffer;
- unsigned int buffer_id;
-};
-#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;
- 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)
-struct kgsl_drawctxt_set_bin_base_offset {
- unsigned int drawctxt_id;
- unsigned int offset;
-};
-#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,
- KGSL_CMDWINDOW_3D = 0x00000001,
- KGSL_CMDWINDOW_MMU = 0x00000002,
- KGSL_CMDWINDOW_ARBITER = 0x000000FF,
- KGSL_CMDWINDOW_MAX = 0x000000FF,
-};
-struct kgsl_cmdwindow_write {
- enum kgsl_cmdwindow_type target;
- unsigned int addr;
- unsigned int data;
-};
-#define IOCTL_KGSL_CMDWINDOW_WRITE _IOW(KGSL_IOC_TYPE, 0x2e, struct kgsl_cmdwindow_write)
-struct kgsl_gpumem_alloc {
- unsigned long gpuaddr;
- size_t size;
- unsigned int flags;
-};
-#define IOCTL_KGSL_GPUMEM_ALLOC _IOWR(KGSL_IOC_TYPE, 0x2f, struct kgsl_gpumem_alloc)
-struct kgsl_cff_syncmem {
- unsigned long gpuaddr;
- size_t len;
- unsigned int __pad[2];
-};
-#define IOCTL_KGSL_CFF_SYNCMEM _IOW(KGSL_IOC_TYPE, 0x30, struct kgsl_cff_syncmem)
-struct kgsl_timestamp_event {
- int type;
- unsigned int timestamp;
- unsigned int context_id;
- void * priv;
- size_t len;
-};
-#define IOCTL_KGSL_TIMESTAMP_EVENT_OLD _IOW(KGSL_IOC_TYPE, 0x31, struct kgsl_timestamp_event)
-#define KGSL_TIMESTAMP_EVENT_GENLOCK 1
-struct kgsl_timestamp_event_genlock {
- int handle;
-};
-#define KGSL_TIMESTAMP_EVENT_FENCE 2
-struct kgsl_timestamp_event_fence {
- int fence_fd;
-};
-#define IOCTL_KGSL_SETPROPERTY _IOW(KGSL_IOC_TYPE, 0x32, struct kgsl_device_getproperty)
-#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;
- size_t size;
- size_t mmapsize;
- unsigned long gpuaddr;
- unsigned long __pad[2];
-};
-#define IOCTL_KGSL_GPUMEM_ALLOC_ID _IOWR(KGSL_IOC_TYPE, 0x34, struct kgsl_gpumem_alloc_id)
-struct kgsl_gpumem_free_id {
- unsigned int id;
- unsigned int __pad;
-};
-#define IOCTL_KGSL_GPUMEM_FREE_ID _IOWR(KGSL_IOC_TYPE, 0x35, struct kgsl_gpumem_free_id)
-struct kgsl_gpumem_get_info {
- unsigned long gpuaddr;
- unsigned int id;
- unsigned int flags;
- size_t size;
- size_t mmapsize;
- unsigned long useraddr;
- unsigned long __pad[4];
-};
-#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;
- unsigned int op;
- size_t offset;
- size_t length;
-};
-#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
-#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 {
- unsigned int groupid;
- unsigned int countable;
- unsigned int offset;
- unsigned int offset_hi;
- unsigned int __pad;
-};
-#define IOCTL_KGSL_PERFCOUNTER_GET _IOWR(KGSL_IOC_TYPE, 0x38, struct kgsl_perfcounter_get)
-struct kgsl_perfcounter_put {
- unsigned int groupid;
- unsigned int countable;
- unsigned int __pad[2];
-};
-#define IOCTL_KGSL_PERFCOUNTER_PUT _IOW(KGSL_IOC_TYPE, 0x39, struct kgsl_perfcounter_put)
-struct kgsl_perfcounter_query {
- unsigned int groupid;
- unsigned int * countables;
- unsigned int count;
- unsigned int max_counters;
- unsigned int __pad[2];
-};
-#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;
- unsigned long long value;
-};
-struct kgsl_perfcounter_read {
- struct kgsl_perfcounter_read_group * reads;
- unsigned int count;
- unsigned int __pad[2];
-};
-#define IOCTL_KGSL_PERFCOUNTER_READ _IOWR(KGSL_IOC_TYPE, 0x3B, struct kgsl_perfcounter_read)
-struct kgsl_gpumem_sync_cache_bulk {
- unsigned int * id_list;
- unsigned int count;
- unsigned int op;
- 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 {
- unsigned int context_id;
- unsigned int timestamp;
-};
-struct kgsl_cmd_syncpoint_fence {
- int fd;
-};
-struct kgsl_cmd_syncpoint {
- int type;
- void * priv;
- size_t size;
-};
-#define KGSL_IBDESC_MEMLIST 0x1
-#define KGSL_IBDESC_PROFILING_BUFFER 0x2
-struct kgsl_submit_commands {
- unsigned int context_id;
- unsigned int flags;
- struct kgsl_ibdesc * cmdlist;
- unsigned int numcmds;
- struct kgsl_cmd_syncpoint * synclist;
- unsigned int numsyncs;
- unsigned int timestamp;
- unsigned int __pad[4];
-};
-#define IOCTL_KGSL_SUBMIT_COMMANDS _IOWR(KGSL_IOC_TYPE, 0x3D, struct kgsl_submit_commands)
-struct kgsl_device_constraint {
- unsigned int type;
- unsigned int context_id;
- void * data;
- size_t size;
-};
-#define KGSL_CONSTRAINT_NONE 0
-#define KGSL_CONSTRAINT_PWRLEVEL 1
-#define KGSL_CONSTRAINT_L3_NONE 2
-#define KGSL_CONSTRAINT_L3_PWRLEVEL 3
-#define KGSL_CONSTRAINT_PWR_MIN 0
-#define KGSL_CONSTRAINT_PWR_MAX 1
-#define KGSL_CONSTRAINT_L3_PWR_MED 0
-#define KGSL_CONSTRAINT_L3_PWR_MAX 1
-struct kgsl_device_constraint_pwrlevel {
- unsigned int level;
-};
-struct kgsl_syncsource_create {
- unsigned int id;
- unsigned int __pad[3];
-};
-#define IOCTL_KGSL_SYNCSOURCE_CREATE _IOWR(KGSL_IOC_TYPE, 0x40, struct kgsl_syncsource_create)
-struct kgsl_syncsource_destroy {
- unsigned int id;
- unsigned int __pad[3];
-};
-#define IOCTL_KGSL_SYNCSOURCE_DESTROY _IOWR(KGSL_IOC_TYPE, 0x41, struct kgsl_syncsource_destroy)
-struct kgsl_syncsource_create_fence {
- unsigned int id;
- int fence_fd;
- unsigned int __pad[4];
-};
-#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;
- 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 {
- uint64_t offset;
- uint64_t length;
- unsigned int id;
-};
-#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;
- uint64_t va_len;
- uint64_t mmapsize;
- unsigned int id;
- unsigned int metadata_len;
- uint64_t metadata;
-};
-#define KGSL_GPUOBJ_ALLOC_METADATA_MAX 64
-#define IOCTL_KGSL_GPUOBJ_ALLOC _IOWR(KGSL_IOC_TYPE, 0x45, struct kgsl_gpuobj_alloc)
-struct kgsl_gpuobj_free {
- uint64_t flags;
- uint64_t priv;
- unsigned int id;
- unsigned int type;
- unsigned int len;
-};
-#define KGSL_GPUOBJ_FREE_ON_EVENT 1
-#define KGSL_GPU_EVENT_TIMESTAMP 1
-#define KGSL_GPU_EVENT_FENCE 2
-struct kgsl_gpu_event_timestamp {
- unsigned int context_id;
- unsigned int timestamp;
-};
-struct kgsl_gpu_event_fence {
- int fd;
-};
-#define IOCTL_KGSL_GPUOBJ_FREE _IOW(KGSL_IOC_TYPE, 0x46, struct kgsl_gpuobj_free)
-struct kgsl_gpuobj_info {
- uint64_t gpuaddr;
- uint64_t flags;
- uint64_t size;
- uint64_t va_len;
- uint64_t va_addr;
- unsigned int id;
-};
-#define IOCTL_KGSL_GPUOBJ_INFO _IOWR(KGSL_IOC_TYPE, 0x47, struct kgsl_gpuobj_info)
-struct kgsl_gpuobj_import {
- uint64_t priv;
- uint64_t priv_len;
- uint64_t flags;
- unsigned int type;
- unsigned int id;
-};
-struct kgsl_gpuobj_import_dma_buf {
- int fd;
-};
-struct kgsl_gpuobj_import_useraddr {
- uint64_t virtaddr;
-};
-#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;
- unsigned int id;
- unsigned int op;
-};
-struct kgsl_gpuobj_sync {
- uint64_t objs;
- unsigned int obj_len;
- unsigned int count;
-};
-#define IOCTL_KGSL_GPUOBJ_SYNC _IOW(KGSL_IOC_TYPE, 0x49, struct kgsl_gpuobj_sync)
-struct kgsl_command_object {
- uint64_t offset;
- uint64_t gpuaddr;
- uint64_t size;
- unsigned int flags;
- unsigned int id;
-};
-struct kgsl_command_syncpoint {
- uint64_t priv;
- uint64_t size;
- unsigned int type;
-};
-struct kgsl_gpu_command {
- uint64_t flags;
- uint64_t cmdlist;
- unsigned int cmdsize;
- unsigned int numcmds;
- uint64_t objlist;
- unsigned int objsize;
- unsigned int numobjs;
- uint64_t synclist;
- unsigned int syncsize;
- unsigned int numsyncs;
- unsigned int context_id;
- unsigned int timestamp;
-};
-#define IOCTL_KGSL_GPU_COMMAND _IOWR(KGSL_IOC_TYPE, 0x4A, struct kgsl_gpu_command)
-struct kgsl_preemption_counters_query {
- uint64_t counters;
- unsigned int size_user;
- unsigned int size_priority_level;
- 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)
-#define KGSL_GPUOBJ_SET_INFO_TYPE (1 << 1)
-struct kgsl_gpuobj_set_info {
- uint64_t flags;
- uint64_t metadata;
- unsigned int id;
- unsigned int metadata_len;
- unsigned int type;
-};
-#define IOCTL_KGSL_GPUOBJ_SET_INFO _IOW(KGSL_IOC_TYPE, 0x4C, struct kgsl_gpuobj_set_info)
-struct kgsl_sparse_phys_alloc {
- uint64_t size;
- uint64_t pagesize;
- uint64_t flags;
- unsigned int id;
-};
-#define IOCTL_KGSL_SPARSE_PHYS_ALLOC _IOWR(KGSL_IOC_TYPE, 0x50, struct kgsl_sparse_phys_alloc)
-struct kgsl_sparse_phys_free {
- unsigned int id;
-};
-#define IOCTL_KGSL_SPARSE_PHYS_FREE _IOW(KGSL_IOC_TYPE, 0x51, struct kgsl_sparse_phys_free)
-struct kgsl_sparse_virt_alloc {
- uint64_t size;
- uint64_t pagesize;
- uint64_t flags;
- uint64_t gpuaddr;
- unsigned int id;
-};
-#define IOCTL_KGSL_SPARSE_VIRT_ALLOC _IOWR(KGSL_IOC_TYPE, 0x52, struct kgsl_sparse_virt_alloc)
-struct kgsl_sparse_virt_free {
- unsigned int id;
-};
-#define IOCTL_KGSL_SPARSE_VIRT_FREE _IOW(KGSL_IOC_TYPE, 0x53, struct kgsl_sparse_virt_free)
-struct kgsl_sparse_binding_object {
- uint64_t virtoffset;
- uint64_t physoffset;
- uint64_t size;
- uint64_t flags;
- unsigned int id;
-};
-struct kgsl_sparse_bind {
- uint64_t list;
- unsigned int id;
- unsigned int size;
- unsigned int count;
-};
-#define IOCTL_KGSL_SPARSE_BIND _IOW(KGSL_IOC_TYPE, 0x54, struct kgsl_sparse_bind)
-struct kgsl_gpu_sparse_command {
- uint64_t flags;
- uint64_t sparselist;
- uint64_t synclist;
- unsigned int sparsesize;
- unsigned int numsparse;
- unsigned int syncsize;
- unsigned int numsyncs;
- unsigned int context_id;
- unsigned int timestamp;
- unsigned int id;
-};
-#define IOCTL_KGSL_GPU_SPARSE_COMMAND _IOWR(KGSL_IOC_TYPE, 0x55, struct kgsl_gpu_sparse_command)
-#endif
-
diff --git a/sdm710/kernel-headers/linux/msm_mdp.h b/sdm710/kernel-headers/linux/msm_mdp.h
deleted file mode 100644
index a7d21135..00000000
--- a/sdm710/kernel-headers/linux/msm_mdp.h
+++ /dev/null
@@ -1,1150 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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_H_
-#define _MSM_MDP_H_
-#include <stdint.h>
-#include <linux/fb.h>
-#define MSMFB_IOCTL_MAGIC 'm'
-#define MSMFB_GRP_DISP _IOW(MSMFB_IOCTL_MAGIC, 1, unsigned int)
-#define MSMFB_BLIT _IOW(MSMFB_IOCTL_MAGIC, 2, unsigned int)
-#define MSMFB_SUSPEND_SW_REFRESHER _IOW(MSMFB_IOCTL_MAGIC, 128, unsigned int)
-#define MSMFB_RESUME_SW_REFRESHER _IOW(MSMFB_IOCTL_MAGIC, 129, unsigned int)
-#define MSMFB_CURSOR _IOW(MSMFB_IOCTL_MAGIC, 130, struct fb_cursor)
-#define MSMFB_SET_LUT _IOW(MSMFB_IOCTL_MAGIC, 131, struct fb_cmap)
-#define MSMFB_HISTOGRAM _IOWR(MSMFB_IOCTL_MAGIC, 132, struct mdp_histogram_data)
-#define MSMFB_GET_CCS_MATRIX _IOWR(MSMFB_IOCTL_MAGIC, 133, struct mdp_ccs)
-#define MSMFB_SET_CCS_MATRIX _IOW(MSMFB_IOCTL_MAGIC, 134, struct mdp_ccs)
-#define MSMFB_OVERLAY_SET _IOWR(MSMFB_IOCTL_MAGIC, 135, struct mdp_overlay)
-#define MSMFB_OVERLAY_UNSET _IOW(MSMFB_IOCTL_MAGIC, 136, unsigned int)
-#define MSMFB_OVERLAY_PLAY _IOW(MSMFB_IOCTL_MAGIC, 137, struct msmfb_overlay_data)
-#define MSMFB_OVERLAY_QUEUE MSMFB_OVERLAY_PLAY
-#define MSMFB_GET_PAGE_PROTECTION _IOR(MSMFB_IOCTL_MAGIC, 138, struct mdp_page_protection)
-#define MSMFB_SET_PAGE_PROTECTION _IOW(MSMFB_IOCTL_MAGIC, 139, struct mdp_page_protection)
-#define MSMFB_OVERLAY_GET _IOR(MSMFB_IOCTL_MAGIC, 140, struct mdp_overlay)
-#define MSMFB_OVERLAY_PLAY_ENABLE _IOW(MSMFB_IOCTL_MAGIC, 141, unsigned int)
-#define MSMFB_OVERLAY_BLT _IOWR(MSMFB_IOCTL_MAGIC, 142, struct msmfb_overlay_blt)
-#define MSMFB_OVERLAY_BLT_OFFSET _IOW(MSMFB_IOCTL_MAGIC, 143, unsigned int)
-#define MSMFB_HISTOGRAM_START _IOR(MSMFB_IOCTL_MAGIC, 144, struct mdp_histogram_start_req)
-#define MSMFB_HISTOGRAM_STOP _IOR(MSMFB_IOCTL_MAGIC, 145, unsigned int)
-#define MSMFB_NOTIFY_UPDATE _IOWR(MSMFB_IOCTL_MAGIC, 146, unsigned int)
-#define MSMFB_OVERLAY_3D _IOWR(MSMFB_IOCTL_MAGIC, 147, struct msmfb_overlay_3d)
-#define MSMFB_MIXER_INFO _IOWR(MSMFB_IOCTL_MAGIC, 148, struct msmfb_mixer_info_req)
-#define MSMFB_OVERLAY_PLAY_WAIT _IOWR(MSMFB_IOCTL_MAGIC, 149, struct msmfb_overlay_data)
-#define MSMFB_WRITEBACK_INIT _IO(MSMFB_IOCTL_MAGIC, 150)
-#define MSMFB_WRITEBACK_START _IO(MSMFB_IOCTL_MAGIC, 151)
-#define MSMFB_WRITEBACK_STOP _IO(MSMFB_IOCTL_MAGIC, 152)
-#define MSMFB_WRITEBACK_QUEUE_BUFFER _IOW(MSMFB_IOCTL_MAGIC, 153, struct msmfb_data)
-#define MSMFB_WRITEBACK_DEQUEUE_BUFFER _IOW(MSMFB_IOCTL_MAGIC, 154, struct msmfb_data)
-#define MSMFB_WRITEBACK_TERMINATE _IO(MSMFB_IOCTL_MAGIC, 155)
-#define MSMFB_MDP_PP _IOWR(MSMFB_IOCTL_MAGIC, 156, struct msmfb_mdp_pp)
-#define MSMFB_OVERLAY_VSYNC_CTRL _IOW(MSMFB_IOCTL_MAGIC, 160, unsigned int)
-#define MSMFB_VSYNC_CTRL _IOW(MSMFB_IOCTL_MAGIC, 161, unsigned int)
-#define MSMFB_BUFFER_SYNC _IOW(MSMFB_IOCTL_MAGIC, 162, struct mdp_buf_sync)
-#define MSMFB_OVERLAY_COMMIT _IO(MSMFB_IOCTL_MAGIC, 163)
-#define MSMFB_DISPLAY_COMMIT _IOW(MSMFB_IOCTL_MAGIC, 164, struct mdp_display_commit)
-#define MSMFB_METADATA_SET _IOW(MSMFB_IOCTL_MAGIC, 165, struct msmfb_metadata)
-#define MSMFB_METADATA_GET _IOW(MSMFB_IOCTL_MAGIC, 166, struct msmfb_metadata)
-#define MSMFB_WRITEBACK_SET_MIRRORING_HINT _IOW(MSMFB_IOCTL_MAGIC, 167, unsigned int)
-#define MSMFB_ASYNC_BLIT _IOW(MSMFB_IOCTL_MAGIC, 168, unsigned int)
-#define MSMFB_OVERLAY_PREPARE _IOWR(MSMFB_IOCTL_MAGIC, 169, struct mdp_overlay_list)
-#define MSMFB_LPM_ENABLE _IOWR(MSMFB_IOCTL_MAGIC, 170, unsigned int)
-#define MSMFB_MDP_PP_GET_FEATURE_VERSION _IOWR(MSMFB_IOCTL_MAGIC, 171, struct mdp_pp_feature_version)
-#define FB_TYPE_3D_PANEL 0x10101010
-#define MDP_IMGTYPE2_START 0x10000
-#define MSMFB_DRIVER_VERSION 0xF9E8D701
-#define MDP_IMGTYPE_END 0x100
-#define MDSS_GET_MAJOR(rev) ((rev) >> 28)
-#define MDSS_GET_MINOR(rev) (((rev) >> 16) & 0xFFF)
-#define MDSS_GET_STEP(rev) ((rev) & 0xFFFF)
-#define MDSS_GET_MAJOR_MINOR(rev) ((rev) >> 16)
-#define IS_MDSS_MAJOR_MINOR_SAME(rev1,rev2) (MDSS_GET_MAJOR_MINOR((rev1)) == MDSS_GET_MAJOR_MINOR((rev2)))
-#define MDSS_MDP_REV(major,minor,step) ((((major) & 0x000F) << 28) | (((minor) & 0x0FFF) << 16) | ((step) & 0xFFFF))
-#define MDSS_MDP_HW_REV_100 MDSS_MDP_REV(1, 0, 0)
-#define MDSS_MDP_HW_REV_101 MDSS_MDP_REV(1, 1, 0)
-#define MDSS_MDP_HW_REV_101_1 MDSS_MDP_REV(1, 1, 1)
-#define MDSS_MDP_HW_REV_101_2 MDSS_MDP_REV(1, 1, 2)
-#define MDSS_MDP_HW_REV_102 MDSS_MDP_REV(1, 2, 0)
-#define MDSS_MDP_HW_REV_102_1 MDSS_MDP_REV(1, 2, 1)
-#define MDSS_MDP_HW_REV_103 MDSS_MDP_REV(1, 3, 0)
-#define MDSS_MDP_HW_REV_103_1 MDSS_MDP_REV(1, 3, 1)
-#define MDSS_MDP_HW_REV_105 MDSS_MDP_REV(1, 5, 0)
-#define MDSS_MDP_HW_REV_106 MDSS_MDP_REV(1, 6, 0)
-#define MDSS_MDP_HW_REV_107 MDSS_MDP_REV(1, 7, 0)
-#define MDSS_MDP_HW_REV_107_1 MDSS_MDP_REV(1, 7, 1)
-#define MDSS_MDP_HW_REV_107_2 MDSS_MDP_REV(1, 7, 2)
-#define MDSS_MDP_HW_REV_108 MDSS_MDP_REV(1, 8, 0)
-#define MDSS_MDP_HW_REV_109 MDSS_MDP_REV(1, 9, 0)
-#define MDSS_MDP_HW_REV_110 MDSS_MDP_REV(1, 10, 0)
-#define MDSS_MDP_HW_REV_200 MDSS_MDP_REV(2, 0, 0)
-#define MDSS_MDP_HW_REV_112 MDSS_MDP_REV(1, 12, 0)
-#define MDSS_MDP_HW_REV_114 MDSS_MDP_REV(1, 14, 0)
-#define MDSS_MDP_HW_REV_115 MDSS_MDP_REV(1, 15, 0)
-#define MDSS_MDP_HW_REV_116 MDSS_MDP_REV(1, 16, 0)
-#define MDSS_MDP_HW_REV_300 MDSS_MDP_REV(3, 0, 0)
-#define MDSS_MDP_HW_REV_301 MDSS_MDP_REV(3, 0, 1)
-enum {
- NOTIFY_UPDATE_INIT,
- NOTIFY_UPDATE_DEINIT,
- NOTIFY_UPDATE_START,
- NOTIFY_UPDATE_STOP,
- NOTIFY_UPDATE_POWER_OFF,
-};
-enum {
- NOTIFY_TYPE_NO_UPDATE,
- NOTIFY_TYPE_SUSPEND,
- NOTIFY_TYPE_UPDATE,
- NOTIFY_TYPE_BL_UPDATE,
- NOTIFY_TYPE_BL_AD_ATTEN_UPDATE,
-};
-enum {
- MDP_RGB_565,
- MDP_XRGB_8888,
- MDP_Y_CBCR_H2V2,
- MDP_Y_CBCR_H2V2_ADRENO,
- MDP_ARGB_8888,
- MDP_RGB_888,
- MDP_Y_CRCB_H2V2,
- MDP_YCRYCB_H2V1,
- MDP_CBYCRY_H2V1,
- MDP_Y_CRCB_H2V1,
- MDP_Y_CBCR_H2V1,
- MDP_Y_CRCB_H1V2,
- MDP_Y_CBCR_H1V2,
- MDP_RGBA_8888,
- MDP_BGRA_8888,
- MDP_RGBX_8888,
- MDP_Y_CRCB_H2V2_TILE,
- MDP_Y_CBCR_H2V2_TILE,
- MDP_Y_CR_CB_H2V2,
- MDP_Y_CR_CB_GH2V2,
- MDP_Y_CB_CR_H2V2,
- MDP_Y_CRCB_H1V1,
- MDP_Y_CBCR_H1V1,
- MDP_YCRCB_H1V1,
- MDP_YCBCR_H1V1,
- MDP_BGR_565,
- MDP_BGR_888,
- MDP_Y_CBCR_H2V2_VENUS,
- MDP_BGRX_8888,
- MDP_RGBA_8888_TILE,
- MDP_ARGB_8888_TILE,
- MDP_ABGR_8888_TILE,
- MDP_BGRA_8888_TILE,
- MDP_RGBX_8888_TILE,
- MDP_XRGB_8888_TILE,
- MDP_XBGR_8888_TILE,
- MDP_BGRX_8888_TILE,
- MDP_YCBYCR_H2V1,
- MDP_RGB_565_TILE,
- MDP_BGR_565_TILE,
- MDP_ARGB_1555,
- MDP_RGBA_5551,
- MDP_ARGB_4444,
- MDP_RGBA_4444,
- MDP_RGB_565_UBWC,
- MDP_RGBA_8888_UBWC,
- MDP_Y_CBCR_H2V2_UBWC,
- MDP_RGBX_8888_UBWC,
- MDP_Y_CRCB_H2V2_VENUS,
- MDP_IMGTYPE_LIMIT,
- MDP_RGB_BORDERFILL,
- MDP_XRGB_1555,
- MDP_RGBX_5551,
- MDP_XRGB_4444,
- MDP_RGBX_4444,
- MDP_ABGR_1555,
- MDP_BGRA_5551,
- MDP_XBGR_1555,
- MDP_BGRX_5551,
- MDP_ABGR_4444,
- MDP_BGRA_4444,
- MDP_XBGR_4444,
- MDP_BGRX_4444,
- MDP_ABGR_8888,
- MDP_XBGR_8888,
- MDP_RGBA_1010102,
- MDP_ARGB_2101010,
- MDP_RGBX_1010102,
- MDP_XRGB_2101010,
- MDP_BGRA_1010102,
- MDP_ABGR_2101010,
- MDP_BGRX_1010102,
- MDP_XBGR_2101010,
- MDP_RGBA_1010102_UBWC,
- MDP_RGBX_1010102_UBWC,
- MDP_Y_CBCR_H2V2_P010,
- MDP_Y_CBCR_H2V2_TP10_UBWC,
- MDP_CRYCBY_H2V1,
- MDP_IMGTYPE_LIMIT1 = MDP_IMGTYPE_END,
- MDP_FB_FORMAT = MDP_IMGTYPE2_START,
- MDP_IMGTYPE_LIMIT2
-};
-#define MDP_CRYCBY_H2V1 MDP_CRYCBY_H2V1
-enum {
- PMEM_IMG,
- FB_IMG,
-};
-enum {
- HSIC_HUE = 0,
- HSIC_SAT,
- HSIC_INT,
- HSIC_CON,
- NUM_HSIC_PARAM,
-};
-enum mdss_mdp_max_bw_mode {
- MDSS_MAX_BW_LIMIT_DEFAULT = 0x1,
- MDSS_MAX_BW_LIMIT_CAMERA = 0x2,
- MDSS_MAX_BW_LIMIT_HFLIP = 0x4,
- MDSS_MAX_BW_LIMIT_VFLIP = 0x8,
-};
-#define MDSS_MDP_ROT_ONLY 0x80
-#define MDSS_MDP_RIGHT_MIXER 0x100
-#define MDSS_MDP_DUAL_PIPE 0x200
-#define MDP_ROT_NOP 0
-#define MDP_FLIP_LR 0x1
-#define MDP_FLIP_UD 0x2
-#define MDP_ROT_90 0x4
-#define MDP_ROT_180 (MDP_FLIP_UD | MDP_FLIP_LR)
-#define MDP_ROT_270 (MDP_ROT_90 | MDP_FLIP_UD | MDP_FLIP_LR)
-#define MDP_DITHER 0x8
-#define MDP_BLUR 0x10
-#define MDP_BLEND_FG_PREMULT 0x20000
-#define MDP_IS_FG 0x40000
-#define MDP_SOLID_FILL 0x00000020
-#define MDP_VPU_PIPE 0x00000040
-#define MDP_DEINTERLACE 0x80000000
-#define MDP_SHARPENING 0x40000000
-#define MDP_NO_DMA_BARRIER_START 0x20000000
-#define MDP_NO_DMA_BARRIER_END 0x10000000
-#define MDP_NO_BLIT 0x08000000
-#define MDP_BLIT_WITH_DMA_BARRIERS 0x000
-#define MDP_BLIT_WITH_NO_DMA_BARRIERS (MDP_NO_DMA_BARRIER_START | MDP_NO_DMA_BARRIER_END)
-#define MDP_BLIT_SRC_GEM 0x04000000
-#define MDP_BLIT_DST_GEM 0x02000000
-#define MDP_BLIT_NON_CACHED 0x01000000
-#define MDP_OV_PIPE_SHARE 0x00800000
-#define MDP_DEINTERLACE_ODD 0x00400000
-#define MDP_OV_PLAY_NOWAIT 0x00200000
-#define MDP_SOURCE_ROTATED_90 0x00100000
-#define MDP_OVERLAY_PP_CFG_EN 0x00080000
-#define MDP_BACKEND_COMPOSITION 0x00040000
-#define MDP_BORDERFILL_SUPPORTED 0x00010000
-#define MDP_SECURE_OVERLAY_SESSION 0x00008000
-#define MDP_SECURE_DISPLAY_OVERLAY_SESSION 0x00002000
-#define MDP_OV_PIPE_FORCE_DMA 0x00004000
-#define MDP_MEMORY_ID_TYPE_FB 0x00001000
-#define MDP_BWC_EN 0x00000400
-#define MDP_DECIMATION_EN 0x00000800
-#define MDP_SMP_FORCE_ALLOC 0x00200000
-#define MDP_TRANSP_NOP 0xffffffff
-#define MDP_ALPHA_NOP 0xff
-#define MDP_FB_PAGE_PROTECTION_NONCACHED (0)
-#define MDP_FB_PAGE_PROTECTION_WRITECOMBINE (1)
-#define MDP_FB_PAGE_PROTECTION_WRITETHROUGHCACHE (2)
-#define MDP_FB_PAGE_PROTECTION_WRITEBACKCACHE (3)
-#define MDP_FB_PAGE_PROTECTION_WRITEBACKWACACHE (4)
-#define MDP_FB_PAGE_PROTECTION_INVALID (5)
-#define MDP_NUM_FB_PAGE_PROTECTION_VALUES (5)
-#define MDP_DEEP_COLOR_YUV444 0x1
-#define MDP_DEEP_COLOR_RGB30B 0x2
-#define MDP_DEEP_COLOR_RGB36B 0x4
-#define MDP_DEEP_COLOR_RGB48B 0x8
-struct mdp_rect {
- uint32_t x;
- uint32_t y;
- uint32_t w;
- uint32_t h;
-};
-struct mdp_img {
- uint32_t width;
- uint32_t height;
- uint32_t format;
- uint32_t offset;
- int memory_id;
- uint32_t priv;
-};
-struct mult_factor {
- uint32_t numer;
- uint32_t denom;
-};
-#define MDP_CCS_RGB2YUV 0
-#define MDP_CCS_YUV2RGB 1
-#define MDP_CCS_SIZE 9
-#define MDP_BV_SIZE 3
-struct mdp_ccs {
- int direction;
- uint16_t ccs[MDP_CCS_SIZE];
- uint16_t bv[MDP_BV_SIZE];
-};
-struct mdp_csc {
- int id;
- uint32_t csc_mv[9];
- uint32_t csc_pre_bv[3];
- uint32_t csc_post_bv[3];
- uint32_t csc_pre_lv[6];
- uint32_t csc_post_lv[6];
-};
-#define MDP_BLIT_REQ_VERSION 3
-struct color {
- uint32_t r;
- uint32_t g;
- uint32_t b;
- uint32_t alpha;
-};
-struct mdp_blit_req {
- struct mdp_img src;
- struct mdp_img dst;
- struct mdp_rect src_rect;
- struct mdp_rect dst_rect;
- struct color const_color;
- uint32_t alpha;
- uint32_t transp_mask;
- uint32_t flags;
- int sharpening_strength;
- uint8_t color_space;
- uint32_t fps;
-};
-struct mdp_blit_req_list {
- uint32_t count;
- struct mdp_blit_req req[];
-};
-#define MSMFB_DATA_VERSION 2
-struct msmfb_data {
- uint32_t offset;
- int memory_id;
- int id;
- uint32_t flags;
- uint32_t priv;
- uint32_t iova;
-};
-#define MSMFB_NEW_REQUEST - 1
-struct msmfb_overlay_data {
- uint32_t id;
- struct msmfb_data data;
- uint32_t version_key;
- struct msmfb_data plane1_data;
- struct msmfb_data plane2_data;
- struct msmfb_data dst_data;
-};
-struct msmfb_img {
- uint32_t width;
- uint32_t height;
- uint32_t format;
-};
-#define MSMFB_WRITEBACK_DEQUEUE_BLOCKING 0x1
-struct msmfb_writeback_data {
- struct msmfb_data buf_info;
- struct msmfb_img img;
-};
-#define MDP_PP_OPS_ENABLE 0x1
-#define MDP_PP_OPS_READ 0x2
-#define MDP_PP_OPS_WRITE 0x4
-#define MDP_PP_OPS_DISABLE 0x8
-#define MDP_PP_IGC_FLAG_ROM0 0x10
-#define MDP_PP_IGC_FLAG_ROM1 0x20
-#define MDSS_PP_DSPP_CFG 0x000
-#define MDSS_PP_SSPP_CFG 0x100
-#define MDSS_PP_LM_CFG 0x200
-#define MDSS_PP_WB_CFG 0x300
-#define MDSS_PP_ARG_MASK 0x3C00
-#define MDSS_PP_ARG_NUM 4
-#define MDSS_PP_ARG_SHIFT 10
-#define MDSS_PP_LOCATION_MASK 0x0300
-#define MDSS_PP_LOGICAL_MASK 0x00FF
-#define MDSS_PP_ADD_ARG(var,arg) ((var) | (0x1 << (MDSS_PP_ARG_SHIFT + (arg))))
-#define PP_ARG(x,var) ((var) & (0x1 << (MDSS_PP_ARG_SHIFT + (x))))
-#define PP_LOCAT(var) ((var) & MDSS_PP_LOCATION_MASK)
-#define PP_BLOCK(var) ((var) & MDSS_PP_LOGICAL_MASK)
-struct mdp_qseed_cfg {
- uint32_t table_num;
- uint32_t ops;
- uint32_t len;
- uint32_t * data;
-};
-struct mdp_sharp_cfg {
- uint32_t flags;
- uint32_t strength;
- uint32_t edge_thr;
- uint32_t smooth_thr;
- uint32_t noise_thr;
-};
-struct mdp_qseed_cfg_data {
- uint32_t block;
- struct mdp_qseed_cfg qseed_data;
-};
-#define MDP_OVERLAY_PP_CSC_CFG 0x1
-#define MDP_OVERLAY_PP_QSEED_CFG 0x2
-#define MDP_OVERLAY_PP_PA_CFG 0x4
-#define MDP_OVERLAY_PP_IGC_CFG 0x8
-#define MDP_OVERLAY_PP_SHARP_CFG 0x10
-#define MDP_OVERLAY_PP_HIST_CFG 0x20
-#define MDP_OVERLAY_PP_HIST_LUT_CFG 0x40
-#define MDP_OVERLAY_PP_PA_V2_CFG 0x80
-#define MDP_OVERLAY_PP_PCC_CFG 0x100
-#define MDP_CSC_FLAG_ENABLE 0x1
-#define MDP_CSC_FLAG_YUV_IN 0x2
-#define MDP_CSC_FLAG_YUV_OUT 0x4
-#define MDP_CSC_MATRIX_COEFF_SIZE 9
-#define MDP_CSC_CLAMP_SIZE 6
-#define MDP_CSC_BIAS_SIZE 3
-struct mdp_csc_cfg {
- uint32_t flags;
- uint32_t csc_mv[MDP_CSC_MATRIX_COEFF_SIZE];
- uint32_t csc_pre_bv[MDP_CSC_BIAS_SIZE];
- uint32_t csc_post_bv[MDP_CSC_BIAS_SIZE];
- uint32_t csc_pre_lv[MDP_CSC_CLAMP_SIZE];
- uint32_t csc_post_lv[MDP_CSC_CLAMP_SIZE];
-};
-struct mdp_csc_cfg_data {
- uint32_t block;
- struct mdp_csc_cfg csc_data;
-};
-struct mdp_pa_cfg {
- uint32_t flags;
- uint32_t hue_adj;
- uint32_t sat_adj;
- uint32_t val_adj;
- uint32_t cont_adj;
-};
-struct mdp_pa_mem_col_cfg {
- uint32_t color_adjust_p0;
- uint32_t color_adjust_p1;
- uint32_t hue_region;
- uint32_t sat_region;
- uint32_t val_region;
-};
-#define MDP_SIX_ZONE_LUT_SIZE 384
-#define MDP_PP_PA_HUE_ENABLE 0x10
-#define MDP_PP_PA_SAT_ENABLE 0x20
-#define MDP_PP_PA_VAL_ENABLE 0x40
-#define MDP_PP_PA_CONT_ENABLE 0x80
-#define MDP_PP_PA_SIX_ZONE_ENABLE 0x100
-#define MDP_PP_PA_SKIN_ENABLE 0x200
-#define MDP_PP_PA_SKY_ENABLE 0x400
-#define MDP_PP_PA_FOL_ENABLE 0x800
-#define MDP_PP_PA_MEM_PROT_HUE_EN 0x1
-#define MDP_PP_PA_MEM_PROT_SAT_EN 0x2
-#define MDP_PP_PA_MEM_PROT_VAL_EN 0x4
-#define MDP_PP_PA_MEM_PROT_CONT_EN 0x8
-#define MDP_PP_PA_MEM_PROT_SIX_EN 0x10
-#define MDP_PP_PA_MEM_PROT_BLEND_EN 0x20
-#define MDP_PP_PA_HUE_MASK 0x1000
-#define MDP_PP_PA_SAT_MASK 0x2000
-#define MDP_PP_PA_VAL_MASK 0x4000
-#define MDP_PP_PA_CONT_MASK 0x8000
-#define MDP_PP_PA_SIX_ZONE_HUE_MASK 0x10000
-#define MDP_PP_PA_SIX_ZONE_SAT_MASK 0x20000
-#define MDP_PP_PA_SIX_ZONE_VAL_MASK 0x40000
-#define MDP_PP_PA_MEM_COL_SKIN_MASK 0x80000
-#define MDP_PP_PA_MEM_COL_SKY_MASK 0x100000
-#define MDP_PP_PA_MEM_COL_FOL_MASK 0x200000
-#define MDP_PP_PA_MEM_PROTECT_EN 0x400000
-#define MDP_PP_PA_SAT_ZERO_EXP_EN 0x800000
-#define MDP_PP_PA_LEFT_HOLD 0x1
-#define MDP_PP_PA_RIGHT_HOLD 0x2
-struct mdp_pa_v2_data {
- uint32_t flags;
- uint32_t global_hue_adj;
- uint32_t global_sat_adj;
- uint32_t global_val_adj;
- uint32_t global_cont_adj;
- struct mdp_pa_mem_col_cfg skin_cfg;
- struct mdp_pa_mem_col_cfg sky_cfg;
- struct mdp_pa_mem_col_cfg fol_cfg;
- uint32_t six_zone_len;
- uint32_t six_zone_thresh;
- uint32_t * six_zone_curve_p0;
- uint32_t * six_zone_curve_p1;
-};
-struct mdp_pa_mem_col_data_v1_7 {
- uint32_t color_adjust_p0;
- uint32_t color_adjust_p1;
- uint32_t color_adjust_p2;
- uint32_t blend_gain;
- uint8_t sat_hold;
- uint8_t val_hold;
- uint32_t hue_region;
- uint32_t sat_region;
- uint32_t val_region;
-};
-struct mdp_pa_data_v1_7 {
- uint32_t mode;
- uint32_t global_hue_adj;
- uint32_t global_sat_adj;
- uint32_t global_val_adj;
- uint32_t global_cont_adj;
- struct mdp_pa_mem_col_data_v1_7 skin_cfg;
- struct mdp_pa_mem_col_data_v1_7 sky_cfg;
- struct mdp_pa_mem_col_data_v1_7 fol_cfg;
- uint32_t six_zone_thresh;
- uint32_t six_zone_adj_p0;
- uint32_t six_zone_adj_p1;
- uint8_t six_zone_sat_hold;
- uint8_t six_zone_val_hold;
- uint32_t six_zone_len;
- uint32_t * six_zone_curve_p0;
- uint32_t * six_zone_curve_p1;
-};
-struct mdp_pa_v2_cfg_data {
- uint32_t version;
- uint32_t block;
- uint32_t flags;
- struct mdp_pa_v2_data pa_v2_data;
- void * cfg_payload;
-};
-enum {
- mdp_igc_rec601 = 1,
- mdp_igc_rec709,
- mdp_igc_srgb,
- mdp_igc_custom,
- mdp_igc_rec_max,
-};
-struct mdp_igc_lut_data {
- uint32_t block;
- uint32_t version;
- uint32_t len, ops;
- uint32_t * c0_c1_data;
- uint32_t * c2_data;
- void * cfg_payload;
-};
-struct mdp_igc_lut_data_v1_7 {
- uint32_t table_fmt;
- uint32_t len;
- uint32_t * c0_c1_data;
- uint32_t * c2_data;
-};
-struct mdp_igc_lut_data_payload {
- uint32_t table_fmt;
- uint32_t len;
- uint64_t c0_c1_data;
- uint64_t c2_data;
- uint32_t strength;
-};
-struct mdp_histogram_cfg {
- uint32_t ops;
- uint32_t block;
- uint8_t frame_cnt;
- uint8_t bit_mask;
- uint16_t num_bins;
-};
-struct mdp_hist_lut_data_v1_7 {
- uint32_t len;
- uint32_t * data;
-};
-struct mdp_hist_lut_data {
- uint32_t block;
- uint32_t version;
- uint32_t hist_lut_first;
- uint32_t ops;
- uint32_t len;
- uint32_t * data;
- void * cfg_payload;
-};
-struct mdp_pcc_coeff {
- uint32_t c, r, g, b, rr, gg, bb, rg, gb, rb, rgb_0, rgb_1;
-};
-struct mdp_pcc_coeff_v1_7 {
- uint32_t c, r, g, b, rg, gb, rb, rgb;
-};
-struct mdp_pcc_data_v1_7 {
- struct mdp_pcc_coeff_v1_7 r, g, b;
-};
-struct mdp_pcc_cfg_data {
- uint32_t version;
- uint32_t block;
- uint32_t ops;
- struct mdp_pcc_coeff r, g, b;
- void * cfg_payload;
-};
-enum {
- mdp_lut_igc,
- mdp_lut_pgc,
- mdp_lut_hist,
- mdp_lut_rgb,
- mdp_lut_max,
-};
-struct mdp_overlay_pp_params {
- uint32_t config_ops;
- struct mdp_csc_cfg csc_cfg;
- struct mdp_qseed_cfg qseed_cfg[2];
- struct mdp_pa_cfg pa_cfg;
- struct mdp_pa_v2_data pa_v2_cfg;
- struct mdp_igc_lut_data igc_cfg;
- struct mdp_sharp_cfg sharp_cfg;
- struct mdp_histogram_cfg hist_cfg;
- struct mdp_hist_lut_data hist_lut_cfg;
- struct mdp_pa_v2_cfg_data pa_v2_cfg_data;
- struct mdp_pcc_cfg_data pcc_cfg_data;
-};
-enum mdss_mdp_blend_op {
- BLEND_OP_NOT_DEFINED = 0,
- BLEND_OP_OPAQUE,
- BLEND_OP_PREMULTIPLIED,
- BLEND_OP_COVERAGE,
- BLEND_OP_MAX,
-};
-#define DECIMATED_DIMENSION(dim,deci) (((dim) + ((1 << (deci)) - 1)) >> (deci))
-#define MAX_PLANES 4
-struct mdp_scale_data {
- uint8_t enable_pxl_ext;
- int init_phase_x[MAX_PLANES];
- int phase_step_x[MAX_PLANES];
- int init_phase_y[MAX_PLANES];
- int phase_step_y[MAX_PLANES];
- int num_ext_pxls_left[MAX_PLANES];
- int num_ext_pxls_right[MAX_PLANES];
- int num_ext_pxls_top[MAX_PLANES];
- int num_ext_pxls_btm[MAX_PLANES];
- int left_ftch[MAX_PLANES];
- int left_rpt[MAX_PLANES];
- int right_ftch[MAX_PLANES];
- int right_rpt[MAX_PLANES];
- int top_rpt[MAX_PLANES];
- int btm_rpt[MAX_PLANES];
- int top_ftch[MAX_PLANES];
- int btm_ftch[MAX_PLANES];
- uint32_t roi_w[MAX_PLANES];
-};
-enum mdp_overlay_pipe_type {
- PIPE_TYPE_AUTO = 0,
- PIPE_TYPE_VIG,
- PIPE_TYPE_RGB,
- PIPE_TYPE_DMA,
- PIPE_TYPE_CURSOR,
- PIPE_TYPE_MAX,
-};
-struct mdp_overlay {
- struct msmfb_img src;
- struct mdp_rect src_rect;
- struct mdp_rect dst_rect;
- uint32_t z_order;
- uint32_t is_fg;
- uint32_t alpha;
- uint32_t blend_op;
- uint32_t transp_mask;
- uint32_t flags;
- uint32_t pipe_type;
- uint32_t id;
- uint8_t priority;
- uint32_t user_data[6];
- uint32_t bg_color;
- uint8_t horz_deci;
- uint8_t vert_deci;
- struct mdp_overlay_pp_params overlay_pp_cfg;
- struct mdp_scale_data scale;
- uint8_t color_space;
- uint32_t frame_rate;
-};
-struct msmfb_overlay_3d {
- uint32_t is_3d;
- uint32_t width;
- uint32_t height;
-};
-struct msmfb_overlay_blt {
- uint32_t enable;
- uint32_t offset;
- uint32_t width;
- uint32_t height;
- uint32_t bpp;
-};
-struct mdp_histogram {
- uint32_t frame_cnt;
- uint32_t bin_cnt;
- uint32_t * r;
- uint32_t * g;
- uint32_t * b;
-};
-#define MISR_CRC_BATCH_SIZE 32
-enum {
- DISPLAY_MISR_EDP,
- DISPLAY_MISR_DSI0,
- DISPLAY_MISR_DSI1,
- DISPLAY_MISR_HDMI,
- DISPLAY_MISR_LCDC,
- DISPLAY_MISR_MDP,
- DISPLAY_MISR_ATV,
- DISPLAY_MISR_DSI_CMD,
- DISPLAY_MISR_MAX
-};
-enum {
- MISR_OP_NONE,
- MISR_OP_SFM,
- MISR_OP_MFM,
- MISR_OP_BM,
- MISR_OP_MAX
-};
-struct mdp_misr {
- uint32_t block_id;
- uint32_t frame_count;
- uint32_t crc_op_mode;
- uint32_t crc_value[MISR_CRC_BATCH_SIZE];
-};
-enum {
- MDP_BLOCK_RESERVED = 0,
- MDP_BLOCK_OVERLAY_0,
- MDP_BLOCK_OVERLAY_1,
- MDP_BLOCK_VG_1,
- MDP_BLOCK_VG_2,
- MDP_BLOCK_RGB_1,
- MDP_BLOCK_RGB_2,
- MDP_BLOCK_DMA_P,
- MDP_BLOCK_DMA_S,
- MDP_BLOCK_DMA_E,
- MDP_BLOCK_OVERLAY_2,
- MDP_LOGICAL_BLOCK_DISP_0 = 0x10,
- MDP_LOGICAL_BLOCK_DISP_1,
- MDP_LOGICAL_BLOCK_DISP_2,
- MDP_BLOCK_MAX,
-};
-struct mdp_histogram_start_req {
- uint32_t block;
- uint8_t frame_cnt;
- uint8_t bit_mask;
- uint16_t num_bins;
-};
-struct mdp_histogram_data {
- uint32_t block;
- uint32_t bin_cnt;
- uint32_t * c0;
- uint32_t * c1;
- uint32_t * c2;
- uint32_t * extra_info;
-};
-#define GC_LUT_ENTRIES_V1_7 512
-struct mdp_ar_gc_lut_data {
- uint32_t x_start;
- uint32_t slope;
- uint32_t offset;
-};
-#define MDP_PP_PGC_ROUNDING_ENABLE 0x10
-struct mdp_pgc_lut_data {
- uint32_t version;
- uint32_t block;
- uint32_t flags;
- uint8_t num_r_stages;
- uint8_t num_g_stages;
- uint8_t num_b_stages;
- struct mdp_ar_gc_lut_data * r_data;
- struct mdp_ar_gc_lut_data * g_data;
- struct mdp_ar_gc_lut_data * b_data;
- void * cfg_payload;
-};
-#define PGC_LUT_ENTRIES 1024
-struct mdp_pgc_lut_data_v1_7 {
- uint32_t len;
- uint32_t * c0_data;
- uint32_t * c1_data;
- uint32_t * c2_data;
-};
-struct mdp_rgb_lut_data {
- uint32_t flags;
- uint32_t lut_type;
- struct fb_cmap cmap;
-};
-enum {
- mdp_rgb_lut_gc,
- mdp_rgb_lut_hist,
-};
-struct mdp_lut_cfg_data {
- uint32_t lut_type;
- union {
- struct mdp_igc_lut_data igc_lut_data;
- struct mdp_pgc_lut_data pgc_lut_data;
- struct mdp_hist_lut_data hist_lut_data;
- struct mdp_rgb_lut_data rgb_lut_data;
- } data;
-};
-struct mdp_bl_scale_data {
- uint32_t min_lvl;
- uint32_t scale;
-};
-struct mdp_pa_cfg_data {
- uint32_t block;
- struct mdp_pa_cfg pa_data;
-};
-#define MDP_DITHER_DATA_V1_7_SZ 16
-struct mdp_dither_data_v1_7 {
- uint32_t g_y_depth;
- uint32_t r_cr_depth;
- uint32_t b_cb_depth;
- uint32_t len;
- uint32_t data[MDP_DITHER_DATA_V1_7_SZ];
- uint32_t temporal_en;
-};
-struct mdp_pa_dither_data {
- uint64_t data_flags;
- uint32_t matrix_sz;
- uint64_t matrix_data;
- uint32_t strength;
- uint32_t offset_en;
-};
-struct mdp_dither_cfg_data {
- uint32_t version;
- uint32_t block;
- uint32_t flags;
- uint32_t mode;
- uint32_t g_y_depth;
- uint32_t r_cr_depth;
- uint32_t b_cb_depth;
- void * cfg_payload;
-};
-#define MDP_GAMUT_TABLE_NUM 8
-#define MDP_GAMUT_TABLE_NUM_V1_7 4
-#define MDP_GAMUT_SCALE_OFF_TABLE_NUM 3
-#define MDP_GAMUT_TABLE_V1_7_SZ 1229
-#define MDP_GAMUT_SCALE_OFF_SZ 16
-#define MDP_GAMUT_TABLE_V1_7_COARSE_SZ 32
-struct mdp_gamut_cfg_data {
- uint32_t block;
- uint32_t flags;
- uint32_t version;
- uint32_t gamut_first;
- uint32_t tbl_size[MDP_GAMUT_TABLE_NUM];
- uint16_t * r_tbl[MDP_GAMUT_TABLE_NUM];
- uint16_t * g_tbl[MDP_GAMUT_TABLE_NUM];
- uint16_t * b_tbl[MDP_GAMUT_TABLE_NUM];
- void * cfg_payload;
-};
-enum {
- mdp_gamut_fine_mode = 0x1,
- mdp_gamut_coarse_mode,
-};
-struct mdp_gamut_data_v1_7 {
- uint32_t mode;
- uint32_t map_en;
- uint32_t tbl_size[MDP_GAMUT_TABLE_NUM_V1_7];
- uint32_t * c0_data[MDP_GAMUT_TABLE_NUM_V1_7];
- uint32_t * c1_c2_data[MDP_GAMUT_TABLE_NUM_V1_7];
- uint32_t tbl_scale_off_sz[MDP_GAMUT_SCALE_OFF_TABLE_NUM];
- uint32_t * scale_off_data[MDP_GAMUT_SCALE_OFF_TABLE_NUM];
-};
-struct mdp_calib_config_data {
- uint32_t ops;
- uint32_t addr;
- uint32_t data;
-};
-struct mdp_calib_config_buffer {
- uint32_t ops;
- uint32_t size;
- uint32_t * buffer;
-};
-struct mdp_calib_dcm_state {
- uint32_t ops;
- uint32_t dcm_state;
-};
-enum {
- DCM_UNINIT,
- DCM_UNBLANK,
- DCM_ENTER,
- DCM_EXIT,
- DCM_BLANK,
- DTM_ENTER,
- DTM_EXIT,
-};
-#define MDSS_PP_SPLIT_LEFT_ONLY 0x10000000
-#define MDSS_PP_SPLIT_RIGHT_ONLY 0x20000000
-#define MDSS_PP_SPLIT_MASK 0x30000000
-#define MDSS_MAX_BL_BRIGHTNESS 255
-#define AD_BL_LIN_LEN 256
-#define AD_BL_ATT_LUT_LEN 33
-#define MDSS_AD_MODE_AUTO_BL 0x0
-#define MDSS_AD_MODE_AUTO_STR 0x1
-#define MDSS_AD_MODE_TARG_STR 0x3
-#define MDSS_AD_MODE_MAN_STR 0x7
-#define MDSS_AD_MODE_CALIB 0xF
-#define MDP_PP_AD_INIT 0x10
-#define MDP_PP_AD_CFG 0x20
-struct mdss_ad_init {
- uint32_t asym_lut[33];
- uint32_t color_corr_lut[33];
- uint8_t i_control[2];
- uint16_t black_lvl;
- uint16_t white_lvl;
- uint8_t var;
- uint8_t limit_ampl;
- uint8_t i_dither;
- uint8_t slope_max;
- uint8_t slope_min;
- uint8_t dither_ctl;
- uint8_t format;
- uint8_t auto_size;
- uint16_t frame_w;
- uint16_t frame_h;
- uint8_t logo_v;
- uint8_t logo_h;
- uint32_t alpha;
- uint32_t alpha_base;
- uint32_t al_thresh;
- uint32_t bl_lin_len;
- uint32_t bl_att_len;
- uint32_t * bl_lin;
- uint32_t * bl_lin_inv;
- uint32_t * bl_att_lut;
-};
-#define MDSS_AD_BL_CTRL_MODE_EN 1
-#define MDSS_AD_BL_CTRL_MODE_DIS 0
-struct mdss_ad_cfg {
- uint32_t mode;
- uint32_t al_calib_lut[33];
- uint16_t backlight_min;
- uint16_t backlight_max;
- uint16_t backlight_scale;
- uint16_t amb_light_min;
- uint16_t filter[2];
- uint16_t calib[4];
- uint8_t strength_limit;
- uint8_t t_filter_recursion;
- uint16_t stab_itr;
- uint32_t bl_ctrl_mode;
-};
-struct mdss_ad_bl_cfg {
- uint32_t bl_min_delta;
- uint32_t bl_low_limit;
-};
-struct mdss_ad_init_cfg {
- uint32_t ops;
- union {
- struct mdss_ad_init init;
- struct mdss_ad_cfg cfg;
- } params;
-};
-struct mdss_ad_input {
- uint32_t mode;
- union {
- uint32_t amb_light;
- uint32_t strength;
- uint32_t calib_bl;
- } in;
- uint32_t output;
-};
-#define MDSS_CALIB_MODE_BL 0x1
-struct mdss_calib_cfg {
- uint32_t ops;
- uint32_t calib_mask;
-};
-enum {
- mdp_op_pcc_cfg,
- mdp_op_csc_cfg,
- mdp_op_lut_cfg,
- mdp_op_qseed_cfg,
- mdp_bl_scale_cfg,
- mdp_op_pa_cfg,
- mdp_op_pa_v2_cfg,
- mdp_op_dither_cfg,
- mdp_op_gamut_cfg,
- mdp_op_calib_cfg,
- mdp_op_ad_cfg,
- mdp_op_ad_input,
- mdp_op_calib_mode,
- mdp_op_calib_buffer,
- mdp_op_calib_dcm_state,
- mdp_op_max,
- mdp_op_pa_dither_cfg,
- mdp_op_ad_bl_cfg,
- mdp_op_pp_max = 255,
-};
-#define mdp_op_pa_dither_cfg mdp_op_pa_dither_cfg
-#define mdp_op_pp_max mdp_op_pp_max
-#define mdp_op_ad_bl_cfg mdp_op_ad_bl_cfg
-enum {
- WB_FORMAT_NV12,
- WB_FORMAT_RGB_565,
- WB_FORMAT_RGB_888,
- WB_FORMAT_xRGB_8888,
- WB_FORMAT_ARGB_8888,
- WB_FORMAT_BGRA_8888,
- WB_FORMAT_BGRX_8888,
- WB_FORMAT_ARGB_8888_INPUT_ALPHA
-};
-struct msmfb_mdp_pp {
- uint32_t op;
- union {
- struct mdp_pcc_cfg_data pcc_cfg_data;
- struct mdp_csc_cfg_data csc_cfg_data;
- struct mdp_lut_cfg_data lut_cfg_data;
- struct mdp_qseed_cfg_data qseed_cfg_data;
- struct mdp_bl_scale_data bl_scale_data;
- struct mdp_pa_cfg_data pa_cfg_data;
- struct mdp_pa_v2_cfg_data pa_v2_cfg_data;
- struct mdp_dither_cfg_data dither_cfg_data;
- struct mdp_gamut_cfg_data gamut_cfg_data;
- struct mdp_calib_config_data calib_cfg;
- struct mdss_ad_init_cfg ad_init_cfg;
- struct mdss_calib_cfg mdss_calib_cfg;
- struct mdss_ad_input ad_input;
- struct mdp_calib_config_buffer calib_buffer;
- struct mdp_calib_dcm_state calib_dcm;
- struct mdss_ad_bl_cfg ad_bl_cfg;
- } data;
-};
-#define FB_METADATA_VIDEO_INFO_CODE_SUPPORT 1
-enum {
- metadata_op_none,
- metadata_op_base_blend,
- metadata_op_frame_rate,
- metadata_op_vic,
- metadata_op_wb_format,
- metadata_op_wb_secure,
- metadata_op_get_caps,
- metadata_op_crc,
- metadata_op_get_ion_fd,
- metadata_op_max
-};
-struct mdp_blend_cfg {
- uint32_t is_premultiplied;
-};
-struct mdp_mixer_cfg {
- uint32_t writeback_format;
- uint32_t alpha;
-};
-struct mdss_hw_caps {
- uint32_t mdp_rev;
- uint8_t rgb_pipes;
- uint8_t vig_pipes;
- uint8_t dma_pipes;
- uint8_t max_smp_cnt;
- uint8_t smp_per_pipe;
- uint32_t features;
-};
-struct msmfb_metadata {
- uint32_t op;
- uint32_t flags;
- union {
- struct mdp_misr misr_request;
- struct mdp_blend_cfg blend_cfg;
- struct mdp_mixer_cfg mixer_cfg;
- uint32_t panel_frame_rate;
- uint32_t video_info_code;
- struct mdss_hw_caps caps;
- uint8_t secure_en;
- int fbmem_ionfd;
- } data;
-};
-#define MDP_MAX_FENCE_FD 32
-#define MDP_BUF_SYNC_FLAG_WAIT 1
-#define MDP_BUF_SYNC_FLAG_RETIRE_FENCE 0x10
-struct mdp_buf_sync {
- uint32_t flags;
- uint32_t acq_fen_fd_cnt;
- uint32_t session_id;
- int * acq_fen_fd;
- int * rel_fen_fd;
- int * retire_fen_fd;
-};
-struct mdp_async_blit_req_list {
- struct mdp_buf_sync sync;
- uint32_t count;
- struct mdp_blit_req req[];
-};
-#define MDP_DISPLAY_COMMIT_OVERLAY 1
-struct mdp_display_commit {
- uint32_t flags;
- uint32_t wait_for_finish;
- struct fb_var_screeninfo var;
- struct mdp_rect l_roi;
- struct mdp_rect r_roi;
-};
-struct mdp_overlay_list {
- uint32_t num_overlays;
- struct mdp_overlay * * overlay_list;
- uint32_t flags;
- uint32_t processed_overlays;
-};
-struct mdp_page_protection {
- uint32_t page_protection;
-};
-struct mdp_mixer_info {
- int pndx;
- int pnum;
- int ptype;
- int mixer_num;
- int z_order;
-};
-#define MAX_PIPE_PER_MIXER 7
-struct msmfb_mixer_info_req {
- int mixer_num;
- int cnt;
- struct mdp_mixer_info info[MAX_PIPE_PER_MIXER];
-};
-enum {
- DISPLAY_SUBSYSTEM_ID,
- ROTATOR_SUBSYSTEM_ID,
-};
-enum {
- MDP_IOMMU_DOMAIN_CP,
- MDP_IOMMU_DOMAIN_NS,
-};
-enum {
- MDP_WRITEBACK_MIRROR_OFF,
- MDP_WRITEBACK_MIRROR_ON,
- MDP_WRITEBACK_MIRROR_PAUSE,
- MDP_WRITEBACK_MIRROR_RESUME,
-};
-enum mdp_color_space {
- MDP_CSC_ITU_R_601,
- MDP_CSC_ITU_R_601_FR,
- MDP_CSC_ITU_R_709,
-};
-#define MDP_CSC_ITU_R_2020 (MDP_CSC_ITU_R_709 + 1)
-#define MDP_CSC_ITU_R_2020_FR (MDP_CSC_ITU_R_2020 + 1)
-enum {
- mdp_igc_v1_7 = 1,
- mdp_igc_vmax,
- mdp_hist_lut_v1_7,
- mdp_hist_lut_vmax,
- mdp_pgc_v1_7,
- mdp_pgc_vmax,
- mdp_dither_v1_7,
- mdp_dither_vmax,
- mdp_gamut_v1_7,
- mdp_gamut_vmax,
- mdp_pa_v1_7,
- mdp_pa_vmax,
- mdp_pcc_v1_7,
- mdp_pcc_vmax,
- mdp_pp_legacy,
- mdp_dither_pa_v1_7,
- mdp_igc_v3,
- mdp_pp_unknown = 255
-};
-#define mdp_dither_pa_v1_7 mdp_dither_pa_v1_7
-#define mdp_pp_unknown mdp_pp_unknown
-#define mdp_igc_v3 mdp_igc_v3
-enum {
- IGC = 1,
- PCC,
- GC,
- PA,
- GAMUT,
- DITHER,
- QSEED,
- HIST_LUT,
- HIST,
- PP_FEATURE_MAX,
- PA_DITHER,
- PP_MAX_FEATURES = 25,
-};
-#define PA_DITHER PA_DITHER
-#define PP_MAX_FEATURES PP_MAX_FEATURES
-struct mdp_pp_feature_version {
- uint32_t pp_feature;
- uint32_t version_info;
-};
-#endif
-
diff --git a/sdm710/kernel-headers/linux/msm_mdp_ext.h b/sdm710/kernel-headers/linux/msm_mdp_ext.h
deleted file mode 100644
index c17045e1..00000000
--- a/sdm710/kernel-headers/linux/msm_mdp_ext.h
+++ /dev/null
@@ -1,230 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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'
-#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
-#define MDP_LAYER_COMMIT_V1_PAD 2
-#else
-#define MDP_LAYER_COMMIT_V1_PAD 3
-#endif
-#define MDP_LAYER_FLIP_LR 0x1
-#define MDP_LAYER_FLIP_UD 0x2
-#define MDP_LAYER_ENABLE_PIXEL_EXT 0x4
-#define MDP_LAYER_FORGROUND 0x8
-#define MDP_LAYER_SECURE_SESSION 0x10
-#define MDP_LAYER_SOLID_FILL 0x20
-#define MDP_LAYER_DEINTERLACE 0x40
-#define MDP_LAYER_BWC 0x80
-#define MDP_LAYER_ASYNC 0x100
-#define MDP_LAYER_PP 0x200
-#define MDP_LAYER_SECURE_DISPLAY_SESSION 0x400
-#define MDP_LAYER_ENABLE_QSEED3_SCALE 0x800
-#define MDP_LAYER_MULTIRECT_ENABLE 0x1000
-#define MDP_LAYER_MULTIRECT_PARALLEL_MODE 0x2000
-#define MDP_DESTSCALER_ENABLE 0x1
-#define MDP_DESTSCALER_SCALE_UPDATE 0x2
-#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
-#define MDP_COMMIT_AVR_EN 0x08
-#define MDP_COMMIT_AVR_ONE_SHOT_MODE 0x10
-#define MDP_COMMIT_CWB_EN 0x800
-#define MDP_COMMIT_CWB_DSPP 0x1000
-#define MDP_COMMIT_VERSION_1_0 0x00010000
-struct mdp_layer_plane {
- int fd;
- uint32_t offset;
- uint32_t stride;
-};
-struct mdp_layer_buffer {
- uint32_t width;
- uint32_t height;
- uint32_t format;
- struct mdp_layer_plane planes[MAX_PLANES];
- uint32_t plane_count;
- struct mult_factor comp_ratio;
- int fence;
- uint32_t reserved;
-};
-struct mdp_input_layer {
- uint32_t flags;
- uint32_t pipe_ndx;
- uint8_t horz_deci;
- uint8_t vert_deci;
- uint8_t alpha;
- uint16_t z_order;
- uint32_t transp_mask;
- uint32_t bg_color;
- enum mdss_mdp_blend_op blend_op;
- enum mdp_color_space color_space;
- struct mdp_rect src_rect;
- struct mdp_rect dst_rect;
- void * scale;
- struct mdp_layer_buffer buffer;
- void * pp_info;
- int error_code;
- uint32_t reserved[6];
-};
-struct mdp_output_layer {
- uint32_t flags;
- uint32_t writeback_ndx;
- struct mdp_layer_buffer buffer;
- enum mdp_color_space color_space;
- uint32_t reserved[5];
-};
-struct mdp_destination_scaler_data {
- uint32_t flags;
- uint32_t dest_scaler_ndx;
- uint32_t lm_width;
- uint32_t lm_height;
- uint64_t scale;
-};
-#define MDP_VIDEO_FRC_ENABLE (1 << 0)
-struct mdp_frc_info {
- uint32_t flags;
- uint32_t frame_cnt;
- int64_t timestamp;
-};
-struct mdp_layer_commit_v1 {
- uint32_t flags;
- int release_fence;
- struct mdp_rect left_roi;
- struct mdp_rect right_roi;
- struct mdp_input_layer * input_layers;
- uint32_t input_layer_cnt;
- struct mdp_output_layer * output_layer;
- int retire_fence;
- void * dest_scaler;
- uint32_t dest_scaler_cnt;
- struct mdp_frc_info * frc_info;
- uint32_t reserved[MDP_LAYER_COMMIT_V1_PAD];
-};
-struct mdp_layer_commit {
- uint32_t version;
- union {
- struct mdp_layer_commit_v1 commit_v1;
- };
-};
-struct mdp_point {
- uint32_t x;
- uint32_t y;
-};
-struct mdp_async_layer {
- uint32_t flags;
- uint32_t pipe_ndx;
- struct mdp_point src;
- struct mdp_point dst;
- int error_code;
- uint32_t reserved[3];
-};
-struct mdp_position_update {
- struct mdp_async_layer * input_layers;
- 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];
-};
-#define ENABLE_SCALE 0x1
-#define ENABLE_DETAIL_ENHANCE 0x2
-#define ENABLE_DIRECTION_DETECTION 0x4
-#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
-#define FILTER_EDGE_DIRECTED_2D 0x0
-#define FILTER_CIRCULAR_2D 0x1
-#define FILTER_SEPARABLE_1D 0x2
-#define FILTER_BILINEAR 0x3
-#define FILTER_ALPHA_DROP_REPEAT 0x0
-#define FILTER_ALPHA_BILINEAR 0x1
-struct mdp_scale_data_v2 {
- uint32_t enable;
- 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];
- uint32_t num_ext_pxls_left[MAX_PLANES];
- uint32_t num_ext_pxls_right[MAX_PLANES];
- 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];
- int32_t right_ftch[MAX_PLANES];
- int32_t right_rpt[MAX_PLANES];
- 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];
- 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;
- 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;
- uint64_t reserved[8];
-};
-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
-
diff --git a/sdm710/kernel-headers/linux/msm_pft.h b/sdm710/kernel-headers/linux/msm_pft.h
deleted file mode 100644
index 73071103..00000000
--- a/sdm710/kernel-headers/linux/msm_pft.h
+++ /dev/null
@@ -1,67 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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 {
- 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_STATE_DEACTIVATED,
- PFT_STATE_DEACTIVATING,
- PFT_STATE_KEY_REMOVED,
- PFT_STATE_REMOVING_KEY,
- PFT_STATE_KEY_LOADED,
- PFT_STATE_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,
- PFT_CMD_RESP_MAX_INDEX
-};
-struct pft_command_response {
- __u32 command_id;
- __u32 error_code;
-};
-struct pft_command {
- __u32 opcode;
- union {
- struct {
- __u32 state;
- } set_state;
- struct {
- __u32 items_count;
- uid_t table[0];
- } update_app_list;
- struct {
- __u32 file_descriptor;
- } preform_in_place_file_enc;
- };
-};
-#endif
-
diff --git a/sdm710/kernel-headers/linux/msm_rmnet.h b/sdm710/kernel-headers/linux/msm_rmnet.h
deleted file mode 100644
index 10071dfc..00000000
--- a/sdm710/kernel-headers/linux/msm_rmnet.h
+++ /dev/null
@@ -1,129 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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)
-#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)
-#define RMNET_IOCTL_SET_LLP_ETHERNET 0x000089F1
-#define RMNET_IOCTL_SET_LLP_IP 0x000089F2
-#define RMNET_IOCTL_GET_LLP 0x000089F3
-#define RMNET_IOCTL_SET_QOS_ENABLE 0x000089F4
-#define RMNET_IOCTL_SET_QOS_DISABLE 0x000089F5
-#define RMNET_IOCTL_GET_QOS 0x000089F6
-#define RMNET_IOCTL_GET_OPMODE 0x000089F7
-#define RMNET_IOCTL_OPEN 0x000089F8
-#define RMNET_IOCTL_CLOSE 0x000089F9
-#define RMNET_IOCTL_FLOW_ENABLE 0x000089FA
-#define RMNET_IOCTL_FLOW_DISABLE 0x000089FB
-#define RMNET_IOCTL_FLOW_SET_HNDL 0x000089FC
-#define RMNET_IOCTL_EXTENDED 0x000089FD
-#define RMNET_IOCTL_GET_SUPPORTED_FEATURES 0x0000
-#define RMNET_IOCTL_SET_MRU 0x0001
-#define RMNET_IOCTL_GET_MRU 0x0002
-#define RMNET_IOCTL_GET_EPID 0x0003
-#define RMNET_IOCTL_GET_DRIVER_NAME 0x0004
-#define RMNET_IOCTL_ADD_MUX_CHANNEL 0x0005
-#define RMNET_IOCTL_SET_EGRESS_DATA_FORMAT 0x0006
-#define RMNET_IOCTL_SET_INGRESS_DATA_FORMAT 0x0007
-#define RMNET_IOCTL_SET_AGGREGATION_COUNT 0x0008
-#define RMNET_IOCTL_GET_AGGREGATION_COUNT 0x0009
-#define RMNET_IOCTL_SET_AGGREGATION_SIZE 0x000A
-#define RMNET_IOCTL_GET_AGGREGATION_SIZE 0x000B
-#define RMNET_IOCTL_FLOW_CONTROL 0x000C
-#define RMNET_IOCTL_GET_DFLT_CONTROL_CHANNEL 0x000D
-#define RMNET_IOCTL_GET_HWSW_MAP 0x000E
-#define RMNET_IOCTL_SET_RX_HEADROOM 0x000F
-#define RMNET_IOCTL_GET_EP_PAIR 0x0010
-#define RMNET_IOCTL_SET_QOS_VERSION 0x0011
-#define RMNET_IOCTL_GET_QOS_VERSION 0x0012
-#define RMNET_IOCTL_GET_SUPPORTED_QOS_MODES 0x0013
-#define RMNET_IOCTL_SET_SLEEP_STATE 0x0014
-#define RMNET_IOCTL_SET_XLAT_DEV_INFO 0x0015
-#define RMNET_IOCTL_DEREGISTER_DEV 0x0016
-#define RMNET_IOCTL_GET_SG_SUPPORT 0x0017
-#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)
-#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)
-#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)
-#ifndef IFNAMSIZ
-#define IFNAMSIZ 16
-#endif
-struct rmnet_ioctl_extended_s {
- uint32_t extended_ioctl;
- union {
- uint32_t data;
- int8_t if_name[IFNAMSIZ];
- struct {
- uint32_t mux_id;
- int8_t vchannel_name[IFNAMSIZ];
- } rmnet_mux_val;
- struct {
- uint8_t flow_mode;
- uint8_t mux_id;
- } flow_control_prop;
- struct {
- uint32_t consumer_pipe_num;
- uint32_t producer_pipe_num;
- } ipa_ep_pair;
- struct {
- uint32_t __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)
-struct QMI_QOS_HDR_S {
- unsigned char version;
- unsigned char flags;
- uint32_t flow_id;
-} __attribute((__packed__));
-struct qmi_qos_hdr8_s {
- struct QMI_QOS_HDR_S hdr;
- uint8_t reserved[2];
-} __attribute((__packed__));
-#endif
-
diff --git a/sdm710/kernel-headers/linux/msm_rotator.h b/sdm710/kernel-headers/linux/msm_rotator.h
deleted file mode 100644
index 283459a6..00000000
--- a/sdm710/kernel-headers/linux/msm_rotator.h
+++ /dev/null
@@ -1,66 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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>
-#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)
-#define ROTATOR_VERSION_01 0xA5B4C301
-enum rotator_clk_type {
- ROTATOR_CORE_CLK,
- ROTATOR_PCLK,
- ROTATOR_IMEM_CLK
-};
-struct msm_rotator_img_info {
- unsigned int session_id;
- struct msmfb_img src;
- struct msmfb_img dst;
- struct mdp_rect src_rect;
- unsigned int dst_x;
- unsigned int dst_y;
- unsigned char rotations;
- int enable;
- unsigned int downscale_ratio;
- unsigned int secure;
-};
-struct msm_rotator_data_info {
- int session_id;
- struct msmfb_data src;
- struct msmfb_data dst;
- unsigned int version_key;
- struct msmfb_data src_chroma;
- struct msmfb_data dst_chroma;
-};
-struct msm_rot_clocks {
- const char * clk_name;
- enum rotator_clk_type clk_type;
- unsigned int clk_rate;
-};
-struct msm_rotator_platform_data {
- unsigned int number_of_clocks;
- unsigned int hardware_version_number;
- struct msm_rot_clocks * rotator_clks;
- struct msm_bus_scale_pdata * bus_scale_table;
- char rot_iommu_split_domain;
-};
-#endif
-
diff --git a/sdm710/kernel-headers/linux/msm_thermal_ioctl.h b/sdm710/kernel-headers/linux/msm_thermal_ioctl.h
deleted file mode 100644
index 1dcf2882..00000000
--- a/sdm710/kernel-headers/linux/msm_thermal_ioctl.h
+++ /dev/null
@@ -1,65 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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"
-#define MSM_IOCTL_FREQ_SIZE 16
-struct __attribute__((__packed__)) cpu_freq_arg {
- uint32_t cpu_num;
- uint32_t freq_req;
-};
-struct __attribute__((__packed__)) clock_plan_arg {
- uint32_t cluster_num;
- uint32_t freq_table_len;
- uint32_t set_idx;
- unsigned int freq_table[MSM_IOCTL_FREQ_SIZE];
-};
-struct __attribute__((__packed__)) voltage_plan_arg {
- uint32_t cluster_num;
- uint32_t voltage_table_len;
- uint32_t set_idx;
- uint32_t voltage_table[MSM_IOCTL_FREQ_SIZE];
-};
-struct __attribute__((__packed__)) msm_thermal_ioctl {
- uint32_t size;
- union {
- struct cpu_freq_arg cpu_freq;
- struct clock_plan_arg clock_freq;
- struct voltage_plan_arg voltage;
- };
-};
-enum {
- MSM_SET_CPU_MAX_FREQ = 0x00,
- MSM_SET_CPU_MIN_FREQ = 0x01,
- MSM_SET_CLUSTER_MAX_FREQ = 0x02,
- MSM_SET_CLUSTER_MIN_FREQ = 0x03,
- MSM_GET_CLUSTER_FREQ_PLAN = 0x04,
- MSM_GET_CLUSTER_VOLTAGE_PLAN = 0x05,
- 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)
-#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)
-#define MSM_THERMAL_GET_CLUSTER_VOLTAGE_PLAN _IOR(MSM_THERMAL_MAGIC_NUM, MSM_GET_CLUSTER_VOLTAGE_PLAN, struct msm_thermal_ioctl)
-#endif
-
diff --git a/sdm710/kernel-headers/linux/msm_vidc_dec.h b/sdm710/kernel-headers/linux/msm_vidc_dec.h
deleted file mode 100644
index 6daf270a..00000000
--- a/sdm710/kernel-headers/linux/msm_vidc_dec.h
+++ /dev/null
@@ -1,469 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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>
-#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)
-#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)
-#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)
-#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)
-#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)
-#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)
-#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)
-#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)
-#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)
-#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
-#define VDEC_BUFFERFLAG_DATACORRUPT 0x00000008
-#define VDEC_BUFFERFLAG_ENDOFFRAME 0x00000010
-#define VDEC_BUFFERFLAG_SYNCFRAME 0x00000020
-#define VDEC_BUFFERFLAG_EXTRADATA 0x00000040
-#define VDEC_BUFFERFLAG_CODECCONFIG 0x00000080
-#define VDEC_EXTRADATA_NONE 0x001
-#define VDEC_EXTRADATA_QP 0x004
-#define VDEC_EXTRADATA_MB_ERROR_MAP 0x008
-#define VDEC_EXTRADATA_SEI 0x010
-#define VDEC_EXTRADATA_VUI 0x020
-#define VDEC_EXTRADATA_VC1 0x040
-#define VDEC_EXTRADATA_EXT_DATA 0x0800
-#define VDEC_EXTRADATA_USER_DATA 0x1000
-#define VDEC_EXTRADATA_EXT_BUFFER 0x2000
-#define VDEC_CMDBASE 0x800
-#define VDEC_CMD_SET_INTF_VERSION (VDEC_CMDBASE)
-#define VDEC_IOCTL_MAGIC 'v'
-struct vdec_ioctl_msg {
- void * in;
- void * out;
-};
-#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)
-#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)
-#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)
-#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)
-#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)
-#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)
-#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)
-#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)
-#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)
-#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)
-#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,
- PICTURE_TYPE_P,
- PICTURE_TYPE_B,
- PICTURE_TYPE_BI,
- PICTURE_TYPE_SKIP,
- PICTURE_TYPE_IDR,
- PICTURE_TYPE_UNKNOWN
-};
-enum vdec_buffer {
- VDEC_BUFFER_TYPE_INPUT,
- VDEC_BUFFER_TYPE_OUTPUT
-};
-struct vdec_allocatorproperty {
- enum vdec_buffer buffer_type;
- uint32_t mincount;
- uint32_t maxcount;
- uint32_t actualcount;
- size_t buffer_size;
- uint32_t alignment;
- uint32_t buf_poolid;
- size_t meta_buffer_size;
-};
-struct vdec_bufferpayload {
- void * bufferaddr;
- size_t buffer_len;
- int pmem_fd;
- size_t offset;
- size_t mmaped_size;
-};
-struct vdec_setbuffer_cmd {
- enum vdec_buffer buffer_type;
- struct vdec_bufferpayload buffer;
-};
-struct vdec_fillbuffer_cmd {
- struct vdec_bufferpayload buffer;
- void * client_data;
-};
-enum vdec_bufferflush {
- VDEC_FLUSH_TYPE_INPUT,
- VDEC_FLUSH_TYPE_OUTPUT,
- VDEC_FLUSH_TYPE_ALL
-};
-enum vdec_codec {
- VDEC_CODECTYPE_H264 = 0x1,
- VDEC_CODECTYPE_H263 = 0x2,
- VDEC_CODECTYPE_MPEG4 = 0x3,
- VDEC_CODECTYPE_DIVX_3 = 0x4,
- VDEC_CODECTYPE_DIVX_4 = 0x5,
- VDEC_CODECTYPE_DIVX_5 = 0x6,
- VDEC_CODECTYPE_DIVX_6 = 0x7,
- VDEC_CODECTYPE_XVID = 0x8,
- VDEC_CODECTYPE_MPEG1 = 0x9,
- VDEC_CODECTYPE_MPEG2 = 0xa,
- VDEC_CODECTYPE_VC1 = 0xb,
- VDEC_CODECTYPE_VC1_RCV = 0xc,
- VDEC_CODECTYPE_HEVC = 0xd,
- VDEC_CODECTYPE_MVC = 0xe,
- VDEC_CODECTYPE_VP8 = 0xf,
- VDEC_CODECTYPE_VP9 = 0x10,
-};
-enum vdec_mpeg2_profile {
- VDEC_MPEG2ProfileSimple = 0x1,
- VDEC_MPEG2ProfileMain = 0x2,
- VDEC_MPEG2Profile422 = 0x4,
- VDEC_MPEG2ProfileSNR = 0x8,
- VDEC_MPEG2ProfileSpatial = 0x10,
- VDEC_MPEG2ProfileHigh = 0x20,
- VDEC_MPEG2ProfileKhronosExtensions = 0x6F000000,
- VDEC_MPEG2ProfileVendorStartUnused = 0x7F000000,
- VDEC_MPEG2ProfileMax = 0x7FFFFFFF
-};
-enum vdec_mpeg2_level {
- VDEC_MPEG2LevelLL = 0x1,
- VDEC_MPEG2LevelML = 0x2,
- VDEC_MPEG2LevelH14 = 0x4,
- VDEC_MPEG2LevelHL = 0x8,
- VDEC_MPEG2LevelKhronosExtensions = 0x6F000000,
- VDEC_MPEG2LevelVendorStartUnused = 0x7F000000,
- VDEC_MPEG2LevelMax = 0x7FFFFFFF
-};
-enum vdec_mpeg4_profile {
- VDEC_MPEG4ProfileSimple = 0x01,
- VDEC_MPEG4ProfileSimpleScalable = 0x02,
- VDEC_MPEG4ProfileCore = 0x04,
- VDEC_MPEG4ProfileMain = 0x08,
- VDEC_MPEG4ProfileNbit = 0x10,
- VDEC_MPEG4ProfileScalableTexture = 0x20,
- VDEC_MPEG4ProfileSimpleFace = 0x40,
- VDEC_MPEG4ProfileSimpleFBA = 0x80,
- VDEC_MPEG4ProfileBasicAnimated = 0x100,
- VDEC_MPEG4ProfileHybrid = 0x200,
- VDEC_MPEG4ProfileAdvancedRealTime = 0x400,
- VDEC_MPEG4ProfileCoreScalable = 0x800,
- VDEC_MPEG4ProfileAdvancedCoding = 0x1000,
- VDEC_MPEG4ProfileAdvancedCore = 0x2000,
- VDEC_MPEG4ProfileAdvancedScalable = 0x4000,
- VDEC_MPEG4ProfileAdvancedSimple = 0x8000,
- VDEC_MPEG4ProfileKhronosExtensions = 0x6F000000,
- VDEC_MPEG4ProfileVendorStartUnused = 0x7F000000,
- VDEC_MPEG4ProfileMax = 0x7FFFFFFF
-};
-enum vdec_mpeg4_level {
- VDEC_MPEG4Level0 = 0x01,
- VDEC_MPEG4Level0b = 0x02,
- VDEC_MPEG4Level1 = 0x04,
- VDEC_MPEG4Level2 = 0x08,
- VDEC_MPEG4Level3 = 0x10,
- VDEC_MPEG4Level4 = 0x20,
- VDEC_MPEG4Level4a = 0x40,
- VDEC_MPEG4Level5 = 0x80,
- VDEC_MPEG4LevelKhronosExtensions = 0x6F000000,
- VDEC_MPEG4LevelVendorStartUnused = 0x7F000000,
- VDEC_MPEG4LevelMax = 0x7FFFFFFF
-};
-enum vdec_avc_profile {
- VDEC_AVCProfileBaseline = 0x01,
- VDEC_AVCProfileMain = 0x02,
- VDEC_AVCProfileExtended = 0x04,
- VDEC_AVCProfileHigh = 0x08,
- VDEC_AVCProfileHigh10 = 0x10,
- VDEC_AVCProfileHigh422 = 0x20,
- VDEC_AVCProfileHigh444 = 0x40,
- VDEC_AVCProfileKhronosExtensions = 0x6F000000,
- VDEC_AVCProfileVendorStartUnused = 0x7F000000,
- VDEC_AVCProfileMax = 0x7FFFFFFF
-};
-enum vdec_avc_level {
- VDEC_AVCLevel1 = 0x01,
- VDEC_AVCLevel1b = 0x02,
- VDEC_AVCLevel11 = 0x04,
- VDEC_AVCLevel12 = 0x08,
- VDEC_AVCLevel13 = 0x10,
- VDEC_AVCLevel2 = 0x20,
- VDEC_AVCLevel21 = 0x40,
- VDEC_AVCLevel22 = 0x80,
- VDEC_AVCLevel3 = 0x100,
- VDEC_AVCLevel31 = 0x200,
- VDEC_AVCLevel32 = 0x400,
- VDEC_AVCLevel4 = 0x800,
- VDEC_AVCLevel41 = 0x1000,
- VDEC_AVCLevel42 = 0x2000,
- VDEC_AVCLevel5 = 0x4000,
- VDEC_AVCLevel51 = 0x8000,
- VDEC_AVCLevelKhronosExtensions = 0x6F000000,
- VDEC_AVCLevelVendorStartUnused = 0x7F000000,
- VDEC_AVCLevelMax = 0x7FFFFFFF
-};
-enum vdec_divx_profile {
- VDEC_DIVXProfile_qMobile = 0x01,
- VDEC_DIVXProfile_Mobile = 0x02,
- VDEC_DIVXProfile_HD = 0x04,
- VDEC_DIVXProfile_Handheld = 0x08,
- VDEC_DIVXProfile_Portable = 0x10,
- VDEC_DIVXProfile_HomeTheater = 0x20
-};
-enum vdec_xvid_profile {
- VDEC_XVIDProfile_Simple = 0x1,
- VDEC_XVIDProfile_Advanced_Realtime_Simple = 0x2,
- VDEC_XVIDProfile_Advanced_Simple = 0x4
-};
-enum vdec_xvid_level {
- VDEC_XVID_LEVEL_S_L0 = 0x1,
- VDEC_XVID_LEVEL_S_L1 = 0x2,
- VDEC_XVID_LEVEL_S_L2 = 0x4,
- VDEC_XVID_LEVEL_S_L3 = 0x8,
- VDEC_XVID_LEVEL_ARTS_L1 = 0x10,
- VDEC_XVID_LEVEL_ARTS_L2 = 0x20,
- VDEC_XVID_LEVEL_ARTS_L3 = 0x40,
- VDEC_XVID_LEVEL_ARTS_L4 = 0x80,
- VDEC_XVID_LEVEL_AS_L0 = 0x100,
- VDEC_XVID_LEVEL_AS_L1 = 0x200,
- VDEC_XVID_LEVEL_AS_L2 = 0x400,
- VDEC_XVID_LEVEL_AS_L3 = 0x800,
- VDEC_XVID_LEVEL_AS_L4 = 0x1000
-};
-enum vdec_h263profile {
- VDEC_H263ProfileBaseline = 0x01,
- VDEC_H263ProfileH320Coding = 0x02,
- VDEC_H263ProfileBackwardCompatible = 0x04,
- VDEC_H263ProfileISWV2 = 0x08,
- VDEC_H263ProfileISWV3 = 0x10,
- VDEC_H263ProfileHighCompression = 0x20,
- VDEC_H263ProfileInternet = 0x40,
- VDEC_H263ProfileInterlace = 0x80,
- VDEC_H263ProfileHighLatency = 0x100,
- VDEC_H263ProfileKhronosExtensions = 0x6F000000,
- VDEC_H263ProfileVendorStartUnused = 0x7F000000,
- VDEC_H263ProfileMax = 0x7FFFFFFF
-};
-enum vdec_h263level {
- VDEC_H263Level10 = 0x01,
- VDEC_H263Level20 = 0x02,
- VDEC_H263Level30 = 0x04,
- VDEC_H263Level40 = 0x08,
- VDEC_H263Level45 = 0x10,
- VDEC_H263Level50 = 0x20,
- VDEC_H263Level60 = 0x40,
- VDEC_H263Level70 = 0x80,
- VDEC_H263LevelKhronosExtensions = 0x6F000000,
- VDEC_H263LevelVendorStartUnused = 0x7F000000,
- VDEC_H263LevelMax = 0x7FFFFFFF
-};
-enum vdec_wmv_format {
- VDEC_WMVFormatUnused = 0x01,
- VDEC_WMVFormat7 = 0x02,
- VDEC_WMVFormat8 = 0x04,
- VDEC_WMVFormat9 = 0x08,
- VDEC_WMFFormatKhronosExtensions = 0x6F000000,
- VDEC_WMFFormatVendorStartUnused = 0x7F000000,
- VDEC_WMVFormatMax = 0x7FFFFFFF
-};
-enum vdec_vc1_profile {
- VDEC_VC1ProfileSimple = 0x1,
- VDEC_VC1ProfileMain = 0x2,
- VDEC_VC1ProfileAdvanced = 0x4
-};
-enum vdec_vc1_level {
- VDEC_VC1_LEVEL_S_Low = 0x1,
- VDEC_VC1_LEVEL_S_Medium = 0x2,
- VDEC_VC1_LEVEL_M_Low = 0x4,
- VDEC_VC1_LEVEL_M_Medium = 0x8,
- VDEC_VC1_LEVEL_M_High = 0x10,
- VDEC_VC1_LEVEL_A_L0 = 0x20,
- VDEC_VC1_LEVEL_A_L1 = 0x40,
- VDEC_VC1_LEVEL_A_L2 = 0x80,
- VDEC_VC1_LEVEL_A_L3 = 0x100,
- VDEC_VC1_LEVEL_A_L4 = 0x200
-};
-struct vdec_profile_level {
- uint32_t profiles;
- uint32_t levels;
-};
-enum vdec_interlaced_format {
- VDEC_InterlaceFrameProgressive = 0x1,
- VDEC_InterlaceInterleaveFrameTopFieldFirst = 0x2,
- VDEC_InterlaceInterleaveFrameBottomFieldFirst = 0x4
-};
-#define VDEC_YUV_FORMAT_NV12_TP10_UBWC VDEC_YUV_FORMAT_NV12_TP10_UBWC
-enum vdec_output_fromat {
- VDEC_YUV_FORMAT_NV12 = 0x1,
- VDEC_YUV_FORMAT_TILE_4x2 = 0x2,
- VDEC_YUV_FORMAT_NV12_UBWC = 0x3,
- VDEC_YUV_FORMAT_NV12_TP10_UBWC = 0x4
-};
-enum vdec_output_order {
- VDEC_ORDER_DISPLAY = 0x1,
- VDEC_ORDER_DECODE = 0x2
-};
-struct vdec_picsize {
- uint32_t frame_width;
- uint32_t frame_height;
- uint32_t stride;
- uint32_t scan_lines;
-};
-struct vdec_seqheader {
- void * ptr_seqheader;
- size_t seq_header_len;
- int pmem_fd;
- size_t pmem_offset;
-};
-struct vdec_mberror {
- void * ptr_errormap;
- size_t err_mapsize;
-};
-struct vdec_input_frameinfo {
- void * bufferaddr;
- size_t offset;
- size_t datalen;
- uint32_t flags;
- int64_t timestamp;
- void * client_data;
- int pmem_fd;
- size_t pmem_offset;
- void * desc_addr;
- uint32_t desc_size;
-};
-struct vdec_framesize {
- uint32_t left;
- uint32_t top;
- uint32_t right;
- uint32_t bottom;
-};
-struct vdec_aspectratioinfo {
- uint32_t aspect_ratio;
- uint32_t par_width;
- uint32_t par_height;
-};
-struct vdec_sep_metadatainfo {
- void * metabufaddr;
- uint32_t size;
- int fd;
- int offset;
- uint32_t buffer_size;
-};
-struct vdec_output_frameinfo {
- void * bufferaddr;
- size_t offset;
- size_t len;
- uint32_t flags;
- int64_t time_stamp;
- enum vdec_picture pic_type;
- void * client_data;
- void * input_frame_clientdata;
- struct vdec_picsize picsize;
- struct vdec_framesize framesize;
- enum vdec_interlaced_format interlaced_format;
- struct vdec_aspectratioinfo aspect_ratio_info;
- struct vdec_sep_metadatainfo metadata_info;
-};
-union vdec_msgdata {
- struct vdec_output_frameinfo output_frame;
- void * input_frame_clientdata;
-};
-struct vdec_msginfo {
- uint32_t status_code;
- uint32_t msgcode;
- union vdec_msgdata msgdata;
- size_t msgdatasize;
-};
-struct vdec_framerate {
- unsigned long fps_denominator;
- unsigned long fps_numerator;
-};
-struct vdec_h264_mv {
- size_t size;
- int count;
- int pmem_fd;
- int offset;
-};
-struct vdec_mv_buff_size {
- int width;
- int height;
- int size;
- int alignment;
-};
-struct vdec_meta_buffers {
- size_t size;
- int count;
- int pmem_fd;
- int pmem_fd_iommu;
- int offset;
-};
-#endif
-
diff --git a/sdm710/kernel-headers/linux/msm_vidc_enc.h b/sdm710/kernel-headers/linux/msm_vidc_enc.h
deleted file mode 100644
index baa2854d..00000000
--- a/sdm710/kernel-headers/linux/msm_vidc_enc.h
+++ /dev/null
@@ -1,387 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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>
-#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)
-#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)
-#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)
-#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)
-#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)
-#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
-#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_OUTPUT_DONE 5
-#define VEN_MSG_START 6
-#define VEN_MSG_STOP 7
-#define VEN_MSG_PAUSE 8
-#define VEN_MSG_RESUME 9
-#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
-#define VEN_BUFFLAG_EOS 0x00000001
-#define VEN_BUFFLAG_ENDOFFRAME 0x00000010
-#define VEN_BUFFLAG_SYNCFRAME 0x00000020
-#define VEN_BUFFLAG_EXTRADATA 0x00000040
-#define VEN_BUFFLAG_CODECCONFIG 0x00000080
-#define VEN_EXTRADATA_NONE 0x001
-#define VEN_EXTRADATA_QCOMFILLER 0x002
-#define VEN_EXTRADATA_SLICEINFO 0x100
-#define VEN_EXTRADATA_LTRINFO 0x200
-#define VEN_EXTRADATA_MBINFO 0x400
-#define VEN_FRAME_TYPE_I 1
-#define VEN_FRAME_TYPE_P 2
-#define VEN_FRAME_TYPE_B 3
-#define VEN_CODEC_MPEG4 1
-#define VEN_CODEC_H264 2
-#define VEN_CODEC_H263 3
-#define VEN_PROFILE_MPEG4_SP 1
-#define VEN_PROFILE_MPEG4_ASP 2
-#define VEN_PROFILE_H264_BASELINE 3
-#define VEN_PROFILE_H264_MAIN 4
-#define VEN_PROFILE_H264_HIGH 5
-#define VEN_PROFILE_H263_BASELINE 6
-#define VEN_LEVEL_MPEG4_0 0x1
-#define VEN_LEVEL_MPEG4_1 0x2
-#define VEN_LEVEL_MPEG4_2 0x3
-#define VEN_LEVEL_MPEG4_3 0x4
-#define VEN_LEVEL_MPEG4_4 0x5
-#define VEN_LEVEL_MPEG4_5 0x6
-#define VEN_LEVEL_MPEG4_3b 0x7
-#define VEN_LEVEL_MPEG4_6 0x8
-#define VEN_LEVEL_H264_1 0x9
-#define VEN_LEVEL_H264_1b 0xA
-#define VEN_LEVEL_H264_1p1 0xB
-#define VEN_LEVEL_H264_1p2 0xC
-#define VEN_LEVEL_H264_1p3 0xD
-#define VEN_LEVEL_H264_2 0xE
-#define VEN_LEVEL_H264_2p1 0xF
-#define VEN_LEVEL_H264_2p2 0x10
-#define VEN_LEVEL_H264_3 0x11
-#define VEN_LEVEL_H264_3p1 0x12
-#define VEN_LEVEL_H264_3p2 0x13
-#define VEN_LEVEL_H264_4 0x14
-#define VEN_LEVEL_H263_10 0x15
-#define VEN_LEVEL_H263_20 0x16
-#define VEN_LEVEL_H263_30 0x17
-#define VEN_LEVEL_H263_40 0x18
-#define VEN_LEVEL_H263_45 0x19
-#define VEN_LEVEL_H263_50 0x1A
-#define VEN_LEVEL_H263_60 0x1B
-#define VEN_LEVEL_H263_70 0x1C
-#define VEN_ENTROPY_MODEL_CAVLC 1
-#define VEN_ENTROPY_MODEL_CABAC 2
-#define VEN_CABAC_MODEL_0 1
-#define VEN_CABAC_MODEL_1 2
-#define VEN_CABAC_MODEL_2 3
-#define VEN_DB_DISABLE 1
-#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
-#define VEN_MSLICE_CNT_BYTE 3
-#define VEN_MSLICE_GOB 4
-#define VEN_RC_OFF 1
-#define VEN_RC_VBR_VFR 2
-#define VEN_RC_VBR_CFR 3
-#define VEN_RC_CBR_VFR 4
-#define VEN_RC_CBR_CFR 5
-#define VEN_FLUSH_INPUT 1
-#define VEN_FLUSH_OUTPUT 2
-#define VEN_FLUSH_ALL 3
-#define VEN_INPUTFMT_NV12 1
-#define VEN_INPUTFMT_NV21 2
-#define VEN_INPUTFMT_NV12_16M2KA 3
-#define VEN_ROTATION_0 1
-#define VEN_ROTATION_90 2
-#define VEN_ROTATION_180 3
-#define VEN_ROTATION_270 4
-#define VEN_TIMEOUT_INFINITE 0xffffffff
-#define VEN_IR_OFF 1
-#define VEN_IR_CYCLIC 2
-#define VEN_IR_RANDOM 3
-#define VEN_IOCTLBASE_NENC 0x800
-#define VEN_IOCTLBASE_ENC 0x850
-struct venc_ioctl_msg {
- void * in;
- void * out;
-};
-#define VEN_IOCTL_SET_INTF_VERSION _IOW(VEN_IOCTLBASE_NENC, 0, struct venc_ioctl_msg)
-#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)
-#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)
-#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)
-#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)
-#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)
-#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)
-#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)
-#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)
-#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)
-#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)
-#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)
-#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)
-#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)
-#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)
-#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)
-#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)
-#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)
-#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)
-#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)
-#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)
-#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)
-#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;
- unsigned long min;
- unsigned long step_size;
-};
-struct venc_switch {
- unsigned char status;
-};
-struct venc_allocatorproperty {
- unsigned long mincount;
- unsigned long maxcount;
- unsigned long actualcount;
- unsigned long datasize;
- unsigned long suffixsize;
- unsigned long alignment;
- unsigned long bufpoolid;
-};
-struct venc_bufferpayload {
- unsigned char * pbuffer;
- size_t sz;
- int fd;
- unsigned int offset;
- unsigned int maped_size;
- unsigned long filled_len;
-};
-struct venc_buffer {
- unsigned char * ptrbuffer;
- unsigned long sz;
- unsigned long len;
- unsigned long offset;
- long long timestamp;
- unsigned long flags;
- void * clientdata;
-};
-struct venc_basecfg {
- unsigned long input_width;
- unsigned long input_height;
- unsigned long dvs_width;
- unsigned long dvs_height;
- unsigned long codectype;
- unsigned long fps_num;
- unsigned long fps_den;
- unsigned long targetbitrate;
- unsigned long inputformat;
-};
-struct venc_profile {
- unsigned long profile;
-};
-struct ven_profilelevel {
- unsigned long level;
-};
-struct venc_sessionqp {
- unsigned long iframeqp;
- unsigned long pframqp;
-};
-struct venc_qprange {
- unsigned long maxqp;
- unsigned long minqp;
-};
-struct venc_plusptype {
- unsigned long plusptype_enable;
-};
-struct venc_intraperiod {
- unsigned long num_pframes;
- unsigned long num_bframes;
-};
-struct venc_seqheader {
- unsigned char * hdrbufptr;
- unsigned long bufsize;
- unsigned long hdrlen;
-};
-struct venc_capability {
- unsigned long codec_types;
- unsigned long maxframe_width;
- unsigned long maxframe_height;
- unsigned long maxtarget_bitrate;
- unsigned long maxframe_rate;
- unsigned long input_formats;
- unsigned char dvs;
-};
-struct venc_entropycfg {
- unsigned int longentropysel;
- unsigned long cabacmodel;
-};
-struct venc_dbcfg {
- unsigned long db_mode;
- unsigned long slicealpha_offset;
- unsigned long slicebeta_offset;
-};
-struct venc_intrarefresh {
- unsigned long irmode;
- unsigned long mbcount;
-};
-struct venc_multiclicecfg {
- unsigned long mslice_mode;
- unsigned long mslice_size;
-};
-struct venc_bufferflush {
- unsigned long flush_mode;
-};
-struct venc_ratectrlcfg {
- unsigned long rcmode;
-};
-struct venc_voptimingcfg {
- unsigned long voptime_resolution;
-};
-struct venc_framerate {
- unsigned long fps_denominator;
- unsigned long fps_numerator;
-};
-struct venc_targetbitrate {
- unsigned long target_bitrate;
-};
-struct venc_rotation {
- unsigned long rotation;
-};
-struct venc_timeout {
- unsigned long millisec;
-};
-struct venc_headerextension {
- unsigned long header_extension;
-};
-struct venc_msg {
- unsigned long statuscode;
- unsigned long msgcode;
- struct venc_buffer buf;
- unsigned long msgdata_size;
-};
-struct venc_recon_addr {
- unsigned char * pbuffer;
- unsigned long buffer_size;
- unsigned long pmem_fd;
- unsigned long offset;
-};
-struct venc_recon_buff_size {
- int width;
- int height;
- int size;
- int alignment;
-};
-struct venc_ltrmode {
- unsigned long ltr_mode;
-};
-struct venc_ltrcount {
- unsigned long ltr_count;
-};
-struct venc_ltrperiod {
- unsigned long ltr_period;
-};
-struct venc_ltruse {
- unsigned long ltr_id;
- unsigned long ltr_frames;
-};
-#endif
-
diff --git a/sdm710/kernel-headers/linux/qseecom.h b/sdm710/kernel-headers/linux/qseecom.h
deleted file mode 100644
index de4bc398..00000000
--- a/sdm710/kernel-headers/linux/qseecom.h
+++ /dev/null
@@ -1,214 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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 _QSEECOM_H_
-#define _QSEECOM_H_
-#include <linux/types.h>
-#include <linux/ioctl.h>
-#define MAX_ION_FD 4
-#define MAX_APP_NAME_SIZE 64
-#define QSEECOM_HASH_SIZE 32
-#define QSEECOM_TA_ION_ALLOCATE_DELAY 50
-#define QSEECOM_TA_ION_ALLOCATE_MAX_ATTEMP 20
-struct qseecom_register_listener_req {
- uint32_t listener_id;
- int32_t ifd_data_fd;
- void * virt_sb_base;
- uint32_t sb_size;
-};
-struct qseecom_send_cmd_req {
- void * cmd_req_buf;
- unsigned int cmd_req_len;
- void * resp_buf;
- unsigned int resp_len;
-};
-struct qseecom_ion_fd_info {
- int32_t fd;
- uint32_t cmd_buf_offset;
-};
-struct qseecom_send_modfd_cmd_req {
- void * cmd_req_buf;
- unsigned int cmd_req_len;
- void * resp_buf;
- unsigned int resp_len;
- struct qseecom_ion_fd_info ifd_data[MAX_ION_FD];
-};
-struct qseecom_send_resp_req {
- void * resp_buf;
- unsigned int resp_len;
-};
-struct qseecom_load_img_req {
- uint32_t mdt_len;
- uint32_t img_len;
- int32_t ifd_data_fd;
- char img_name[MAX_APP_NAME_SIZE];
- uint32_t app_arch;
- uint32_t app_id;
-};
-struct qseecom_set_sb_mem_param_req {
- int32_t ifd_data_fd;
- void * virt_sb_base;
- uint32_t sb_len;
-};
-struct qseecom_qseos_version_req {
- unsigned int qseos_version;
-};
-struct qseecom_qseos_app_load_query {
- char app_name[MAX_APP_NAME_SIZE];
- uint32_t app_id;
- uint32_t app_arch;
-};
-struct qseecom_send_svc_cmd_req {
- uint32_t cmd_id;
- void * cmd_req_buf;
- unsigned int cmd_req_len;
- void * resp_buf;
- unsigned int resp_len;
-};
-enum qseecom_key_management_usage_type {
- QSEOS_KM_USAGE_DISK_ENCRYPTION = 0x01,
- QSEOS_KM_USAGE_FILE_ENCRYPTION = 0x02,
- QSEOS_KM_USAGE_UFS_ICE_DISK_ENCRYPTION = 0x03,
- QSEOS_KM_USAGE_SDCC_ICE_DISK_ENCRYPTION = 0x04,
- QSEOS_KM_USAGE_MAX
-};
-struct qseecom_create_key_req {
- unsigned char hash32[QSEECOM_HASH_SIZE];
- enum qseecom_key_management_usage_type usage;
-};
-struct qseecom_wipe_key_req {
- enum qseecom_key_management_usage_type usage;
- int wipe_key_flag;
-};
-struct qseecom_update_key_userinfo_req {
- unsigned char current_hash32[QSEECOM_HASH_SIZE];
- unsigned char new_hash32[QSEECOM_HASH_SIZE];
- enum qseecom_key_management_usage_type usage;
-};
-#define SHA256_DIGEST_LENGTH (256 / 8)
-struct qseecom_save_partition_hash_req {
- int partition_id;
- char digest[SHA256_DIGEST_LENGTH];
-};
-struct qseecom_is_es_activated_req {
- int is_activated;
-};
-struct qseecom_mdtp_cipher_dip_req {
- uint8_t * in_buf;
- uint32_t in_buf_size;
- uint8_t * out_buf;
- uint32_t out_buf_size;
- uint32_t direction;
-};
-enum qseecom_bandwidth_request_mode {
- INACTIVE = 0,
- LOW,
- MEDIUM,
- HIGH,
-};
-struct qseecom_send_modfd_listener_resp {
- void * resp_buf_ptr;
- unsigned int resp_len;
- struct qseecom_ion_fd_info ifd_data[MAX_ION_FD];
-};
-struct qseecom_qteec_req {
- void * req_ptr;
- uint32_t req_len;
- void * resp_ptr;
- uint32_t resp_len;
-};
-struct qseecom_qteec_modfd_req {
- void * req_ptr;
- uint32_t req_len;
- void * resp_ptr;
- uint32_t resp_len;
- struct qseecom_ion_fd_info ifd_data[MAX_ION_FD];
-};
-struct qseecom_sg_entry {
- uint32_t phys_addr;
- uint32_t len;
-};
-struct qseecom_sg_entry_64bit {
- uint64_t phys_addr;
- uint32_t len;
-} __attribute__((packed));
-#define QSEECOM_SG_LIST_BUF_FORMAT_VERSION_1 1
-#define QSEECOM_SG_LIST_BUF_FORMAT_VERSION_2 2
-struct qseecom_sg_list_buf_hdr_64bit {
- struct qseecom_sg_entry_64bit blank_entry;
- uint32_t version;
- uint64_t new_buf_phys_addr;
- uint32_t nents_total;
-} __attribute__((packed));
-#define QSEECOM_SG_LIST_BUF_HDR_SZ_64BIT sizeof(struct qseecom_sg_list_buf_hdr_64bit)
-#define MAX_CE_PIPE_PAIR_PER_UNIT 3
-#define INVALID_CE_INFO_UNIT_NUM 0xffffffff
-#define CE_PIPE_PAIR_USE_TYPE_FDE 0
-#define CE_PIPE_PAIR_USE_TYPE_PFE 1
-struct qseecom_ce_pipe_entry {
- int valid;
- unsigned int ce_num;
- unsigned int ce_pipe_pair;
-};
-#define MAX_CE_INFO_HANDLE_SIZE 32
-struct qseecom_ce_info_req {
- unsigned char handle[MAX_CE_INFO_HANDLE_SIZE];
- unsigned int usage;
- unsigned int unit_num;
- unsigned int num_ce_pipe_entries;
- struct qseecom_ce_pipe_entry ce_pipe_entry[MAX_CE_PIPE_PAIR_PER_UNIT];
-};
-#define SG_ENTRY_SZ sizeof(struct qseecom_sg_entry)
-#define SG_ENTRY_SZ_64BIT sizeof(struct qseecom_sg_entry_64bit)
-struct file;
-#define QSEECOM_IOC_MAGIC 0x97
-#define QSEECOM_IOCTL_REGISTER_LISTENER_REQ _IOWR(QSEECOM_IOC_MAGIC, 1, struct qseecom_register_listener_req)
-#define QSEECOM_IOCTL_UNREGISTER_LISTENER_REQ _IO(QSEECOM_IOC_MAGIC, 2)
-#define QSEECOM_IOCTL_SEND_CMD_REQ _IOWR(QSEECOM_IOC_MAGIC, 3, struct qseecom_send_cmd_req)
-#define QSEECOM_IOCTL_SEND_MODFD_CMD_REQ _IOWR(QSEECOM_IOC_MAGIC, 4, struct qseecom_send_modfd_cmd_req)
-#define QSEECOM_IOCTL_RECEIVE_REQ _IO(QSEECOM_IOC_MAGIC, 5)
-#define QSEECOM_IOCTL_SEND_RESP_REQ _IO(QSEECOM_IOC_MAGIC, 6)
-#define QSEECOM_IOCTL_LOAD_APP_REQ _IOWR(QSEECOM_IOC_MAGIC, 7, struct qseecom_load_img_req)
-#define QSEECOM_IOCTL_SET_MEM_PARAM_REQ _IOWR(QSEECOM_IOC_MAGIC, 8, struct qseecom_set_sb_mem_param_req)
-#define QSEECOM_IOCTL_UNLOAD_APP_REQ _IO(QSEECOM_IOC_MAGIC, 9)
-#define QSEECOM_IOCTL_GET_QSEOS_VERSION_REQ _IOWR(QSEECOM_IOC_MAGIC, 10, struct qseecom_qseos_version_req)
-#define QSEECOM_IOCTL_PERF_ENABLE_REQ _IO(QSEECOM_IOC_MAGIC, 11)
-#define QSEECOM_IOCTL_PERF_DISABLE_REQ _IO(QSEECOM_IOC_MAGIC, 12)
-#define QSEECOM_IOCTL_LOAD_EXTERNAL_ELF_REQ _IOWR(QSEECOM_IOC_MAGIC, 13, struct qseecom_load_img_req)
-#define QSEECOM_IOCTL_UNLOAD_EXTERNAL_ELF_REQ _IO(QSEECOM_IOC_MAGIC, 14)
-#define QSEECOM_IOCTL_APP_LOADED_QUERY_REQ _IOWR(QSEECOM_IOC_MAGIC, 15, struct qseecom_qseos_app_load_query)
-#define QSEECOM_IOCTL_SEND_CMD_SERVICE_REQ _IOWR(QSEECOM_IOC_MAGIC, 16, struct qseecom_send_svc_cmd_req)
-#define QSEECOM_IOCTL_CREATE_KEY_REQ _IOWR(QSEECOM_IOC_MAGIC, 17, struct qseecom_create_key_req)
-#define QSEECOM_IOCTL_WIPE_KEY_REQ _IOWR(QSEECOM_IOC_MAGIC, 18, struct qseecom_wipe_key_req)
-#define QSEECOM_IOCTL_SAVE_PARTITION_HASH_REQ _IOWR(QSEECOM_IOC_MAGIC, 19, struct qseecom_save_partition_hash_req)
-#define QSEECOM_IOCTL_IS_ES_ACTIVATED_REQ _IOWR(QSEECOM_IOC_MAGIC, 20, struct qseecom_is_es_activated_req)
-#define QSEECOM_IOCTL_SEND_MODFD_RESP _IOWR(QSEECOM_IOC_MAGIC, 21, struct qseecom_send_modfd_listener_resp)
-#define QSEECOM_IOCTL_SET_BUS_SCALING_REQ _IOWR(QSEECOM_IOC_MAGIC, 23, int)
-#define QSEECOM_IOCTL_UPDATE_KEY_USER_INFO_REQ _IOWR(QSEECOM_IOC_MAGIC, 24, struct qseecom_update_key_userinfo_req)
-#define QSEECOM_QTEEC_IOCTL_OPEN_SESSION_REQ _IOWR(QSEECOM_IOC_MAGIC, 30, struct qseecom_qteec_modfd_req)
-#define QSEECOM_QTEEC_IOCTL_CLOSE_SESSION_REQ _IOWR(QSEECOM_IOC_MAGIC, 31, struct qseecom_qteec_req)
-#define QSEECOM_QTEEC_IOCTL_INVOKE_MODFD_CMD_REQ _IOWR(QSEECOM_IOC_MAGIC, 32, struct qseecom_qteec_modfd_req)
-#define QSEECOM_QTEEC_IOCTL_REQUEST_CANCELLATION_REQ _IOWR(QSEECOM_IOC_MAGIC, 33, struct qseecom_qteec_modfd_req)
-#define QSEECOM_IOCTL_MDTP_CIPHER_DIP_REQ _IOWR(QSEECOM_IOC_MAGIC, 34, struct qseecom_mdtp_cipher_dip_req)
-#define QSEECOM_IOCTL_SEND_MODFD_CMD_64_REQ _IOWR(QSEECOM_IOC_MAGIC, 35, struct qseecom_send_modfd_cmd_req)
-#define QSEECOM_IOCTL_SEND_MODFD_RESP_64 _IOWR(QSEECOM_IOC_MAGIC, 36, struct qseecom_send_modfd_listener_resp)
-#define QSEECOM_IOCTL_GET_CE_PIPE_INFO _IOWR(QSEECOM_IOC_MAGIC, 40, struct qseecom_ce_info_req)
-#define QSEECOM_IOCTL_FREE_CE_PIPE_INFO _IOWR(QSEECOM_IOC_MAGIC, 41, struct qseecom_ce_info_req)
-#define QSEECOM_IOCTL_QUERY_CE_PIPE_INFO _IOWR(QSEECOM_IOC_MAGIC, 42, struct qseecom_ce_info_req)
-#endif
-
diff --git a/sdm710/kernel-headers/linux/rmnet_data.h b/sdm710/kernel-headers/linux/rmnet_data.h
deleted file mode 100644
index 71df613f..00000000
--- a/sdm710/kernel-headers/linux/rmnet_data.h
+++ /dev/null
@@ -1,115 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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)
-#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)
-#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)
-#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)
-#define RMNET_NETLINK_PROTO 31
-#define RMNET_MAX_STR_LEN 16
-#define RMNET_NL_DATA_MAX_LEN 64
-#define RMNET_NETLINK_MSG_COMMAND 0
-#define RMNET_NETLINK_MSG_RETURNCODE 1
-#define RMNET_NETLINK_MSG_RETURNDATA 2
-struct rmnet_nl_msg_s {
- uint16_t reserved;
- uint16_t message_type;
- uint16_t reserved2 : 14;
- uint16_t crd : 2;
- union {
- uint16_t arg_length;
- uint16_t return_code;
- };
- union {
- uint8_t data[RMNET_NL_DATA_MAX_LEN];
- struct {
- uint8_t dev[RMNET_MAX_STR_LEN];
- uint32_t flags;
- uint16_t agg_size;
- uint16_t agg_count;
- uint8_t tail_spacing;
- } data_format;
- struct {
- uint8_t dev[RMNET_MAX_STR_LEN];
- int32_t ep_id;
- uint8_t operating_mode;
- uint8_t next_dev[RMNET_MAX_STR_LEN];
- } local_ep_config;
- struct {
- uint32_t id;
- uint8_t vnd_name[RMNET_MAX_STR_LEN];
- } vnd;
- struct {
- uint32_t id;
- uint32_t map_flow_id;
- uint32_t tc_flow_id;
- } flow_control;
- };
-};
-enum rmnet_netlink_message_types_e {
- RMNET_NETLINK_ASSOCIATE_NETWORK_DEVICE,
- RMNET_NETLINK_UNASSOCIATE_NETWORK_DEVICE,
- 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,
- 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,
- RMNET_NETLINK_NEW_VND,
- RMNET_NETLINK_NEW_VND_WITH_PREFIX,
- RMNET_NETLINK_GET_VND_NAME,
- RMNET_NETLINK_FREE_VND,
- RMNET_NETLINK_ADD_VND_TC_FLOW,
- RMNET_NETLINK_DEL_VND_TC_FLOW,
- RMNET_NETLINK_NEW_VND_WITH_NAME
-};
-#define RMNET_NETLINK_NEW_VND_WITH_NAME RMNET_NETLINK_NEW_VND_WITH_NAME
-enum rmnet_config_endpoint_modes_e {
- RMNET_EPMODE_NONE,
- RMNET_EPMODE_VND,
- RMNET_EPMODE_BRIDGE,
- RMNET_EPMODE_LENGTH
-};
-enum rmnet_config_return_codes_e {
- RMNET_CONFIG_OK,
- RMNET_CONFIG_UNKNOWN_MESSAGE,
- RMNET_CONFIG_UNKNOWN_ERROR,
- RMNET_CONFIG_NOMEM,
- RMNET_CONFIG_DEVICE_IN_USE,
- RMNET_CONFIG_INVALID_REQUEST,
- RMNET_CONFIG_NO_SUCH_DEVICE,
- RMNET_CONFIG_BAD_ARGUMENTS,
- RMNET_CONFIG_BAD_EGRESS_DEVICE,
- RMNET_CONFIG_TC_HANDLE_FULL
-};
-#endif
-
diff --git a/sdm710/kernel-headers/linux/rmnet_ipa_fd_ioctl.h b/sdm710/kernel-headers/linux/rmnet_ipa_fd_ioctl.h
deleted file mode 100644
index c903b554..00000000
--- a/sdm710/kernel-headers/linux/rmnet_ipa_fd_ioctl.h
+++ /dev/null
@@ -1,140 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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_IPA_FD_IOCTL_H
-#define _RMNET_IPA_FD_IOCTL_H
-#include <linux/ioctl.h>
-#include <linux/ipa_qmi_service_v01.h>
-#include <linux/msm_ipa.h>
-#define WAN_IOC_MAGIC 0x69
-#define WAN_IOCTL_ADD_FLT_RULE 0
-#define WAN_IOCTL_ADD_FLT_INDEX 1
-#define WAN_IOCTL_VOTE_FOR_BW_MBPS 2
-#define WAN_IOCTL_POLL_TETHERING_STATS 3
-#define WAN_IOCTL_SET_DATA_QUOTA 4
-#define WAN_IOCTL_SET_TETHER_CLIENT_PIPE 5
-#define WAN_IOCTL_QUERY_TETHER_STATS 6
-#define WAN_IOCTL_RESET_TETHER_STATS 7
-#define WAN_IOCTL_QUERY_DL_FILTER_STATS 8
-#define WAN_IOCTL_ADD_FLT_RULE_EX 9
-#define WAN_IOCTL_QUERY_TETHER_STATS_ALL 10
-#define WAN_IOCTL_NOTIFY_WAN_STATE 11
-#define WAN_IOCTL_ADD_UL_FLT_RULE 12
-#define WAN_IOCTL_ENABLE_PER_CLIENT_STATS 13
-#define WAN_IOCTL_QUERY_PER_CLIENT_STATS 14
-#define WAN_IOCTL_SET_LAN_CLIENT_INFO 15
-#define WAN_IOCTL_CLEAR_LAN_CLIENT_INFO 16
-#define WAN_IOCTL_SEND_LAN_CLIENT_MSG 17
-#ifndef IFNAMSIZ
-#define IFNAMSIZ 16
-#endif
-struct wan_ioctl_poll_tethering_stats {
- uint64_t polling_interval_secs;
- uint8_t reset_stats;
-};
-struct wan_ioctl_set_data_quota {
- char interface_name[IFNAMSIZ];
- uint64_t quota_mbytes;
- uint8_t set_quota;
-};
-struct wan_ioctl_set_tether_client_pipe {
- enum ipacm_client_enum ipa_client;
- uint8_t reset_client;
- uint32_t ul_src_pipe_len;
- uint32_t ul_src_pipe_list[QMI_IPA_MAX_PIPES_V01];
- uint32_t dl_dst_pipe_len;
- uint32_t dl_dst_pipe_list[QMI_IPA_MAX_PIPES_V01];
-};
-struct wan_ioctl_query_tether_stats {
- char upstreamIface[IFNAMSIZ];
- char tetherIface[IFNAMSIZ];
- enum ipacm_client_enum ipa_client;
- uint64_t ipv4_tx_packets;
- uint64_t ipv4_tx_bytes;
- uint64_t ipv4_rx_packets;
- uint64_t ipv4_rx_bytes;
- uint64_t ipv6_tx_packets;
- uint64_t ipv6_tx_bytes;
- uint64_t ipv6_rx_packets;
- uint64_t ipv6_rx_bytes;
-};
-struct wan_ioctl_query_tether_stats_all {
- char upstreamIface[IFNAMSIZ];
- enum ipacm_client_enum ipa_client;
- uint8_t reset_stats;
- uint64_t tx_bytes;
- uint64_t rx_bytes;
-};
-struct wan_ioctl_reset_tether_stats {
- char upstreamIface[IFNAMSIZ];
- uint8_t reset_stats;
-};
-struct wan_ioctl_query_dl_filter_stats {
- uint8_t reset_stats;
- struct ipa_get_data_stats_resp_msg_v01 stats_resp;
- uint32_t index;
-};
-struct wan_ioctl_notify_wan_state {
- uint8_t up;
-};
-struct wan_ioctl_send_lan_client_msg {
- struct ipa_lan_client_msg lan_client;
- enum ipa_per_client_stats_event client_event;
-};
-struct wan_ioctl_lan_client_info {
- enum ipacm_per_client_device_type device_type;
- uint8_t mac[IPA_MAC_ADDR_SIZE];
- uint8_t client_init;
- int8_t client_idx;
- uint8_t hdr_len;
- enum ipa_client_type ul_src_pipe;
-};
-struct wan_ioctl_per_client_info {
- uint8_t mac[IPA_MAC_ADDR_SIZE];
- uint64_t ipv4_tx_bytes;
- uint64_t ipv4_rx_bytes;
- uint64_t ipv6_tx_bytes;
- uint64_t ipv6_rx_bytes;
-};
-struct wan_ioctl_query_per_client_stats {
- enum ipacm_per_client_device_type device_type;
- uint8_t reset_stats;
- uint8_t disconnect_clnt;
- uint8_t num_clients;
- struct wan_ioctl_per_client_info client_info[IPA_MAX_NUM_HW_PATH_CLIENTS];
-};
-#define WAN_IOC_ADD_FLT_RULE _IOWR(WAN_IOC_MAGIC, WAN_IOCTL_ADD_FLT_RULE, struct ipa_install_fltr_rule_req_msg_v01 *)
-#define WAN_IOC_ADD_FLT_RULE_INDEX _IOWR(WAN_IOC_MAGIC, WAN_IOCTL_ADD_FLT_INDEX, struct ipa_fltr_installed_notif_req_msg_v01 *)
-#define WAN_IOC_VOTE_FOR_BW_MBPS _IOWR(WAN_IOC_MAGIC, WAN_IOCTL_VOTE_FOR_BW_MBPS, uint32_t *)
-#define WAN_IOC_POLL_TETHERING_STATS _IOWR(WAN_IOC_MAGIC, WAN_IOCTL_POLL_TETHERING_STATS, struct wan_ioctl_poll_tethering_stats *)
-#define WAN_IOC_SET_DATA_QUOTA _IOWR(WAN_IOC_MAGIC, WAN_IOCTL_SET_DATA_QUOTA, struct wan_ioctl_set_data_quota *)
-#define WAN_IOC_SET_TETHER_CLIENT_PIPE _IOWR(WAN_IOC_MAGIC, WAN_IOCTL_SET_TETHER_CLIENT_PIPE, struct wan_ioctl_set_tether_client_pipe *)
-#define WAN_IOC_QUERY_TETHER_STATS _IOWR(WAN_IOC_MAGIC, WAN_IOCTL_QUERY_TETHER_STATS, struct wan_ioctl_query_tether_stats *)
-#define WAN_IOC_RESET_TETHER_STATS _IOWR(WAN_IOC_MAGIC, WAN_IOCTL_RESET_TETHER_STATS, struct wan_ioctl_reset_tether_stats *)
-#define WAN_IOC_QUERY_DL_FILTER_STATS _IOWR(WAN_IOC_MAGIC, WAN_IOCTL_QUERY_DL_FILTER_STATS, struct wan_ioctl_query_dl_filter_stats *)
-#define WAN_IOC_ADD_FLT_RULE_EX _IOWR(WAN_IOC_MAGIC, WAN_IOCTL_ADD_FLT_RULE_EX, struct ipa_install_fltr_rule_req_ex_msg_v01 *)
-#define WAN_IOC_QUERY_TETHER_STATS_ALL _IOWR(WAN_IOC_MAGIC, WAN_IOCTL_QUERY_TETHER_STATS_ALL, struct wan_ioctl_query_tether_stats_all *)
-#define WAN_IOC_NOTIFY_WAN_STATE _IOWR(WAN_IOC_MAGIC, WAN_IOCTL_NOTIFY_WAN_STATE, struct wan_ioctl_notify_wan_state *)
-#define WAN_IOC_ADD_UL_FLT_RULE _IOWR(WAN_IOC_MAGIC, WAN_IOCTL_ADD_UL_FLT_RULE, struct ipa_configure_ul_firewall_rules_req_msg_v01 *)
-#define WAN_IOC_ENABLE_PER_CLIENT_STATS _IOWR(WAN_IOC_MAGIC, WAN_IOCTL_ENABLE_PER_CLIENT_STATS, bool *)
-#define WAN_IOC_QUERY_PER_CLIENT_STATS _IOWR(WAN_IOC_MAGIC, WAN_IOCTL_QUERY_PER_CLIENT_STATS, struct wan_ioctl_query_per_client_stats *)
-#define WAN_IOC_SET_LAN_CLIENT_INFO _IOWR(WAN_IOC_MAGIC, WAN_IOCTL_SET_LAN_CLIENT_INFO, struct wan_ioctl_lan_client_info *)
-#define WAN_IOC_SEND_LAN_CLIENT_MSG _IOWR(WAN_IOC_MAGIC, WAN_IOCTL_SEND_LAN_CLIENT_MSG, struct wan_ioctl_send_lan_client_msg *)
-#define WAN_IOC_CLEAR_LAN_CLIENT_INFO _IOWR(WAN_IOC_MAGIC, WAN_IOCTL_CLEAR_LAN_CLIENT_INFO, struct wan_ioctl_lan_client_info *)
-#endif
-
diff --git a/sdm710/kernel-headers/linux/sockios.h b/sdm710/kernel-headers/linux/sockios.h
deleted file mode 100644
index b9a2ac4f..00000000
--- a/sdm710/kernel-headers/linux/sockios.h
+++ /dev/null
@@ -1,99 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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
-#define SIOCOUTQ TIOCOUTQ
-#define SIOCADDRT 0x890B
-#define SIOCDELRT 0x890C
-#define SIOCRTMSG 0x890D
-#define SIOCGIFNAME 0x8910
-#define SIOCSIFLINK 0x8911
-#define SIOCGIFCONF 0x8912
-#define SIOCGIFFLAGS 0x8913
-#define SIOCSIFFLAGS 0x8914
-#define SIOCGIFADDR 0x8915
-#define SIOCSIFADDR 0x8916
-#define SIOCGIFDSTADDR 0x8917
-#define SIOCSIFDSTADDR 0x8918
-#define SIOCGIFBRDADDR 0x8919
-#define SIOCSIFBRDADDR 0x891a
-#define SIOCGIFNETMASK 0x891b
-#define SIOCSIFNETMASK 0x891c
-#define SIOCGIFMETRIC 0x891d
-#define SIOCSIFMETRIC 0x891e
-#define SIOCGIFMEM 0x891f
-#define SIOCSIFMEM 0x8920
-#define SIOCGIFMTU 0x8921
-#define SIOCSIFMTU 0x8922
-#define SIOCSIFNAME 0x8923
-#define SIOCSIFHWADDR 0x8924
-#define SIOCGIFENCAP 0x8925
-#define SIOCSIFENCAP 0x8926
-#define SIOCGIFHWADDR 0x8927
-#define SIOCGIFSLAVE 0x8929
-#define SIOCSIFSLAVE 0x8930
-#define SIOCADDMULTI 0x8931
-#define SIOCDELMULTI 0x8932
-#define SIOCGIFINDEX 0x8933
-#define SIOGIFINDEX SIOCGIFINDEX
-#define SIOCSIFPFLAGS 0x8934
-#define SIOCGIFPFLAGS 0x8935
-#define SIOCDIFADDR 0x8936
-#define SIOCSIFHWBROADCAST 0x8937
-#define SIOCGIFCOUNT 0x8938
-#define SIOCGIFBR 0x8940
-#define SIOCSIFBR 0x8941
-#define SIOCGIFTXQLEN 0x8942
-#define SIOCSIFTXQLEN 0x8943
-#define SIOCETHTOOL 0x8946
-#define SIOCGMIIPHY 0x8947
-#define SIOCGMIIREG 0x8948
-#define SIOCSMIIREG 0x8949
-#define SIOCWANDEV 0x894A
-#define SIOCOUTQNSD 0x894B
-#define SIOCDARP 0x8953
-#define SIOCGARP 0x8954
-#define SIOCSARP 0x8955
-#define SIOCDRARP 0x8960
-#define SIOCGRARP 0x8961
-#define SIOCSRARP 0x8962
-#define SIOCGIFMAP 0x8970
-#define SIOCSIFMAP 0x8971
-#define SIOCADDDLCI 0x8980
-#define SIOCDELDLCI 0x8981
-#define SIOCGIFVLAN 0x8982
-#define SIOCSIFVLAN 0x8983
-#define SIOCBONDENSLAVE 0x8990
-#define SIOCBONDRELEASE 0x8991
-#define SIOCBONDSETHWADDR 0x8992
-#define SIOCBONDSLAVEINFOQUERY 0x8993
-#define SIOCBONDINFOQUERY 0x8994
-#define SIOCBONDCHANGEACTIVE 0x8995
-#define SIOCBRADDBR 0x89a0
-#define SIOCBRDELBR 0x89a1
-#define SIOCBRADDIF 0x89a2
-#define SIOCBRDELIF 0x89a3
-#define SIOCSHWTSTAMP 0x89b0
-#define SIOCGHWTSTAMP 0x89b1
-#define SIOCDEVPRIVATE 0x89F0
-#define SIOCPROTOPRIVATE 0x89E0
-#endif
-
diff --git a/sdm710/kernel-headers/linux/spcom.h b/sdm710/kernel-headers/linux/spcom.h
deleted file mode 100644
index b468f622..00000000
--- a/sdm710/kernel-headers/linux/spcom.h
+++ /dev/null
@@ -1,78 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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 _SPCOM_H_
-#define _SPCOM_H_
-#include <linux/types.h>
-#ifndef BIT
-#define BIT(x) (1 << x)
-#endif
-#ifndef PAGE_SIZE
-#define PAGE_SIZE 4096
-#endif
-#define SPCOM_MAX_CHANNELS 0x20
-#define SPCOM_CHANNEL_NAME_SIZE 32
-#define SPCOM_GET_NEXT_REQUEST_SIZE (PAGE_SIZE - 1)
-enum spcom_cmd_id {
- SPCOM_CMD_LOAD_APP = 0x4C4F4144,
- SPCOM_CMD_RESET_SP = 0x52455354,
- SPCOM_CMD_SEND = 0x53454E44,
- SPCOM_CMD_SEND_MODIFIED = 0x534E444D,
- SPCOM_CMD_LOCK_ION_BUF = 0x4C4F434B,
- SPCOM_CMD_UNLOCK_ION_BUF = 0x554C434B,
- SPCOM_CMD_FSSR = 0x46535352,
- SPCOM_CMD_CREATE_CHANNEL = 0x43524554,
-};
-enum spcom_poll_events {
- SPCOM_POLL_LINK_STATE = BIT(1),
- SPCOM_POLL_CH_CONNECT = BIT(2),
- SPCOM_POLL_READY_FLAG = BIT(14),
- SPCOM_POLL_WAIT_FLAG = BIT(15),
-};
-struct spcom_user_command {
- enum spcom_cmd_id cmd_id;
- uint32_t arg;
-} __attribute__((packed));
-struct spcom_send_command {
- enum spcom_cmd_id cmd_id;
- uint32_t timeout_msec;
- uint32_t buf_size;
- char buf[0];
-} __attribute__((packed));
-struct spcom_user_create_channel_command {
- enum spcom_cmd_id cmd_id;
- char ch_name[SPCOM_CHANNEL_NAME_SIZE];
-} __attribute__((packed));
-#define SPCOM_MAX_ION_BUF 4
-struct spcom_ion_info {
- int32_t fd;
- uint32_t buf_offset;
-};
-#define SPCOM_ION_FD_UNLOCK_ALL 0xFFFF
-struct spcom_ion_handle {
- int32_t fd;
-};
-struct spcom_user_send_modified_command {
- enum spcom_cmd_id cmd_id;
- struct spcom_ion_info ion_info[SPCOM_MAX_ION_BUF];
- uint32_t timeout_msec;
- uint32_t buf_size;
- char buf[0];
-} __attribute__((packed));
-#endif
-
diff --git a/sdm710/kernel-headers/linux/v4l2-controls.h b/sdm710/kernel-headers/linux/v4l2-controls.h
deleted file mode 100644
index e1046c68..00000000
--- a/sdm710/kernel-headers/linux/v4l2-controls.h
+++ /dev/null
@@ -1,1286 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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_V4L2_CONTROLS_H
-#define __LINUX_V4L2_CONTROLS_H
-#define V4L2_CTRL_CLASS_USER 0x00980000
-#define V4L2_CTRL_CLASS_MPEG 0x00990000
-#define V4L2_CTRL_CLASS_CAMERA 0x009a0000
-#define V4L2_CTRL_CLASS_FM_TX 0x009b0000
-#define V4L2_CTRL_CLASS_FLASH 0x009c0000
-#define V4L2_CTRL_CLASS_JPEG 0x009d0000
-#define V4L2_CTRL_CLASS_IMAGE_SOURCE 0x009e0000
-#define V4L2_CTRL_CLASS_IMAGE_PROC 0x009f0000
-#define V4L2_CTRL_CLASS_DV 0x00a00000
-#define V4L2_CTRL_CLASS_FM_RX 0x00a10000
-#define V4L2_CTRL_CLASS_RF_TUNER 0x00a20000
-#define V4L2_CTRL_CLASS_DETECT 0x00a30000
-#define V4L2_CID_BASE (V4L2_CTRL_CLASS_USER | 0x900)
-#define V4L2_CID_USER_BASE V4L2_CID_BASE
-#define V4L2_CID_USER_CLASS (V4L2_CTRL_CLASS_USER | 1)
-#define V4L2_CID_BRIGHTNESS (V4L2_CID_BASE + 0)
-#define V4L2_CID_CONTRAST (V4L2_CID_BASE + 1)
-#define V4L2_CID_SATURATION (V4L2_CID_BASE + 2)
-#define V4L2_CID_HUE (V4L2_CID_BASE + 3)
-#define V4L2_CID_AUDIO_VOLUME (V4L2_CID_BASE + 5)
-#define V4L2_CID_AUDIO_BALANCE (V4L2_CID_BASE + 6)
-#define V4L2_CID_AUDIO_BASS (V4L2_CID_BASE + 7)
-#define V4L2_CID_AUDIO_TREBLE (V4L2_CID_BASE + 8)
-#define V4L2_CID_AUDIO_MUTE (V4L2_CID_BASE + 9)
-#define V4L2_CID_AUDIO_LOUDNESS (V4L2_CID_BASE + 10)
-#define V4L2_CID_BLACK_LEVEL (V4L2_CID_BASE + 11)
-#define V4L2_CID_AUTO_WHITE_BALANCE (V4L2_CID_BASE + 12)
-#define V4L2_CID_DO_WHITE_BALANCE (V4L2_CID_BASE + 13)
-#define V4L2_CID_RED_BALANCE (V4L2_CID_BASE + 14)
-#define V4L2_CID_BLUE_BALANCE (V4L2_CID_BASE + 15)
-#define V4L2_CID_GAMMA (V4L2_CID_BASE + 16)
-#define V4L2_CID_WHITENESS (V4L2_CID_GAMMA)
-#define V4L2_CID_EXPOSURE (V4L2_CID_BASE + 17)
-#define V4L2_CID_AUTOGAIN (V4L2_CID_BASE + 18)
-#define V4L2_CID_GAIN (V4L2_CID_BASE + 19)
-#define V4L2_CID_HFLIP (V4L2_CID_BASE + 20)
-#define V4L2_CID_VFLIP (V4L2_CID_BASE + 21)
-#define V4L2_CID_POWER_LINE_FREQUENCY (V4L2_CID_BASE + 24)
-enum v4l2_power_line_frequency {
- V4L2_CID_POWER_LINE_FREQUENCY_DISABLED = 0,
- V4L2_CID_POWER_LINE_FREQUENCY_50HZ = 1,
- V4L2_CID_POWER_LINE_FREQUENCY_60HZ = 2,
- V4L2_CID_POWER_LINE_FREQUENCY_AUTO = 3,
-};
-#define V4L2_CID_HUE_AUTO (V4L2_CID_BASE + 25)
-#define V4L2_CID_WHITE_BALANCE_TEMPERATURE (V4L2_CID_BASE + 26)
-#define V4L2_CID_SHARPNESS (V4L2_CID_BASE + 27)
-#define V4L2_CID_BACKLIGHT_COMPENSATION (V4L2_CID_BASE + 28)
-#define V4L2_CID_CHROMA_AGC (V4L2_CID_BASE + 29)
-#define V4L2_CID_COLOR_KILLER (V4L2_CID_BASE + 30)
-#define V4L2_CID_COLORFX (V4L2_CID_BASE + 31)
-enum v4l2_colorfx {
- V4L2_COLORFX_NONE = 0,
- V4L2_COLORFX_BW = 1,
- V4L2_COLORFX_SEPIA = 2,
- V4L2_COLORFX_NEGATIVE = 3,
- V4L2_COLORFX_EMBOSS = 4,
- V4L2_COLORFX_SKETCH = 5,
- V4L2_COLORFX_SKY_BLUE = 6,
- V4L2_COLORFX_GRASS_GREEN = 7,
- V4L2_COLORFX_SKIN_WHITEN = 8,
- V4L2_COLORFX_VIVID = 9,
- V4L2_COLORFX_AQUA = 10,
- V4L2_COLORFX_ART_FREEZE = 11,
- V4L2_COLORFX_SILHOUETTE = 12,
- V4L2_COLORFX_SOLARIZATION = 13,
- V4L2_COLORFX_ANTIQUE = 14,
- V4L2_COLORFX_SET_CBCR = 15,
-};
-#define V4L2_CID_AUTOBRIGHTNESS (V4L2_CID_BASE + 32)
-#define V4L2_CID_BAND_STOP_FILTER (V4L2_CID_BASE + 33)
-#define V4L2_CID_ROTATE (V4L2_CID_BASE + 34)
-#define V4L2_CID_BG_COLOR (V4L2_CID_BASE + 35)
-#define V4L2_CID_CHROMA_GAIN (V4L2_CID_BASE + 36)
-#define V4L2_CID_ILLUMINATORS_1 (V4L2_CID_BASE + 37)
-#define V4L2_CID_ILLUMINATORS_2 (V4L2_CID_BASE + 38)
-#define V4L2_CID_MIN_BUFFERS_FOR_CAPTURE (V4L2_CID_BASE + 39)
-#define V4L2_CID_MIN_BUFFERS_FOR_OUTPUT (V4L2_CID_BASE + 40)
-#define V4L2_CID_ALPHA_COMPONENT (V4L2_CID_BASE + 41)
-#define V4L2_CID_COLORFX_CBCR (V4L2_CID_BASE + 42)
-#define V4L2_CID_LASTP1 (V4L2_CID_BASE + 43)
-#define V4L2_CID_USER_MEYE_BASE (V4L2_CID_USER_BASE + 0x1000)
-#define V4L2_CID_USER_BTTV_BASE (V4L2_CID_USER_BASE + 0x1010)
-#define V4L2_CID_USER_S2255_BASE (V4L2_CID_USER_BASE + 0x1030)
-#define V4L2_CID_USER_SI476X_BASE (V4L2_CID_USER_BASE + 0x1040)
-#define V4L2_CID_USER_TI_VPE_BASE (V4L2_CID_USER_BASE + 0x1050)
-#define V4L2_CID_USER_SAA7134_BASE (V4L2_CID_USER_BASE + 0x1060)
-#define V4L2_CID_USER_ADV7180_BASE (V4L2_CID_USER_BASE + 0x1070)
-#define V4L2_CID_USER_TC358743_BASE (V4L2_CID_USER_BASE + 0x1080)
-#define V4L2_CID_MPEG_BASE (V4L2_CTRL_CLASS_MPEG | 0x900)
-#define V4L2_CID_MPEG_CLASS (V4L2_CTRL_CLASS_MPEG | 1)
-#define V4L2_CID_MPEG_STREAM_TYPE (V4L2_CID_MPEG_BASE + 0)
-enum v4l2_mpeg_stream_type {
- V4L2_MPEG_STREAM_TYPE_MPEG2_PS = 0,
- V4L2_MPEG_STREAM_TYPE_MPEG2_TS = 1,
- V4L2_MPEG_STREAM_TYPE_MPEG1_SS = 2,
- V4L2_MPEG_STREAM_TYPE_MPEG2_DVD = 3,
- V4L2_MPEG_STREAM_TYPE_MPEG1_VCD = 4,
- V4L2_MPEG_STREAM_TYPE_MPEG2_SVCD = 5,
-};
-#define V4L2_CID_MPEG_STREAM_PID_PMT (V4L2_CID_MPEG_BASE + 1)
-#define V4L2_CID_MPEG_STREAM_PID_AUDIO (V4L2_CID_MPEG_BASE + 2)
-#define V4L2_CID_MPEG_STREAM_PID_VIDEO (V4L2_CID_MPEG_BASE + 3)
-#define V4L2_CID_MPEG_STREAM_PID_PCR (V4L2_CID_MPEG_BASE + 4)
-#define V4L2_CID_MPEG_STREAM_PES_ID_AUDIO (V4L2_CID_MPEG_BASE + 5)
-#define V4L2_CID_MPEG_STREAM_PES_ID_VIDEO (V4L2_CID_MPEG_BASE + 6)
-#define V4L2_CID_MPEG_STREAM_VBI_FMT (V4L2_CID_MPEG_BASE + 7)
-enum v4l2_mpeg_stream_vbi_fmt {
- V4L2_MPEG_STREAM_VBI_FMT_NONE = 0,
- V4L2_MPEG_STREAM_VBI_FMT_IVTV = 1,
-};
-#define V4L2_CID_MPEG_AUDIO_SAMPLING_FREQ (V4L2_CID_MPEG_BASE + 100)
-enum v4l2_mpeg_audio_sampling_freq {
- V4L2_MPEG_AUDIO_SAMPLING_FREQ_44100 = 0,
- V4L2_MPEG_AUDIO_SAMPLING_FREQ_48000 = 1,
- V4L2_MPEG_AUDIO_SAMPLING_FREQ_32000 = 2,
-};
-#define V4L2_CID_MPEG_AUDIO_ENCODING (V4L2_CID_MPEG_BASE + 101)
-enum v4l2_mpeg_audio_encoding {
- V4L2_MPEG_AUDIO_ENCODING_LAYER_1 = 0,
- V4L2_MPEG_AUDIO_ENCODING_LAYER_2 = 1,
- V4L2_MPEG_AUDIO_ENCODING_LAYER_3 = 2,
- V4L2_MPEG_AUDIO_ENCODING_AAC = 3,
- V4L2_MPEG_AUDIO_ENCODING_AC3 = 4,
-};
-#define V4L2_CID_MPEG_AUDIO_L1_BITRATE (V4L2_CID_MPEG_BASE + 102)
-enum v4l2_mpeg_audio_l1_bitrate {
- V4L2_MPEG_AUDIO_L1_BITRATE_32K = 0,
- V4L2_MPEG_AUDIO_L1_BITRATE_64K = 1,
- V4L2_MPEG_AUDIO_L1_BITRATE_96K = 2,
- V4L2_MPEG_AUDIO_L1_BITRATE_128K = 3,
- V4L2_MPEG_AUDIO_L1_BITRATE_160K = 4,
- V4L2_MPEG_AUDIO_L1_BITRATE_192K = 5,
- V4L2_MPEG_AUDIO_L1_BITRATE_224K = 6,
- V4L2_MPEG_AUDIO_L1_BITRATE_256K = 7,
- V4L2_MPEG_AUDIO_L1_BITRATE_288K = 8,
- V4L2_MPEG_AUDIO_L1_BITRATE_320K = 9,
- V4L2_MPEG_AUDIO_L1_BITRATE_352K = 10,
- V4L2_MPEG_AUDIO_L1_BITRATE_384K = 11,
- V4L2_MPEG_AUDIO_L1_BITRATE_416K = 12,
- V4L2_MPEG_AUDIO_L1_BITRATE_448K = 13,
-};
-#define V4L2_CID_MPEG_AUDIO_L2_BITRATE (V4L2_CID_MPEG_BASE + 103)
-enum v4l2_mpeg_audio_l2_bitrate {
- V4L2_MPEG_AUDIO_L2_BITRATE_32K = 0,
- V4L2_MPEG_AUDIO_L2_BITRATE_48K = 1,
- V4L2_MPEG_AUDIO_L2_BITRATE_56K = 2,
- V4L2_MPEG_AUDIO_L2_BITRATE_64K = 3,
- V4L2_MPEG_AUDIO_L2_BITRATE_80K = 4,
- V4L2_MPEG_AUDIO_L2_BITRATE_96K = 5,
- V4L2_MPEG_AUDIO_L2_BITRATE_112K = 6,
- V4L2_MPEG_AUDIO_L2_BITRATE_128K = 7,
- V4L2_MPEG_AUDIO_L2_BITRATE_160K = 8,
- V4L2_MPEG_AUDIO_L2_BITRATE_192K = 9,
- V4L2_MPEG_AUDIO_L2_BITRATE_224K = 10,
- V4L2_MPEG_AUDIO_L2_BITRATE_256K = 11,
- V4L2_MPEG_AUDIO_L2_BITRATE_320K = 12,
- V4L2_MPEG_AUDIO_L2_BITRATE_384K = 13,
-};
-#define V4L2_CID_MPEG_AUDIO_L3_BITRATE (V4L2_CID_MPEG_BASE + 104)
-enum v4l2_mpeg_audio_l3_bitrate {
- V4L2_MPEG_AUDIO_L3_BITRATE_32K = 0,
- V4L2_MPEG_AUDIO_L3_BITRATE_40K = 1,
- V4L2_MPEG_AUDIO_L3_BITRATE_48K = 2,
- V4L2_MPEG_AUDIO_L3_BITRATE_56K = 3,
- V4L2_MPEG_AUDIO_L3_BITRATE_64K = 4,
- V4L2_MPEG_AUDIO_L3_BITRATE_80K = 5,
- V4L2_MPEG_AUDIO_L3_BITRATE_96K = 6,
- V4L2_MPEG_AUDIO_L3_BITRATE_112K = 7,
- V4L2_MPEG_AUDIO_L3_BITRATE_128K = 8,
- V4L2_MPEG_AUDIO_L3_BITRATE_160K = 9,
- V4L2_MPEG_AUDIO_L3_BITRATE_192K = 10,
- V4L2_MPEG_AUDIO_L3_BITRATE_224K = 11,
- V4L2_MPEG_AUDIO_L3_BITRATE_256K = 12,
- V4L2_MPEG_AUDIO_L3_BITRATE_320K = 13,
-};
-#define V4L2_CID_MPEG_AUDIO_MODE (V4L2_CID_MPEG_BASE + 105)
-enum v4l2_mpeg_audio_mode {
- V4L2_MPEG_AUDIO_MODE_STEREO = 0,
- V4L2_MPEG_AUDIO_MODE_JOINT_STEREO = 1,
- V4L2_MPEG_AUDIO_MODE_DUAL = 2,
- V4L2_MPEG_AUDIO_MODE_MONO = 3,
-};
-#define V4L2_CID_MPEG_AUDIO_MODE_EXTENSION (V4L2_CID_MPEG_BASE + 106)
-enum v4l2_mpeg_audio_mode_extension {
- V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_4 = 0,
- V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_8 = 1,
- V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_12 = 2,
- V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_16 = 3,
-};
-#define V4L2_CID_MPEG_AUDIO_EMPHASIS (V4L2_CID_MPEG_BASE + 107)
-enum v4l2_mpeg_audio_emphasis {
- V4L2_MPEG_AUDIO_EMPHASIS_NONE = 0,
- V4L2_MPEG_AUDIO_EMPHASIS_50_DIV_15_uS = 1,
- V4L2_MPEG_AUDIO_EMPHASIS_CCITT_J17 = 2,
-};
-#define V4L2_CID_MPEG_AUDIO_CRC (V4L2_CID_MPEG_BASE + 108)
-enum v4l2_mpeg_audio_crc {
- V4L2_MPEG_AUDIO_CRC_NONE = 0,
- V4L2_MPEG_AUDIO_CRC_CRC16 = 1,
-};
-#define V4L2_CID_MPEG_AUDIO_MUTE (V4L2_CID_MPEG_BASE + 109)
-#define V4L2_CID_MPEG_AUDIO_AAC_BITRATE (V4L2_CID_MPEG_BASE + 110)
-#define V4L2_CID_MPEG_AUDIO_AC3_BITRATE (V4L2_CID_MPEG_BASE + 111)
-enum v4l2_mpeg_audio_ac3_bitrate {
- V4L2_MPEG_AUDIO_AC3_BITRATE_32K = 0,
- V4L2_MPEG_AUDIO_AC3_BITRATE_40K = 1,
- V4L2_MPEG_AUDIO_AC3_BITRATE_48K = 2,
- V4L2_MPEG_AUDIO_AC3_BITRATE_56K = 3,
- V4L2_MPEG_AUDIO_AC3_BITRATE_64K = 4,
- V4L2_MPEG_AUDIO_AC3_BITRATE_80K = 5,
- V4L2_MPEG_AUDIO_AC3_BITRATE_96K = 6,
- V4L2_MPEG_AUDIO_AC3_BITRATE_112K = 7,
- V4L2_MPEG_AUDIO_AC3_BITRATE_128K = 8,
- V4L2_MPEG_AUDIO_AC3_BITRATE_160K = 9,
- V4L2_MPEG_AUDIO_AC3_BITRATE_192K = 10,
- V4L2_MPEG_AUDIO_AC3_BITRATE_224K = 11,
- V4L2_MPEG_AUDIO_AC3_BITRATE_256K = 12,
- V4L2_MPEG_AUDIO_AC3_BITRATE_320K = 13,
- V4L2_MPEG_AUDIO_AC3_BITRATE_384K = 14,
- V4L2_MPEG_AUDIO_AC3_BITRATE_448K = 15,
- V4L2_MPEG_AUDIO_AC3_BITRATE_512K = 16,
- V4L2_MPEG_AUDIO_AC3_BITRATE_576K = 17,
- V4L2_MPEG_AUDIO_AC3_BITRATE_640K = 18,
-};
-#define V4L2_CID_MPEG_AUDIO_DEC_PLAYBACK (V4L2_CID_MPEG_BASE + 112)
-enum v4l2_mpeg_audio_dec_playback {
- V4L2_MPEG_AUDIO_DEC_PLAYBACK_AUTO = 0,
- V4L2_MPEG_AUDIO_DEC_PLAYBACK_STEREO = 1,
- V4L2_MPEG_AUDIO_DEC_PLAYBACK_LEFT = 2,
- V4L2_MPEG_AUDIO_DEC_PLAYBACK_RIGHT = 3,
- V4L2_MPEG_AUDIO_DEC_PLAYBACK_MONO = 4,
- V4L2_MPEG_AUDIO_DEC_PLAYBACK_SWAPPED_STEREO = 5,
-};
-#define V4L2_CID_MPEG_AUDIO_DEC_MULTILINGUAL_PLAYBACK (V4L2_CID_MPEG_BASE + 113)
-#define V4L2_CID_MPEG_VIDEO_ENCODING (V4L2_CID_MPEG_BASE + 200)
-enum v4l2_mpeg_video_encoding {
- V4L2_MPEG_VIDEO_ENCODING_MPEG_1 = 0,
- V4L2_MPEG_VIDEO_ENCODING_MPEG_2 = 1,
- V4L2_MPEG_VIDEO_ENCODING_MPEG_4_AVC = 2,
-};
-#define V4L2_CID_MPEG_VIDEO_ASPECT (V4L2_CID_MPEG_BASE + 201)
-enum v4l2_mpeg_video_aspect {
- V4L2_MPEG_VIDEO_ASPECT_1x1 = 0,
- V4L2_MPEG_VIDEO_ASPECT_4x3 = 1,
- V4L2_MPEG_VIDEO_ASPECT_16x9 = 2,
- V4L2_MPEG_VIDEO_ASPECT_221x100 = 3,
-};
-#define V4L2_CID_MPEG_VIDEO_B_FRAMES (V4L2_CID_MPEG_BASE + 202)
-#define V4L2_CID_MPEG_VIDEO_GOP_SIZE (V4L2_CID_MPEG_BASE + 203)
-#define V4L2_CID_MPEG_VIDEO_GOP_CLOSURE (V4L2_CID_MPEG_BASE + 204)
-#define V4L2_CID_MPEG_VIDEO_PULLDOWN (V4L2_CID_MPEG_BASE + 205)
-#define V4L2_CID_MPEG_VIDEO_BITRATE_MODE (V4L2_CID_MPEG_BASE + 206)
-enum v4l2_mpeg_video_bitrate_mode {
- V4L2_MPEG_VIDEO_BITRATE_MODE_VBR = 0,
- V4L2_MPEG_VIDEO_BITRATE_MODE_CBR = 1,
-};
-#define V4L2_CID_MPEG_VIDEO_BITRATE (V4L2_CID_MPEG_BASE + 207)
-#define V4L2_CID_MPEG_VIDEO_BITRATE_PEAK (V4L2_CID_MPEG_BASE + 208)
-#define V4L2_CID_MPEG_VIDEO_TEMPORAL_DECIMATION (V4L2_CID_MPEG_BASE + 209)
-#define V4L2_CID_MPEG_VIDEO_MUTE (V4L2_CID_MPEG_BASE + 210)
-#define V4L2_CID_MPEG_VIDEO_MUTE_YUV (V4L2_CID_MPEG_BASE + 211)
-#define V4L2_CID_MPEG_VIDEO_DECODER_SLICE_INTERFACE (V4L2_CID_MPEG_BASE + 212)
-#define V4L2_CID_MPEG_VIDEO_DECODER_MPEG4_DEBLOCK_FILTER (V4L2_CID_MPEG_BASE + 213)
-#define V4L2_CID_MPEG_VIDEO_CYCLIC_INTRA_REFRESH_MB (V4L2_CID_MPEG_BASE + 214)
-#define V4L2_CID_MPEG_VIDEO_FRAME_RC_ENABLE (V4L2_CID_MPEG_BASE + 215)
-#define V4L2_CID_MPEG_VIDEO_HEADER_MODE (V4L2_CID_MPEG_BASE + 216)
-enum v4l2_mpeg_video_header_mode {
- V4L2_MPEG_VIDEO_HEADER_MODE_SEPARATE = 0,
- V4L2_MPEG_VIDEO_HEADER_MODE_JOINED_WITH_1ST_FRAME = 1,
- V4L2_MPEG_VIDEO_HEADER_MODE_JOINED_WITH_I_FRAME = 2,
-};
-#define V4L2_CID_MPEG_VIDEO_MAX_REF_PIC (V4L2_CID_MPEG_BASE + 217)
-#define V4L2_CID_MPEG_VIDEO_MB_RC_ENABLE (V4L2_CID_MPEG_BASE + 218)
-#define V4L2_CID_MPEG_VIDEO_MULTI_SLICE_MAX_BYTES (V4L2_CID_MPEG_BASE + 219)
-#define V4L2_CID_MPEG_VIDEO_MULTI_SLICE_MAX_MB (V4L2_CID_MPEG_BASE + 220)
-#define V4L2_CID_MPEG_VIDEO_MULTI_SLICE_MODE (V4L2_CID_MPEG_BASE + 221)
-enum v4l2_mpeg_video_multi_slice_mode {
- V4L2_MPEG_VIDEO_MULTI_SLICE_MODE_SINGLE = 0,
- V4L2_MPEG_VIDEO_MULTI_SICE_MODE_MAX_MB = 1,
- V4L2_MPEG_VIDEO_MULTI_SICE_MODE_MAX_BYTES = 2,
- V4L2_MPEG_VIDEO_MULTI_SLICE_GOB = 3,
-};
-#define V4L2_CID_MPEG_VIDEO_VBV_SIZE (V4L2_CID_MPEG_BASE + 222)
-#define V4L2_CID_MPEG_VIDEO_DEC_PTS (V4L2_CID_MPEG_BASE + 223)
-#define V4L2_CID_MPEG_VIDEO_DEC_FRAME (V4L2_CID_MPEG_BASE + 224)
-#define V4L2_CID_MPEG_VIDEO_VBV_DELAY (V4L2_CID_MPEG_BASE + 225)
-#define V4L2_CID_MPEG_VIDEO_REPEAT_SEQ_HEADER (V4L2_CID_MPEG_BASE + 226)
-#define V4L2_CID_MPEG_VIDEO_MV_H_SEARCH_RANGE (V4L2_CID_MPEG_BASE + 227)
-#define V4L2_CID_MPEG_VIDEO_MV_V_SEARCH_RANGE (V4L2_CID_MPEG_BASE + 228)
-#define V4L2_CID_MPEG_VIDEO_FORCE_KEY_FRAME (V4L2_CID_MPEG_BASE + 229)
-#define V4L2_CID_MPEG_VIDEO_H263_I_FRAME_QP (V4L2_CID_MPEG_BASE + 300)
-#define V4L2_CID_MPEG_VIDEO_H263_P_FRAME_QP (V4L2_CID_MPEG_BASE + 301)
-#define V4L2_CID_MPEG_VIDEO_H263_B_FRAME_QP (V4L2_CID_MPEG_BASE + 302)
-#define V4L2_CID_MPEG_VIDEO_H263_MIN_QP (V4L2_CID_MPEG_BASE + 303)
-#define V4L2_CID_MPEG_VIDEO_H263_MAX_QP (V4L2_CID_MPEG_BASE + 304)
-#define V4L2_CID_MPEG_VIDEO_H264_I_FRAME_QP (V4L2_CID_MPEG_BASE + 350)
-#define V4L2_CID_MPEG_VIDEO_H264_P_FRAME_QP (V4L2_CID_MPEG_BASE + 351)
-#define V4L2_CID_MPEG_VIDEO_H264_B_FRAME_QP (V4L2_CID_MPEG_BASE + 352)
-#define V4L2_CID_MPEG_VIDEO_H264_MIN_QP (V4L2_CID_MPEG_BASE + 353)
-#define V4L2_CID_MPEG_VIDEO_H264_MAX_QP (V4L2_CID_MPEG_BASE + 354)
-#define V4L2_CID_MPEG_VIDEO_H264_8X8_TRANSFORM (V4L2_CID_MPEG_BASE + 355)
-#define V4L2_CID_MPEG_VIDEO_H264_CPB_SIZE (V4L2_CID_MPEG_BASE + 356)
-#define V4L2_CID_MPEG_VIDEO_H264_ENTROPY_MODE (V4L2_CID_MPEG_BASE + 357)
-enum v4l2_mpeg_video_h264_entropy_mode {
- V4L2_MPEG_VIDEO_H264_ENTROPY_MODE_CAVLC = 0,
- V4L2_MPEG_VIDEO_H264_ENTROPY_MODE_CABAC = 1,
-};
-#define V4L2_CID_MPEG_VIDEO_H264_I_PERIOD (V4L2_CID_MPEG_BASE + 358)
-#define V4L2_CID_MPEG_VIDEO_H264_LEVEL (V4L2_CID_MPEG_BASE + 359)
-enum v4l2_mpeg_video_h264_level {
- V4L2_MPEG_VIDEO_H264_LEVEL_1_0 = 0,
- V4L2_MPEG_VIDEO_H264_LEVEL_1B = 1,
- V4L2_MPEG_VIDEO_H264_LEVEL_1_1 = 2,
- V4L2_MPEG_VIDEO_H264_LEVEL_1_2 = 3,
- V4L2_MPEG_VIDEO_H264_LEVEL_1_3 = 4,
- V4L2_MPEG_VIDEO_H264_LEVEL_2_0 = 5,
- V4L2_MPEG_VIDEO_H264_LEVEL_2_1 = 6,
- V4L2_MPEG_VIDEO_H264_LEVEL_2_2 = 7,
- V4L2_MPEG_VIDEO_H264_LEVEL_3_0 = 8,
- V4L2_MPEG_VIDEO_H264_LEVEL_3_1 = 9,
- V4L2_MPEG_VIDEO_H264_LEVEL_3_2 = 10,
- V4L2_MPEG_VIDEO_H264_LEVEL_4_0 = 11,
- V4L2_MPEG_VIDEO_H264_LEVEL_4_1 = 12,
- V4L2_MPEG_VIDEO_H264_LEVEL_4_2 = 13,
- V4L2_MPEG_VIDEO_H264_LEVEL_5_0 = 14,
- V4L2_MPEG_VIDEO_H264_LEVEL_5_1 = 15,
- V4L2_MPEG_VIDEO_H264_LEVEL_5_2 = 16,
-#define V4L2_MPEG_VIDEO_H264_LEVEL_UNKNOWN V4L2_MPEG_VIDEO_H264_LEVEL_UNKNOWN
- V4L2_MPEG_VIDEO_H264_LEVEL_UNKNOWN = 17,
-};
-#define V4L2_CID_MPEG_VIDEO_H264_LOOP_FILTER_ALPHA (V4L2_CID_MPEG_BASE + 360)
-#define V4L2_CID_MPEG_VIDEO_H264_LOOP_FILTER_BETA (V4L2_CID_MPEG_BASE + 361)
-#define V4L2_CID_MPEG_VIDEO_H264_LOOP_FILTER_MODE (V4L2_CID_MPEG_BASE + 362)
-enum v4l2_mpeg_video_h264_loop_filter_mode {
- V4L2_MPEG_VIDEO_H264_LOOP_FILTER_MODE_ENABLED = 0,
- V4L2_MPEG_VIDEO_H264_LOOP_FILTER_MODE_DISABLED = 1,
- V4L2_MPEG_VIDEO_H264_LOOP_FILTER_MODE_DISABLED_AT_SLICE_BOUNDARY = 2,
-};
-#define V4L2_CID_MPEG_VIDEO_H264_PROFILE (V4L2_CID_MPEG_BASE + 363)
-enum v4l2_mpeg_video_h264_profile {
- V4L2_MPEG_VIDEO_H264_PROFILE_BASELINE = 0,
- V4L2_MPEG_VIDEO_H264_PROFILE_CONSTRAINED_BASELINE = 1,
- V4L2_MPEG_VIDEO_H264_PROFILE_MAIN = 2,
- V4L2_MPEG_VIDEO_H264_PROFILE_EXTENDED = 3,
- V4L2_MPEG_VIDEO_H264_PROFILE_HIGH = 4,
- V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_10 = 5,
- V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_422 = 6,
- V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_444_PREDICTIVE = 7,
- V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_10_INTRA = 8,
- V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_422_INTRA = 9,
- V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_444_INTRA = 10,
- V4L2_MPEG_VIDEO_H264_PROFILE_CAVLC_444_INTRA = 11,
- V4L2_MPEG_VIDEO_H264_PROFILE_SCALABLE_BASELINE = 12,
- V4L2_MPEG_VIDEO_H264_PROFILE_SCALABLE_HIGH = 13,
- V4L2_MPEG_VIDEO_H264_PROFILE_SCALABLE_HIGH_INTRA = 14,
- V4L2_MPEG_VIDEO_H264_PROFILE_STEREO_HIGH = 15,
- V4L2_MPEG_VIDEO_H264_PROFILE_MULTIVIEW_HIGH = 16,
- V4L2_MPEG_VIDEO_H264_PROFILE_CONSTRAINED_HIGH = 17,
-};
-#define V4L2_CID_MPEG_VIDEO_H264_VUI_EXT_SAR_HEIGHT (V4L2_CID_MPEG_BASE + 364)
-#define V4L2_CID_MPEG_VIDEO_H264_VUI_EXT_SAR_WIDTH (V4L2_CID_MPEG_BASE + 365)
-#define V4L2_CID_MPEG_VIDEO_H264_VUI_SAR_ENABLE (V4L2_CID_MPEG_BASE + 366)
-#define V4L2_CID_MPEG_VIDEO_H264_VUI_SAR_IDC (V4L2_CID_MPEG_BASE + 367)
-enum v4l2_mpeg_video_h264_vui_sar_idc {
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_UNSPECIFIED = 0,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_1x1 = 1,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_12x11 = 2,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_10x11 = 3,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_16x11 = 4,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_40x33 = 5,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_24x11 = 6,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_20x11 = 7,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_32x11 = 8,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_80x33 = 9,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_18x11 = 10,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_15x11 = 11,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_64x33 = 12,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_160x99 = 13,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_4x3 = 14,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_3x2 = 15,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_2x1 = 16,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_EXTENDED = 17,
-};
-#define V4L2_CID_MPEG_VIDEO_H264_SEI_FRAME_PACKING (V4L2_CID_MPEG_BASE + 368)
-#define V4L2_CID_MPEG_VIDEO_H264_SEI_FP_CURRENT_FRAME_0 (V4L2_CID_MPEG_BASE + 369)
-#define V4L2_CID_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE (V4L2_CID_MPEG_BASE + 370)
-enum v4l2_mpeg_video_h264_sei_fp_arrangement_type {
- V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_CHECKERBOARD = 0,
- V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_COLUMN = 1,
- V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_ROW = 2,
- V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_SIDE_BY_SIDE = 3,
- V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_TOP_BOTTOM = 4,
- V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_TEMPORAL = 5,
-};
-#define V4L2_CID_MPEG_VIDEO_H264_FMO (V4L2_CID_MPEG_BASE + 371)
-#define V4L2_CID_MPEG_VIDEO_H264_FMO_MAP_TYPE (V4L2_CID_MPEG_BASE + 372)
-enum v4l2_mpeg_video_h264_fmo_map_type {
- V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_INTERLEAVED_SLICES = 0,
- V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_SCATTERED_SLICES = 1,
- V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_FOREGROUND_WITH_LEFT_OVER = 2,
- V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_BOX_OUT = 3,
- V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_RASTER_SCAN = 4,
- V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_WIPE_SCAN = 5,
- V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_EXPLICIT = 6,
-};
-#define V4L2_CID_MPEG_VIDEO_H264_FMO_SLICE_GROUP (V4L2_CID_MPEG_BASE + 373)
-#define V4L2_CID_MPEG_VIDEO_H264_FMO_CHANGE_DIRECTION (V4L2_CID_MPEG_BASE + 374)
-enum v4l2_mpeg_video_h264_fmo_change_dir {
- V4L2_MPEG_VIDEO_H264_FMO_CHANGE_DIR_RIGHT = 0,
- V4L2_MPEG_VIDEO_H264_FMO_CHANGE_DIR_LEFT = 1,
-};
-#define V4L2_CID_MPEG_VIDEO_H264_FMO_CHANGE_RATE (V4L2_CID_MPEG_BASE + 375)
-#define V4L2_CID_MPEG_VIDEO_H264_FMO_RUN_LENGTH (V4L2_CID_MPEG_BASE + 376)
-#define V4L2_CID_MPEG_VIDEO_H264_ASO (V4L2_CID_MPEG_BASE + 377)
-#define V4L2_CID_MPEG_VIDEO_H264_ASO_SLICE_ORDER (V4L2_CID_MPEG_BASE + 378)
-#define V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING (V4L2_CID_MPEG_BASE + 379)
-#define V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING_TYPE (V4L2_CID_MPEG_BASE + 380)
-enum v4l2_mpeg_video_h264_hierarchical_coding_type {
- V4L2_MPEG_VIDEO_H264_HIERARCHICAL_CODING_B = 0,
- V4L2_MPEG_VIDEO_H264_HIERARCHICAL_CODING_P = 1,
-};
-#define V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING_LAYER (V4L2_CID_MPEG_BASE + 381)
-#define V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING_LAYER_QP (V4L2_CID_MPEG_BASE + 382)
-#define V4L2_CID_MPEG_VIDEO_MPEG4_I_FRAME_QP (V4L2_CID_MPEG_BASE + 400)
-#define V4L2_CID_MPEG_VIDEO_MPEG4_P_FRAME_QP (V4L2_CID_MPEG_BASE + 401)
-#define V4L2_CID_MPEG_VIDEO_MPEG4_B_FRAME_QP (V4L2_CID_MPEG_BASE + 402)
-#define V4L2_CID_MPEG_VIDEO_MPEG4_MIN_QP (V4L2_CID_MPEG_BASE + 403)
-#define V4L2_CID_MPEG_VIDEO_MPEG4_MAX_QP (V4L2_CID_MPEG_BASE + 404)
-#define V4L2_CID_MPEG_VIDEO_MPEG4_LEVEL (V4L2_CID_MPEG_BASE + 405)
-enum v4l2_mpeg_video_mpeg4_level {
- V4L2_MPEG_VIDEO_MPEG4_LEVEL_0 = 0,
- V4L2_MPEG_VIDEO_MPEG4_LEVEL_0B = 1,
- V4L2_MPEG_VIDEO_MPEG4_LEVEL_1 = 2,
- V4L2_MPEG_VIDEO_MPEG4_LEVEL_2 = 3,
- V4L2_MPEG_VIDEO_MPEG4_LEVEL_3 = 4,
- V4L2_MPEG_VIDEO_MPEG4_LEVEL_3B = 5,
- V4L2_MPEG_VIDEO_MPEG4_LEVEL_4 = 6,
- V4L2_MPEG_VIDEO_MPEG4_LEVEL_5 = 7,
-};
-#define V4L2_CID_MPEG_VIDEO_MPEG4_PROFILE (V4L2_CID_MPEG_BASE + 406)
-enum v4l2_mpeg_video_mpeg4_profile {
- V4L2_MPEG_VIDEO_MPEG4_PROFILE_SIMPLE = 0,
- V4L2_MPEG_VIDEO_MPEG4_PROFILE_ADVANCED_SIMPLE = 1,
- V4L2_MPEG_VIDEO_MPEG4_PROFILE_CORE = 2,
- V4L2_MPEG_VIDEO_MPEG4_PROFILE_SIMPLE_SCALABLE = 3,
- V4L2_MPEG_VIDEO_MPEG4_PROFILE_ADVANCED_CODING_EFFICIENCY = 4,
-};
-#define V4L2_CID_MPEG_VIDEO_MPEG4_QPEL (V4L2_CID_MPEG_BASE + 407)
-#define V4L2_CID_MPEG_VIDEO_VPX_NUM_PARTITIONS (V4L2_CID_MPEG_BASE + 500)
-enum v4l2_vp8_num_partitions {
- V4L2_CID_MPEG_VIDEO_VPX_1_PARTITION = 0,
- V4L2_CID_MPEG_VIDEO_VPX_2_PARTITIONS = 1,
- V4L2_CID_MPEG_VIDEO_VPX_4_PARTITIONS = 2,
- V4L2_CID_MPEG_VIDEO_VPX_8_PARTITIONS = 3,
-};
-#define V4L2_CID_MPEG_VIDEO_VPX_IMD_DISABLE_4X4 (V4L2_CID_MPEG_BASE + 501)
-#define V4L2_CID_MPEG_VIDEO_VPX_NUM_REF_FRAMES (V4L2_CID_MPEG_BASE + 502)
-enum v4l2_vp8_num_ref_frames {
- V4L2_CID_MPEG_VIDEO_VPX_1_REF_FRAME = 0,
- V4L2_CID_MPEG_VIDEO_VPX_2_REF_FRAME = 1,
- V4L2_CID_MPEG_VIDEO_VPX_3_REF_FRAME = 2,
-};
-#define V4L2_CID_MPEG_VIDEO_VPX_FILTER_LEVEL (V4L2_CID_MPEG_BASE + 503)
-#define V4L2_CID_MPEG_VIDEO_VPX_FILTER_SHARPNESS (V4L2_CID_MPEG_BASE + 504)
-#define V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_REF_PERIOD (V4L2_CID_MPEG_BASE + 505)
-#define V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_SEL (V4L2_CID_MPEG_BASE + 506)
-enum v4l2_vp8_golden_frame_sel {
- V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_USE_PREV = 0,
- V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_USE_REF_PERIOD = 1,
-};
-#define V4L2_CID_MPEG_VIDEO_VPX_MIN_QP (V4L2_CID_MPEG_BASE + 507)
-#define V4L2_CID_MPEG_VIDEO_VPX_MAX_QP (V4L2_CID_MPEG_BASE + 508)
-#define V4L2_CID_MPEG_VIDEO_VPX_I_FRAME_QP (V4L2_CID_MPEG_BASE + 509)
-#define V4L2_CID_MPEG_VIDEO_VPX_P_FRAME_QP (V4L2_CID_MPEG_BASE + 510)
-#define V4L2_CID_MPEG_VIDEO_VPX_PROFILE (V4L2_CID_MPEG_BASE + 511)
-#define V4L2_CID_MPEG_CX2341X_BASE (V4L2_CTRL_CLASS_MPEG | 0x1000)
-#define V4L2_CID_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE (V4L2_CID_MPEG_CX2341X_BASE + 0)
-enum v4l2_mpeg_cx2341x_video_spatial_filter_mode {
- V4L2_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE_MANUAL = 0,
- V4L2_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE_AUTO = 1,
-};
-#define V4L2_CID_MPEG_CX2341X_VIDEO_SPATIAL_FILTER (V4L2_CID_MPEG_CX2341X_BASE + 1)
-#define V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE (V4L2_CID_MPEG_CX2341X_BASE + 2)
-enum v4l2_mpeg_cx2341x_video_luma_spatial_filter_type {
- V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_OFF = 0,
- V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_1D_HOR = 1,
- V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_1D_VERT = 2,
- V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_2D_HV_SEPARABLE = 3,
- V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_2D_SYM_NON_SEPARABLE = 4,
-};
-#define V4L2_CID_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE (V4L2_CID_MPEG_CX2341X_BASE + 3)
-enum v4l2_mpeg_cx2341x_video_chroma_spatial_filter_type {
- V4L2_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE_OFF = 0,
- V4L2_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE_1D_HOR = 1,
-};
-#define V4L2_CID_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE (V4L2_CID_MPEG_CX2341X_BASE + 4)
-enum v4l2_mpeg_cx2341x_video_temporal_filter_mode {
- V4L2_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE_MANUAL = 0,
- V4L2_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE_AUTO = 1,
-};
-#define V4L2_CID_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER (V4L2_CID_MPEG_CX2341X_BASE + 5)
-#define V4L2_CID_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE (V4L2_CID_MPEG_CX2341X_BASE + 6)
-enum v4l2_mpeg_cx2341x_video_median_filter_type {
- V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_OFF = 0,
- V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_HOR = 1,
- V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_VERT = 2,
- V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_HOR_VERT = 3,
- V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_DIAG = 4,
-};
-#define V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_MEDIAN_FILTER_BOTTOM (V4L2_CID_MPEG_CX2341X_BASE + 7)
-#define V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_MEDIAN_FILTER_TOP (V4L2_CID_MPEG_CX2341X_BASE + 8)
-#define V4L2_CID_MPEG_CX2341X_VIDEO_CHROMA_MEDIAN_FILTER_BOTTOM (V4L2_CID_MPEG_CX2341X_BASE + 9)
-#define V4L2_CID_MPEG_CX2341X_VIDEO_CHROMA_MEDIAN_FILTER_TOP (V4L2_CID_MPEG_CX2341X_BASE + 10)
-#define V4L2_CID_MPEG_CX2341X_STREAM_INSERT_NAV_PACKETS (V4L2_CID_MPEG_CX2341X_BASE + 11)
-#define V4L2_CID_MPEG_MFC51_BASE (V4L2_CTRL_CLASS_MPEG | 0x1100)
-#define V4L2_CID_MPEG_MFC51_VIDEO_DECODER_H264_DISPLAY_DELAY (V4L2_CID_MPEG_MFC51_BASE + 0)
-#define V4L2_CID_MPEG_MFC51_VIDEO_DECODER_H264_DISPLAY_DELAY_ENABLE (V4L2_CID_MPEG_MFC51_BASE + 1)
-#define V4L2_CID_MPEG_MFC51_VIDEO_FRAME_SKIP_MODE (V4L2_CID_MPEG_MFC51_BASE + 2)
-enum v4l2_mpeg_mfc51_video_frame_skip_mode {
- V4L2_MPEG_MFC51_VIDEO_FRAME_SKIP_MODE_DISABLED = 0,
- V4L2_MPEG_MFC51_VIDEO_FRAME_SKIP_MODE_LEVEL_LIMIT = 1,
- V4L2_MPEG_MFC51_VIDEO_FRAME_SKIP_MODE_BUF_LIMIT = 2,
-};
-#define V4L2_CID_MPEG_MFC51_VIDEO_FORCE_FRAME_TYPE (V4L2_CID_MPEG_MFC51_BASE + 3)
-enum v4l2_mpeg_mfc51_video_force_frame_type {
- V4L2_MPEG_MFC51_VIDEO_FORCE_FRAME_TYPE_DISABLED = 0,
- V4L2_MPEG_MFC51_VIDEO_FORCE_FRAME_TYPE_I_FRAME = 1,
- V4L2_MPEG_MFC51_VIDEO_FORCE_FRAME_TYPE_NOT_CODED = 2,
-};
-#define V4L2_CID_MPEG_MFC51_VIDEO_PADDING (V4L2_CID_MPEG_MFC51_BASE + 4)
-#define V4L2_CID_MPEG_MFC51_VIDEO_PADDING_YUV (V4L2_CID_MPEG_MFC51_BASE + 5)
-#define V4L2_CID_MPEG_MFC51_VIDEO_RC_FIXED_TARGET_BIT (V4L2_CID_MPEG_MFC51_BASE + 6)
-#define V4L2_CID_MPEG_MFC51_VIDEO_RC_REACTION_COEFF (V4L2_CID_MPEG_MFC51_BASE + 7)
-#define V4L2_CID_MPEG_MFC51_VIDEO_H264_ADAPTIVE_RC_ACTIVITY (V4L2_CID_MPEG_MFC51_BASE + 50)
-#define V4L2_CID_MPEG_MFC51_VIDEO_H264_ADAPTIVE_RC_DARK (V4L2_CID_MPEG_MFC51_BASE + 51)
-#define V4L2_CID_MPEG_MFC51_VIDEO_H264_ADAPTIVE_RC_SMOOTH (V4L2_CID_MPEG_MFC51_BASE + 52)
-#define V4L2_CID_MPEG_MFC51_VIDEO_H264_ADAPTIVE_RC_STATIC (V4L2_CID_MPEG_MFC51_BASE + 53)
-#define V4L2_CID_MPEG_MFC51_VIDEO_H264_NUM_REF_PIC_FOR_P (V4L2_CID_MPEG_MFC51_BASE + 54)
-#define V4L2_CID_MPEG_MSM_VIDC_BASE (V4L2_CTRL_CLASS_MPEG | 0x2000)
-#define V4L2_CID_MPEG_VIDC_VIDEO_PICTYPE_DEC_MODE (V4L2_CID_MPEG_MSM_VIDC_BASE + 0)
-enum v4l2_mpeg_vidc_video_pictype_dec_mode {
- V4L2_MPEG_VIDC_VIDEO_PICTYPE_DECODE_OFF = 0,
- V4L2_MPEG_VIDC_VIDEO_PICTYPE_DECODE_ON = 1,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_KEEP_ASPECT_RATIO (V4L2_CID_MPEG_MSM_VIDC_BASE + 1)
-#define V4L2_CID_MPEG_VIDC_VIDEO_STREAM_FORMAT (V4L2_CID_MPEG_MSM_VIDC_BASE + 2)
-enum v4l2_mpeg_vidc_video_stream_format {
- V4L2_MPEG_VIDC_VIDEO_NAL_FORMAT_STARTCODES = 0,
- V4L2_MPEG_VIDC_VIDEO_NAL_FORMAT_ONE_NAL_PER_BUFFER = 1,
- V4L2_MPEG_VIDC_VIDEO_NAL_FORMAT_ONE_BYTE_LENGTH = 2,
- V4L2_MPEG_VIDC_VIDEO_NAL_FORMAT_TWO_BYTE_LENGTH = 3,
- V4L2_MPEG_VIDC_VIDEO_NAL_FORMAT_FOUR_BYTE_LENGTH = 4,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_OUTPUT_ORDER (V4L2_CID_MPEG_MSM_VIDC_BASE + 3)
-enum v4l2_mpeg_vidc_video_output_order {
- V4L2_MPEG_VIDC_VIDEO_OUTPUT_ORDER_DISPLAY = 0,
- V4L2_MPEG_VIDC_VIDEO_OUTPUT_ORDER_DECODE = 1,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_FRAME_RATE (V4L2_CID_MPEG_MSM_VIDC_BASE + 4)
-#define V4L2_CID_MPEG_VIDC_VIDEO_IDR_PERIOD (V4L2_CID_MPEG_MSM_VIDC_BASE + 5)
-#define V4L2_CID_MPEG_VIDC_VIDEO_NUM_P_FRAMES (V4L2_CID_MPEG_MSM_VIDC_BASE + 6)
-#define V4L2_CID_MPEG_VIDC_VIDEO_NUM_B_FRAMES (V4L2_CID_MPEG_MSM_VIDC_BASE + 7)
-#define V4L2_CID_MPEG_VIDC_VIDEO_REQUEST_IFRAME (V4L2_CID_MPEG_MSM_VIDC_BASE + 8)
-#define V4L2_CID_MPEG_VIDC_VIDEO_RATE_CONTROL (V4L2_CID_MPEG_MSM_VIDC_BASE + 9)
-enum v4l2_mpeg_vidc_video_rate_control {
- V4L2_CID_MPEG_VIDC_VIDEO_RATE_CONTROL_OFF = 0,
- V4L2_CID_MPEG_VIDC_VIDEO_RATE_CONTROL_VBR_VFR = 1,
- V4L2_CID_MPEG_VIDC_VIDEO_RATE_CONTROL_VBR_CFR = 2,
- V4L2_CID_MPEG_VIDC_VIDEO_RATE_CONTROL_CBR_VFR = 3,
- V4L2_CID_MPEG_VIDC_VIDEO_RATE_CONTROL_CBR_CFR = 4,
- V4L2_CID_MPEG_VIDC_VIDEO_RATE_CONTROL_MBR_CFR = 5,
- V4L2_CID_MPEG_VIDC_VIDEO_RATE_CONTROL_MBR_VFR = 6,
- V4L2_CID_MPEG_VIDC_VIDEO_RATE_CONTROL_CQ = 7,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_RATE_CONTROL_MBR_CFR V4L2_CID_MPEG_VIDC_VIDEO_RATE_CONTROL_MBR_CFR
-#define V4L2_CID_MPEG_VIDC_VIDEO_RATE_CONTROL_MBR_VFR V4L2_CID_MPEG_VIDC_VIDEO_RATE_CONTROL_MBR_VFR
-#define V4L2_CID_MPEG_VIDC_VIDEO_ROTATION (V4L2_CID_MPEG_MSM_VIDC_BASE + 10)
-enum v4l2_mpeg_vidc_video_rotation {
- V4L2_CID_MPEG_VIDC_VIDEO_ROTATION_NONE = 0,
- V4L2_CID_MPEG_VIDC_VIDEO_ROTATION_90 = 1,
- V4L2_CID_MPEG_VIDC_VIDEO_ROTATION_180 = 2,
- V4L2_CID_MPEG_VIDC_VIDEO_ROTATION_270 = 3,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_H264_CABAC_MODEL (V4L2_CID_MPEG_MSM_VIDC_BASE + 11)
-enum v4l2_mpeg_vidc_h264_cabac_model {
- V4L2_CID_MPEG_VIDC_VIDEO_H264_CABAC_MODEL_0 = 0,
- V4L2_CID_MPEG_VIDC_VIDEO_H264_CABAC_MODEL_1 = 1,
- V4L2_CID_MPEG_VIDC_VIDEO_H264_CABAC_MODEL_2 = 2,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_INTRA_REFRESH_MODE (V4L2_CID_MPEG_MSM_VIDC_BASE + 12)
-enum v4l2_mpeg_vidc_video_intra_refresh_mode {
- V4L2_CID_MPEG_VIDC_VIDEO_INTRA_REFRESH_NONE = 0,
- V4L2_CID_MPEG_VIDC_VIDEO_INTRA_REFRESH_CYCLIC = 1,
- V4L2_CID_MPEG_VIDC_VIDEO_INTRA_REFRESH_RANDOM = 2,
- V4L2_CID_MPEG_VIDC_VIDEO_INTRA_REFRESH_ADAPTIVE = 3,
- V4L2_CID_MPEG_VIDC_VIDEO_INTRA_REFRESH_CYCLIC_ADAPTIVE = 4,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_IR_MBS (V4L2_CID_MPEG_MSM_VIDC_BASE + 13)
-#define V4L2_CID_MPEG_VIDC_VIDEO_AU_DELIMITER (V4L2_CID_MPEG_MSM_VIDC_BASE + 14)
-enum v4l2_mpeg_vidc_video_au_delimiter {
- V4L2_MPEG_VIDC_VIDEO_AU_DELIMITER_DISABLED = 0,
- V4L2_MPEG_VIDC_VIDEO_AU_DELIMITER_ENABLED = 1
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_SYNC_FRAME_DECODE (V4L2_CID_MPEG_MSM_VIDC_BASE + 15)
-enum v4l2_mpeg_vidc_video_sync_frame_decode {
- V4L2_MPEG_VIDC_VIDEO_SYNC_FRAME_DECODE_DISABLE = 0,
- V4L2_MPEG_VIDC_VIDEO_SYNC_FRAME_DECODE_ENABLE = 1
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_SECURE (V4L2_CID_MPEG_MSM_VIDC_BASE + 16)
-#define V4L2_CID_MPEG_VIDC_VIDEO_EXTRADATA (V4L2_CID_MPEG_MSM_VIDC_BASE + 17)
-enum v4l2_mpeg_vidc_extradata {
- V4L2_MPEG_VIDC_EXTRADATA_NONE = 0,
- V4L2_MPEG_VIDC_EXTRADATA_MB_QUANTIZATION = 1,
- V4L2_MPEG_VIDC_EXTRADATA_INTERLACE_VIDEO = 2,
- V4L2_MPEG_VIDC_EXTRADATA_VC1_FRAMEDISP = 3,
- V4L2_MPEG_VIDC_EXTRADATA_VC1_SEQDISP = 4,
- V4L2_MPEG_VIDC_EXTRADATA_TIMESTAMP = 5,
- V4L2_MPEG_VIDC_EXTRADATA_S3D_FRAME_PACKING = 6,
- V4L2_MPEG_VIDC_EXTRADATA_FRAME_RATE = 7,
- V4L2_MPEG_VIDC_EXTRADATA_PANSCAN_WINDOW = 8,
- V4L2_MPEG_VIDC_EXTRADATA_RECOVERY_POINT_SEI = 9,
- V4L2_MPEG_VIDC_EXTRADATA_MULTISLICE_INFO = 10,
- V4L2_MPEG_VIDC_EXTRADATA_NUM_CONCEALED_MB = 11,
- V4L2_MPEG_VIDC_EXTRADATA_METADATA_FILLER = 12,
- V4L2_MPEG_VIDC_EXTRADATA_INPUT_CROP = 13,
- V4L2_MPEG_VIDC_EXTRADATA_DIGITAL_ZOOM = 14,
- V4L2_MPEG_VIDC_EXTRADATA_ASPECT_RATIO = 15,
- V4L2_MPEG_VIDC_EXTRADATA_MPEG2_SEQDISP = 16,
- V4L2_MPEG_VIDC_EXTRADATA_STREAM_USERDATA = 17,
- V4L2_MPEG_VIDC_EXTRADATA_FRAME_QP = 18,
- V4L2_MPEG_VIDC_EXTRADATA_FRAME_BITS_INFO = 19,
- V4L2_MPEG_VIDC_EXTRADATA_LTR = 20,
- V4L2_MPEG_VIDC_EXTRADATA_METADATA_MBI = 21,
- V4L2_MPEG_VIDC_EXTRADATA_VQZIP_SEI = 22,
- V4L2_MPEG_VIDC_EXTRADATA_YUV_STATS = 23,
- V4L2_MPEG_VIDC_EXTRADATA_ROI_QP = 24,
-#define V4L2_MPEG_VIDC_EXTRADATA_OUTPUT_CROP V4L2_MPEG_VIDC_EXTRADATA_OUTPUT_CROP
- V4L2_MPEG_VIDC_EXTRADATA_OUTPUT_CROP = 25,
-#define V4L2_MPEG_VIDC_EXTRADATA_DISPLAY_COLOUR_SEI V4L2_MPEG_VIDC_EXTRADATA_DISPLAY_COLOUR_SEI
- V4L2_MPEG_VIDC_EXTRADATA_DISPLAY_COLOUR_SEI = 26,
-#define V4L2_MPEG_VIDC_EXTRADATA_CONTENT_LIGHT_LEVEL_SEI V4L2_MPEG_VIDC_EXTRADATA_CONTENT_LIGHT_LEVEL_SEI
- V4L2_MPEG_VIDC_EXTRADATA_CONTENT_LIGHT_LEVEL_SEI = 27,
-#define V4L2_MPEG_VIDC_EXTRADATA_PQ_INFO V4L2_MPEG_VIDC_EXTRADATA_PQ_INFO
- V4L2_MPEG_VIDC_EXTRADATA_PQ_INFO = 28,
-#define V4L2_MPEG_VIDC_EXTRADATA_VUI_DISPLAY V4L2_MPEG_VIDC_EXTRADATA_VUI_DISPLAY
- V4L2_MPEG_VIDC_EXTRADATA_VUI_DISPLAY = 29,
-#define V4L2_MPEG_VIDC_EXTRADATA_VPX_COLORSPACE V4L2_MPEG_VIDC_EXTRADATA_VPX_COLORSPACE
- V4L2_MPEG_VIDC_EXTRADATA_VPX_COLORSPACE = 30,
-#define V4L2_MPEG_VIDC_EXTRADATA_UBWC_CR_STATS_INFO V4L2_MPEG_VIDC_EXTRADATA_UBWC_CR_STATS_INFO
- V4L2_MPEG_VIDC_EXTRADATA_UBWC_CR_STATS_INFO = 31,
-#define V4L2_MPEG_VIDC_EXTRADATA_ENC_FRAME_QP V4L2_MPEG_VIDC_EXTRADATA_ENC_FRAME_QP
- V4L2_MPEG_VIDC_EXTRADATA_ENC_FRAME_QP = 32,
-};
-#define V4L2_CID_MPEG_VIDEO_MULTI_SLICE_DELIVERY_MODE (V4L2_CID_MPEG_MSM_VIDC_BASE + 18)
-#define V4L2_CID_MPEG_VIDC_VIDEO_VUI_TIMING_INFO (V4L2_CID_MPEG_MSM_VIDC_BASE + 19)
-enum v4l2_mpeg_vidc_video_vui_timing_info {
- V4L2_MPEG_VIDC_VIDEO_VUI_TIMING_INFO_DISABLED = 0,
- V4L2_MPEG_VIDC_VIDEO_VUI_TIMING_INFO_ENABLED = 1
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_VP8_PROFILE_LEVEL (V4L2_CID_MPEG_MSM_VIDC_BASE + 20)
-enum v4l2_mpeg_vidc_video_vp8_profile_level {
- V4L2_MPEG_VIDC_VIDEO_VP8_UNUSED,
- V4L2_MPEG_VIDC_VIDEO_VP8_VERSION_0,
- V4L2_MPEG_VIDC_VIDEO_VP8_VERSION_1,
- V4L2_MPEG_VIDC_VIDEO_VP8_VERSION_2,
- V4L2_MPEG_VIDC_VIDEO_VP8_VERSION_3,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_PRESERVE_TEXT_QUALITY (V4L2_CID_MPEG_MSM_VIDC_BASE + 21)
-enum v4l2_mpeg_vidc_video_preserve_text_quality {
- V4L2_MPEG_VIDC_VIDEO_PRESERVE_TEXT_QUALITY_DISABLED = 0,
- V4L2_MPEG_VIDC_VIDEO_PRESERVE_TEXT_QUALITY_ENABLED = 1
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_STREAM_OUTPUT_MODE (V4L2_CID_MPEG_MSM_VIDC_BASE + 22)
-enum v4l2_mpeg_vidc_video_decoder_multi_stream {
- V4L2_CID_MPEG_VIDC_VIDEO_STREAM_OUTPUT_PRIMARY = 0,
- V4L2_CID_MPEG_VIDC_VIDEO_STREAM_OUTPUT_SECONDARY = 1,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_MPEG2_LEVEL (V4L2_CID_MPEG_MSM_VIDC_BASE + 23)
-enum v4l2_mpeg_vidc_video_mpeg2_level {
- V4L2_MPEG_VIDC_VIDEO_MPEG2_LEVEL_0 = 0,
- V4L2_MPEG_VIDC_VIDEO_MPEG2_LEVEL_1 = 1,
- V4L2_MPEG_VIDC_VIDEO_MPEG2_LEVEL_2 = 2,
- V4L2_MPEG_VIDC_VIDEO_MPEG2_LEVEL_3 = 3,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_MPEG2_PROFILE (V4L2_CID_MPEG_MSM_VIDC_BASE + 24)
-enum v4l2_mpeg_vidc_video_mpeg2_profile {
- V4L2_MPEG_VIDC_VIDEO_MPEG2_PROFILE_SIMPLE = 0,
- V4L2_MPEG_VIDC_VIDEO_MPEG2_PROFILE_MAIN = 1,
- V4L2_MPEG_VIDC_VIDEO_MPEG2_PROFILE_422 = 2,
- V4L2_MPEG_VIDC_VIDEO_MPEG2_PROFILE_SNR_SCALABLE = 3,
- V4L2_MPEG_VIDC_VIDEO_MPEG2_PROFILE_SPATIAL_SCALABLE = 4,
- V4L2_MPEG_VIDC_VIDEO_MPEG2_PROFILE_HIGH = 5,
-};
-enum v4l2_mpeg_vidc_video_mvc_layout {
- V4L2_MPEG_VIDC_VIDEO_MVC_SEQUENTIAL = 0,
- V4L2_MPEG_VIDC_VIDEO_MVC_TOP_BOTTOM = 1
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_CONCEAL_COLOR (V4L2_CID_MPEG_MSM_VIDC_BASE + 25)
-#define V4L2_CID_MPEG_VIDC_VIDEO_LTRMODE (V4L2_CID_MPEG_MSM_VIDC_BASE + 26)
-enum v4l2_mpeg_vidc_video_ltrmode {
- V4L2_MPEG_VIDC_VIDEO_LTR_MODE_DISABLE = 0,
- V4L2_MPEG_VIDC_VIDEO_LTR_MODE_MANUAL = 1,
- V4L2_MPEG_VIDC_VIDEO_LTR_MODE_PERIODIC = 2
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_LTRCOUNT (V4L2_CID_MPEG_MSM_VIDC_BASE + 27)
-#define V4L2_CID_MPEG_VIDC_VIDEO_USELTRFRAME (V4L2_CID_MPEG_MSM_VIDC_BASE + 28)
-#define V4L2_CID_MPEG_VIDC_VIDEO_MARKLTRFRAME (V4L2_CID_MPEG_MSM_VIDC_BASE + 29)
-#define V4L2_CID_MPEG_VIDC_VIDEO_HIER_P_NUM_LAYERS (V4L2_CID_MPEG_MSM_VIDC_BASE + 30)
-#define V4L2_CID_MPEG_VIDC_VIDEO_ALLOC_MODE_OUTPUT (V4L2_CID_MPEG_MSM_VIDC_BASE + 31)
-enum v4l2_mpeg_vidc_video_alloc_mode_type {
- V4L2_MPEG_VIDC_VIDEO_STATIC = 0,
- V4L2_MPEG_VIDC_VIDEO_RING = 1,
- V4L2_MPEG_VIDC_VIDEO_DYNAMIC = 2,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_IFRAME_X_RANGE (V4L2_CID_MPEG_MSM_VIDC_BASE + 32)
-#define V4L2_CID_MPEG_VIDC_VIDEO_PFRAME_X_RANGE (V4L2_CID_MPEG_MSM_VIDC_BASE + 33)
-#define V4L2_CID_MPEG_VIDC_VIDEO_BFRAME_X_RANGE (V4L2_CID_MPEG_MSM_VIDC_BASE + 34)
-#define V4L2_CID_MPEG_VIDC_VIDEO_IFRAME_Y_RANGE (V4L2_CID_MPEG_MSM_VIDC_BASE + 35)
-#define V4L2_CID_MPEG_VIDC_VIDEO_PFRAME_Y_RANGE (V4L2_CID_MPEG_MSM_VIDC_BASE + 36)
-#define V4L2_CID_MPEG_VIDC_VIDEO_BFRAME_Y_RANGE (V4L2_CID_MPEG_MSM_VIDC_BASE + 37)
-#define V4L2_CID_MPEG_VIDC_VIDEO_VPX_ERROR_RESILIENCE (V4L2_CID_MPEG_MSM_VIDC_BASE + 38)
-#define V4L2_CID_MPEG_VIDC_VIDEO_BUFFER_SIZE_LIMIT (V4L2_CID_MPEG_MSM_VIDC_BASE + 39)
-enum vl42_mpeg_vidc_video_vpx_error_resilience {
- V4L2_MPEG_VIDC_VIDEO_VPX_ERROR_RESILIENCE_DISABLED = 0,
- V4L2_MPEG_VIDC_VIDEO_VPX_ERROR_RESILIENCE_ENABLED = 1,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_HEVC_PROFILE (V4L2_CID_MPEG_MSM_VIDC_BASE + 40)
-enum v4l2_mpeg_video_hevc_profile {
- V4L2_MPEG_VIDC_VIDEO_HEVC_PROFILE_MAIN = 0,
- V4L2_MPEG_VIDC_VIDEO_HEVC_PROFILE_MAIN10 = 1,
- V4L2_MPEG_VIDC_VIDEO_HEVC_PROFILE_MAIN_STILL_PIC = 2,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_HEVC_TIER_LEVEL (V4L2_CID_MPEG_MSM_VIDC_BASE + 41)
-enum v4l2_mpeg_video_hevc_level {
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_MAIN_TIER_LEVEL_1 = 0,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_HIGH_TIER_LEVEL_1 = 1,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_MAIN_TIER_LEVEL_2 = 2,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_HIGH_TIER_LEVEL_2 = 3,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_MAIN_TIER_LEVEL_2_1 = 4,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_HIGH_TIER_LEVEL_2_1 = 5,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_MAIN_TIER_LEVEL_3 = 6,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_HIGH_TIER_LEVEL_3 = 7,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_MAIN_TIER_LEVEL_3_1 = 8,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_HIGH_TIER_LEVEL_3_1 = 9,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_MAIN_TIER_LEVEL_4 = 10,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_HIGH_TIER_LEVEL_4 = 11,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_MAIN_TIER_LEVEL_4_1 = 12,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_HIGH_TIER_LEVEL_4_1 = 13,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_MAIN_TIER_LEVEL_5 = 14,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_HIGH_TIER_LEVEL_5 = 15,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_MAIN_TIER_LEVEL_5_1 = 16,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_HIGH_TIER_LEVEL_5_1 = 17,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_MAIN_TIER_LEVEL_5_2 = 18,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_HIGH_TIER_LEVEL_5_2 = 19,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_MAIN_TIER_LEVEL_6 = 20,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_HIGH_TIER_LEVEL_6 = 21,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_MAIN_TIER_LEVEL_6_1 = 22,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_HIGH_TIER_LEVEL_6_1 = 23,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_MAIN_TIER_LEVEL_6_2 = 24,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_HIGH_TIER_LEVEL_6_2 = 25,
-#define V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_UNKNOWN V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_UNKNOWN
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_UNKNOWN = 26,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_HIER_B_NUM_LAYERS (V4L2_CID_MPEG_MSM_VIDC_BASE + 42)
-#define V4L2_CID_MPEG_VIDC_VIDEO_HYBRID_HIERP_MODE (V4L2_CID_MPEG_MSM_VIDC_BASE + 43)
-#define V4L2_CID_MPEG_VIDC_VIDEO_DPB_COLOR_FORMAT (V4L2_CID_MPEG_MSM_VIDC_BASE + 44)
-enum v4l2_mpeg_vidc_video_dpb_color_format {
- V4L2_MPEG_VIDC_VIDEO_DPB_COLOR_FMT_NONE = 0,
- V4L2_MPEG_VIDC_VIDEO_DPB_COLOR_FMT_UBWC = 1,
- V4L2_MPEG_VIDC_VIDEO_DPB_COLOR_FMT_TP10_UBWC = 2
-};
-#define V4L2_CID_VIDC_QBUF_MODE (V4L2_CID_MPEG_MSM_VIDC_BASE + 45)
-enum v4l2_vidc_qbuf_mode {
- V4L2_VIDC_QBUF_STANDARD = 0,
- V4L2_VIDC_QBUF_BATCHED = 1,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_MAX_HIERP_LAYERS (V4L2_CID_MPEG_MSM_VIDC_BASE + 46)
-#define V4L2_CID_MPEG_VIDC_VIDEO_BASELAYER_ID (V4L2_CID_MPEG_MSM_VIDC_BASE + 47)
-#define V4L2_CID_MPEG_VIDC_VENC_PARAM_SAR_WIDTH (V4L2_CID_MPEG_MSM_VIDC_BASE + 48)
-#define V4L2_CID_MPEG_VIDC_VENC_PARAM_SAR_HEIGHT (V4L2_CID_MPEG_MSM_VIDC_BASE + 49)
-#define V4L2_CID_MPEG_VIDC_VIDEO_VQZIP_SEI (V4L2_CID_MPEG_MSM_VIDC_BASE + 50)
-enum v4l2_mpeg_vidc_video_vqzip_sei_enable {
- V4L2_CID_MPEG_VIDC_VIDEO_VQZIP_SEI_DISABLE = 0,
- V4L2_CID_MPEG_VIDC_VIDEO_VQZIP_SEI_ENABLE = 1
-};
-#define V4L2_CID_MPEG_VIDC_VENC_PARAM_LAYER_BITRATE (V4L2_CID_MPEG_MSM_VIDC_BASE + 51)
-#define V4L2_CID_MPEG_VIDC_VIDEO_PRIORITY (V4L2_CID_MPEG_MSM_VIDC_BASE + 52)
-enum v4l2_mpeg_vidc_video_priority {
- V4L2_MPEG_VIDC_VIDEO_PRIORITY_REALTIME_ENABLE = 0,
- V4L2_MPEG_VIDC_VIDEO_PRIORITY_REALTIME_DISABLE = 1,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_OPERATING_RATE (V4L2_CID_MPEG_MSM_VIDC_BASE + 53)
-#define V4L2_CID_MPEG_VIDC_VIDEO_VENC_BITRATE_TYPE (V4L2_CID_MPEG_MSM_VIDC_BASE + 54)
-enum v4l2_mpeg_vidc_video_venc_bitrate_type_enable {
- V4L2_CID_MPEG_VIDC_VIDEO_VENC_BITRATE_DISABLE = 0,
- V4L2_CID_MPEG_VIDC_VIDEO_VENC_BITRATE_ENABLE = 1
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_VPE_CSC (V4L2_CID_MPEG_MSM_VIDC_BASE + 55)
-enum v4l2_cid_mpeg_vidc_video_vpe_csc_type_enable {
- V4L2_CID_MPEG_VIDC_VIDEO_VPE_CSC_DISABLE = 0,
- V4L2_CID_MPEG_VIDC_VIDEO_VPE_CSC_ENABLE = 1
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_LOWLATENCY_MODE (V4L2_CID_MPEG_MSM_VIDC_BASE + 56)
-enum v4l2_mpeg_vidc_video_lowlatency_mode {
- V4L2_CID_MPEG_VIDC_VIDEO_LOWLATENCY_DISABLE = 0,
- V4L2_CID_MPEG_VIDC_VIDEO_LOWLATENCY_ENABLE = 1,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_BLUR_WIDTH (V4L2_CID_MPEG_MSM_VIDC_BASE + 57)
-#define V4L2_CID_MPEG_VIDC_VIDEO_BLUR_HEIGHT (V4L2_CID_MPEG_MSM_VIDC_BASE + 58)
-#define V4L2_CID_MPEG_VIDC_VIDEO_H264_TRANSFORM_8x8 (V4L2_CID_MPEG_MSM_VIDC_BASE + 59)
-enum v4l2_mpeg_vidc_video_h264_transform_8x8 {
- V4L2_MPEG_VIDC_VIDEO_H264_TRANSFORM_8x8_DISABLE = 0,
- V4L2_MPEG_VIDC_VIDEO_H264_TRANSFORM_8x8_ENABLE = 1,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_COLOR_SPACE (V4L2_CID_MPEG_MSM_VIDC_BASE + 60)
-#define V4L2_CID_MPEG_VIDC_VIDEO_FULL_RANGE (V4L2_CID_MPEG_MSM_VIDC_BASE + 61)
-enum v4l2_cid_mpeg_vidc_video_full_range {
- V4L2_CID_MPEG_VIDC_VIDEO_FULL_RANGE_DISABLE = 0,
- V4L2_CID_MPEG_VIDC_VIDEO_FULL_RANGE_ENABLE = 1,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_TRANSFER_CHARS (V4L2_CID_MPEG_MSM_VIDC_BASE + 62)
-#define V4L2_CID_MPEG_VIDC_VIDEO_MATRIX_COEFFS (V4L2_CID_MPEG_MSM_VIDC_BASE + 63)
-#define V4L2_CID_MPEG_VIDC_VIDEO_IFRAME_SIZE_TYPE (V4L2_CID_MPEG_MSM_VIDC_BASE + 64)
-#define V4L2_CID_MPEG_VIDC_VIDEO_LAYER_ID (V4L2_CID_MPEG_MSM_VIDC_BASE + 65)
-#define V4L2_CID_MPEG_VIDC_VIDEO_VP9_PROFILE (V4L2_CID_MPEG_MSM_VIDC_BASE + 66)
-enum v4l2_mpeg_vidc_video_vp9_profile {
- V4L2_MPEG_VIDC_VIDEO_VP9_PROFILE_UNUSED = 0,
- V4L2_MPEG_VIDC_VIDEO_VP9_PROFILE_P0 = 1,
- V4L2_MPEG_VIDC_VIDEO_VP9_PROFILE_P2_10 = 2,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_VP9_LEVEL (V4L2_CID_MPEG_MSM_VIDC_BASE + 67)
-enum v4l2_mpeg_vidc_video_vp9_level {
- V4L2_MPEG_VIDC_VIDEO_VP9_LEVEL_UNUSED = 0,
- V4L2_MPEG_VIDC_VIDEO_VP9_LEVEL_1 = 1,
- V4L2_MPEG_VIDC_VIDEO_VP9_LEVEL_11 = 2,
- V4L2_MPEG_VIDC_VIDEO_VP9_LEVEL_2 = 3,
- V4L2_MPEG_VIDC_VIDEO_VP9_LEVEL_21 = 4,
- V4L2_MPEG_VIDC_VIDEO_VP9_LEVEL_3 = 5,
- V4L2_MPEG_VIDC_VIDEO_VP9_LEVEL_31 = 6,
- V4L2_MPEG_VIDC_VIDEO_VP9_LEVEL_4 = 7,
- V4L2_MPEG_VIDC_VIDEO_VP9_LEVEL_41 = 8,
- V4L2_MPEG_VIDC_VIDEO_VP9_LEVEL_5 = 9,
- V4L2_MPEG_VIDC_VIDEO_VP9_LEVEL_51 = 10,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_MB_ERROR_MAP_REPORTING (V4L2_CID_MPEG_MSM_VIDC_BASE + 68)
-#define V4L2_CID_MPEG_VIDC_VIDEO_CONTINUE_DATA_TRANSFER (V4L2_CID_MPEG_MSM_VIDC_BASE + 69)
-#define V4L2_CID_MPEG_VIDC_VIDEO_ALLOC_MODE_INPUT (V4L2_CID_MPEG_MSM_VIDC_BASE + 70)
-#define V4L2_CID_MPEG_VIDC_VIDEO_FRAME_ASSEMBLY (V4L2_CID_MPEG_MSM_VIDC_BASE + 71)
-enum v4l2_mpeg_vidc_video_assembly {
- V4L2_MPEG_VIDC_FRAME_ASSEMBLY_DISABLE = 0,
- V4L2_MPEG_VIDC_FRAME_ASSEMBLY_ENABLE = 1,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_H263_PROFILE (V4L2_CID_MPEG_MSM_VIDC_BASE + 72)
-enum v4l2_mpeg_vidc_video_h263_profile {
- V4L2_MPEG_VIDC_VIDEO_H263_PROFILE_BASELINE = 0,
- V4L2_MPEG_VIDC_VIDEO_H263_PROFILE_H320CODING = 1,
- V4L2_MPEG_VIDC_VIDEO_H263_PROFILE_BACKWARDCOMPATIBLE = 2,
- V4L2_MPEG_VIDC_VIDEO_H263_PROFILE_ISWV2 = 3,
- V4L2_MPEG_VIDC_VIDEO_H263_PROFILE_ISWV3 = 4,
- V4L2_MPEG_VIDC_VIDEO_H263_PROFILE_HIGHCOMPRESSION = 5,
- V4L2_MPEG_VIDC_VIDEO_H263_PROFILE_INTERNET = 6,
- V4L2_MPEG_VIDC_VIDEO_H263_PROFILE_INTERLACE = 7,
- V4L2_MPEG_VIDC_VIDEO_H263_PROFILE_HIGHLATENCY = 8,
-};
-#define V4L2_CID_MPEG_VIDEO_MIN_QP_PACKED (V4L2_CID_MPEG_MSM_VIDC_BASE + 97)
-#define V4L2_CID_MPEG_VIDEO_MAX_QP_PACKED (V4L2_CID_MPEG_MSM_VIDC_BASE + 98)
-#define V4L2_CID_MPEG_VIDC_VIDEO_I_FRAME_QP (V4L2_CID_MPEG_MSM_VIDC_BASE + 99)
-#define V4L2_CID_MPEG_VIDC_VIDEO_P_FRAME_QP (V4L2_CID_MPEG_MSM_VIDC_BASE + 100)
-#define V4L2_CID_MPEG_VIDC_VIDEO_B_FRAME_QP (V4L2_CID_MPEG_MSM_VIDC_BASE + 101)
-#define V4L2_CID_MPEG_VIDC_VIDEO_I_FRAME_QP_MIN (V4L2_CID_MPEG_MSM_VIDC_BASE + 102)
-#define V4L2_CID_MPEG_VIDC_VIDEO_P_FRAME_QP_MIN (V4L2_CID_MPEG_MSM_VIDC_BASE + 103)
-#define V4L2_CID_MPEG_VIDC_VIDEO_B_FRAME_QP_MIN (V4L2_CID_MPEG_MSM_VIDC_BASE + 104)
-#define V4L2_CID_MPEG_VIDC_VIDEO_I_FRAME_QP_MAX (V4L2_CID_MPEG_MSM_VIDC_BASE + 105)
-#define V4L2_CID_MPEG_VIDC_VIDEO_P_FRAME_QP_MAX (V4L2_CID_MPEG_MSM_VIDC_BASE + 106)
-#define V4L2_CID_MPEG_VIDC_VIDEO_B_FRAME_QP_MAX (V4L2_CID_MPEG_MSM_VIDC_BASE + 107)
-#define V4L2_CID_MPEG_VIDC_VIDEO_QP_MASK (V4L2_CID_MPEG_MSM_VIDC_BASE + 108)
-enum v4l2_mpeg_vidc_video_venc_iframesize_type {
- V4L2_CID_MPEG_VIDC_VIDEO_IFRAME_SIZE_DEFAULT,
- V4L2_CID_MPEG_VIDC_VIDEO_IFRAME_SIZE_MEDIUM,
- V4L2_CID_MPEG_VIDC_VIDEO_IFRAME_SIZE_HUGE,
- V4L2_CID_MPEG_VIDC_VIDEO_IFRAME_SIZE_UNLIMITED,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_CONCEAL_COLOR_8BIT (V4L2_CID_MPEG_MSM_VIDC_BASE + 109)
-#define V4L2_CID_MPEG_VIDC_VIDEO_CONCEAL_COLOR_10BIT (V4L2_CID_MPEG_MSM_VIDC_BASE + 110)
-#define V4L2_CID_MPEG_VIDC_VIDEO_TME_PROFILE (V4L2_CID_MPEG_MSM_VIDC_BASE + 111)
-enum v4l2_mpeg_vidc_video_tme_profile {
- V4L2_MPEG_VIDC_VIDEO_TME_PROFILE_0 = 0,
- V4L2_MPEG_VIDC_VIDEO_TME_PROFILE_1 = 1,
- V4L2_MPEG_VIDC_VIDEO_TME_PROFILE_2 = 2,
- V4L2_MPEG_VIDC_VIDEO_TME_PROFILE_3 = 3,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_TME_LEVEL (V4L2_CID_MPEG_MSM_VIDC_BASE + 112)
-enum v4l2_mpeg_vidc_video_tme_level {
- V4L2_MPEG_VIDC_VIDEO_TME_LEVEL_INTEGER = 0,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_TME_PAYLOAD_VERSION (V4L2_CID_MPEG_MSM_VIDC_BASE + 113)
-#define V4L2_CID_MPEG_VIDC_VIDEO_VPE_CSC_CUSTOM_MATRIX (V4L2_CID_MPEG_MSM_VIDC_BASE + 114)
-#define V4L2_CID_MPEG_VIDC_VIDEO_FLIP (V4L2_CID_MPEG_MSM_VIDC_BASE + 115)
-enum v4l2_mpeg_vidc_video_flip {
- V4L2_CID_MPEG_VIDC_VIDEO_FLIP_NONE = 0,
- V4L2_CID_MPEG_VIDC_VIDEO_FLIP_HORI = 1,
- V4L2_CID_MPEG_VIDC_VIDEO_FLIP_VERT = 2,
- V4L2_CID_MPEG_VIDC_VIDEO_FLIP_BOTH = 3,
-};
-#define V4L2_MPEG_VIDC_VENC_HDR_INFO_ENABLED 1
-#define V4L2_MPEG_VIDC_VENC_HDR_INFO_DISABLED 0
-#define V4L2_CID_MPEG_VIDC_VENC_HDR_INFO (V4L2_CID_MPEG_MSM_VIDC_BASE + 116)
-#define V4L2_CID_MPEG_VIDC_VENC_RGB_PRIMARY_00 (V4L2_CID_MPEG_MSM_VIDC_BASE + 117)
-#define V4L2_CID_MPEG_VIDC_VENC_RGB_PRIMARY_01 (V4L2_CID_MPEG_MSM_VIDC_BASE + 118)
-#define V4L2_CID_MPEG_VIDC_VENC_RGB_PRIMARY_10 (V4L2_CID_MPEG_MSM_VIDC_BASE + 119)
-#define V4L2_CID_MPEG_VIDC_VENC_RGB_PRIMARY_11 (V4L2_CID_MPEG_MSM_VIDC_BASE + 120)
-#define V4L2_CID_MPEG_VIDC_VENC_RGB_PRIMARY_20 (V4L2_CID_MPEG_MSM_VIDC_BASE + 121)
-#define V4L2_CID_MPEG_VIDC_VENC_RGB_PRIMARY_21 (V4L2_CID_MPEG_MSM_VIDC_BASE + 122)
-#define V4L2_CID_MPEG_VIDC_VENC_WHITEPOINT_X (V4L2_CID_MPEG_MSM_VIDC_BASE + 123)
-#define V4L2_CID_MPEG_VIDC_VENC_WHITEPOINT_Y (V4L2_CID_MPEG_MSM_VIDC_BASE + 124)
-#define V4L2_CID_MPEG_VIDC_VENC_MAX_DISP_LUM (V4L2_CID_MPEG_MSM_VIDC_BASE + 125)
-#define V4L2_CID_MPEG_VIDC_VENC_MIN_DISP_LUM (V4L2_CID_MPEG_MSM_VIDC_BASE + 126)
-#define V4L2_CID_MPEG_VIDC_VENC_MAX_CLL (V4L2_CID_MPEG_MSM_VIDC_BASE + 127)
-#define V4L2_CID_MPEG_VIDC_VENC_MAX_FLL (V4L2_CID_MPEG_MSM_VIDC_BASE + 128)
-#define V4L2_CID_MPEG_VIDC_SET_PERF_LEVEL (V4L2_CID_MPEG_MSM_VIDC_BASE + 129)
-enum v4l2_mpeg_vidc_perf_level {
- V4L2_CID_MPEG_VIDC_PERF_LEVEL_NOMINAL = 0,
- V4L2_CID_MPEG_VIDC_PERF_LEVEL_PERFORMANCE = 1,
- V4L2_CID_MPEG_VIDC_PERF_LEVEL_TURBO = 2,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_AIR_MBS (V4L2_CID_MPEG_MSM_VIDC_BASE + 130)
-#define V4L2_CID_MPEG_VIDC_VIDEO_AIR_REF (V4L2_CID_MPEG_MSM_VIDC_BASE + 131)
-#define V4L2_CID_MPEG_VIDC_VIDEO_CIR_MBS (V4L2_CID_MPEG_MSM_VIDC_BASE + 132)
-#define V4L2_CID_MPEG_VIDC_VIDEO_H264_VUI_TIMING_INFO (V4L2_CID_MPEG_MSM_VIDC_BASE + 135)
-#define V4L2_CID_MPEG_VIDEO_MULTI_SLICE_GOB (V4L2_CID_MPEG_MSM_VIDC_BASE + 136)
-#define V4L2_CID_MPEG_VIDC_VIDEO_H264_VUI_BITSTREAM_RESTRICT (V4L2_CID_MPEG_MSM_VIDC_BASE + 137)
-enum v4l2_mpeg_vidc_video_h264_vui_bitstream_restrict {
- V4L2_MPEG_VIDC_VIDEO_H264_VUI_BITSTREAM_RESTRICT_DISABLED = 0,
- V4L2_MPEG_VIDC_VIDEO_H264_VUI_BITSTREAM_RESTRICT_ENABLED = 1
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_DEINTERLACE (V4L2_CID_MPEG_MSM_VIDC_BASE + 138)
-enum v4l2_mpeg_vidc_video_deinterlace {
- V4L2_CID_MPEG_VIDC_VIDEO_DEINTERLACE_DISABLED = 0,
- V4L2_CID_MPEG_VIDC_VIDEO_DEINTERLACE_ENABLED = 1
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_MPEG4_TIME_RESOLUTION (V4L2_CID_MPEG_MSM_VIDC_BASE + 139)
-#define V4L2_CID_MPEG_VIDC_VIDEO_REQUEST_SEQ_HEADER (V4L2_CID_MPEG_MSM_VIDC_BASE + 140)
-#define V4L2_CID_MPEG_VIDC_VIDEO_RATE_CONTROL_TIMESTAMP_MODE (V4L2_CID_MPEG_MSM_VIDC_BASE + 141)
-enum v4l2_mpeg_vidc_video_rate_control_timestamp_mode {
- V4L2_MPEG_VIDC_VIDEO_RATE_CONTROL_TIMESTAMP_MODE_HONOR = 0,
- V4L2_MPEG_VIDC_VIDEO_RATE_CONTROL_TIMESTAMP_MODE_IGNORE = 1,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_ENABLE_INITIAL_QP (V4L2_CID_MPEG_MSM_VIDC_BASE + 142)
-enum vl42_mpeg_vidc_video_enable_initial_qp {
- V4L2_CID_MPEG_VIDC_VIDEO_ENABLE_INITIAL_QP_IFRAME = 0x1,
- V4L2_CID_MPEG_VIDC_VIDEO_ENABLE_INITIAL_QP_PFRAME = 0x2,
- V4L2_CID_MPEG_VIDC_VIDEO_ENABLE_INITIAL_QP_BFRAME = 0x4,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_INITIAL_I_FRAME_QP (V4L2_CID_MPEG_MSM_VIDC_BASE + 143)
-#define V4L2_CID_MPEG_VIDC_VIDEO_INITIAL_P_FRAME_QP (V4L2_CID_MPEG_MSM_VIDC_BASE + 144)
-#define V4L2_CID_MPEG_VIDC_VIDEO_INITIAL_B_FRAME_QP (V4L2_CID_MPEG_MSM_VIDC_BASE + 145)
-#define V4L2_CID_MPEG_VIDC_VIDEO_H264_NAL_SVC (V4L2_CID_MPEG_MSM_VIDC_BASE + 146)
-#define V4L2_CID_MPEG_VIDC_VIDEO_PERF_MODE (V4L2_CID_MPEG_MSM_VIDC_BASE + 147)
-enum v4l2_mpeg_vidc_video_perf_mode {
- V4L2_MPEG_VIDC_VIDEO_PERF_MAX_QUALITY = 1,
- V4L2_MPEG_VIDC_VIDEO_PERF_POWER_SAVE = 2
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_MBI_STATISTICS_MODE (V4L2_CID_MPEG_MSM_VIDC_BASE + 148)
-#define V4L2_CID_MPEG_VIDC_VIDEO_CONFIG_QP (V4L2_CID_MPEG_MSM_VIDC_BASE + 149)
-#define V4L2_CID_MPEG_VIDC_VIDEO_H264_PIC_ORDER_CNT (V4L2_CID_MPEG_MSM_VIDC_BASE + 150)
-#define V4L2_CID_MPEG_VIDC_VIDEO_SCS_THRESHOLD (V4L2_CID_MPEG_MSM_VIDC_BASE + 151)
-#define V4L2_CID_MPEG_VIDC_VIDEO_MVC_BUFFER_LAYOUT (V4L2_CID_MPEG_MSM_VIDC_BASE + 152)
-#define V4L2_CID_MPEG_VIDC_VIDEO_SECURE_SCALING_THRESHOLD (V4L2_CID_MPEG_MSM_VIDC_BASE + 153)
-#define V4L2_CID_MPEG_VIDC_VIDEO_NON_SECURE_OUTPUT2 (V4L2_CID_MPEG_MSM_VIDC_BASE + 154)
-#define V4L2_CID_MPEG_VIDC_VIDEO_VP8_MIN_QP (V4L2_CID_MPEG_MSM_VIDC_BASE + 155)
-#define V4L2_CID_MPEG_VIDC_VIDEO_VP8_MAX_QP (V4L2_CID_MPEG_MSM_VIDC_BASE + 156)
-#define V4L2_CID_MPEG_VIDC_VIDEO_H263_LEVEL (V4L2_CID_MPEG_MSM_VIDC_BASE + 157)
-enum v4l2_mpeg_vidc_video_h263_level {
- V4L2_MPEG_VIDC_VIDEO_H263_LEVEL_1_0 = 0,
- V4L2_MPEG_VIDC_VIDEO_H263_LEVEL_2_0 = 1,
- V4L2_MPEG_VIDC_VIDEO_H263_LEVEL_3_0 = 2,
- V4L2_MPEG_VIDC_VIDEO_H263_LEVEL_4_0 = 3,
- V4L2_MPEG_VIDC_VIDEO_H263_LEVEL_4_5 = 4,
- V4L2_MPEG_VIDC_VIDEO_H263_LEVEL_5_0 = 5,
- V4L2_MPEG_VIDC_VIDEO_H263_LEVEL_6_0 = 6,
- V4L2_MPEG_VIDC_VIDEO_H263_LEVEL_7_0 = 7,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_POST_LOOP_DEBLOCKER_MODE (V4L2_CID_MPEG_MSM_VIDC_BASE + 158)
-#define V4L2_CID_MPEG_VIDC_VIDEO_DIVX_FORMAT (V4L2_CID_MPEG_MSM_VIDC_BASE + 159)
-enum v4l2_mpeg_vidc_video_divx_format_type {
- V4L2_MPEG_VIDC_VIDEO_DIVX_FORMAT_4 = 0,
- V4L2_MPEG_VIDC_VIDEO_DIVX_FORMAT_5 = 1,
- V4L2_MPEG_VIDC_VIDEO_DIVX_FORMAT_6 = 2,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_FRAME_QUALITY (V4L2_CID_MPEG_MSM_VIDC_BASE + 160)
-#define V4L2_CID_MPEG_VIDC_IMG_GRID_DIMENSION (V4L2_CID_MPEG_MSM_VIDC_BASE + 161)
-enum v4l2_mpeg_vidc_video_mbi_statistics_mode {
- V4L2_CID_MPEG_VIDC_VIDEO_MBI_MODE_DEFAULT = 0,
- V4L2_CID_MPEG_VIDC_VIDEO_MBI_MODE_1 = 1,
- V4L2_CID_MPEG_VIDC_VIDEO_MBI_MODE_2 = 2,
- V4L2_CID_MPEG_VIDC_VIDEO_MBI_MODE_3 = 3,
-};
-enum vl42_mpeg_vidc_video_h264_svc_nal {
- V4L2_CID_MPEG_VIDC_VIDEO_H264_NAL_SVC_DISABLED = 0,
- V4L2_CID_MPEG_VIDC_VIDEO_H264_NAL_SVC_ENABLED = 1,
-};
-enum v4l2_mpeg_vidc_video_h264_vui_timing_info {
- V4L2_MPEG_VIDC_VIDEO_H264_VUI_TIMING_INFO_DISABLED = 0,
- V4L2_MPEG_VIDC_VIDEO_H264_VUI_TIMING_INFO_ENABLED = 1
-};
-#define V4L2_CID_CAMERA_CLASS_BASE (V4L2_CTRL_CLASS_CAMERA | 0x900)
-#define V4L2_CID_CAMERA_CLASS (V4L2_CTRL_CLASS_CAMERA | 1)
-#define V4L2_CID_EXPOSURE_AUTO (V4L2_CID_CAMERA_CLASS_BASE + 1)
-enum v4l2_exposure_auto_type {
- V4L2_EXPOSURE_AUTO = 0,
- V4L2_EXPOSURE_MANUAL = 1,
- V4L2_EXPOSURE_SHUTTER_PRIORITY = 2,
- V4L2_EXPOSURE_APERTURE_PRIORITY = 3
-};
-#define V4L2_CID_EXPOSURE_ABSOLUTE (V4L2_CID_CAMERA_CLASS_BASE + 2)
-#define V4L2_CID_EXPOSURE_AUTO_PRIORITY (V4L2_CID_CAMERA_CLASS_BASE + 3)
-#define V4L2_CID_PAN_RELATIVE (V4L2_CID_CAMERA_CLASS_BASE + 4)
-#define V4L2_CID_TILT_RELATIVE (V4L2_CID_CAMERA_CLASS_BASE + 5)
-#define V4L2_CID_PAN_RESET (V4L2_CID_CAMERA_CLASS_BASE + 6)
-#define V4L2_CID_TILT_RESET (V4L2_CID_CAMERA_CLASS_BASE + 7)
-#define V4L2_CID_PAN_ABSOLUTE (V4L2_CID_CAMERA_CLASS_BASE + 8)
-#define V4L2_CID_TILT_ABSOLUTE (V4L2_CID_CAMERA_CLASS_BASE + 9)
-#define V4L2_CID_FOCUS_ABSOLUTE (V4L2_CID_CAMERA_CLASS_BASE + 10)
-#define V4L2_CID_FOCUS_RELATIVE (V4L2_CID_CAMERA_CLASS_BASE + 11)
-#define V4L2_CID_FOCUS_AUTO (V4L2_CID_CAMERA_CLASS_BASE + 12)
-#define V4L2_CID_ZOOM_ABSOLUTE (V4L2_CID_CAMERA_CLASS_BASE + 13)
-#define V4L2_CID_ZOOM_RELATIVE (V4L2_CID_CAMERA_CLASS_BASE + 14)
-#define V4L2_CID_ZOOM_CONTINUOUS (V4L2_CID_CAMERA_CLASS_BASE + 15)
-#define V4L2_CID_PRIVACY (V4L2_CID_CAMERA_CLASS_BASE + 16)
-#define V4L2_CID_IRIS_ABSOLUTE (V4L2_CID_CAMERA_CLASS_BASE + 17)
-#define V4L2_CID_IRIS_RELATIVE (V4L2_CID_CAMERA_CLASS_BASE + 18)
-#define V4L2_CID_AUTO_EXPOSURE_BIAS (V4L2_CID_CAMERA_CLASS_BASE + 19)
-#define V4L2_CID_AUTO_N_PRESET_WHITE_BALANCE (V4L2_CID_CAMERA_CLASS_BASE + 20)
-enum v4l2_auto_n_preset_white_balance {
- V4L2_WHITE_BALANCE_MANUAL = 0,
- V4L2_WHITE_BALANCE_AUTO = 1,
- V4L2_WHITE_BALANCE_INCANDESCENT = 2,
- V4L2_WHITE_BALANCE_FLUORESCENT = 3,
- V4L2_WHITE_BALANCE_FLUORESCENT_H = 4,
- V4L2_WHITE_BALANCE_HORIZON = 5,
- V4L2_WHITE_BALANCE_DAYLIGHT = 6,
- V4L2_WHITE_BALANCE_FLASH = 7,
- V4L2_WHITE_BALANCE_CLOUDY = 8,
- V4L2_WHITE_BALANCE_SHADE = 9,
-};
-#define V4L2_CID_WIDE_DYNAMIC_RANGE (V4L2_CID_CAMERA_CLASS_BASE + 21)
-#define V4L2_CID_IMAGE_STABILIZATION (V4L2_CID_CAMERA_CLASS_BASE + 22)
-#define V4L2_CID_ISO_SENSITIVITY (V4L2_CID_CAMERA_CLASS_BASE + 23)
-#define V4L2_CID_ISO_SENSITIVITY_AUTO (V4L2_CID_CAMERA_CLASS_BASE + 24)
-enum v4l2_iso_sensitivity_auto_type {
- V4L2_ISO_SENSITIVITY_MANUAL = 0,
- V4L2_ISO_SENSITIVITY_AUTO = 1,
-};
-#define V4L2_CID_EXPOSURE_METERING (V4L2_CID_CAMERA_CLASS_BASE + 25)
-enum v4l2_exposure_metering {
- V4L2_EXPOSURE_METERING_AVERAGE = 0,
- V4L2_EXPOSURE_METERING_CENTER_WEIGHTED = 1,
- V4L2_EXPOSURE_METERING_SPOT = 2,
- V4L2_EXPOSURE_METERING_MATRIX = 3,
-};
-#define V4L2_CID_SCENE_MODE (V4L2_CID_CAMERA_CLASS_BASE + 26)
-enum v4l2_scene_mode {
- V4L2_SCENE_MODE_NONE = 0,
- V4L2_SCENE_MODE_BACKLIGHT = 1,
- V4L2_SCENE_MODE_BEACH_SNOW = 2,
- V4L2_SCENE_MODE_CANDLE_LIGHT = 3,
- V4L2_SCENE_MODE_DAWN_DUSK = 4,
- V4L2_SCENE_MODE_FALL_COLORS = 5,
- V4L2_SCENE_MODE_FIREWORKS = 6,
- V4L2_SCENE_MODE_LANDSCAPE = 7,
- V4L2_SCENE_MODE_NIGHT = 8,
- V4L2_SCENE_MODE_PARTY_INDOOR = 9,
- V4L2_SCENE_MODE_PORTRAIT = 10,
- V4L2_SCENE_MODE_SPORTS = 11,
- V4L2_SCENE_MODE_SUNSET = 12,
- V4L2_SCENE_MODE_TEXT = 13,
-};
-#define V4L2_CID_3A_LOCK (V4L2_CID_CAMERA_CLASS_BASE + 27)
-#define V4L2_LOCK_EXPOSURE (1 << 0)
-#define V4L2_LOCK_WHITE_BALANCE (1 << 1)
-#define V4L2_LOCK_FOCUS (1 << 2)
-#define V4L2_CID_AUTO_FOCUS_START (V4L2_CID_CAMERA_CLASS_BASE + 28)
-#define V4L2_CID_AUTO_FOCUS_STOP (V4L2_CID_CAMERA_CLASS_BASE + 29)
-#define V4L2_CID_AUTO_FOCUS_STATUS (V4L2_CID_CAMERA_CLASS_BASE + 30)
-#define V4L2_AUTO_FOCUS_STATUS_IDLE (0 << 0)
-#define V4L2_AUTO_FOCUS_STATUS_BUSY (1 << 0)
-#define V4L2_AUTO_FOCUS_STATUS_REACHED (1 << 1)
-#define V4L2_AUTO_FOCUS_STATUS_FAILED (1 << 2)
-#define V4L2_CID_AUTO_FOCUS_RANGE (V4L2_CID_CAMERA_CLASS_BASE + 31)
-enum v4l2_auto_focus_range {
- V4L2_AUTO_FOCUS_RANGE_AUTO = 0,
- V4L2_AUTO_FOCUS_RANGE_NORMAL = 1,
- V4L2_AUTO_FOCUS_RANGE_MACRO = 2,
- V4L2_AUTO_FOCUS_RANGE_INFINITY = 3,
-};
-#define V4L2_CID_PAN_SPEED (V4L2_CID_CAMERA_CLASS_BASE + 32)
-#define V4L2_CID_TILT_SPEED (V4L2_CID_CAMERA_CLASS_BASE + 33)
-#define V4L2_CID_FM_TX_CLASS_BASE (V4L2_CTRL_CLASS_FM_TX | 0x900)
-#define V4L2_CID_FM_TX_CLASS (V4L2_CTRL_CLASS_FM_TX | 1)
-#define V4L2_CID_RDS_TX_DEVIATION (V4L2_CID_FM_TX_CLASS_BASE + 1)
-#define V4L2_CID_RDS_TX_PI (V4L2_CID_FM_TX_CLASS_BASE + 2)
-#define V4L2_CID_RDS_TX_PTY (V4L2_CID_FM_TX_CLASS_BASE + 3)
-#define V4L2_CID_RDS_TX_PS_NAME (V4L2_CID_FM_TX_CLASS_BASE + 5)
-#define V4L2_CID_RDS_TX_RADIO_TEXT (V4L2_CID_FM_TX_CLASS_BASE + 6)
-#define V4L2_CID_RDS_TX_MONO_STEREO (V4L2_CID_FM_TX_CLASS_BASE + 7)
-#define V4L2_CID_RDS_TX_ARTIFICIAL_HEAD (V4L2_CID_FM_TX_CLASS_BASE + 8)
-#define V4L2_CID_RDS_TX_COMPRESSED (V4L2_CID_FM_TX_CLASS_BASE + 9)
-#define V4L2_CID_RDS_TX_DYNAMIC_PTY (V4L2_CID_FM_TX_CLASS_BASE + 10)
-#define V4L2_CID_RDS_TX_TRAFFIC_ANNOUNCEMENT (V4L2_CID_FM_TX_CLASS_BASE + 11)
-#define V4L2_CID_RDS_TX_TRAFFIC_PROGRAM (V4L2_CID_FM_TX_CLASS_BASE + 12)
-#define V4L2_CID_RDS_TX_MUSIC_SPEECH (V4L2_CID_FM_TX_CLASS_BASE + 13)
-#define V4L2_CID_RDS_TX_ALT_FREQS_ENABLE (V4L2_CID_FM_TX_CLASS_BASE + 14)
-#define V4L2_CID_RDS_TX_ALT_FREQS (V4L2_CID_FM_TX_CLASS_BASE + 15)
-#define V4L2_CID_AUDIO_LIMITER_ENABLED (V4L2_CID_FM_TX_CLASS_BASE + 64)
-#define V4L2_CID_AUDIO_LIMITER_RELEASE_TIME (V4L2_CID_FM_TX_CLASS_BASE + 65)
-#define V4L2_CID_AUDIO_LIMITER_DEVIATION (V4L2_CID_FM_TX_CLASS_BASE + 66)
-#define V4L2_CID_AUDIO_COMPRESSION_ENABLED (V4L2_CID_FM_TX_CLASS_BASE + 80)
-#define V4L2_CID_AUDIO_COMPRESSION_GAIN (V4L2_CID_FM_TX_CLASS_BASE + 81)
-#define V4L2_CID_AUDIO_COMPRESSION_THRESHOLD (V4L2_CID_FM_TX_CLASS_BASE + 82)
-#define V4L2_CID_AUDIO_COMPRESSION_ATTACK_TIME (V4L2_CID_FM_TX_CLASS_BASE + 83)
-#define V4L2_CID_AUDIO_COMPRESSION_RELEASE_TIME (V4L2_CID_FM_TX_CLASS_BASE + 84)
-#define V4L2_CID_PILOT_TONE_ENABLED (V4L2_CID_FM_TX_CLASS_BASE + 96)
-#define V4L2_CID_PILOT_TONE_DEVIATION (V4L2_CID_FM_TX_CLASS_BASE + 97)
-#define V4L2_CID_PILOT_TONE_FREQUENCY (V4L2_CID_FM_TX_CLASS_BASE + 98)
-#define V4L2_CID_TUNE_PREEMPHASIS (V4L2_CID_FM_TX_CLASS_BASE + 112)
-enum v4l2_preemphasis {
- V4L2_PREEMPHASIS_DISABLED = 0,
- V4L2_PREEMPHASIS_50_uS = 1,
- V4L2_PREEMPHASIS_75_uS = 2,
-};
-#define V4L2_CID_TUNE_POWER_LEVEL (V4L2_CID_FM_TX_CLASS_BASE + 113)
-#define V4L2_CID_TUNE_ANTENNA_CAPACITOR (V4L2_CID_FM_TX_CLASS_BASE + 114)
-#define V4L2_CID_FLASH_CLASS_BASE (V4L2_CTRL_CLASS_FLASH | 0x900)
-#define V4L2_CID_FLASH_CLASS (V4L2_CTRL_CLASS_FLASH | 1)
-#define V4L2_CID_FLASH_LED_MODE (V4L2_CID_FLASH_CLASS_BASE + 1)
-enum v4l2_flash_led_mode {
- V4L2_FLASH_LED_MODE_NONE,
- V4L2_FLASH_LED_MODE_FLASH,
- V4L2_FLASH_LED_MODE_TORCH,
-};
-#define V4L2_CID_FLASH_STROBE_SOURCE (V4L2_CID_FLASH_CLASS_BASE + 2)
-enum v4l2_flash_strobe_source {
- V4L2_FLASH_STROBE_SOURCE_SOFTWARE,
- V4L2_FLASH_STROBE_SOURCE_EXTERNAL,
-};
-#define V4L2_CID_FLASH_STROBE (V4L2_CID_FLASH_CLASS_BASE + 3)
-#define V4L2_CID_FLASH_STROBE_STOP (V4L2_CID_FLASH_CLASS_BASE + 4)
-#define V4L2_CID_FLASH_STROBE_STATUS (V4L2_CID_FLASH_CLASS_BASE + 5)
-#define V4L2_CID_FLASH_TIMEOUT (V4L2_CID_FLASH_CLASS_BASE + 6)
-#define V4L2_CID_FLASH_INTENSITY (V4L2_CID_FLASH_CLASS_BASE + 7)
-#define V4L2_CID_FLASH_TORCH_INTENSITY (V4L2_CID_FLASH_CLASS_BASE + 8)
-#define V4L2_CID_FLASH_INDICATOR_INTENSITY (V4L2_CID_FLASH_CLASS_BASE + 9)
-#define V4L2_CID_FLASH_FAULT (V4L2_CID_FLASH_CLASS_BASE + 10)
-#define V4L2_FLASH_FAULT_OVER_VOLTAGE (1 << 0)
-#define V4L2_FLASH_FAULT_TIMEOUT (1 << 1)
-#define V4L2_FLASH_FAULT_OVER_TEMPERATURE (1 << 2)
-#define V4L2_FLASH_FAULT_SHORT_CIRCUIT (1 << 3)
-#define V4L2_FLASH_FAULT_OVER_CURRENT (1 << 4)
-#define V4L2_FLASH_FAULT_INDICATOR (1 << 5)
-#define V4L2_FLASH_FAULT_UNDER_VOLTAGE (1 << 6)
-#define V4L2_FLASH_FAULT_INPUT_VOLTAGE (1 << 7)
-#define V4L2_FLASH_FAULT_LED_OVER_TEMPERATURE (1 << 8)
-#define V4L2_CID_FLASH_CHARGE (V4L2_CID_FLASH_CLASS_BASE + 11)
-#define V4L2_CID_FLASH_READY (V4L2_CID_FLASH_CLASS_BASE + 12)
-#define V4L2_CID_JPEG_CLASS_BASE (V4L2_CTRL_CLASS_JPEG | 0x900)
-#define V4L2_CID_JPEG_CLASS (V4L2_CTRL_CLASS_JPEG | 1)
-#define V4L2_CID_JPEG_CHROMA_SUBSAMPLING (V4L2_CID_JPEG_CLASS_BASE + 1)
-enum v4l2_jpeg_chroma_subsampling {
- V4L2_JPEG_CHROMA_SUBSAMPLING_444 = 0,
- V4L2_JPEG_CHROMA_SUBSAMPLING_422 = 1,
- V4L2_JPEG_CHROMA_SUBSAMPLING_420 = 2,
- V4L2_JPEG_CHROMA_SUBSAMPLING_411 = 3,
- V4L2_JPEG_CHROMA_SUBSAMPLING_410 = 4,
- V4L2_JPEG_CHROMA_SUBSAMPLING_GRAY = 5,
-};
-#define V4L2_CID_JPEG_RESTART_INTERVAL (V4L2_CID_JPEG_CLASS_BASE + 2)
-#define V4L2_CID_JPEG_COMPRESSION_QUALITY (V4L2_CID_JPEG_CLASS_BASE + 3)
-#define V4L2_CID_JPEG_ACTIVE_MARKER (V4L2_CID_JPEG_CLASS_BASE + 4)
-#define V4L2_JPEG_ACTIVE_MARKER_APP0 (1 << 0)
-#define V4L2_JPEG_ACTIVE_MARKER_APP1 (1 << 1)
-#define V4L2_JPEG_ACTIVE_MARKER_COM (1 << 16)
-#define V4L2_JPEG_ACTIVE_MARKER_DQT (1 << 17)
-#define V4L2_JPEG_ACTIVE_MARKER_DHT (1 << 18)
-#define V4L2_CID_IMAGE_SOURCE_CLASS_BASE (V4L2_CTRL_CLASS_IMAGE_SOURCE | 0x900)
-#define V4L2_CID_IMAGE_SOURCE_CLASS (V4L2_CTRL_CLASS_IMAGE_SOURCE | 1)
-#define V4L2_CID_VBLANK (V4L2_CID_IMAGE_SOURCE_CLASS_BASE + 1)
-#define V4L2_CID_HBLANK (V4L2_CID_IMAGE_SOURCE_CLASS_BASE + 2)
-#define V4L2_CID_ANALOGUE_GAIN (V4L2_CID_IMAGE_SOURCE_CLASS_BASE + 3)
-#define V4L2_CID_TEST_PATTERN_RED (V4L2_CID_IMAGE_SOURCE_CLASS_BASE + 4)
-#define V4L2_CID_TEST_PATTERN_GREENR (V4L2_CID_IMAGE_SOURCE_CLASS_BASE + 5)
-#define V4L2_CID_TEST_PATTERN_BLUE (V4L2_CID_IMAGE_SOURCE_CLASS_BASE + 6)
-#define V4L2_CID_TEST_PATTERN_GREENB (V4L2_CID_IMAGE_SOURCE_CLASS_BASE + 7)
-#define V4L2_CID_IMAGE_PROC_CLASS_BASE (V4L2_CTRL_CLASS_IMAGE_PROC | 0x900)
-#define V4L2_CID_IMAGE_PROC_CLASS (V4L2_CTRL_CLASS_IMAGE_PROC | 1)
-#define V4L2_CID_LINK_FREQ (V4L2_CID_IMAGE_PROC_CLASS_BASE + 1)
-#define V4L2_CID_PIXEL_RATE (V4L2_CID_IMAGE_PROC_CLASS_BASE + 2)
-#define V4L2_CID_TEST_PATTERN (V4L2_CID_IMAGE_PROC_CLASS_BASE + 3)
-#define V4L2_CID_DV_CLASS_BASE (V4L2_CTRL_CLASS_DV | 0x900)
-#define V4L2_CID_DV_CLASS (V4L2_CTRL_CLASS_DV | 1)
-#define V4L2_CID_DV_TX_HOTPLUG (V4L2_CID_DV_CLASS_BASE + 1)
-#define V4L2_CID_DV_TX_RXSENSE (V4L2_CID_DV_CLASS_BASE + 2)
-#define V4L2_CID_DV_TX_EDID_PRESENT (V4L2_CID_DV_CLASS_BASE + 3)
-#define V4L2_CID_DV_TX_MODE (V4L2_CID_DV_CLASS_BASE + 4)
-enum v4l2_dv_tx_mode {
- V4L2_DV_TX_MODE_DVI_D = 0,
- V4L2_DV_TX_MODE_HDMI = 1,
-};
-#define V4L2_CID_DV_TX_RGB_RANGE (V4L2_CID_DV_CLASS_BASE + 5)
-enum v4l2_dv_rgb_range {
- V4L2_DV_RGB_RANGE_AUTO = 0,
- V4L2_DV_RGB_RANGE_LIMITED = 1,
- V4L2_DV_RGB_RANGE_FULL = 2,
-};
-#define V4L2_CID_DV_TX_IT_CONTENT_TYPE (V4L2_CID_DV_CLASS_BASE + 6)
-enum v4l2_dv_it_content_type {
- V4L2_DV_IT_CONTENT_TYPE_GRAPHICS = 0,
- V4L2_DV_IT_CONTENT_TYPE_PHOTO = 1,
- V4L2_DV_IT_CONTENT_TYPE_CINEMA = 2,
- V4L2_DV_IT_CONTENT_TYPE_GAME = 3,
- V4L2_DV_IT_CONTENT_TYPE_NO_ITC = 4,
-};
-#define V4L2_CID_DV_RX_POWER_PRESENT (V4L2_CID_DV_CLASS_BASE + 100)
-#define V4L2_CID_DV_RX_RGB_RANGE (V4L2_CID_DV_CLASS_BASE + 101)
-#define V4L2_CID_DV_RX_IT_CONTENT_TYPE (V4L2_CID_DV_CLASS_BASE + 102)
-#define V4L2_CID_FM_RX_CLASS_BASE (V4L2_CTRL_CLASS_FM_RX | 0x900)
-#define V4L2_CID_FM_RX_CLASS (V4L2_CTRL_CLASS_FM_RX | 1)
-#define V4L2_CID_TUNE_DEEMPHASIS (V4L2_CID_FM_RX_CLASS_BASE + 1)
-enum v4l2_deemphasis {
- V4L2_DEEMPHASIS_DISABLED = V4L2_PREEMPHASIS_DISABLED,
- V4L2_DEEMPHASIS_50_uS = V4L2_PREEMPHASIS_50_uS,
- V4L2_DEEMPHASIS_75_uS = V4L2_PREEMPHASIS_75_uS,
-};
-#define V4L2_CID_RDS_RECEPTION (V4L2_CID_FM_RX_CLASS_BASE + 2)
-#define V4L2_CID_RDS_RX_PTY (V4L2_CID_FM_RX_CLASS_BASE + 3)
-#define V4L2_CID_RDS_RX_PS_NAME (V4L2_CID_FM_RX_CLASS_BASE + 4)
-#define V4L2_CID_RDS_RX_RADIO_TEXT (V4L2_CID_FM_RX_CLASS_BASE + 5)
-#define V4L2_CID_RDS_RX_TRAFFIC_ANNOUNCEMENT (V4L2_CID_FM_RX_CLASS_BASE + 6)
-#define V4L2_CID_RDS_RX_TRAFFIC_PROGRAM (V4L2_CID_FM_RX_CLASS_BASE + 7)
-#define V4L2_CID_RDS_RX_MUSIC_SPEECH (V4L2_CID_FM_RX_CLASS_BASE + 8)
-#define V4L2_CID_RF_TUNER_CLASS_BASE (V4L2_CTRL_CLASS_RF_TUNER | 0x900)
-#define V4L2_CID_RF_TUNER_CLASS (V4L2_CTRL_CLASS_RF_TUNER | 1)
-#define V4L2_CID_RF_TUNER_BANDWIDTH_AUTO (V4L2_CID_RF_TUNER_CLASS_BASE + 11)
-#define V4L2_CID_RF_TUNER_BANDWIDTH (V4L2_CID_RF_TUNER_CLASS_BASE + 12)
-#define V4L2_CID_RF_TUNER_RF_GAIN (V4L2_CID_RF_TUNER_CLASS_BASE + 32)
-#define V4L2_CID_RF_TUNER_LNA_GAIN_AUTO (V4L2_CID_RF_TUNER_CLASS_BASE + 41)
-#define V4L2_CID_RF_TUNER_LNA_GAIN (V4L2_CID_RF_TUNER_CLASS_BASE + 42)
-#define V4L2_CID_RF_TUNER_MIXER_GAIN_AUTO (V4L2_CID_RF_TUNER_CLASS_BASE + 51)
-#define V4L2_CID_RF_TUNER_MIXER_GAIN (V4L2_CID_RF_TUNER_CLASS_BASE + 52)
-#define V4L2_CID_RF_TUNER_IF_GAIN_AUTO (V4L2_CID_RF_TUNER_CLASS_BASE + 61)
-#define V4L2_CID_RF_TUNER_IF_GAIN (V4L2_CID_RF_TUNER_CLASS_BASE + 62)
-#define V4L2_CID_RF_TUNER_PLL_LOCK (V4L2_CID_RF_TUNER_CLASS_BASE + 91)
-#define V4L2_CID_DETECT_CLASS_BASE (V4L2_CTRL_CLASS_DETECT | 0x900)
-#define V4L2_CID_DETECT_CLASS (V4L2_CTRL_CLASS_DETECT | 1)
-#define V4L2_CID_DETECT_MD_MODE (V4L2_CID_DETECT_CLASS_BASE + 1)
-enum v4l2_detect_md_mode {
- V4L2_DETECT_MD_MODE_DISABLED = 0,
- V4L2_DETECT_MD_MODE_GLOBAL = 1,
- V4L2_DETECT_MD_MODE_THRESHOLD_GRID = 2,
- V4L2_DETECT_MD_MODE_REGION_GRID = 3,
-};
-#define V4L2_CID_DETECT_MD_GLOBAL_THRESHOLD (V4L2_CID_DETECT_CLASS_BASE + 2)
-#define V4L2_CID_DETECT_MD_THRESHOLD_GRID (V4L2_CID_DETECT_CLASS_BASE + 3)
-#define V4L2_CID_DETECT_MD_REGION_GRID (V4L2_CID_DETECT_CLASS_BASE + 4)
-#endif
-
diff --git a/sdm710/kernel-headers/linux/videodev2.h b/sdm710/kernel-headers/linux/videodev2.h
deleted file mode 100644
index 6784b287..00000000
--- a/sdm710/kernel-headers/linux/videodev2.h
+++ /dev/null
@@ -1,1400 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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_VIDEODEV2_H
-#define __LINUX_VIDEODEV2_H
-#include <sys/time.h>
-#include <linux/ioctl.h>
-#include <linux/types.h>
-#include <linux/v4l2-common.h>
-#include <linux/v4l2-controls.h>
-#define VIDEO_MAX_FRAME 64
-#define VIDEO_MAX_PLANES 8
-#define v4l2_fourcc(a,b,c,d) ((__u32) (a) | ((__u32) (b) << 8) | ((__u32) (c) << 16) | ((__u32) (d) << 24))
-#define v4l2_fourcc_be(a,b,c,d) (v4l2_fourcc(a, b, c, d) | (1 << 31))
-enum v4l2_field {
- V4L2_FIELD_ANY = 0,
- V4L2_FIELD_NONE = 1,
- V4L2_FIELD_TOP = 2,
- V4L2_FIELD_BOTTOM = 3,
- V4L2_FIELD_INTERLACED = 4,
- V4L2_FIELD_SEQ_TB = 5,
- V4L2_FIELD_SEQ_BT = 6,
- V4L2_FIELD_ALTERNATE = 7,
- V4L2_FIELD_INTERLACED_TB = 8,
- V4L2_FIELD_INTERLACED_BT = 9,
-};
-#define V4L2_FIELD_HAS_TOP(field) ((field) == V4L2_FIELD_TOP || (field) == V4L2_FIELD_INTERLACED || (field) == V4L2_FIELD_INTERLACED_TB || (field) == V4L2_FIELD_INTERLACED_BT || (field) == V4L2_FIELD_SEQ_TB || (field) == V4L2_FIELD_SEQ_BT)
-#define V4L2_FIELD_HAS_BOTTOM(field) ((field) == V4L2_FIELD_BOTTOM || (field) == V4L2_FIELD_INTERLACED || (field) == V4L2_FIELD_INTERLACED_TB || (field) == V4L2_FIELD_INTERLACED_BT || (field) == V4L2_FIELD_SEQ_TB || (field) == V4L2_FIELD_SEQ_BT)
-#define V4L2_FIELD_HAS_BOTH(field) ((field) == V4L2_FIELD_INTERLACED || (field) == V4L2_FIELD_INTERLACED_TB || (field) == V4L2_FIELD_INTERLACED_BT || (field) == V4L2_FIELD_SEQ_TB || (field) == V4L2_FIELD_SEQ_BT)
-#define V4L2_FIELD_HAS_T_OR_B(field) ((field) == V4L2_FIELD_BOTTOM || (field) == V4L2_FIELD_TOP || (field) == V4L2_FIELD_ALTERNATE)
-enum v4l2_buf_type {
- V4L2_BUF_TYPE_VIDEO_CAPTURE = 1,
- V4L2_BUF_TYPE_VIDEO_OUTPUT = 2,
- V4L2_BUF_TYPE_VIDEO_OVERLAY = 3,
- V4L2_BUF_TYPE_VBI_CAPTURE = 4,
- V4L2_BUF_TYPE_VBI_OUTPUT = 5,
- V4L2_BUF_TYPE_SLICED_VBI_CAPTURE = 6,
- V4L2_BUF_TYPE_SLICED_VBI_OUTPUT = 7,
- V4L2_BUF_TYPE_VIDEO_OUTPUT_OVERLAY = 8,
- V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE = 9,
- V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE = 10,
- V4L2_BUF_TYPE_SDR_CAPTURE = 11,
- V4L2_BUF_TYPE_SDR_OUTPUT = 12,
- V4L2_BUF_TYPE_PRIVATE = 0x80,
-};
-#define V4L2_TYPE_IS_MULTIPLANAR(type) ((type) == V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE || (type) == V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE)
-#define V4L2_TYPE_IS_OUTPUT(type) ((type) == V4L2_BUF_TYPE_VIDEO_OUTPUT || (type) == V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE || (type) == V4L2_BUF_TYPE_VIDEO_OVERLAY || (type) == V4L2_BUF_TYPE_VIDEO_OUTPUT_OVERLAY || (type) == V4L2_BUF_TYPE_VBI_OUTPUT || (type) == V4L2_BUF_TYPE_SLICED_VBI_OUTPUT || (type) == V4L2_BUF_TYPE_SDR_OUTPUT)
-enum v4l2_tuner_type {
- V4L2_TUNER_RADIO = 1,
- V4L2_TUNER_ANALOG_TV = 2,
- V4L2_TUNER_DIGITAL_TV = 3,
- V4L2_TUNER_SDR = 4,
- V4L2_TUNER_RF = 5,
-};
-#define V4L2_TUNER_ADC V4L2_TUNER_SDR
-enum v4l2_memory {
- V4L2_MEMORY_MMAP = 1,
- V4L2_MEMORY_USERPTR = 2,
- V4L2_MEMORY_OVERLAY = 3,
- V4L2_MEMORY_DMABUF = 4,
-};
-enum v4l2_colorspace {
- V4L2_COLORSPACE_DEFAULT = 0,
- V4L2_COLORSPACE_SMPTE170M = 1,
- V4L2_COLORSPACE_SMPTE240M = 2,
- V4L2_COLORSPACE_REC709 = 3,
- V4L2_COLORSPACE_BT878 = 4,
- V4L2_COLORSPACE_470_SYSTEM_M = 5,
- V4L2_COLORSPACE_470_SYSTEM_BG = 6,
- V4L2_COLORSPACE_JPEG = 7,
- V4L2_COLORSPACE_SRGB = 8,
- V4L2_COLORSPACE_ADOBERGB = 9,
- V4L2_COLORSPACE_BT2020 = 10,
- V4L2_COLORSPACE_RAW = 11,
- V4L2_COLORSPACE_DCI_P3 = 12,
-};
-#define V4L2_MAP_COLORSPACE_DEFAULT(is_sdtv,is_hdtv) ((is_sdtv) ? V4L2_COLORSPACE_SMPTE170M : ((is_hdtv) ? V4L2_COLORSPACE_REC709 : V4L2_COLORSPACE_SRGB))
-enum v4l2_xfer_func {
- V4L2_XFER_FUNC_DEFAULT = 0,
- V4L2_XFER_FUNC_709 = 1,
- V4L2_XFER_FUNC_SRGB = 2,
- V4L2_XFER_FUNC_ADOBERGB = 3,
- V4L2_XFER_FUNC_SMPTE240M = 4,
- V4L2_XFER_FUNC_NONE = 5,
- V4L2_XFER_FUNC_DCI_P3 = 6,
- V4L2_XFER_FUNC_SMPTE2084 = 7,
-};
-#define V4L2_MAP_XFER_FUNC_DEFAULT(colsp) ((colsp) == V4L2_COLORSPACE_ADOBERGB ? V4L2_XFER_FUNC_ADOBERGB : ((colsp) == V4L2_COLORSPACE_SMPTE240M ? V4L2_XFER_FUNC_SMPTE240M : ((colsp) == V4L2_COLORSPACE_DCI_P3 ? V4L2_XFER_FUNC_DCI_P3 : ((colsp) == V4L2_COLORSPACE_RAW ? V4L2_XFER_FUNC_NONE : ((colsp) == V4L2_COLORSPACE_SRGB || (colsp) == V4L2_COLORSPACE_JPEG ? V4L2_XFER_FUNC_SRGB : V4L2_XFER_FUNC_709)))))
-enum v4l2_ycbcr_encoding {
- V4L2_YCBCR_ENC_DEFAULT = 0,
- V4L2_YCBCR_ENC_601 = 1,
- V4L2_YCBCR_ENC_709 = 2,
- V4L2_YCBCR_ENC_XV601 = 3,
- V4L2_YCBCR_ENC_XV709 = 4,
- V4L2_YCBCR_ENC_SYCC = 5,
- V4L2_YCBCR_ENC_BT2020 = 6,
- V4L2_YCBCR_ENC_BT2020_CONST_LUM = 7,
- V4L2_YCBCR_ENC_SMPTE240M = 8,
-};
-#define V4L2_MAP_YCBCR_ENC_DEFAULT(colsp) (((colsp) == V4L2_COLORSPACE_REC709 || (colsp) == V4L2_COLORSPACE_DCI_P3) ? V4L2_YCBCR_ENC_709 : ((colsp) == V4L2_COLORSPACE_BT2020 ? V4L2_YCBCR_ENC_BT2020 : ((colsp) == V4L2_COLORSPACE_SMPTE240M ? V4L2_YCBCR_ENC_SMPTE240M : V4L2_YCBCR_ENC_601)))
-enum v4l2_quantization {
- V4L2_QUANTIZATION_DEFAULT = 0,
- V4L2_QUANTIZATION_FULL_RANGE = 1,
- V4L2_QUANTIZATION_LIM_RANGE = 2,
-};
-#define V4L2_MAP_QUANTIZATION_DEFAULT(is_rgb,colsp,ycbcr_enc) (((is_rgb) && (colsp) == V4L2_COLORSPACE_BT2020) ? V4L2_QUANTIZATION_LIM_RANGE : (((is_rgb) || (ycbcr_enc) == V4L2_YCBCR_ENC_XV601 || (ycbcr_enc) == V4L2_YCBCR_ENC_XV709 || (colsp) == V4L2_COLORSPACE_JPEG) ? V4L2_QUANTIZATION_FULL_RANGE : V4L2_QUANTIZATION_LIM_RANGE))
-enum v4l2_priority {
- V4L2_PRIORITY_UNSET = 0,
- V4L2_PRIORITY_BACKGROUND = 1,
- V4L2_PRIORITY_INTERACTIVE = 2,
- V4L2_PRIORITY_RECORD = 3,
- V4L2_PRIORITY_DEFAULT = V4L2_PRIORITY_INTERACTIVE,
-};
-struct v4l2_rect {
- __s32 left;
- __s32 top;
- __u32 width;
- __u32 height;
-};
-struct v4l2_fract {
- __u32 numerator;
- __u32 denominator;
-};
-struct v4l2_capability {
- __u8 driver[16];
- __u8 card[32];
- __u8 bus_info[32];
- __u32 version;
- __u32 capabilities;
- __u32 device_caps;
- __u32 reserved[3];
-};
-#define V4L2_CAP_VIDEO_CAPTURE 0x00000001
-#define V4L2_CAP_VIDEO_OUTPUT 0x00000002
-#define V4L2_CAP_VIDEO_OVERLAY 0x00000004
-#define V4L2_CAP_VBI_CAPTURE 0x00000010
-#define V4L2_CAP_VBI_OUTPUT 0x00000020
-#define V4L2_CAP_SLICED_VBI_CAPTURE 0x00000040
-#define V4L2_CAP_SLICED_VBI_OUTPUT 0x00000080
-#define V4L2_CAP_RDS_CAPTURE 0x00000100
-#define V4L2_CAP_VIDEO_OUTPUT_OVERLAY 0x00000200
-#define V4L2_CAP_HW_FREQ_SEEK 0x00000400
-#define V4L2_CAP_RDS_OUTPUT 0x00000800
-#define V4L2_CAP_VIDEO_CAPTURE_MPLANE 0x00001000
-#define V4L2_CAP_VIDEO_OUTPUT_MPLANE 0x00002000
-#define V4L2_CAP_VIDEO_M2M_MPLANE 0x00004000
-#define V4L2_CAP_VIDEO_M2M 0x00008000
-#define V4L2_CAP_TUNER 0x00010000
-#define V4L2_CAP_AUDIO 0x00020000
-#define V4L2_CAP_RADIO 0x00040000
-#define V4L2_CAP_MODULATOR 0x00080000
-#define V4L2_CAP_SDR_CAPTURE 0x00100000
-#define V4L2_CAP_EXT_PIX_FORMAT 0x00200000
-#define V4L2_CAP_SDR_OUTPUT 0x00400000
-#define V4L2_CAP_READWRITE 0x01000000
-#define V4L2_CAP_ASYNCIO 0x02000000
-#define V4L2_CAP_STREAMING 0x04000000
-#define V4L2_CAP_TOUCH 0x10000000
-#define V4L2_CAP_DEVICE_CAPS 0x80000000
-struct v4l2_pix_format {
- __u32 width;
- __u32 height;
- __u32 pixelformat;
- __u32 field;
- __u32 bytesperline;
- __u32 sizeimage;
- __u32 colorspace;
- __u32 priv;
- __u32 flags;
- __u32 ycbcr_enc;
- __u32 quantization;
- __u32 xfer_func;
-};
-#define V4L2_PIX_FMT_RGB332 v4l2_fourcc('R', 'G', 'B', '1')
-#define V4L2_PIX_FMT_RGB444 v4l2_fourcc('R', '4', '4', '4')
-#define V4L2_PIX_FMT_ARGB444 v4l2_fourcc('A', 'R', '1', '2')
-#define V4L2_PIX_FMT_XRGB444 v4l2_fourcc('X', 'R', '1', '2')
-#define V4L2_PIX_FMT_RGB555 v4l2_fourcc('R', 'G', 'B', 'O')
-#define V4L2_PIX_FMT_ARGB555 v4l2_fourcc('A', 'R', '1', '5')
-#define V4L2_PIX_FMT_XRGB555 v4l2_fourcc('X', 'R', '1', '5')
-#define V4L2_PIX_FMT_RGB565 v4l2_fourcc('R', 'G', 'B', 'P')
-#define V4L2_PIX_FMT_RGB555X v4l2_fourcc('R', 'G', 'B', 'Q')
-#define V4L2_PIX_FMT_ARGB555X v4l2_fourcc_be('A', 'R', '1', '5')
-#define V4L2_PIX_FMT_XRGB555X v4l2_fourcc_be('X', 'R', '1', '5')
-#define V4L2_PIX_FMT_RGB565X v4l2_fourcc('R', 'G', 'B', 'R')
-#define V4L2_PIX_FMT_BGR666 v4l2_fourcc('B', 'G', 'R', 'H')
-#define V4L2_PIX_FMT_BGR24 v4l2_fourcc('B', 'G', 'R', '3')
-#define V4L2_PIX_FMT_RGB24 v4l2_fourcc('R', 'G', 'B', '3')
-#define V4L2_PIX_FMT_BGR32 v4l2_fourcc('B', 'G', 'R', '4')
-#define V4L2_PIX_FMT_ABGR32 v4l2_fourcc('A', 'R', '2', '4')
-#define V4L2_PIX_FMT_XBGR32 v4l2_fourcc('X', 'R', '2', '4')
-#define V4L2_PIX_FMT_RGB32 v4l2_fourcc('R', 'G', 'B', '4')
-#define V4L2_PIX_FMT_ARGB32 v4l2_fourcc('B', 'A', '2', '4')
-#define V4L2_PIX_FMT_XRGB32 v4l2_fourcc('B', 'X', '2', '4')
-#define V4L2_PIX_FMT_RGBA8888_UBWC v4l2_fourcc('Q', 'R', 'G', 'B')
-#define V4L2_PIX_FMT_GREY v4l2_fourcc('G', 'R', 'E', 'Y')
-#define V4L2_PIX_FMT_Y4 v4l2_fourcc('Y', '0', '4', ' ')
-#define V4L2_PIX_FMT_Y6 v4l2_fourcc('Y', '0', '6', ' ')
-#define V4L2_PIX_FMT_Y10 v4l2_fourcc('Y', '1', '0', ' ')
-#define V4L2_PIX_FMT_Y12 v4l2_fourcc('Y', '1', '2', ' ')
-#define V4L2_PIX_FMT_Y16 v4l2_fourcc('Y', '1', '6', ' ')
-#define V4L2_PIX_FMT_Y16_BE v4l2_fourcc_be('Y', '1', '6', ' ')
-#define V4L2_PIX_FMT_Y10BPACK v4l2_fourcc('Y', '1', '0', 'B')
-#define V4L2_PIX_FMT_PAL8 v4l2_fourcc('P', 'A', 'L', '8')
-#define V4L2_PIX_FMT_UV8 v4l2_fourcc('U', 'V', '8', ' ')
-#define V4L2_PIX_FMT_YUYV v4l2_fourcc('Y', 'U', 'Y', 'V')
-#define V4L2_PIX_FMT_YYUV v4l2_fourcc('Y', 'Y', 'U', 'V')
-#define V4L2_PIX_FMT_YVYU v4l2_fourcc('Y', 'V', 'Y', 'U')
-#define V4L2_PIX_FMT_UYVY v4l2_fourcc('U', 'Y', 'V', 'Y')
-#define V4L2_PIX_FMT_VYUY v4l2_fourcc('V', 'Y', 'U', 'Y')
-#define V4L2_PIX_FMT_Y41P v4l2_fourcc('Y', '4', '1', 'P')
-#define V4L2_PIX_FMT_YUV444 v4l2_fourcc('Y', '4', '4', '4')
-#define V4L2_PIX_FMT_YUV555 v4l2_fourcc('Y', 'U', 'V', 'O')
-#define V4L2_PIX_FMT_YUV565 v4l2_fourcc('Y', 'U', 'V', 'P')
-#define V4L2_PIX_FMT_YUV32 v4l2_fourcc('Y', 'U', 'V', '4')
-#define V4L2_PIX_FMT_HI240 v4l2_fourcc('H', 'I', '2', '4')
-#define V4L2_PIX_FMT_HM12 v4l2_fourcc('H', 'M', '1', '2')
-#define V4L2_PIX_FMT_M420 v4l2_fourcc('M', '4', '2', '0')
-#define V4L2_PIX_FMT_NV12 v4l2_fourcc('N', 'V', '1', '2')
-#define V4L2_PIX_FMT_NV21 v4l2_fourcc('N', 'V', '2', '1')
-#define V4L2_PIX_FMT_NV16 v4l2_fourcc('N', 'V', '1', '6')
-#define V4L2_PIX_FMT_NV61 v4l2_fourcc('N', 'V', '6', '1')
-#define V4L2_PIX_FMT_NV24 v4l2_fourcc('N', 'V', '2', '4')
-#define V4L2_PIX_FMT_NV42 v4l2_fourcc('N', 'V', '4', '2')
-#define V4L2_PIX_FMT_NV12_UBWC v4l2_fourcc('Q', '1', '2', '8')
-#define V4L2_PIX_FMT_NV12_TP10_UBWC v4l2_fourcc('Q', '1', '2', 'A')
-#define V4L2_PIX_FMT_NV12_P010_UBWC v4l2_fourcc('Q', '1', '2', 'B')
-#define V4L2_PIX_FMT_NV12M v4l2_fourcc('N', 'M', '1', '2')
-#define V4L2_PIX_FMT_NV21M v4l2_fourcc('N', 'M', '2', '1')
-#define V4L2_PIX_FMT_NV16M v4l2_fourcc('N', 'M', '1', '6')
-#define V4L2_PIX_FMT_NV61M v4l2_fourcc('N', 'M', '6', '1')
-#define V4L2_PIX_FMT_NV12MT v4l2_fourcc('T', 'M', '1', '2')
-#define V4L2_PIX_FMT_NV12MT_16X16 v4l2_fourcc('V', 'M', '1', '2')
-#define V4L2_PIX_FMT_YUV410 v4l2_fourcc('Y', 'U', 'V', '9')
-#define V4L2_PIX_FMT_YVU410 v4l2_fourcc('Y', 'V', 'U', '9')
-#define V4L2_PIX_FMT_YUV411P v4l2_fourcc('4', '1', '1', 'P')
-#define V4L2_PIX_FMT_YUV420 v4l2_fourcc('Y', 'U', '1', '2')
-#define V4L2_PIX_FMT_YVU420 v4l2_fourcc('Y', 'V', '1', '2')
-#define V4L2_PIX_FMT_YUV422P v4l2_fourcc('4', '2', '2', 'P')
-#define V4L2_PIX_FMT_YUV420M v4l2_fourcc('Y', 'M', '1', '2')
-#define V4L2_PIX_FMT_YVU420M v4l2_fourcc('Y', 'M', '2', '1')
-#define V4L2_PIX_FMT_YUV422M v4l2_fourcc('Y', 'M', '1', '6')
-#define V4L2_PIX_FMT_YVU422M v4l2_fourcc('Y', 'M', '6', '1')
-#define V4L2_PIX_FMT_YUV444M v4l2_fourcc('Y', 'M', '2', '4')
-#define V4L2_PIX_FMT_YVU444M v4l2_fourcc('Y', 'M', '4', '2')
-#define V4L2_PIX_FMT_SBGGR8 v4l2_fourcc('B', 'A', '8', '1')
-#define V4L2_PIX_FMT_SGBRG8 v4l2_fourcc('G', 'B', 'R', 'G')
-#define V4L2_PIX_FMT_SGRBG8 v4l2_fourcc('G', 'R', 'B', 'G')
-#define V4L2_PIX_FMT_SRGGB8 v4l2_fourcc('R', 'G', 'G', 'B')
-#define V4L2_PIX_FMT_SBGGR10 v4l2_fourcc('B', 'G', '1', '0')
-#define V4L2_PIX_FMT_SGBRG10 v4l2_fourcc('G', 'B', '1', '0')
-#define V4L2_PIX_FMT_SGRBG10 v4l2_fourcc('B', 'A', '1', '0')
-#define V4L2_PIX_FMT_SRGGB10 v4l2_fourcc('R', 'G', '1', '0')
-#define V4L2_PIX_FMT_SBGGR10P v4l2_fourcc('p', 'B', 'A', 'A')
-#define V4L2_PIX_FMT_SGBRG10P v4l2_fourcc('p', 'G', 'A', 'A')
-#define V4L2_PIX_FMT_SGRBG10P v4l2_fourcc('p', 'g', 'A', 'A')
-#define V4L2_PIX_FMT_SRGGB10P v4l2_fourcc('p', 'R', 'A', 'A')
-#define V4L2_PIX_FMT_SBGGR10ALAW8 v4l2_fourcc('a', 'B', 'A', '8')
-#define V4L2_PIX_FMT_SGBRG10ALAW8 v4l2_fourcc('a', 'G', 'A', '8')
-#define V4L2_PIX_FMT_SGRBG10ALAW8 v4l2_fourcc('a', 'g', 'A', '8')
-#define V4L2_PIX_FMT_SRGGB10ALAW8 v4l2_fourcc('a', 'R', 'A', '8')
-#define V4L2_PIX_FMT_SBGGR10DPCM8 v4l2_fourcc('b', 'B', 'A', '8')
-#define V4L2_PIX_FMT_SGBRG10DPCM8 v4l2_fourcc('b', 'G', 'A', '8')
-#define V4L2_PIX_FMT_SGRBG10DPCM8 v4l2_fourcc('B', 'D', '1', '0')
-#define V4L2_PIX_FMT_SRGGB10DPCM8 v4l2_fourcc('b', 'R', 'A', '8')
-#define V4L2_PIX_FMT_SBGGR12 v4l2_fourcc('B', 'G', '1', '2')
-#define V4L2_PIX_FMT_SGBRG12 v4l2_fourcc('G', 'B', '1', '2')
-#define V4L2_PIX_FMT_SGRBG12 v4l2_fourcc('B', 'A', '1', '2')
-#define V4L2_PIX_FMT_SRGGB12 v4l2_fourcc('R', 'G', '1', '2')
-#define V4L2_PIX_FMT_SBGGR16 v4l2_fourcc('B', 'Y', 'R', '2')
-#define V4L2_PIX_FMT_SBGGR10DPCM6 v4l2_fourcc('b', 'B', 'A', '6')
-#define V4L2_PIX_FMT_SGBRG10DPCM6 v4l2_fourcc('b', 'G', 'A', '6')
-#define V4L2_PIX_FMT_SGRBG10DPCM6 v4l2_fourcc('B', 'D', '1', '6')
-#define V4L2_PIX_FMT_SRGGB10DPCM6 v4l2_fourcc('b', 'R', 'A', '6')
-#define V4L2_PIX_FMT_SBGGRPLAIN16 v4l2_fourcc('B', 'G', '1', '6')
-#define V4L2_PIX_FMT_SGBRGPLAIN16 v4l2_fourcc('G', 'B', '1', '6')
-#define V4L2_PIX_FMT_SGRBGPLAIN16 v4l2_fourcc('G', 'R', '1', '6')
-#define V4L2_PIX_FMT_SRGGBPLAIN16 v4l2_fourcc('R', 'G', '1', '6')
-#define V4L2_PIX_FMT_MJPEG v4l2_fourcc('M', 'J', 'P', 'G')
-#define V4L2_PIX_FMT_JPEG v4l2_fourcc('J', 'P', 'E', 'G')
-#define V4L2_PIX_FMT_DV v4l2_fourcc('d', 'v', 's', 'd')
-#define V4L2_PIX_FMT_MPEG v4l2_fourcc('M', 'P', 'E', 'G')
-#define V4L2_PIX_FMT_H264 v4l2_fourcc('H', '2', '6', '4')
-#define V4L2_PIX_FMT_H264_NO_SC v4l2_fourcc('A', 'V', 'C', '1')
-#define V4L2_PIX_FMT_H264_MVC v4l2_fourcc('M', '2', '6', '4')
-#define V4L2_PIX_FMT_H263 v4l2_fourcc('H', '2', '6', '3')
-#define V4L2_PIX_FMT_MPEG1 v4l2_fourcc('M', 'P', 'G', '1')
-#define V4L2_PIX_FMT_MPEG2 v4l2_fourcc('M', 'P', 'G', '2')
-#define V4L2_PIX_FMT_MPEG4 v4l2_fourcc('M', 'P', 'G', '4')
-#define V4L2_PIX_FMT_XVID v4l2_fourcc('X', 'V', 'I', 'D')
-#define V4L2_PIX_FMT_VC1_ANNEX_G v4l2_fourcc('V', 'C', '1', 'G')
-#define V4L2_PIX_FMT_VC1_ANNEX_L v4l2_fourcc('V', 'C', '1', 'L')
-#define V4L2_PIX_FMT_VP8 v4l2_fourcc('V', 'P', '8', '0')
-#define V4L2_PIX_FMT_VP9 v4l2_fourcc('V', 'P', '9', '0')
-#define V4L2_PIX_FMT_DIVX_311 v4l2_fourcc('D', 'I', 'V', '3')
-#define V4L2_PIX_FMT_DIVX v4l2_fourcc('D', 'I', 'V', 'X')
-#define V4L2_PIX_FMT_HEVC v4l2_fourcc('H', 'E', 'V', 'C')
-#define V4L2_PIX_FMT_HEVC_HYBRID v4l2_fourcc('H', 'V', 'C', 'H')
-#define V4L2_PIX_FMT_TME v4l2_fourcc('T', 'M', 'E', '0')
-#define V4L2_PIX_FMT_CPIA1 v4l2_fourcc('C', 'P', 'I', 'A')
-#define V4L2_PIX_FMT_WNVA v4l2_fourcc('W', 'N', 'V', 'A')
-#define V4L2_PIX_FMT_SN9C10X v4l2_fourcc('S', '9', '1', '0')
-#define V4L2_PIX_FMT_SN9C20X_I420 v4l2_fourcc('S', '9', '2', '0')
-#define V4L2_PIX_FMT_PWC1 v4l2_fourcc('P', 'W', 'C', '1')
-#define V4L2_PIX_FMT_PWC2 v4l2_fourcc('P', 'W', 'C', '2')
-#define V4L2_PIX_FMT_ET61X251 v4l2_fourcc('E', '6', '2', '5')
-#define V4L2_PIX_FMT_SPCA501 v4l2_fourcc('S', '5', '0', '1')
-#define V4L2_PIX_FMT_SPCA505 v4l2_fourcc('S', '5', '0', '5')
-#define V4L2_PIX_FMT_SPCA508 v4l2_fourcc('S', '5', '0', '8')
-#define V4L2_PIX_FMT_SPCA561 v4l2_fourcc('S', '5', '6', '1')
-#define V4L2_PIX_FMT_PAC207 v4l2_fourcc('P', '2', '0', '7')
-#define V4L2_PIX_FMT_MR97310A v4l2_fourcc('M', '3', '1', '0')
-#define V4L2_PIX_FMT_JL2005BCD v4l2_fourcc('J', 'L', '2', '0')
-#define V4L2_PIX_FMT_SN9C2028 v4l2_fourcc('S', 'O', 'N', 'X')
-#define V4L2_PIX_FMT_SQ905C v4l2_fourcc('9', '0', '5', 'C')
-#define V4L2_PIX_FMT_PJPG v4l2_fourcc('P', 'J', 'P', 'G')
-#define V4L2_PIX_FMT_OV511 v4l2_fourcc('O', '5', '1', '1')
-#define V4L2_PIX_FMT_OV518 v4l2_fourcc('O', '5', '1', '8')
-#define V4L2_PIX_FMT_STV0680 v4l2_fourcc('S', '6', '8', '0')
-#define V4L2_PIX_FMT_TM6000 v4l2_fourcc('T', 'M', '6', '0')
-#define V4L2_PIX_FMT_CIT_YYVYUY v4l2_fourcc('C', 'I', 'T', 'V')
-#define V4L2_PIX_FMT_KONICA420 v4l2_fourcc('K', 'O', 'N', 'I')
-#define V4L2_PIX_FMT_JPGL v4l2_fourcc('J', 'P', 'G', 'L')
-#define V4L2_PIX_FMT_SE401 v4l2_fourcc('S', '4', '0', '1')
-#define V4L2_PIX_FMT_S5C_UYVY_JPG v4l2_fourcc('S', '5', 'C', 'I')
-#define V4L2_PIX_FMT_Y8I v4l2_fourcc('Y', '8', 'I', ' ')
-#define V4L2_PIX_FMT_Y12I v4l2_fourcc('Y', '1', '2', 'I')
-#define V4L2_PIX_FMT_Z16 v4l2_fourcc('Z', '1', '6', ' ')
-#define V4L2_PIX_FMT_SDE_ABGR_8888 v4l2_fourcc('R', 'A', '2', '4')
-#define V4L2_PIX_FMT_SDE_RGBA_8888 v4l2_fourcc('A', 'B', '2', '4')
-#define V4L2_PIX_FMT_SDE_RGBX_8888 v4l2_fourcc('X', 'B', '2', '4')
-#define V4L2_PIX_FMT_SDE_XBGR_8888 v4l2_fourcc('R', 'X', '2', '4')
-#define V4L2_PIX_FMT_SDE_RGBA_5551 v4l2_fourcc('R', 'A', '1', '5')
-#define V4L2_PIX_FMT_SDE_ABGR_1555 v4l2_fourcc('A', 'B', '1', '5')
-#define V4L2_PIX_FMT_SDE_BGRA_5551 v4l2_fourcc('B', 'A', '1', '5')
-#define V4L2_PIX_FMT_SDE_BGRX_5551 v4l2_fourcc('B', 'X', '1', '5')
-#define V4L2_PIX_FMT_SDE_RGBX_5551 v4l2_fourcc('R', 'X', '1', '5')
-#define V4L2_PIX_FMT_SDE_XBGR_1555 v4l2_fourcc('X', 'B', '1', '5')
-#define V4L2_PIX_FMT_SDE_RGBA_4444 v4l2_fourcc('R', 'A', '1', '2')
-#define V4L2_PIX_FMT_SDE_BGRA_4444 v4l2_fourcc('b', 'A', '1', '2')
-#define V4L2_PIX_FMT_SDE_ABGR_4444 v4l2_fourcc('A', 'B', '1', '2')
-#define V4L2_PIX_FMT_SDE_RGBX_4444 v4l2_fourcc('R', 'X', '1', '2')
-#define V4L2_PIX_FMT_SDE_BGRX_4444 v4l2_fourcc('B', 'X', '1', '2')
-#define V4L2_PIX_FMT_SDE_XBGR_4444 v4l2_fourcc('X', 'B', '1', '2')
-#define V4L2_PIX_FMT_SDE_BGR_565 v4l2_fourcc('B', 'G', '1', '6')
-#define V4L2_PIX_FMT_SDE_Y_CR_CB_GH2V2 v4l2_fourcc('Y', 'U', '4', '2')
-#define V4L2_PIX_FMT_SDE_Y_CBCR_H1V2 v4l2_fourcc('N', 'H', '1', '6')
-#define V4L2_PIX_FMT_SDE_Y_CRCB_H1V2 v4l2_fourcc('N', 'H', '6', '1')
-#define V4L2_PIX_FMT_SDE_Y_CBCR_H2V2_VENUS v4l2_fourcc('Q', 'N', 'V', '2')
-#define V4L2_PIX_FMT_SDE_Y_CRCB_H2V2_VENUS v4l2_fourcc('Q', 'N', 'V', '1')
-#define V4L2_PIX_FMT_SDE_RGBX_8888_UBWC v4l2_fourcc('Q', 'X', 'B', '4')
-#define V4L2_PIX_FMT_SDE_RGB_565_UBWC v4l2_fourcc('Q', 'R', 'G', '6')
-#define V4L2_PIX_FMT_SDE_RGBA_1010102 v4l2_fourcc('A', 'B', '3', '0')
-#define V4L2_PIX_FMT_SDE_RGBX_1010102 v4l2_fourcc('X', 'B', '3', '0')
-#define V4L2_PIX_FMT_SDE_ARGB_2101010 v4l2_fourcc('A', 'R', '3', '0')
-#define V4L2_PIX_FMT_SDE_XRGB_2101010 v4l2_fourcc('X', 'R', '3', '0')
-#define V4L2_PIX_FMT_SDE_BGRA_1010102 v4l2_fourcc('B', 'A', '3', '0')
-#define V4L2_PIX_FMT_SDE_BGRX_1010102 v4l2_fourcc('B', 'X', '3', '0')
-#define V4L2_PIX_FMT_SDE_ABGR_2101010 v4l2_fourcc('R', 'A', '3', '0')
-#define V4L2_PIX_FMT_SDE_XBGR_2101010 v4l2_fourcc('R', 'X', '3', '0')
-#define V4L2_PIX_FMT_SDE_RGBA_1010102_UBWC v4l2_fourcc('Q', 'R', 'B', 'A')
-#define V4L2_PIX_FMT_SDE_RGBX_1010102_UBWC v4l2_fourcc('Q', 'X', 'B', 'A')
-#define V4L2_PIX_FMT_SDE_Y_CBCR_H2V2_TP10 v4l2_fourcc('T', 'P', '1', '0')
-#define V4L2_PIX_FMT_SDE_Y_CBCR_H2V2_P010 v4l2_fourcc('P', '0', '1', '0')
-#define V4L2_PIX_FMT_SDE_Y_CBCR_H2V2_P010_VENUS v4l2_fourcc('Q', 'P', '1', '0')
-#define V4L2_SDR_FMT_CU8 v4l2_fourcc('C', 'U', '0', '8')
-#define V4L2_SDR_FMT_CU16LE v4l2_fourcc('C', 'U', '1', '6')
-#define V4L2_SDR_FMT_CS8 v4l2_fourcc('C', 'S', '0', '8')
-#define V4L2_SDR_FMT_CS14LE v4l2_fourcc('C', 'S', '1', '4')
-#define V4L2_SDR_FMT_RU12LE v4l2_fourcc('R', 'U', '1', '2')
-#define V4L2_TCH_FMT_DELTA_TD16 v4l2_fourcc('T', 'D', '1', '6')
-#define V4L2_TCH_FMT_DELTA_TD08 v4l2_fourcc('T', 'D', '0', '8')
-#define V4L2_TCH_FMT_TU16 v4l2_fourcc('T', 'U', '1', '6')
-#define V4L2_TCH_FMT_TU08 v4l2_fourcc('T', 'U', '0', '8')
-#define V4L2_PIX_FMT_PRIV_MAGIC 0xfeedcafe
-#define V4L2_PIX_FMT_FLAG_PREMUL_ALPHA 0x00000001
-struct v4l2_fmtdesc {
- __u32 index;
- __u32 type;
- __u32 flags;
- __u8 description[32];
- __u32 pixelformat;
- __u32 reserved[4];
-};
-#define V4L2_FMT_FLAG_COMPRESSED 0x0001
-#define V4L2_FMT_FLAG_EMULATED 0x0002
-enum v4l2_frmsizetypes {
- V4L2_FRMSIZE_TYPE_DISCRETE = 1,
- V4L2_FRMSIZE_TYPE_CONTINUOUS = 2,
- V4L2_FRMSIZE_TYPE_STEPWISE = 3,
-};
-struct v4l2_frmsize_discrete {
- __u32 width;
- __u32 height;
-};
-struct v4l2_frmsize_stepwise {
- __u32 min_width;
- __u32 max_width;
- __u32 step_width;
- __u32 min_height;
- __u32 max_height;
- __u32 step_height;
-};
-struct v4l2_frmsizeenum {
- __u32 index;
- __u32 pixel_format;
- __u32 type;
- union {
- struct v4l2_frmsize_discrete discrete;
- struct v4l2_frmsize_stepwise stepwise;
- };
- __u32 reserved[2];
-};
-enum v4l2_frmivaltypes {
- V4L2_FRMIVAL_TYPE_DISCRETE = 1,
- V4L2_FRMIVAL_TYPE_CONTINUOUS = 2,
- V4L2_FRMIVAL_TYPE_STEPWISE = 3,
-};
-struct v4l2_frmival_stepwise {
- struct v4l2_fract min;
- struct v4l2_fract max;
- struct v4l2_fract step;
-};
-struct v4l2_frmivalenum {
- __u32 index;
- __u32 pixel_format;
- __u32 width;
- __u32 height;
- __u32 type;
- union {
- struct v4l2_fract discrete;
- struct v4l2_frmival_stepwise stepwise;
- };
- __u32 reserved[2];
-};
-struct v4l2_timecode {
- __u32 type;
- __u32 flags;
- __u8 frames;
- __u8 seconds;
- __u8 minutes;
- __u8 hours;
- __u8 userbits[4];
-};
-#define V4L2_TC_TYPE_24FPS 1
-#define V4L2_TC_TYPE_25FPS 2
-#define V4L2_TC_TYPE_30FPS 3
-#define V4L2_TC_TYPE_50FPS 4
-#define V4L2_TC_TYPE_60FPS 5
-#define V4L2_TC_FLAG_DROPFRAME 0x0001
-#define V4L2_TC_FLAG_COLORFRAME 0x0002
-#define V4L2_TC_USERBITS_field 0x000C
-#define V4L2_TC_USERBITS_USERDEFINED 0x0000
-#define V4L2_TC_USERBITS_8BITCHARS 0x0008
-struct v4l2_jpegcompression {
- int quality;
- int APPn;
- int APP_len;
- char APP_data[60];
- int COM_len;
- char COM_data[60];
- __u32 jpeg_markers;
-#define V4L2_JPEG_MARKER_DHT (1 << 3)
-#define V4L2_JPEG_MARKER_DQT (1 << 4)
-#define V4L2_JPEG_MARKER_DRI (1 << 5)
-#define V4L2_JPEG_MARKER_COM (1 << 6)
-#define V4L2_JPEG_MARKER_APP (1 << 7)
-};
-struct v4l2_requestbuffers {
- __u32 count;
- __u32 type;
- __u32 memory;
- __u32 reserved[2];
-};
-struct v4l2_plane {
- __u32 bytesused;
- __u32 length;
- union {
- __u32 mem_offset;
- unsigned long userptr;
- __s32 fd;
- } m;
- __u32 data_offset;
- __u32 reserved[11];
-};
-struct v4l2_buffer {
- __u32 index;
- __u32 type;
- __u32 bytesused;
- __u32 flags;
- __u32 field;
- struct timeval timestamp;
- struct v4l2_timecode timecode;
- __u32 sequence;
- __u32 memory;
- union {
- __u32 offset;
- unsigned long userptr;
- struct v4l2_plane * planes;
- __s32 fd;
- } m;
- __u32 length;
- __u32 reserved2;
- __u32 reserved;
-};
-#define V4L2_BUF_FLAG_MAPPED 0x00000001
-#define V4L2_BUF_FLAG_QUEUED 0x00000002
-#define V4L2_BUF_FLAG_DONE 0x00000004
-#define V4L2_BUF_FLAG_KEYFRAME 0x00000008
-#define V4L2_BUF_FLAG_PFRAME 0x00000010
-#define V4L2_BUF_FLAG_BFRAME 0x00000020
-#define V4L2_BUF_FLAG_ERROR 0x00000040
-#define V4L2_BUF_FLAG_TIMECODE 0x00000100
-#define V4L2_BUF_FLAG_PREPARED 0x00000400
-#define V4L2_BUF_FLAG_NO_CACHE_INVALIDATE 0x00000800
-#define V4L2_BUF_FLAG_NO_CACHE_CLEAN 0x00001000
-#define V4L2_BUF_FLAG_TIMESTAMP_MASK 0x0000e000
-#define V4L2_BUF_FLAG_TIMESTAMP_UNKNOWN 0x00000000
-#define V4L2_BUF_FLAG_TIMESTAMP_MONOTONIC 0x00002000
-#define V4L2_BUF_FLAG_TIMESTAMP_COPY 0x00004000
-#define V4L2_BUF_FLAG_TSTAMP_SRC_MASK 0x00070000
-#define V4L2_BUF_FLAG_TSTAMP_SRC_EOF 0x00000000
-#define V4L2_BUF_FLAG_TSTAMP_SRC_SOE 0x00010000
-#define V4L2_BUF_FLAG_LAST 0x00100000
-#define V4L2_QCOM_BUF_END_OF_SUBFRAME 0x00000080
-#define V4L2_QCOM_BUF_FLAG_CODECCONFIG 0x00020000
-#define V4L2_QCOM_BUF_FLAG_EOSEQ 0x00040000
-#define V4L2_QCOM_BUF_TIMESTAMP_INVALID 0x00080000
-#define V4L2_MSM_BUF_FLAG_MBAFF 0x00000200
-#define V4L2_QCOM_BUF_FLAG_DECODEONLY 0x00200000
-#define V4L2_QCOM_BUF_DATA_CORRUPT 0x00400000
-#define V4L2_QCOM_BUF_DROP_FRAME 0x00800000
-#define V4L2_QCOM_BUF_INPUT_UNSUPPORTED 0x01000000
-#define V4L2_QCOM_BUF_FLAG_EOS 0x02000000
-#define V4L2_QCOM_BUF_FLAG_READONLY 0x04000000
-#define V4L2_MSM_VIDC_BUF_START_CODE_NOT_FOUND 0x08000000
-#define V4L2_MSM_BUF_FLAG_YUV_601_709_CLAMP 0x10000000
-#define V4L2_QCOM_BUF_FLAG_PERF_MODE 0x20000000
-#define V4L2_MSM_BUF_FLAG_DEFER 0x40000000
-#define V4L2_QCOM_BUF_FLAG_IDRFRAME 0x80000000
-struct v4l2_exportbuffer {
- __u32 type;
- __u32 index;
- __u32 plane;
- __u32 flags;
- __s32 fd;
- __u32 reserved[11];
-};
-struct v4l2_framebuffer {
- __u32 capability;
- __u32 flags;
- void * base;
- struct {
- __u32 width;
- __u32 height;
- __u32 pixelformat;
- __u32 field;
- __u32 bytesperline;
- __u32 sizeimage;
- __u32 colorspace;
- __u32 priv;
- } fmt;
-};
-#define V4L2_FBUF_CAP_EXTERNOVERLAY 0x0001
-#define V4L2_FBUF_CAP_CHROMAKEY 0x0002
-#define V4L2_FBUF_CAP_LIST_CLIPPING 0x0004
-#define V4L2_FBUF_CAP_BITMAP_CLIPPING 0x0008
-#define V4L2_FBUF_CAP_LOCAL_ALPHA 0x0010
-#define V4L2_FBUF_CAP_GLOBAL_ALPHA 0x0020
-#define V4L2_FBUF_CAP_LOCAL_INV_ALPHA 0x0040
-#define V4L2_FBUF_CAP_SRC_CHROMAKEY 0x0080
-#define V4L2_FBUF_FLAG_PRIMARY 0x0001
-#define V4L2_FBUF_FLAG_OVERLAY 0x0002
-#define V4L2_FBUF_FLAG_CHROMAKEY 0x0004
-#define V4L2_FBUF_FLAG_LOCAL_ALPHA 0x0008
-#define V4L2_FBUF_FLAG_GLOBAL_ALPHA 0x0010
-#define V4L2_FBUF_FLAG_LOCAL_INV_ALPHA 0x0020
-#define V4L2_FBUF_FLAG_SRC_CHROMAKEY 0x0040
-struct v4l2_clip {
- struct v4l2_rect c;
- struct v4l2_clip * next;
-};
-struct v4l2_window {
- struct v4l2_rect w;
- __u32 field;
- __u32 chromakey;
- struct v4l2_clip * clips;
- __u32 clipcount;
- void * bitmap;
- __u8 global_alpha;
-};
-struct v4l2_captureparm {
- __u32 capability;
- __u32 capturemode;
- struct v4l2_fract timeperframe;
- __u32 extendedmode;
- __u32 readbuffers;
- __u32 reserved[4];
-};
-#define V4L2_MODE_HIGHQUALITY 0x0001
-#define V4L2_CAP_TIMEPERFRAME 0x1000
-struct v4l2_outputparm {
- __u32 capability;
- __u32 outputmode;
- struct v4l2_fract timeperframe;
- __u32 extendedmode;
- __u32 writebuffers;
- __u32 reserved[4];
-};
-struct v4l2_cropcap {
- __u32 type;
- struct v4l2_rect bounds;
- struct v4l2_rect defrect;
- struct v4l2_fract pixelaspect;
-};
-struct v4l2_crop {
- __u32 type;
- struct v4l2_rect c;
-};
-struct v4l2_selection {
- __u32 type;
- __u32 target;
- __u32 flags;
- struct v4l2_rect r;
- __u32 reserved[9];
-};
-typedef __u64 v4l2_std_id;
-#define V4L2_STD_PAL_B ((v4l2_std_id) 0x00000001)
-#define V4L2_STD_PAL_B1 ((v4l2_std_id) 0x00000002)
-#define V4L2_STD_PAL_G ((v4l2_std_id) 0x00000004)
-#define V4L2_STD_PAL_H ((v4l2_std_id) 0x00000008)
-#define V4L2_STD_PAL_I ((v4l2_std_id) 0x00000010)
-#define V4L2_STD_PAL_D ((v4l2_std_id) 0x00000020)
-#define V4L2_STD_PAL_D1 ((v4l2_std_id) 0x00000040)
-#define V4L2_STD_PAL_K ((v4l2_std_id) 0x00000080)
-#define V4L2_STD_PAL_M ((v4l2_std_id) 0x00000100)
-#define V4L2_STD_PAL_N ((v4l2_std_id) 0x00000200)
-#define V4L2_STD_PAL_Nc ((v4l2_std_id) 0x00000400)
-#define V4L2_STD_PAL_60 ((v4l2_std_id) 0x00000800)
-#define V4L2_STD_NTSC_M ((v4l2_std_id) 0x00001000)
-#define V4L2_STD_NTSC_M_JP ((v4l2_std_id) 0x00002000)
-#define V4L2_STD_NTSC_443 ((v4l2_std_id) 0x00004000)
-#define V4L2_STD_NTSC_M_KR ((v4l2_std_id) 0x00008000)
-#define V4L2_STD_SECAM_B ((v4l2_std_id) 0x00010000)
-#define V4L2_STD_SECAM_D ((v4l2_std_id) 0x00020000)
-#define V4L2_STD_SECAM_G ((v4l2_std_id) 0x00040000)
-#define V4L2_STD_SECAM_H ((v4l2_std_id) 0x00080000)
-#define V4L2_STD_SECAM_K ((v4l2_std_id) 0x00100000)
-#define V4L2_STD_SECAM_K1 ((v4l2_std_id) 0x00200000)
-#define V4L2_STD_SECAM_L ((v4l2_std_id) 0x00400000)
-#define V4L2_STD_SECAM_LC ((v4l2_std_id) 0x00800000)
-#define V4L2_STD_ATSC_8_VSB ((v4l2_std_id) 0x01000000)
-#define V4L2_STD_ATSC_16_VSB ((v4l2_std_id) 0x02000000)
-#define V4L2_STD_NTSC (V4L2_STD_NTSC_M | V4L2_STD_NTSC_M_JP | V4L2_STD_NTSC_M_KR)
-#define V4L2_STD_SECAM_DK (V4L2_STD_SECAM_D | V4L2_STD_SECAM_K | V4L2_STD_SECAM_K1)
-#define V4L2_STD_SECAM (V4L2_STD_SECAM_B | V4L2_STD_SECAM_G | V4L2_STD_SECAM_H | V4L2_STD_SECAM_DK | V4L2_STD_SECAM_L | V4L2_STD_SECAM_LC)
-#define V4L2_STD_PAL_BG (V4L2_STD_PAL_B | V4L2_STD_PAL_B1 | V4L2_STD_PAL_G)
-#define V4L2_STD_PAL_DK (V4L2_STD_PAL_D | V4L2_STD_PAL_D1 | V4L2_STD_PAL_K)
-#define V4L2_STD_PAL (V4L2_STD_PAL_BG | V4L2_STD_PAL_DK | V4L2_STD_PAL_H | V4L2_STD_PAL_I)
-#define V4L2_STD_B (V4L2_STD_PAL_B | V4L2_STD_PAL_B1 | V4L2_STD_SECAM_B)
-#define V4L2_STD_G (V4L2_STD_PAL_G | V4L2_STD_SECAM_G)
-#define V4L2_STD_H (V4L2_STD_PAL_H | V4L2_STD_SECAM_H)
-#define V4L2_STD_L (V4L2_STD_SECAM_L | V4L2_STD_SECAM_LC)
-#define V4L2_STD_GH (V4L2_STD_G | V4L2_STD_H)
-#define V4L2_STD_DK (V4L2_STD_PAL_DK | V4L2_STD_SECAM_DK)
-#define V4L2_STD_BG (V4L2_STD_B | V4L2_STD_G)
-#define V4L2_STD_MN (V4L2_STD_PAL_M | V4L2_STD_PAL_N | V4L2_STD_PAL_Nc | V4L2_STD_NTSC)
-#define V4L2_STD_MTS (V4L2_STD_NTSC_M | V4L2_STD_PAL_M | V4L2_STD_PAL_N | V4L2_STD_PAL_Nc)
-#define V4L2_STD_525_60 (V4L2_STD_PAL_M | V4L2_STD_PAL_60 | V4L2_STD_NTSC | V4L2_STD_NTSC_443)
-#define V4L2_STD_625_50 (V4L2_STD_PAL | V4L2_STD_PAL_N | V4L2_STD_PAL_Nc | V4L2_STD_SECAM)
-#define V4L2_STD_ATSC (V4L2_STD_ATSC_8_VSB | V4L2_STD_ATSC_16_VSB)
-#define V4L2_STD_UNKNOWN 0
-#define V4L2_STD_ALL (V4L2_STD_525_60 | V4L2_STD_625_50)
-struct v4l2_standard {
- __u32 index;
- v4l2_std_id id;
- __u8 name[24];
- struct v4l2_fract frameperiod;
- __u32 framelines;
- __u32 reserved[4];
-};
-struct v4l2_bt_timings {
- __u32 width;
- __u32 height;
- __u32 interlaced;
- __u32 polarities;
- __u64 pixelclock;
- __u32 hfrontporch;
- __u32 hsync;
- __u32 hbackporch;
- __u32 vfrontporch;
- __u32 vsync;
- __u32 vbackporch;
- __u32 il_vfrontporch;
- __u32 il_vsync;
- __u32 il_vbackporch;
- __u32 standards;
- __u32 flags;
- __u32 reserved[14];
-} __attribute__((packed));
-#define V4L2_DV_PROGRESSIVE 0
-#define V4L2_DV_INTERLACED 1
-#define V4L2_DV_VSYNC_POS_POL 0x00000001
-#define V4L2_DV_HSYNC_POS_POL 0x00000002
-#define V4L2_DV_BT_STD_CEA861 (1 << 0)
-#define V4L2_DV_BT_STD_DMT (1 << 1)
-#define V4L2_DV_BT_STD_CVT (1 << 2)
-#define V4L2_DV_BT_STD_GTF (1 << 3)
-#define V4L2_DV_BT_STD_SDI (1 << 4)
-#define V4L2_DV_FL_REDUCED_BLANKING (1 << 0)
-#define V4L2_DV_FL_CAN_REDUCE_FPS (1 << 1)
-#define V4L2_DV_FL_REDUCED_FPS (1 << 2)
-#define V4L2_DV_FL_HALF_LINE (1 << 3)
-#define V4L2_DV_FL_IS_CE_VIDEO (1 << 4)
-#define V4L2_DV_FL_FIRST_FIELD_EXTRA_LINE (1 << 5)
-#define V4L2_DV_BT_BLANKING_WIDTH(bt) ((bt)->hfrontporch + (bt)->hsync + (bt)->hbackporch)
-#define V4L2_DV_BT_FRAME_WIDTH(bt) ((bt)->width + V4L2_DV_BT_BLANKING_WIDTH(bt))
-#define V4L2_DV_BT_BLANKING_HEIGHT(bt) ((bt)->vfrontporch + (bt)->vsync + (bt)->vbackporch + (bt)->il_vfrontporch + (bt)->il_vsync + (bt)->il_vbackporch)
-#define V4L2_DV_BT_FRAME_HEIGHT(bt) ((bt)->height + V4L2_DV_BT_BLANKING_HEIGHT(bt))
-struct v4l2_dv_timings {
- __u32 type;
- union {
- struct v4l2_bt_timings bt;
- __u32 reserved[32];
- };
-} __attribute__((packed));
-#define V4L2_DV_BT_656_1120 0
-struct v4l2_enum_dv_timings {
- __u32 index;
- __u32 pad;
- __u32 reserved[2];
- struct v4l2_dv_timings timings;
-};
-struct v4l2_bt_timings_cap {
- __u32 min_width;
- __u32 max_width;
- __u32 min_height;
- __u32 max_height;
- __u64 min_pixelclock;
- __u64 max_pixelclock;
- __u32 standards;
- __u32 capabilities;
- __u32 reserved[16];
-} __attribute__((packed));
-#define V4L2_DV_BT_CAP_INTERLACED (1 << 0)
-#define V4L2_DV_BT_CAP_PROGRESSIVE (1 << 1)
-#define V4L2_DV_BT_CAP_REDUCED_BLANKING (1 << 2)
-#define V4L2_DV_BT_CAP_CUSTOM (1 << 3)
-struct v4l2_dv_timings_cap {
- __u32 type;
- __u32 pad;
- __u32 reserved[2];
- union {
- struct v4l2_bt_timings_cap bt;
- __u32 raw_data[32];
- };
-};
-struct v4l2_input {
- __u32 index;
- __u8 name[32];
- __u32 type;
- __u32 audioset;
- __u32 tuner;
- v4l2_std_id std;
- __u32 status;
- __u32 capabilities;
- __u32 reserved[3];
-};
-#define V4L2_INPUT_TYPE_TUNER 1
-#define V4L2_INPUT_TYPE_CAMERA 2
-#define V4L2_INPUT_TYPE_TOUCH 3
-#define V4L2_IN_ST_NO_POWER 0x00000001
-#define V4L2_IN_ST_NO_SIGNAL 0x00000002
-#define V4L2_IN_ST_NO_COLOR 0x00000004
-#define V4L2_IN_ST_HFLIP 0x00000010
-#define V4L2_IN_ST_VFLIP 0x00000020
-#define V4L2_IN_ST_NO_H_LOCK 0x00000100
-#define V4L2_IN_ST_COLOR_KILL 0x00000200
-#define V4L2_IN_ST_NO_V_LOCK 0x00000400
-#define V4L2_IN_ST_NO_STD_LOCK 0x00000800
-#define V4L2_IN_ST_NO_SYNC 0x00010000
-#define V4L2_IN_ST_NO_EQU 0x00020000
-#define V4L2_IN_ST_NO_CARRIER 0x00040000
-#define V4L2_IN_ST_MACROVISION 0x01000000
-#define V4L2_IN_ST_NO_ACCESS 0x02000000
-#define V4L2_IN_ST_VTR 0x04000000
-#define V4L2_IN_CAP_DV_TIMINGS 0x00000002
-#define V4L2_IN_CAP_CUSTOM_TIMINGS V4L2_IN_CAP_DV_TIMINGS
-#define V4L2_IN_CAP_STD 0x00000004
-#define V4L2_IN_CAP_NATIVE_SIZE 0x00000008
-struct v4l2_output {
- __u32 index;
- __u8 name[32];
- __u32 type;
- __u32 audioset;
- __u32 modulator;
- v4l2_std_id std;
- __u32 capabilities;
- __u32 reserved[3];
-};
-#define V4L2_OUTPUT_TYPE_MODULATOR 1
-#define V4L2_OUTPUT_TYPE_ANALOG 2
-#define V4L2_OUTPUT_TYPE_ANALOGVGAOVERLAY 3
-#define V4L2_OUT_CAP_DV_TIMINGS 0x00000002
-#define V4L2_OUT_CAP_CUSTOM_TIMINGS V4L2_OUT_CAP_DV_TIMINGS
-#define V4L2_OUT_CAP_STD 0x00000004
-#define V4L2_OUT_CAP_NATIVE_SIZE 0x00000008
-struct v4l2_control {
- __u32 id;
- __s32 value;
-};
-struct v4l2_ext_control {
- __u32 id;
- __u32 size;
- __u32 reserved2[1];
- union {
- __s32 value;
- __s64 value64;
- char * string;
- __u8 * p_u8;
- __u16 * p_u16;
- __u32 * p_u32;
- void * ptr;
- };
-} __attribute__((packed));
-struct v4l2_ext_controls {
- union {
- __u32 ctrl_class;
- __u32 which;
- };
- __u32 count;
- __u32 error_idx;
- __u32 reserved[2];
- struct v4l2_ext_control * controls;
-};
-#define V4L2_CTRL_ID_MASK (0x0fffffff)
-#define V4L2_CTRL_ID2CLASS(id) ((id) & 0x0fff0000UL)
-#define V4L2_CTRL_ID2WHICH(id) ((id) & 0x0fff0000UL)
-#define V4L2_CTRL_DRIVER_PRIV(id) (((id) & 0xffff) >= 0x1000)
-#define V4L2_CTRL_MAX_DIMS (4)
-#define V4L2_CTRL_WHICH_CUR_VAL 0
-#define V4L2_CTRL_WHICH_DEF_VAL 0x0f000000
-enum v4l2_ctrl_type {
- V4L2_CTRL_TYPE_INTEGER = 1,
- V4L2_CTRL_TYPE_BOOLEAN = 2,
- V4L2_CTRL_TYPE_MENU = 3,
- V4L2_CTRL_TYPE_BUTTON = 4,
- V4L2_CTRL_TYPE_INTEGER64 = 5,
- V4L2_CTRL_TYPE_CTRL_CLASS = 6,
- V4L2_CTRL_TYPE_STRING = 7,
- V4L2_CTRL_TYPE_BITMASK = 8,
- V4L2_CTRL_TYPE_INTEGER_MENU = 9,
- V4L2_CTRL_COMPOUND_TYPES = 0x0100,
- V4L2_CTRL_TYPE_U8 = 0x0100,
- V4L2_CTRL_TYPE_U16 = 0x0101,
- V4L2_CTRL_TYPE_U32 = 0x0102,
-};
-struct v4l2_queryctrl {
- __u32 id;
- __u32 type;
- __u8 name[32];
- __s32 minimum;
- __s32 maximum;
- __s32 step;
- __s32 default_value;
- __u32 flags;
- __u32 reserved[2];
-};
-struct v4l2_query_ext_ctrl {
- __u32 id;
- __u32 type;
- char name[32];
- __s64 minimum;
- __s64 maximum;
- __u64 step;
- __s64 default_value;
- __u32 flags;
- __u32 elem_size;
- __u32 elems;
- __u32 nr_of_dims;
- __u32 dims[V4L2_CTRL_MAX_DIMS];
- __u32 reserved[32];
-};
-struct v4l2_querymenu {
- __u32 id;
- __u32 index;
- union {
- __u8 name[32];
- __s64 value;
- };
- __u32 reserved;
-} __attribute__((packed));
-#define V4L2_CTRL_FLAG_DISABLED 0x0001
-#define V4L2_CTRL_FLAG_GRABBED 0x0002
-#define V4L2_CTRL_FLAG_READ_ONLY 0x0004
-#define V4L2_CTRL_FLAG_UPDATE 0x0008
-#define V4L2_CTRL_FLAG_INACTIVE 0x0010
-#define V4L2_CTRL_FLAG_SLIDER 0x0020
-#define V4L2_CTRL_FLAG_WRITE_ONLY 0x0040
-#define V4L2_CTRL_FLAG_VOLATILE 0x0080
-#define V4L2_CTRL_FLAG_HAS_PAYLOAD 0x0100
-#define V4L2_CTRL_FLAG_EXECUTE_ON_WRITE 0x0200
-#define V4L2_CTRL_FLAG_NEXT_CTRL 0x80000000
-#define V4L2_CTRL_FLAG_NEXT_COMPOUND 0x40000000
-#define V4L2_CID_MAX_CTRLS 1024
-#define V4L2_CID_PRIVATE_BASE 0x08000000
-struct v4l2_tuner {
- __u32 index;
- __u8 name[32];
- __u32 type;
- __u32 capability;
- __u32 rangelow;
- __u32 rangehigh;
- __u32 rxsubchans;
- __u32 audmode;
- __s32 signal;
- __s32 afc;
- __u32 reserved[4];
-};
-struct v4l2_modulator {
- __u32 index;
- __u8 name[32];
- __u32 capability;
- __u32 rangelow;
- __u32 rangehigh;
- __u32 txsubchans;
- __u32 type;
- __u32 reserved[3];
-};
-#define V4L2_TUNER_CAP_LOW 0x0001
-#define V4L2_TUNER_CAP_NORM 0x0002
-#define V4L2_TUNER_CAP_HWSEEK_BOUNDED 0x0004
-#define V4L2_TUNER_CAP_HWSEEK_WRAP 0x0008
-#define V4L2_TUNER_CAP_STEREO 0x0010
-#define V4L2_TUNER_CAP_LANG2 0x0020
-#define V4L2_TUNER_CAP_SAP 0x0020
-#define V4L2_TUNER_CAP_LANG1 0x0040
-#define V4L2_TUNER_CAP_RDS 0x0080
-#define V4L2_TUNER_CAP_RDS_BLOCK_IO 0x0100
-#define V4L2_TUNER_CAP_RDS_CONTROLS 0x0200
-#define V4L2_TUNER_CAP_FREQ_BANDS 0x0400
-#define V4L2_TUNER_CAP_HWSEEK_PROG_LIM 0x0800
-#define V4L2_TUNER_CAP_1HZ 0x1000
-#define V4L2_TUNER_SUB_MONO 0x0001
-#define V4L2_TUNER_SUB_STEREO 0x0002
-#define V4L2_TUNER_SUB_LANG2 0x0004
-#define V4L2_TUNER_SUB_SAP 0x0004
-#define V4L2_TUNER_SUB_LANG1 0x0008
-#define V4L2_TUNER_SUB_RDS 0x0010
-#define V4L2_TUNER_MODE_MONO 0x0000
-#define V4L2_TUNER_MODE_STEREO 0x0001
-#define V4L2_TUNER_MODE_LANG2 0x0002
-#define V4L2_TUNER_MODE_SAP 0x0002
-#define V4L2_TUNER_MODE_LANG1 0x0003
-#define V4L2_TUNER_MODE_LANG1_LANG2 0x0004
-struct v4l2_frequency {
- __u32 tuner;
- __u32 type;
- __u32 frequency;
- __u32 reserved[8];
-};
-#define V4L2_BAND_MODULATION_VSB (1 << 1)
-#define V4L2_BAND_MODULATION_FM (1 << 2)
-#define V4L2_BAND_MODULATION_AM (1 << 3)
-struct v4l2_frequency_band {
- __u32 tuner;
- __u32 type;
- __u32 index;
- __u32 capability;
- __u32 rangelow;
- __u32 rangehigh;
- __u32 modulation;
- __u32 reserved[9];
-};
-struct v4l2_hw_freq_seek {
- __u32 tuner;
- __u32 type;
- __u32 seek_upward;
- __u32 wrap_around;
- __u32 spacing;
- __u32 rangelow;
- __u32 rangehigh;
- __u32 reserved[5];
-};
-struct v4l2_rds_data {
- __u8 lsb;
- __u8 msb;
- __u8 block;
-} __attribute__((packed));
-#define V4L2_RDS_BLOCK_MSK 0x7
-#define V4L2_RDS_BLOCK_A 0
-#define V4L2_RDS_BLOCK_B 1
-#define V4L2_RDS_BLOCK_C 2
-#define V4L2_RDS_BLOCK_D 3
-#define V4L2_RDS_BLOCK_C_ALT 4
-#define V4L2_RDS_BLOCK_INVALID 7
-#define V4L2_RDS_BLOCK_CORRECTED 0x40
-#define V4L2_RDS_BLOCK_ERROR 0x80
-struct v4l2_audio {
- __u32 index;
- __u8 name[32];
- __u32 capability;
- __u32 mode;
- __u32 reserved[2];
-};
-#define V4L2_AUDCAP_STEREO 0x00001
-#define V4L2_AUDCAP_AVL 0x00002
-#define V4L2_AUDMODE_AVL 0x00001
-struct v4l2_audioout {
- __u32 index;
- __u8 name[32];
- __u32 capability;
- __u32 mode;
- __u32 reserved[2];
-};
-#define V4L2_ENC_IDX_FRAME_I (0)
-#define V4L2_ENC_IDX_FRAME_P (1)
-#define V4L2_ENC_IDX_FRAME_B (2)
-#define V4L2_ENC_IDX_FRAME_MASK (0xf)
-struct v4l2_enc_idx_entry {
- __u64 offset;
- __u64 pts;
- __u32 length;
- __u32 flags;
- __u32 reserved[2];
-};
-#define V4L2_ENC_IDX_ENTRIES (64)
-struct v4l2_enc_idx {
- __u32 entries;
- __u32 entries_cap;
- __u32 reserved[4];
- struct v4l2_enc_idx_entry entry[V4L2_ENC_IDX_ENTRIES];
-};
-#define V4L2_ENC_CMD_START (0)
-#define V4L2_ENC_CMD_STOP (1)
-#define V4L2_ENC_CMD_PAUSE (2)
-#define V4L2_ENC_CMD_RESUME (3)
-#define V4L2_ENC_CMD_STOP_AT_GOP_END (1 << 0)
-struct v4l2_encoder_cmd {
- __u32 cmd;
- __u32 flags;
- union {
- struct {
- __u32 data[8];
- } raw;
- };
-};
-#define V4L2_DEC_CMD_START (0)
-#define V4L2_DEC_CMD_STOP (1)
-#define V4L2_DEC_CMD_PAUSE (2)
-#define V4L2_DEC_CMD_RESUME (3)
-#define V4L2_QCOM_CMD_FLUSH (4)
-#define V4L2_DEC_QCOM_CMD_RECONFIG_HINT (5)
-#define V4L2_QCOM_CMD_SESSION_CONTINUE (6)
-#define V4L2_DEC_CMD_START_MUTE_AUDIO (1 << 0)
-#define V4L2_DEC_CMD_PAUSE_TO_BLACK (1 << 0)
-#define V4L2_DEC_CMD_STOP_TO_BLACK (1 << 0)
-#define V4L2_DEC_CMD_STOP_IMMEDIATELY (1 << 1)
-#define V4L2_QCOM_CMD_FLUSH_OUTPUT (1 << 0)
-#define V4L2_QCOM_CMD_FLUSH_CAPTURE (1 << 1)
-#define V4L2_DEC_START_FMT_NONE (0)
-#define V4L2_DEC_START_FMT_GOP (1)
-struct v4l2_decoder_cmd {
- __u32 cmd;
- __u32 flags;
- union {
- struct {
- __u64 pts;
- } stop;
- struct {
- __s32 speed;
- __u32 format;
- } start;
- struct {
- __u32 data[16];
- } raw;
- };
-};
-struct v4l2_vbi_format {
- __u32 sampling_rate;
- __u32 offset;
- __u32 samples_per_line;
- __u32 sample_format;
- __s32 start[2];
- __u32 count[2];
- __u32 flags;
- __u32 reserved[2];
-};
-#define V4L2_VBI_UNSYNC (1 << 0)
-#define V4L2_VBI_INTERLACED (1 << 1)
-#define V4L2_VBI_ITU_525_F1_START (1)
-#define V4L2_VBI_ITU_525_F2_START (264)
-#define V4L2_VBI_ITU_625_F1_START (1)
-#define V4L2_VBI_ITU_625_F2_START (314)
-struct v4l2_sliced_vbi_format {
- __u16 service_set;
- __u16 service_lines[2][24];
- __u32 io_size;
- __u32 reserved[2];
-};
-#define V4L2_SLICED_TELETEXT_B (0x0001)
-#define V4L2_SLICED_VPS (0x0400)
-#define V4L2_SLICED_CAPTION_525 (0x1000)
-#define V4L2_SLICED_WSS_625 (0x4000)
-#define V4L2_SLICED_VBI_525 (V4L2_SLICED_CAPTION_525)
-#define V4L2_SLICED_VBI_625 (V4L2_SLICED_TELETEXT_B | V4L2_SLICED_VPS | V4L2_SLICED_WSS_625)
-struct v4l2_sliced_vbi_cap {
- __u16 service_set;
- __u16 service_lines[2][24];
- __u32 type;
- __u32 reserved[3];
-};
-struct v4l2_sliced_vbi_data {
- __u32 id;
- __u32 field;
- __u32 line;
- __u32 reserved;
- __u8 data[48];
-};
-#define V4L2_MPEG_VBI_IVTV_TELETEXT_B (1)
-#define V4L2_MPEG_VBI_IVTV_CAPTION_525 (4)
-#define V4L2_MPEG_VBI_IVTV_WSS_625 (5)
-#define V4L2_MPEG_VBI_IVTV_VPS (7)
-struct v4l2_mpeg_vbi_itv0_line {
- __u8 id;
- __u8 data[42];
-} __attribute__((packed));
-struct v4l2_mpeg_vbi_itv0 {
- __le32 linemask[2];
- struct v4l2_mpeg_vbi_itv0_line line[35];
-} __attribute__((packed));
-struct v4l2_mpeg_vbi_ITV0 {
- struct v4l2_mpeg_vbi_itv0_line line[36];
-} __attribute__((packed));
-#define V4L2_MPEG_VBI_IVTV_MAGIC0 "itv0"
-#define V4L2_MPEG_VBI_IVTV_MAGIC1 "ITV0"
-struct v4l2_mpeg_vbi_fmt_ivtv {
- __u8 magic[4];
- union {
- struct v4l2_mpeg_vbi_itv0 itv0;
- struct v4l2_mpeg_vbi_ITV0 ITV0;
- };
-} __attribute__((packed));
-struct v4l2_plane_pix_format {
- __u32 sizeimage;
- __u32 bytesperline;
- __u16 reserved[6];
-} __attribute__((packed));
-struct v4l2_pix_format_mplane {
- __u32 width;
- __u32 height;
- __u32 pixelformat;
- __u32 field;
- __u32 colorspace;
- struct v4l2_plane_pix_format plane_fmt[VIDEO_MAX_PLANES];
- __u8 num_planes;
- __u8 flags;
- __u8 ycbcr_enc;
- __u8 quantization;
- __u8 xfer_func;
- __u8 reserved[7];
-} __attribute__((packed));
-struct v4l2_sdr_format {
- __u32 pixelformat;
- __u32 buffersize;
- __u8 reserved[24];
-} __attribute__((packed));
-struct v4l2_format {
- __u32 type;
- union {
- struct v4l2_pix_format pix;
- struct v4l2_pix_format_mplane pix_mp;
- struct v4l2_window win;
- struct v4l2_vbi_format vbi;
- struct v4l2_sliced_vbi_format sliced;
- struct v4l2_sdr_format sdr;
- __u8 raw_data[200];
- } fmt;
-};
-struct v4l2_streamparm {
- __u32 type;
- union {
- struct v4l2_captureparm capture;
- struct v4l2_outputparm output;
- __u8 raw_data[200];
- } parm;
-};
-#define V4L2_EVENT_ALL 0
-#define V4L2_EVENT_VSYNC 1
-#define V4L2_EVENT_EOS 2
-#define V4L2_EVENT_CTRL 3
-#define V4L2_EVENT_FRAME_SYNC 4
-#define V4L2_EVENT_SOURCE_CHANGE 5
-#define V4L2_EVENT_MOTION_DET 6
-#define V4L2_EVENT_PRIVATE_START 0x08000000
-#define V4L2_EVENT_BITDEPTH_FLAG 0x1
-#define V4L2_EVENT_PICSTRUCT_FLAG 0x2
-#define V4L2_EVENT_COLOUR_SPACE_FLAG 0x4
-#define V4L2_EVENT_MSM_VIDC_START (V4L2_EVENT_PRIVATE_START + 0x00001000)
-#define V4L2_EVENT_MSM_VIDC_FLUSH_DONE (V4L2_EVENT_MSM_VIDC_START + 1)
-#define V4L2_EVENT_MSM_VIDC_PORT_SETTINGS_CHANGED_SUFFICIENT (V4L2_EVENT_MSM_VIDC_START + 2)
-#define V4L2_EVENT_MSM_VIDC_PORT_SETTINGS_CHANGED_INSUFFICIENT (V4L2_EVENT_MSM_VIDC_START + 3)
-#define V4L2_EVENT_MSM_VIDC_PORT_SETTINGS_BITDEPTH_CHANGED_INSUFFICIENT (V4L2_EVENT_MSM_VIDC_START + 4)
-#define V4L2_EVENT_MSM_VIDC_SYS_ERROR (V4L2_EVENT_MSM_VIDC_START + 5)
-#define V4L2_EVENT_MSM_VIDC_RELEASE_BUFFER_REFERENCE (V4L2_EVENT_MSM_VIDC_START + 6)
-#define V4L2_EVENT_MSM_VIDC_RELEASE_UNQUEUED_BUFFER (V4L2_EVENT_MSM_VIDC_START + 7)
-#define V4L2_EVENT_MSM_VIDC_HW_OVERLOAD (V4L2_EVENT_MSM_VIDC_START + 8)
-#define V4L2_EVENT_MSM_VIDC_MAX_CLIENTS (V4L2_EVENT_MSM_VIDC_START + 9)
-#define V4L2_EVENT_MSM_VIDC_HW_UNSUPPORTED (V4L2_EVENT_MSM_VIDC_START + 10)
-struct v4l2_event_vsync {
- __u8 field;
-} __attribute__((packed));
-#define V4L2_EVENT_CTRL_CH_VALUE (1 << 0)
-#define V4L2_EVENT_CTRL_CH_FLAGS (1 << 1)
-#define V4L2_EVENT_CTRL_CH_RANGE (1 << 2)
-struct v4l2_event_ctrl {
- __u32 changes;
- __u32 type;
- union {
- __s32 value;
- __s64 value64;
- };
- __u32 flags;
- __s32 minimum;
- __s32 maximum;
- __s32 step;
- __s32 default_value;
-};
-struct v4l2_event_frame_sync {
- __u32 frame_sequence;
-};
-#define V4L2_EVENT_SRC_CH_RESOLUTION (1 << 0)
-struct v4l2_event_src_change {
- __u32 changes;
-};
-#define V4L2_EVENT_MD_FL_HAVE_FRAME_SEQ (1 << 0)
-struct v4l2_event_motion_det {
- __u32 flags;
- __u32 frame_sequence;
- __u32 region_mask;
-};
-struct v4l2_event {
- __u32 type;
- union {
- struct v4l2_event_vsync vsync;
- struct v4l2_event_ctrl ctrl;
- struct v4l2_event_frame_sync frame_sync;
- struct v4l2_event_src_change src_change;
- struct v4l2_event_motion_det motion_det;
- __u8 data[64];
- } u;
- __u32 pending;
- __u32 sequence;
- struct timespec timestamp;
- __u32 id;
- __u32 reserved[8];
-};
-#define V4L2_EVENT_SUB_FL_SEND_INITIAL (1 << 0)
-#define V4L2_EVENT_SUB_FL_ALLOW_FEEDBACK (1 << 1)
-struct v4l2_event_subscription {
- __u32 type;
- __u32 id;
- __u32 flags;
- __u32 reserved[5];
-};
-#define V4L2_CHIP_MATCH_BRIDGE 0
-#define V4L2_CHIP_MATCH_SUBDEV 4
-#define V4L2_CHIP_MATCH_HOST V4L2_CHIP_MATCH_BRIDGE
-#define V4L2_CHIP_MATCH_I2C_DRIVER 1
-#define V4L2_CHIP_MATCH_I2C_ADDR 2
-#define V4L2_CHIP_MATCH_AC97 3
-struct v4l2_dbg_match {
- __u32 type;
- union {
- __u32 addr;
- char name[32];
- };
-} __attribute__((packed));
-struct v4l2_dbg_register {
- struct v4l2_dbg_match match;
- __u32 size;
- __u64 reg;
- __u64 val;
-} __attribute__((packed));
-#define V4L2_CHIP_FL_READABLE (1 << 0)
-#define V4L2_CHIP_FL_WRITABLE (1 << 1)
-struct v4l2_dbg_chip_info {
- struct v4l2_dbg_match match;
- char name[32];
- __u32 flags;
- __u32 reserved[32];
-} __attribute__((packed));
-struct v4l2_create_buffers {
- __u32 index;
- __u32 count;
- __u32 memory;
- struct v4l2_format format;
- __u32 reserved[8];
-};
-#define VIDIOC_QUERYCAP _IOR('V', 0, struct v4l2_capability)
-#define VIDIOC_RESERVED _IO('V', 1)
-#define VIDIOC_ENUM_FMT _IOWR('V', 2, struct v4l2_fmtdesc)
-#define VIDIOC_G_FMT _IOWR('V', 4, struct v4l2_format)
-#define VIDIOC_S_FMT _IOWR('V', 5, struct v4l2_format)
-#define VIDIOC_REQBUFS _IOWR('V', 8, struct v4l2_requestbuffers)
-#define VIDIOC_QUERYBUF _IOWR('V', 9, struct v4l2_buffer)
-#define VIDIOC_G_FBUF _IOR('V', 10, struct v4l2_framebuffer)
-#define VIDIOC_S_FBUF _IOW('V', 11, struct v4l2_framebuffer)
-#define VIDIOC_OVERLAY _IOW('V', 14, int)
-#define VIDIOC_QBUF _IOWR('V', 15, struct v4l2_buffer)
-#define VIDIOC_EXPBUF _IOWR('V', 16, struct v4l2_exportbuffer)
-#define VIDIOC_DQBUF _IOWR('V', 17, struct v4l2_buffer)
-#define VIDIOC_STREAMON _IOW('V', 18, int)
-#define VIDIOC_STREAMOFF _IOW('V', 19, int)
-#define VIDIOC_G_PARM _IOWR('V', 21, struct v4l2_streamparm)
-#define VIDIOC_S_PARM _IOWR('V', 22, struct v4l2_streamparm)
-#define VIDIOC_G_STD _IOR('V', 23, v4l2_std_id)
-#define VIDIOC_S_STD _IOW('V', 24, v4l2_std_id)
-#define VIDIOC_ENUMSTD _IOWR('V', 25, struct v4l2_standard)
-#define VIDIOC_ENUMINPUT _IOWR('V', 26, struct v4l2_input)
-#define VIDIOC_G_CTRL _IOWR('V', 27, struct v4l2_control)
-#define VIDIOC_S_CTRL _IOWR('V', 28, struct v4l2_control)
-#define VIDIOC_G_TUNER _IOWR('V', 29, struct v4l2_tuner)
-#define VIDIOC_S_TUNER _IOW('V', 30, struct v4l2_tuner)
-#define VIDIOC_G_AUDIO _IOR('V', 33, struct v4l2_audio)
-#define VIDIOC_S_AUDIO _IOW('V', 34, struct v4l2_audio)
-#define VIDIOC_QUERYCTRL _IOWR('V', 36, struct v4l2_queryctrl)
-#define VIDIOC_QUERYMENU _IOWR('V', 37, struct v4l2_querymenu)
-#define VIDIOC_G_INPUT _IOR('V', 38, int)
-#define VIDIOC_S_INPUT _IOWR('V', 39, int)
-#define VIDIOC_G_EDID _IOWR('V', 40, struct v4l2_edid)
-#define VIDIOC_S_EDID _IOWR('V', 41, struct v4l2_edid)
-#define VIDIOC_G_OUTPUT _IOR('V', 46, int)
-#define VIDIOC_S_OUTPUT _IOWR('V', 47, int)
-#define VIDIOC_ENUMOUTPUT _IOWR('V', 48, struct v4l2_output)
-#define VIDIOC_G_AUDOUT _IOR('V', 49, struct v4l2_audioout)
-#define VIDIOC_S_AUDOUT _IOW('V', 50, struct v4l2_audioout)
-#define VIDIOC_G_MODULATOR _IOWR('V', 54, struct v4l2_modulator)
-#define VIDIOC_S_MODULATOR _IOW('V', 55, struct v4l2_modulator)
-#define VIDIOC_G_FREQUENCY _IOWR('V', 56, struct v4l2_frequency)
-#define VIDIOC_S_FREQUENCY _IOW('V', 57, struct v4l2_frequency)
-#define VIDIOC_CROPCAP _IOWR('V', 58, struct v4l2_cropcap)
-#define VIDIOC_G_CROP _IOWR('V', 59, struct v4l2_crop)
-#define VIDIOC_S_CROP _IOW('V', 60, struct v4l2_crop)
-#define VIDIOC_G_JPEGCOMP _IOR('V', 61, struct v4l2_jpegcompression)
-#define VIDIOC_S_JPEGCOMP _IOW('V', 62, struct v4l2_jpegcompression)
-#define VIDIOC_QUERYSTD _IOR('V', 63, v4l2_std_id)
-#define VIDIOC_TRY_FMT _IOWR('V', 64, struct v4l2_format)
-#define VIDIOC_ENUMAUDIO _IOWR('V', 65, struct v4l2_audio)
-#define VIDIOC_ENUMAUDOUT _IOWR('V', 66, struct v4l2_audioout)
-#define VIDIOC_G_PRIORITY _IOR('V', 67, __u32)
-#define VIDIOC_S_PRIORITY _IOW('V', 68, __u32)
-#define VIDIOC_G_SLICED_VBI_CAP _IOWR('V', 69, struct v4l2_sliced_vbi_cap)
-#define VIDIOC_LOG_STATUS _IO('V', 70)
-#define VIDIOC_G_EXT_CTRLS _IOWR('V', 71, struct v4l2_ext_controls)
-#define VIDIOC_S_EXT_CTRLS _IOWR('V', 72, struct v4l2_ext_controls)
-#define VIDIOC_TRY_EXT_CTRLS _IOWR('V', 73, struct v4l2_ext_controls)
-#define VIDIOC_ENUM_FRAMESIZES _IOWR('V', 74, struct v4l2_frmsizeenum)
-#define VIDIOC_ENUM_FRAMEINTERVALS _IOWR('V', 75, struct v4l2_frmivalenum)
-#define VIDIOC_G_ENC_INDEX _IOR('V', 76, struct v4l2_enc_idx)
-#define VIDIOC_ENCODER_CMD _IOWR('V', 77, struct v4l2_encoder_cmd)
-#define VIDIOC_TRY_ENCODER_CMD _IOWR('V', 78, struct v4l2_encoder_cmd)
-#define VIDIOC_DBG_S_REGISTER _IOW('V', 79, struct v4l2_dbg_register)
-#define VIDIOC_DBG_G_REGISTER _IOWR('V', 80, struct v4l2_dbg_register)
-#define VIDIOC_S_HW_FREQ_SEEK _IOW('V', 82, struct v4l2_hw_freq_seek)
-#define VIDIOC_S_DV_TIMINGS _IOWR('V', 87, struct v4l2_dv_timings)
-#define VIDIOC_G_DV_TIMINGS _IOWR('V', 88, struct v4l2_dv_timings)
-#define VIDIOC_DQEVENT _IOR('V', 89, struct v4l2_event)
-#define VIDIOC_SUBSCRIBE_EVENT _IOW('V', 90, struct v4l2_event_subscription)
-#define VIDIOC_UNSUBSCRIBE_EVENT _IOW('V', 91, struct v4l2_event_subscription)
-#define VIDIOC_CREATE_BUFS _IOWR('V', 92, struct v4l2_create_buffers)
-#define VIDIOC_PREPARE_BUF _IOWR('V', 93, struct v4l2_buffer)
-#define VIDIOC_G_SELECTION _IOWR('V', 94, struct v4l2_selection)
-#define VIDIOC_S_SELECTION _IOWR('V', 95, struct v4l2_selection)
-#define VIDIOC_DECODER_CMD _IOWR('V', 96, struct v4l2_decoder_cmd)
-#define VIDIOC_TRY_DECODER_CMD _IOWR('V', 97, struct v4l2_decoder_cmd)
-#define VIDIOC_ENUM_DV_TIMINGS _IOWR('V', 98, struct v4l2_enum_dv_timings)
-#define VIDIOC_QUERY_DV_TIMINGS _IOR('V', 99, struct v4l2_dv_timings)
-#define VIDIOC_DV_TIMINGS_CAP _IOWR('V', 100, struct v4l2_dv_timings_cap)
-#define VIDIOC_ENUM_FREQ_BANDS _IOWR('V', 101, struct v4l2_frequency_band)
-#define VIDIOC_DBG_G_CHIP_INFO _IOWR('V', 102, struct v4l2_dbg_chip_info)
-#define VIDIOC_QUERY_EXT_CTRL _IOWR('V', 103, struct v4l2_query_ext_ctrl)
-#define BASE_VIDIOC_PRIVATE 192
-#endif
-
diff --git a/sdm710/kernel-headers/linux/wcd-spi-ac-params.h b/sdm710/kernel-headers/linux/wcd-spi-ac-params.h
deleted file mode 100644
index 764b891b..00000000
--- a/sdm710/kernel-headers/linux/wcd-spi-ac-params.h
+++ /dev/null
@@ -1,38 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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_WCD_SPI_AC_PARAMS_H__
-#define __UAPI_WCD_SPI_AC_PARAMS_H__
-#include <linux/types.h>
-#define WCD_SPI_AC_CMD_CONC_BEGIN 0x01
-#define WCD_SPI_AC_CMD_CONC_END 0x02
-#define WCD_SPI_AC_CMD_BUF_DATA 0x03
-#define WCD_SPI_AC_MAX_BUFFERS 2
-#define WCD_SPI_AC_MAX_CH_PER_BUF 8
-#define WCD_SPI_AC_CLIENT_CDEV_NAME "wcd-spi-ac-client"
-#define WCD_SPI_AC_PROCFS_DIR_NAME "wcd-spi-ac"
-#define WCD_SPI_AC_PROCFS_STATE_NAME "svc-state"
-struct wcd_spi_ac_buf_data {
- __u32 addr[WCD_SPI_AC_MAX_CH_PER_BUF];
-} __attribute__((packed));
-struct wcd_spi_ac_write_cmd {
- __u32 cmd_type;
- __u8 payload[0];
-} __attribute__((packed));
-#endif
-
diff --git a/sdm710/kernel-headers/media/cam_cpas.h b/sdm710/kernel-headers/media/cam_cpas.h
deleted file mode 100644
index aff8754b..00000000
--- a/sdm710/kernel-headers/media/cam_cpas.h
+++ /dev/null
@@ -1,31 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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_CAM_CPAS_H__
-#define __UAPI_CAM_CPAS_H__
-#include "cam_defs.h"
-#define CAM_FAMILY_CAMERA_SS 1
-#define CAM_FAMILY_CPAS_SS 2
-struct cam_cpas_query_cap {
- uint32_t camera_family;
- uint32_t reserved;
- struct cam_hw_version camera_version;
- struct cam_hw_version cpas_version;
-};
-#endif
-
diff --git a/sdm710/kernel-headers/media/cam_defs.h b/sdm710/kernel-headers/media/cam_defs.h
deleted file mode 100644
index 11f34e67..00000000
--- a/sdm710/kernel-headers/media/cam_defs.h
+++ /dev/null
@@ -1,262 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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_CAM_DEFS_H__
-#define __UAPI_CAM_DEFS_H__
-#include <linux/videodev2.h>
-#include <linux/types.h>
-#include <linux/ioctl.h>
-#define CAM_COMMON_OPCODE_BASE 0x100
-#define CAM_QUERY_CAP (CAM_COMMON_OPCODE_BASE + 0x1)
-#define CAM_ACQUIRE_DEV (CAM_COMMON_OPCODE_BASE + 0x2)
-#define CAM_START_DEV (CAM_COMMON_OPCODE_BASE + 0x3)
-#define CAM_STOP_DEV (CAM_COMMON_OPCODE_BASE + 0x4)
-#define CAM_CONFIG_DEV (CAM_COMMON_OPCODE_BASE + 0x5)
-#define CAM_RELEASE_DEV (CAM_COMMON_OPCODE_BASE + 0x6)
-#define CAM_SD_SHUTDOWN (CAM_COMMON_OPCODE_BASE + 0x7)
-#define CAM_FLUSH_REQ (CAM_COMMON_OPCODE_BASE + 0x8)
-#define CAM_COMMON_OPCODE_MAX (CAM_COMMON_OPCODE_BASE + 0x9)
-#define CAM_EXT_OPCODE_BASE 0x200
-#define CAM_CONFIG_DEV_EXTERNAL (CAM_EXT_OPCODE_BASE + 0x1)
-#define CAM_HANDLE_USER_POINTER 1
-#define CAM_HANDLE_MEM_HANDLE 2
-#define CAM_GENERIC_BLOB_CMDBUFFER_SIZE_MASK 0xFFFFFF00
-#define CAM_GENERIC_BLOB_CMDBUFFER_SIZE_SHIFT 8
-#define CAM_GENERIC_BLOB_CMDBUFFER_TYPE_MASK 0xFF
-#define CAM_GENERIC_BLOB_CMDBUFFER_TYPE_SHIFT 0
-#define CAM_CMD_BUF_DMI 0x1
-#define CAM_CMD_BUF_DMI16 0x2
-#define CAM_CMD_BUF_DMI32 0x3
-#define CAM_CMD_BUF_DMI64 0x4
-#define CAM_CMD_BUF_DIRECT 0x5
-#define CAM_CMD_BUF_INDIRECT 0x6
-#define CAM_CMD_BUF_I2C 0x7
-#define CAM_CMD_BUF_FW 0x8
-#define CAM_CMD_BUF_GENERIC 0x9
-#define CAM_CMD_BUF_LEGACY 0xA
-enum flush_type_t {
- CAM_FLUSH_TYPE_REQ,
- CAM_FLUSH_TYPE_ALL,
- CAM_FLUSH_TYPE_MAX
-};
-struct cam_control {
- uint32_t op_code;
- uint32_t size;
- uint32_t handle_type;
- uint32_t reserved;
- uint64_t handle;
-};
-#define VIDIOC_CAM_CONTROL _IOWR('V', BASE_VIDIOC_PRIVATE, struct cam_control)
-struct cam_hw_version {
- uint32_t major;
- uint32_t minor;
- uint32_t incr;
- uint32_t reserved;
-};
-struct cam_iommu_handle {
- int32_t non_secure;
- int32_t secure;
-};
-#define CAM_SECURE_MODE_NON_SECURE 0
-#define CAM_SECURE_MODE_SECURE 1
-#define CAM_FORMAT_BASE 0
-#define CAM_FORMAT_MIPI_RAW_6 1
-#define CAM_FORMAT_MIPI_RAW_8 2
-#define CAM_FORMAT_MIPI_RAW_10 3
-#define CAM_FORMAT_MIPI_RAW_12 4
-#define CAM_FORMAT_MIPI_RAW_14 5
-#define CAM_FORMAT_MIPI_RAW_16 6
-#define CAM_FORMAT_MIPI_RAW_20 7
-#define CAM_FORMAT_QTI_RAW_8 8
-#define CAM_FORMAT_QTI_RAW_10 9
-#define CAM_FORMAT_QTI_RAW_12 10
-#define CAM_FORMAT_QTI_RAW_14 11
-#define CAM_FORMAT_PLAIN8 12
-#define CAM_FORMAT_PLAIN16_8 13
-#define CAM_FORMAT_PLAIN16_10 14
-#define CAM_FORMAT_PLAIN16_12 15
-#define CAM_FORMAT_PLAIN16_14 16
-#define CAM_FORMAT_PLAIN16_16 17
-#define CAM_FORMAT_PLAIN32_20 18
-#define CAM_FORMAT_PLAIN64 19
-#define CAM_FORMAT_PLAIN128 20
-#define CAM_FORMAT_ARGB 21
-#define CAM_FORMAT_ARGB_10 22
-#define CAM_FORMAT_ARGB_12 23
-#define CAM_FORMAT_ARGB_14 24
-#define CAM_FORMAT_DPCM_10_6_10 25
-#define CAM_FORMAT_DPCM_10_8_10 26
-#define CAM_FORMAT_DPCM_12_6_12 27
-#define CAM_FORMAT_DPCM_12_8_12 28
-#define CAM_FORMAT_DPCM_14_8_14 29
-#define CAM_FORMAT_DPCM_14_10_14 30
-#define CAM_FORMAT_NV21 31
-#define CAM_FORMAT_NV12 32
-#define CAM_FORMAT_TP10 33
-#define CAM_FORMAT_YUV422 34
-#define CAM_FORMAT_PD8 35
-#define CAM_FORMAT_PD10 36
-#define CAM_FORMAT_UBWC_NV12 37
-#define CAM_FORMAT_UBWC_NV12_4R 38
-#define CAM_FORMAT_UBWC_TP10 39
-#define CAM_FORMAT_UBWC_P010 40
-#define CAM_FORMAT_PLAIN8_SWAP 41
-#define CAM_FORMAT_PLAIN8_10 42
-#define CAM_FORMAT_PLAIN8_10_SWAP 43
-#define CAM_FORMAT_YV12 44
-#define CAM_FORMAT_Y_ONLY 45
-#define CAM_FORMAT_MAX 46
-#define CAM_ROTATE_CW_0_DEGREE 0
-#define CAM_ROTATE_CW_90_DEGREE 1
-#define CAM_RORATE_CW_180_DEGREE 2
-#define CAM_ROTATE_CW_270_DEGREE 3
-#define CAM_COLOR_SPACE_BASE 0
-#define CAM_COLOR_SPACE_BT601_FULL 1
-#define CAM_COLOR_SPACE_BT601625 2
-#define CAM_COLOR_SPACE_BT601525 3
-#define CAM_COLOR_SPACE_BT709 4
-#define CAM_COLOR_SPACE_DEPTH 5
-#define CAM_COLOR_SPACE_MAX 6
-#define CAM_BUF_INPUT 1
-#define CAM_BUF_OUTPUT 2
-#define CAM_BUF_IN_OUT 3
-#define CAM_PACKET_DEV_BASE 0
-#define CAM_PACKET_DEV_IMG_SENSOR 1
-#define CAM_PACKET_DEV_ACTUATOR 2
-#define CAM_PACKET_DEV_COMPANION 3
-#define CAM_PACKET_DEV_EEPOM 4
-#define CAM_PACKET_DEV_CSIPHY 5
-#define CAM_PACKET_DEV_OIS 6
-#define CAM_PACKET_DEV_FLASH 7
-#define CAM_PACKET_DEV_FD 8
-#define CAM_PACKET_DEV_JPEG_ENC 9
-#define CAM_PACKET_DEV_JPEG_DEC 10
-#define CAM_PACKET_DEV_VFE 11
-#define CAM_PACKET_DEV_CPP 12
-#define CAM_PACKET_DEV_CSID 13
-#define CAM_PACKET_DEV_ISPIF 14
-#define CAM_PACKET_DEV_IFE 15
-#define CAM_PACKET_DEV_ICP 16
-#define CAM_PACKET_DEV_LRME 17
-#define CAM_PACKET_DEV_MAX 18
-#define CAM_PACKET_MAX_PLANES 3
-struct cam_plane_cfg {
- uint32_t width;
- uint32_t height;
- uint32_t plane_stride;
- uint32_t slice_height;
- uint32_t meta_stride;
- uint32_t meta_size;
- uint32_t meta_offset;
- uint32_t packer_config;
- uint32_t mode_config;
- uint32_t tile_config;
- uint32_t h_init;
- uint32_t v_init;
-};
-struct cam_cmd_buf_desc {
- int32_t mem_handle;
- uint32_t offset;
- uint32_t size;
- uint32_t length;
- uint32_t type;
- uint32_t meta_data;
-};
-struct cam_buf_io_cfg {
- int32_t mem_handle[CAM_PACKET_MAX_PLANES];
- uint32_t offsets[CAM_PACKET_MAX_PLANES];
- struct cam_plane_cfg planes[CAM_PACKET_MAX_PLANES];
- uint32_t format;
- uint32_t color_space;
- uint32_t color_pattern;
- uint32_t bpp;
- uint32_t rotation;
- uint32_t resource_type;
- int32_t fence;
- int32_t early_fence;
- struct cam_cmd_buf_desc aux_cmd_buf;
- uint32_t direction;
- uint32_t batch_size;
- uint32_t subsample_pattern;
- uint32_t subsample_period;
- uint32_t framedrop_pattern;
- uint32_t framedrop_period;
- uint32_t flag;
- uint32_t padding;
-};
-struct cam_packet_header {
- uint32_t op_code;
- uint32_t size;
- uint64_t request_id;
- uint32_t flags;
- uint32_t padding;
-};
-struct cam_patch_desc {
- int32_t dst_buf_hdl;
- uint32_t dst_offset;
- int32_t src_buf_hdl;
- uint32_t src_offset;
-};
-struct cam_packet {
- struct cam_packet_header header;
- uint32_t cmd_buf_offset;
- uint32_t num_cmd_buf;
- uint32_t io_configs_offset;
- uint32_t num_io_configs;
- uint32_t patch_offset;
- uint32_t num_patches;
- uint32_t kmd_cmd_buf_index;
- uint32_t kmd_cmd_buf_offset;
- uint64_t payload[1];
-};
-struct cam_release_dev_cmd {
- int32_t session_handle;
- int32_t dev_handle;
-};
-struct cam_start_stop_dev_cmd {
- int32_t session_handle;
- int32_t dev_handle;
-};
-struct cam_config_dev_cmd {
- int32_t session_handle;
- int32_t dev_handle;
- uint64_t offset;
- uint64_t packet_handle;
-};
-struct cam_query_cap_cmd {
- uint32_t size;
- uint32_t handle_type;
- uint64_t caps_handle;
-};
-struct cam_acquire_dev_cmd {
- int32_t session_handle;
- int32_t dev_handle;
- uint32_t handle_type;
- uint32_t num_resources;
- uint64_t resource_hdl;
-};
-struct cam_flush_dev_cmd {
- uint64_t version;
- int32_t session_handle;
- int32_t dev_handle;
- uint32_t flush_type;
- uint32_t reserved;
- int64_t req_id;
-};
-#endif
-
diff --git a/sdm710/kernel-headers/media/cam_fd.h b/sdm710/kernel-headers/media/cam_fd.h
deleted file mode 100644
index 74cda55c..00000000
--- a/sdm710/kernel-headers/media/cam_fd.h
+++ /dev/null
@@ -1,73 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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_CAM_FD_H__
-#define __UAPI_CAM_FD_H__
-#include "cam_defs.h"
-#define CAM_FD_MAX_FACES 35
-#define CAM_FD_RAW_RESULT_ENTRIES 512
-#define CAM_PACKET_OPCODES_FD_FRAME_UPDATE 0x0
-#define CAM_FD_CMD_BUFFER_ID_GENERIC 0x0
-#define CAM_FD_CMD_BUFFER_ID_CDM 0x1
-#define CAM_FD_CMD_BUFFER_ID_MAX 0x2
-#define CAM_FD_BLOB_TYPE_SOC_CLOCK_BW_REQUEST 0x0
-#define CAM_FD_BLOB_TYPE_RAW_RESULTS_REQUIRED 0x1
-#define CAM_FD_INPUT_PORT_ID_IMAGE 0x0
-#define CAM_FD_INPUT_PORT_ID_MAX 0x1
-#define CAM_FD_OUTPUT_PORT_ID_RESULTS 0x0
-#define CAM_FD_OUTPUT_PORT_ID_RAW_RESULTS 0x1
-#define CAM_FD_OUTPUT_PORT_ID_WORK_BUFFER 0x2
-#define CAM_FD_OUTPUT_PORT_ID_MAX 0x3
-struct cam_fd_soc_clock_bw_request {
- uint64_t clock_rate;
- uint64_t bandwidth;
- uint64_t reserved[4];
-};
-struct cam_fd_face {
- uint32_t prop1;
- uint32_t prop2;
- uint32_t prop3;
- uint32_t prop4;
-};
-struct cam_fd_results {
- struct cam_fd_face faces[CAM_FD_MAX_FACES];
- uint32_t face_count;
- uint32_t reserved[3];
-};
-struct cam_fd_hw_caps {
- struct cam_hw_version core_version;
- struct cam_hw_version wrapper_version;
- uint32_t raw_results_available;
- uint32_t supported_modes;
- uint64_t reserved;
-};
-struct cam_fd_query_cap_cmd {
- struct cam_iommu_handle device_iommu;
- struct cam_iommu_handle cdm_iommu;
- struct cam_fd_hw_caps hw_caps;
- uint64_t reserved;
-};
-struct cam_fd_acquire_dev_info {
- struct cam_fd_soc_clock_bw_request clk_bw_request;
- uint32_t priority;
- uint32_t mode;
- uint32_t get_raw_results;
- uint32_t reserved[13];
-};
-#endif
-
diff --git a/sdm710/kernel-headers/media/cam_icp.h b/sdm710/kernel-headers/media/cam_icp.h
deleted file mode 100644
index c237196c..00000000
--- a/sdm710/kernel-headers/media/cam_icp.h
+++ /dev/null
@@ -1,106 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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_CAM_ICP_H__
-#define __UAPI_CAM_ICP_H__
-#include "cam_defs.h"
-#define CAM_ICP_DEV_TYPE_A5 1
-#define CAM_ICP_DEV_TYPE_IPE 2
-#define CAM_ICP_DEV_TYPE_BPS 3
-#define CAM_ICP_DEV_TYPE_IPE_CDM 4
-#define CAM_ICP_DEV_TYPE_BPS_CDM 5
-#define CAM_ICP_DEV_TYPE_MAX 5
-#define CAM_ICP_RES_TYPE_BPS 1
-#define CAM_ICP_RES_TYPE_IPE_RT 2
-#define CAM_ICP_RES_TYPE_IPE 3
-#define CAM_ICP_RES_TYPE_MAX 4
-#define CAM_ICP_OPCODE_IPE_UPDATE 0
-#define CAM_ICP_OPCODE_BPS_UPDATE 1
-#define CAM_ICP_IPE_INPUT_IMAGE_FULL 0x0
-#define CAM_ICP_IPE_INPUT_IMAGE_DS4 0x1
-#define CAM_ICP_IPE_INPUT_IMAGE_DS16 0x2
-#define CAM_ICP_IPE_INPUT_IMAGE_DS64 0x3
-#define CAM_ICP_IPE_INPUT_IMAGE_FULL_REF 0x4
-#define CAM_ICP_IPE_INPUT_IMAGE_DS4_REF 0x5
-#define CAM_ICP_IPE_INPUT_IMAGE_DS16_REF 0x6
-#define CAM_ICP_IPE_INPUT_IMAGE_DS64_REF 0x7
-#define CAM_ICP_IPE_OUTPUT_IMAGE_DISPLAY 0x8
-#define CAM_ICP_IPE_OUTPUT_IMAGE_VIDEO 0x9
-#define CAM_ICP_IPE_OUTPUT_IMAGE_FULL_REF 0xA
-#define CAM_ICP_IPE_OUTPUT_IMAGE_DS4_REF 0xB
-#define CAM_ICP_IPE_OUTPUT_IMAGE_DS16_REF 0xC
-#define CAM_ICP_IPE_OUTPUT_IMAGE_DS64_REF 0xD
-#define CAM_ICP_IPE_IMAGE_MAX 0xE
-#define CAM_ICP_BPS_INPUT_IMAGE 0x0
-#define CAM_ICP_BPS_OUTPUT_IMAGE_FULL 0x1
-#define CAM_ICP_BPS_OUTPUT_IMAGE_DS4 0x2
-#define CAM_ICP_BPS_OUTPUT_IMAGE_DS16 0x3
-#define CAM_ICP_BPS_OUTPUT_IMAGE_DS64 0x4
-#define CAM_ICP_BPS_OUTPUT_IMAGE_STATS_BG 0x5
-#define CAM_ICP_BPS_OUTPUT_IMAGE_STATS_BHIST 0x6
-#define CAM_ICP_BPS_OUTPUT_IMAGE_REG1 0x7
-#define CAM_ICP_BPS_OUTPUT_IMAGE_REG2 0x8
-#define CAM_ICP_BPS_IO_IMAGES_MAX 0x9
-#define CAM_ICP_CMD_META_GENERIC_BLOB 0x1
-#define CAM_ICP_CMD_GENERIC_BLOB_CLK 0x1
-struct cam_icp_clk_bw_request {
- uint64_t budget_ns;
- uint32_t frame_cycles;
- uint32_t rt_flag;
- uint64_t uncompressed_bw;
- uint64_t compressed_bw;
-};
-struct cam_icp_dev_ver {
- uint32_t dev_type;
- uint32_t reserved;
- struct cam_hw_version hw_ver;
-};
-struct cam_icp_ver {
- uint32_t major;
- uint32_t minor;
- uint32_t revision;
- uint32_t reserved;
-};
-struct cam_icp_query_cap_cmd {
- struct cam_iommu_handle dev_iommu_handle;
- struct cam_iommu_handle cdm_iommu_handle;
- struct cam_icp_ver fw_version;
- struct cam_icp_ver api_version;
- uint32_t num_ipe;
- uint32_t num_bps;
- struct cam_icp_dev_ver dev_ver[CAM_ICP_DEV_TYPE_MAX];
-};
-struct cam_icp_res_info {
- uint32_t format;
- uint32_t width;
- uint32_t height;
- uint32_t fps;
-};
-struct cam_icp_acquire_dev_info {
- uint32_t scratch_mem_size;
- uint32_t dev_type;
- uint32_t io_config_cmd_size;
- int32_t io_config_cmd_handle;
- uint32_t secure_mode;
- int32_t chain_info;
- struct cam_icp_res_info in_res;
- uint32_t num_out_res;
- struct cam_icp_res_info out_res[1];
-} __attribute__((__packed__));
-#endif
-
diff --git a/sdm710/kernel-headers/media/cam_isp.h b/sdm710/kernel-headers/media/cam_isp.h
deleted file mode 100644
index bbda6709..00000000
--- a/sdm710/kernel-headers/media/cam_isp.h
+++ /dev/null
@@ -1,188 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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_CAM_ISP_H__
-#define __UAPI_CAM_ISP_H__
-#include "cam_defs.h"
-#include "cam_isp_vfe.h"
-#include "cam_isp_ife.h"
-#define CAM_ISP_DEV_NAME "cam-isp"
-#define CAM_ISP_HW_BASE 0
-#define CAM_ISP_HW_CSID 1
-#define CAM_ISP_HW_VFE 2
-#define CAM_ISP_HW_IFE 3
-#define CAM_ISP_HW_ISPIF 4
-#define CAM_ISP_HW_MAX 5
-#define CAM_ISP_PATTERN_BAYER_RGRGRG 0
-#define CAM_ISP_PATTERN_BAYER_GRGRGR 1
-#define CAM_ISP_PATTERN_BAYER_BGBGBG 2
-#define CAM_ISP_PATTERN_BAYER_GBGBGB 3
-#define CAM_ISP_PATTERN_YUV_YCBYCR 4
-#define CAM_ISP_PATTERN_YUV_YCRYCB 5
-#define CAM_ISP_PATTERN_YUV_CBYCRY 6
-#define CAM_ISP_PATTERN_YUV_CRYCBY 7
-#define CAM_ISP_PATTERN_MAX 8
-#define CAM_ISP_RES_USAGE_SINGLE 0
-#define CAM_ISP_RES_USAGE_DUAL 1
-#define CAM_ISP_RES_USAGE_MAX 2
-#define CAM_ISP_RES_ID_PORT 0
-#define CAM_ISP_RES_ID_CLK 1
-#define CAM_ISP_RES_ID_MAX 2
-#define CAM_ISP_LANE_TYPE_DPHY 0
-#define CAM_ISP_LANE_TYPE_CPHY 1
-#define CAM_ISP_LANE_TYPE_MAX 2
-#define CAM_ISP_RES_COMP_GROUP_NONE 0
-#define CAM_ISP_RES_COMP_GROUP_ID_0 1
-#define CAM_ISP_RES_COMP_GROUP_ID_1 2
-#define CAM_ISP_RES_COMP_GROUP_ID_2 3
-#define CAM_ISP_RES_COMP_GROUP_ID_3 4
-#define CAM_ISP_RES_COMP_GROUP_ID_4 5
-#define CAM_ISP_RES_COMP_GROUP_ID_5 6
-#define CAM_ISP_RES_COMP_GROUP_ID_MAX 6
-#define CAM_ISP_PACKET_OP_BASE 0
-#define CAM_ISP_PACKET_INIT_DEV 1
-#define CAM_ISP_PACKET_UPDATE_DEV 2
-#define CAM_ISP_PACKET_OP_MAX 3
-#define CAM_ISP_PACKET_META_BASE 0
-#define CAM_ISP_PACKET_META_LEFT 1
-#define CAM_ISP_PACKET_META_RIGHT 2
-#define CAM_ISP_PACKET_META_COMMON 3
-#define CAM_ISP_PACKET_META_DMI_LEFT 4
-#define CAM_ISP_PACKET_META_DMI_RIGHT 5
-#define CAM_ISP_PACKET_META_DMI_COMMON 6
-#define CAM_ISP_PACKET_META_CLOCK 7
-#define CAM_ISP_PACKET_META_CSID 8
-#define CAM_ISP_PACKET_META_DUAL_CONFIG 9
-#define CAM_ISP_PACKET_META_GENERIC_BLOB_LEFT 10
-#define CAM_ISP_PACKET_META_GENERIC_BLOB_RIGHT 11
-#define CAM_ISP_PACKET_META_GENERIC_BLOB_COMMON 12
-#define CAM_ISP_DSP_MODE_NONE 0
-#define CAM_ISP_DSP_MODE_ONE_WAY 1
-#define CAM_ISP_DSP_MODE_ROUND 2
-#define CAM_ISP_GENERIC_BLOB_TYPE_HFR_CONFIG 0
-#define CAM_ISP_GENERIC_BLOB_TYPE_CLOCK_CONFIG 1
-#define CAM_ISP_GENERIC_BLOB_TYPE_BW_CONFIG 2
-struct cam_isp_dev_cap_info {
- uint32_t hw_type;
- uint32_t reserved;
- struct cam_hw_version hw_version;
-};
-struct cam_isp_query_cap_cmd {
- struct cam_iommu_handle device_iommu;
- struct cam_iommu_handle cdm_iommu;
- int32_t num_dev;
- uint32_t reserved;
- struct cam_isp_dev_cap_info dev_caps[CAM_ISP_HW_MAX];
-};
-struct cam_isp_out_port_info {
- uint32_t res_type;
- uint32_t format;
- uint32_t width;
- uint32_t height;
- uint32_t comp_grp_id;
- uint32_t split_point;
- uint32_t secure_mode;
- uint32_t reserved;
-};
-struct cam_isp_in_port_info {
- uint32_t res_type;
- uint32_t lane_type;
- uint32_t lane_num;
- uint32_t lane_cfg;
- uint32_t vc;
- uint32_t dt;
- uint32_t format;
- uint32_t test_pattern;
- uint32_t usage_type;
- uint32_t left_start;
- uint32_t left_stop;
- uint32_t left_width;
- uint32_t right_start;
- uint32_t right_stop;
- uint32_t right_width;
- uint32_t line_start;
- uint32_t line_stop;
- uint32_t height;
- uint32_t pixel_clk;
- uint32_t batch_size;
- uint32_t dsp_mode;
- uint32_t hbi_cnt;
- uint32_t reserved;
- uint32_t num_out_res;
- struct cam_isp_out_port_info data[1];
-};
-struct cam_isp_resource {
- uint32_t resource_id;
- uint32_t length;
- uint32_t handle_type;
- uint32_t reserved;
- uint64_t res_hdl;
-};
-struct cam_isp_port_hfr_config {
- uint32_t resource_type;
- uint32_t subsample_pattern;
- uint32_t subsample_period;
- uint32_t framedrop_pattern;
- uint32_t framedrop_period;
- uint32_t reserved;
-} __attribute__((packed));
-struct cam_isp_resource_hfr_config {
- uint32_t num_ports;
- uint32_t reserved;
- struct cam_isp_port_hfr_config port_hfr_config[1];
-} __attribute__((packed));
-struct cam_isp_dual_split_params {
- uint32_t split_point;
- uint32_t right_padding;
- uint32_t left_padding;
- uint32_t reserved;
-};
-struct cam_isp_dual_stripe_config {
- uint32_t offset;
- uint32_t width;
- uint32_t tileconfig;
- uint32_t port_id;
-};
-struct cam_isp_dual_config {
- uint32_t num_ports;
- uint32_t reserved;
- struct cam_isp_dual_split_params split_params;
- struct cam_isp_dual_stripe_config stripes[1];
-} __attribute__((packed));
-struct cam_isp_clock_config {
- uint32_t usage_type;
- uint32_t num_rdi;
- uint64_t left_pix_hz;
- uint64_t right_pix_hz;
- uint64_t rdi_hz[1];
-} __attribute__((packed));
-struct cam_isp_bw_vote {
- uint32_t resource_id;
- uint32_t reserved;
- uint64_t cam_bw_bps;
- uint64_t ext_bw_bps;
-} __attribute__((packed));
-struct cam_isp_bw_config {
- uint32_t usage_type;
- uint32_t num_rdi;
- struct cam_isp_bw_vote left_pix_vote;
- struct cam_isp_bw_vote right_pix_vote;
- struct cam_isp_bw_vote rdi_vote[1];
-} __attribute__((packed));
-#endif
-
diff --git a/sdm710/kernel-headers/media/cam_isp_ife.h b/sdm710/kernel-headers/media/cam_isp_ife.h
deleted file mode 100644
index 79fdace2..00000000
--- a/sdm710/kernel-headers/media/cam_isp_ife.h
+++ /dev/null
@@ -1,50 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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_CAM_ISP_IFE_H__
-#define __UAPI_CAM_ISP_IFE_H__
-#define CAM_ISP_IFE_OUT_RES_BASE 0x3000
-#define CAM_ISP_IFE_OUT_RES_FULL (CAM_ISP_IFE_OUT_RES_BASE + 0)
-#define CAM_ISP_IFE_OUT_RES_DS4 (CAM_ISP_IFE_OUT_RES_BASE + 1)
-#define CAM_ISP_IFE_OUT_RES_DS16 (CAM_ISP_IFE_OUT_RES_BASE + 2)
-#define CAM_ISP_IFE_OUT_RES_RAW_DUMP (CAM_ISP_IFE_OUT_RES_BASE + 3)
-#define CAM_ISP_IFE_OUT_RES_FD (CAM_ISP_IFE_OUT_RES_BASE + 4)
-#define CAM_ISP_IFE_OUT_RES_PDAF (CAM_ISP_IFE_OUT_RES_BASE + 5)
-#define CAM_ISP_IFE_OUT_RES_RDI_0 (CAM_ISP_IFE_OUT_RES_BASE + 6)
-#define CAM_ISP_IFE_OUT_RES_RDI_1 (CAM_ISP_IFE_OUT_RES_BASE + 7)
-#define CAM_ISP_IFE_OUT_RES_RDI_2 (CAM_ISP_IFE_OUT_RES_BASE + 8)
-#define CAM_ISP_IFE_OUT_RES_RDI_3 (CAM_ISP_IFE_OUT_RES_BASE + 9)
-#define CAM_ISP_IFE_OUT_RES_STATS_HDR_BE (CAM_ISP_IFE_OUT_RES_BASE + 10)
-#define CAM_ISP_IFE_OUT_RES_STATS_HDR_BHIST (CAM_ISP_IFE_OUT_RES_BASE + 11)
-#define CAM_ISP_IFE_OUT_RES_STATS_TL_BG (CAM_ISP_IFE_OUT_RES_BASE + 12)
-#define CAM_ISP_IFE_OUT_RES_STATS_BF (CAM_ISP_IFE_OUT_RES_BASE + 13)
-#define CAM_ISP_IFE_OUT_RES_STATS_AWB_BG (CAM_ISP_IFE_OUT_RES_BASE + 14)
-#define CAM_ISP_IFE_OUT_RES_STATS_BHIST (CAM_ISP_IFE_OUT_RES_BASE + 15)
-#define CAM_ISP_IFE_OUT_RES_STATS_RS (CAM_ISP_IFE_OUT_RES_BASE + 16)
-#define CAM_ISP_IFE_OUT_RES_STATS_CS (CAM_ISP_IFE_OUT_RES_BASE + 17)
-#define CAM_ISP_IFE_OUT_RES_STATS_IHIST (CAM_ISP_IFE_OUT_RES_BASE + 18)
-#define CAM_ISP_IFE_OUT_RES_MAX (CAM_ISP_IFE_OUT_RES_BASE + 19)
-#define CAM_ISP_IFE_IN_RES_BASE 0x4000
-#define CAM_ISP_IFE_IN_RES_TPG (CAM_ISP_IFE_IN_RES_BASE + 0)
-#define CAM_ISP_IFE_IN_RES_PHY_0 (CAM_ISP_IFE_IN_RES_BASE + 1)
-#define CAM_ISP_IFE_IN_RES_PHY_1 (CAM_ISP_IFE_IN_RES_BASE + 2)
-#define CAM_ISP_IFE_IN_RES_PHY_2 (CAM_ISP_IFE_IN_RES_BASE + 3)
-#define CAM_ISP_IFE_IN_RES_PHY_3 (CAM_ISP_IFE_IN_RES_BASE + 4)
-#define CAM_ISP_IFE_IN_RES_MAX (CAM_ISP_IFE_IN_RES_BASE + 5)
-#endif
-
diff --git a/sdm710/kernel-headers/media/cam_isp_vfe.h b/sdm710/kernel-headers/media/cam_isp_vfe.h
deleted file mode 100644
index cc64ab49..00000000
--- a/sdm710/kernel-headers/media/cam_isp_vfe.h
+++ /dev/null
@@ -1,56 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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_CAM_ISP_VFE_H__
-#define __UAPI_CAM_ISP_VFE_H__
-#define CAM_ISP_VFE_OUT_RES_BASE 0x1000
-#define CAM_ISP_VFE_OUT_RES_ENC (CAM_ISP_VFE_OUT_RES_BASE + 0)
-#define CAM_ISP_VFE_OUT_RES_VIEW (CAM_ISP_VFE_OUT_RES_BASE + 1)
-#define CAM_ISP_VFE_OUT_RES_VID (CAM_ISP_VFE_OUT_RES_BASE + 2)
-#define CAM_ISP_VFE_OUT_RES_RDI_0 (CAM_ISP_VFE_OUT_RES_BASE + 3)
-#define CAM_ISP_VFE_OUT_RES_RDI_1 (CAM_ISP_VFE_OUT_RES_BASE + 4)
-#define CAM_ISP_VFE_OUT_RES_RDI_2 (CAM_ISP_VFE_OUT_RES_BASE + 5)
-#define CAM_ISP_VFE_OUT_RES_RDI_3 (CAM_ISP_VFE_OUT_RES_BASE + 6)
-#define CAM_ISP_VFE_OUT_RES_STATS_AEC (CAM_ISP_VFE_OUT_RES_BASE + 7)
-#define CAM_ISP_VFE_OUT_RES_STATS_AF (CAM_ISP_VFE_OUT_RES_BASE + 8)
-#define CAM_ISP_VFE_OUT_RES_STATS_AWB (CAM_ISP_VFE_OUT_RES_BASE + 9)
-#define CAM_ISP_VFE_OUT_RES_STATS_RS (CAM_ISP_VFE_OUT_RES_BASE + 10)
-#define CAM_ISP_VFE_OUT_RES_STATS_CS (CAM_ISP_VFE_OUT_RES_BASE + 11)
-#define CAM_ISP_VFE_OUT_RES_STATS_IHIST (CAM_ISP_VFE_OUT_RES_BASE + 12)
-#define CAM_ISP_VFE_OUT_RES_STATS_SKIN (CAM_ISP_VFE_OUT_RES_BASE + 13)
-#define CAM_ISP_VFE_OUT_RES_STATS_BG (CAM_ISP_VFE_OUT_RES_BASE + 14)
-#define CAM_ISP_VFE_OUT_RES_STATS_BF (CAM_ISP_VFE_OUT_RES_BASE + 15)
-#define CAM_ISP_VFE_OUT_RES_STATS_BE (CAM_ISP_VFE_OUT_RES_BASE + 16)
-#define CAM_ISP_VFE_OUT_RES_STATS_BHIST (CAM_ISP_VFE_OUT_RES_BASE + 17)
-#define CAM_ISP_VFE_OUT_RES_STATS_BF_SCALE (CAM_ISP_VFE_OUT_RES_BASE + 18)
-#define CAM_ISP_VFE_OUT_RES_STATS_HDR_BE (CAM_ISP_VFE_OUT_RES_BASE + 19)
-#define CAM_ISP_VFE_OUT_RES_STATS_HDR_BHIST (CAM_ISP_VFE_OUT_RES_BASE + 20)
-#define CAM_ISP_VFE_OUT_RES_STATS_AEC_BG (CAM_ISP_VFE_OUT_RES_BASE + 21)
-#define CAM_ISP_VFE_OUT_RES_CAMIF_RAW (CAM_ISP_VFE_OUT_RES_BASE + 22)
-#define CAM_ISP_VFE_OUT_RES_IDEAL_RAW (CAM_ISP_VFE_OUT_RES_BASE + 23)
-#define CAM_ISP_VFE_OUT_RES_MAX (CAM_ISP_VFE_OUT_RES_BASE + 24)
-#define CAM_ISP_VFE_IN_RES_BASE 0x2000
-#define CAM_ISP_VFE_IN_RES_TPG (CAM_ISP_VFE_IN_RES_BASE + 0)
-#define CAM_ISP_VFE_IN_RES_PHY_0 (CAM_ISP_VFE_IN_RES_BASE + 1)
-#define CAM_ISP_VFE_IN_RES_PHY_1 (CAM_ISP_VFE_IN_RES_BASE + 2)
-#define CAM_ISP_VFE_IN_RES_PHY_2 (CAM_ISP_VFE_IN_RES_BASE + 3)
-#define CAM_ISP_VFE_IN_RES_PHY_3 (CAM_ISP_VFE_IN_RES_BASE + 4)
-#define CAM_ISP_VFE_IN_RES_FE (CAM_ISP_VFE_IN_RES_BASE + 5)
-#define CAM_ISP_VFE_IN_RES_MAX (CAM_ISP_VFE_IN_RES_BASE + 6)
-#endif
-
diff --git a/sdm710/kernel-headers/media/cam_jpeg.h b/sdm710/kernel-headers/media/cam_jpeg.h
deleted file mode 100644
index ac874117..00000000
--- a/sdm710/kernel-headers/media/cam_jpeg.h
+++ /dev/null
@@ -1,67 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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_CAM_JPEG_H__
-#define __UAPI_CAM_JPEG_H__
-#include "cam_defs.h"
-#define CAM_JPEG_DEV_TYPE_ENC 0
-#define CAM_JPEG_DEV_TYPE_DMA 1
-#define CAM_JPEG_DEV_TYPE_MAX 2
-#define CAM_JPEG_NUM_DEV_PER_RES_MAX 1
-#define CAM_JPEG_RES_TYPE_ENC 0
-#define CAM_JPEG_RES_TYPE_DMA 1
-#define CAM_JPEG_RES_TYPE_MAX 2
-#define CAM_JPEG_OPCODE_ENC_UPDATE 0
-#define CAM_JPEG_OPCODE_DMA_UPDATE 1
-#define CAM_JPEG_ENC_INPUT_IMAGE 0x0
-#define CAM_JPEG_ENC_OUTPUT_IMAGE 0x1
-#define CAM_JPEG_ENC_IO_IMAGES_MAX 0x2
-#define CAM_JPEG_DMA_INPUT_IMAGE 0x0
-#define CAM_JPEG_DMA_OUTPUT_IMAGE 0x1
-#define CAM_JPEG_DMA_IO_IMAGES_MAX 0x2
-#define CAM_JPEG_IMAGE_MAX 0x2
-struct cam_jpeg_dev_ver {
- uint32_t size;
- uint32_t dev_type;
- struct cam_hw_version hw_ver;
-};
-struct cam_jpeg_query_cap_cmd {
- struct cam_iommu_handle dev_iommu_handle;
- struct cam_iommu_handle cdm_iommu_handle;
- uint32_t num_enc;
- uint32_t num_dma;
- struct cam_jpeg_dev_ver dev_ver[CAM_JPEG_DEV_TYPE_MAX];
-};
-struct cam_jpeg_res_info {
- uint32_t format;
- uint32_t width;
- uint32_t height;
- uint32_t fps;
-};
-struct cam_jpeg_acquire_dev_info {
- uint32_t dev_type;
- uint32_t reserved;
- struct cam_jpeg_res_info in_res;
- struct cam_jpeg_res_info out_res;
-};
-struct cam_jpeg_config_inout_param_info {
- int32_t clk_index;
- int32_t output_size;
-};
-#endif
-
diff --git a/sdm710/kernel-headers/media/cam_lrme.h b/sdm710/kernel-headers/media/cam_lrme.h
deleted file mode 100644
index 8d1b52a6..00000000
--- a/sdm710/kernel-headers/media/cam_lrme.h
+++ /dev/null
@@ -1,60 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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_CAM_LRME_H__
-#define __UAPI_CAM_LRME_H__
-#include "cam_defs.h"
-enum CAM_LRME_IO_TYPE {
- CAM_LRME_IO_TYPE_TAR,
- CAM_LRME_IO_TYPE_REF,
- CAM_LRME_IO_TYPE_RES,
- CAM_LRME_IO_TYPE_DS2,
-};
-#define CAM_LRME_INPUT_PORT_TYPE_TAR (1 << 0)
-#define CAM_LRME_INPUT_PORT_TYPE_REF (1 << 1)
-#define CAM_LRME_OUTPUT_PORT_TYPE_DS2 (1 << 0)
-#define CAM_LRME_OUTPUT_PORT_TYPE_RES (1 << 1)
-#define CAM_LRME_DEV_MAX 1
-struct cam_lrme_hw_version {
- uint32_t gen;
- uint32_t rev;
- uint32_t step;
-};
-struct cam_lrme_dev_cap {
- struct cam_lrme_hw_version clc_hw_version;
- struct cam_lrme_hw_version bus_rd_hw_version;
- struct cam_lrme_hw_version bus_wr_hw_version;
- struct cam_lrme_hw_version top_hw_version;
- struct cam_lrme_hw_version top_titan_version;
-};
-struct cam_lrme_query_cap_cmd {
- struct cam_iommu_handle device_iommu;
- struct cam_iommu_handle cdm_iommu;
- uint32_t num_devices;
- struct cam_lrme_dev_cap dev_caps[CAM_LRME_DEV_MAX];
-};
-struct cam_lrme_soc_info {
- uint64_t clock_rate;
- uint64_t bandwidth;
- uint64_t reserved[4];
-};
-struct cam_lrme_acquire_args {
- struct cam_lrme_soc_info lrme_soc_info;
-};
-#endif
-
diff --git a/sdm710/kernel-headers/media/cam_req_mgr.h b/sdm710/kernel-headers/media/cam_req_mgr.h
deleted file mode 100644
index d0698eac..00000000
--- a/sdm710/kernel-headers/media/cam_req_mgr.h
+++ /dev/null
@@ -1,217 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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_CAM_REQ_MGR_H
-#define __UAPI_LINUX_CAM_REQ_MGR_H
-#include <linux/videodev2.h>
-#include <linux/types.h>
-#include <linux/ioctl.h>
-#include <linux/media.h>
-#include <media/cam_defs.h>
-#define CAM_REQ_MGR_VNODE_NAME "cam-req-mgr-devnode"
-#define CAM_DEVICE_TYPE_BASE (MEDIA_ENT_F_OLD_BASE)
-#define CAM_VNODE_DEVICE_TYPE (CAM_DEVICE_TYPE_BASE)
-#define CAM_SENSOR_DEVICE_TYPE (CAM_DEVICE_TYPE_BASE + 1)
-#define CAM_IFE_DEVICE_TYPE (CAM_DEVICE_TYPE_BASE + 2)
-#define CAM_ICP_DEVICE_TYPE (CAM_DEVICE_TYPE_BASE + 3)
-#define CAM_LRME_DEVICE_TYPE (CAM_DEVICE_TYPE_BASE + 4)
-#define CAM_JPEG_DEVICE_TYPE (CAM_DEVICE_TYPE_BASE + 5)
-#define CAM_FD_DEVICE_TYPE (CAM_DEVICE_TYPE_BASE + 6)
-#define CAM_CPAS_DEVICE_TYPE (CAM_DEVICE_TYPE_BASE + 7)
-#define CAM_CSIPHY_DEVICE_TYPE (CAM_DEVICE_TYPE_BASE + 8)
-#define CAM_ACTUATOR_DEVICE_TYPE (CAM_DEVICE_TYPE_BASE + 9)
-#define CAM_CCI_DEVICE_TYPE (CAM_DEVICE_TYPE_BASE + 10)
-#define CAM_FLASH_DEVICE_TYPE (CAM_DEVICE_TYPE_BASE + 11)
-#define CAM_EEPROM_DEVICE_TYPE (CAM_DEVICE_TYPE_BASE + 12)
-#define CAM_OIS_DEVICE_TYPE (CAM_DEVICE_TYPE_BASE + 13)
-#define CAM_REQ_MGR_HDL_IDX_POS 8
-#define CAM_REQ_MGR_HDL_IDX_MASK ((1 << CAM_REQ_MGR_HDL_IDX_POS) - 1)
-#define CAM_REQ_MGR_GET_HDL_IDX(hdl) (hdl & CAM_REQ_MGR_HDL_IDX_MASK)
-#define CAM_REQ_MGR_MAX_HANDLES 64
-#define MAX_LINKS_PER_SESSION 2
-#define V4L_EVENT_CAM_REQ_MGR_EVENT (V4L2_EVENT_PRIVATE_START + 0)
-#define V4L_EVENT_CAM_REQ_MGR_SOF 0
-#define V4L_EVENT_CAM_REQ_MGR_ERROR 1
-#define V4L_EVENT_CAM_REQ_MGR_SOF_BOOT_TS 2
-#define V4L_EVENT_CAM_REQ_MGR_MAX 3
-#define CAM_REQ_MGR_SOF_EVENT_SUCCESS 0
-#define CAM_REQ_MGR_SOF_EVENT_ERROR 1
-#define CAM_REQ_MGR_LINK_ACTIVATE 0
-#define CAM_REQ_MGR_LINK_DEACTIVATE 1
-#define CAM_REQ_MGR_FLUSH_TYPE_ALL 0
-#define CAM_REQ_MGR_FLUSH_TYPE_CANCEL_REQ 1
-#define CAM_REQ_MGR_FLUSH_TYPE_MAX 2
-#define CAM_REQ_MGR_SYNC_MODE_NO_SYNC 0
-#define CAM_REQ_MGR_SYNC_MODE_SYNC 1
-struct cam_req_mgr_event_data {
- int32_t session_hdl;
- int32_t link_hdl;
- int32_t frame_id;
- int32_t reserved;
- int64_t req_id;
- uint64_t tv_sec;
- uint64_t tv_usec;
-};
-struct cam_req_mgr_session_info {
- int32_t session_hdl;
- int32_t reserved;
-};
-struct cam_req_mgr_link_info {
- int32_t session_hdl;
- uint32_t num_devices;
- int32_t dev_hdls[CAM_REQ_MGR_MAX_HANDLES];
- int32_t link_hdl;
-};
-struct cam_req_mgr_unlink_info {
- int32_t session_hdl;
- int32_t link_hdl;
-};
-struct cam_req_mgr_flush_info {
- int32_t session_hdl;
- int32_t link_hdl;
- uint32_t flush_type;
- uint32_t reserved;
- int64_t req_id;
-};
-struct cam_req_mgr_sched_request {
- int32_t session_hdl;
- int32_t link_hdl;
- int32_t bubble_enable;
- int32_t sync_mode;
- int64_t req_id;
-};
-struct cam_req_mgr_sync_mode {
- int32_t session_hdl;
- int32_t sync_mode;
- int32_t num_links;
- int32_t link_hdls[MAX_LINKS_PER_SESSION];
- int32_t master_link_hdl;
- int32_t reserved;
-};
-struct cam_req_mgr_link_control {
- int32_t ops;
- int32_t session_hdl;
- int32_t num_links;
- int32_t reserved;
- int32_t link_hdls[MAX_LINKS_PER_SESSION];
-};
-#define CAM_REQ_MGR_CREATE_DEV_NODES (CAM_COMMON_OPCODE_MAX + 1)
-#define CAM_REQ_MGR_CREATE_SESSION (CAM_COMMON_OPCODE_MAX + 2)
-#define CAM_REQ_MGR_DESTROY_SESSION (CAM_COMMON_OPCODE_MAX + 3)
-#define CAM_REQ_MGR_LINK (CAM_COMMON_OPCODE_MAX + 4)
-#define CAM_REQ_MGR_UNLINK (CAM_COMMON_OPCODE_MAX + 5)
-#define CAM_REQ_MGR_SCHED_REQ (CAM_COMMON_OPCODE_MAX + 6)
-#define CAM_REQ_MGR_FLUSH_REQ (CAM_COMMON_OPCODE_MAX + 7)
-#define CAM_REQ_MGR_SYNC_MODE (CAM_COMMON_OPCODE_MAX + 8)
-#define CAM_REQ_MGR_ALLOC_BUF (CAM_COMMON_OPCODE_MAX + 9)
-#define CAM_REQ_MGR_MAP_BUF (CAM_COMMON_OPCODE_MAX + 10)
-#define CAM_REQ_MGR_RELEASE_BUF (CAM_COMMON_OPCODE_MAX + 11)
-#define CAM_REQ_MGR_CACHE_OPS (CAM_COMMON_OPCODE_MAX + 12)
-#define CAM_REQ_MGR_LINK_CONTROL (CAM_COMMON_OPCODE_MAX + 13)
-#define CAM_MEM_FLAG_HW_READ_WRITE (1 << 0)
-#define CAM_MEM_FLAG_HW_READ_ONLY (1 << 1)
-#define CAM_MEM_FLAG_HW_WRITE_ONLY (1 << 2)
-#define CAM_MEM_FLAG_KMD_ACCESS (1 << 3)
-#define CAM_MEM_FLAG_UMD_ACCESS (1 << 4)
-#define CAM_MEM_FLAG_PROTECTED_MODE (1 << 5)
-#define CAM_MEM_FLAG_CMD_BUF_TYPE (1 << 6)
-#define CAM_MEM_FLAG_PIXEL_BUF_TYPE (1 << 7)
-#define CAM_MEM_FLAG_STATS_BUF_TYPE (1 << 8)
-#define CAM_MEM_FLAG_PACKET_BUF_TYPE (1 << 9)
-#define CAM_MEM_FLAG_CACHE (1 << 10)
-#define CAM_MEM_FLAG_HW_SHARED_ACCESS (1 << 11)
-#define CAM_MEM_MMU_MAX_HANDLE 16
-#define CAM_MEM_BUFQ_MAX 1024
-#define CAM_MEM_MGR_SECURE_BIT_POS 15
-#define CAM_MEM_MGR_HDL_IDX_SIZE 15
-#define CAM_MEM_MGR_HDL_FD_SIZE 16
-#define CAM_MEM_MGR_HDL_IDX_END_POS 16
-#define CAM_MEM_MGR_HDL_FD_END_POS 32
-#define CAM_MEM_MGR_HDL_IDX_MASK ((1 << CAM_MEM_MGR_HDL_IDX_SIZE) - 1)
-#define GET_MEM_HANDLE(idx,fd) ((idx & CAM_MEM_MGR_HDL_IDX_MASK) | (fd << (CAM_MEM_MGR_HDL_FD_END_POS - CAM_MEM_MGR_HDL_FD_SIZE)))
-#define CAM_MEM_MGR_GET_HDL_IDX(hdl) (hdl & CAM_MEM_MGR_HDL_IDX_MASK)
-#define CAM_MEM_MGR_SET_SECURE_HDL(hdl,flag) ((flag) ? (hdl |= (1 << CAM_MEM_MGR_SECURE_BIT_POS)) : ((hdl) &= ~(1 << CAM_MEM_MGR_SECURE_BIT_POS)))
-#define CAM_MEM_MGR_IS_SECURE_HDL(hdl) (((hdl) & (1 << CAM_MEM_MGR_SECURE_BIT_POS)) >> CAM_MEM_MGR_SECURE_BIT_POS)
-#define CAM_MEM_DMA_NONE 0
-#define CAM_MEM_DMA_BIDIRECTIONAL 1
-#define CAM_MEM_DMA_TO_DEVICE 2
-#define CAM_MEM_DMA_FROM_DEVICE 3
-#define CAM_MEM_CLEAN_CACHE 1
-#define CAM_MEM_INV_CACHE 2
-#define CAM_MEM_CLEAN_INV_CACHE 3
-struct cam_mem_alloc_out_params {
- uint32_t buf_handle;
- int32_t fd;
- uint64_t vaddr;
-};
-struct cam_mem_map_out_params {
- uint32_t buf_handle;
- uint32_t reserved;
- uint64_t vaddr;
-};
-struct cam_mem_mgr_alloc_cmd {
- uint64_t len;
- uint64_t align;
- int32_t mmu_hdls[CAM_MEM_MMU_MAX_HANDLE];
- uint32_t num_hdl;
- uint32_t flags;
- struct cam_mem_alloc_out_params out;
-};
-struct cam_mem_mgr_map_cmd {
- int32_t mmu_hdls[CAM_MEM_MMU_MAX_HANDLE];
- uint32_t num_hdl;
- uint32_t flags;
- int32_t fd;
- uint32_t reserved;
- struct cam_mem_map_out_params out;
-};
-struct cam_mem_mgr_release_cmd {
- int32_t buf_handle;
- uint32_t reserved;
-};
-struct cam_mem_cache_ops_cmd {
- int32_t buf_handle;
- uint32_t mem_cache_ops;
-};
-#define CAM_REQ_MGR_ERROR_TYPE_DEVICE 0
-#define CAM_REQ_MGR_ERROR_TYPE_REQUEST 1
-#define CAM_REQ_MGR_ERROR_TYPE_BUFFER 2
-struct cam_req_mgr_error_msg {
- uint32_t error_type;
- uint32_t request_id;
- int32_t device_hdl;
- int32_t link_hdl;
- uint64_t resource_size;
-};
-struct cam_req_mgr_frame_msg {
- uint64_t request_id;
- uint64_t frame_id;
- uint64_t timestamp;
- int32_t link_hdl;
- uint32_t sof_status;
-};
-struct cam_req_mgr_message {
- int32_t session_hdl;
- int32_t reserved;
- union {
- struct cam_req_mgr_error_msg err_msg;
- struct cam_req_mgr_frame_msg frame_msg;
- } u;
-};
-#endif
-
diff --git a/sdm710/kernel-headers/media/cam_sensor.h b/sdm710/kernel-headers/media/cam_sensor.h
deleted file mode 100644
index 309c66ad..00000000
--- a/sdm710/kernel-headers/media/cam_sensor.h
+++ /dev/null
@@ -1,239 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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_CAM_SENSOR_H__
-#define __UAPI_CAM_SENSOR_H__
-#include <linux/types.h>
-#include <linux/ioctl.h>
-#include <media/cam_defs.h>
-#define CAM_SENSOR_PROBE_CMD (CAM_COMMON_OPCODE_MAX + 1)
-#define CAM_FLASH_MAX_LED_TRIGGERS 3
-#define MAX_OIS_NAME_SIZE 32
-#define CAM_CSIPHY_SECURE_MODE_ENABLED 1
-#define MAX_RAINBOW_CONFIG_SIZE 32
-enum rainbow_op_type {
- RAINBOW_SEQ_READ,
- RAINBOW_RANDOM_READ,
- RAINBOW_SEQ_WRITE,
- RAINBOW_RANDOM_WRITE
-};
-struct rainbow_config {
- enum rainbow_op_type operation;
- uint32_t size;
- uint32_t reg_addr[MAX_RAINBOW_CONFIG_SIZE];
- uint32_t reg_data[MAX_RAINBOW_CONFIG_SIZE];
-} __attribute__((packed));
-#define RAINBOW_CONFIG _IOWR('R', 1, struct rainbow_config)
-struct cam_sensor_query_cap {
- uint32_t slot_info;
- uint32_t secure_camera;
- uint32_t pos_pitch;
- uint32_t pos_roll;
- uint32_t pos_yaw;
- uint32_t actuator_slot_id;
- uint32_t eeprom_slot_id;
- uint32_t ois_slot_id;
- uint32_t flash_slot_id;
- uint32_t csiphy_slot_id;
-} __attribute__((packed));
-struct cam_csiphy_query_cap {
- uint32_t slot_info;
- uint32_t version;
- uint32_t clk_lane;
- uint32_t reserved;
-} __attribute__((packed));
-struct cam_actuator_query_cap {
- uint32_t slot_info;
- uint32_t reserved;
-} __attribute__((packed));
-struct cam_eeprom_query_cap_t {
- uint32_t slot_info;
- uint16_t eeprom_kernel_probe;
- uint16_t reserved;
-} __attribute__((packed));
-struct cam_ois_query_cap_t {
- uint32_t slot_info;
- uint16_t reserved;
-} __attribute__((packed));
-struct cam_cmd_i2c_info {
- uint16_t slave_addr;
- uint8_t i2c_freq_mode;
- uint8_t cmd_type;
-} __attribute__((packed));
-struct cam_cmd_get_ois_data {
- uint32_t reg_addr;
- uint32_t reg_data;
- uint64_t query_size_handle;
- uint64_t query_data_handle;
-} __attribute__((packed));
-struct cam_ois_shift {
- int16_t ois_shift_x;
- int16_t ois_shift_y;
- int64_t time_readout;
-} __attribute__((packed));
-struct cam_ois_opcode {
- uint32_t prog;
- uint32_t coeff;
- uint32_t pheripheral;
- uint32_t memory;
-} __attribute__((packed));
-struct cam_cmd_ois_info {
- uint16_t slave_addr;
- uint8_t i2c_freq_mode;
- uint8_t cmd_type;
- uint8_t ois_fw_flag;
- uint8_t is_ois_calib;
- char ois_name[MAX_OIS_NAME_SIZE];
- struct cam_ois_opcode opcode;
-} __attribute__((packed));
-struct cam_cmd_probe {
- uint8_t data_type;
- uint8_t addr_type;
- uint8_t op_code;
- uint8_t cmd_type;
- uint32_t reg_addr;
- uint32_t expected_data;
- uint32_t data_mask;
- uint16_t camera_id;
- uint8_t fw_update_flag;
- uint16_t reserved;
-} __attribute__((packed));
-struct cam_power_settings {
- uint16_t power_seq_type;
- uint16_t reserved;
- uint32_t config_val_low;
- uint32_t config_val_high;
-} __attribute__((packed));
-struct cam_cmd_power {
- uint16_t count;
- uint8_t reserved;
- uint8_t cmd_type;
- struct cam_power_settings power_settings[1];
-} __attribute__((packed));
-struct i2c_rdwr_header {
- uint16_t count;
- uint8_t op_code;
- uint8_t cmd_type;
- uint8_t data_type;
- uint8_t addr_type;
- uint16_t slave_addr;
-} __attribute__((packed));
-struct i2c_random_wr_payload {
- uint32_t reg_addr;
- uint32_t reg_data;
-} __attribute__((packed));
-struct cam_cmd_i2c_random_wr {
- struct i2c_rdwr_header header;
- struct i2c_random_wr_payload random_wr_payload[1];
-} __attribute__((packed));
-struct cam_cmd_read {
- uint32_t reg_data;
- uint32_t reserved;
-} __attribute__((packed));
-struct cam_cmd_i2c_continuous_wr {
- struct i2c_rdwr_header header;
- uint32_t reg_addr;
- struct cam_cmd_read data_read[1];
-} __attribute__((packed));
-struct cam_cmd_i2c_random_rd {
- struct i2c_rdwr_header header;
- struct cam_cmd_read data_read[1];
-} __attribute__((packed));
-struct cam_cmd_i2c_continuous_rd {
- struct i2c_rdwr_header header;
- uint32_t reg_addr;
-} __attribute__((packed));
-struct cam_cmd_conditional_wait {
- uint8_t data_type;
- uint8_t addr_type;
- uint8_t op_code;
- uint8_t cmd_type;
- uint16_t timeout;
- uint16_t reserved;
- uint32_t reg_addr;
- uint32_t reg_data;
- uint32_t data_mask;
-} __attribute__((packed));
-struct cam_cmd_unconditional_wait {
- int16_t delay;
- uint8_t op_code;
- uint8_t cmd_type;
-} __attribute__((packed));
-struct cam_csiphy_info {
- uint16_t lane_mask;
- uint16_t lane_assign;
- uint8_t csiphy_3phase;
- uint8_t combo_mode;
- uint8_t lane_cnt;
- uint8_t secure_mode;
- uint64_t settle_time;
- uint64_t data_rate;
-} __attribute__((packed));
-struct cam_csiphy_acquire_dev_info {
- uint32_t combo_mode;
- uint32_t reserved;
-} __attribute__((packed));
-struct cam_sensor_acquire_dev {
- uint32_t session_handle;
- uint32_t device_handle;
- uint32_t handle_type;
- uint32_t reserved;
- uint64_t info_handle;
-} __attribute__((packed));
-struct cam_sensor_streamon_dev {
- uint32_t session_handle;
- uint32_t device_handle;
- uint32_t handle_type;
- uint32_t reserved;
- uint64_t info_handle;
-} __attribute__((packed));
-struct cam_flash_init {
- uint8_t flash_type;
- uint16_t reserved;
- uint8_t cmd_type;
-} __attribute__((packed));
-struct cam_flash_set_rer {
- uint16_t count;
- uint8_t opcode;
- uint8_t cmd_type;
- uint16_t num_iteration;
- uint16_t reserved;
- uint32_t led_on_delay_ms;
- uint32_t led_off_delay_ms;
- uint32_t led_current_ma[CAM_FLASH_MAX_LED_TRIGGERS];
-} __attribute__((packed));
-struct cam_flash_set_on_off {
- uint16_t count;
- uint8_t opcode;
- uint8_t cmd_type;
- uint32_t led_current_ma[CAM_FLASH_MAX_LED_TRIGGERS];
-} __attribute__((packed));
-struct cam_flash_query_curr {
- uint16_t reserved;
- uint8_t opcode;
- uint8_t cmd_type;
- uint32_t query_current_ma;
-} __attribute__((packed));
-struct cam_flash_query_cap_info {
- uint32_t slot_info;
- uint32_t max_current_flash[CAM_FLASH_MAX_LED_TRIGGERS];
- uint32_t max_duration_flash[CAM_FLASH_MAX_LED_TRIGGERS];
- uint32_t max_current_torch[CAM_FLASH_MAX_LED_TRIGGERS];
-} __attribute__((packed));
-#endif
-
diff --git a/sdm710/kernel-headers/media/cam_sync.h b/sdm710/kernel-headers/media/cam_sync.h
deleted file mode 100644
index 365ffd7e..00000000
--- a/sdm710/kernel-headers/media/cam_sync.h
+++ /dev/null
@@ -1,79 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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_CAM_SYNC_H__
-#define __UAPI_CAM_SYNC_H__
-#include <linux/videodev2.h>
-#include <linux/types.h>
-#include <linux/ioctl.h>
-#include <linux/media.h>
-#define CAM_SYNC_DEVICE_NAME "cam_sync_device"
-#define CAM_SYNC_V4L_EVENT (V4L2_EVENT_PRIVATE_START + 0)
-#define CAM_SYNC_V4L_EVENT_ID_CB_TRIG 0
-#define CAM_SYNC_USER_PAYLOAD_SIZE 2
-#define CAM_SYNC_DEVICE_TYPE (MEDIA_ENT_F_OLD_BASE)
-#define CAM_SYNC_GET_PAYLOAD_PTR(ev,type) (type *) ((char *) ev.u.data + sizeof(struct cam_sync_ev_header))
-#define CAM_SYNC_GET_HEADER_PTR(ev) ((struct cam_sync_ev_header *) ev.u.data)
-#define CAM_SYNC_STATE_INVALID 0
-#define CAM_SYNC_STATE_ACTIVE 1
-#define CAM_SYNC_STATE_SIGNALED_SUCCESS 2
-#define CAM_SYNC_STATE_SIGNALED_ERROR 3
-struct cam_sync_ev_header {
- int32_t sync_obj;
- int32_t status;
-};
-struct cam_sync_info {
- char name[64];
- int32_t sync_obj;
-};
-struct cam_sync_signal {
- int32_t sync_obj;
- uint32_t sync_state;
-};
-struct cam_sync_merge {
- __u64 sync_objs;
- uint32_t num_objs;
- int32_t merged;
-};
-struct cam_sync_userpayload_info {
- int32_t sync_obj;
- uint32_t reserved;
- __u64 payload[CAM_SYNC_USER_PAYLOAD_SIZE];
-};
-struct cam_sync_wait {
- int32_t sync_obj;
- uint32_t reserved;
- uint64_t timeout_ms;
-};
-struct cam_private_ioctl_arg {
- __u32 id;
- __u32 size;
- __u32 result;
- __u32 reserved;
- __u64 ioctl_ptr;
-};
-#define CAM_PRIVATE_IOCTL_CMD _IOWR('V', BASE_VIDIOC_PRIVATE, struct cam_private_ioctl_arg)
-#define CAM_SYNC_CREATE 0
-#define CAM_SYNC_DESTROY 1
-#define CAM_SYNC_SIGNAL 2
-#define CAM_SYNC_MERGE 3
-#define CAM_SYNC_REGISTER_PAYLOAD 4
-#define CAM_SYNC_DEREGISTER_PAYLOAD 5
-#define CAM_SYNC_WAIT 6
-#endif
-
diff --git a/sdm710/kernel-headers/media/msm_cam_sensor.h b/sdm710/kernel-headers/media/msm_cam_sensor.h
deleted file mode 100644
index fbb50849..00000000
--- a/sdm710/kernel-headers/media/msm_cam_sensor.h
+++ /dev/null
@@ -1,540 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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>
-#include <linux/types.h>
-#include <linux/i2c.h>
-#define I2C_SEQ_REG_SETTING_MAX 5
-#define MSM_SENSOR_MCLK_8HZ 8000000
-#define MSM_SENSOR_MCLK_16HZ 16000000
-#define MSM_SENSOR_MCLK_24HZ 24000000
-#define MAX_SENSOR_NAME 32
-#define MAX_ACTUATOR_AF_TOTAL_STEPS 1024
-#define MAX_OIS_MOD_NAME_SIZE 32
-#define MAX_OIS_NAME_SIZE 32
-#define MAX_OIS_REG_SETTINGS 800
-#define MOVE_NEAR 0
-#define MOVE_FAR 1
-#define MSM_ACTUATOR_MOVE_SIGNED_FAR - 1
-#define MSM_ACTUATOR_MOVE_SIGNED_NEAR 1
-#define MAX_ACTUATOR_REGION 5
-#define MAX_EEPROM_NAME 32
-#define MAX_AF_ITERATIONS 3
-#define MAX_NUMBER_OF_STEPS 47
-#define MAX_REGULATOR 5
-#define FLASH_QUERY_CURRENT 1
-#define MSM_V4L2_PIX_FMT_META v4l2_fourcc('M', 'E', 'T', 'A')
-#define MSM_V4L2_PIX_FMT_META10 v4l2_fourcc('M', 'E', '1', '0')
-#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')
-#define MSM_V4L2_PIX_FMT_SRGGB14 v4l2_fourcc('R', 'G', '1', '4')
-enum flash_type {
- LED_FLASH = 1,
- STROBE_FLASH,
- GPIO_FLASH
-};
-enum msm_sensor_resolution_t {
- MSM_SENSOR_RES_FULL,
- MSM_SENSOR_RES_QTR,
- MSM_SENSOR_RES_2,
- MSM_SENSOR_RES_3,
- MSM_SENSOR_RES_4,
- MSM_SENSOR_RES_5,
- MSM_SENSOR_RES_6,
- MSM_SENSOR_RES_7,
- MSM_SENSOR_INVALID_RES,
-};
-enum msm_camera_stream_type_t {
- MSM_CAMERA_STREAM_PREVIEW,
- MSM_CAMERA_STREAM_SNAPSHOT,
- MSM_CAMERA_STREAM_VIDEO,
- MSM_CAMERA_STREAM_INVALID,
-};
-enum sensor_sub_module_t {
- SUB_MODULE_SENSOR,
- SUB_MODULE_CHROMATIX,
- SUB_MODULE_ACTUATOR,
- SUB_MODULE_EEPROM,
- SUB_MODULE_LED_FLASH,
- SUB_MODULE_STROBE_FLASH,
- SUB_MODULE_CSID,
- SUB_MODULE_CSID_3D,
- SUB_MODULE_CSIPHY,
- SUB_MODULE_CSIPHY_3D,
- SUB_MODULE_OIS,
- SUB_MODULE_EXT,
- SUB_MODULE_IR_LED,
- SUB_MODULE_IR_CUT,
- SUB_MODULE_LASER_LED,
- SUB_MODULE_MAX,
-};
-enum {
- MSM_CAMERA_EFFECT_MODE_OFF,
- MSM_CAMERA_EFFECT_MODE_MONO,
- MSM_CAMERA_EFFECT_MODE_NEGATIVE,
- MSM_CAMERA_EFFECT_MODE_SOLARIZE,
- MSM_CAMERA_EFFECT_MODE_SEPIA,
- MSM_CAMERA_EFFECT_MODE_POSTERIZE,
- MSM_CAMERA_EFFECT_MODE_WHITEBOARD,
- MSM_CAMERA_EFFECT_MODE_BLACKBOARD,
- MSM_CAMERA_EFFECT_MODE_AQUA,
- MSM_CAMERA_EFFECT_MODE_EMBOSS,
- MSM_CAMERA_EFFECT_MODE_SKETCH,
- MSM_CAMERA_EFFECT_MODE_NEON,
- MSM_CAMERA_EFFECT_MODE_MAX
-};
-enum {
- MSM_CAMERA_WB_MODE_AUTO,
- MSM_CAMERA_WB_MODE_CUSTOM,
- MSM_CAMERA_WB_MODE_INCANDESCENT,
- MSM_CAMERA_WB_MODE_FLUORESCENT,
- MSM_CAMERA_WB_MODE_WARM_FLUORESCENT,
- MSM_CAMERA_WB_MODE_DAYLIGHT,
- MSM_CAMERA_WB_MODE_CLOUDY_DAYLIGHT,
- MSM_CAMERA_WB_MODE_TWILIGHT,
- MSM_CAMERA_WB_MODE_SHADE,
- MSM_CAMERA_WB_MODE_OFF,
- MSM_CAMERA_WB_MODE_MAX
-};
-enum {
- MSM_CAMERA_SCENE_MODE_OFF,
- MSM_CAMERA_SCENE_MODE_AUTO,
- MSM_CAMERA_SCENE_MODE_LANDSCAPE,
- MSM_CAMERA_SCENE_MODE_SNOW,
- MSM_CAMERA_SCENE_MODE_BEACH,
- MSM_CAMERA_SCENE_MODE_SUNSET,
- MSM_CAMERA_SCENE_MODE_NIGHT,
- MSM_CAMERA_SCENE_MODE_PORTRAIT,
- MSM_CAMERA_SCENE_MODE_BACKLIGHT,
- MSM_CAMERA_SCENE_MODE_SPORTS,
- MSM_CAMERA_SCENE_MODE_ANTISHAKE,
- MSM_CAMERA_SCENE_MODE_FLOWERS,
- MSM_CAMERA_SCENE_MODE_CANDLELIGHT,
- MSM_CAMERA_SCENE_MODE_FIREWORKS,
- MSM_CAMERA_SCENE_MODE_PARTY,
- MSM_CAMERA_SCENE_MODE_NIGHT_PORTRAIT,
- MSM_CAMERA_SCENE_MODE_THEATRE,
- MSM_CAMERA_SCENE_MODE_ACTION,
- MSM_CAMERA_SCENE_MODE_AR,
- MSM_CAMERA_SCENE_MODE_FACE_PRIORITY,
- MSM_CAMERA_SCENE_MODE_BARCODE,
- MSM_CAMERA_SCENE_MODE_HDR,
- MSM_CAMERA_SCENE_MODE_MAX
-};
-enum csid_cfg_type_t {
- CSID_INIT,
- CSID_CFG,
- CSID_TESTMODE_CFG,
- CSID_RELEASE,
-};
-enum csiphy_cfg_type_t {
- CSIPHY_INIT,
- CSIPHY_CFG,
- CSIPHY_RELEASE,
-};
-enum camera_vreg_type {
- VREG_TYPE_DEFAULT,
- VREG_TYPE_CUSTOM,
-};
-enum sensor_af_t {
- SENSOR_AF_FOCUSSED,
- SENSOR_AF_NOT_FOCUSSED,
-};
-enum cci_i2c_master_t {
- MASTER_0,
- MASTER_1,
- MASTER_MAX,
-};
-struct msm_camera_i2c_array_write_config {
- struct msm_camera_i2c_reg_setting conf_array;
- uint16_t slave_addr;
-};
-struct msm_camera_i2c_read_config {
- 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;
- uint16_t data;
-};
-struct msm_camera_csi2_params {
- struct msm_camera_csid_params csid_params;
- struct msm_camera_csiphy_params csiphy_params;
- uint8_t csi_clk_scale_enable;
-};
-struct msm_camera_csi_lane_params {
- uint16_t csi_lane_assign;
- uint16_t csi_lane_mask;
-};
-struct csi_lane_params_t {
- uint16_t csi_lane_assign;
- uint8_t csi_lane_mask;
- uint8_t csi_if;
- int8_t csid_core[2];
- uint8_t csi_phy_sel;
-};
-struct msm_sensor_info_t {
- char sensor_name[MAX_SENSOR_NAME];
- uint32_t session_id;
- int32_t subdev_id[SUB_MODULE_MAX];
- int32_t subdev_intf[SUB_MODULE_MAX];
- uint8_t is_mount_angle_valid;
- uint32_t sensor_mount_angle;
- int modes_supported;
- enum camb_position_t position;
-};
-struct camera_vreg_t {
- const char * reg_name;
- int min_voltage;
- int max_voltage;
- int op_mode;
- uint32_t delay;
- const char * custom_vreg_name;
- enum camera_vreg_type type;
-};
-struct sensorb_cfg_data {
- int cfgtype;
- union {
- 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;
- } cfg;
-};
-struct csid_cfg_data {
- enum csid_cfg_type_t cfgtype;
- union {
- uint32_t csid_version;
- struct msm_camera_csid_params * csid_params;
- struct msm_camera_csid_testmode_parms * csid_testmode_params;
- } cfg;
-};
-struct csiphy_cfg_data {
- enum csiphy_cfg_type_t cfgtype;
- union {
- struct msm_camera_csiphy_params * csiphy_params;
- struct msm_camera_csi_lane_params * csi_lane_params;
- } cfg;
-};
-enum eeprom_cfg_type_t {
- CFG_EEPROM_GET_INFO,
- CFG_EEPROM_GET_CAL_DATA,
- CFG_EEPROM_READ_CAL_DATA,
- CFG_EEPROM_WRITE_DATA,
- CFG_EEPROM_GET_MM_INFO,
- CFG_EEPROM_INIT,
-};
-struct eeprom_get_t {
- uint32_t num_bytes;
-};
-struct eeprom_read_t {
- uint8_t * dbuffer;
- uint32_t num_bytes;
-};
-struct eeprom_write_t {
- uint8_t * dbuffer;
- uint32_t num_bytes;
-};
-struct eeprom_get_cmm_t {
- uint32_t cmm_support;
- uint32_t cmm_compression;
- uint32_t cmm_size;
-};
-struct msm_eeprom_info_t {
- struct msm_sensor_power_setting_array * power_setting_array;
- enum i2c_freq_mode_t i2c_freq_mode;
- struct msm_eeprom_memory_map_array * mem_map_array;
-};
-struct msm_ir_led_cfg_data_t {
- enum msm_ir_led_cfg_type_t cfg_type;
- int32_t pwm_duty_on_ns;
- int32_t pwm_period_ns;
-};
-struct msm_ir_cut_cfg_data_t {
- enum msm_ir_cut_cfg_type_t cfg_type;
-};
-struct msm_laser_led_cfg_data_t {
- enum msm_laser_led_cfg_type_t cfg_type;
- void * setting;
- void * debug_reg;
- uint32_t debug_reg_size;
- uint16_t i2c_addr;
- enum i2c_freq_mode_t i2c_freq_mode;
-};
-struct msm_eeprom_cfg_data {
- enum eeprom_cfg_type_t cfgtype;
- uint8_t is_supported;
- union {
- char eeprom_name[MAX_EEPROM_NAME];
- struct eeprom_get_t get_data;
- 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;
- } cfg;
-};
-enum msm_sensor_cfg_type_t {
- CFG_SET_SLAVE_INFO,
- CFG_SLAVE_READ_I2C,
- CFG_WRITE_I2C_ARRAY,
- CFG_SLAVE_WRITE_I2C_ARRAY,
- CFG_WRITE_I2C_SEQ_ARRAY,
- CFG_POWER_UP,
- CFG_POWER_DOWN,
- CFG_SET_STOP_STREAM_SETTING,
- CFG_GET_SENSOR_INFO,
- CFG_GET_SENSOR_INIT_PARAMS,
- CFG_SET_INIT_SETTING,
- CFG_SET_RESOLUTION,
- CFG_SET_STOP_STREAM,
- CFG_SET_START_STREAM,
- CFG_SET_SATURATION,
- CFG_SET_CONTRAST,
- CFG_SET_SHARPNESS,
- CFG_SET_ISO,
- CFG_SET_EXPOSURE_COMPENSATION,
- CFG_SET_ANTIBANDING,
- CFG_SET_BESTSHOT_MODE,
- CFG_SET_EFFECT,
- CFG_SET_WHITE_BALANCE,
- CFG_SET_AUTOFOCUS,
- CFG_CANCEL_AUTOFOCUS,
- CFG_SET_STREAM_TYPE,
- CFG_SET_I2C_SYNC_PARAM,
- CFG_WRITE_I2C_ARRAY_ASYNC,
- CFG_WRITE_I2C_ARRAY_SYNC,
- CFG_WRITE_I2C_ARRAY_SYNC_BLOCK,
-};
-enum msm_actuator_cfg_type_t {
- CFG_GET_ACTUATOR_INFO,
- CFG_SET_ACTUATOR_INFO,
- CFG_SET_DEFAULT_FOCUS,
- CFG_MOVE_FOCUS,
- CFG_SET_POSITION,
- CFG_ACTUATOR_POWERDOWN,
- CFG_ACTUATOR_POWERUP,
- CFG_ACTUATOR_INIT,
-};
-struct msm_ois_opcode {
- uint32_t prog;
- uint32_t coeff;
- uint32_t pheripheral;
- uint32_t memory;
-};
-enum msm_ois_cfg_type_t {
- CFG_OIS_INIT,
- CFG_OIS_POWERDOWN,
- CFG_OIS_POWERUP,
- CFG_OIS_CONTROL,
- CFG_OIS_I2C_WRITE_SEQ_TABLE,
-};
-enum msm_ois_cfg_download_type_t {
- CFG_OIS_DOWNLOAD,
- CFG_OIS_DATA_CONFIG,
-};
-enum msm_ois_i2c_operation {
- MSM_OIS_WRITE = 0,
- MSM_OIS_POLL,
- MSM_OIS_READ,
-};
-#define MSM_OIS_READ MSM_OIS_READ
-struct reg_settings_ois_t {
- uint16_t reg_addr;
- enum msm_camera_i2c_reg_addr_type addr_type;
- uint32_t reg_data;
- enum msm_camera_i2c_data_type data_type;
- enum msm_ois_i2c_operation i2c_operation;
- uint32_t delay;
-};
-struct msm_ois_params_t {
- uint16_t data_size;
- uint16_t setting_size;
- 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;
- struct reg_settings_ois_t * settings;
-};
-struct msm_ois_set_info_t {
- struct msm_ois_params_t ois_params;
-};
-struct msm_actuator_move_params_t {
- int8_t dir;
- int8_t sign_dir;
- int16_t dest_step_pos;
- int32_t num_steps;
- uint16_t curr_lens_pos;
- struct damping_params_t * ringing_params;
-};
-struct msm_actuator_tuning_params_t {
- int16_t initial_code;
- uint16_t pwd_step;
- uint16_t region_size;
- uint32_t total_steps;
- struct region_params_t * region_params;
-};
-struct park_lens_data_t {
- uint32_t damping_step;
- uint32_t damping_delay;
- uint32_t hw_params;
- uint32_t max_step;
-};
-struct msm_actuator_params_t {
- enum actuator_type act_type;
- uint8_t reg_tbl_size;
- uint16_t data_size;
- uint16_t init_setting_size;
- 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;
- struct msm_actuator_reg_params_t * reg_tbl_params;
- struct reg_settings_t * init_settings;
- struct park_lens_data_t park_lens;
-};
-struct msm_actuator_set_info_t {
- struct msm_actuator_params_t actuator_params;
- struct msm_actuator_tuning_params_t af_tuning_params;
-};
-struct msm_actuator_get_info_t {
- uint32_t focal_length_num;
- uint32_t focal_length_den;
- uint32_t f_number_num;
- uint32_t f_number_den;
- uint32_t f_pix_num;
- uint32_t f_pix_den;
- uint32_t total_f_dist_num;
- uint32_t total_f_dist_den;
- uint32_t hor_view_angle_num;
- uint32_t hor_view_angle_den;
- uint32_t ver_view_angle_num;
- uint32_t ver_view_angle_den;
-};
-enum af_camera_name {
- ACTUATOR_MAIN_CAM_0,
- ACTUATOR_MAIN_CAM_1,
- ACTUATOR_MAIN_CAM_2,
- ACTUATOR_MAIN_CAM_3,
- ACTUATOR_MAIN_CAM_4,
- ACTUATOR_MAIN_CAM_5,
- ACTUATOR_WEB_CAM_0,
- ACTUATOR_WEB_CAM_1,
- ACTUATOR_WEB_CAM_2,
-};
-struct msm_ois_slave_info {
- char ois_name[MAX_OIS_NAME_SIZE];
- uint32_t i2c_addr;
- struct msm_ois_opcode opcode;
-};
-struct msm_ois_cfg_data {
- int cfgtype;
- union {
- struct msm_ois_set_info_t set_info;
- struct msm_camera_i2c_seq_reg_setting * settings;
- } cfg;
-};
-struct msm_ois_cfg_download_data {
- int cfgtype;
- struct msm_ois_slave_info slave_info;
-};
-struct msm_actuator_set_position_t {
- uint16_t number_of_steps;
- uint32_t hw_params;
- uint16_t pos[MAX_NUMBER_OF_STEPS];
- uint16_t delay[MAX_NUMBER_OF_STEPS];
-};
-struct msm_actuator_cfg_data {
- int cfgtype;
- uint8_t is_af_supported;
- union {
- struct msm_actuator_move_params_t move;
- struct msm_actuator_set_info_t set_info;
- struct msm_actuator_get_info_t get_info;
- struct msm_actuator_set_position_t setpos;
- enum af_camera_name cam_name;
- } cfg;
-};
-enum msm_camera_led_config_t {
- MSM_CAMERA_LED_OFF,
- MSM_CAMERA_LED_LOW,
- MSM_CAMERA_LED_HIGH,
- MSM_CAMERA_LED_INIT,
- MSM_CAMERA_LED_RELEASE,
-};
-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];
- int32_t flash_duration[MAX_LED_TRIGGERS];
-};
-struct msm_flash_init_info_t {
- enum msm_flash_driver_type flash_driver_type;
- 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;
-};
-struct msm_flash_cfg_data_t {
- enum msm_flash_cfg_type_t cfg_type;
- int32_t flash_current[MAX_LED_TRIGGERS];
- 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;
- } cfg;
-};
-struct msm_flash_query_data_t {
- int32_t flags;
- int32_t query_type;
- int32_t max_avail_curr;
-};
-enum msm_sensor_init_cfg_type_t {
- CFG_SINIT_PROBE,
- CFG_SINIT_PROBE_DONE,
- CFG_SINIT_PROBE_WAIT_DONE,
-};
-struct sensor_init_cfg_data {
- enum msm_sensor_init_cfg_type_t cfgtype;
- struct msm_sensor_info_t probed_info;
- char entity_name[MAX_SENSOR_NAME];
- union {
- void * setting;
- } cfg;
-};
-#define VIDIOC_MSM_SENSOR_CFG _IOWR('V', BASE_VIDIOC_PRIVATE + 1, struct sensorb_cfg_data)
-#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)
-#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)
-#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)
-#define VIDIOC_MSM_FLASH_QUERY_DATA _IOWR('V', BASE_VIDIOC_PRIVATE + 15, struct msm_flash_query_data_t)
-#define VIDIOC_MSM_IR_LED_CFG _IOWR('V', BASE_VIDIOC_PRIVATE + 15, struct msm_ir_led_cfg_data_t)
-#define VIDIOC_MSM_IR_CUT_CFG _IOWR('V', BASE_VIDIOC_PRIVATE + 15, struct msm_ir_cut_cfg_data_t)
-#define VIDIOC_MSM_LASER_LED_CFG _IOWR('V', BASE_VIDIOC_PRIVATE + 16, struct msm_laser_led_cfg_data_t)
-#endif
-
diff --git a/sdm710/kernel-headers/media/msm_camera.h b/sdm710/kernel-headers/media/msm_camera.h
deleted file mode 100644
index 6024d151..00000000
--- a/sdm710/kernel-headers/media/msm_camera.h
+++ /dev/null
@@ -1,1707 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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_CAMERA_H
-#define __UAPI_MSM_CAMERA_H
-#define CAM_API_V1
-#include <linux/videodev2.h>
-#include <linux/types.h>
-#include <linux/ioctl.h>
-#include <linux/media.h>
-#include <linux/msm_ion.h>
-#define BIT(nr) (1UL << (nr))
-#define MSM_CAM_IOCTL_MAGIC 'm'
-#define MAX_SERVER_PAYLOAD_LENGTH 8192
-#define MSM_CAM_IOCTL_GET_SENSOR_INFO _IOR(MSM_CAM_IOCTL_MAGIC, 1, struct msm_camsensor_info *)
-#define MSM_CAM_IOCTL_REGISTER_PMEM _IOW(MSM_CAM_IOCTL_MAGIC, 2, struct msm_pmem_info *)
-#define MSM_CAM_IOCTL_UNREGISTER_PMEM _IOW(MSM_CAM_IOCTL_MAGIC, 3, unsigned int)
-#define MSM_CAM_IOCTL_CTRL_COMMAND _IOW(MSM_CAM_IOCTL_MAGIC, 4, struct msm_ctrl_cmd *)
-#define MSM_CAM_IOCTL_CONFIG_VFE _IOW(MSM_CAM_IOCTL_MAGIC, 5, struct msm_camera_vfe_cfg_cmd *)
-#define MSM_CAM_IOCTL_GET_STATS _IOR(MSM_CAM_IOCTL_MAGIC, 6, struct msm_camera_stats_event_ctrl *)
-#define MSM_CAM_IOCTL_GETFRAME _IOR(MSM_CAM_IOCTL_MAGIC, 7, struct msm_camera_get_frame *)
-#define MSM_CAM_IOCTL_ENABLE_VFE _IOW(MSM_CAM_IOCTL_MAGIC, 8, struct camera_enable_cmd *)
-#define MSM_CAM_IOCTL_CTRL_CMD_DONE _IOW(MSM_CAM_IOCTL_MAGIC, 9, struct camera_cmd *)
-#define MSM_CAM_IOCTL_CONFIG_CMD _IOW(MSM_CAM_IOCTL_MAGIC, 10, struct camera_cmd *)
-#define MSM_CAM_IOCTL_DISABLE_VFE _IOW(MSM_CAM_IOCTL_MAGIC, 11, struct camera_enable_cmd *)
-#define MSM_CAM_IOCTL_PAD_REG_RESET2 _IOW(MSM_CAM_IOCTL_MAGIC, 12, struct camera_enable_cmd *)
-#define MSM_CAM_IOCTL_VFE_APPS_RESET _IOW(MSM_CAM_IOCTL_MAGIC, 13, struct camera_enable_cmd *)
-#define MSM_CAM_IOCTL_RELEASE_FRAME_BUFFER _IOW(MSM_CAM_IOCTL_MAGIC, 14, struct camera_enable_cmd *)
-#define MSM_CAM_IOCTL_RELEASE_STATS_BUFFER _IOW(MSM_CAM_IOCTL_MAGIC, 15, struct msm_stats_buf *)
-#define MSM_CAM_IOCTL_AXI_CONFIG _IOW(MSM_CAM_IOCTL_MAGIC, 16, struct msm_camera_vfe_cfg_cmd *)
-#define MSM_CAM_IOCTL_GET_PICTURE _IOW(MSM_CAM_IOCTL_MAGIC, 17, struct msm_frame *)
-#define MSM_CAM_IOCTL_SET_CROP _IOW(MSM_CAM_IOCTL_MAGIC, 18, struct crop_info *)
-#define MSM_CAM_IOCTL_PICT_PP _IOW(MSM_CAM_IOCTL_MAGIC, 19, uint8_t *)
-#define MSM_CAM_IOCTL_PICT_PP_DONE _IOW(MSM_CAM_IOCTL_MAGIC, 20, struct msm_snapshot_pp_status *)
-#define MSM_CAM_IOCTL_SENSOR_IO_CFG _IOW(MSM_CAM_IOCTL_MAGIC, 21, struct sensor_cfg_data *)
-#define MSM_CAM_IOCTL_FLASH_LED_CFG _IOW(MSM_CAM_IOCTL_MAGIC, 22, unsigned int *)
-#define MSM_CAM_IOCTL_UNBLOCK_POLL_FRAME _IO(MSM_CAM_IOCTL_MAGIC, 23)
-#define MSM_CAM_IOCTL_CTRL_COMMAND_2 _IOW(MSM_CAM_IOCTL_MAGIC, 24, struct msm_ctrl_cmd *)
-#define MSM_CAM_IOCTL_AF_CTRL _IOR(MSM_CAM_IOCTL_MAGIC, 25, struct msm_ctrl_cmt_t *)
-#define MSM_CAM_IOCTL_AF_CTRL_DONE _IOW(MSM_CAM_IOCTL_MAGIC, 26, struct msm_ctrl_cmt_t *)
-#define MSM_CAM_IOCTL_CONFIG_VPE _IOW(MSM_CAM_IOCTL_MAGIC, 27, struct msm_camera_vpe_cfg_cmd *)
-#define MSM_CAM_IOCTL_AXI_VPE_CONFIG _IOW(MSM_CAM_IOCTL_MAGIC, 28, struct msm_camera_vpe_cfg_cmd *)
-#define MSM_CAM_IOCTL_STROBE_FLASH_CFG _IOW(MSM_CAM_IOCTL_MAGIC, 29, uint32_t *)
-#define MSM_CAM_IOCTL_STROBE_FLASH_CHARGE _IOW(MSM_CAM_IOCTL_MAGIC, 30, uint32_t *)
-#define MSM_CAM_IOCTL_STROBE_FLASH_RELEASE _IO(MSM_CAM_IOCTL_MAGIC, 31)
-#define MSM_CAM_IOCTL_FLASH_CTRL _IOW(MSM_CAM_IOCTL_MAGIC, 32, struct flash_ctrl_data *)
-#define MSM_CAM_IOCTL_ERROR_CONFIG _IOW(MSM_CAM_IOCTL_MAGIC, 33, uint32_t *)
-#define MSM_CAM_IOCTL_ABORT_CAPTURE _IO(MSM_CAM_IOCTL_MAGIC, 34)
-#define MSM_CAM_IOCTL_SET_FD_ROI _IOW(MSM_CAM_IOCTL_MAGIC, 35, struct fd_roi_info *)
-#define MSM_CAM_IOCTL_GET_CAMERA_INFO _IOR(MSM_CAM_IOCTL_MAGIC, 36, struct msm_camera_info *)
-#define MSM_CAM_IOCTL_UNBLOCK_POLL_PIC_FRAME _IO(MSM_CAM_IOCTL_MAGIC, 37)
-#define MSM_CAM_IOCTL_RELEASE_PIC_BUFFER _IOW(MSM_CAM_IOCTL_MAGIC, 38, struct camera_enable_cmd *)
-#define MSM_CAM_IOCTL_PUT_ST_FRAME _IOW(MSM_CAM_IOCTL_MAGIC, 39, struct msm_camera_st_frame *)
-#define MSM_CAM_IOCTL_V4L2_EVT_NOTIFY _IOW(MSM_CAM_IOCTL_MAGIC, 40, struct v4l2_event_and_payload)
-#define MSM_CAM_IOCTL_SET_MEM_MAP_INFO _IOR(MSM_CAM_IOCTL_MAGIC, 41, struct msm_mem_map_info *)
-#define MSM_CAM_IOCTL_ACTUATOR_IO_CFG _IOW(MSM_CAM_IOCTL_MAGIC, 42, struct msm_actuator_cfg_data *)
-#define MSM_CAM_IOCTL_MCTL_POST_PROC _IOW(MSM_CAM_IOCTL_MAGIC, 43, struct msm_mctl_post_proc_cmd *)
-#define MSM_CAM_IOCTL_RESERVE_FREE_FRAME _IOW(MSM_CAM_IOCTL_MAGIC, 44, struct msm_cam_evt_divert_frame *)
-#define MSM_CAM_IOCTL_RELEASE_FREE_FRAME _IOR(MSM_CAM_IOCTL_MAGIC, 45, struct msm_cam_evt_divert_frame *)
-#define MSM_CAM_IOCTL_PICT_PP_DIVERT_DONE _IOR(MSM_CAM_IOCTL_MAGIC, 46, struct msm_pp_frame *)
-#define MSM_CAM_IOCTL_SENSOR_V4l2_S_CTRL _IOR(MSM_CAM_IOCTL_MAGIC, 47, struct v4l2_control)
-#define MSM_CAM_IOCTL_SENSOR_V4l2_QUERY_CTRL _IOR(MSM_CAM_IOCTL_MAGIC, 48, struct v4l2_queryctrl)
-#define MSM_CAM_IOCTL_GET_KERNEL_SYSTEM_TIME _IOW(MSM_CAM_IOCTL_MAGIC, 49, struct timeval *)
-#define MSM_CAM_IOCTL_SET_VFE_OUTPUT_TYPE _IOW(MSM_CAM_IOCTL_MAGIC, 50, uint32_t *)
-#define MSM_CAM_IOCTL_MCTL_DIVERT_DONE _IOR(MSM_CAM_IOCTL_MAGIC, 51, struct msm_cam_evt_divert_frame *)
-#define MSM_CAM_IOCTL_GET_ACTUATOR_INFO _IOW(MSM_CAM_IOCTL_MAGIC, 52, struct msm_actuator_cfg_data *)
-#define MSM_CAM_IOCTL_EEPROM_IO_CFG _IOW(MSM_CAM_IOCTL_MAGIC, 53, struct msm_eeprom_cfg_data *)
-#define MSM_CAM_IOCTL_ISPIF_IO_CFG _IOR(MSM_CAM_IOCTL_MAGIC, 54, struct ispif_cfg_data *)
-#define MSM_CAM_IOCTL_STATS_REQBUF _IOR(MSM_CAM_IOCTL_MAGIC, 55, struct msm_stats_reqbuf *)
-#define MSM_CAM_IOCTL_STATS_ENQUEUEBUF _IOR(MSM_CAM_IOCTL_MAGIC, 56, struct msm_stats_buf_info *)
-#define MSM_CAM_IOCTL_STATS_FLUSH_BUFQ _IOR(MSM_CAM_IOCTL_MAGIC, 57, struct msm_stats_flush_bufq *)
-#define MSM_CAM_IOCTL_SET_MCTL_SDEV _IOW(MSM_CAM_IOCTL_MAGIC, 58, struct msm_mctl_set_sdev_data *)
-#define MSM_CAM_IOCTL_UNSET_MCTL_SDEV _IOW(MSM_CAM_IOCTL_MAGIC, 59, struct msm_mctl_set_sdev_data *)
-#define MSM_CAM_IOCTL_GET_INST_HANDLE _IOR(MSM_CAM_IOCTL_MAGIC, 60, uint32_t *)
-#define MSM_CAM_IOCTL_STATS_UNREG_BUF _IOR(MSM_CAM_IOCTL_MAGIC, 61, struct msm_stats_flush_bufq *)
-#define MSM_CAM_IOCTL_CSIC_IO_CFG _IOWR(MSM_CAM_IOCTL_MAGIC, 62, struct csic_cfg_data *)
-#define MSM_CAM_IOCTL_CSID_IO_CFG _IOWR(MSM_CAM_IOCTL_MAGIC, 63, struct csid_cfg_data *)
-#define MSM_CAM_IOCTL_CSIPHY_IO_CFG _IOR(MSM_CAM_IOCTL_MAGIC, 64, struct csiphy_cfg_data *)
-#define MSM_CAM_IOCTL_OEM _IOW(MSM_CAM_IOCTL_MAGIC, 65, struct sensor_cfg_data *)
-#define MSM_CAM_IOCTL_AXI_INIT _IOWR(MSM_CAM_IOCTL_MAGIC, 66, uint8_t *)
-#define MSM_CAM_IOCTL_AXI_RELEASE _IO(MSM_CAM_IOCTL_MAGIC, 67)
-struct v4l2_event_and_payload {
- struct v4l2_event evt;
- uint32_t payload_length;
- uint32_t transaction_id;
- void * payload;
-};
-struct msm_stats_reqbuf {
- int num_buf;
- int stats_type;
-};
-struct msm_stats_flush_bufq {
- int stats_type;
-};
-struct msm_mctl_pp_cmd {
- int32_t id;
- uint16_t length;
- void * value;
-};
-struct msm_mctl_post_proc_cmd {
- int32_t type;
- struct msm_mctl_pp_cmd cmd;
-};
-#define MSM_CAMERA_LED_OFF 0
-#define MSM_CAMERA_LED_LOW 1
-#define MSM_CAMERA_LED_HIGH 2
-#define MSM_CAMERA_LED_INIT 3
-#define MSM_CAMERA_LED_RELEASE 4
-#define MSM_CAMERA_STROBE_FLASH_NONE 0
-#define MSM_CAMERA_STROBE_FLASH_XENON 1
-#define MSM_MAX_CAMERA_SENSORS 5
-#define MAX_SENSOR_NAME 32
-#define MAX_CAM_NAME_SIZE 32
-#define MAX_ACT_MOD_NAME_SIZE 32
-#define MAX_ACT_NAME_SIZE 32
-#define NUM_ACTUATOR_DIR 2
-#define MAX_ACTUATOR_SCENARIO 8
-#define MAX_ACTUATOR_REGION 5
-#define MAX_ACTUATOR_INIT_SET 12
-#define MAX_ACTUATOR_TYPE_SIZE 32
-#define MAX_ACTUATOR_REG_TBL_SIZE 8
-#define MSM_MAX_CAMERA_CONFIGS 2
-#define PP_SNAP 0x01
-#define PP_RAW_SNAP ((0x01) << 1)
-#define PP_PREV ((0x01) << 2)
-#define PP_THUMB ((0x01) << 3)
-#define PP_MASK (PP_SNAP | PP_RAW_SNAP | PP_PREV | PP_THUMB)
-#define MSM_CAM_CTRL_CMD_DONE 0
-#define MSM_CAM_SENSOR_VFE_CMD 1
-#define MAX_PLANES 8
-struct msm_ctrl_cmd {
- uint16_t type;
- uint16_t length;
- void * value;
- uint16_t status;
- uint32_t timeout_ms;
- int resp_fd;
- int vnode_id;
- int queue_idx;
- uint32_t evt_id;
- uint32_t stream_type;
- int config_ident;
-};
-struct msm_cam_evt_msg {
- unsigned short type;
- unsigned short msg_id;
- unsigned int len;
- uint32_t frame_id;
- void * data;
- struct timespec timestamp;
-};
-struct msm_pp_frame_sp {
- unsigned long phy_addr;
- uint32_t y_off;
- uint32_t cbcr_off;
- uint32_t length;
- int32_t fd;
- uint32_t addr_offset;
- unsigned long vaddr;
-};
-struct msm_pp_frame_mp {
- unsigned long phy_addr;
- uint32_t data_offset;
- uint32_t length;
- int32_t fd;
- uint32_t addr_offset;
- unsigned long vaddr;
-};
-struct msm_pp_frame {
- uint32_t handle;
- uint32_t frame_id;
- unsigned short buf_idx;
- int path;
- unsigned short image_type;
- unsigned short num_planes;
- struct timeval timestamp;
- union {
- struct msm_pp_frame_sp sp;
- struct msm_pp_frame_mp mp[MAX_PLANES];
- };
- int node_type;
- uint32_t inst_handle;
-};
-struct msm_pp_crop {
- uint32_t src_x;
- uint32_t src_y;
- uint32_t src_w;
- uint32_t src_h;
- uint32_t dst_x;
- uint32_t dst_y;
- uint32_t dst_w;
- uint32_t dst_h;
- uint8_t update_flag;
-};
-struct msm_mctl_pp_frame_cmd {
- uint32_t cookie;
- uint8_t vpe_output_action;
- struct msm_pp_frame src_frame;
- struct msm_pp_frame dest_frame;
- struct msm_pp_crop crop;
- int path;
-};
-struct msm_cam_evt_divert_frame {
- unsigned short image_mode;
- unsigned short op_mode;
- unsigned short inst_idx;
- unsigned short node_idx;
- struct msm_pp_frame frame;
- int do_pp;
-};
-struct msm_mctl_pp_cmd_ack_event {
- uint32_t cmd;
- int status;
- uint32_t cookie;
-};
-struct msm_mctl_pp_event_info {
- int32_t event;
- union {
- struct msm_mctl_pp_cmd_ack_event ack;
- };
-};
-struct msm_isp_event_ctrl {
- unsigned short resptype;
- union {
- struct msm_cam_evt_msg isp_msg;
- struct msm_ctrl_cmd ctrl;
- struct msm_cam_evt_divert_frame div_frame;
- struct msm_mctl_pp_event_info pp_event_info;
- } isp_data;
-};
-#define MSM_CAM_RESP_CTRL 0
-#define MSM_CAM_RESP_STAT_EVT_MSG 1
-#define MSM_CAM_RESP_STEREO_OP_1 2
-#define MSM_CAM_RESP_STEREO_OP_2 3
-#define MSM_CAM_RESP_V4L2 4
-#define MSM_CAM_RESP_DIV_FRAME_EVT_MSG 5
-#define MSM_CAM_RESP_DONE_EVENT 6
-#define MSM_CAM_RESP_MCTL_PP_EVENT 7
-#define MSM_CAM_RESP_MAX 8
-#define MSM_CAM_APP_NOTIFY_EVENT 0
-#define MSM_CAM_APP_NOTIFY_ERROR_EVENT 1
-struct msm_stats_event_ctrl {
- int resptype;
- int timeout_ms;
- struct msm_ctrl_cmd ctrl_cmd;
- struct msm_cam_evt_msg stats_event;
-};
-struct msm_camera_cfg_cmd {
- uint16_t cfg_type;
- uint16_t cmd_type;
- uint16_t queue;
- uint16_t length;
- void * value;
-};
-#define CMD_GENERAL 0
-#define CMD_AXI_CFG_OUT1 1
-#define CMD_AXI_CFG_SNAP_O1_AND_O2 2
-#define CMD_AXI_CFG_OUT2 3
-#define CMD_PICT_T_AXI_CFG 4
-#define CMD_PICT_M_AXI_CFG 5
-#define CMD_RAW_PICT_AXI_CFG 6
-#define CMD_FRAME_BUF_RELEASE 7
-#define CMD_PREV_BUF_CFG 8
-#define CMD_SNAP_BUF_RELEASE 9
-#define CMD_SNAP_BUF_CFG 10
-#define CMD_STATS_DISABLE 11
-#define CMD_STATS_AEC_AWB_ENABLE 12
-#define CMD_STATS_AF_ENABLE 13
-#define CMD_STATS_AEC_ENABLE 14
-#define CMD_STATS_AWB_ENABLE 15
-#define CMD_STATS_ENABLE 16
-#define CMD_STATS_AXI_CFG 17
-#define CMD_STATS_AEC_AXI_CFG 18
-#define CMD_STATS_AF_AXI_CFG 19
-#define CMD_STATS_AWB_AXI_CFG 20
-#define CMD_STATS_RS_AXI_CFG 21
-#define CMD_STATS_CS_AXI_CFG 22
-#define CMD_STATS_IHIST_AXI_CFG 23
-#define CMD_STATS_SKIN_AXI_CFG 24
-#define CMD_STATS_BUF_RELEASE 25
-#define CMD_STATS_AEC_BUF_RELEASE 26
-#define CMD_STATS_AF_BUF_RELEASE 27
-#define CMD_STATS_AWB_BUF_RELEASE 28
-#define CMD_STATS_RS_BUF_RELEASE 29
-#define CMD_STATS_CS_BUF_RELEASE 30
-#define CMD_STATS_IHIST_BUF_RELEASE 31
-#define CMD_STATS_SKIN_BUF_RELEASE 32
-#define UPDATE_STATS_INVALID 33
-#define CMD_AXI_CFG_SNAP_GEMINI 34
-#define CMD_AXI_CFG_SNAP 35
-#define CMD_AXI_CFG_PREVIEW 36
-#define CMD_AXI_CFG_VIDEO 37
-#define CMD_STATS_IHIST_ENABLE 38
-#define CMD_STATS_RS_ENABLE 39
-#define CMD_STATS_CS_ENABLE 40
-#define CMD_VPE 41
-#define CMD_AXI_CFG_VPE 42
-#define CMD_AXI_CFG_ZSL 43
-#define CMD_AXI_CFG_SNAP_VPE 44
-#define CMD_AXI_CFG_SNAP_THUMB_VPE 45
-#define CMD_CONFIG_PING_ADDR 46
-#define CMD_CONFIG_PONG_ADDR 47
-#define CMD_CONFIG_FREE_BUF_ADDR 48
-#define CMD_AXI_CFG_ZSL_ALL_CHNLS 49
-#define CMD_AXI_CFG_VIDEO_ALL_CHNLS 50
-#define CMD_VFE_BUFFER_RELEASE 51
-#define CMD_VFE_PROCESS_IRQ 52
-#define CMD_STATS_BG_ENABLE 53
-#define CMD_STATS_BF_ENABLE 54
-#define CMD_STATS_BHIST_ENABLE 55
-#define CMD_STATS_BG_BUF_RELEASE 56
-#define CMD_STATS_BF_BUF_RELEASE 57
-#define CMD_STATS_BHIST_BUF_RELEASE 58
-#define CMD_VFE_PIX_SOF_COUNT_UPDATE 59
-#define CMD_VFE_COUNT_PIX_SOF_ENABLE 60
-#define CMD_STATS_BE_ENABLE 61
-#define CMD_STATS_BE_BUF_RELEASE 62
-#define CMD_AXI_CFG_PRIM BIT(8)
-#define CMD_AXI_CFG_PRIM_ALL_CHNLS BIT(9)
-#define CMD_AXI_CFG_SEC BIT(10)
-#define CMD_AXI_CFG_SEC_ALL_CHNLS BIT(11)
-#define CMD_AXI_CFG_TERT1 BIT(12)
-#define CMD_AXI_CFG_TERT2 BIT(13)
-#define CMD_AXI_START 0xE1
-#define CMD_AXI_STOP 0xE2
-#define CMD_AXI_RESET 0xE3
-#define CMD_AXI_ABORT 0xE4
-#define AXI_CMD_PREVIEW BIT(0)
-#define AXI_CMD_CAPTURE BIT(1)
-#define AXI_CMD_RECORD BIT(2)
-#define AXI_CMD_ZSL BIT(3)
-#define AXI_CMD_RAW_CAPTURE BIT(4)
-#define AXI_CMD_LIVESHOT BIT(5)
-struct msm_vfe_cfg_cmd {
- int cmd_type;
- uint16_t length;
- void * value;
-};
-struct msm_vpe_cfg_cmd {
- int cmd_type;
- uint16_t length;
- void * value;
-};
-#define MAX_CAMERA_ENABLE_NAME_LEN 32
-struct camera_enable_cmd {
- char name[MAX_CAMERA_ENABLE_NAME_LEN];
-};
-#define MSM_PMEM_OUTPUT1 0
-#define MSM_PMEM_OUTPUT2 1
-#define MSM_PMEM_OUTPUT1_OUTPUT2 2
-#define MSM_PMEM_THUMBNAIL 3
-#define MSM_PMEM_MAINIMG 4
-#define MSM_PMEM_RAW_MAINIMG 5
-#define MSM_PMEM_AEC_AWB 6
-#define MSM_PMEM_AF 7
-#define MSM_PMEM_AEC 8
-#define MSM_PMEM_AWB 9
-#define MSM_PMEM_RS 10
-#define MSM_PMEM_CS 11
-#define MSM_PMEM_IHIST 12
-#define MSM_PMEM_SKIN 13
-#define MSM_PMEM_VIDEO 14
-#define MSM_PMEM_PREVIEW 15
-#define MSM_PMEM_VIDEO_VPE 16
-#define MSM_PMEM_C2D 17
-#define MSM_PMEM_MAINIMG_VPE 18
-#define MSM_PMEM_THUMBNAIL_VPE 19
-#define MSM_PMEM_BAYER_GRID 20
-#define MSM_PMEM_BAYER_FOCUS 21
-#define MSM_PMEM_BAYER_HIST 22
-#define MSM_PMEM_BAYER_EXPOSURE 23
-#define MSM_PMEM_MAX 24
-#define STAT_AEAW 0
-#define STAT_AEC 1
-#define STAT_AF 2
-#define STAT_AWB 3
-#define STAT_RS 4
-#define STAT_CS 5
-#define STAT_IHIST 6
-#define STAT_SKIN 7
-#define STAT_BG 8
-#define STAT_BF 9
-#define STAT_BE 10
-#define STAT_BHIST 11
-#define STAT_MAX 12
-#define FRAME_PREVIEW_OUTPUT1 0
-#define FRAME_PREVIEW_OUTPUT2 1
-#define FRAME_SNAPSHOT 2
-#define FRAME_THUMBNAIL 3
-#define FRAME_RAW_SNAPSHOT 4
-#define FRAME_MAX 5
-enum msm_stats_enum_type {
- MSM_STATS_TYPE_AEC,
- MSM_STATS_TYPE_AF,
- MSM_STATS_TYPE_AWB,
- MSM_STATS_TYPE_RS,
- MSM_STATS_TYPE_CS,
- MSM_STATS_TYPE_IHIST,
- MSM_STATS_TYPE_SKIN,
- MSM_STATS_TYPE_BG,
- MSM_STATS_TYPE_BF,
- MSM_STATS_TYPE_BE,
- MSM_STATS_TYPE_BHIST,
- MSM_STATS_TYPE_AE_AW,
- MSM_STATS_TYPE_COMP,
- MSM_STATS_TYPE_MAX
-};
-struct msm_stats_buf_info {
- int type;
- int fd;
- void * vaddr;
- uint32_t offset;
- uint32_t len;
- uint32_t y_off;
- uint32_t cbcr_off;
- uint32_t planar0_off;
- uint32_t planar1_off;
- uint32_t planar2_off;
- uint8_t active;
- int buf_idx;
-};
-struct msm_pmem_info {
- int type;
- int fd;
- void * vaddr;
- uint32_t offset;
- uint32_t len;
- uint32_t y_off;
- uint32_t cbcr_off;
- uint32_t planar0_off;
- uint32_t planar1_off;
- uint32_t planar2_off;
- uint8_t active;
-};
-struct outputCfg {
- uint32_t height;
- uint32_t width;
- uint32_t window_height_firstline;
- uint32_t window_height_lastline;
-};
-#define VIDEO_NODE 0
-#define MCTL_NODE 1
-#define OUTPUT_1 0
-#define OUTPUT_2 1
-#define OUTPUT_1_AND_2 2
-#define OUTPUT_1_AND_3 3
-#define CAMIF_TO_AXI_VIA_OUTPUT_2 4
-#define OUTPUT_1_AND_CAMIF_TO_AXI_VIA_OUTPUT_2 5
-#define OUTPUT_2_AND_CAMIF_TO_AXI_VIA_OUTPUT_1 6
-#define OUTPUT_1_2_AND_3 7
-#define OUTPUT_ALL_CHNLS 8
-#define OUTPUT_VIDEO_ALL_CHNLS 9
-#define OUTPUT_ZSL_ALL_CHNLS 10
-#define LAST_AXI_OUTPUT_MODE_ENUM OUTPUT_ZSL_ALL_CHNLS
-#define OUTPUT_PRIM BIT(8)
-#define OUTPUT_PRIM_ALL_CHNLS BIT(9)
-#define OUTPUT_SEC BIT(10)
-#define OUTPUT_SEC_ALL_CHNLS BIT(11)
-#define OUTPUT_TERT1 BIT(12)
-#define OUTPUT_TERT2 BIT(13)
-#define MSM_FRAME_PREV_1 0
-#define MSM_FRAME_PREV_2 1
-#define MSM_FRAME_ENC 2
-#define OUTPUT_TYPE_P BIT(0)
-#define OUTPUT_TYPE_T BIT(1)
-#define OUTPUT_TYPE_S BIT(2)
-#define OUTPUT_TYPE_V BIT(3)
-#define OUTPUT_TYPE_L BIT(4)
-#define OUTPUT_TYPE_ST_L BIT(5)
-#define OUTPUT_TYPE_ST_R BIT(6)
-#define OUTPUT_TYPE_ST_D BIT(7)
-#define OUTPUT_TYPE_R BIT(8)
-#define OUTPUT_TYPE_R1 BIT(9)
-#define OUTPUT_TYPE_SAEC BIT(10)
-#define OUTPUT_TYPE_SAFC BIT(11)
-#define OUTPUT_TYPE_SAWB BIT(12)
-#define OUTPUT_TYPE_IHST BIT(13)
-#define OUTPUT_TYPE_CSTA BIT(14)
-struct fd_roi_info {
- void * info;
- int info_len;
-};
-struct msm_mem_map_info {
- uint32_t cookie;
- uint32_t length;
- uint32_t mem_type;
-};
-#define MSM_MEM_MMAP 0
-#define MSM_MEM_USERPTR 1
-#define MSM_PLANE_MAX 8
-#define MSM_PLANE_Y 0
-#define MSM_PLANE_UV 1
-struct msm_frame {
- struct timespec ts;
- int path;
- int type;
- unsigned long buffer;
- uint32_t phy_offset;
- uint32_t y_off;
- uint32_t cbcr_off;
- uint32_t planar0_off;
- uint32_t planar1_off;
- uint32_t planar2_off;
- int fd;
- void * cropinfo;
- int croplen;
- uint32_t error_code;
- struct fd_roi_info roi_info;
- uint32_t frame_id;
- int stcam_quality_ind;
- uint32_t stcam_conv_value;
- struct ion_allocation_data ion_alloc;
- struct ion_fd_data fd_data;
- int ion_dev_fd;
-};
-enum msm_st_frame_packing {
- SIDE_BY_SIDE_HALF,
- SIDE_BY_SIDE_FULL,
- TOP_DOWN_HALF,
- TOP_DOWN_FULL,
-};
-struct msm_st_crop {
- uint32_t in_w;
- uint32_t in_h;
- uint32_t out_w;
- uint32_t out_h;
-};
-struct msm_st_half {
- uint32_t buf_p0_off;
- uint32_t buf_p1_off;
- uint32_t buf_p0_stride;
- uint32_t buf_p1_stride;
- uint32_t pix_x_off;
- uint32_t pix_y_off;
- struct msm_st_crop stCropInfo;
-};
-struct msm_st_frame {
- struct msm_frame buf_info;
- int type;
- enum msm_st_frame_packing packing;
- struct msm_st_half L;
- struct msm_st_half R;
- int frame_id;
-};
-#define MSM_CAMERA_ERR_MASK (0xFFFFFFFF & 1)
-struct stats_buff {
- unsigned long buff;
- int fd;
-};
-struct msm_stats_buf {
- uint8_t awb_ymin;
- struct stats_buff aec;
- struct stats_buff awb;
- struct stats_buff af;
- struct stats_buff be;
- struct stats_buff ihist;
- struct stats_buff rs;
- struct stats_buff cs;
- struct stats_buff skin;
- int type;
- uint32_t status_bits;
- unsigned long buffer;
- int fd;
- int length;
- struct ion_handle * handle;
- uint32_t frame_id;
- int buf_idx;
-};
-#define MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT 0
-#define MSM_V4L2_EXT_CAPTURE_MODE_PREVIEW (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT + 1)
-#define MSM_V4L2_EXT_CAPTURE_MODE_VIDEO (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT + 2)
-#define MSM_V4L2_EXT_CAPTURE_MODE_MAIN (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT + 3)
-#define MSM_V4L2_EXT_CAPTURE_MODE_THUMBNAIL (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT + 4)
-#define MSM_V4L2_EXT_CAPTURE_MODE_ISP_PIX_OUTPUT1 (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT + 5)
-#define MSM_V4L2_EXT_CAPTURE_MODE_ISP_PIX_OUTPUT2 (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT + 6)
-#define MSM_V4L2_EXT_CAPTURE_MODE_RAW (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT + 7)
-#define MSM_V4L2_EXT_CAPTURE_MODE_RDI (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT + 8)
-#define MSM_V4L2_EXT_CAPTURE_MODE_RDI1 (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT + 9)
-#define MSM_V4L2_EXT_CAPTURE_MODE_RDI2 (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT + 10)
-#define MSM_V4L2_EXT_CAPTURE_MODE_AEC (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT + 11)
-#define MSM_V4L2_EXT_CAPTURE_MODE_AWB (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT + 12)
-#define MSM_V4L2_EXT_CAPTURE_MODE_AF (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT + 13)
-#define MSM_V4L2_EXT_CAPTURE_MODE_IHIST (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT + 14)
-#define MSM_V4L2_EXT_CAPTURE_MODE_CS (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT + 15)
-#define MSM_V4L2_EXT_CAPTURE_MODE_RS (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT + 16)
-#define MSM_V4L2_EXT_CAPTURE_MODE_CSTA (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT + 17)
-#define MSM_V4L2_EXT_CAPTURE_MODE_V2X_LIVESHOT (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT + 18)
-#define MSM_V4L2_EXT_CAPTURE_MODE_MAX (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT + 19)
-#define MSM_V4L2_PID_MOTION_ISO V4L2_CID_PRIVATE_BASE
-#define MSM_V4L2_PID_EFFECT (V4L2_CID_PRIVATE_BASE + 1)
-#define MSM_V4L2_PID_HJR (V4L2_CID_PRIVATE_BASE + 2)
-#define MSM_V4L2_PID_LED_MODE (V4L2_CID_PRIVATE_BASE + 3)
-#define MSM_V4L2_PID_PREP_SNAPSHOT (V4L2_CID_PRIVATE_BASE + 4)
-#define MSM_V4L2_PID_EXP_METERING (V4L2_CID_PRIVATE_BASE + 5)
-#define MSM_V4L2_PID_ISO (V4L2_CID_PRIVATE_BASE + 6)
-#define MSM_V4L2_PID_CAM_MODE (V4L2_CID_PRIVATE_BASE + 7)
-#define MSM_V4L2_PID_LUMA_ADAPTATION (V4L2_CID_PRIVATE_BASE + 8)
-#define MSM_V4L2_PID_BEST_SHOT (V4L2_CID_PRIVATE_BASE + 9)
-#define MSM_V4L2_PID_FOCUS_MODE (V4L2_CID_PRIVATE_BASE + 10)
-#define MSM_V4L2_PID_BL_DETECTION (V4L2_CID_PRIVATE_BASE + 11)
-#define MSM_V4L2_PID_SNOW_DETECTION (V4L2_CID_PRIVATE_BASE + 12)
-#define MSM_V4L2_PID_CTRL_CMD (V4L2_CID_PRIVATE_BASE + 13)
-#define MSM_V4L2_PID_EVT_SUB_INFO (V4L2_CID_PRIVATE_BASE + 14)
-#define MSM_V4L2_PID_STROBE_FLASH (V4L2_CID_PRIVATE_BASE + 15)
-#define MSM_V4L2_PID_INST_HANDLE (V4L2_CID_PRIVATE_BASE + 16)
-#define MSM_V4L2_PID_MMAP_INST (V4L2_CID_PRIVATE_BASE + 17)
-#define MSM_V4L2_PID_PP_PLANE_INFO (V4L2_CID_PRIVATE_BASE + 18)
-#define MSM_V4L2_PID_MAX MSM_V4L2_PID_PP_PLANE_INFO
-#define MSM_V4L2_CAM_OP_DEFAULT 0
-#define MSM_V4L2_CAM_OP_PREVIEW (MSM_V4L2_CAM_OP_DEFAULT + 1)
-#define MSM_V4L2_CAM_OP_VIDEO (MSM_V4L2_CAM_OP_DEFAULT + 2)
-#define MSM_V4L2_CAM_OP_CAPTURE (MSM_V4L2_CAM_OP_DEFAULT + 3)
-#define MSM_V4L2_CAM_OP_ZSL (MSM_V4L2_CAM_OP_DEFAULT + 4)
-#define MSM_V4L2_CAM_OP_RAW (MSM_V4L2_CAM_OP_DEFAULT + 5)
-#define MSM_V4L2_CAM_OP_JPEG_CAPTURE (MSM_V4L2_CAM_OP_DEFAULT + 6)
-#define MSM_V4L2_VID_CAP_TYPE 0
-#define MSM_V4L2_STREAM_ON 1
-#define MSM_V4L2_STREAM_OFF 2
-#define MSM_V4L2_SNAPSHOT 3
-#define MSM_V4L2_QUERY_CTRL 4
-#define MSM_V4L2_GET_CTRL 5
-#define MSM_V4L2_SET_CTRL 6
-#define MSM_V4L2_QUERY 7
-#define MSM_V4L2_GET_CROP 8
-#define MSM_V4L2_SET_CROP 9
-#define MSM_V4L2_OPEN 10
-#define MSM_V4L2_CLOSE 11
-#define MSM_V4L2_SET_CTRL_CMD 12
-#define MSM_V4L2_EVT_SUB_MASK 13
-#define MSM_V4L2_PRIVATE_CMD 14
-#define MSM_V4L2_MAX 15
-#define V4L2_CAMERA_EXIT 43
-struct crop_info {
- void * info;
- int len;
-};
-struct msm_postproc {
- int ftnum;
- struct msm_frame fthumnail;
- int fmnum;
- struct msm_frame fmain;
-};
-struct msm_snapshot_pp_status {
- void * status;
-};
-#define CFG_SET_MODE 0
-#define CFG_SET_EFFECT 1
-#define CFG_START 2
-#define CFG_PWR_UP 3
-#define CFG_PWR_DOWN 4
-#define CFG_WRITE_EXPOSURE_GAIN 5
-#define CFG_SET_DEFAULT_FOCUS 6
-#define CFG_MOVE_FOCUS 7
-#define CFG_REGISTER_TO_REAL_GAIN 8
-#define CFG_REAL_TO_REGISTER_GAIN 9
-#define CFG_SET_FPS 10
-#define CFG_SET_PICT_FPS 11
-#define CFG_SET_BRIGHTNESS 12
-#define CFG_SET_CONTRAST 13
-#define CFG_SET_ZOOM 14
-#define CFG_SET_EXPOSURE_MODE 15
-#define CFG_SET_WB 16
-#define CFG_SET_ANTIBANDING 17
-#define CFG_SET_EXP_GAIN 18
-#define CFG_SET_PICT_EXP_GAIN 19
-#define CFG_SET_LENS_SHADING 20
-#define CFG_GET_PICT_FPS 21
-#define CFG_GET_PREV_L_PF 22
-#define CFG_GET_PREV_P_PL 23
-#define CFG_GET_PICT_L_PF 24
-#define CFG_GET_PICT_P_PL 25
-#define CFG_GET_AF_MAX_STEPS 26
-#define CFG_GET_PICT_MAX_EXP_LC 27
-#define CFG_SEND_WB_INFO 28
-#define CFG_SENSOR_INIT 29
-#define CFG_GET_3D_CALI_DATA 30
-#define CFG_GET_CALIB_DATA 31
-#define CFG_GET_OUTPUT_INFO 32
-#define CFG_GET_EEPROM_INFO 33
-#define CFG_GET_EEPROM_DATA 34
-#define CFG_SET_ACTUATOR_INFO 35
-#define CFG_GET_ACTUATOR_INFO 36
-#define CFG_SET_SATURATION 37
-#define CFG_SET_SHARPNESS 38
-#define CFG_SET_TOUCHAEC 39
-#define CFG_SET_AUTO_FOCUS 40
-#define CFG_SET_AUTOFLASH 41
-#define CFG_SET_EXPOSURE_COMPENSATION 42
-#define CFG_SET_ISO 43
-#define CFG_START_STREAM 44
-#define CFG_STOP_STREAM 45
-#define CFG_GET_CSI_PARAMS 46
-#define CFG_POWER_UP 47
-#define CFG_POWER_DOWN 48
-#define CFG_WRITE_I2C_ARRAY 49
-#define CFG_READ_I2C_ARRAY 50
-#define CFG_PCLK_CHANGE 51
-#define CFG_CONFIG_VREG_ARRAY 52
-#define CFG_CONFIG_CLK_ARRAY 53
-#define CFG_GPIO_OP 54
-#define CFG_MAX 55
-#define MOVE_NEAR 0
-#define MOVE_FAR 1
-#define SENSOR_PREVIEW_MODE 0
-#define SENSOR_SNAPSHOT_MODE 1
-#define SENSOR_RAW_SNAPSHOT_MODE 2
-#define SENSOR_HFR_60FPS_MODE 3
-#define SENSOR_HFR_90FPS_MODE 4
-#define SENSOR_HFR_120FPS_MODE 5
-#define SENSOR_QTR_SIZE 0
-#define SENSOR_FULL_SIZE 1
-#define SENSOR_QVGA_SIZE 2
-#define SENSOR_INVALID_SIZE 3
-#define CAMERA_EFFECT_OFF 0
-#define CAMERA_EFFECT_MONO 1
-#define CAMERA_EFFECT_NEGATIVE 2
-#define CAMERA_EFFECT_SOLARIZE 3
-#define CAMERA_EFFECT_SEPIA 4
-#define CAMERA_EFFECT_POSTERIZE 5
-#define CAMERA_EFFECT_WHITEBOARD 6
-#define CAMERA_EFFECT_BLACKBOARD 7
-#define CAMERA_EFFECT_AQUA 8
-#define CAMERA_EFFECT_EMBOSS 9
-#define CAMERA_EFFECT_SKETCH 10
-#define CAMERA_EFFECT_NEON 11
-#define CAMERA_EFFECT_FADED 12
-#define CAMERA_EFFECT_VINTAGECOOL 13
-#define CAMERA_EFFECT_VINTAGEWARM 14
-#define CAMERA_EFFECT_ACCENT_BLUE 15
-#define CAMERA_EFFECT_ACCENT_GREEN 16
-#define CAMERA_EFFECT_ACCENT_ORANGE 17
-#define CAMERA_EFFECT_MAX 18
-#define CAMERA_EFFECT_BW 10
-#define CAMERA_EFFECT_BLUISH 12
-#define CAMERA_EFFECT_REDDISH 13
-#define CAMERA_EFFECT_GREENISH 14
-#define CAMERA_ANTIBANDING_OFF 0
-#define CAMERA_ANTIBANDING_50HZ 2
-#define CAMERA_ANTIBANDING_60HZ 1
-#define CAMERA_ANTIBANDING_AUTO 3
-#define CAMERA_CONTRAST_LV0 0
-#define CAMERA_CONTRAST_LV1 1
-#define CAMERA_CONTRAST_LV2 2
-#define CAMERA_CONTRAST_LV3 3
-#define CAMERA_CONTRAST_LV4 4
-#define CAMERA_CONTRAST_LV5 5
-#define CAMERA_CONTRAST_LV6 6
-#define CAMERA_CONTRAST_LV7 7
-#define CAMERA_CONTRAST_LV8 8
-#define CAMERA_CONTRAST_LV9 9
-#define CAMERA_BRIGHTNESS_LV0 0
-#define CAMERA_BRIGHTNESS_LV1 1
-#define CAMERA_BRIGHTNESS_LV2 2
-#define CAMERA_BRIGHTNESS_LV3 3
-#define CAMERA_BRIGHTNESS_LV4 4
-#define CAMERA_BRIGHTNESS_LV5 5
-#define CAMERA_BRIGHTNESS_LV6 6
-#define CAMERA_BRIGHTNESS_LV7 7
-#define CAMERA_BRIGHTNESS_LV8 8
-#define CAMERA_SATURATION_LV0 0
-#define CAMERA_SATURATION_LV1 1
-#define CAMERA_SATURATION_LV2 2
-#define CAMERA_SATURATION_LV3 3
-#define CAMERA_SATURATION_LV4 4
-#define CAMERA_SATURATION_LV5 5
-#define CAMERA_SATURATION_LV6 6
-#define CAMERA_SATURATION_LV7 7
-#define CAMERA_SATURATION_LV8 8
-#define CAMERA_SHARPNESS_LV0 0
-#define CAMERA_SHARPNESS_LV1 3
-#define CAMERA_SHARPNESS_LV2 6
-#define CAMERA_SHARPNESS_LV3 9
-#define CAMERA_SHARPNESS_LV4 12
-#define CAMERA_SHARPNESS_LV5 15
-#define CAMERA_SHARPNESS_LV6 18
-#define CAMERA_SHARPNESS_LV7 21
-#define CAMERA_SHARPNESS_LV8 24
-#define CAMERA_SHARPNESS_LV9 27
-#define CAMERA_SHARPNESS_LV10 30
-#define CAMERA_SETAE_AVERAGE 0
-#define CAMERA_SETAE_CENWEIGHT 1
-#define CAMERA_WB_AUTO 1
-#define CAMERA_WB_CUSTOM 2
-#define CAMERA_WB_INCANDESCENT 3
-#define CAMERA_WB_FLUORESCENT 4
-#define CAMERA_WB_DAYLIGHT 5
-#define CAMERA_WB_CLOUDY_DAYLIGHT 6
-#define CAMERA_WB_TWILIGHT 7
-#define CAMERA_WB_SHADE 8
-#define CAMERA_EXPOSURE_COMPENSATION_LV0 12
-#define CAMERA_EXPOSURE_COMPENSATION_LV1 6
-#define CAMERA_EXPOSURE_COMPENSATION_LV2 0
-#define CAMERA_EXPOSURE_COMPENSATION_LV3 - 6
-#define CAMERA_EXPOSURE_COMPENSATION_LV4 - 12
-enum msm_v4l2_saturation_level {
- MSM_V4L2_SATURATION_L0,
- MSM_V4L2_SATURATION_L1,
- MSM_V4L2_SATURATION_L2,
- MSM_V4L2_SATURATION_L3,
- MSM_V4L2_SATURATION_L4,
- MSM_V4L2_SATURATION_L5,
- MSM_V4L2_SATURATION_L6,
- MSM_V4L2_SATURATION_L7,
- MSM_V4L2_SATURATION_L8,
- MSM_V4L2_SATURATION_L9,
- MSM_V4L2_SATURATION_L10,
-};
-enum msm_v4l2_contrast_level {
- MSM_V4L2_CONTRAST_L0,
- MSM_V4L2_CONTRAST_L1,
- MSM_V4L2_CONTRAST_L2,
- MSM_V4L2_CONTRAST_L3,
- MSM_V4L2_CONTRAST_L4,
- MSM_V4L2_CONTRAST_L5,
- MSM_V4L2_CONTRAST_L6,
- MSM_V4L2_CONTRAST_L7,
- MSM_V4L2_CONTRAST_L8,
- MSM_V4L2_CONTRAST_L9,
- MSM_V4L2_CONTRAST_L10,
-};
-enum msm_v4l2_exposure_level {
- MSM_V4L2_EXPOSURE_N2,
- MSM_V4L2_EXPOSURE_N1,
- MSM_V4L2_EXPOSURE_D,
- MSM_V4L2_EXPOSURE_P1,
- MSM_V4L2_EXPOSURE_P2,
-};
-enum msm_v4l2_sharpness_level {
- MSM_V4L2_SHARPNESS_L0,
- MSM_V4L2_SHARPNESS_L1,
- MSM_V4L2_SHARPNESS_L2,
- MSM_V4L2_SHARPNESS_L3,
- MSM_V4L2_SHARPNESS_L4,
- MSM_V4L2_SHARPNESS_L5,
- MSM_V4L2_SHARPNESS_L6,
-};
-enum msm_v4l2_expo_metering_mode {
- MSM_V4L2_EXP_FRAME_AVERAGE,
- MSM_V4L2_EXP_CENTER_WEIGHTED,
- MSM_V4L2_EXP_SPOT_METERING,
-};
-enum msm_v4l2_iso_mode {
- MSM_V4L2_ISO_AUTO = 0,
- MSM_V4L2_ISO_DEBLUR,
- MSM_V4L2_ISO_100,
- MSM_V4L2_ISO_200,
- MSM_V4L2_ISO_400,
- MSM_V4L2_ISO_800,
- MSM_V4L2_ISO_1600,
-};
-enum msm_v4l2_wb_mode {
- MSM_V4L2_WB_OFF,
- MSM_V4L2_WB_AUTO,
- MSM_V4L2_WB_CUSTOM,
- MSM_V4L2_WB_INCANDESCENT,
- MSM_V4L2_WB_FLUORESCENT,
- MSM_V4L2_WB_DAYLIGHT,
- MSM_V4L2_WB_CLOUDY_DAYLIGHT,
-};
-enum msm_v4l2_special_effect {
- MSM_V4L2_EFFECT_OFF,
- MSM_V4L2_EFFECT_MONO,
- MSM_V4L2_EFFECT_NEGATIVE,
- MSM_V4L2_EFFECT_SOLARIZE,
- MSM_V4L2_EFFECT_SEPIA,
- MSM_V4L2_EFFECT_POSTERAIZE,
- MSM_V4L2_EFFECT_WHITEBOARD,
- MSM_V4L2_EFFECT_BLACKBOARD,
- MSM_V4L2_EFFECT_AQUA,
- MSM_V4L2_EFFECT_EMBOSS,
- MSM_V4L2_EFFECT_SKETCH,
- MSM_V4L2_EFFECT_NEON,
- MSM_V4L2_EFFECT_MAX,
-};
-enum msm_v4l2_power_line_frequency {
- MSM_V4L2_POWER_LINE_OFF,
- MSM_V4L2_POWER_LINE_60HZ,
- MSM_V4L2_POWER_LINE_50HZ,
- MSM_V4L2_POWER_LINE_AUTO,
-};
-#define CAMERA_ISO_TYPE_AUTO 0
-#define CAMEAR_ISO_TYPE_HJR 1
-#define CAMEAR_ISO_TYPE_100 2
-#define CAMERA_ISO_TYPE_200 3
-#define CAMERA_ISO_TYPE_400 4
-#define CAMEAR_ISO_TYPE_800 5
-#define CAMERA_ISO_TYPE_1600 6
-struct sensor_pict_fps {
- uint16_t prevfps;
- uint16_t pictfps;
-};
-struct exp_gain_cfg {
- uint16_t gain;
- uint32_t line;
-};
-struct focus_cfg {
- int32_t steps;
- int dir;
-};
-struct fps_cfg {
- uint16_t f_mult;
- uint16_t fps_div;
- uint32_t pict_fps_div;
-};
-struct wb_info_cfg {
- uint16_t red_gain;
- uint16_t green_gain;
- uint16_t blue_gain;
-};
-struct sensor_3d_exp_cfg {
- uint16_t gain;
- uint32_t line;
- uint16_t r_gain;
- uint16_t b_gain;
- uint16_t gr_gain;
- uint16_t gb_gain;
- uint16_t gain_adjust;
-};
-struct sensor_3d_cali_data_t {
- unsigned char left_p_matrix[3][4][8];
- unsigned char right_p_matrix[3][4][8];
- unsigned char square_len[8];
- unsigned char focal_len[8];
- unsigned char pixel_pitch[8];
- uint16_t left_r;
- uint16_t left_b;
- uint16_t left_gb;
- uint16_t left_af_far;
- uint16_t left_af_mid;
- uint16_t left_af_short;
- uint16_t left_af_5um;
- uint16_t left_af_50up;
- uint16_t left_af_50down;
- uint16_t right_r;
- uint16_t right_b;
- uint16_t right_gb;
- uint16_t right_af_far;
- uint16_t right_af_mid;
- uint16_t right_af_short;
- uint16_t right_af_5um;
- uint16_t right_af_50up;
- uint16_t right_af_50down;
-};
-struct sensor_init_cfg {
- uint8_t prev_res;
- uint8_t pict_res;
-};
-struct sensor_calib_data {
- uint16_t r_over_g;
- uint16_t b_over_g;
- uint16_t gr_over_gb;
- uint16_t macro_2_inf;
- uint16_t inf_2_macro;
- uint16_t stroke_amt;
- uint16_t af_pos_1m;
- uint16_t af_pos_inf;
-};
-enum msm_sensor_resolution_t {
- MSM_SENSOR_RES_FULL,
- MSM_SENSOR_RES_QTR,
- MSM_SENSOR_RES_2,
- MSM_SENSOR_RES_3,
- MSM_SENSOR_RES_4,
- MSM_SENSOR_RES_5,
- MSM_SENSOR_RES_6,
- MSM_SENSOR_RES_7,
- MSM_SENSOR_INVALID_RES,
-};
-struct msm_sensor_output_info_t {
- uint16_t x_output;
- uint16_t y_output;
- uint16_t line_length_pclk;
- uint16_t frame_length_lines;
- uint32_t vt_pixel_clk;
- uint32_t op_pixel_clk;
- uint16_t binning_factor;
-};
-struct sensor_output_info_t {
- struct msm_sensor_output_info_t * output_info;
- uint16_t num_info;
-};
-struct msm_sensor_exp_gain_info_t {
- uint16_t coarse_int_time_addr;
- uint16_t global_gain_addr;
- uint16_t vert_offset;
-};
-struct msm_sensor_output_reg_addr_t {
- uint16_t x_output;
- uint16_t y_output;
- uint16_t line_length_pclk;
- uint16_t frame_length_lines;
-};
-struct sensor_driver_params_type {
- struct msm_camera_i2c_reg_setting * init_settings;
- uint16_t init_settings_size;
- struct msm_camera_i2c_reg_setting * mode_settings;
- uint16_t mode_settings_size;
- struct msm_sensor_output_reg_addr_t * sensor_output_reg_addr;
- struct msm_camera_i2c_reg_setting * start_settings;
- struct msm_camera_i2c_reg_setting * stop_settings;
- struct msm_camera_i2c_reg_setting * groupon_settings;
- struct msm_camera_i2c_reg_setting * groupoff_settings;
- struct msm_sensor_exp_gain_info_t * sensor_exp_gain_info;
- struct msm_sensor_output_info_t * output_info;
-};
-struct mirror_flip {
- int32_t x_mirror;
- int32_t y_flip;
-};
-struct cord {
- uint32_t x;
- uint32_t y;
-};
-struct msm_eeprom_data_t {
- void * eeprom_data;
- uint16_t index;
-};
-struct msm_camera_csid_vc_cfg {
- uint8_t cid;
- uint8_t dt;
- uint8_t decode_format;
-};
-struct csi_lane_params_t {
- uint16_t csi_lane_assign;
- uint8_t csi_lane_mask;
- uint8_t csi_if;
- uint8_t csid_core[2];
- uint8_t csi_phy_sel;
-};
-struct msm_camera_csid_lut_params {
- uint8_t num_cid;
- struct msm_camera_csid_vc_cfg * vc_cfg;
-};
-struct msm_camera_csid_params {
- uint8_t lane_cnt;
- uint16_t lane_assign;
- uint8_t phy_sel;
- struct msm_camera_csid_lut_params lut_params;
-};
-struct msm_camera_csiphy_params {
- uint8_t lane_cnt;
- uint8_t settle_cnt;
- uint16_t lane_mask;
- uint8_t combo_mode;
- uint8_t csid_core;
- uint64_t data_rate;
-};
-struct msm_camera_csi2_params {
- struct msm_camera_csid_params csid_params;
- struct msm_camera_csiphy_params csiphy_params;
-};
-enum msm_camera_csi_data_format {
- CSI_8BIT,
- CSI_10BIT,
- CSI_12BIT,
-};
-struct msm_camera_csi_params {
- enum msm_camera_csi_data_format data_format;
- uint8_t lane_cnt;
- uint8_t lane_assign;
- uint8_t settle_cnt;
- uint8_t dpcm_scheme;
-};
-enum csic_cfg_type_t {
- CSIC_INIT,
- CSIC_CFG,
-};
-struct csic_cfg_data {
- enum csic_cfg_type_t cfgtype;
- struct msm_camera_csi_params * csic_params;
-};
-enum csid_cfg_type_t {
- CSID_INIT,
- CSID_CFG,
-};
-struct csid_cfg_data {
- enum csid_cfg_type_t cfgtype;
- union {
- uint32_t csid_version;
- struct msm_camera_csid_params * csid_params;
- } cfg;
-};
-enum csiphy_cfg_type_t {
- CSIPHY_INIT,
- CSIPHY_CFG,
-};
-struct csiphy_cfg_data {
- enum csiphy_cfg_type_t cfgtype;
- struct msm_camera_csiphy_params * csiphy_params;
-};
-#define CSI_EMBED_DATA 0x12
-#define CSI_RESERVED_DATA_0 0x13
-#define CSI_YUV422_8 0x1E
-#define CSI_RAW8 0x2A
-#define CSI_RAW10 0x2B
-#define CSI_RAW12 0x2C
-#define CSI_DECODE_6BIT 0
-#define CSI_DECODE_8BIT 1
-#define CSI_DECODE_10BIT 2
-#define CSI_DECODE_DPCM_10_8_10 5
-#define ISPIF_STREAM(intf,action,vfe) (((intf) << ISPIF_S_STREAM_SHIFT) + (action) + ((vfe) << ISPIF_VFE_INTF_SHIFT))
-#define ISPIF_ON_FRAME_BOUNDARY (0x01 << 0)
-#define ISPIF_OFF_FRAME_BOUNDARY (0x01 << 1)
-#define ISPIF_OFF_IMMEDIATELY (0x01 << 2)
-#define ISPIF_S_STREAM_SHIFT 4
-#define ISPIF_VFE_INTF_SHIFT 12
-#define PIX_0 (0x01 << 0)
-#define RDI_0 (0x01 << 1)
-#define PIX_1 (0x01 << 2)
-#define RDI_1 (0x01 << 3)
-#define RDI_2 (0x01 << 4)
-enum msm_ispif_vfe_intf {
- VFE0,
- VFE1,
- VFE_MAX,
-};
-enum msm_ispif_intftype {
- PIX0,
- RDI0,
- PIX1,
- RDI1,
- RDI2,
- INTF_MAX,
-};
-enum msm_ispif_vc {
- VC0,
- VC1,
- VC2,
- VC3,
-};
-enum msm_ispif_cid {
- CID0,
- CID1,
- CID2,
- CID3,
- CID4,
- CID5,
- CID6,
- CID7,
- CID8,
- CID9,
- CID10,
- CID11,
- CID12,
- CID13,
- CID14,
- CID15,
-};
-struct msm_ispif_params {
- uint8_t intftype;
- uint16_t cid_mask;
- uint8_t csid;
- uint8_t vfe_intf;
-};
-struct msm_ispif_params_list {
- uint32_t len;
- struct msm_ispif_params params[4];
-};
-enum ispif_cfg_type_t {
- ISPIF_INIT,
- ISPIF_SET_CFG,
- ISPIF_SET_ON_FRAME_BOUNDARY,
- ISPIF_SET_OFF_FRAME_BOUNDARY,
- ISPIF_SET_OFF_IMMEDIATELY,
- ISPIF_RELEASE,
-};
-struct ispif_cfg_data {
- enum ispif_cfg_type_t cfgtype;
- union {
- uint32_t csid_version;
- int cmd;
- struct msm_ispif_params_list ispif_params;
- } cfg;
-};
-enum msm_camera_i2c_reg_addr_type {
- MSM_CAMERA_I2C_BYTE_ADDR = 1,
- MSM_CAMERA_I2C_WORD_ADDR,
- MSM_CAMERA_I2C_3B_ADDR,
- MSM_CAMERA_I2C_DWORD_ADDR,
-};
-#define MSM_CAMERA_I2C_DWORD_ADDR MSM_CAMERA_I2C_DWORD_ADDR
-struct msm_camera_i2c_reg_array {
- uint16_t reg_addr;
- uint16_t reg_data;
-};
-enum msm_camera_i2c_data_type {
- MSM_CAMERA_I2C_BYTE_DATA = 1,
- MSM_CAMERA_I2C_WORD_DATA,
- MSM_CAMERA_I2C_SET_BYTE_MASK,
- 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,
-};
-struct msm_camera_i2c_reg_setting {
- struct msm_camera_i2c_reg_array * reg_setting;
- uint16_t size;
- enum msm_camera_i2c_reg_addr_type addr_type;
- enum msm_camera_i2c_data_type data_type;
- uint16_t delay;
-};
-enum oem_setting_type {
- I2C_READ = 1,
- I2C_WRITE,
- GPIO_OP,
- EEPROM_READ,
- VREG_SET,
- CLK_SET,
-};
-struct sensor_oem_setting {
- enum oem_setting_type type;
- void * data;
-};
-enum camera_vreg_type {
- REG_LDO,
- REG_VS,
- REG_GPIO,
-};
-enum msm_camera_vreg_name_t {
- CAM_VDIG,
- CAM_VIO,
- CAM_VANA,
- CAM_VAF,
- CAM_VREG_MAX,
-};
-struct msm_camera_csi_lane_params {
- uint16_t csi_lane_assign;
- uint16_t csi_lane_mask;
-};
-struct camera_vreg_t {
- const char * reg_name;
- int min_voltage;
- int max_voltage;
- int op_mode;
- uint32_t delay;
-};
-struct msm_camera_vreg_setting {
- struct camera_vreg_t * cam_vreg;
- uint16_t num_vreg;
- uint8_t enable;
-};
-struct msm_cam_clk_info {
- const char * clk_name;
- long clk_rate;
- uint32_t delay;
-};
-struct msm_cam_clk_setting {
- struct msm_cam_clk_info * clk_info;
- uint16_t num_clk_info;
- uint8_t enable;
-};
-struct sensor_cfg_data {
- int cfgtype;
- int mode;
- int rs;
- uint8_t max_steps;
- union {
- int8_t effect;
- uint8_t lens_shading;
- uint16_t prevl_pf;
- uint16_t prevp_pl;
- uint16_t pictl_pf;
- uint16_t pictp_pl;
- uint32_t pict_max_exp_lc;
- uint16_t p_fps;
- uint8_t iso_type;
- struct sensor_init_cfg init_info;
- struct sensor_pict_fps gfps;
- struct exp_gain_cfg exp_gain;
- struct focus_cfg focus;
- struct fps_cfg fps;
- struct wb_info_cfg wb_info;
- struct sensor_3d_exp_cfg sensor_3d_exp;
- struct sensor_calib_data calib_info;
- struct sensor_output_info_t output_info;
- struct msm_eeprom_data_t eeprom_data;
- struct csi_lane_params_t csi_lane_params;
- uint16_t antibanding;
- uint8_t contrast;
- uint8_t saturation;
- uint8_t sharpness;
- int8_t brightness;
- int ae_mode;
- uint8_t wb_val;
- int8_t exp_compensation;
- uint32_t pclk;
- struct cord aec_cord;
- int is_autoflash;
- struct mirror_flip mirror_flip;
- void * setting;
- } cfg;
-};
-enum gpio_operation_type {
- GPIO_REQUEST,
- GPIO_FREE,
- GPIO_SET_DIRECTION_OUTPUT,
- GPIO_SET_DIRECTION_INPUT,
- GPIO_GET_VALUE,
- GPIO_SET_VALUE,
-};
-struct msm_cam_gpio_operation {
- enum gpio_operation_type op_type;
- unsigned int address;
- int value;
- const char * tag;
-};
-struct damping_params_t {
- uint32_t damping_step;
- uint32_t damping_delay;
- uint32_t hw_params;
-};
-enum actuator_type {
- ACTUATOR_VCM,
- ACTUATOR_PIEZO,
- ACTUATOR_HVCM,
- ACTUATOR_BIVCM,
-};
-enum msm_actuator_data_type {
- MSM_ACTUATOR_BYTE_DATA = 1,
- MSM_ACTUATOR_WORD_DATA,
-};
-enum msm_actuator_addr_type {
- MSM_ACTUATOR_BYTE_ADDR = 1,
- MSM_ACTUATOR_WORD_ADDR,
-};
-enum msm_actuator_write_type {
- MSM_ACTUATOR_WRITE_HW_DAMP,
- MSM_ACTUATOR_WRITE_DAC,
- MSM_ACTUATOR_WRITE,
- MSM_ACTUATOR_WRITE_DIR_REG,
- MSM_ACTUATOR_POLL,
- MSM_ACTUATOR_READ_WRITE,
-};
-struct msm_actuator_reg_params_t {
- enum msm_actuator_write_type reg_write_type;
- uint32_t hw_mask;
- uint16_t reg_addr;
- uint16_t hw_shift;
- uint16_t data_type;
- uint16_t addr_type;
- uint16_t reg_data;
- uint16_t delay;
-};
-struct reg_settings_t {
- uint16_t reg_addr;
- uint16_t reg_data;
-};
-struct region_params_t {
- uint16_t step_bound[2];
- uint16_t code_per_step;
-};
-struct msm_actuator_move_params_t {
- int8_t dir;
- int8_t sign_dir;
- int16_t dest_step_pos;
- int32_t num_steps;
- struct damping_params_t * ringing_params;
-};
-struct msm_actuator_tuning_params_t {
- int16_t initial_code;
- uint16_t pwd_step;
- uint16_t region_size;
- uint32_t total_steps;
- struct region_params_t * region_params;
-};
-struct msm_actuator_params_t {
- enum actuator_type act_type;
- uint8_t reg_tbl_size;
- uint16_t data_size;
- uint16_t init_setting_size;
- uint32_t i2c_addr;
- enum msm_actuator_addr_type i2c_addr_type;
- enum msm_actuator_data_type i2c_data_type;
- struct msm_actuator_reg_params_t * reg_tbl_params;
- struct reg_settings_t * init_settings;
-};
-struct msm_actuator_set_info_t {
- struct msm_actuator_params_t actuator_params;
- struct msm_actuator_tuning_params_t af_tuning_params;
-};
-struct msm_actuator_get_info_t {
- uint32_t focal_length_num;
- uint32_t focal_length_den;
- uint32_t f_number_num;
- uint32_t f_number_den;
- uint32_t f_pix_num;
- uint32_t f_pix_den;
- uint32_t total_f_dist_num;
- uint32_t total_f_dist_den;
- uint32_t hor_view_angle_num;
- uint32_t hor_view_angle_den;
- uint32_t ver_view_angle_num;
- uint32_t ver_view_angle_den;
-};
-enum af_camera_name {
- ACTUATOR_MAIN_CAM_0,
- ACTUATOR_MAIN_CAM_1,
- ACTUATOR_MAIN_CAM_2,
- ACTUATOR_MAIN_CAM_3,
- ACTUATOR_MAIN_CAM_4,
- ACTUATOR_MAIN_CAM_5,
- ACTUATOR_WEB_CAM_0,
- ACTUATOR_WEB_CAM_1,
- ACTUATOR_WEB_CAM_2,
-};
-struct msm_actuator_cfg_data {
- int cfgtype;
- uint8_t is_af_supported;
- union {
- struct msm_actuator_move_params_t move;
- struct msm_actuator_set_info_t set_info;
- struct msm_actuator_get_info_t get_info;
- enum af_camera_name cam_name;
- } cfg;
-};
-struct msm_eeprom_support {
- uint16_t is_supported;
- uint16_t size;
- uint16_t index;
- uint16_t qvalue;
-};
-struct msm_calib_wb {
- uint16_t r_over_g;
- uint16_t b_over_g;
- uint16_t gr_over_gb;
-};
-struct msm_calib_af {
- uint16_t macro_dac;
- uint16_t inf_dac;
- uint16_t start_dac;
-};
-struct msm_calib_lsc {
- uint16_t r_gain[221];
- uint16_t b_gain[221];
- uint16_t gr_gain[221];
- uint16_t gb_gain[221];
-};
-struct pixel_t {
- int x;
- int y;
-};
-struct msm_calib_dpc {
- uint16_t validcount;
- struct pixel_t snapshot_coord[128];
- struct pixel_t preview_coord[128];
- struct pixel_t video_coord[128];
-};
-struct msm_calib_raw {
- uint8_t * data;
- uint32_t size;
-};
-struct msm_camera_eeprom_info_t {
- struct msm_eeprom_support af;
- struct msm_eeprom_support wb;
- struct msm_eeprom_support lsc;
- struct msm_eeprom_support dpc;
- struct msm_eeprom_support raw;
-};
-struct msm_eeprom_cfg_data {
- int cfgtype;
- uint8_t is_eeprom_supported;
- union {
- struct msm_eeprom_data_t get_data;
- struct msm_camera_eeprom_info_t get_info;
- } cfg;
-};
-struct sensor_large_data {
- int cfgtype;
- union {
- struct sensor_3d_cali_data_t sensor_3d_cali_data;
- } data;
-};
-enum sensor_type_t {
- BAYER,
- YUV,
- JPEG_SOC,
-};
-enum flash_type {
- LED_FLASH,
- STROBE_FLASH,
-};
-enum strobe_flash_ctrl_type {
- STROBE_FLASH_CTRL_INIT,
- STROBE_FLASH_CTRL_CHARGE,
- STROBE_FLASH_CTRL_RELEASE
-};
-struct strobe_flash_ctrl_data {
- enum strobe_flash_ctrl_type type;
- int charge_en;
-};
-struct msm_camera_info {
- int num_cameras;
- uint8_t has_3d_support[MSM_MAX_CAMERA_SENSORS];
- uint8_t is_internal_cam[MSM_MAX_CAMERA_SENSORS];
- uint32_t s_mount_angle[MSM_MAX_CAMERA_SENSORS];
- const char * video_dev_name[MSM_MAX_CAMERA_SENSORS];
- enum sensor_type_t sensor_type[MSM_MAX_CAMERA_SENSORS];
-};
-struct msm_cam_config_dev_info {
- int num_config_nodes;
- const char * config_dev_name[MSM_MAX_CAMERA_CONFIGS];
- int config_dev_id[MSM_MAX_CAMERA_CONFIGS];
-};
-struct msm_mctl_node_info {
- int num_mctl_nodes;
- const char * mctl_node_name[MSM_MAX_CAMERA_SENSORS];
-};
-struct flash_ctrl_data {
- int flashtype;
- union {
- int led_state;
- struct strobe_flash_ctrl_data strobe_ctrl;
- } ctrl_data;
-};
-#define GET_NAME 0
-#define GET_PREVIEW_LINE_PER_FRAME 1
-#define GET_PREVIEW_PIXELS_PER_LINE 2
-#define GET_SNAPSHOT_LINE_PER_FRAME 3
-#define GET_SNAPSHOT_PIXELS_PER_LINE 4
-#define GET_SNAPSHOT_FPS 5
-#define GET_SNAPSHOT_MAX_EP_LINE_CNT 6
-struct msm_camsensor_info {
- char name[MAX_SENSOR_NAME];
- uint8_t flash_enabled;
- uint8_t strobe_flash_enabled;
- uint8_t actuator_enabled;
- uint8_t ispif_supported;
- int8_t total_steps;
- uint8_t support_3d;
- enum flash_type flashtype;
- enum sensor_type_t sensor_type;
- uint32_t pxlcode;
- uint32_t camera_type;
- int mount_angle;
- uint32_t max_width;
- uint32_t max_height;
-};
-#define V4L2_SINGLE_PLANE 0
-#define V4L2_MULTI_PLANE_Y 0
-#define V4L2_MULTI_PLANE_CBCR 1
-#define V4L2_MULTI_PLANE_CB 1
-#define V4L2_MULTI_PLANE_CR 2
-struct plane_data {
- int plane_id;
- uint32_t offset;
- unsigned long size;
-};
-struct img_plane_info {
- uint32_t width;
- uint32_t height;
- uint32_t pixelformat;
- uint8_t buffer_type;
- uint8_t output_port;
- uint32_t ext_mode;
- uint8_t num_planes;
- struct plane_data plane[MAX_PLANES];
- uint32_t sp_y_offset;
- uint32_t inst_handle;
-};
-#define QCAMERA_NAME "qcamera"
-#define QCAMERA_SERVER_NAME "qcamera_server"
-#define QCAMERA_VNODE_GROUP_ID MEDIA_ENT_F_IO_V4L
-enum msm_cam_subdev_type {
- CSIPHY_DEV,
- CSID_DEV,
- CSIC_DEV,
- ISPIF_DEV,
- VFE_DEV,
- AXI_DEV,
- VPE_DEV,
- SENSOR_DEV,
- ACTUATOR_DEV,
- EEPROM_DEV,
- GESTURE_DEV,
- IRQ_ROUTER_DEV,
- CPP_DEV,
- CCI_DEV,
- FLASH_DEV,
-};
-struct msm_mctl_set_sdev_data {
- uint32_t revision;
- enum msm_cam_subdev_type sdev_type;
-};
-#define MSM_CAM_V4L2_IOCTL_GET_CAMERA_INFO _IOWR('V', BASE_VIDIOC_PRIVATE + 1, struct msm_camera_v4l2_ioctl_t)
-#define MSM_CAM_V4L2_IOCTL_GET_CONFIG_INFO _IOWR('V', BASE_VIDIOC_PRIVATE + 2, struct msm_camera_v4l2_ioctl_t)
-#define MSM_CAM_V4L2_IOCTL_GET_MCTL_INFO _IOWR('V', BASE_VIDIOC_PRIVATE + 3, struct msm_camera_v4l2_ioctl_t)
-#define MSM_CAM_V4L2_IOCTL_CTRL_CMD_DONE _IOWR('V', BASE_VIDIOC_PRIVATE + 4, struct msm_camera_v4l2_ioctl_t)
-#define MSM_CAM_V4L2_IOCTL_GET_EVENT_PAYLOAD _IOWR('V', BASE_VIDIOC_PRIVATE + 5, struct msm_camera_v4l2_ioctl_t)
-#define MSM_CAM_IOCTL_SEND_EVENT _IOWR('V', BASE_VIDIOC_PRIVATE + 6, struct v4l2_event)
-#define MSM_CAM_V4L2_IOCTL_CFG_VPE _IOWR('V', BASE_VIDIOC_PRIVATE + 7, struct msm_vpe_cfg_cmd)
-#define MSM_CAM_V4L2_IOCTL_PRIVATE_S_CTRL _IOWR('V', BASE_VIDIOC_PRIVATE + 8, struct msm_camera_v4l2_ioctl_t)
-#define MSM_CAM_V4L2_IOCTL_PRIVATE_G_CTRL _IOWR('V', BASE_VIDIOC_PRIVATE + 9, struct msm_camera_v4l2_ioctl_t)
-#define MSM_CAM_V4L2_IOCTL_PRIVATE_GENERAL _IOW('V', BASE_VIDIOC_PRIVATE + 10, struct msm_camera_v4l2_ioctl_t)
-#define VIDIOC_MSM_VPE_INIT _IO('V', BASE_VIDIOC_PRIVATE + 15)
-#define VIDIOC_MSM_VPE_RELEASE _IO('V', BASE_VIDIOC_PRIVATE + 16)
-#define VIDIOC_MSM_VPE_CFG _IOWR('V', BASE_VIDIOC_PRIVATE + 17, struct msm_mctl_pp_params *)
-#define VIDIOC_MSM_AXI_INIT _IOWR('V', BASE_VIDIOC_PRIVATE + 18, uint8_t *)
-#define VIDIOC_MSM_AXI_RELEASE _IO('V', BASE_VIDIOC_PRIVATE + 19)
-#define VIDIOC_MSM_AXI_CFG _IOWR('V', BASE_VIDIOC_PRIVATE + 20, void *)
-#define VIDIOC_MSM_AXI_IRQ _IOWR('V', BASE_VIDIOC_PRIVATE + 21, void *)
-#define VIDIOC_MSM_AXI_BUF_CFG _IOWR('V', BASE_VIDIOC_PRIVATE + 22, void *)
-#define VIDIOC_MSM_AXI_RDI_COUNT_UPDATE _IOWR('V', BASE_VIDIOC_PRIVATE + 23, void *)
-#define VIDIOC_MSM_VFE_INIT _IO('V', BASE_VIDIOC_PRIVATE + 24)
-#define VIDIOC_MSM_VFE_RELEASE _IO('V', BASE_VIDIOC_PRIVATE + 25)
-struct msm_camera_v4l2_ioctl_t {
- uint32_t id;
- uint32_t len;
- uint32_t trans_code;
- void * ioctl_ptr;
-};
-struct msm_camera_vfe_params_t {
- uint32_t operation_mode;
- uint32_t capture_count;
- uint8_t skip_reset;
- uint8_t stop_immediately;
- uint16_t port_info;
- uint32_t inst_handle;
- uint16_t cmd_type;
-};
-enum msm_camss_irq_idx {
- CAMERA_SS_IRQ_0,
- CAMERA_SS_IRQ_1,
- CAMERA_SS_IRQ_2,
- CAMERA_SS_IRQ_3,
- CAMERA_SS_IRQ_4,
- CAMERA_SS_IRQ_5,
- CAMERA_SS_IRQ_6,
- CAMERA_SS_IRQ_7,
- CAMERA_SS_IRQ_8,
- CAMERA_SS_IRQ_9,
- CAMERA_SS_IRQ_10,
- CAMERA_SS_IRQ_11,
- CAMERA_SS_IRQ_12,
- CAMERA_SS_IRQ_MAX
-};
-enum msm_cam_hw_idx {
- MSM_CAM_HW_MICRO,
- MSM_CAM_HW_CCI,
- MSM_CAM_HW_CSI0,
- MSM_CAM_HW_CSI1,
- MSM_CAM_HW_CSI2,
- MSM_CAM_HW_CSI3,
- MSM_CAM_HW_ISPIF,
- MSM_CAM_HW_CPP,
- MSM_CAM_HW_VFE0,
- MSM_CAM_HW_VFE1,
- MSM_CAM_HW_JPEG0,
- MSM_CAM_HW_JPEG1,
- MSM_CAM_HW_JPEG2,
- MSM_CAM_HW_MAX
-};
-struct msm_camera_irq_cfg {
- uint32_t cam_hw_mask;
- uint8_t irq_idx;
- uint8_t num_hwcore;
-};
-#define MSM_IRQROUTER_CFG_COMPIRQ _IOWR('V', BASE_VIDIOC_PRIVATE, void *)
-#define MAX_NUM_CPP_STRIPS 8
-enum msm_cpp_frame_type {
- MSM_CPP_OFFLINE_FRAME,
- MSM_CPP_REALTIME_FRAME,
-};
-struct msm_cpp_frame_info_t {
- int32_t frame_id;
- uint32_t inst_id;
- uint32_t client_id;
- enum msm_cpp_frame_type frame_type;
- uint32_t num_strips;
-};
-struct msm_ver_num_info {
- uint32_t main;
- uint32_t minor;
- uint32_t rev;
-};
-#define VIDIOC_MSM_CPP_CFG _IOWR('V', BASE_VIDIOC_PRIVATE, struct msm_camera_v4l2_ioctl_t)
-#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 V4L2_EVENT_CPP_FRAME_DONE (V4L2_EVENT_PRIVATE_START + 0)
-#define CLR_DEVID_MODE(handle) (handle &= 0x00FFFFFF)
-#define SET_DEVID_MODE(handle,data) (handle |= ((0x1 << 31) | ((data & 0x7F) << 24)))
-#define GET_DEVID_MODE(handle) ((handle & 0x80000000) ? ((handle & 0x7F000000) >> 24) : 0xFF)
-#define CLR_IMG_MODE(handle) (handle &= 0xFF00FFFF)
-#define SET_IMG_MODE(handle,data) (handle |= ((0x1 << 23) | ((data & 0x7F) << 16)))
-#define GET_IMG_MODE(handle) ((handle & 0x800000) ? ((handle & 0x7F0000) >> 16) : 0xFF)
-#define CLR_MCTLPP_INST_IDX(handle) (handle &= 0xFFFF00FF)
-#define SET_MCTLPP_INST_IDX(handle,data) (handle |= ((0x1 << 15) | ((data & 0x7F) << 8)))
-#define GET_MCTLPP_INST_IDX(handle) ((handle & 0x8000) ? ((handle & 0x7F00) >> 8) : 0xFF)
-#define CLR_VIDEO_INST_IDX(handle) (handle &= 0xFFFFFF00)
-#define GET_VIDEO_INST_IDX(handle) ((handle & 0x80) ? (handle & 0x7F) : 0xFF)
-#define SET_VIDEO_INST_IDX(handle,data) (handle |= (0x1 << 7) | (data & 0x7F))
-#endif
-
diff --git a/sdm710/kernel-headers/media/msm_camsensor_sdk.h b/sdm710/kernel-headers/media/msm_camsensor_sdk.h
deleted file mode 100644
index c5a5a739..00000000
--- a/sdm710/kernel-headers/media/msm_camsensor_sdk.h
+++ /dev/null
@@ -1,383 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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
-#define MAX_POWER_CONFIG 12
-#define GPIO_OUT_LOW (0 << 1)
-#define GPIO_OUT_HIGH (1 << 1)
-#define CSI_EMBED_DATA 0x12
-#define CSI_RESERVED_DATA_0 0x13
-#define CSI_YUV422_8 0x1E
-#define CSI_RAW8 0x2A
-#define CSI_RAW10 0x2B
-#define CSI_RAW12 0x2C
-#define CSI_DECODE_6BIT 0
-#define CSI_DECODE_8BIT 1
-#define CSI_DECODE_10BIT 2
-#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
-#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')
-#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
-#define MAX_ACTUATOR_REGION 5
-#define NUM_ACTUATOR_DIR 2
-#define MAX_ACTUATOR_SCENARIO 8
-#define MAX_ACT_MOD_NAME_SIZE 32
-#define MAX_ACT_NAME_SIZE 32
-#define MAX_ACTUATOR_INIT_SET 120
-#define MAX_I2C_REG_SET 12
-#define MAX_LED_TRIGGERS 3
-#define MSM_EEPROM_MEMORY_MAP_MAX_SIZE 80
-#define MSM_EEPROM_MAX_MEM_MAP_CNT 8
-#define MSM_SENSOR_BYPASS_VIDEO_NODE 1
-enum msm_sensor_camera_id_t {
- CAMERA_0,
- CAMERA_1,
- CAMERA_2,
- CAMERA_3,
- MAX_CAMERAS,
-};
-enum i2c_freq_mode_t {
- I2C_STANDARD_MODE,
- I2C_FAST_MODE,
- I2C_CUSTOM_MODE,
- I2C_FAST_PLUS_MODE,
- I2C_MAX_MODES,
-};
-enum camb_position_t {
- BACK_CAMERA_B,
- FRONT_CAMERA_B,
- AUX_CAMERA_B = 0x100,
- INVALID_CAMERA_B,
-};
-enum msm_sensor_power_seq_type_t {
- SENSOR_CLK,
- SENSOR_GPIO,
- SENSOR_VREG,
- SENSOR_I2C_MUX,
- SENSOR_I2C,
-};
-enum msm_camera_i2c_reg_addr_type {
- MSM_CAMERA_I2C_BYTE_ADDR = 1,
- MSM_CAMERA_I2C_WORD_ADDR,
- MSM_CAMERA_I2C_3B_ADDR,
- MSM_CAMERA_I2C_DWORD_ADDR,
- MSM_CAMERA_I2C_ADDR_TYPE_MAX,
-};
-#define MSM_CAMERA_I2C_DWORD_ADDR MSM_CAMERA_I2C_DWORD_ADDR
-enum msm_camera_i2c_data_type {
- MSM_CAMERA_I2C_BYTE_DATA = 1,
- MSM_CAMERA_I2C_WORD_DATA,
- MSM_CAMERA_I2C_DWORD_DATA,
- MSM_CAMERA_I2C_SET_BYTE_MASK,
- 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,
- MSM_CAMERA_I2C_DATA_TYPE_MAX,
-};
-enum msm_sensor_power_seq_gpio_t {
- SENSOR_GPIO_RESET,
- SENSOR_GPIO_STANDBY,
- SENSOR_GPIO_AF_PWDM,
- SENSOR_GPIO_VIO,
- SENSOR_GPIO_VANA,
- SENSOR_GPIO_VDIG,
- SENSOR_GPIO_VAF,
- SENSOR_GPIO_FL_EN,
- SENSOR_GPIO_FL_NOW,
- SENSOR_GPIO_FL_RESET,
- SENSOR_GPIO_CUSTOM1,
- SENSOR_GPIO_CUSTOM2,
- SENSOR_GPIO_CUSTOM3,
- SENSOR_GPIO_MAX,
-};
-#define SENSOR_GPIO_CUSTOM3 SENSOR_GPIO_CUSTOM3
-enum msm_ir_cut_filter_gpio_t {
- IR_CUT_FILTER_GPIO_P = 0,
- IR_CUT_FILTER_GPIO_M,
- IR_CUT_FILTER_GPIO_MAX,
-};
-#define IR_CUT_FILTER_GPIO_P IR_CUT_FILTER_GPIO_P
-#define IR_CUT_FILTER_GPIO_M IR_CUT_FILTER_GPIO_M
-#define R_CUT_FILTER_GPIO_MAX IR_CUT_FILTER_GPIO_MAX
-enum msm_camera_vreg_name_t {
- CAM_VDIG,
- CAM_VIO,
- CAM_VANA,
- CAM_VAF,
- CAM_V_CUSTOM1,
- CAM_V_CUSTOM2,
- CAM_VREG_MAX,
-};
-enum msm_sensor_clk_type_t {
- SENSOR_CAM_MCLK,
- SENSOR_CAM_CLK,
- SENSOR_CAM_CLK_MAX,
-};
-enum camerab_mode_t {
- CAMERA_MODE_2D_B = (1 << 0),
- CAMERA_MODE_3D_B = (1 << 1),
- CAMERA_MODE_INVALID = (1 << 2),
-};
-enum msm_actuator_data_type {
- MSM_ACTUATOR_BYTE_DATA = 1,
- MSM_ACTUATOR_WORD_DATA,
-};
-enum msm_actuator_addr_type {
- MSM_ACTUATOR_BYTE_ADDR = 1,
- MSM_ACTUATOR_WORD_ADDR,
-};
-enum msm_actuator_write_type {
- MSM_ACTUATOR_WRITE_HW_DAMP,
- MSM_ACTUATOR_WRITE_DAC,
- MSM_ACTUATOR_WRITE,
- MSM_ACTUATOR_WRITE_DIR_REG,
- MSM_ACTUATOR_POLL,
- MSM_ACTUATOR_READ_WRITE,
-};
-enum msm_actuator_i2c_operation {
- MSM_ACT_WRITE = 0,
- MSM_ACT_POLL,
-};
-enum actuator_type {
- ACTUATOR_VCM,
- ACTUATOR_PIEZO,
- ACTUATOR_HVCM,
- ACTUATOR_BIVCM,
-};
-enum msm_flash_driver_type {
- FLASH_DRIVER_PMIC,
- FLASH_DRIVER_I2C,
- FLASH_DRIVER_GPIO,
- FLASH_DRIVER_DEFAULT
-};
-enum msm_flash_cfg_type_t {
- CFG_FLASH_INIT,
- CFG_FLASH_RELEASE,
- CFG_FLASH_OFF,
- CFG_FLASH_LOW,
- CFG_FLASH_HIGH,
-};
-enum msm_ir_led_cfg_type_t {
- CFG_IR_LED_INIT = 0,
- CFG_IR_LED_RELEASE,
- CFG_IR_LED_OFF,
- CFG_IR_LED_ON,
-};
-#define CFG_IR_LED_INIT CFG_IR_LED_INIT
-#define CFG_IR_LED_RELEASE CFG_IR_LED_RELEASE
-#define CFG_IR_LED_OFF CFG_IR_LED_OFF
-#define CFG_IR_LED_ON CFG_IR_LED_ON
-enum msm_laser_led_cfg_type_t {
- CFG_LASER_LED_INIT,
- CFG_LASER_LED_CONTROL,
-};
-#define CFG_LASER_LED_INIT CFG_LASER_LED_INIT
-#define CFG_LASER_LED_CONTROL CFG_LASER_LED_CONTROL
-enum msm_ir_cut_cfg_type_t {
- CFG_IR_CUT_INIT = 0,
- CFG_IR_CUT_RELEASE,
- CFG_IR_CUT_OFF,
- CFG_IR_CUT_ON,
-};
-#define CFG_IR_CUT_INIT CFG_IR_CUT_INIT
-#define CFG_IR_CUT_RELEASE CFG_IR_CUT_RELEASE
-#define CFG_IR_CUT_OFF CFG_IR_CUT_OFF
-#define CFG_IR_CUT_ON CFG_IR_CUT_ON
-enum msm_sensor_output_format_t {
- MSM_SENSOR_BAYER,
- MSM_SENSOR_YCBCR,
- MSM_SENSOR_META,
-};
-struct msm_sensor_power_setting {
- enum msm_sensor_power_seq_type_t seq_type;
- unsigned short seq_val;
- long config_val;
- unsigned short delay;
- void * data[10];
-};
-struct msm_sensor_power_setting_array {
- 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];
- struct msm_sensor_power_setting * power_down_setting;
- unsigned short size_down;
-};
-enum msm_camera_i2c_operation {
- MSM_CAM_WRITE = 0,
- MSM_CAM_POLL,
- MSM_CAM_READ,
-};
-struct msm_sensor_i2c_sync_params {
- unsigned int cid;
- int csid;
- unsigned short line;
- unsigned short delay;
-};
-struct msm_camera_reg_settings_t {
- uint16_t reg_addr;
- 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;
- uint16_t delay;
-};
-struct msm_eeprom_mem_map_t {
- int slave_addr;
- struct msm_camera_reg_settings_t mem_settings[MSM_EEPROM_MEMORY_MAP_MAX_SIZE];
- int memory_map_size;
-};
-struct msm_eeprom_memory_map_array {
- 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 {
- int modes_supported;
- enum camb_position_t position;
- unsigned int sensor_mount_angle;
-};
-struct msm_sensor_id_info_t {
- unsigned short sensor_id_reg_addr;
- unsigned short sensor_id;
- unsigned short sensor_id_mask;
-};
-struct msm_camera_sensor_slave_info {
- char sensor_name[32];
- char eeprom_name[32];
- char actuator_name[32];
- char ois_name[32];
- char flash_name[32];
- enum msm_sensor_camera_id_t camera_id;
- 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;
- 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;
- uint8_t bypass_video_node_creation;
-};
-struct msm_camera_i2c_reg_array {
- unsigned short reg_addr;
- unsigned short reg_data;
- unsigned int delay;
-};
-struct msm_camera_i2c_reg_setting {
- struct msm_camera_i2c_reg_array * reg_setting;
- unsigned short size;
- enum msm_camera_i2c_reg_addr_type addr_type;
- enum msm_camera_i2c_data_type data_type;
- unsigned short delay;
-};
-struct msm_camera_csid_vc_cfg {
- unsigned char cid;
- unsigned char dt;
- unsigned char decode_format;
-};
-struct msm_camera_csid_lut_params {
- unsigned char num_cid;
- 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 {
- unsigned char lane_cnt;
- unsigned short lane_assign;
- unsigned char phy_sel;
- unsigned int csi_clk;
- struct msm_camera_csid_lut_params lut_params;
- unsigned char csi_3p_sel;
-};
-struct msm_camera_csid_testmode_parms {
- unsigned int num_bytes_per_line;
- unsigned int num_lines;
- unsigned int h_blanking_count;
- unsigned int v_blanking_count;
- unsigned int payload_mode;
-};
-struct msm_camera_csiphy_params {
- unsigned char lane_cnt;
- unsigned char settle_cnt;
- unsigned short lane_mask;
- unsigned char combo_mode;
- unsigned char csid_core;
- unsigned int csiphy_clk;
- unsigned char csi_3phase;
- uint64_t data_rate;
-};
-struct msm_camera_i2c_seq_reg_array {
- unsigned short reg_addr;
- unsigned char reg_data[I2C_SEQ_REG_DATA_MAX];
- unsigned short reg_data_size;
-};
-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;
- unsigned short delay;
-};
-struct msm_actuator_reg_params_t {
- enum msm_actuator_write_type reg_write_type;
- unsigned int hw_mask;
- unsigned short reg_addr;
- unsigned short hw_shift;
- unsigned short data_shift;
- unsigned short data_type;
- unsigned short addr_type;
- unsigned short reg_data;
- unsigned short delay;
-};
-struct damping_params_t {
- unsigned int damping_step;
- unsigned int damping_delay;
- unsigned int hw_params;
-};
-struct region_params_t {
- unsigned short step_bound[2];
- unsigned short code_per_step;
- unsigned int qvalue;
-};
-struct reg_settings_t {
- 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;
- enum msm_actuator_i2c_operation i2c_operation;
- unsigned int delay;
-};
-struct msm_camera_i2c_reg_setting_array {
- 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;
- unsigned short delay;
-};
-#endif
-
diff --git a/sdm710/kernel-headers/media/msm_fd.h b/sdm710/kernel-headers/media/msm_fd.h
deleted file mode 100644
index 08a02174..00000000
--- a/sdm710/kernel-headers/media/msm_fd.h
+++ /dev/null
@@ -1,57 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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>
-struct msm_fd_event {
- __u32 buf_index;
- __u32 frame_id;
- __u32 face_cnt;
-};
-enum msm_fd_pose {
- MSM_FD_POSE_FRONT,
- MSM_FD_POSE_RIGHT_DIAGONAL,
- MSM_FD_POSE_RIGHT,
- MSM_FD_POSE_LEFT_DIAGONAL,
- MSM_FD_POSE_LEFT,
-};
-struct msm_fd_face_data {
- __u32 pose;
- __u32 angle;
- __u32 confidence;
- __u32 reserved;
- struct v4l2_rect face;
-};
-struct msm_fd_result {
- __u32 frame_id;
- __u32 face_cnt;
- struct msm_fd_face_data * face_data;
-};
-#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)
-#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)
-#define V4L2_CID_FD_WORK_MEMORY_FD (V4L2_CID_PRIVATE_BASE + 6)
-#endif
-
diff --git a/sdm710/kernel-headers/media/msm_gemini.h b/sdm710/kernel-headers/media/msm_gemini.h
deleted file mode 100644
index 1467352e..00000000
--- a/sdm710/kernel-headers/media/msm_gemini.h
+++ /dev/null
@@ -1,90 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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>
-#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 *)
-#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)
-#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 *)
-#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)
-#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
-#define MSM_GEMINI_MODE_OFFLINE_ROTATION 3
-enum msm_gmn_out_mode {
- MSM_GMN_OUTMODE_FRAGMENTED,
- MSM_GMN_OUTMODE_SINGLE
-};
-struct msm_gemini_ctrl_cmd {
- uint32_t type;
- uint32_t len;
- void * value;
-};
-#define MSM_GEMINI_EVT_RESET 0
-#define MSM_GEMINI_EVT_FRAMEDONE 1
-#define MSM_GEMINI_EVT_ERR 2
-struct msm_gemini_buf {
- uint32_t type;
- int fd;
- void * vaddr;
- uint32_t y_off;
- uint32_t y_len;
- uint32_t framedone_len;
- uint32_t cbcr_off;
- uint32_t cbcr_len;
- uint32_t num_of_mcu_rows;
- uint32_t offset;
-};
-#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
-#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
-struct msm_gemini_hw_cmd {
- uint32_t type : 4;
- uint32_t n : 12;
- uint32_t offset : 16;
- uint32_t mask;
- union {
- uint32_t data;
- uint32_t * pdata;
- };
-};
-struct msm_gemini_hw_cmds {
- uint32_t m;
- struct msm_gemini_hw_cmd hw_cmd[1];
-};
-#endif
-
diff --git a/sdm710/kernel-headers/media/msm_gestures.h b/sdm710/kernel-headers/media/msm_gestures.h
deleted file mode 100644
index 3a7f1cf2..00000000
--- a/sdm710/kernel-headers/media/msm_gestures.h
+++ /dev/null
@@ -1,54 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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>
-#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)
-#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
-#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)
-#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)
-#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 {
- int type;
- void * value;
- int len;
- int fd;
- uint32_t cookie;
-};
-struct msm_ges_evt {
- void * evt_data;
- int evt_len;
-};
-#endif
-
diff --git a/sdm710/kernel-headers/media/msm_isp.h b/sdm710/kernel-headers/media/msm_isp.h
deleted file mode 100644
index bd11cb5e..00000000
--- a/sdm710/kernel-headers/media/msm_isp.h
+++ /dev/null
@@ -1,334 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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
-#define MSG_ID_START_ACK 1
-#define MSG_ID_STOP_ACK 2
-#define MSG_ID_UPDATE_ACK 3
-#define MSG_ID_OUTPUT_P 4
-#define MSG_ID_OUTPUT_T 5
-#define MSG_ID_OUTPUT_S 6
-#define MSG_ID_OUTPUT_V 7
-#define MSG_ID_SNAPSHOT_DONE 8
-#define MSG_ID_STATS_AEC 9
-#define MSG_ID_STATS_AF 10
-#define MSG_ID_STATS_AWB 11
-#define MSG_ID_STATS_RS 12
-#define MSG_ID_STATS_CS 13
-#define MSG_ID_STATS_IHIST 14
-#define MSG_ID_STATS_SKIN 15
-#define MSG_ID_EPOCH1 16
-#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
-#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
-#define MSG_ID_AE_OVERFLOW 25
-#define MSG_ID_AF_OVERFLOW 26
-#define MSG_ID_AWB_OVERFLOW 27
-#define MSG_ID_RS_OVERFLOW 28
-#define MSG_ID_CS_OVERFLOW 29
-#define MSG_ID_IHIST_OVERFLOW 30
-#define MSG_ID_SKIN_OVERFLOW 31
-#define MSG_ID_AXI_ERROR 32
-#define MSG_ID_CAMIF_OVERFLOW 33
-#define MSG_ID_VIOLATION 34
-#define MSG_ID_CAMIF_ERROR 35
-#define MSG_ID_BUS_OVERFLOW 36
-#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
-#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
-#define MSG_ID_OUTPUT_TERTIARY2 45
-#define MSG_ID_STATS_BG 46
-#define MSG_ID_STATS_BF 47
-#define MSG_ID_STATS_BHIST 48
-#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
-#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
-#define VFE_CMD_RESET 2
-#define VFE_CMD_START 3
-#define VFE_CMD_TEST_GEN_START 4
-#define VFE_CMD_OPERATION_CFG 5
-#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
-#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
-#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
-#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
-#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
-#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
-#define VFE_CMD_DUMMY_3 30
-#define VFE_CMD_UPDATE 31
-#define VFE_CMD_BL_LVL_UPDATE 32
-#define VFE_CMD_DEMUX_UPDATE 33
-#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
-#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
-#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
-#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
-#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
-#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
-#define VFE_CMD_EPOCH2_ACK 58
-#define VFE_CMD_START_RECORDING 59
-#define VFE_CMD_STOP_RECORDING 60
-#define VFE_CMD_DUMMY_5 61
-#define VFE_CMD_DUMMY_6 62
-#define VFE_CMD_CAPTURE 63
-#define VFE_CMD_DUMMY_7 64
-#define VFE_CMD_STOP 65
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#define VFE_CMD_LA_SETUP 102
-#define VFE_CMD_LINEARIZATION_CFG 103
-#define VFE_CMD_DEMOSAICV3 104
-#define VFE_CMD_DEMOSAICV3_ABCC_CFG 105
-#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
-#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
-#define VFE_CMD_ZSL 114
-#define VFE_CMD_LINEARIZATION_UPDATE 115
-#define VFE_CMD_DEMOSAICV3_ABF_UPDATE 116
-#define VFE_CMD_CLF_CFG 117
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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 {
- int32_t id;
- uint16_t length;
- void * value;
-};
-#define VPE_CMD_DUMMY_0 0
-#define VPE_CMD_INIT 1
-#define VPE_CMD_DEINIT 2
-#define VPE_CMD_ENABLE 3
-#define VPE_CMD_DISABLE 4
-#define VPE_CMD_RESET 5
-#define VPE_CMD_FLUSH 6
-#define VPE_CMD_OPERATION_MODE_CFG 7
-#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
-#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
-#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
-#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
-#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
-#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)
-#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)
-struct msm_vpe_op_mode_cfg {
- uint8_t op_mode_cfg[VPE_OPERATION_MODE_CFG_LEN];
-};
-struct msm_vpe_input_plane_cfg {
- 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];
-};
-struct msm_vpe_input_plane_update_cfg {
- uint8_t input_plane_update_cfg[VPE_INPUT_PLANE_UPDATE_LEN];
-};
-struct msm_vpe_scaler_cfg {
- uint8_t scaler_cfg[VPE_SCALER_CONFIG_LEN];
-};
-struct msm_vpe_flush_frame_buffer {
- uint32_t src_buf_handle;
- uint32_t dest_buf_handle;
- int path;
-};
-struct msm_mctl_pp_frame_buffer {
- uint32_t buf_handle;
- int path;
-};
-struct msm_mctl_pp_divert_pp {
- int path;
- int enable;
-};
-struct msm_vpe_clock_rate {
- uint32_t rate;
-};
-#define MSM_MCTL_PP_VPE_FRAME_ACK (1 << 0)
-#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)
-#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)
-#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)
-#define VFE_OUTPUTS_RDI0 BIT(11)
-#define VFE_OUTPUTS_RDI1 BIT(12)
-struct msm_frame_info {
- uint32_t inst_handle;
- uint32_t path;
-};
-#endif
-
diff --git a/sdm710/kernel-headers/media/msm_jpeg.h b/sdm710/kernel-headers/media/msm_jpeg.h
deleted file mode 100644
index 6f156b8c..00000000
--- a/sdm710/kernel-headers/media/msm_jpeg.h
+++ /dev/null
@@ -1,91 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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>
-#define OUTPUT_H2V1 0
-#define OUTPUT_H2V2 1
-#define OUTPUT_BYTE 6
-#define MSM_JPEG_IOCTL_MAGIC 'g'
-#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)
-#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)
-#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)
-#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)
-#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
-struct msm_jpeg_ctrl_cmd {
- uint32_t type;
- uint32_t len;
- void * value;
-};
-#define MSM_JPEG_EVT_RESET 0
-#define MSM_JPEG_EVT_SESSION_DONE 1
-#define MSM_JPEG_EVT_ERR 2
-struct msm_jpeg_buf {
- uint32_t type;
- int fd;
- void * vaddr;
- uint32_t y_off;
- uint32_t y_len;
- uint32_t framedone_len;
- uint32_t cbcr_off;
- uint32_t cbcr_len;
- uint32_t num_of_mcu_rows;
- uint32_t offset;
- uint32_t pln2_off;
- uint32_t pln2_len;
-};
-#define MSM_JPEG_HW_CMD_TYPE_READ 0
-#define MSM_JPEG_HW_CMD_TYPE_WRITE 1
-#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
-#define MSM_JPEG_HW_CMD_TYPE_UDELAY 6
-struct msm_jpeg_hw_cmd {
- uint32_t type : 4;
- uint32_t n : 12;
- uint32_t offset : 16;
- uint32_t mask;
- union {
- uint32_t data;
- uint32_t * pdata;
- };
-};
-struct msm_jpeg_hw_cmds {
- uint32_t m;
- struct msm_jpeg_hw_cmd hw_cmd[1];
-};
-#endif
-
diff --git a/sdm710/kernel-headers/media/msm_jpeg_dma.h b/sdm710/kernel-headers/media/msm_jpeg_dma.h
deleted file mode 100644
index 51f888be..00000000
--- a/sdm710/kernel-headers/media/msm_jpeg_dma.h
+++ /dev/null
@@ -1,29 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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)
-#define V4L2_CID_JPEG_DMA_MAX_DOWN_SCALE (V4L2_CID_PRIVATE_BASE + 1)
-struct msm_jpeg_dma_buff {
- int32_t fd;
- uint32_t offset;
-};
-#endif
-
diff --git a/sdm710/kernel-headers/media/msm_media_info.h b/sdm710/kernel-headers/media/msm_media_info.h
deleted file mode 100644
index 0f4d7f75..00000000
--- a/sdm710/kernel-headers/media/msm_media_info.h
+++ /dev/null
@@ -1,1398 +0,0 @@
-#ifndef __MEDIA_INFO_H__
-#define __MEDIA_INFO_H__
-
-#ifndef MSM_MEDIA_ALIGN
-#define MSM_MEDIA_ALIGN(__sz, __align) (((__align) & ((__align) - 1)) ?\
- ((((__sz) + (__align) - 1) / (__align)) * (__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,
- /*
- * The buffer can be of 2 types:
- * (1) Venus NV12 UBWC Progressive
- * (2) Venus NV12 UBWC Interlaced
- *
- * (1) Venus NV12 UBWC Progressive Buffer Format:
- * 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)
- *
- *
- * (2) Venus NV12 UBWC Interlaced Buffer Format:
- * Compressed Macro-tile format for NV12 interlaced.
- * Contains 8 planes in the following order -
- * (A) Y_Meta_Top_Field_Plane
- * (B) Y_UBWC_Top_Field_Plane
- * (C) UV_Meta_Top_Field_Plane
- * (D) UV_UBWC_Top_Field_Plane
- * (E) Y_Meta_Bottom_Field_Plane
- * (F) Y_UBWC_Bottom_Field_Plane
- * (G) UV_Meta_Bottom_Field_Plane
- * (H) UV_UBWC_Bottom_Field_Plane
- * Y_Meta_Top_Field_Plane consists of meta information to decode
- * compressed tile data for Y_UBWC_Top_Field_Plane.
- * Y_UBWC_Top_Field_Plane consists of Y data in compressed macro-tile
- * format for top field of an interlaced frame.
- * UBWC decoder block will use the Y_Meta_Top_Field_Plane data together
- * with Y_UBWC_Top_Field_Plane data to produce loss-less uncompressed
- * 8 bit Y samples for top field of an interlaced frame.
- *
- * UV_Meta_Top_Field_Plane consists of meta information to decode
- * compressed tile data in UV_UBWC_Top_Field_Plane.
- * UV_UBWC_Top_Field_Plane consists of UV data in compressed macro-tile
- * format for top field of an interlaced frame.
- * UBWC decoder block will use UV_Meta_Top_Field_Plane data together
- * with UV_UBWC_Top_Field_Plane data to produce loss-less uncompressed
- * 8 bit subsampled color difference samples for top field of an
- * interlaced frame.
- *
- * Each tile in Y_UBWC_Top_Field_Plane/UV_UBWC_Top_Field_Plane is
- * independently decodable and randomly accessible. There is no
- * dependency between tiles.
- *
- * Y_Meta_Bottom_Field_Plane consists of meta information to decode
- * compressed tile data for Y_UBWC_Bottom_Field_Plane.
- * Y_UBWC_Bottom_Field_Plane consists of Y data in compressed macro-tile
- * format for bottom field of an interlaced frame.
- * UBWC decoder block will use the Y_Meta_Bottom_Field_Plane data
- * together with Y_UBWC_Bottom_Field_Plane data to produce loss-less
- * uncompressed 8 bit Y samples for bottom field of an interlaced frame.
- *
- * UV_Meta_Bottom_Field_Plane consists of meta information to decode
- * compressed tile data in UV_UBWC_Bottom_Field_Plane.
- * UV_UBWC_Bottom_Field_Plane consists of UV data in compressed
- * macro-tile format for bottom field of an interlaced frame.
- * UBWC decoder block will use UV_Meta_Bottom_Field_Plane data together
- * with UV_UBWC_Bottom_Field_Plane data to produce loss-less
- * uncompressed 8 bit subsampled color difference samples for bottom
- * field of an interlaced frame.
- *
- * Each tile in Y_UBWC_Bottom_Field_Plane/UV_UBWC_Bottom_Field_Plane is
- * independently decodable and randomly accessible. There is no
- * dependency between tiles.
- *
- * <-----Y_TF_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 . . Half_height |
- * M M M M M M M M M M M M . . | Meta_Y_TF_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_TF 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* . . . . Half_height |
- * Y* Y* Y* Y* Y* Y* Y* Y* . . . . | Macro_tile_Y_TF_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_TF_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_TF_Scanlines
- * . . . . . . . . . . . . . . |
- * . . . . . . . . . . . . . . V
- * . . . . . . . . . . . . . . -------> Buffer size aligned to 4k
- * <-Compressed tile UV_TF 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_TF_Scanlines
- * . . . . . . . . . . . . . . . . |
- * . . . . . . . . . . . . . . . . V
- * . . . . . . . . . . . . . . . . -------> Buffer size aligned to 4k
- * <-----Y_BF_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 . . Half_height |
- * M M M M M M M M M M M M . . | Meta_Y_BF_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_BF 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* . . . . Half_height |
- * Y* Y* Y* Y* Y* Y* Y* Y* . . . . | Macro_tile_Y_BF_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_BF_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_BF_Scanlines
- * . . . . . . . . . . . . . . |
- * . . . . . . . . . . . . . . V
- * . . . . . . . . . . . . . . -------> Buffer size aligned to 4k
- * <-Compressed tile UV_BF 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_BF_Scanlines
- * . . . . . . . . . . . . . . . . |
- * . . . . . . . . . . . . . . . . V
- * . . . . . . . . . . . . . . . . -------> Buffer size aligned to 4k
- *
- * Half_height = (Height+1)>>1
- * Y_TF_Stride = align(Width, 128)
- * UV_TF_Stride = align(Width, 128)
- * Y_TF_Scanlines = align(Half_height, 32)
- * UV_TF_Scanlines = align((Half_height+1)/2, 32)
- * Y_UBWC_TF_Plane_size = align(Y_TF_Stride * Y_TF_Scanlines, 4096)
- * UV_UBWC_TF_Plane_size = align(UV_TF_Stride * UV_TF_Scanlines, 4096)
- * Y_TF_Meta_Stride = align(roundup(Width, Y_TileWidth), 64)
- * Y_TF_Meta_Scanlines = align(roundup(Half_height, Y_TileHeight), 16)
- * Y_TF_Meta_Plane_size =
- * align(Y_TF_Meta_Stride * Y_TF_Meta_Scanlines, 4096)
- * UV_TF_Meta_Stride = align(roundup(Width, UV_TileWidth), 64)
- * UV_TF_Meta_Scanlines = align(roundup(Half_height, UV_TileHeight), 16)
- * UV_TF_Meta_Plane_size =
- * align(UV_TF_Meta_Stride * UV_TF_Meta_Scanlines, 4096)
- * Y_BF_Stride = align(Width, 128)
- * UV_BF_Stride = align(Width, 128)
- * Y_BF_Scanlines = align(Half_height, 32)
- * UV_BF_Scanlines = align((Half_height+1)/2, 32)
- * Y_UBWC_BF_Plane_size = align(Y_BF_Stride * Y_BF_Scanlines, 4096)
- * UV_UBWC_BF_Plane_size = align(UV_BF_Stride * UV_BF_Scanlines, 4096)
- * Y_BF_Meta_Stride = align(roundup(Width, Y_TileWidth), 64)
- * Y_BF_Meta_Scanlines = align(roundup(Half_height, Y_TileHeight), 16)
- * Y_BF_Meta_Plane_size =
- * align(Y_BF_Meta_Stride * Y_BF_Meta_Scanlines, 4096)
- * UV_BF_Meta_Stride = align(roundup(Width, UV_TileWidth), 64)
- * UV_BF_Meta_Scanlines = align(roundup(Half_height, UV_TileHeight), 16)
- * UV_BF_Meta_Plane_size =
- * align(UV_BF_Meta_Stride * UV_BF_Meta_Scanlines, 4096)
- * Extradata = 8k
- *
- * Total size = align( Y_UBWC_TF_Plane_size + UV_UBWC_TF_Plane_size +
- * Y_TF_Meta_Plane_size + UV_TF_Meta_Plane_size +
- * Y_UBWC_BF_Plane_size + UV_UBWC_BF_Plane_size +
- * Y_BF_Meta_Plane_size + UV_BF_Meta_Plane_size +
- * + max(Extradata, Y_TF_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,
- /* Venus RGBA1010102 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, 256)
- * RGB_Scanlines = align(Height, 16)
- * 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_RGBA1010102_UBWC,
- /* Venus RGB565 UBWC format:
- * Contains 2 planes in the following order -
- * (A) Meta plane
- * (B) RGB 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 * 2, 128)
- * RGB_Scanlines = align(Height, 16)
- * 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_RGB565_UBWC,
- /* P010 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 * 2, 256)
- * UV_Stride = align(Width * 2, 256)
- * Y_Scanlines = align(Height, 16)
- * 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_P010_UBWC,
- /* Venus P010:
- * YUV 4:2:0 image with a plane of 10 bit Y samples followed
- * by an interleaved U/V plane containing 10 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 * 2 aligned to 128
- * UV_Stride : Width * 2 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_P010,
-};
-
-#define COLOR_FMT_RGBA1010102_UBWC COLOR_FMT_RGBA1010102_UBWC
-#define COLOR_FMT_RGB565_UBWC COLOR_FMT_RGB565_UBWC
-#define COLOR_FMT_P010_UBWC COLOR_FMT_P010_UBWC
-#define COLOR_FMT_P010 COLOR_FMT_P010
-
-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;
-}
-
-/*
- * Function arguments:
- * @color_fmt
- * @width
- * Progressive: width
- * Interlaced: width
- */
-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;
- case COLOR_FMT_P010_UBWC:
- alignment = 256;
- stride = MSM_MEDIA_ALIGN(width * 2, alignment);
- break;
- case COLOR_FMT_P010:
- alignment = 128;
- stride = MSM_MEDIA_ALIGN(width*2, alignment);
- break;
- default:
- break;
- }
-invalid_input:
- return stride;
-}
-
-/*
- * Function arguments:
- * @color_fmt
- * @width
- * Progressive: width
- * Interlaced: width
- */
-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;
- case COLOR_FMT_P010_UBWC:
- alignment = 256;
- stride = MSM_MEDIA_ALIGN(width * 2, alignment);
- break;
- case COLOR_FMT_P010:
- alignment = 128;
- stride = MSM_MEDIA_ALIGN(width*2, alignment);
- break;
- default:
- break;
- }
-invalid_input:
- return stride;
-}
-
-/*
- * Function arguments:
- * @color_fmt
- * @height
- * Progressive: height
- * Interlaced: (height+1)>>1
- */
-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:
- case COLOR_FMT_P010:
- alignment = 32;
- break;
- case COLOR_FMT_NV12_BPP10_UBWC:
- case COLOR_FMT_P010_UBWC:
- alignment = 16;
- break;
- default:
- return 0;
- }
- sclines = MSM_MEDIA_ALIGN(height, alignment);
-invalid_input:
- return sclines;
-}
-
-/*
- * Function arguments:
- * @color_fmt
- * @height
- * Progressive: height
- * Interlaced: (height+1)>>1
- */
-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:
- case COLOR_FMT_P010_UBWC:
- case COLOR_FMT_P010:
- alignment = 16;
- break;
- case COLOR_FMT_NV12_UBWC:
- alignment = 32;
- break;
- default:
- goto invalid_input;
- }
-
- sclines = MSM_MEDIA_ALIGN((height+1)>>1, alignment);
-
-invalid_input:
- return sclines;
-}
-
-/*
- * Function arguments:
- * @color_fmt
- * @width
- * Progressive: width
- * Interlaced: width
- */
-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:
- case COLOR_FMT_P010_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;
-}
-
-/*
- * Function arguments:
- * @color_fmt
- * @height
- * Progressive: height
- * Interlaced: (height+1)>>1
- */
-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:
- case COLOR_FMT_P010_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;
-}
-
-/*
- * Function arguments:
- * @color_fmt
- * @width
- * Progressive: width
- * Interlaced: width
- */
-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:
- case COLOR_FMT_P010_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+1)>>1, uv_tile_width);
- uv_meta_stride = MSM_MEDIA_ALIGN(uv_meta_stride, 64);
-
-invalid_input:
- return uv_meta_stride;
-}
-
-/*
- * Function arguments:
- * @color_fmt
- * @height
- * Progressive: height
- * Interlaced: (height+1)>>1
- */
-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:
- case COLOR_FMT_P010_UBWC:
- uv_tile_height = 4;
- break;
- default:
- goto invalid_input;
- }
-
- uv_meta_scanlines = MSM_MEDIA_ROUNDUP((height+1)>>1, 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, bpp = 4;
-
- if (!width)
- goto invalid_input;
-
- switch (color_fmt) {
- case COLOR_FMT_RGBA8888:
- alignment = 128;
- break;
- case COLOR_FMT_RGB565_UBWC:
- alignment = 256;
- bpp = 2;
- break;
- case COLOR_FMT_RGBA8888_UBWC:
- case COLOR_FMT_RGBA1010102_UBWC:
- alignment = 256;
- break;
- default:
- goto invalid_input;
- }
-
- stride = MSM_MEDIA_ALIGN(width * bpp, 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:
- case COLOR_FMT_RGBA1010102_UBWC:
- case COLOR_FMT_RGB565_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:
- case COLOR_FMT_RGBA1010102_UBWC:
- case COLOR_FMT_RGB565_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:
- case COLOR_FMT_RGBA1010102_UBWC:
- case COLOR_FMT_RGB565_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;
-}
-
-/*
- * Function arguments:
- * @color_fmt
- * @width
- * Progressive: width
- * Interlaced: width
- * @height
- * Progressive: height
- * Interlaced: height
- */
-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 w_alignment = 512;
- 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);
-
- /* Additional size to cover last row of non-aligned frame */
- if (width >= 2400 && height >= 2400) {
- size += MSM_MEDIA_ALIGN(width, w_alignment) *
- w_alignment;
- size = MSM_MEDIA_ALIGN(size, 4096);
- }
- break;
- case COLOR_FMT_P010:
- 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:
- y_sclines = VENUS_Y_SCANLINES(color_fmt, (height+1)>>1);
- y_ubwc_plane = MSM_MEDIA_ALIGN(y_stride * y_sclines, 4096);
- uv_sclines = VENUS_UV_SCANLINES(color_fmt, (height+1)>>1);
- 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+1)>>1);
- 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+1)>>1);
- 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)*2 +
- MSM_MEDIA_MAX(extra_size + 8192, 48 * y_stride);
- size = MSM_MEDIA_ALIGN(size, 4096);
-
- /* Additional size to cover last row of non-aligned frame */
- if (width >= 2400 && height >= 2400) {
- size += MSM_MEDIA_ALIGN(width, w_alignment) *
- w_alignment;
- size = MSM_MEDIA_ALIGN(size, 4096);
- }
- break;
- 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_P010_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;
- 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:
- case COLOR_FMT_RGBA1010102_UBWC:
- case COLOR_FMT_RGB565_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
diff --git a/sdm710/kernel-headers/media/msm_mercury.h b/sdm710/kernel-headers/media/msm_mercury.h
deleted file mode 100644
index cae9b2d2..00000000
--- a/sdm710/kernel-headers/media/msm_mercury.h
+++ /dev/null
@@ -1,90 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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>
-#define MSM_MERCURY_HW_VERSION_REG 0x0004
-#define OUTPUT_H2V1 0
-#define OUTPUT_H2V2 1
-#define OUTPUT_BYTE 6
-#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
-#define MSM_MERCURY_EVT_RESET 1
-#define MSM_MERCURY_EVT_FRAMEDONE 2
-#define MSM_MERCURY_EVT_ERR 3
-#define MSM_MERCURY_EVT_UNBLOCK 4
-#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
-#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'
-#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 *)
-#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 *)
-#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)
-#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 {
- uint32_t type;
- uint32_t len;
- void * value;
-};
-struct msm_mercury_buf {
- uint32_t type;
- int fd;
- void * vaddr;
- uint32_t y_off;
- uint32_t y_len;
- uint32_t framedone_len;
- uint32_t cbcr_off;
- uint32_t cbcr_len;
- uint32_t num_of_mcu_rows;
- uint32_t offset;
-};
-struct msm_mercury_hw_cmd {
- uint32_t type : 4;
- uint32_t n : 12;
- uint32_t offset : 16;
- uint32_t mask;
- union {
- uint32_t data;
- uint32_t * pdata;
- };
-};
-struct msm_mercury_hw_cmds {
- uint32_t m;
- struct msm_mercury_hw_cmd hw_cmd[1];
-};
-#endif
-
diff --git a/sdm710/kernel-headers/media/msm_sde_rotator.h b/sdm710/kernel-headers/media/msm_sde_rotator.h
deleted file mode 100644
index b6b813f9..00000000
--- a/sdm710/kernel-headers/media/msm_sde_rotator.h
+++ /dev/null
@@ -1,103 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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>
-#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_PIX_FMT_SDE_ABGR_8888
-#define SDE_PIX_FMT_RGBA_8888 V4L2_PIX_FMT_SDE_RGBA_8888
-#define SDE_PIX_FMT_BGRA_8888 V4L2_PIX_FMT_ARGB32
-#define SDE_PIX_FMT_RGBX_8888 V4L2_PIX_FMT_SDE_RGBX_8888
-#define SDE_PIX_FMT_BGRX_8888 V4L2_PIX_FMT_XRGB32
-#define SDE_PIX_FMT_XBGR_8888 V4L2_PIX_FMT_SDE_XBGR_8888
-#define SDE_PIX_FMT_RGBA_5551 V4L2_PIX_FMT_SDE_RGBA_5551
-#define SDE_PIX_FMT_ARGB_1555 V4L2_PIX_FMT_ARGB555
-#define SDE_PIX_FMT_ABGR_1555 V4L2_PIX_FMT_SDE_ABGR_1555
-#define SDE_PIX_FMT_BGRA_5551 V4L2_PIX_FMT_SDE_BGRA_5551
-#define SDE_PIX_FMT_BGRX_5551 V4L2_PIX_FMT_SDE_BGRX_5551
-#define SDE_PIX_FMT_RGBX_5551 V4L2_PIX_FMT_SDE_RGBX_5551
-#define SDE_PIX_FMT_XBGR_1555 V4L2_PIX_FMT_SDE_XBGR_1555
-#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_PIX_FMT_SDE_RGBA_4444
-#define SDE_PIX_FMT_BGRA_4444 V4L2_PIX_FMT_SDE_BGRA_4444
-#define SDE_PIX_FMT_ABGR_4444 V4L2_PIX_FMT_SDE_ABGR_4444
-#define SDE_PIX_FMT_RGBX_4444 V4L2_PIX_FMT_SDE_RGBX_4444
-#define SDE_PIX_FMT_XRGB_4444 V4L2_PIX_FMT_XRGB444
-#define SDE_PIX_FMT_BGRX_4444 V4L2_PIX_FMT_SDE_BGRX_4444
-#define SDE_PIX_FMT_XBGR_4444 V4L2_PIX_FMT_SDE_XBGR_4444
-#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
-#define SDE_PIX_FMT_BGR_565 V4L2_PIX_FMT_SDE_BGR_565
-#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_PIX_FMT_SDE_Y_CR_CB_GH2V2
-#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_PIX_FMT_SDE_Y_CBCR_H1V2
-#define SDE_PIX_FMT_Y_CRCB_H1V2 V4L2_PIX_FMT_SDE_Y_CRCB_H1V2
-#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_PIX_FMT_SDE_Y_CBCR_H2V2_VENUS
-#define SDE_PIX_FMT_Y_CRCB_H2V2_VENUS V4L2_PIX_FMT_SDE_Y_CRCB_H2V2_VENUS
-#define SDE_PIX_FMT_RGBA_8888_UBWC V4L2_PIX_FMT_RGBA8888_UBWC
-#define SDE_PIX_FMT_RGBX_8888_UBWC V4L2_PIX_FMT_SDE_RGBX_8888_UBWC
-#define SDE_PIX_FMT_RGB_565_UBWC V4L2_PIX_FMT_SDE_RGB_565_UBWC
-#define SDE_PIX_FMT_Y_CBCR_H2V2_UBWC V4L2_PIX_FMT_NV12_UBWC
-#define SDE_PIX_FMT_RGBA_1010102 V4L2_PIX_FMT_SDE_RGBA_1010102
-#define SDE_PIX_FMT_RGBX_1010102 V4L2_PIX_FMT_SDE_RGBX_1010102
-#define SDE_PIX_FMT_ARGB_2101010 V4L2_PIX_FMT_SDE_ARGB_2101010
-#define SDE_PIX_FMT_XRGB_2101010 V4L2_PIX_FMT_SDE_XRGB_2101010
-#define SDE_PIX_FMT_BGRA_1010102 V4L2_PIX_FMT_SDE_BGRA_1010102
-#define SDE_PIX_FMT_BGRX_1010102 V4L2_PIX_FMT_SDE_BGRX_1010102
-#define SDE_PIX_FMT_ABGR_2101010 V4L2_PIX_FMT_SDE_ABGR_2101010
-#define SDE_PIX_FMT_XBGR_2101010 V4L2_PIX_FMT_SDE_XBGR_2101010
-#define SDE_PIX_FMT_RGBA_1010102_UBWC V4L2_PIX_FMT_SDE_RGBA_1010102_UBWC
-#define SDE_PIX_FMT_RGBX_1010102_UBWC V4L2_PIX_FMT_SDE_RGBX_1010102_UBWC
-#define SDE_PIX_FMT_Y_CBCR_H2V2_P010 V4L2_PIX_FMT_SDE_Y_CBCR_H2V2_P010
-#define SDE_PIX_FMT_Y_CBCR_H2V2_P010_VENUS V4L2_PIX_FMT_SDE_Y_CBCR_H2V2_P010_VENUS
-#define SDE_PIX_FMT_Y_CBCR_H2V2_TP10 V4L2_PIX_FMT_SDE_Y_CBCR_H2V2_TP10
-#define SDE_PIX_FMT_Y_CBCR_H2V2_TP10_UBWC V4L2_PIX_FMT_NV12_TP10_UBWC
-#define SDE_PIX_FMT_Y_CBCR_H2V2_P010_UBWC V4L2_PIX_FMT_NV12_P010_UBWC
-struct msm_sde_rotator_fence {
- __u32 index;
- __u32 type;
- __s32 fd;
- __u32 reserved[5];
-};
-struct msm_sde_rotator_comp_ratio {
- __u32 index;
- __u32 type;
- __u32 numer;
- __u32 denom;
- __u32 reserved[4];
-};
-#define VIDIOC_G_SDE_ROTATOR_FENCE _IOWR('V', BASE_VIDIOC_PRIVATE + 10, struct msm_sde_rotator_fence)
-#define VIDIOC_S_SDE_ROTATOR_FENCE _IOWR('V', BASE_VIDIOC_PRIVATE + 11, struct msm_sde_rotator_fence)
-#define VIDIOC_G_SDE_ROTATOR_COMP_RATIO _IOWR('V', BASE_VIDIOC_PRIVATE + 12, struct msm_sde_rotator_comp_ratio)
-#define VIDIOC_S_SDE_ROTATOR_COMP_RATIO _IOWR('V', BASE_VIDIOC_PRIVATE + 13, struct msm_sde_rotator_comp_ratio)
-#define V4L2_CID_SDE_ROTATOR_SECURE (V4L2_CID_USER_BASE + 0x1000)
-#define V4L2_CID_SDE_ROTATOR_SECURE_CAMERA (V4L2_CID_USER_BASE + 0x2000)
-#endif
-
diff --git a/sdm710/kernel-headers/media/msm_vidc.h b/sdm710/kernel-headers/media/msm_vidc.h
deleted file mode 100644
index 85e47ee3..00000000
--- a/sdm710/kernel-headers/media/msm_vidc.h
+++ /dev/null
@@ -1,384 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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
-#define MSM_VIDC_HAL_INTERLACE_COLOR_FORMAT_NV12_UBWC 0x8002
-#define MSM_VIDC_4x_1 0x1
-#define MSM_VIDC_EXTRADATA_FRAME_QP_ADV 0x1
-struct msm_vidc_extradata_header {
- unsigned int size;
- unsigned int : 32;
- unsigned int : 32;
- unsigned int type;
- unsigned int data_size;
- unsigned char data[1];
-};
-struct msm_vidc_interlace_payload {
- unsigned int format;
- unsigned int color_format;
-};
-struct msm_vidc_framerate_payload {
- unsigned int frame_rate;
-};
-struct msm_vidc_ts_payload {
- unsigned int timestamp_lo;
- unsigned int timestamp_hi;
-};
-struct msm_vidc_concealmb_payload {
- unsigned int num_mbs;
-};
-struct msm_vidc_recoverysei_payload {
- unsigned int flags;
-};
-struct msm_vidc_aspect_ratio_payload {
- unsigned int size;
- unsigned int version;
- unsigned int port_index;
- unsigned int aspect_width;
- unsigned int aspect_height;
-};
-struct msm_vidc_mpeg2_seqdisp_payload {
- unsigned int video_format;
- unsigned int color_descp;
- unsigned int color_primaries;
- unsigned int transfer_char;
- unsigned int matrix_coeffs;
- unsigned int disp_width;
- unsigned int disp_height;
-};
-struct msm_vidc_vc1_seqdisp_payload {
- unsigned int prog_seg_format;
- unsigned int uv_sampl_fmt;
- unsigned int color_format;
- unsigned int color_primaries;
- unsigned int transfer_char;
- unsigned int matrix_coeffs;
- unsigned int aspect_ratio;
- unsigned int aspect_horiz;
- unsigned int aspect_vert;
-};
-struct msm_vidc_input_crop_payload {
- unsigned int size;
- unsigned int version;
- unsigned int port_index;
- unsigned int left;
- unsigned int top;
- unsigned int width;
- unsigned int height;
-};
-struct msm_vidc_misr_info {
- unsigned int misr_dpb_luma;
- unsigned int misr_dpb_chroma;
- unsigned int misr_opb_luma;
- unsigned int misr_opb_chroma;
-};
-struct msm_vidc_output_crop_payload {
- unsigned int size;
- unsigned int version;
- unsigned int port_index;
- unsigned int left;
- unsigned int top;
- unsigned int display_width;
- unsigned int display_height;
- unsigned int width;
- unsigned int height;
- unsigned int frame_num;
- unsigned int bit_depth_y;
- unsigned int bit_depth_c;
- struct msm_vidc_misr_info misr_info[2];
-};
-struct msm_vidc_digital_zoom_payload {
- unsigned int size;
- unsigned int version;
- unsigned int port_index;
- unsigned int zoom_width;
- unsigned int zoom_height;
-};
-struct msm_vidc_extradata_index {
- unsigned int type;
- union {
- struct msm_vidc_input_crop_payload input_crop;
- struct msm_vidc_digital_zoom_payload digital_zoom;
- struct msm_vidc_aspect_ratio_payload aspect_ratio;
- };
-};
-struct msm_vidc_panscan_window {
- unsigned int panscan_height_offset;
- unsigned int panscan_width_offset;
- unsigned int panscan_window_width;
- unsigned int panscan_window_height;
-};
-struct msm_vidc_panscan_window_payload {
- unsigned int num_panscan_windows;
- struct msm_vidc_panscan_window wnd[1];
-};
-struct msm_vidc_stream_userdata_payload {
- unsigned int type;
- unsigned int data[1];
-};
-struct msm_vidc_frame_qp_payload {
- unsigned int frame_qp;
- unsigned int qp_sum;
- unsigned int skip_qp_sum;
- unsigned int skip_num_blocks;
- unsigned int total_num_blocks;
-};
-struct msm_vidc_frame_bits_info_payload {
- unsigned int frame_bits;
- unsigned int header_bits;
-};
-struct msm_vidc_s3d_frame_packing_payload {
- unsigned int fpa_id;
- unsigned int cancel_flag;
- unsigned int fpa_type;
- unsigned int quin_cunx_flag;
- unsigned int content_interprtation_type;
- unsigned int spatial_flipping_flag;
- unsigned int frame0_flipped_flag;
- unsigned int field_views_flag;
- unsigned int current_frame_is_frame0_flag;
- unsigned int frame0_self_contained_flag;
- unsigned int frame1_self_contained_flag;
- unsigned int frame0_graid_pos_x;
- unsigned int frame0_graid_pos_y;
- unsigned int frame1_graid_pos_x;
- unsigned int frame1_graid_pos_y;
- unsigned int fpa_reserved_byte;
- unsigned int fpa_repetition_period;
- unsigned int fpa_extension_flag;
-};
-struct msm_vidc_vqzip_sei_payload {
- unsigned int size;
- unsigned int data[1];
-};
-struct msm_vidc_ubwc_cr_stats_info {
- unsigned int stats_tile_32;
- unsigned int stats_tile_64;
- unsigned int stats_tile_96;
- unsigned int stats_tile_128;
- unsigned int stats_tile_160;
- unsigned int stats_tile_192;
- unsigned int stats_tile_256;
-};
-struct msm_vidc_yuv_stats_payload {
- unsigned int frame_qp;
- unsigned int texture;
- unsigned int luma_in_q16;
- unsigned int frame_difference;
-};
-struct msm_vidc_vpx_colorspace_payload {
- unsigned int color_space;
- unsigned int yuv_range_flag;
- unsigned int sumsampling_x;
- unsigned int sumsampling_y;
-};
-struct msm_vidc_roi_qp_payload {
- int upper_qp_offset;
- int lower_qp_offset;
- unsigned int b_roi_info;
- int mbi_info_size;
- unsigned int data[1];
-};
-struct msm_vidc_mastering_display_colour_sei_payload {
- unsigned int nDisplayPrimariesX[3];
- unsigned int nDisplayPrimariesY[3];
- unsigned int nWhitePointX;
- unsigned int nWhitePointY;
- unsigned int nMaxDisplayMasteringLuminance;
- unsigned int nMinDisplayMasteringLuminance;
-};
-struct msm_vidc_content_light_level_sei_payload {
- unsigned int nMaxContentLight;
- unsigned int nMaxPicAverageLight;
-};
-struct msm_vidc_vui_display_info_payload {
- unsigned int video_signal_present_flag;
- unsigned int video_format;
- unsigned int bit_depth_y;
- unsigned int bit_depth_c;
- unsigned int video_full_range_flag;
- unsigned int color_description_present_flag;
- unsigned int color_primaries;
- unsigned int transfer_characteristics;
- unsigned int matrix_coefficients;
- unsigned int chroma_location_info_present_flag;
- unsigned int chroma_format_idc;
- unsigned int separate_color_plane_flag;
- unsigned int chroma_sample_loc_type_top_field;
- unsigned int chroma_sample_loc_type_bottom_field;
-};
-enum msm_vidc_extradata_type {
- MSM_VIDC_EXTRADATA_NONE = 0x00000000,
- MSM_VIDC_EXTRADATA_MB_QUANTIZATION = 0x00000001,
- MSM_VIDC_EXTRADATA_INTERLACE_VIDEO = 0x00000002,
- MSM_VIDC_EXTRADATA_VC1_FRAMEDISP = 0x00000003,
- MSM_VIDC_EXTRADATA_VC1_SEQDISP = 0x00000004,
- MSM_VIDC_EXTRADATA_TIMESTAMP = 0x00000005,
- MSM_VIDC_EXTRADATA_S3D_FRAME_PACKING = 0x00000006,
- MSM_VIDC_EXTRADATA_FRAME_RATE = 0x00000007,
- 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,
- 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,
-#define MSM_VIDC_EXTRADATA_VPX_COLORSPACE_INFO MSM_VIDC_EXTRADATA_VPX_COLORSPACE_INFO
- MSM_VIDC_EXTRADATA_VPX_COLORSPACE_INFO = 0x00000014,
-#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,
-#define MSM_VIDC_EXTRADATA_PQ_INFO MSM_VIDC_EXTRADATA_PQ_INFO
- MSM_VIDC_EXTRADATA_PQ_INFO = 0x00000017,
-#define MSM_VIDC_EXTRADATA_COLOUR_REMAPPING_INFO_SEI MSM_VIDC_EXTRADATA_COLOUR_REMAPPING_INFO_SEI
- MSM_VIDC_EXTRADATA_COLOUR_REMAPPING_INFO_SEI = 0x00000018,
-#define MSM_VIDC_EXTRADATA_UBWC_CR_STAT_INFO MSM_VIDC_EXTRADATA_UBWC_CR_STAT_INFO
- MSM_VIDC_EXTRADATA_UBWC_CR_STAT_INFO = 0x00000019,
- 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,
- MSM_VIDC_EXTRADATA_MULTISLICE_INFO = 0x7F100000,
- MSM_VIDC_EXTRADATA_NUM_CONCEALED_MB = 0x7F100001,
- MSM_VIDC_EXTRADATA_INDEX = 0x7F100002,
- MSM_VIDC_EXTRADATA_ASPECT_RATIO = 0x7F100003,
- MSM_VIDC_EXTRADATA_METADATA_LTR = 0x7F100004,
- MSM_VIDC_EXTRADATA_METADATA_FILLER = 0x7FE00002,
- MSM_VIDC_EXTRADATA_METADATA_MBI = 0x7F100005,
-#define MSM_VIDC_EXTRADATA_VUI_DISPLAY_INFO MSM_VIDC_EXTRADATA_VUI_DISPLAY_INFO
- MSM_VIDC_EXTRADATA_VUI_DISPLAY_INFO = 0x7F100006,
- MSM_VIDC_EXTRADATA_YUVSTATS_INFO = 0x7F100007,
-};
-enum msm_vidc_interlace_type {
- MSM_VIDC_INTERLACE_FRAME_PROGRESSIVE = 0x01,
- MSM_VIDC_INTERLACE_INTERLEAVE_FRAME_TOPFIELDFIRST = 0x02,
- MSM_VIDC_INTERLACE_INTERLEAVE_FRAME_BOTTOMFIELDFIRST = 0x04,
- MSM_VIDC_INTERLACE_FRAME_TOPFIELDFIRST = 0x08,
- MSM_VIDC_INTERLACE_FRAME_BOTTOMFIELDFIRST = 0x10,
-#define MSM_VIDC_INTERLACE_FRAME_MBAFF MSM_VIDC_INTERLACE_FRAME_MBAFF
- MSM_VIDC_INTERLACE_FRAME_MBAFF = 0x20,
-};
-#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
-#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,
- MSM_VIDC_FRAME_RECONSTRUCTION_CORRECT = 0x01,
- MSM_VIDC_FRAME_RECONSTRUCTION_APPROXIMATELY_CORRECT = 0x02,
-};
-enum msm_vidc_userdata_type {
- MSM_VIDC_USERDATA_TYPE_FRAME = 0x1,
- MSM_VIDC_USERDATA_TYPE_TOP_FIELD = 0x2,
- MSM_VIDC_USERDATA_TYPE_BOTTOM_FIELD = 0x3,
-};
-enum msm_vidc_h264_color_primaries_values {
- MSM_VIDC_RESERVED_1 = 0,
- MSM_VIDC_BT709_5 = 1,
- MSM_VIDC_UNSPECIFIED = 2,
- MSM_VIDC_RESERVED_2 = 3,
- MSM_VIDC_BT470_6_M = 4,
- MSM_VIDC_BT601_6_625 = 5,
- MSM_VIDC_BT470_6_BG = MSM_VIDC_BT601_6_625,
- MSM_VIDC_BT601_6_525 = 6,
- MSM_VIDC_SMPTE_240M = 7,
- MSM_VIDC_GENERIC_FILM = 8,
- MSM_VIDC_BT2020 = 9,
-};
-enum msm_vidc_vp9_color_primaries_values {
- MSM_VIDC_CS_UNKNOWN,
- MSM_VIDC_CS_BT_601,
- MSM_VIDC_CS_BT_709,
- MSM_VIDC_CS_SMPTE_170,
- MSM_VIDC_CS_SMPTE_240,
- MSM_VIDC_CS_BT_2020,
- MSM_VIDC_CS_RESERVED,
- MSM_VIDC_CS_RGB,
-};
-enum msm_vidc_h264_matrix_coeff_values {
- MSM_VIDC_MATRIX_RGB = 0,
- MSM_VIDC_MATRIX_BT_709_5 = 1,
- MSM_VIDC_MATRIX_UNSPECIFIED = 2,
- MSM_VIDC_MATRIX_RESERVED = 3,
- MSM_VIDC_MATRIX_FCC_47 = 4,
- MSM_VIDC_MATRIX_601_6_625 = 5,
- MSM_VIDC_MATRIX_BT470_BG = MSM_VIDC_MATRIX_601_6_625,
- MSM_VIDC_MATRIX_601_6_525 = 6,
- MSM_VIDC_MATRIX_SMPTE_170M = MSM_VIDC_MATRIX_601_6_525,
- MSM_VIDC_MATRIX_SMPTE_240M = 7,
- MSM_VIDC_MATRIX_Y_CG_CO = 8,
- MSM_VIDC_MATRIX_BT_2020 = 9,
- MSM_VIDC_MATRIX_BT_2020_CONST = 10,
-};
-enum msm_vidc_h264_transfer_chars_values {
- MSM_VIDC_TRANSFER_RESERVED_1 = 0,
- MSM_VIDC_TRANSFER_BT709_5 = 1,
- MSM_VIDC_TRANSFER_UNSPECIFIED = 2,
- MSM_VIDC_TRANSFER_RESERVED_2 = 3,
- MSM_VIDC_TRANSFER_BT_470_6_M = 4,
- MSM_VIDC_TRANSFER_BT_470_6_BG = 5,
- MSM_VIDC_TRANSFER_601_6_625 = 6,
- MSM_VIDC_TRANSFER_601_6_525 = MSM_VIDC_TRANSFER_601_6_625,
- MSM_VIDC_TRANSFER_SMPTE_240M = 7,
- MSM_VIDC_TRANSFER_LINEAR = 8,
- MSM_VIDC_TRANSFER_LOG_100_1 = 9,
- MSM_VIDC_TRANSFER_LOG_100_SQRT10_1 = 10,
- MSM_VIDC_TRANSFER_IEC_61966 = 11,
- MSM_VIDC_TRANSFER_BT_1361 = 12,
- MSM_VIDC_TRANSFER_SRGB = 13,
- MSM_VIDC_TRANSFER_BT_2020_10 = 14,
- MSM_VIDC_TRANSFER_BT_2020_12 = 15,
-#define MSM_VIDC_TRANSFER_SMPTE_ST2084 MSM_VIDC_TRANSFER_SMPTE_ST2084
- MSM_VIDC_TRANSFER_SMPTE_ST2084 = 16,
-#define MSM_VIDC_TRANSFER_SMPTE_ST428_1 MSM_VIDC_TRANSFER_SMPTE_ST428_1
- MSM_VIDC_TRANSFER_SMPTE_ST428_1 = 17,
-#define MSM_VIDC_TRANSFER_HLG MSM_VIDC_TRANSFER_HLG
- MSM_VIDC_TRANSFER_HLG = 18,
-};
-enum msm_vidc_pixel_depth {
- MSM_VIDC_BIT_DEPTH_8,
- MSM_VIDC_BIT_DEPTH_10,
- MSM_VIDC_BIT_DEPTH_UNSUPPORTED = 0XFFFFFFFF,
-};
-enum msm_vidc_video_format {
- MSM_VIDC_COMPONENT,
- MSM_VIDC_PAL,
- MSM_VIDC_NTSC,
- MSM_VIDC_SECAM,
- MSM_VIDC_MAC,
- MSM_VIDC_UNSPECIFIED_FORMAT,
- MSM_VIDC_RESERVED_1_FORMAT,
- MSM_VIDC_RESERVED_2_FORMAT,
-};
-enum msm_vidc_color_desc_flag {
- MSM_VIDC_COLOR_DESC_NOT_PRESENT,
- MSM_VIDC_COLOR_DESC_PRESENT,
-};
-#define MSM_VIDC_PIC_STRUCT_MAYBE_INTERLACED 0x0
-#define MSM_VIDC_PIC_STRUCT_PROGRESSIVE 0x1
-#define MSM_VIDC_PIC_STRUCT_UNKNOWN 0XFFFFFFFF
-#define MSM_VIDC_ALL_LAYER_ID 0xFF
-#endif
-
diff --git a/sdm710/kernel-headers/media/msm_vpu.h b/sdm710/kernel-headers/media/msm_vpu.h
deleted file mode 100644
index 6752383f..00000000
--- a/sdm710/kernel-headers/media/msm_vpu.h
+++ /dev/null
@@ -1,184 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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
-#define V4L2_PLANE_MEM_OFFSET 0
-enum vpu_colorspace {
- VPU_CS_MIN = 0,
- VPU_CS_RGB_FULL = 1,
- VPU_CS_RGB_LIMITED = 2,
- VPU_CS_REC601_FULL = 3,
- VPU_CS_REC601_LIMITED = 4,
- VPU_CS_REC709_FULL = 5,
- VPU_CS_REC709_LIMITED = 6,
- VPU_CS_SMPTE240_FULL = 7,
- VPU_CS_SMPTE240_LIMITED = 8,
- VPU_CS_MAX = 9,
-};
-#define VPU_FMT_EXT_FLAG_BT 1
-#define VPU_FMT_EXT_FLAG_TB 2
-#define VPU_FMT_EXT_FLAG_3D 4
-struct v4l2_format_vpu_extension {
- __u8 flag;
- __u8 gap_in_lines;
-};
-#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')
-#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
-#define VPU_OUTPUT_TYPE_HOST 0
-#define VPU_OUTPUT_TYPE_DISPLAY 1
-#define VPU_PIPE_VCAP0 (1 << 16)
-#define VPU_PIPE_VCAP1 (1 << 17)
-#define VPU_PIPE_DISPLAY0 (1 << 18)
-#define VPU_PIPE_DISPLAY1 (1 << 19)
-#define VPU_PIPE_DISPLAY2 (1 << 20)
-#define VPU_PIPE_DISPLAY3 (1 << 21)
-#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,
- 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,
- 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,
- VPU_EVENT_END
-};
-struct vpu_ctrl_standard {
- __u32 enable;
- __s32 value;
-};
-struct vpu_ctrl_auto_manual {
- __u32 enable;
- __u32 auto_mode;
- __s32 value;
-};
-struct vpu_ctrl_range_mapping {
- __u32 enable;
- __u32 y_range;
- __u32 uv_range;
-};
-#define VPU_ACTIVE_REGION_N_EXCLUSIONS 1
-struct vpu_ctrl_active_region_param {
- __u32 enable;
- __u32 num_exclusions;
- struct v4l2_rect detection_region;
- struct v4l2_rect excluded_regions[VPU_ACTIVE_REGION_N_EXCLUSIONS];
-};
-struct vpu_ctrl_deinterlacing_mode {
- __u32 field_polarity;
- __u32 mvp_mode;
-};
-struct vpu_ctrl_hqv {
- __u32 enable;
- __u32 sharpen_strength;
- __u32 auto_nr_strength;
-};
-struct vpu_info_frame_timestamp {
- __u32 pts_low;
- __u32 pts_high;
- __u32 qtime_low;
- __u32 qtime_high;
-};
-struct vpu_control {
- __u32 control_id;
- union control_data {
- __s32 value;
- struct vpu_ctrl_standard standard;
- struct vpu_ctrl_auto_manual auto_manual;
- 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;
- struct vpu_ctrl_hqv hqv;
- struct vpu_info_frame_timestamp timestamp;
- __u8 reserved[124];
- } data;
-};
-#define VPU_CTRL_ID_MIN 0
-#define VPU_CTRL_NOISE_REDUCTION 1
-#define VPU_CTRL_IMAGE_ENHANCEMENT 2
-#define VPU_CTRL_ANAMORPHIC_SCALING 3
-#define VPU_CTRL_DIRECTIONAL_INTERPOLATION 4
-#define VPU_CTRL_BACKGROUND_COLOR 5
-#define VPU_CTRL_RANGE_MAPPING 6
-#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
-#define VPU_CTRL_CONTENT_PROTECTION 11
-#define VPU_CTRL_DISPLAY_REFRESH_RATE 12
-#define VPU_CTRL_HQV 20
-#define VPU_CTRL_HQV_SHARPEN 21
-#define VPU_CTRL_HQV_AUTONR 22
-#define VPU_CTRL_ACE 23
-#define VPU_CTRL_ACE_BRIGHTNESS 24
-#define VPU_CTRL_ACE_CONTRAST 25
-#define VPU_CTRL_2D3D 26
-#define VPU_CTRL_2D3D_DEPTH 27
-#define VPU_CTRL_FRC 28
-#define VPU_CTRL_FRC_MOTION_SMOOTHNESS 29
-#define VPU_CTRL_FRC_MOTION_CLEAR 30
-#define VPU_INFO_TIMESTAMP 35
-#define VPU_CTRL_TIMESTAMP_INFO_MODE 36
-#define VPU_INFO_STATISTICS 37
-#define VPU_CTRL_LATENCY 38
-#define VPU_CTRL_LATENCY_MODE 39
-#define VPU_CTRL_ID_MAX 40
-#define VPU_MAX_EXT_DATA_SIZE 720
-struct vpu_control_extended {
- __u32 type;
- __u32 data_len;
- void * data_ptr;
- __u32 buf_size;
- void * buf_ptr;
-};
-struct vpu_control_port {
- __u32 control_id;
- __u32 port;
- union control_port_data {
- __u32 framerate;
- } data;
-};
-#define VPU_CTRL_FPS 1000
-#define VPU_ATTACH_TO_SESSION _IOW('V', (BASE_VIDIOC_PRIVATE + 1), int)
-#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))
-#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)
-#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)
-#endif
-
diff --git a/sdm710/kernel-headers/media/msmb_camera.h b/sdm710/kernel-headers/media/msmb_camera.h
deleted file mode 100644
index eed3ad98..00000000
--- a/sdm710/kernel-headers/media/msmb_camera.h
+++ /dev/null
@@ -1,162 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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>
-#include <linux/ioctl.h>
-#include <linux/media.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)
-#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)
-#define MSM_CAM_V4L2_IOCTL_DAEMON_DISABLED _IOW('V', BASE_VIDIOC_PRIVATE + 35, struct msm_v4l2_event_data)
-#define QCAMERA_VNODE_GROUP_ID MEDIA_ENT_F_IO_V4L
-#define MSM_CAMERA_NAME "msm_camera"
-#define MSM_CONFIGURATION_NAME "msm_config"
-#define MSM_CAMERA_SUBDEV_BASE (MEDIA_ENT_F_OLD_BASE + 0xF00)
-#define MSM_CAMERA_SUBDEV_CSIPHY (MSM_CAMERA_SUBDEV_BASE + 0)
-#define MSM_CAMERA_SUBDEV_CSID (MSM_CAMERA_SUBDEV_BASE + 13)
-#define MSM_CAMERA_SUBDEV_ISPIF (MSM_CAMERA_SUBDEV_BASE + 2)
-#define MSM_CAMERA_SUBDEV_VFE (MSM_CAMERA_SUBDEV_BASE + 3)
-#define MSM_CAMERA_SUBDEV_AXI (MSM_CAMERA_SUBDEV_BASE + 4)
-#define MSM_CAMERA_SUBDEV_VPE (MSM_CAMERA_SUBDEV_BASE + 5)
-#define MSM_CAMERA_SUBDEV_SENSOR (MSM_CAMERA_SUBDEV_BASE + 6)
-#define MSM_CAMERA_SUBDEV_ACTUATOR (MSM_CAMERA_SUBDEV_BASE + 7)
-#define MSM_CAMERA_SUBDEV_EEPROM (MSM_CAMERA_SUBDEV_BASE + 8)
-#define MSM_CAMERA_SUBDEV_CPP (MSM_CAMERA_SUBDEV_BASE + 9)
-#define MSM_CAMERA_SUBDEV_CCI (MSM_CAMERA_SUBDEV_BASE + 10)
-#define MSM_CAMERA_SUBDEV_LED_FLASH (MSM_CAMERA_SUBDEV_BASE + 11)
-#define MSM_CAMERA_SUBDEV_STROBE_FLASH (MSM_CAMERA_SUBDEV_BASE + 12)
-#define MSM_CAMERA_SUBDEV_BUF_MNGR (MSM_CAMERA_SUBDEV_BASE + 1)
-#define MSM_CAMERA_SUBDEV_SENSOR_INIT (MSM_CAMERA_SUBDEV_BASE + 14)
-#define MSM_CAMERA_SUBDEV_OIS (MSM_CAMERA_SUBDEV_BASE + 15)
-#define MSM_CAMERA_SUBDEV_FLASH (MSM_CAMERA_SUBDEV_BASE + 16)
-#define MSM_CAMERA_SUBDEV_IR_LED (MSM_CAMERA_SUBDEV_BASE + 17)
-#define MSM_CAMERA_SUBDEV_IR_CUT (MSM_CAMERA_SUBDEV_BASE + 18)
-#define MSM_CAMERA_SUBDEV_EXT (MSM_CAMERA_SUBDEV_BASE + 19)
-#define MSM_CAMERA_SUBDEV_TOF (MSM_CAMERA_SUBDEV_BASE + 20)
-#define MSM_CAMERA_SUBDEV_LASER_LED (MSM_CAMERA_SUBDEV_BASE + 21)
-#define MSM_MAX_CAMERA_SENSORS 5
-#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)
-#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)
-#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)
-#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)
-#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)
-#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)
-#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)
-#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
-#define MSM_CAMERA_CMD_SUCCESS 0x00000001
-#define MSM_CAMERA_BUF_MAP_SUCCESS 0x00000002
-#define MSM_CAMERA_ERR_EVT_BASE 0x00010000
-#define MSM_CAMERA_ERR_CMD_FAIL (MSM_CAMERA_ERR_EVT_BASE + 1)
-#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;
- unsigned int status;
- unsigned int session_id;
- unsigned int stream_id;
- unsigned int map_op;
- unsigned int map_buf_idx;
- unsigned int notify;
- unsigned int arg_value;
- unsigned int ret_value;
- unsigned int v4l2_event_type;
- unsigned int v4l2_event_id;
- unsigned int handle;
- unsigned int nop6;
- unsigned int nop7;
- unsigned int nop8;
- unsigned int nop9;
-};
-struct msm_v4l2_format_data {
- enum v4l2_buf_type type;
- unsigned int width;
- unsigned int height;
- unsigned int pixelformat;
- unsigned char num_planes;
- unsigned int plane_sizes[VIDEO_MAX_PLANES];
-};
-#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')
-#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')
-#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 {
- NON_SECURE_MODE = 0x01,
- SECURE_MODE = 0x02,
- MAX_PROTECTION_MODE = 0x03,
-};
-struct msm_camera_smmu_attach_type {
- enum smmu_attach_mode attach;
-};
-struct msm_camera_user_buf_cont_t {
- unsigned int buf_cnt;
- unsigned int buf_idx[MSM_CAMERA_MAX_USER_BUFF_CNT];
-};
-struct msm_camera_return_buf {
- __u32 index;
- __u32 reserved;
-};
-#define MSM_CAMERA_PRIV_IOCTL_ID_BASE 0
-#define MSM_CAMERA_PRIV_IOCTL_ID_RETURN_BUF 1
-struct msm_camera_private_ioctl_arg {
- __u32 id;
- __u32 size;
- __u32 result;
- __u32 reserved;
- __u64 ioctl_ptr;
-};
-#define VIDIOC_MSM_CAMERA_PRIVATE_IOCTL_CMD _IOWR('V', BASE_VIDIOC_PRIVATE, struct msm_camera_private_ioctl_arg)
-#endif
-
diff --git a/sdm710/kernel-headers/media/msmb_generic_buf_mgr.h b/sdm710/kernel-headers/media/msmb_generic_buf_mgr.h
deleted file mode 100644
index 4bb4c084..00000000
--- a/sdm710/kernel-headers/media/msmb_generic_buf_mgr.h
+++ /dev/null
@@ -1,61 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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 {
- MSM_CAMERA_BUF_MNGR_CONT_MAP,
- MSM_CAMERA_BUF_MNGR_CONT_UNMAP,
- MSM_CAMERA_BUF_MNGR_CONT_MAX,
-};
-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,
-};
-struct msm_buf_mngr_info {
- uint32_t session_id;
- uint32_t stream_id;
- uint32_t frame_id;
- struct timeval timestamp;
- uint32_t index;
- uint32_t reserved;
- enum msm_camera_buf_mngr_buf_type type;
- struct msm_camera_user_buf_cont_t user_buf;
-};
-struct msm_buf_mngr_main_cont_info {
- uint32_t session_id;
- uint32_t stream_id;
- enum msm_camera_buf_mngr_cmd cmd;
- uint32_t cnt;
- 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
-#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)
-#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)
-#define VIDIOC_MSM_BUF_MNGR_BUF_ERROR _IOWR('V', BASE_VIDIOC_PRIVATE + 41, struct msm_buf_mngr_info)
-#endif
-
diff --git a/sdm710/kernel-headers/media/msmb_isp.h b/sdm710/kernel-headers/media/msmb_isp.h
deleted file mode 100644
index f8552971..00000000
--- a/sdm710/kernel-headers/media/msmb_isp.h
+++ /dev/null
@@ -1,778 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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>
-#include <media/msmb_camera.h>
-#define MAX_PLANES_PER_STREAM 3
-#define MAX_NUM_STREAM 7
-#define ISP_VERSION_48 48
-#define ISP_VERSION_47 47
-#define ISP_VERSION_46 46
-#define ISP_VERSION_44 44
-#define ISP_VERSION_40 40
-#define ISP_VERSION_32 32
-#define ISP_NATIVE_BUF_BIT (0x10000 << 0)
-#define ISP0_BIT (0x10000 << 1)
-#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)
-#define ISP_SVHDR_IN_BIT (0x10000 << 6)
-#define ISP_SVHDR_OUT_BIT (0x10000 << 7)
-#define ISP_STATS_STREAM_BIT 0x80000000
-#define VFE_HW_LIMIT 1
-struct msm_vfe_cfg_cmd_list;
-enum ISP_START_PIXEL_PATTERN {
- ISP_BAYER_RGRGRG,
- ISP_BAYER_GRGRGR,
- ISP_BAYER_BGBGBG,
- ISP_BAYER_GBGBGB,
- ISP_YUV_YCbYCr,
- ISP_YUV_YCrYCb,
- ISP_YUV_CbYCrY,
- ISP_YUV_CrYCbY,
- ISP_PIX_PATTERN_MAX
-};
-enum msm_vfe_plane_fmt {
- Y_PLANE,
- CB_PLANE,
- CR_PLANE,
- CRCB_PLANE,
- CBCR_PLANE,
- VFE_PLANE_FMT_MAX
-};
-enum msm_vfe_input_src {
- VFE_PIX_0,
- VFE_RAW_0,
- VFE_RAW_1,
- VFE_RAW_2,
- VFE_SRC_MAX,
-};
-enum msm_vfe_axi_stream_src {
- PIX_ENCODER,
- PIX_VIEWFINDER,
- PIX_VIDEO,
- CAMIF_RAW,
- IDEAL_RAW,
- RDI_INTF_0,
- RDI_INTF_1,
- RDI_INTF_2,
- VFE_AXI_SRC_MAX
-};
-enum msm_vfe_frame_skip_pattern {
- NO_SKIP,
- EVERY_2FRAME,
- EVERY_3FRAME,
- EVERY_4FRAME,
- EVERY_5FRAME,
- EVERY_6FRAME,
- EVERY_7FRAME,
- EVERY_8FRAME,
- EVERY_16FRAME,
- EVERY_32FRAME,
- SKIP_ALL,
- SKIP_RANGE,
- MAX_SKIP,
-};
-#define MSM_VFE_STREAM_STOP_PERIOD 15
-enum msm_isp_stats_type {
- MSM_ISP_STATS_AEC,
- MSM_ISP_STATS_AF,
- MSM_ISP_STATS_AWB,
- MSM_ISP_STATS_RS,
- MSM_ISP_STATS_CS,
- MSM_ISP_STATS_IHIST,
- MSM_ISP_STATS_SKIN,
- MSM_ISP_STATS_BG,
- MSM_ISP_STATS_BF,
- MSM_ISP_STATS_BE,
- MSM_ISP_STATS_BHIST,
- MSM_ISP_STATS_BF_SCALE,
- MSM_ISP_STATS_HDR_BE,
- MSM_ISP_STATS_HDR_BHIST,
- MSM_ISP_STATS_AEC_BG,
- MSM_ISP_STATS_MAX
-};
-struct msm_isp_sw_framskip {
- uint32_t stats_type_mask;
- uint32_t stream_src_mask;
- enum msm_vfe_frame_skip_pattern skip_mode;
- uint32_t min_frame_id;
- uint32_t max_frame_id;
-};
-enum msm_vfe_testgen_color_pattern {
- COLOR_BAR_8_COLOR,
- UNICOLOR_WHITE,
- UNICOLOR_YELLOW,
- UNICOLOR_CYAN,
- UNICOLOR_GREEN,
- UNICOLOR_MAGENTA,
- UNICOLOR_RED,
- UNICOLOR_BLUE,
- UNICOLOR_BLACK,
- MAX_COLOR,
-};
-enum msm_vfe_camif_input {
- CAMIF_DISABLED,
- CAMIF_PAD_REG_INPUT,
- CAMIF_MIDDI_INPUT,
- CAMIF_MIPI_INPUT,
-};
-struct msm_vfe_fetch_engine_cfg {
- uint32_t input_format;
- uint32_t buf_width;
- uint32_t buf_height;
- uint32_t fetch_width;
- uint32_t fetch_height;
- uint32_t x_offset;
- uint32_t y_offset;
- uint32_t buf_stride;
-};
-enum msm_vfe_camif_output_format {
- CAMIF_QCOM_RAW,
- CAMIF_MIPI_RAW,
- CAMIF_PLAIN_8,
- CAMIF_PLAIN_16,
- CAMIF_MAX_FORMAT,
-};
-struct msm_vfe_camif_subsample_cfg {
- uint32_t irq_subsample_period;
- uint32_t irq_subsample_pattern;
- uint32_t sof_counter_step;
- uint32_t pixel_skip;
- uint32_t line_skip;
- uint32_t first_line;
- uint32_t last_line;
- uint32_t first_pixel;
- uint32_t last_pixel;
- enum msm_vfe_camif_output_format output_format;
-};
-struct msm_vfe_camif_cfg {
- uint32_t lines_per_frame;
- uint32_t pixels_per_line;
- uint32_t first_pixel;
- uint32_t last_pixel;
- uint32_t first_line;
- uint32_t last_line;
- uint32_t epoch_line0;
- uint32_t epoch_line1;
- uint32_t is_split;
- enum msm_vfe_camif_input camif_input;
- struct msm_vfe_camif_subsample_cfg subsample_cfg;
-};
-struct msm_vfe_testgen_cfg {
- uint32_t lines_per_frame;
- uint32_t pixels_per_line;
- uint32_t v_blank;
- 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;
- uint32_t burst_num_frame;
-};
-enum msm_vfe_inputmux {
- CAMIF,
- TESTGEN,
- EXTERNAL_READ,
-};
-enum msm_vfe_stats_composite_group {
- STATS_COMPOSITE_GRP_NONE,
- STATS_COMPOSITE_GRP_1,
- STATS_COMPOSITE_GRP_2,
- STATS_COMPOSITE_GRP_MAX,
-};
-enum msm_vfe_hvx_streaming_cmd {
- HVX_DISABLE,
- HVX_ONE_WAY,
- HVX_ROUND_TRIP
-};
-struct msm_vfe_pix_cfg {
- struct msm_vfe_camif_cfg camif_cfg;
- 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;
- uint32_t input_format;
- enum msm_vfe_hvx_streaming_cmd hvx_cmd;
- uint32_t is_split;
-};
-struct msm_vfe_rdi_cfg {
- uint8_t cid;
- uint8_t frame_based;
-};
-struct msm_vfe_input_cfg {
- union {
- struct msm_vfe_pix_cfg pix_cfg;
- struct msm_vfe_rdi_cfg rdi_cfg;
- } d;
- enum msm_vfe_input_src input_src;
- uint32_t input_pix_clk;
-};
-struct msm_vfe_fetch_eng_start {
- uint32_t session_id;
- uint32_t stream_id;
- uint32_t buf_idx;
- uint8_t offline_mode;
- uint32_t fd;
- uint32_t buf_addr;
- uint32_t frame_id;
-};
-enum msm_vfe_fetch_eng_pass {
- OFFLINE_FIRST_PASS,
- OFFLINE_SECOND_PASS,
- OFFLINE_MAX_PASS,
-};
-struct msm_vfe_fetch_eng_multi_pass_start {
- uint32_t session_id;
- uint32_t stream_id;
- uint32_t buf_idx;
- uint8_t offline_mode;
- uint32_t fd;
- uint32_t buf_addr;
- uint32_t frame_id;
- uint32_t output_buf_idx;
- uint32_t input_buf_offset;
- enum msm_vfe_fetch_eng_pass offline_pass;
- uint32_t output_stream_id;
-};
-struct msm_vfe_axi_plane_cfg {
- uint32_t output_width;
- uint32_t output_height;
- uint32_t output_stride;
- uint32_t output_scan_lines;
- uint32_t output_plane_format;
- uint32_t plane_addr_offset;
- uint8_t csid_src;
- uint8_t rdi_cid;
-};
-enum msm_stream_rdi_input_type {
- MSM_CAMERA_RDI_MIN,
- MSM_CAMERA_RDI_PDAF,
- MSM_CAMERA_RDI_MAX,
-};
-struct msm_vfe_axi_stream_request_cmd {
- uint32_t session_id;
- uint32_t stream_id;
- uint32_t vt_enable;
- uint32_t output_format;
- 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;
- uint8_t frame_base;
- uint32_t init_frame_drop;
- enum msm_vfe_frame_skip_pattern frame_skip_pattern;
- uint8_t buf_divert;
- uint32_t axi_stream_handle;
- uint32_t controllable_output;
- uint32_t burst_len;
- enum msm_stream_rdi_input_type rdi_input_type;
-};
-struct msm_vfe_axi_stream_release_cmd {
- uint32_t stream_handle;
-};
-enum msm_vfe_axi_stream_cmd {
- STOP_STREAM,
- START_STREAM,
- STOP_IMMEDIATELY,
-};
-struct msm_vfe_axi_stream_cfg_cmd {
- uint8_t num_streams;
- uint32_t stream_handle[VFE_AXI_SRC_MAX];
- enum msm_vfe_axi_stream_cmd cmd;
- uint8_t sync_frame_id_src;
-};
-enum msm_vfe_axi_stream_update_type {
- ENABLE_STREAM_BUF_DIVERT,
- DISABLE_STREAM_BUF_DIVERT,
- UPDATE_STREAM_FRAMEDROP_PATTERN,
- UPDATE_STREAM_STATS_FRAMEDROP_PATTERN,
- UPDATE_STREAM_AXI_CONFIG,
- UPDATE_STREAM_REQUEST_FRAMES,
- UPDATE_STREAM_ADD_BUFQ,
- UPDATE_STREAM_REMOVE_BUFQ,
- UPDATE_STREAM_SW_FRAME_DROP,
- UPDATE_STREAM_REQUEST_FRAMES_VER2,
- UPDATE_STREAM_OFFLINE_AXI_CONFIG,
-};
-#define UPDATE_STREAM_REQUEST_FRAMES_VER2 UPDATE_STREAM_REQUEST_FRAMES_VER2
-enum msm_vfe_iommu_type {
- IOMMU_ATTACH,
- IOMMU_DETACH,
-};
-enum msm_vfe_buff_queue_id {
- VFE_BUF_QUEUE_DEFAULT,
- VFE_BUF_QUEUE_SHARED,
- VFE_BUF_QUEUE_MAX,
-};
-struct msm_vfe_axi_stream_cfg_update_info {
- uint32_t stream_handle;
- uint32_t output_format;
- uint32_t user_stream_id;
- uint32_t frame_id;
- 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;
-};
-struct msm_vfe_axi_stream_cfg_update_info_req_frm {
- uint32_t stream_handle;
- uint32_t user_stream_id;
- uint32_t frame_id;
- uint32_t buf_index;
-};
-struct msm_vfe_axi_halt_cmd {
- uint32_t stop_camif;
- uint32_t overflow_detected;
- uint32_t blocking_halt;
-};
-struct msm_vfe_axi_reset_cmd {
- uint32_t blocking;
- uint32_t frame_id;
-};
-struct msm_vfe_axi_restart_cmd {
- uint32_t enable_camif;
-};
-struct msm_vfe_axi_stream_update_cmd {
- uint32_t num_streams;
- enum msm_vfe_axi_stream_update_type update_type;
- union {
- struct msm_vfe_axi_stream_cfg_update_info update_info[MSM_ISP_STATS_MAX];
- struct msm_vfe_axi_stream_cfg_update_info_req_frm req_frm_ver2;
- };
-};
-struct msm_vfe_smmu_attach_cmd {
- uint32_t security_mode;
- uint32_t iommu_attach_mode;
-};
-struct msm_vfe_stats_stream_request_cmd {
- uint32_t session_id;
- uint32_t stream_id;
- enum msm_isp_stats_type stats_type;
- uint32_t composite_flag;
- uint32_t framedrop_pattern;
- uint32_t init_frame_drop;
- uint32_t irq_subsample_pattern;
- uint32_t buffer_offset;
- uint32_t stream_handle;
-};
-struct msm_vfe_stats_stream_release_cmd {
- uint32_t stream_handle;
-};
-struct msm_vfe_stats_stream_cfg_cmd {
- uint8_t num_streams;
- uint32_t stream_handle[MSM_ISP_STATS_MAX];
- uint8_t enable;
- uint32_t stats_burst_len;
-};
-enum msm_vfe_reg_cfg_type {
- VFE_WRITE,
- VFE_WRITE_MB,
- VFE_READ,
- VFE_CFG_MASK,
- VFE_WRITE_DMI_16BIT,
- VFE_WRITE_DMI_32BIT,
- VFE_WRITE_DMI_64BIT,
- VFE_READ_DMI_16BIT,
- VFE_READ_DMI_32BIT,
- VFE_READ_DMI_64BIT,
- GET_MAX_CLK_RATE,
- GET_CLK_RATES,
- GET_ISP_ID,
- VFE_HW_UPDATE_LOCK,
- VFE_HW_UPDATE_UNLOCK,
- SET_WM_UB_SIZE,
- SET_UB_POLICY,
- GET_VFE_HW_LIMIT,
-};
-struct msm_vfe_cfg_cmd2 {
- uint16_t num_cfg;
- uint16_t cmd_len;
- void * cfg_data;
- void * cfg_cmd;
-};
-struct msm_vfe_cfg_cmd_list {
- struct msm_vfe_cfg_cmd2 cfg_cmd;
- struct msm_vfe_cfg_cmd_list * next;
- uint32_t next_size;
-};
-struct msm_vfe_reg_rw_info {
- uint32_t reg_offset;
- uint32_t cmd_data_offset;
- uint32_t len;
-};
-struct msm_vfe_reg_mask_info {
- uint32_t reg_offset;
- uint32_t mask;
- uint32_t val;
-};
-struct msm_vfe_reg_dmi_info {
- uint32_t hi_tbl_offset;
- uint32_t lo_tbl_offset;
- uint32_t len;
-};
-struct msm_vfe_reg_cfg_cmd {
- union {
- 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;
- enum msm_vfe_reg_cfg_type cmd_type;
-};
-enum vfe_sd_type {
- VFE_SD_0 = 0,
- VFE_SD_1,
- VFE_SD_COMMON,
- VFE_SD_MAX,
-};
-#define MS_NUM_SLAVE_MAX 1
-enum msm_vfe_dual_hw_type {
- DUAL_NONE = 0,
- DUAL_HW_VFE_SPLIT = 1,
- DUAL_HW_MASTER_SLAVE = 2,
-};
-enum msm_vfe_dual_hw_ms_type {
- MS_TYPE_NONE,
- MS_TYPE_MASTER,
- MS_TYPE_SLAVE,
-};
-struct msm_isp_set_dual_hw_ms_cmd {
- 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];
- uint32_t sof_delta_threshold;
-};
-enum msm_isp_buf_type {
- ISP_PRIVATE_BUF,
- ISP_SHARE_BUF,
- MAX_ISP_BUF_TYPE,
-};
-struct msm_isp_unmap_buf_req {
- uint32_t fd;
-};
-struct msm_isp_buf_request {
- uint32_t session_id;
- uint32_t stream_id;
- uint8_t num_buf;
- uint32_t handle;
- enum msm_isp_buf_type buf_type;
-};
-struct msm_isp_buf_request_ver2 {
- uint32_t session_id;
- uint32_t stream_id;
- uint8_t num_buf;
- uint32_t handle;
- enum msm_isp_buf_type buf_type;
- enum smmu_attach_mode security_mode;
- uint32_t reserved[4];
-};
-struct msm_isp_qbuf_plane {
- uint32_t addr;
- uint32_t offset;
- uint32_t length;
-};
-struct msm_isp_qbuf_buffer {
- struct msm_isp_qbuf_plane planes[MAX_PLANES_PER_STREAM];
- uint32_t num_planes;
-};
-struct msm_isp_qbuf_info {
- uint32_t handle;
- int32_t buf_idx;
- struct msm_isp_qbuf_buffer buffer;
- uint32_t dirty_buf;
-};
-struct msm_isp_clk_rates {
- uint32_t svs_rate;
- uint32_t nominal_rate;
- uint32_t high_rate;
-};
-struct msm_vfe_axi_src_state {
- enum msm_vfe_input_src input_src;
- uint32_t src_active;
- uint32_t src_frame_id;
-};
-enum msm_isp_event_mask_index {
- ISP_EVENT_MASK_INDEX_STATS_NOTIFY = 0,
- 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,
- 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,
- 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,
-};
-#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)
-#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)
-#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)
-#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 {
- ISP_REG_UPDATE = 0,
- ISP_EPOCH_0 = 1,
- ISP_EPOCH_1 = 2,
- ISP_START_ACK = 3,
- ISP_STOP_ACK = 4,
- ISP_IRQ_VIOLATION = 5,
- ISP_STATS_OVERFLOW = 6,
- ISP_BUF_DONE = 7,
- ISP_FE_RD_DONE = 8,
- ISP_IOMMU_P_FAULT = 9,
- ISP_ERROR = 10,
- ISP_HW_FATAL_ERROR = 11,
- ISP_PING_PONG_MISMATCH = 12,
- ISP_REG_UPDATE_MISSING = 13,
- ISP_BUF_FATAL_ERROR = 14,
- ISP_EVENT_MAX = 15
-};
-#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))
-#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)
-#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)
-#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)
-#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)
-#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)
-#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)
-struct msm_isp_buf_event {
- uint32_t session_id;
- uint32_t stream_id;
- uint32_t handle;
- uint32_t output_format;
- int8_t buf_idx;
-};
-struct msm_isp_fetch_eng_event {
- uint32_t session_id;
- uint32_t stream_id;
- uint32_t handle;
- uint32_t fd;
- int8_t buf_idx;
- int8_t offline_mode;
-};
-struct msm_isp_stats_event {
- uint32_t stats_mask;
- uint8_t stats_buf_idxs[MSM_ISP_STATS_MAX];
- uint8_t pd_stats_idx;
-};
-struct msm_isp_stream_ack {
- uint32_t session_id;
- uint32_t stream_id;
- uint32_t handle;
-};
-enum msm_vfe_error_type {
- ISP_ERROR_NONE,
- ISP_ERROR_CAMIF,
- ISP_ERROR_BUS_OVERFLOW,
- ISP_ERROR_RETURN_EMPTY_BUFFER,
- ISP_ERROR_FRAME_ID_MISMATCH,
- ISP_ERROR_MAX,
-};
-struct msm_isp_error_info {
- enum msm_vfe_error_type err_type;
- uint32_t session_id;
- uint32_t stream_id;
- uint32_t stream_id_mask;
-};
-struct msm_isp_ms_delta_info {
- uint8_t num_delta_info;
- uint32_t delta[MS_NUM_SLAVE_MAX];
-};
-struct msm_isp_output_info {
- uint8_t regs_not_updated;
- uint16_t output_err_mask;
- uint8_t stream_framedrop_mask;
- uint16_t stats_framedrop_mask;
-};
-struct msm_isp_sof_info {
- uint8_t regs_not_updated;
- uint16_t reg_update_fail_mask;
- uint32_t stream_get_buf_fail_mask;
- 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;
-};
-#define AXI_UPDATING_MASK 1
-#define REG_UPDATE_FAIL_MASK_EXT 1
-struct msm_isp_event_data {
- struct timeval timestamp;
- struct timeval mono_timestamp;
- uint32_t frame_id;
- union {
- 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;
- struct msm_isp_output_info output_info;
- struct msm_isp_sof_info sof_info;
- } u;
-};
-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,
- MSM_ISP_CAMERA_AHB_SUSPEND_VOTE = 4,
-};
-struct msm_isp_ahb_clk_cfg {
- uint32_t vote;
- uint32_t reserved[2];
-};
-enum msm_vfe_dual_cam_sync_mode {
- MSM_ISP_DUAL_CAM_ASYNC,
- MSM_ISP_DUAL_CAM_SYNC,
-};
-struct msm_isp_dual_hw_master_slave_sync {
- uint32_t sync_mode;
- uint32_t reserved[2];
-};
-struct msm_vfe_dual_lpm_mode {
- enum msm_vfe_axi_stream_src stream_src[VFE_AXI_SRC_MAX];
- uint32_t num_src;
- uint32_t lpm_mode;
-};
-#define V4L2_PIX_FMT_QBGGR8 v4l2_fourcc('Q', 'B', 'G', '8')
-#define V4L2_PIX_FMT_QGBRG8 v4l2_fourcc('Q', 'G', 'B', '8')
-#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')
-#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')
-#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')
-#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')
-#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_P16BGGR12 v4l2_fourcc('P', 'B', 'G', '2')
-#define V4L2_PIX_FMT_P16GBRG12 v4l2_fourcc('P', 'G', 'B', '2')
-#define V4L2_PIX_FMT_P16GRBG12 v4l2_fourcc('P', 'G', 'R', '2')
-#define V4L2_PIX_FMT_P16RGGB12 v4l2_fourcc('P', 'R', 'G', '2')
-#define V4L2_PIX_FMT_NV14 v4l2_fourcc('N', 'V', '1', '4')
-#define V4L2_PIX_FMT_NV41 v4l2_fourcc('N', 'V', '4', '1')
-#define V4L2_PIX_FMT_META v4l2_fourcc('Q', 'M', 'E', 'T')
-#define V4L2_PIX_FMT_META10 v4l2_fourcc('Q', 'M', '1', '0')
-#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')
-#define V4L2_PIX_FMT_SRGGB14 v4l2_fourcc('R', 'G', '1', '4')
-enum msm_isp_ioctl_cmd_code {
- MSM_VFE_REG_CFG = BASE_VIDIOC_PRIVATE,
- MSM_ISP_REQUEST_BUF,
- MSM_ISP_ENQUEUE_BUF,
- MSM_ISP_RELEASE_BUF,
- MSM_ISP_REQUEST_STREAM,
- MSM_ISP_CFG_STREAM,
- MSM_ISP_RELEASE_STREAM,
- MSM_ISP_INPUT_CFG,
- MSM_ISP_SET_SRC_STATE,
- MSM_ISP_REQUEST_STATS_STREAM,
- MSM_ISP_CFG_STATS_STREAM,
- MSM_ISP_RELEASE_STATS_STREAM,
- MSM_ISP_REG_UPDATE_CMD,
- MSM_ISP_UPDATE_STREAM,
- MSM_VFE_REG_LIST_CFG,
- MSM_ISP_SMMU_ATTACH,
- MSM_ISP_UPDATE_STATS_STREAM,
- MSM_ISP_AXI_HALT,
- MSM_ISP_AXI_RESET,
- MSM_ISP_AXI_RESTART,
- MSM_ISP_FETCH_ENG_START,
- MSM_ISP_DEQUEUE_BUF,
- MSM_ISP_SET_DUAL_HW_MASTER_SLAVE,
- MSM_ISP_MAP_BUF_START_FE,
- MSM_ISP_UNMAP_BUF,
- MSM_ISP_AHB_CLK_CFG,
- MSM_ISP_DUAL_HW_MASTER_SLAVE_SYNC,
- MSM_ISP_FETCH_ENG_MULTI_PASS_START,
- MSM_ISP_MAP_BUF_START_MULTI_PASS_FE,
- MSM_ISP_REQUEST_BUF_VER2,
- MSM_ISP_DUAL_HW_LPM_MODE,
-};
-#define VIDIOC_MSM_VFE_REG_CFG _IOWR('V', MSM_VFE_REG_CFG, struct msm_vfe_cfg_cmd2)
-#define VIDIOC_MSM_ISP_REQUEST_BUF _IOWR('V', MSM_ISP_REQUEST_BUF, struct msm_isp_buf_request)
-#define VIDIOC_MSM_ISP_ENQUEUE_BUF _IOWR('V', MSM_ISP_ENQUEUE_BUF, struct msm_isp_qbuf_info)
-#define VIDIOC_MSM_ISP_RELEASE_BUF _IOWR('V', MSM_ISP_RELEASE_BUF, struct msm_isp_buf_request)
-#define VIDIOC_MSM_ISP_REQUEST_STREAM _IOWR('V', MSM_ISP_REQUEST_STREAM, struct msm_vfe_axi_stream_request_cmd)
-#define VIDIOC_MSM_ISP_CFG_STREAM _IOWR('V', MSM_ISP_CFG_STREAM, struct msm_vfe_axi_stream_cfg_cmd)
-#define VIDIOC_MSM_ISP_RELEASE_STREAM _IOWR('V', MSM_ISP_RELEASE_STREAM, struct msm_vfe_axi_stream_release_cmd)
-#define VIDIOC_MSM_ISP_INPUT_CFG _IOWR('V', MSM_ISP_INPUT_CFG, struct msm_vfe_input_cfg)
-#define VIDIOC_MSM_ISP_SET_SRC_STATE _IOWR('V', MSM_ISP_SET_SRC_STATE, struct msm_vfe_axi_src_state)
-#define VIDIOC_MSM_ISP_REQUEST_STATS_STREAM _IOWR('V', MSM_ISP_REQUEST_STATS_STREAM, struct msm_vfe_stats_stream_request_cmd)
-#define VIDIOC_MSM_ISP_CFG_STATS_STREAM _IOWR('V', MSM_ISP_CFG_STATS_STREAM, struct msm_vfe_stats_stream_cfg_cmd)
-#define VIDIOC_MSM_ISP_RELEASE_STATS_STREAM _IOWR('V', MSM_ISP_RELEASE_STATS_STREAM, struct msm_vfe_stats_stream_release_cmd)
-#define VIDIOC_MSM_ISP_REG_UPDATE_CMD _IOWR('V', MSM_ISP_REG_UPDATE_CMD, enum msm_vfe_input_src)
-#define VIDIOC_MSM_ISP_UPDATE_STREAM _IOWR('V', MSM_ISP_UPDATE_STREAM, struct msm_vfe_axi_stream_update_cmd)
-#define VIDIOC_MSM_VFE_REG_LIST_CFG _IOWR('V', MSM_VFE_REG_LIST_CFG, struct msm_vfe_cfg_cmd_list)
-#define VIDIOC_MSM_ISP_SMMU_ATTACH _IOWR('V', MSM_ISP_SMMU_ATTACH, struct msm_vfe_smmu_attach_cmd)
-#define VIDIOC_MSM_ISP_UPDATE_STATS_STREAM _IOWR('V', MSM_ISP_UPDATE_STATS_STREAM, struct msm_vfe_axi_stream_update_cmd)
-#define VIDIOC_MSM_ISP_AXI_HALT _IOWR('V', MSM_ISP_AXI_HALT, struct msm_vfe_axi_halt_cmd)
-#define VIDIOC_MSM_ISP_AXI_RESET _IOWR('V', MSM_ISP_AXI_RESET, struct msm_vfe_axi_reset_cmd)
-#define VIDIOC_MSM_ISP_AXI_RESTART _IOWR('V', MSM_ISP_AXI_RESTART, struct msm_vfe_axi_restart_cmd)
-#define VIDIOC_MSM_ISP_FETCH_ENG_START _IOWR('V', MSM_ISP_FETCH_ENG_START, struct msm_vfe_fetch_eng_start)
-#define VIDIOC_MSM_ISP_DEQUEUE_BUF _IOWR('V', MSM_ISP_DEQUEUE_BUF, struct msm_isp_qbuf_info)
-#define VIDIOC_MSM_ISP_SET_DUAL_HW_MASTER_SLAVE _IOWR('V', MSM_ISP_SET_DUAL_HW_MASTER_SLAVE, struct msm_isp_set_dual_hw_ms_cmd)
-#define VIDIOC_MSM_ISP_MAP_BUF_START_FE _IOWR('V', MSM_ISP_MAP_BUF_START_FE, struct msm_vfe_fetch_eng_start)
-#define VIDIOC_MSM_ISP_UNMAP_BUF _IOWR('V', MSM_ISP_UNMAP_BUF, struct msm_isp_unmap_buf_req)
-#define VIDIOC_MSM_ISP_AHB_CLK_CFG _IOWR('V', MSM_ISP_AHB_CLK_CFG, struct msm_isp_ahb_clk_cfg)
-#define VIDIOC_MSM_ISP_DUAL_HW_MASTER_SLAVE_SYNC _IOWR('V', MSM_ISP_DUAL_HW_MASTER_SLAVE_SYNC, struct msm_isp_dual_hw_master_slave_sync)
-#define VIDIOC_MSM_ISP_FETCH_ENG_MULTI_PASS_START _IOWR('V', MSM_ISP_FETCH_ENG_MULTI_PASS_START, struct msm_vfe_fetch_eng_multi_pass_start)
-#define VIDIOC_MSM_ISP_MAP_BUF_START_MULTI_PASS_FE _IOWR('V', MSM_ISP_MAP_BUF_START_MULTI_PASS_FE, struct msm_vfe_fetch_eng_multi_pass_start)
-#define VIDIOC_MSM_ISP_REQUEST_BUF_VER2 _IOWR('V', MSM_ISP_REQUEST_BUF_VER2, struct msm_isp_buf_request_ver2)
-#define VIDIOC_MSM_ISP_DUAL_HW_LPM_MODE _IOWR('V', MSM_ISP_DUAL_HW_LPM_MODE, struct msm_vfe_dual_lpm_mode)
-#endif
-
diff --git a/sdm710/kernel-headers/media/msmb_ispif.h b/sdm710/kernel-headers/media/msmb_ispif.h
deleted file mode 100644
index 5f50fd4d..00000000
--- a/sdm710/kernel-headers/media/msmb_ispif.h
+++ /dev/null
@@ -1,169 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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>
-#include <linux/videodev2.h>
-#define CSID_VERSION_V20 0x02000011
-#define CSID_VERSION_V22 0x02001000
-#define CSID_VERSION_V30 0x30000000
-#define CSID_VERSION_V3 0x30000000
-enum msm_ispif_vfe_intf {
- VFE0,
- VFE1,
- VFE_MAX
-};
-#define VFE0_MASK (1 << VFE0)
-#define VFE1_MASK (1 << VFE1)
-enum msm_ispif_intftype {
- PIX0,
- RDI0,
- PIX1,
- RDI1,
- RDI2,
- INTF_MAX
-};
-#define MAX_PARAM_ENTRIES (INTF_MAX * 2)
-#define MAX_CID_CH 8
-#define MAX_CID_CH_PARAM_ENTRY 3
-#define PIX0_MASK (1 << PIX0)
-#define PIX1_MASK (1 << PIX1)
-#define RDI0_MASK (1 << RDI0)
-#define RDI1_MASK (1 << RDI1)
-#define RDI2_MASK (1 << RDI2)
-enum msm_ispif_vc {
- VC0,
- VC1,
- VC2,
- VC3,
- VC_MAX
-};
-enum msm_ispif_cid {
- CID0,
- CID1,
- CID2,
- CID3,
- CID4,
- CID5,
- CID6,
- CID7,
- CID8,
- CID9,
- CID10,
- CID11,
- CID12,
- CID13,
- CID14,
- CID15,
- CID_MAX
-};
-enum msm_ispif_csid {
- CSID0,
- CSID1,
- CSID2,
- CSID3,
- CSID_MAX
-};
-enum msm_ispif_pixel_odd_even {
- PIX_EVEN,
- PIX_ODD
-};
-enum msm_ispif_pixel_pack_mode {
- PACK_BYTE,
- PACK_PLAIN_PACK,
- PACK_NV_P8,
- PACK_NV_P16
-};
-struct msm_ispif_pack_cfg {
- int pixel_swap_en;
- enum msm_ispif_pixel_odd_even even_odd_sel;
- enum msm_ispif_pixel_pack_mode pack_mode;
-};
-struct msm_ispif_params_entry {
- enum msm_ispif_vfe_intf vfe_intf;
- enum msm_ispif_intftype intftype;
- int num_cids;
- enum msm_ispif_cid cids[MAX_CID_CH_PARAM_ENTRY];
- enum msm_ispif_csid csid;
- int crop_enable;
- uint16_t crop_start_pixel;
- uint16_t crop_end_pixel;
-};
-struct msm_ispif_right_param_entry {
- enum msm_ispif_cid cids[MAX_CID_CH_PARAM_ENTRY];
- enum msm_ispif_csid csid;
-};
-struct msm_ispif_param_data_ext {
- uint32_t num;
- struct msm_ispif_params_entry entries[MAX_PARAM_ENTRIES];
- struct msm_ispif_pack_cfg pack_cfg[CID_MAX];
- struct msm_ispif_right_param_entry right_entries[MAX_PARAM_ENTRIES];
- uint32_t stereo_enable;
- uint16_t line_width[VFE_MAX];
-};
-struct msm_ispif_param_data {
- uint32_t num;
- struct msm_ispif_params_entry entries[MAX_PARAM_ENTRIES];
-};
-struct msm_isp_info {
- uint32_t max_resolution;
- uint32_t id;
- uint32_t ver;
-};
-struct msm_ispif_vfe_info {
- int num_vfe;
- struct msm_isp_info info[VFE_MAX];
-};
-enum ispif_cfg_type_t {
- ISPIF_CLK_ENABLE,
- ISPIF_CLK_DISABLE,
- ISPIF_INIT,
- ISPIF_CFG,
- ISPIF_START_FRAME_BOUNDARY,
- ISPIF_RESTART_FRAME_BOUNDARY,
- ISPIF_STOP_FRAME_BOUNDARY,
- ISPIF_STOP_IMMEDIATELY,
- ISPIF_RELEASE,
- ISPIF_ENABLE_REG_DUMP,
- ISPIF_SET_VFE_INFO,
- ISPIF_CFG2,
- ISPIF_CFG_STEREO,
-};
-struct ispif_cfg_data {
- enum ispif_cfg_type_t cfg_type;
- union {
- int reg_dump;
- uint32_t csid_version;
- struct msm_ispif_vfe_info vfe_info;
- struct msm_ispif_param_data params;
- };
-};
-struct ispif_cfg_data_ext {
- enum ispif_cfg_type_t cfg_type;
- void * data;
- uint32_t size;
-};
-#define ISPIF_RDI_PACK_MODE_SUPPORT 1
-#define ISPIF_3D_SUPPORT 1
-#define ISPIF_LINE_WIDTH_SUPPORT 1
-#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
-
diff --git a/sdm710/kernel-headers/media/msmb_pproc.h b/sdm710/kernel-headers/media/msmb_pproc.h
deleted file mode 100644
index 2cb4155a..00000000
--- a/sdm710/kernel-headers/media/msmb_pproc.h
+++ /dev/null
@@ -1,193 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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>
-#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
-#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
-#define MAX_FREQ_TBL 10
-#define MSM_OUTPUT_BUF_CNT 8
-enum msm_cpp_frame_type {
- MSM_CPP_OFFLINE_FRAME,
- MSM_CPP_REALTIME_FRAME,
-};
-enum msm_vpe_frame_type {
- MSM_VPE_OFFLINE_FRAME,
- MSM_VPE_REALTIME_FRAME,
-};
-struct msm_cpp_buffer_info_t {
- int32_t fd;
- uint32_t index;
- uint32_t offset;
- uint8_t native_buff;
- uint8_t processed_divert;
- uint32_t identity;
-};
-struct msm_cpp_stream_buff_info_t {
- uint32_t identity;
- uint32_t num_buffs;
- struct msm_cpp_buffer_info_t * buffer_info;
-};
-enum msm_cpp_batch_mode_t {
- BATCH_MODE_NONE,
- BATCH_MODE_VIDEO,
- BATCH_MODE_PREVIEW
-};
-struct msm_cpp_batch_info_t {
- enum msm_cpp_batch_mode_t batch_mode;
- uint32_t batch_size;
- uint32_t intra_plane_offset[MAX_PLANES];
- uint32_t pick_preview_idx;
- uint32_t cont_idx;
-};
-struct msm_cpp_frame_info_t {
- int32_t frame_id;
- struct timeval timestamp;
- uint32_t inst_id;
- uint32_t identity;
- uint32_t client_id;
- enum msm_cpp_frame_type frame_type;
- uint32_t num_strips;
- uint32_t msg_len;
- uint32_t * cpp_cmd_msg;
- int src_fd;
- int dst_fd;
- struct timeval in_time, out_time;
- void * cookie;
- int32_t * status;
- int32_t duplicate_output;
- uint32_t duplicate_identity;
- uint32_t feature_mask;
- uint8_t we_disable;
- struct msm_cpp_buffer_info_t input_buffer_info;
- struct msm_cpp_buffer_info_t output_buffer_info[MSM_OUTPUT_BUF_CNT];
- struct msm_cpp_buffer_info_t duplicate_buffer_info;
- struct msm_cpp_buffer_info_t tnr_scratch_buffer_info[2];
- uint32_t reserved;
- uint8_t partial_frame_indicator;
- uint8_t first_payload;
- uint8_t last_payload;
- uint32_t first_stripe_index;
- uint32_t last_stripe_index;
- uint32_t stripe_info_offset;
- uint32_t stripe_info;
- struct msm_cpp_batch_info_t batch_info;
-};
-struct msm_cpp_pop_stream_info_t {
- int32_t frame_id;
- uint32_t identity;
-};
-struct cpp_hw_info {
- uint32_t cpp_hw_version;
- uint32_t cpp_hw_caps;
- unsigned long freq_tbl[MAX_FREQ_TBL];
- uint32_t freq_tbl_count;
-};
-struct msm_vpe_frame_strip_info {
- uint32_t src_w;
- uint32_t src_h;
- uint32_t dst_w;
- uint32_t dst_h;
- uint32_t src_x;
- uint32_t src_y;
- uint32_t phase_step_x;
- uint32_t phase_step_y;
- uint32_t phase_init_x;
- uint32_t phase_init_y;
-};
-struct msm_vpe_buffer_info_t {
- int32_t fd;
- uint32_t index;
- uint32_t offset;
- uint8_t native_buff;
- uint8_t processed_divert;
-};
-struct msm_vpe_stream_buff_info_t {
- uint32_t identity;
- uint32_t num_buffs;
- struct msm_vpe_buffer_info_t * buffer_info;
-};
-struct msm_vpe_frame_info_t {
- int32_t frame_id;
- struct timeval timestamp;
- uint32_t inst_id;
- uint32_t identity;
- uint32_t client_id;
- enum msm_vpe_frame_type frame_type;
- struct msm_vpe_frame_strip_info strip_info;
- unsigned long src_fd;
- unsigned long dst_fd;
- struct ion_handle * src_ion_handle;
- struct ion_handle * dest_ion_handle;
- unsigned long src_phyaddr;
- unsigned long dest_phyaddr;
- unsigned long src_chroma_plane_offset;
- unsigned long dest_chroma_plane_offset;
- struct timeval in_time, out_time;
- void * cookie;
- struct msm_vpe_buffer_info_t input_buffer_info;
- struct msm_vpe_buffer_info_t output_buffer_info;
-};
-struct msm_pproc_queue_buf_info {
- struct msm_buf_mngr_info buff_mgr_info;
- uint8_t is_buf_dirty;
-};
-struct msm_cpp_clock_settings_t {
- unsigned long clock_rate;
- uint64_t avg;
- uint64_t inst;
-};
-#define VIDIOC_MSM_CPP_CFG _IOWR('V', BASE_VIDIOC_PRIVATE, struct msm_camera_v4l2_ioctl_t)
-#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)
-#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)
-#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)
-#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)
-#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)
-#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;
- size_t len;
- int32_t trans_code;
- void * ioctl_ptr;
-};
-#endif
-
diff --git a/sdm710/kernel-headers/scsi/ufs/ioctl.h b/sdm710/kernel-headers/scsi/ufs/ioctl.h
deleted file mode 100644
index 524ca86a..00000000
--- a/sdm710/kernel-headers/scsi/ufs/ioctl.h
+++ /dev/null
@@ -1,30 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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_UFS_IOCTL_H_
-#define UAPI_UFS_IOCTL_H_
-#include <linux/types.h>
-#define UFS_IOCTL_QUERY 0x5388
-struct ufs_ioctl_query_data {
- __u32 opcode;
- __u8 idn;
- __u16 buf_size;
- __u8 buffer[0];
-};
-#endif
-
diff --git a/sdm710/kernel-headers/scsi/ufs/ufs.h b/sdm710/kernel-headers/scsi/ufs/ufs.h
deleted file mode 100644
index d15229d8..00000000
--- a/sdm710/kernel-headers/scsi/ufs/ufs.h
+++ /dev/null
@@ -1,86 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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_UFS_H_
-#define UAPI_UFS_H_
-#define MAX_QUERY_IDN 0x18
-enum flag_idn {
- QUERY_FLAG_IDN_FDEVICEINIT = 0x01,
- QUERY_FLAG_IDN_PERMANENT_WPE = 0x02,
- QUERY_FLAG_IDN_PWR_ON_WPE = 0x03,
- QUERY_FLAG_IDN_BKOPS_EN = 0x04,
- QUERY_FLAG_IDN_RESERVED1 = 0x05,
- QUERY_FLAG_IDN_PURGE_ENABLE = 0x06,
- QUERY_FLAG_IDN_RESERVED2 = 0x07,
- QUERY_FLAG_IDN_FPHYRESOURCEREMOVAL = 0x08,
- QUERY_FLAG_IDN_BUSY_RTC = 0x09,
- QUERY_FLAG_IDN_MANUAL_GC_CONT = 0x0E,
-};
-enum attr_idn {
- QUERY_ATTR_IDN_BOOT_LU_EN = 0x00,
- QUERY_ATTR_IDN_RESERVED = 0x01,
- QUERY_ATTR_IDN_POWER_MODE = 0x02,
- QUERY_ATTR_IDN_ACTIVE_ICC_LVL = 0x03,
- QUERY_ATTR_IDN_OOO_DATA_EN = 0x04,
- QUERY_ATTR_IDN_BKOPS_STATUS = 0x05,
- QUERY_ATTR_IDN_PURGE_STATUS = 0x06,
- QUERY_ATTR_IDN_MAX_DATA_IN = 0x07,
- QUERY_ATTR_IDN_MAX_DATA_OUT = 0x08,
- QUERY_ATTR_IDN_DYN_CAP_NEEDED = 0x09,
- QUERY_ATTR_IDN_REF_CLK_FREQ = 0x0A,
- QUERY_ATTR_IDN_CONF_DESC_LOCK = 0x0B,
- QUERY_ATTR_IDN_MAX_NUM_OF_RTT = 0x0C,
- QUERY_ATTR_IDN_EE_CONTROL = 0x0D,
- QUERY_ATTR_IDN_EE_STATUS = 0x0E,
- QUERY_ATTR_IDN_SECONDS_PASSED = 0x0F,
- QUERY_ATTR_IDN_CNTX_CONF = 0x10,
- QUERY_ATTR_IDN_CORR_PRG_BLK_NUM = 0x11,
- QUERY_ATTR_IDN_MANUAL_GC_STATUS = 0x17,
-};
-#define QUERY_ATTR_IDN_BOOT_LU_EN_MAX 0x02
-enum desc_idn {
- QUERY_DESC_IDN_DEVICE = 0x0,
- QUERY_DESC_IDN_CONFIGURAION = 0x1,
- QUERY_DESC_IDN_UNIT = 0x2,
- QUERY_DESC_IDN_RFU_0 = 0x3,
- QUERY_DESC_IDN_INTERCONNECT = 0x4,
- QUERY_DESC_IDN_STRING = 0x5,
- QUERY_DESC_IDN_RFU_1 = 0x6,
- QUERY_DESC_IDN_GEOMETRY = 0x7,
- QUERY_DESC_IDN_POWER = 0x8,
- QUERY_DESC_IDN_HEALTH = 0x9,
- QUERY_DESC_IDN_RFU_2 = 0xA,
- QUERY_DESC_IDN_MAX,
-};
-enum query_opcode {
- UPIU_QUERY_OPCODE_NOP = 0x0,
- UPIU_QUERY_OPCODE_READ_DESC = 0x1,
- UPIU_QUERY_OPCODE_WRITE_DESC = 0x2,
- UPIU_QUERY_OPCODE_READ_ATTR = 0x3,
- UPIU_QUERY_OPCODE_WRITE_ATTR = 0x4,
- UPIU_QUERY_OPCODE_READ_FLAG = 0x5,
- UPIU_QUERY_OPCODE_SET_FLAG = 0x6,
- UPIU_QUERY_OPCODE_CLEAR_FLAG = 0x7,
- UPIU_QUERY_OPCODE_TOGGLE_FLAG = 0x8,
- UPIU_QUERY_OPCODE_MAX,
-};
-#define UPIU_QUERY_OPCODE_HIGH_HPB 0x5500
-#define UPIU_QUERY_OPCODE_HIGH(opcode) ((opcode) >> 16)
-#define UPIU_QUERY_OPCODE_LOW(opcode) ((opcode) & 0xffff)
-#endif
-
diff --git a/sdm710/kernel-headers/sound/asound.h b/sdm710/kernel-headers/sound/asound.h
deleted file mode 100644
index e25145d3..00000000
--- a/sdm710/kernel-headers/sound/asound.h
+++ /dev/null
@@ -1,830 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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 __SOUND_ASOUND_H
-#define __SOUND_ASOUND_H
-#ifdef __linux__
-#include <linux/types.h>
-#else
-#include <sys/ioctl.h>
-#endif
-#include <stdlib.h>
-#include <time.h>
-#define SNDRV_PROTOCOL_VERSION(major,minor,subminor) (((major) << 16) | ((minor) << 8) | (subminor))
-#define SNDRV_PROTOCOL_MAJOR(version) (((version) >> 16) & 0xffff)
-#define SNDRV_PROTOCOL_MINOR(version) (((version) >> 8) & 0xff)
-#define SNDRV_PROTOCOL_MICRO(version) ((version) & 0xff)
-#define SNDRV_PROTOCOL_INCOMPATIBLE(kversion,uversion) (SNDRV_PROTOCOL_MAJOR(kversion) != SNDRV_PROTOCOL_MAJOR(uversion) || (SNDRV_PROTOCOL_MAJOR(kversion) == SNDRV_PROTOCOL_MAJOR(uversion) && SNDRV_PROTOCOL_MINOR(kversion) != SNDRV_PROTOCOL_MINOR(uversion)))
-struct snd_aes_iec958 {
- unsigned char status[24];
- unsigned char subcode[147];
- unsigned char pad;
- unsigned char dig_subframe[4];
-};
-struct snd_cea_861_aud_if {
- unsigned char db1_ct_cc;
- unsigned char db2_sf_ss;
- unsigned char db3;
- unsigned char db4_ca;
- unsigned char db5_dminh_lsv;
-};
-#define SNDRV_HWDEP_VERSION SNDRV_PROTOCOL_VERSION(1, 0, 1)
-enum {
- SNDRV_HWDEP_IFACE_OPL2 = 0,
- SNDRV_HWDEP_IFACE_OPL3,
- SNDRV_HWDEP_IFACE_OPL4,
- SNDRV_HWDEP_IFACE_SB16CSP,
- SNDRV_HWDEP_IFACE_EMU10K1,
- SNDRV_HWDEP_IFACE_YSS225,
- SNDRV_HWDEP_IFACE_ICS2115,
- SNDRV_HWDEP_IFACE_SSCAPE,
- SNDRV_HWDEP_IFACE_VX,
- SNDRV_HWDEP_IFACE_MIXART,
- SNDRV_HWDEP_IFACE_USX2Y,
- SNDRV_HWDEP_IFACE_EMUX_WAVETABLE,
- SNDRV_HWDEP_IFACE_BLUETOOTH,
- SNDRV_HWDEP_IFACE_USX2Y_PCM,
- SNDRV_HWDEP_IFACE_PCXHR,
- SNDRV_HWDEP_IFACE_SB_RC,
- SNDRV_HWDEP_IFACE_HDA,
- SNDRV_HWDEP_IFACE_USB_STREAM,
- SNDRV_HWDEP_IFACE_FW_DICE,
- SNDRV_HWDEP_IFACE_FW_FIREWORKS,
- SNDRV_HWDEP_IFACE_FW_BEBOB,
- SNDRV_HWDEP_IFACE_FW_OXFW,
- SNDRV_HWDEP_IFACE_FW_DIGI00X,
- SNDRV_HWDEP_IFACE_FW_TASCAM,
- SNDRV_HWDEP_IFACE_LINE6,
- SNDRV_HWDEP_IFACE_AUDIO_BE,
- SNDRV_HWDEP_IFACE_AUDIO_CODEC,
- SNDRV_HWDEP_IFACE_LAST = SNDRV_HWDEP_IFACE_AUDIO_CODEC
-};
-struct snd_hwdep_info {
- unsigned int device;
- int card;
- unsigned char id[64];
- unsigned char name[80];
- int iface;
- unsigned char reserved[64];
-};
-struct snd_hwdep_dsp_status {
- unsigned int version;
- unsigned char id[32];
- unsigned int num_dsps;
- unsigned int dsp_loaded;
- unsigned int chip_ready;
- unsigned char reserved[16];
-};
-struct snd_hwdep_dsp_image {
- unsigned int index;
- unsigned char name[64];
- unsigned char * image;
- size_t length;
- unsigned long driver_data;
-};
-#define SNDRV_HWDEP_IOCTL_PVERSION _IOR('H', 0x00, int)
-#define SNDRV_HWDEP_IOCTL_INFO _IOR('H', 0x01, struct snd_hwdep_info)
-#define SNDRV_HWDEP_IOCTL_DSP_STATUS _IOR('H', 0x02, struct snd_hwdep_dsp_status)
-#define SNDRV_HWDEP_IOCTL_DSP_LOAD _IOW('H', 0x03, struct snd_hwdep_dsp_image)
-#define SNDRV_PCM_VERSION SNDRV_PROTOCOL_VERSION(2, 0, 13)
-typedef unsigned long snd_pcm_uframes_t;
-typedef signed long snd_pcm_sframes_t;
-enum {
- SNDRV_PCM_CLASS_GENERIC = 0,
- SNDRV_PCM_CLASS_MULTI,
- SNDRV_PCM_CLASS_MODEM,
- SNDRV_PCM_CLASS_DIGITIZER,
- SNDRV_PCM_CLASS_LAST = SNDRV_PCM_CLASS_DIGITIZER,
-};
-enum {
- SNDRV_PCM_SUBCLASS_GENERIC_MIX = 0,
- SNDRV_PCM_SUBCLASS_MULTI_MIX,
- SNDRV_PCM_SUBCLASS_LAST = SNDRV_PCM_SUBCLASS_MULTI_MIX,
-};
-enum {
- SNDRV_PCM_STREAM_PLAYBACK = 0,
- SNDRV_PCM_STREAM_CAPTURE,
- SNDRV_PCM_STREAM_LAST = SNDRV_PCM_STREAM_CAPTURE,
-};
-typedef int __bitwise snd_pcm_access_t;
-#define SNDRV_PCM_ACCESS_MMAP_INTERLEAVED ((snd_pcm_access_t) 0)
-#define SNDRV_PCM_ACCESS_MMAP_NONINTERLEAVED ((snd_pcm_access_t) 1)
-#define SNDRV_PCM_ACCESS_MMAP_COMPLEX ((snd_pcm_access_t) 2)
-#define SNDRV_PCM_ACCESS_RW_INTERLEAVED ((snd_pcm_access_t) 3)
-#define SNDRV_PCM_ACCESS_RW_NONINTERLEAVED ((snd_pcm_access_t) 4)
-#define SNDRV_PCM_ACCESS_LAST SNDRV_PCM_ACCESS_RW_NONINTERLEAVED
-typedef int __bitwise snd_pcm_format_t;
-#define SNDRV_PCM_FORMAT_S8 ((snd_pcm_format_t) 0)
-#define SNDRV_PCM_FORMAT_U8 ((snd_pcm_format_t) 1)
-#define SNDRV_PCM_FORMAT_S16_LE ((snd_pcm_format_t) 2)
-#define SNDRV_PCM_FORMAT_S16_BE ((snd_pcm_format_t) 3)
-#define SNDRV_PCM_FORMAT_U16_LE ((snd_pcm_format_t) 4)
-#define SNDRV_PCM_FORMAT_U16_BE ((snd_pcm_format_t) 5)
-#define SNDRV_PCM_FORMAT_S24_LE ((snd_pcm_format_t) 6)
-#define SNDRV_PCM_FORMAT_S24_BE ((snd_pcm_format_t) 7)
-#define SNDRV_PCM_FORMAT_U24_LE ((snd_pcm_format_t) 8)
-#define SNDRV_PCM_FORMAT_U24_BE ((snd_pcm_format_t) 9)
-#define SNDRV_PCM_FORMAT_S32_LE ((snd_pcm_format_t) 10)
-#define SNDRV_PCM_FORMAT_S32_BE ((snd_pcm_format_t) 11)
-#define SNDRV_PCM_FORMAT_U32_LE ((snd_pcm_format_t) 12)
-#define SNDRV_PCM_FORMAT_U32_BE ((snd_pcm_format_t) 13)
-#define SNDRV_PCM_FORMAT_FLOAT_LE ((snd_pcm_format_t) 14)
-#define SNDRV_PCM_FORMAT_FLOAT_BE ((snd_pcm_format_t) 15)
-#define SNDRV_PCM_FORMAT_FLOAT64_LE ((snd_pcm_format_t) 16)
-#define SNDRV_PCM_FORMAT_FLOAT64_BE ((snd_pcm_format_t) 17)
-#define SNDRV_PCM_FORMAT_IEC958_SUBFRAME_LE ((snd_pcm_format_t) 18)
-#define SNDRV_PCM_FORMAT_IEC958_SUBFRAME_BE ((snd_pcm_format_t) 19)
-#define SNDRV_PCM_FORMAT_MU_LAW ((snd_pcm_format_t) 20)
-#define SNDRV_PCM_FORMAT_A_LAW ((snd_pcm_format_t) 21)
-#define SNDRV_PCM_FORMAT_IMA_ADPCM ((snd_pcm_format_t) 22)
-#define SNDRV_PCM_FORMAT_MPEG ((snd_pcm_format_t) 23)
-#define SNDRV_PCM_FORMAT_GSM ((snd_pcm_format_t) 24)
-#define SNDRV_PCM_FORMAT_SPECIAL ((snd_pcm_format_t) 31)
-#define SNDRV_PCM_FORMAT_S24_3LE ((snd_pcm_format_t) 32)
-#define SNDRV_PCM_FORMAT_S24_3BE ((snd_pcm_format_t) 33)
-#define SNDRV_PCM_FORMAT_U24_3LE ((snd_pcm_format_t) 34)
-#define SNDRV_PCM_FORMAT_U24_3BE ((snd_pcm_format_t) 35)
-#define SNDRV_PCM_FORMAT_S20_3LE ((snd_pcm_format_t) 36)
-#define SNDRV_PCM_FORMAT_S20_3BE ((snd_pcm_format_t) 37)
-#define SNDRV_PCM_FORMAT_U20_3LE ((snd_pcm_format_t) 38)
-#define SNDRV_PCM_FORMAT_U20_3BE ((snd_pcm_format_t) 39)
-#define SNDRV_PCM_FORMAT_S18_3LE ((snd_pcm_format_t) 40)
-#define SNDRV_PCM_FORMAT_S18_3BE ((snd_pcm_format_t) 41)
-#define SNDRV_PCM_FORMAT_U18_3LE ((snd_pcm_format_t) 42)
-#define SNDRV_PCM_FORMAT_U18_3BE ((snd_pcm_format_t) 43)
-#define SNDRV_PCM_FORMAT_G723_24 ((snd_pcm_format_t) 44)
-#define SNDRV_PCM_FORMAT_G723_24_1B ((snd_pcm_format_t) 45)
-#define SNDRV_PCM_FORMAT_G723_40 ((snd_pcm_format_t) 46)
-#define SNDRV_PCM_FORMAT_G723_40_1B ((snd_pcm_format_t) 47)
-#define SNDRV_PCM_FORMAT_DSD_U8 ((snd_pcm_format_t) 48)
-#define SNDRV_PCM_FORMAT_DSD_U16_LE ((snd_pcm_format_t) 49)
-#define SNDRV_PCM_FORMAT_DSD_U32_LE ((snd_pcm_format_t) 50)
-#define SNDRV_PCM_FORMAT_DSD_U16_BE ((snd_pcm_format_t) 51)
-#define SNDRV_PCM_FORMAT_DSD_U32_BE ((snd_pcm_format_t) 52)
-#define SNDRV_PCM_FORMAT_LAST SNDRV_PCM_FORMAT_DSD_U32_BE
-#ifdef SNDRV_LITTLE_ENDIAN
-#define SNDRV_PCM_FORMAT_S16 SNDRV_PCM_FORMAT_S16_LE
-#define SNDRV_PCM_FORMAT_U16 SNDRV_PCM_FORMAT_U16_LE
-#define SNDRV_PCM_FORMAT_S24 SNDRV_PCM_FORMAT_S24_LE
-#define SNDRV_PCM_FORMAT_U24 SNDRV_PCM_FORMAT_U24_LE
-#define SNDRV_PCM_FORMAT_S32 SNDRV_PCM_FORMAT_S32_LE
-#define SNDRV_PCM_FORMAT_U32 SNDRV_PCM_FORMAT_U32_LE
-#define SNDRV_PCM_FORMAT_FLOAT SNDRV_PCM_FORMAT_FLOAT_LE
-#define SNDRV_PCM_FORMAT_FLOAT64 SNDRV_PCM_FORMAT_FLOAT64_LE
-#define SNDRV_PCM_FORMAT_IEC958_SUBFRAME SNDRV_PCM_FORMAT_IEC958_SUBFRAME_LE
-#endif
-#ifdef SNDRV_BIG_ENDIAN
-#define SNDRV_PCM_FORMAT_S16 SNDRV_PCM_FORMAT_S16_BE
-#define SNDRV_PCM_FORMAT_U16 SNDRV_PCM_FORMAT_U16_BE
-#define SNDRV_PCM_FORMAT_S24 SNDRV_PCM_FORMAT_S24_BE
-#define SNDRV_PCM_FORMAT_U24 SNDRV_PCM_FORMAT_U24_BE
-#define SNDRV_PCM_FORMAT_S32 SNDRV_PCM_FORMAT_S32_BE
-#define SNDRV_PCM_FORMAT_U32 SNDRV_PCM_FORMAT_U32_BE
-#define SNDRV_PCM_FORMAT_FLOAT SNDRV_PCM_FORMAT_FLOAT_BE
-#define SNDRV_PCM_FORMAT_FLOAT64 SNDRV_PCM_FORMAT_FLOAT64_BE
-#define SNDRV_PCM_FORMAT_IEC958_SUBFRAME SNDRV_PCM_FORMAT_IEC958_SUBFRAME_BE
-#endif
-typedef int __bitwise snd_pcm_subformat_t;
-#define SNDRV_PCM_SUBFORMAT_STD ((snd_pcm_subformat_t) 0)
-#define SNDRV_PCM_SUBFORMAT_LAST SNDRV_PCM_SUBFORMAT_STD
-#define SNDRV_PCM_INFO_MMAP 0x00000001
-#define SNDRV_PCM_INFO_MMAP_VALID 0x00000002
-#define SNDRV_PCM_INFO_DOUBLE 0x00000004
-#define SNDRV_PCM_INFO_BATCH 0x00000010
-#define SNDRV_PCM_INFO_INTERLEAVED 0x00000100
-#define SNDRV_PCM_INFO_NONINTERLEAVED 0x00000200
-#define SNDRV_PCM_INFO_COMPLEX 0x00000400
-#define SNDRV_PCM_INFO_BLOCK_TRANSFER 0x00010000
-#define SNDRV_PCM_INFO_OVERRANGE 0x00020000
-#define SNDRV_PCM_INFO_RESUME 0x00040000
-#define SNDRV_PCM_INFO_PAUSE 0x00080000
-#define SNDRV_PCM_INFO_HALF_DUPLEX 0x00100000
-#define SNDRV_PCM_INFO_JOINT_DUPLEX 0x00200000
-#define SNDRV_PCM_INFO_SYNC_START 0x00400000
-#define SNDRV_PCM_INFO_NO_PERIOD_WAKEUP 0x00800000
-#define SNDRV_PCM_INFO_HAS_WALL_CLOCK 0x01000000
-#define SNDRV_PCM_INFO_HAS_LINK_ATIME 0x01000000
-#define SNDRV_PCM_INFO_HAS_LINK_ABSOLUTE_ATIME 0x02000000
-#define SNDRV_PCM_INFO_HAS_LINK_ESTIMATED_ATIME 0x04000000
-#define SNDRV_PCM_INFO_HAS_LINK_SYNCHRONIZED_ATIME 0x08000000
-#define SNDRV_PCM_INFO_DRAIN_TRIGGER 0x40000000
-#define SNDRV_PCM_INFO_FIFO_IN_FRAMES 0x80000000
-typedef int __bitwise snd_pcm_state_t;
-#define SNDRV_PCM_STATE_OPEN ((snd_pcm_state_t) 0)
-#define SNDRV_PCM_STATE_SETUP ((snd_pcm_state_t) 1)
-#define SNDRV_PCM_STATE_PREPARED ((snd_pcm_state_t) 2)
-#define SNDRV_PCM_STATE_RUNNING ((snd_pcm_state_t) 3)
-#define SNDRV_PCM_STATE_XRUN ((snd_pcm_state_t) 4)
-#define SNDRV_PCM_STATE_DRAINING ((snd_pcm_state_t) 5)
-#define SNDRV_PCM_STATE_PAUSED ((snd_pcm_state_t) 6)
-#define SNDRV_PCM_STATE_SUSPENDED ((snd_pcm_state_t) 7)
-#define SNDRV_PCM_STATE_DISCONNECTED ((snd_pcm_state_t) 8)
-#define SNDRV_PCM_STATE_LAST SNDRV_PCM_STATE_DISCONNECTED
-enum {
- SNDRV_PCM_MMAP_OFFSET_DATA = 0x00000000,
- SNDRV_PCM_MMAP_OFFSET_STATUS = 0x80000000,
- SNDRV_PCM_MMAP_OFFSET_CONTROL = 0x81000000,
-};
-union snd_pcm_sync_id {
- unsigned char id[16];
- unsigned short id16[8];
- unsigned int id32[4];
-};
-struct snd_pcm_info {
- unsigned int device;
- unsigned int subdevice;
- int stream;
- int card;
- unsigned char id[64];
- unsigned char name[80];
- unsigned char subname[32];
- int dev_class;
- int dev_subclass;
- unsigned int subdevices_count;
- unsigned int subdevices_avail;
- union snd_pcm_sync_id sync;
- unsigned char reserved[64];
-};
-typedef int snd_pcm_hw_param_t;
-#define SNDRV_PCM_HW_PARAM_ACCESS 0
-#define SNDRV_PCM_HW_PARAM_FORMAT 1
-#define SNDRV_PCM_HW_PARAM_SUBFORMAT 2
-#define SNDRV_PCM_HW_PARAM_FIRST_MASK SNDRV_PCM_HW_PARAM_ACCESS
-#define SNDRV_PCM_HW_PARAM_LAST_MASK SNDRV_PCM_HW_PARAM_SUBFORMAT
-#define SNDRV_PCM_HW_PARAM_SAMPLE_BITS 8
-#define SNDRV_PCM_HW_PARAM_FRAME_BITS 9
-#define SNDRV_PCM_HW_PARAM_CHANNELS 10
-#define SNDRV_PCM_HW_PARAM_RATE 11
-#define SNDRV_PCM_HW_PARAM_PERIOD_TIME 12
-#define SNDRV_PCM_HW_PARAM_PERIOD_SIZE 13
-#define SNDRV_PCM_HW_PARAM_PERIOD_BYTES 14
-#define SNDRV_PCM_HW_PARAM_PERIODS 15
-#define SNDRV_PCM_HW_PARAM_BUFFER_TIME 16
-#define SNDRV_PCM_HW_PARAM_BUFFER_SIZE 17
-#define SNDRV_PCM_HW_PARAM_BUFFER_BYTES 18
-#define SNDRV_PCM_HW_PARAM_TICK_TIME 19
-#define SNDRV_PCM_HW_PARAM_FIRST_INTERVAL SNDRV_PCM_HW_PARAM_SAMPLE_BITS
-#define SNDRV_PCM_HW_PARAM_LAST_INTERVAL SNDRV_PCM_HW_PARAM_TICK_TIME
-#define SNDRV_PCM_HW_PARAMS_NORESAMPLE (1 << 0)
-#define SNDRV_PCM_HW_PARAMS_EXPORT_BUFFER (1 << 1)
-#define SNDRV_PCM_HW_PARAMS_NO_PERIOD_WAKEUP (1 << 2)
-struct snd_interval {
- unsigned int min, max;
- unsigned int openmin : 1, openmax : 1, integer : 1, empty : 1;
-};
-#define SNDRV_MASK_MAX 256
-struct snd_mask {
- __u32 bits[(SNDRV_MASK_MAX + 31) / 32];
-};
-struct snd_pcm_hw_params {
- unsigned int flags;
- struct snd_mask masks[SNDRV_PCM_HW_PARAM_LAST_MASK - SNDRV_PCM_HW_PARAM_FIRST_MASK + 1];
- struct snd_mask mres[5];
- struct snd_interval intervals[SNDRV_PCM_HW_PARAM_LAST_INTERVAL - SNDRV_PCM_HW_PARAM_FIRST_INTERVAL + 1];
- struct snd_interval ires[9];
- unsigned int rmask;
- unsigned int cmask;
- unsigned int info;
- unsigned int msbits;
- unsigned int rate_num;
- unsigned int rate_den;
- snd_pcm_uframes_t fifo_size;
- unsigned char reserved[64];
-};
-enum {
- SNDRV_PCM_TSTAMP_NONE = 0,
- SNDRV_PCM_TSTAMP_ENABLE,
- SNDRV_PCM_TSTAMP_LAST = SNDRV_PCM_TSTAMP_ENABLE,
-};
-struct snd_pcm_sw_params {
- int tstamp_mode;
- unsigned int period_step;
- unsigned int sleep_min;
- snd_pcm_uframes_t avail_min;
- snd_pcm_uframes_t xfer_align;
- snd_pcm_uframes_t start_threshold;
- snd_pcm_uframes_t stop_threshold;
- snd_pcm_uframes_t silence_threshold;
- snd_pcm_uframes_t silence_size;
- snd_pcm_uframes_t boundary;
- unsigned int proto;
- unsigned int tstamp_type;
- unsigned char reserved[56];
-};
-struct snd_pcm_channel_info {
- unsigned int channel;
- __kernel_off_t offset;
- unsigned int first;
- unsigned int step;
-};
-enum {
- SNDRV_PCM_AUDIO_TSTAMP_TYPE_COMPAT = 0,
- SNDRV_PCM_AUDIO_TSTAMP_TYPE_DEFAULT = 1,
- SNDRV_PCM_AUDIO_TSTAMP_TYPE_LINK = 2,
- SNDRV_PCM_AUDIO_TSTAMP_TYPE_LINK_ABSOLUTE = 3,
- SNDRV_PCM_AUDIO_TSTAMP_TYPE_LINK_ESTIMATED = 4,
- SNDRV_PCM_AUDIO_TSTAMP_TYPE_LINK_SYNCHRONIZED = 5,
- SNDRV_PCM_AUDIO_TSTAMP_TYPE_LAST = SNDRV_PCM_AUDIO_TSTAMP_TYPE_LINK_SYNCHRONIZED
-};
-struct snd_pcm_status {
- snd_pcm_state_t state;
- struct timespec trigger_tstamp;
- struct timespec tstamp;
- snd_pcm_uframes_t appl_ptr;
- snd_pcm_uframes_t hw_ptr;
- snd_pcm_sframes_t delay;
- snd_pcm_uframes_t avail;
- snd_pcm_uframes_t avail_max;
- snd_pcm_uframes_t overrange;
- snd_pcm_state_t suspended_state;
- __u32 audio_tstamp_data;
- struct timespec audio_tstamp;
- struct timespec driver_tstamp;
- __u32 audio_tstamp_accuracy;
- unsigned char reserved[52 - 2 * sizeof(struct timespec)];
-};
-struct snd_pcm_mmap_status {
- snd_pcm_state_t state;
- int pad1;
- snd_pcm_uframes_t hw_ptr;
- struct timespec tstamp;
- snd_pcm_state_t suspended_state;
- struct timespec audio_tstamp;
-};
-struct snd_pcm_mmap_control {
- snd_pcm_uframes_t appl_ptr;
- snd_pcm_uframes_t avail_min;
-};
-#define SNDRV_PCM_SYNC_PTR_HWSYNC (1 << 0)
-#define SNDRV_PCM_SYNC_PTR_APPL (1 << 1)
-#define SNDRV_PCM_SYNC_PTR_AVAIL_MIN (1 << 2)
-struct snd_pcm_sync_ptr {
- unsigned int flags;
- union {
- struct snd_pcm_mmap_status status;
- unsigned char reserved[64];
- } s;
- union {
- struct snd_pcm_mmap_control control;
- unsigned char reserved[64];
- } c;
-};
-struct snd_xferi {
- snd_pcm_sframes_t result;
- void * buf;
- snd_pcm_uframes_t frames;
-};
-struct snd_xfern {
- snd_pcm_sframes_t result;
- void * * bufs;
- snd_pcm_uframes_t frames;
-};
-enum {
- SNDRV_PCM_TSTAMP_TYPE_GETTIMEOFDAY = 0,
- SNDRV_PCM_TSTAMP_TYPE_MONOTONIC,
- SNDRV_PCM_TSTAMP_TYPE_MONOTONIC_RAW,
- SNDRV_PCM_TSTAMP_TYPE_LAST = SNDRV_PCM_TSTAMP_TYPE_MONOTONIC_RAW,
-};
-enum {
- SNDRV_CHMAP_UNKNOWN = 0,
- SNDRV_CHMAP_NA,
- SNDRV_CHMAP_MONO,
- SNDRV_CHMAP_FL,
- SNDRV_CHMAP_FR,
- SNDRV_CHMAP_RL,
- SNDRV_CHMAP_RR,
- SNDRV_CHMAP_FC,
- SNDRV_CHMAP_LFE,
- SNDRV_CHMAP_SL,
- SNDRV_CHMAP_SR,
- SNDRV_CHMAP_RC,
- SNDRV_CHMAP_FLC,
- SNDRV_CHMAP_FRC,
- SNDRV_CHMAP_RLC,
- SNDRV_CHMAP_RRC,
- SNDRV_CHMAP_FLW,
- SNDRV_CHMAP_FRW,
- SNDRV_CHMAP_FLH,
- SNDRV_CHMAP_FCH,
- SNDRV_CHMAP_FRH,
- SNDRV_CHMAP_TC,
- SNDRV_CHMAP_TFL,
- SNDRV_CHMAP_TFR,
- SNDRV_CHMAP_TFC,
- SNDRV_CHMAP_TRL,
- SNDRV_CHMAP_TRR,
- SNDRV_CHMAP_TRC,
- SNDRV_CHMAP_TFLC,
- SNDRV_CHMAP_TFRC,
- SNDRV_CHMAP_TSL,
- SNDRV_CHMAP_TSR,
- SNDRV_CHMAP_LLFE,
- SNDRV_CHMAP_RLFE,
- SNDRV_CHMAP_BC,
- SNDRV_CHMAP_BLC,
- SNDRV_CHMAP_BRC,
- SNDRV_CHMAP_LAST = SNDRV_CHMAP_BRC,
-};
-#define SNDRV_CHMAP_POSITION_MASK 0xffff
-#define SNDRV_CHMAP_PHASE_INVERSE (0x01 << 16)
-#define SNDRV_CHMAP_DRIVER_SPEC (0x02 << 16)
-#define SNDRV_PCM_IOCTL_PVERSION _IOR('A', 0x00, int)
-#define SNDRV_PCM_IOCTL_INFO _IOR('A', 0x01, struct snd_pcm_info)
-#define SNDRV_PCM_IOCTL_TSTAMP _IOW('A', 0x02, int)
-#define SNDRV_PCM_IOCTL_TTSTAMP _IOW('A', 0x03, int)
-#define SNDRV_PCM_IOCTL_HW_REFINE _IOWR('A', 0x10, struct snd_pcm_hw_params)
-#define SNDRV_PCM_IOCTL_HW_PARAMS _IOWR('A', 0x11, struct snd_pcm_hw_params)
-#define SNDRV_PCM_IOCTL_HW_FREE _IO('A', 0x12)
-#define SNDRV_PCM_IOCTL_SW_PARAMS _IOWR('A', 0x13, struct snd_pcm_sw_params)
-#define SNDRV_PCM_IOCTL_STATUS _IOR('A', 0x20, struct snd_pcm_status)
-#define SNDRV_PCM_IOCTL_DELAY _IOR('A', 0x21, snd_pcm_sframes_t)
-#define SNDRV_PCM_IOCTL_HWSYNC _IO('A', 0x22)
-#define SNDRV_PCM_IOCTL_SYNC_PTR _IOWR('A', 0x23, struct snd_pcm_sync_ptr)
-#define SNDRV_PCM_IOCTL_STATUS_EXT _IOWR('A', 0x24, struct snd_pcm_status)
-#define SNDRV_PCM_IOCTL_CHANNEL_INFO _IOR('A', 0x32, struct snd_pcm_channel_info)
-#define SNDRV_PCM_IOCTL_PREPARE _IO('A', 0x40)
-#define SNDRV_PCM_IOCTL_RESET _IO('A', 0x41)
-#define SNDRV_PCM_IOCTL_START _IO('A', 0x42)
-#define SNDRV_PCM_IOCTL_DROP _IO('A', 0x43)
-#define SNDRV_PCM_IOCTL_DRAIN _IO('A', 0x44)
-#define SNDRV_PCM_IOCTL_PAUSE _IOW('A', 0x45, int)
-#define SNDRV_PCM_IOCTL_REWIND _IOW('A', 0x46, snd_pcm_uframes_t)
-#define SNDRV_PCM_IOCTL_RESUME _IO('A', 0x47)
-#define SNDRV_PCM_IOCTL_XRUN _IO('A', 0x48)
-#define SNDRV_PCM_IOCTL_FORWARD _IOW('A', 0x49, snd_pcm_uframes_t)
-#define SNDRV_PCM_IOCTL_WRITEI_FRAMES _IOW('A', 0x50, struct snd_xferi)
-#define SNDRV_PCM_IOCTL_READI_FRAMES _IOR('A', 0x51, struct snd_xferi)
-#define SNDRV_PCM_IOCTL_WRITEN_FRAMES _IOW('A', 0x52, struct snd_xfern)
-#define SNDRV_PCM_IOCTL_READN_FRAMES _IOR('A', 0x53, struct snd_xfern)
-#define SNDRV_PCM_IOCTL_LINK _IOW('A', 0x60, int)
-#define SNDRV_PCM_IOCTL_UNLINK _IO('A', 0x61)
-#define SNDRV_RAWMIDI_VERSION SNDRV_PROTOCOL_VERSION(2, 0, 0)
-enum {
- SNDRV_RAWMIDI_STREAM_OUTPUT = 0,
- SNDRV_RAWMIDI_STREAM_INPUT,
- SNDRV_RAWMIDI_STREAM_LAST = SNDRV_RAWMIDI_STREAM_INPUT,
-};
-#define SNDRV_RAWMIDI_INFO_OUTPUT 0x00000001
-#define SNDRV_RAWMIDI_INFO_INPUT 0x00000002
-#define SNDRV_RAWMIDI_INFO_DUPLEX 0x00000004
-struct snd_rawmidi_info {
- unsigned int device;
- unsigned int subdevice;
- int stream;
- int card;
- unsigned int flags;
- unsigned char id[64];
- unsigned char name[80];
- unsigned char subname[32];
- unsigned int subdevices_count;
- unsigned int subdevices_avail;
- unsigned char reserved[64];
-};
-struct snd_rawmidi_params {
- int stream;
- size_t buffer_size;
- size_t avail_min;
- unsigned int no_active_sensing : 1;
- unsigned char reserved[16];
-};
-struct snd_rawmidi_status {
- int stream;
- struct timespec tstamp;
- size_t avail;
- size_t xruns;
- unsigned char reserved[16];
-};
-#define SNDRV_RAWMIDI_IOCTL_PVERSION _IOR('W', 0x00, int)
-#define SNDRV_RAWMIDI_IOCTL_INFO _IOR('W', 0x01, struct snd_rawmidi_info)
-#define SNDRV_RAWMIDI_IOCTL_PARAMS _IOWR('W', 0x10, struct snd_rawmidi_params)
-#define SNDRV_RAWMIDI_IOCTL_STATUS _IOWR('W', 0x20, struct snd_rawmidi_status)
-#define SNDRV_RAWMIDI_IOCTL_DROP _IOW('W', 0x30, int)
-#define SNDRV_RAWMIDI_IOCTL_DRAIN _IOW('W', 0x31, int)
-#define SNDRV_TIMER_VERSION SNDRV_PROTOCOL_VERSION(2, 0, 6)
-enum {
- SNDRV_TIMER_CLASS_NONE = - 1,
- SNDRV_TIMER_CLASS_SLAVE = 0,
- SNDRV_TIMER_CLASS_GLOBAL,
- SNDRV_TIMER_CLASS_CARD,
- SNDRV_TIMER_CLASS_PCM,
- SNDRV_TIMER_CLASS_LAST = SNDRV_TIMER_CLASS_PCM,
-};
-enum {
- SNDRV_TIMER_SCLASS_NONE = 0,
- SNDRV_TIMER_SCLASS_APPLICATION,
- SNDRV_TIMER_SCLASS_SEQUENCER,
- SNDRV_TIMER_SCLASS_OSS_SEQUENCER,
- SNDRV_TIMER_SCLASS_LAST = SNDRV_TIMER_SCLASS_OSS_SEQUENCER,
-};
-#define SNDRV_TIMER_GLOBAL_SYSTEM 0
-#define SNDRV_TIMER_GLOBAL_RTC 1
-#define SNDRV_TIMER_GLOBAL_HPET 2
-#define SNDRV_TIMER_GLOBAL_HRTIMER 3
-#define SNDRV_TIMER_FLG_SLAVE (1 << 0)
-struct snd_timer_id {
- int dev_class;
- int dev_sclass;
- int card;
- int device;
- int subdevice;
-};
-struct snd_timer_ginfo {
- struct snd_timer_id tid;
- unsigned int flags;
- int card;
- unsigned char id[64];
- unsigned char name[80];
- unsigned long reserved0;
- unsigned long resolution;
- unsigned long resolution_min;
- unsigned long resolution_max;
- unsigned int clients;
- unsigned char reserved[32];
-};
-struct snd_timer_gparams {
- struct snd_timer_id tid;
- unsigned long period_num;
- unsigned long period_den;
- unsigned char reserved[32];
-};
-struct snd_timer_gstatus {
- struct snd_timer_id tid;
- unsigned long resolution;
- unsigned long resolution_num;
- unsigned long resolution_den;
- unsigned char reserved[32];
-};
-struct snd_timer_select {
- struct snd_timer_id id;
- unsigned char reserved[32];
-};
-struct snd_timer_info {
- unsigned int flags;
- int card;
- unsigned char id[64];
- unsigned char name[80];
- unsigned long reserved0;
- unsigned long resolution;
- unsigned char reserved[64];
-};
-#define SNDRV_TIMER_PSFLG_AUTO (1 << 0)
-#define SNDRV_TIMER_PSFLG_EXCLUSIVE (1 << 1)
-#define SNDRV_TIMER_PSFLG_EARLY_EVENT (1 << 2)
-struct snd_timer_params {
- unsigned int flags;
- unsigned int ticks;
- unsigned int queue_size;
- unsigned int reserved0;
- unsigned int filter;
- unsigned char reserved[60];
-};
-struct snd_timer_status {
- struct timespec tstamp;
- unsigned int resolution;
- unsigned int lost;
- unsigned int overrun;
- unsigned int queue;
- unsigned char reserved[64];
-};
-#define SNDRV_TIMER_IOCTL_PVERSION _IOR('T', 0x00, int)
-#define SNDRV_TIMER_IOCTL_NEXT_DEVICE _IOWR('T', 0x01, struct snd_timer_id)
-#define SNDRV_TIMER_IOCTL_TREAD _IOW('T', 0x02, int)
-#define SNDRV_TIMER_IOCTL_GINFO _IOWR('T', 0x03, struct snd_timer_ginfo)
-#define SNDRV_TIMER_IOCTL_GPARAMS _IOW('T', 0x04, struct snd_timer_gparams)
-#define SNDRV_TIMER_IOCTL_GSTATUS _IOWR('T', 0x05, struct snd_timer_gstatus)
-#define SNDRV_TIMER_IOCTL_SELECT _IOW('T', 0x10, struct snd_timer_select)
-#define SNDRV_TIMER_IOCTL_INFO _IOR('T', 0x11, struct snd_timer_info)
-#define SNDRV_TIMER_IOCTL_PARAMS _IOW('T', 0x12, struct snd_timer_params)
-#define SNDRV_TIMER_IOCTL_STATUS _IOR('T', 0x14, struct snd_timer_status)
-#define SNDRV_TIMER_IOCTL_START _IO('T', 0xa0)
-#define SNDRV_TIMER_IOCTL_STOP _IO('T', 0xa1)
-#define SNDRV_TIMER_IOCTL_CONTINUE _IO('T', 0xa2)
-#define SNDRV_TIMER_IOCTL_PAUSE _IO('T', 0xa3)
-struct snd_timer_read {
- unsigned int resolution;
- unsigned int ticks;
-};
-enum {
- SNDRV_TIMER_EVENT_RESOLUTION = 0,
- SNDRV_TIMER_EVENT_TICK,
- SNDRV_TIMER_EVENT_START,
- SNDRV_TIMER_EVENT_STOP,
- SNDRV_TIMER_EVENT_CONTINUE,
- SNDRV_TIMER_EVENT_PAUSE,
- SNDRV_TIMER_EVENT_EARLY,
- SNDRV_TIMER_EVENT_SUSPEND,
- SNDRV_TIMER_EVENT_RESUME,
- SNDRV_TIMER_EVENT_MSTART = SNDRV_TIMER_EVENT_START + 10,
- SNDRV_TIMER_EVENT_MSTOP = SNDRV_TIMER_EVENT_STOP + 10,
- SNDRV_TIMER_EVENT_MCONTINUE = SNDRV_TIMER_EVENT_CONTINUE + 10,
- SNDRV_TIMER_EVENT_MPAUSE = SNDRV_TIMER_EVENT_PAUSE + 10,
- SNDRV_TIMER_EVENT_MSUSPEND = SNDRV_TIMER_EVENT_SUSPEND + 10,
- SNDRV_TIMER_EVENT_MRESUME = SNDRV_TIMER_EVENT_RESUME + 10,
-};
-struct snd_timer_tread {
- int event;
- struct timespec tstamp;
- unsigned int val;
-};
-#define SNDRV_CTL_VERSION SNDRV_PROTOCOL_VERSION(2, 0, 7)
-struct snd_ctl_card_info {
- int card;
- int pad;
- unsigned char id[16];
- unsigned char driver[16];
- unsigned char name[32];
- unsigned char longname[80];
- unsigned char reserved_[16];
- unsigned char mixername[80];
- unsigned char components[128];
-};
-typedef int __bitwise snd_ctl_elem_type_t;
-#define SNDRV_CTL_ELEM_TYPE_NONE ((snd_ctl_elem_type_t) 0)
-#define SNDRV_CTL_ELEM_TYPE_BOOLEAN ((snd_ctl_elem_type_t) 1)
-#define SNDRV_CTL_ELEM_TYPE_INTEGER ((snd_ctl_elem_type_t) 2)
-#define SNDRV_CTL_ELEM_TYPE_ENUMERATED ((snd_ctl_elem_type_t) 3)
-#define SNDRV_CTL_ELEM_TYPE_BYTES ((snd_ctl_elem_type_t) 4)
-#define SNDRV_CTL_ELEM_TYPE_IEC958 ((snd_ctl_elem_type_t) 5)
-#define SNDRV_CTL_ELEM_TYPE_INTEGER64 ((snd_ctl_elem_type_t) 6)
-#define SNDRV_CTL_ELEM_TYPE_LAST SNDRV_CTL_ELEM_TYPE_INTEGER64
-typedef int __bitwise snd_ctl_elem_iface_t;
-#define SNDRV_CTL_ELEM_IFACE_CARD ((snd_ctl_elem_iface_t) 0)
-#define SNDRV_CTL_ELEM_IFACE_HWDEP ((snd_ctl_elem_iface_t) 1)
-#define SNDRV_CTL_ELEM_IFACE_MIXER ((snd_ctl_elem_iface_t) 2)
-#define SNDRV_CTL_ELEM_IFACE_PCM ((snd_ctl_elem_iface_t) 3)
-#define SNDRV_CTL_ELEM_IFACE_RAWMIDI ((snd_ctl_elem_iface_t) 4)
-#define SNDRV_CTL_ELEM_IFACE_TIMER ((snd_ctl_elem_iface_t) 5)
-#define SNDRV_CTL_ELEM_IFACE_SEQUENCER ((snd_ctl_elem_iface_t) 6)
-#define SNDRV_CTL_ELEM_IFACE_LAST SNDRV_CTL_ELEM_IFACE_SEQUENCER
-#define SNDRV_CTL_ELEM_ACCESS_READ (1 << 0)
-#define SNDRV_CTL_ELEM_ACCESS_WRITE (1 << 1)
-#define SNDRV_CTL_ELEM_ACCESS_READWRITE (SNDRV_CTL_ELEM_ACCESS_READ | SNDRV_CTL_ELEM_ACCESS_WRITE)
-#define SNDRV_CTL_ELEM_ACCESS_VOLATILE (1 << 2)
-#define SNDRV_CTL_ELEM_ACCESS_TIMESTAMP (1 << 3)
-#define SNDRV_CTL_ELEM_ACCESS_TLV_READ (1 << 4)
-#define SNDRV_CTL_ELEM_ACCESS_TLV_WRITE (1 << 5)
-#define SNDRV_CTL_ELEM_ACCESS_TLV_READWRITE (SNDRV_CTL_ELEM_ACCESS_TLV_READ | SNDRV_CTL_ELEM_ACCESS_TLV_WRITE)
-#define SNDRV_CTL_ELEM_ACCESS_TLV_COMMAND (1 << 6)
-#define SNDRV_CTL_ELEM_ACCESS_INACTIVE (1 << 8)
-#define SNDRV_CTL_ELEM_ACCESS_LOCK (1 << 9)
-#define SNDRV_CTL_ELEM_ACCESS_OWNER (1 << 10)
-#define SNDRV_CTL_ELEM_ACCESS_TLV_CALLBACK (1 << 28)
-#define SNDRV_CTL_ELEM_ACCESS_USER (1 << 29)
-#define SNDRV_CTL_POWER_D0 0x0000
-#define SNDRV_CTL_POWER_D1 0x0100
-#define SNDRV_CTL_POWER_D2 0x0200
-#define SNDRV_CTL_POWER_D3 0x0300
-#define SNDRV_CTL_POWER_D3hot (SNDRV_CTL_POWER_D3 | 0x0000)
-#define SNDRV_CTL_POWER_D3cold (SNDRV_CTL_POWER_D3 | 0x0001)
-#define SNDRV_CTL_ELEM_ID_NAME_MAXLEN 44
-struct snd_ctl_elem_id {
- unsigned int numid;
- snd_ctl_elem_iface_t iface;
- unsigned int device;
- unsigned int subdevice;
- unsigned char name[SNDRV_CTL_ELEM_ID_NAME_MAXLEN];
- unsigned int index;
-};
-struct snd_ctl_elem_list {
- unsigned int offset;
- unsigned int space;
- unsigned int used;
- unsigned int count;
- struct snd_ctl_elem_id * pids;
- unsigned char reserved[50];
-};
-struct snd_ctl_elem_info {
- struct snd_ctl_elem_id id;
- snd_ctl_elem_type_t type;
- unsigned int access;
- unsigned int count;
- __kernel_pid_t owner;
- union {
- struct {
- long min;
- long max;
- long step;
- } integer;
- struct {
- long long min;
- long long max;
- long long step;
- } integer64;
- struct {
- unsigned int items;
- unsigned int item;
- char name[64];
- __u64 names_ptr;
- unsigned int names_length;
- } enumerated;
- unsigned char reserved[128];
- } value;
- union {
- unsigned short d[4];
- unsigned short * d_ptr;
- } dimen;
- unsigned char reserved[64 - 4 * sizeof(unsigned short)];
-};
-struct snd_ctl_elem_value {
- struct snd_ctl_elem_id id;
- unsigned int indirect : 1;
- union {
- union {
- long value[128];
- long * value_ptr;
- } integer;
- union {
- long long value[64];
- long long * value_ptr;
- } integer64;
- union {
- unsigned int item[128];
- unsigned int * item_ptr;
- } enumerated;
- union {
- unsigned char data[512];
- unsigned char * data_ptr;
- } bytes;
- struct snd_aes_iec958 iec958;
- } value;
- struct timespec tstamp;
- unsigned char reserved[128 - sizeof(struct timespec)];
-};
-struct snd_ctl_tlv {
- unsigned int numid;
- unsigned int length;
- unsigned int tlv[0];
-};
-#define SNDRV_CTL_IOCTL_PVERSION _IOR('U', 0x00, int)
-#define SNDRV_CTL_IOCTL_CARD_INFO _IOR('U', 0x01, struct snd_ctl_card_info)
-#define SNDRV_CTL_IOCTL_ELEM_LIST _IOWR('U', 0x10, struct snd_ctl_elem_list)
-#define SNDRV_CTL_IOCTL_ELEM_INFO _IOWR('U', 0x11, struct snd_ctl_elem_info)
-#define SNDRV_CTL_IOCTL_ELEM_READ _IOWR('U', 0x12, struct snd_ctl_elem_value)
-#define SNDRV_CTL_IOCTL_ELEM_WRITE _IOWR('U', 0x13, struct snd_ctl_elem_value)
-#define SNDRV_CTL_IOCTL_ELEM_LOCK _IOW('U', 0x14, struct snd_ctl_elem_id)
-#define SNDRV_CTL_IOCTL_ELEM_UNLOCK _IOW('U', 0x15, struct snd_ctl_elem_id)
-#define SNDRV_CTL_IOCTL_SUBSCRIBE_EVENTS _IOWR('U', 0x16, int)
-#define SNDRV_CTL_IOCTL_ELEM_ADD _IOWR('U', 0x17, struct snd_ctl_elem_info)
-#define SNDRV_CTL_IOCTL_ELEM_REPLACE _IOWR('U', 0x18, struct snd_ctl_elem_info)
-#define SNDRV_CTL_IOCTL_ELEM_REMOVE _IOWR('U', 0x19, struct snd_ctl_elem_id)
-#define SNDRV_CTL_IOCTL_TLV_READ _IOWR('U', 0x1a, struct snd_ctl_tlv)
-#define SNDRV_CTL_IOCTL_TLV_WRITE _IOWR('U', 0x1b, struct snd_ctl_tlv)
-#define SNDRV_CTL_IOCTL_TLV_COMMAND _IOWR('U', 0x1c, struct snd_ctl_tlv)
-#define SNDRV_CTL_IOCTL_HWDEP_NEXT_DEVICE _IOWR('U', 0x20, int)
-#define SNDRV_CTL_IOCTL_HWDEP_INFO _IOR('U', 0x21, struct snd_hwdep_info)
-#define SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE _IOR('U', 0x30, int)
-#define SNDRV_CTL_IOCTL_PCM_INFO _IOWR('U', 0x31, struct snd_pcm_info)
-#define SNDRV_CTL_IOCTL_PCM_PREFER_SUBDEVICE _IOW('U', 0x32, int)
-#define SNDRV_CTL_IOCTL_RAWMIDI_NEXT_DEVICE _IOWR('U', 0x40, int)
-#define SNDRV_CTL_IOCTL_RAWMIDI_INFO _IOWR('U', 0x41, struct snd_rawmidi_info)
-#define SNDRV_CTL_IOCTL_RAWMIDI_PREFER_SUBDEVICE _IOW('U', 0x42, int)
-#define SNDRV_CTL_IOCTL_POWER _IOWR('U', 0xd0, int)
-#define SNDRV_CTL_IOCTL_POWER_STATE _IOR('U', 0xd1, int)
-enum sndrv_ctl_event_type {
- SNDRV_CTL_EVENT_ELEM = 0,
- SNDRV_CTL_EVENT_LAST = SNDRV_CTL_EVENT_ELEM,
-};
-#define SNDRV_CTL_EVENT_MASK_VALUE (1 << 0)
-#define SNDRV_CTL_EVENT_MASK_INFO (1 << 1)
-#define SNDRV_CTL_EVENT_MASK_ADD (1 << 2)
-#define SNDRV_CTL_EVENT_MASK_TLV (1 << 3)
-#define SNDRV_CTL_EVENT_MASK_REMOVE (~0U)
-struct snd_ctl_event {
- int type;
- union {
- struct {
- unsigned int mask;
- struct snd_ctl_elem_id id;
- } elem;
- unsigned char data8[60];
- } data;
-};
-#define SNDRV_CTL_NAME_NONE ""
-#define SNDRV_CTL_NAME_PLAYBACK "Playback "
-#define SNDRV_CTL_NAME_CAPTURE "Capture "
-#define SNDRV_CTL_NAME_IEC958_NONE ""
-#define SNDRV_CTL_NAME_IEC958_SWITCH "Switch"
-#define SNDRV_CTL_NAME_IEC958_VOLUME "Volume"
-#define SNDRV_CTL_NAME_IEC958_DEFAULT "Default"
-#define SNDRV_CTL_NAME_IEC958_MASK "Mask"
-#define SNDRV_CTL_NAME_IEC958_CON_MASK "Con Mask"
-#define SNDRV_CTL_NAME_IEC958_PRO_MASK "Pro Mask"
-#define SNDRV_CTL_NAME_IEC958_PCM_STREAM "PCM Stream"
-#define SNDRV_CTL_NAME_IEC958(expl,direction,what) "IEC958 " expl SNDRV_CTL_NAME_ ##direction SNDRV_CTL_NAME_IEC958_ ##what
-#endif
-
diff --git a/sdm710/kernel-headers/sound/audio_effects.h b/sdm710/kernel-headers/sound/audio_effects.h
deleted file mode 100644
index 0ac887cd..00000000
--- a/sdm710/kernel-headers/sound/audio_effects.h
+++ /dev/null
@@ -1,361 +0,0 @@
-#ifndef _AUDIO_EFFECTS_H
-#define _AUDIO_EFFECTS_H
-
-/** AUDIO EFFECTS **/
-
-
-/* CONFIG GET/SET */
-#define CONFIG_CACHE 0
-#define CONFIG_SET 1
-#define CONFIG_GET 2
-
-/* CONFIG HEADER */
-/*
- * MODULE_ID,
- * DEVICE,
- * NUM_COMMANDS,
- * COMMAND_ID_1,
- * CONFIG_CACHE/SET/GET,
- * OFFSET_1,
- * LENGTH_1,
- * VALUES_1,
- * ...,
- * ...,
- * COMMAND_ID_2,
- * CONFIG_CACHE/SET/GET,
- * OFFSET_2,
- * LENGTH_2,
- * VALUES_2,
- * ...,
- * ...,
- * COMMAND_ID_3,
- * ...
- */
-
-
-/* CONFIG PARAM IDs */
-#define VIRTUALIZER_MODULE 0x00001000
-#define VIRTUALIZER_ENABLE 0x00001001
-#define VIRTUALIZER_STRENGTH 0x00001002
-#define VIRTUALIZER_OUT_TYPE 0x00001003
-#define VIRTUALIZER_GAIN_ADJUST 0x00001004
-#define VIRTUALIZER_ENABLE_PARAM_LEN 1
-#define VIRTUALIZER_STRENGTH_PARAM_LEN 1
-#define VIRTUALIZER_OUT_TYPE_PARAM_LEN 1
-#define VIRTUALIZER_GAIN_ADJUST_PARAM_LEN 1
-
-#define REVERB_MODULE 0x00002000
-#define REVERB_ENABLE 0x00002001
-#define REVERB_MODE 0x00002002
-#define REVERB_PRESET 0x00002003
-#define REVERB_WET_MIX 0x00002004
-#define REVERB_GAIN_ADJUST 0x00002005
-#define REVERB_ROOM_LEVEL 0x00002006
-#define REVERB_ROOM_HF_LEVEL 0x00002007
-#define REVERB_DECAY_TIME 0x00002008
-#define REVERB_DECAY_HF_RATIO 0x00002009
-#define REVERB_REFLECTIONS_LEVEL 0x0000200a
-#define REVERB_REFLECTIONS_DELAY 0x0000200b
-#define REVERB_LEVEL 0x0000200c
-#define REVERB_DELAY 0x0000200d
-#define REVERB_DIFFUSION 0x0000200e
-#define REVERB_DENSITY 0x0000200f
-#define REVERB_ENABLE_PARAM_LEN 1
-#define REVERB_MODE_PARAM_LEN 1
-#define REVERB_PRESET_PARAM_LEN 1
-#define REVERB_WET_MIX_PARAM_LEN 1
-#define REVERB_GAIN_ADJUST_PARAM_LEN 1
-#define REVERB_ROOM_LEVEL_PARAM_LEN 1
-#define REVERB_ROOM_HF_LEVEL_PARAM_LEN 1
-#define REVERB_DECAY_TIME_PARAM_LEN 1
-#define REVERB_DECAY_HF_RATIO_PARAM_LEN 1
-#define REVERB_REFLECTIONS_LEVEL_PARAM_LEN 1
-#define REVERB_REFLECTIONS_DELAY_PARAM_LEN 1
-#define REVERB_LEVEL_PARAM_LEN 1
-#define REVERB_DELAY_PARAM_LEN 1
-#define REVERB_DIFFUSION_PARAM_LEN 1
-#define REVERB_DENSITY_PARAM_LEN 1
-
-#define BASS_BOOST_MODULE 0x00003000
-#define BASS_BOOST_ENABLE 0x00003001
-#define BASS_BOOST_MODE 0x00003002
-#define BASS_BOOST_STRENGTH 0x00003003
-#define BASS_BOOST_ENABLE_PARAM_LEN 1
-#define BASS_BOOST_MODE_PARAM_LEN 1
-#define BASS_BOOST_STRENGTH_PARAM_LEN 1
-
-#define EQ_MODULE 0x00004000
-#define EQ_ENABLE 0x00004001
-#define EQ_CONFIG 0x00004002
-#define EQ_NUM_BANDS 0x00004003
-#define EQ_BAND_LEVELS 0x00004004
-#define EQ_BAND_LEVEL_RANGE 0x00004005
-#define EQ_BAND_FREQS 0x00004006
-#define EQ_SINGLE_BAND_FREQ_RANGE 0x00004007
-#define EQ_SINGLE_BAND_FREQ 0x00004008
-#define EQ_BAND_INDEX 0x00004009
-#define EQ_PRESET_ID 0x0000400a
-#define EQ_NUM_PRESETS 0x0000400b
-#define EQ_PRESET_NAME 0x0000400c
-#define EQ_ENABLE_PARAM_LEN 1
-#define EQ_CONFIG_PARAM_LEN 3
-#define EQ_CONFIG_PER_BAND_PARAM_LEN 5
-#define EQ_NUM_BANDS_PARAM_LEN 1
-#define EQ_BAND_LEVELS_PARAM_LEN 13
-#define EQ_BAND_LEVEL_RANGE_PARAM_LEN 2
-#define EQ_BAND_FREQS_PARAM_LEN 13
-#define EQ_SINGLE_BAND_FREQ_RANGE_PARAM_LEN 2
-#define EQ_SINGLE_BAND_FREQ_PARAM_LEN 1
-#define EQ_BAND_INDEX_PARAM_LEN 1
-#define EQ_PRESET_ID_PARAM_LEN 1
-#define EQ_NUM_PRESETS_PARAM_LEN 1
-#define EQ_PRESET_NAME_PARAM_LEN 32
-
-#define EQ_TYPE_NONE 0
-#define EQ_BASS_BOOST 1
-#define EQ_BASS_CUT 2
-#define EQ_TREBLE_BOOST 3
-#define EQ_TREBLE_CUT 4
-#define EQ_BAND_BOOST 5
-#define EQ_BAND_CUT 6
-
-#define SOFT_VOLUME_MODULE 0x00006000
-#define SOFT_VOLUME_ENABLE 0x00006001
-#define SOFT_VOLUME_GAIN_2CH 0x00006002
-#define SOFT_VOLUME_GAIN_MASTER 0x00006003
-#define SOFT_VOLUME_ENABLE_PARAM_LEN 1
-#define SOFT_VOLUME_GAIN_2CH_PARAM_LEN 2
-#define SOFT_VOLUME_GAIN_MASTER_PARAM_LEN 1
-
-#define SOFT_VOLUME2_MODULE 0x00007000
-#define SOFT_VOLUME2_ENABLE 0x00007001
-#define SOFT_VOLUME2_GAIN_2CH 0x00007002
-#define SOFT_VOLUME2_GAIN_MASTER 0x00007003
-#define SOFT_VOLUME2_ENABLE_PARAM_LEN SOFT_VOLUME_ENABLE_PARAM_LEN
-#define SOFT_VOLUME2_GAIN_2CH_PARAM_LEN SOFT_VOLUME_GAIN_2CH_PARAM_LEN
-#define SOFT_VOLUME2_GAIN_MASTER_PARAM_LEN \
- SOFT_VOLUME_GAIN_MASTER_PARAM_LEN
-
-#define PBE_CONF_MODULE_ID 0x00010C2A
-#define PBE_CONF_PARAM_ID 0x00010C49
-
-#define PBE_MODULE 0x00008000
-#define PBE_ENABLE 0x00008001
-#define PBE_CONFIG 0x00008002
-#define PBE_ENABLE_PARAM_LEN 1
-#define PBE_CONFIG_PARAM_LEN 28
-
-#define COMMAND_PAYLOAD_LEN 3
-#define COMMAND_PAYLOAD_SZ (COMMAND_PAYLOAD_LEN * sizeof(uint32_t))
-#define MAX_INBAND_PARAM_SZ 4096
-#define Q27_UNITY (1 << 27)
-#define Q8_UNITY (1 << 8)
-#define CUSTOM_OPENSL_PRESET 18
-
-#define VIRTUALIZER_ENABLE_PARAM_SZ \
- (VIRTUALIZER_ENABLE_PARAM_LEN*sizeof(uint32_t))
-#define VIRTUALIZER_STRENGTH_PARAM_SZ \
- (VIRTUALIZER_STRENGTH_PARAM_LEN*sizeof(uint32_t))
-#define VIRTUALIZER_OUT_TYPE_PARAM_SZ \
- (VIRTUALIZER_OUT_TYPE_PARAM_LEN*sizeof(uint32_t))
-#define VIRTUALIZER_GAIN_ADJUST_PARAM_SZ \
- (VIRTUALIZER_GAIN_ADJUST_PARAM_LEN*sizeof(uint32_t))
-struct virtualizer_params {
- uint32_t device;
- uint32_t enable_flag;
- uint32_t strength;
- uint32_t out_type;
- int32_t gain_adjust;
-};
-
-#define NUM_OSL_REVERB_PRESETS_SUPPORTED 6
-#define REVERB_ENABLE_PARAM_SZ \
- (REVERB_ENABLE_PARAM_LEN*sizeof(uint32_t))
-#define REVERB_MODE_PARAM_SZ \
- (REVERB_MODE_PARAM_LEN*sizeof(uint32_t))
-#define REVERB_PRESET_PARAM_SZ \
- (REVERB_PRESET_PARAM_LEN*sizeof(uint32_t))
-#define REVERB_WET_MIX_PARAM_SZ \
- (REVERB_WET_MIX_PARAM_LEN*sizeof(uint32_t))
-#define REVERB_GAIN_ADJUST_PARAM_SZ \
- (REVERB_GAIN_ADJUST_PARAM_LEN*sizeof(uint32_t))
-#define REVERB_ROOM_LEVEL_PARAM_SZ \
- (REVERB_ROOM_LEVEL_PARAM_LEN*sizeof(uint32_t))
-#define REVERB_ROOM_HF_LEVEL_PARAM_SZ \
- (REVERB_ROOM_HF_LEVEL_PARAM_LEN*sizeof(uint32_t))
-#define REVERB_DECAY_TIME_PARAM_SZ \
- (REVERB_DECAY_TIME_PARAM_LEN*sizeof(uint32_t))
-#define REVERB_DECAY_HF_RATIO_PARAM_SZ \
- (REVERB_DECAY_HF_RATIO_PARAM_LEN*sizeof(uint32_t))
-#define REVERB_REFLECTIONS_LEVEL_PARAM_SZ \
- (REVERB_REFLECTIONS_LEVEL_PARAM_LEN*sizeof(uint32_t))
-#define REVERB_REFLECTIONS_DELAY_PARAM_SZ \
- (REVERB_REFLECTIONS_DELAY_PARAM_LEN*sizeof(uint32_t))
-#define REVERB_LEVEL_PARAM_SZ \
- (REVERB_LEVEL_PARAM_LEN*sizeof(uint32_t))
-#define REVERB_DELAY_PARAM_SZ \
- (REVERB_DELAY_PARAM_LEN*sizeof(uint32_t))
-#define REVERB_DIFFUSION_PARAM_SZ \
- (REVERB_DIFFUSION_PARAM_LEN*sizeof(uint32_t))
-#define REVERB_DENSITY_PARAM_SZ \
- (REVERB_DENSITY_PARAM_LEN*sizeof(uint32_t))
-struct reverb_params {
- uint32_t device;
- uint32_t enable_flag;
- uint32_t mode;
- uint32_t preset;
- uint32_t wet_mix;
- int32_t gain_adjust;
- int32_t room_level;
- int32_t room_hf_level;
- uint32_t decay_time;
- uint32_t decay_hf_ratio;
- int32_t reflections_level;
- uint32_t reflections_delay;
- int32_t level;
- uint32_t delay;
- uint32_t diffusion;
- uint32_t density;
-};
-
-#define BASS_BOOST_ENABLE_PARAM_SZ \
- (BASS_BOOST_ENABLE_PARAM_LEN*sizeof(uint32_t))
-#define BASS_BOOST_MODE_PARAM_SZ \
- (BASS_BOOST_MODE_PARAM_LEN*sizeof(uint32_t))
-#define BASS_BOOST_STRENGTH_PARAM_SZ \
- (BASS_BOOST_STRENGTH_PARAM_LEN*sizeof(uint32_t))
-struct bass_boost_params {
- uint32_t device;
- uint32_t enable_flag;
- uint32_t mode;
- uint32_t strength;
-};
-
-
-#define MAX_EQ_BANDS 12
-#define MAX_OSL_EQ_BANDS 5
-#define EQ_ENABLE_PARAM_SZ \
- (EQ_ENABLE_PARAM_LEN*sizeof(uint32_t))
-#define EQ_CONFIG_PARAM_SZ \
- (EQ_CONFIG_PARAM_LEN*sizeof(uint32_t))
-#define EQ_CONFIG_PER_BAND_PARAM_SZ \
- (EQ_CONFIG_PER_BAND_PARAM_LEN*sizeof(uint32_t))
-#define EQ_CONFIG_PARAM_MAX_LEN (EQ_CONFIG_PARAM_LEN+\
- MAX_EQ_BANDS*EQ_CONFIG_PER_BAND_PARAM_LEN)
-#define EQ_CONFIG_PARAM_MAX_SZ \
- (EQ_CONFIG_PARAM_MAX_LEN*sizeof(uint32_t))
-#define EQ_NUM_BANDS_PARAM_SZ \
- (EQ_NUM_BANDS_PARAM_LEN*sizeof(uint32_t))
-#define EQ_BAND_LEVELS_PARAM_SZ \
- (EQ_BAND_LEVELS_PARAM_LEN*sizeof(uint32_t))
-#define EQ_BAND_LEVEL_RANGE_PARAM_SZ \
- (EQ_BAND_LEVEL_RANGE_PARAM_LEN*sizeof(uint32_t))
-#define EQ_BAND_FREQS_PARAM_SZ \
- (EQ_BAND_FREQS_PARAM_LEN*sizeof(uint32_t))
-#define EQ_SINGLE_BAND_FREQ_RANGE_PARAM_SZ \
- (EQ_SINGLE_BAND_FREQ_RANGE_PARAM_LEN*sizeof(uint32_t))
-#define EQ_SINGLE_BAND_FREQ_PARAM_SZ \
- (EQ_SINGLE_BAND_FREQ_PARAM_LEN*sizeof(uint32_t))
-#define EQ_BAND_INDEX_PARAM_SZ \
- (EQ_BAND_INDEX_PARAM_LEN*sizeof(uint32_t))
-#define EQ_PRESET_ID_PARAM_SZ \
- (EQ_PRESET_ID_PARAM_LEN*sizeof(uint32_t))
-#define EQ_NUM_PRESETS_PARAM_SZ \
- (EQ_NUM_PRESETS_PARAM_LEN*sizeof(uint8_t))
-struct eq_config_t {
- int32_t eq_pregain;
- int32_t preset_id;
- uint32_t num_bands;
-};
-struct eq_per_band_config_t {
- int32_t band_idx;
- uint32_t filter_type;
- uint32_t freq_millihertz;
- int32_t gain_millibels;
- uint32_t quality_factor;
-};
-struct eq_per_band_freq_range_t {
- uint32_t band_index;
- uint32_t min_freq_millihertz;
- uint32_t max_freq_millihertz;
-};
-
-struct eq_params {
- uint32_t device;
- uint32_t enable_flag;
- struct eq_config_t config;
- struct eq_per_band_config_t per_band_cfg[MAX_EQ_BANDS];
- struct eq_per_band_freq_range_t per_band_freq_range[MAX_EQ_BANDS];
- uint32_t band_index;
- uint32_t freq_millihertz;
-};
-
-#define PBE_ENABLE_PARAM_SZ \
- (PBE_ENABLE_PARAM_LEN*sizeof(uint32_t))
-#define PBE_CONFIG_PARAM_SZ \
- (PBE_CONFIG_PARAM_LEN*sizeof(uint16_t))
-struct pbe_config_t {
- int16_t real_bass_mix;
- int16_t bass_color_control;
- uint16_t main_chain_delay;
- uint16_t xover_filter_order;
- uint16_t bandpass_filter_order;
- int16_t drc_delay;
- uint16_t rms_tav;
- int16_t exp_threshold;
- uint16_t exp_slope;
- int16_t comp_threshold;
- uint16_t comp_slope;
- uint16_t makeup_gain;
- uint32_t comp_attack;
- uint32_t comp_release;
- uint32_t exp_attack;
- uint32_t exp_release;
- int16_t limiter_bass_threshold;
- int16_t limiter_high_threshold;
- int16_t limiter_bass_makeup_gain;
- int16_t limiter_high_makeup_gain;
- int16_t limiter_bass_gc;
- int16_t limiter_high_gc;
- int16_t limiter_delay;
- uint16_t reserved;
- /* place holder for filter coeffs to be followed */
- int32_t p1LowPassCoeffs[5*2];
- int32_t p1HighPassCoeffs[5*2];
- int32_t p1BandPassCoeffs[5*3];
- int32_t p1BassShelfCoeffs[5];
- int32_t p1TrebleShelfCoeffs[5];
-} __attribute__((packed));
-
-struct pbe_params {
- uint32_t device;
- uint32_t enable_flag;
- uint32_t cfg_len;
- struct pbe_config_t config;
-};
-
-#define SOFT_VOLUME_ENABLE_PARAM_SZ \
- (SOFT_VOLUME_ENABLE_PARAM_LEN*sizeof(uint32_t))
-#define SOFT_VOLUME_GAIN_MASTER_PARAM_SZ \
- (SOFT_VOLUME_GAIN_MASTER_PARAM_LEN*sizeof(uint32_t))
-#define SOFT_VOLUME_GAIN_2CH_PARAM_SZ \
- (SOFT_VOLUME_GAIN_2CH_PARAM_LEN*sizeof(uint16_t))
-struct soft_volume_params {
- uint32_t device;
- uint32_t enable_flag;
- uint32_t master_gain;
- uint32_t left_gain;
- uint32_t right_gain;
-};
-
-struct msm_nt_eff_all_config {
- struct bass_boost_params bass_boost;
- struct pbe_params pbe;
- struct virtualizer_params virtualizer;
- struct reverb_params reverb;
- struct eq_params equalizer;
- struct soft_volume_params saplus_vol;
- struct soft_volume_params topo_switch_vol;
-};
-
-#endif /*_MSM_AUDIO_EFFECTS_H*/
diff --git a/sdm710/kernel-headers/sound/audio_slimslave.h b/sdm710/kernel-headers/sound/audio_slimslave.h
deleted file mode 100644
index 316a5573..00000000
--- a/sdm710/kernel-headers/sound/audio_slimslave.h
+++ /dev/null
@@ -1,18 +0,0 @@
-#ifndef __AUDIO_SLIMSLAVE_H__
-#define __AUDIO_SLIMSLAVE_H__
-
-#include <linux/types.h>
-#include <linux/ioctl.h>
-
-#define AUDIO_SLIMSLAVE_IOCTL_NAME "audio_slimslave"
-#define AUDIO_SLIMSLAVE_MAGIC 'S'
-
-#define AUDIO_SLIMSLAVE_IOCTL_UNVOTE _IO(AUDIO_SLIMSLAVE_MAGIC, 0x00)
-#define AUDIO_SLIMSLAVE_IOCTL_VOTE _IO(AUDIO_SLIMSLAVE_MAGIC, 0x01)
-
-enum {
- AUDIO_SLIMSLAVE_UNVOTE,
- AUDIO_SLIMSLAVE_VOTE
-};
-
-#endif
diff --git a/sdm710/kernel-headers/sound/compress_offload.h b/sdm710/kernel-headers/sound/compress_offload.h
deleted file mode 100644
index dd78a2d5..00000000
--- a/sdm710/kernel-headers/sound/compress_offload.h
+++ /dev/null
@@ -1,118 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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 __COMPRESS_OFFLOAD_H
-#define __COMPRESS_OFFLOAD_H
-#include <linux/types.h>
-#include <sound/asound.h>
-#include <sound/compress_params.h>
-#define SNDRV_COMPRESS_VERSION SNDRV_PROTOCOL_VERSION(0, 1, 2)
-struct snd_compressed_buffer {
- __u32 fragment_size;
- __u32 fragments;
-} __attribute__((packed, aligned(4)));
-struct snd_compr_params {
- struct snd_compressed_buffer buffer;
- struct snd_codec codec;
- __u8 no_wake_mode;
-} __attribute__((packed, aligned(4)));
-struct snd_compr_tstamp {
- __u32 byte_offset;
- __u64 copied_total;
- __u32 pcm_frames;
- __u32 pcm_io_frames;
- __u32 sampling_rate;
- __u64 timestamp;
-} __attribute__((packed, aligned(4)));
-struct snd_compr_avail {
- __u64 avail;
- struct snd_compr_tstamp tstamp;
-} __attribute__((packed, aligned(4)));
-enum snd_compr_direction {
- SND_COMPRESS_PLAYBACK = 0,
- SND_COMPRESS_CAPTURE
-};
-struct snd_compr_caps {
- __u32 num_codecs;
- __u32 direction;
- __u32 min_fragment_size;
- __u32 max_fragment_size;
- __u32 min_fragments;
- __u32 max_fragments;
- __u32 codecs[MAX_NUM_CODECS];
- __u32 reserved[11];
-} __attribute__((packed, aligned(4)));
-struct snd_compr_codec_caps {
- __u32 codec;
- __u32 num_descriptors;
- struct snd_codec_desc descriptor[MAX_NUM_CODEC_DESCRIPTORS];
-} __attribute__((packed, aligned(4)));
-struct snd_compr_audio_info {
- __u32 frame_size;
- __u32 reserved[15];
-} __attribute__((packed, aligned(4)));
-#define SNDRV_COMPRESS_RENDER_MODE_AUDIO_MASTER 0
-#define SNDRV_COMPRESS_RENDER_MODE_STC_MASTER 1
-#define SNDRV_COMPRESS_CLK_REC_MODE_NONE 0
-#define SNDRV_COMPRESS_CLK_REC_MODE_AUTO 1
-enum sndrv_compress_encoder {
- SNDRV_COMPRESS_ENCODER_PADDING = 1,
- SNDRV_COMPRESS_ENCODER_DELAY = 2,
- SNDRV_COMPRESS_MIN_BLK_SIZE = 3,
- SNDRV_COMPRESS_MAX_BLK_SIZE = 4,
- SNDRV_COMPRESS_PATH_DELAY = 5,
- SNDRV_COMPRESS_RENDER_MODE = 6,
- SNDRV_COMPRESS_CLK_REC_MODE = 7,
- SNDRV_COMPRESS_RENDER_WINDOW = 8,
- SNDRV_COMPRESS_START_DELAY = 9,
- SNDRV_COMPRESS_ENABLE_ADJUST_SESSION_CLOCK = 10,
- SNDRV_COMPRESS_ADJUST_SESSION_CLOCK = 11,
-};
-#define SNDRV_COMPRESS_PATH_DELAY SNDRV_COMPRESS_PATH_DELAY
-#define SNDRV_COMPRESS_RENDER_MODE SNDRV_COMPRESS_RENDER_MODE
-#define SNDRV_COMPRESS_CLK_REC_MODE SNDRV_COMPRESS_CLK_REC_MODE
-#define SNDRV_COMPRESS_RENDER_WINDOW SNDRV_COMPRESS_RENDER_WINDOW
-#define SNDRV_COMPRESS_START_DELAY SNDRV_COMPRESS_START_DELAY
-#define SNDRV_COMPRESS_ENABLE_ADJUST_SESSION_CLOCK SNDRV_COMPRESS_ENABLE_ADJUST_SESSION_CLOCK
-#define SNDRV_COMPRESS_ADJUST_SESSION_CLOCK SNDRV_COMPRESS_ADJUST_SESSION_CLOCK
-struct snd_compr_metadata {
- __u32 key;
- __u32 value[8];
-} __attribute__((packed, aligned(4)));
-#define SNDRV_COMPRESS_IOCTL_VERSION _IOR('C', 0x00, int)
-#define SNDRV_COMPRESS_GET_CAPS _IOWR('C', 0x10, struct snd_compr_caps)
-#define SNDRV_COMPRESS_GET_CODEC_CAPS _IOWR('C', 0x11, struct snd_compr_codec_caps)
-#define SNDRV_COMPRESS_SET_PARAMS _IOW('C', 0x12, struct snd_compr_params)
-#define SNDRV_COMPRESS_GET_PARAMS _IOR('C', 0x13, struct snd_codec)
-#define SNDRV_COMPRESS_SET_METADATA _IOW('C', 0x14, struct snd_compr_metadata)
-#define SNDRV_COMPRESS_GET_METADATA _IOWR('C', 0x15, struct snd_compr_metadata)
-#define SNDRV_COMPRESS_TSTAMP _IOR('C', 0x20, struct snd_compr_tstamp)
-#define SNDRV_COMPRESS_AVAIL _IOR('C', 0x21, struct snd_compr_avail)
-#define SNDRV_COMPRESS_PAUSE _IO('C', 0x30)
-#define SNDRV_COMPRESS_RESUME _IO('C', 0x31)
-#define SNDRV_COMPRESS_START _IO('C', 0x32)
-#define SNDRV_COMPRESS_STOP _IO('C', 0x33)
-#define SNDRV_COMPRESS_DRAIN _IO('C', 0x34)
-#define SNDRV_COMPRESS_NEXT_TRACK _IO('C', 0x35)
-#define SNDRV_COMPRESS_PARTIAL_DRAIN _IO('C', 0x36)
-#define SNDRV_COMPRESS_SET_NEXT_TRACK_PARAM _IOW('C', 0x80, union snd_codec_options)
-#define SND_COMPR_TRIGGER_DRAIN 7
-#define SND_COMPR_TRIGGER_NEXT_TRACK 8
-#define SND_COMPR_TRIGGER_PARTIAL_DRAIN 9
-#endif
-
diff --git a/sdm710/kernel-headers/sound/compress_params.h b/sdm710/kernel-headers/sound/compress_params.h
deleted file mode 100644
index 1172f26b..00000000
--- a/sdm710/kernel-headers/sound/compress_params.h
+++ /dev/null
@@ -1,296 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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 __SND_COMPRESS_PARAMS_H
-#define __SND_COMPRESS_PARAMS_H
-#include <linux/types.h>
-#define SND_DEC_DDP_MAX_PARAMS 18
-#define MAX_NUM_CODECS 32
-#define MAX_NUM_CODEC_DESCRIPTORS 32
-#define MAX_NUM_BITRATES 32
-#define MAX_NUM_SAMPLE_RATES 32
-#define MAX_NUM_FRAMES_PER_BUFFER 1
-#define COMPRESSED_META_DATA_MODE 0x10
-#define META_DATA_LEN_BYTES 36
-#define Q6_AC3_DECODER 0x00010BF6
-#define Q6_EAC3_DECODER 0x00010C3C
-#define Q6_DTS 0x00010D88
-#define Q6_DTS_LBR 0x00010DBB
-#define COMPRESSED_TIMESTAMP_FLAG 0x0001
-#define SND_AUDIOCODEC_PCM ((__u32) 0x00000001)
-#define SND_AUDIOCODEC_MP3 ((__u32) 0x00000002)
-#define SND_AUDIOCODEC_AMR ((__u32) 0x00000003)
-#define SND_AUDIOCODEC_AMRWB ((__u32) 0x00000004)
-#define SND_AUDIOCODEC_AMRWBPLUS ((__u32) 0x00000005)
-#define SND_AUDIOCODEC_AAC ((__u32) 0x00000006)
-#define SND_AUDIOCODEC_WMA ((__u32) 0x00000007)
-#define SND_AUDIOCODEC_REAL ((__u32) 0x00000008)
-#define SND_AUDIOCODEC_VORBIS ((__u32) 0x00000009)
-#define SND_AUDIOCODEC_FLAC ((__u32) 0x0000000A)
-#define SND_AUDIOCODEC_IEC61937 ((__u32) 0x0000000B)
-#define SND_AUDIOCODEC_G723_1 ((__u32) 0x0000000C)
-#define SND_AUDIOCODEC_G729 ((__u32) 0x0000000D)
-#define SND_AUDIOCODEC_BESPOKE ((__u32) 0x0000000E)
-#define SND_AUDIOCODEC_DTS_PASS_THROUGH ((__u32) 0x0000000F)
-#define SND_AUDIOCODEC_DTS_LBR ((__u32) 0x00000010)
-#define SND_AUDIOCODEC_DTS_TRANSCODE_LOOPBACK ((__u32) 0x00000011)
-#define SND_AUDIOCODEC_PASS_THROUGH ((__u32) 0x00000012)
-#define SND_AUDIOCODEC_MP2 ((__u32) 0x00000013)
-#define SND_AUDIOCODEC_DTS_LBR_PASS_THROUGH ((__u32) 0x00000014)
-#define SND_AUDIOCODEC_AC3 ((__u32) 0x00000015)
-#define SND_AUDIOCODEC_AC3_PASS_THROUGH ((__u32) 0x00000016)
-#define SND_AUDIOCODEC_WMA_PRO ((__u32) 0x00000017)
-#define SND_AUDIOCODEC_DTS ((__u32) 0x00000018)
-#define SND_AUDIOCODEC_EAC3 ((__u32) 0x00000019)
-#define SND_AUDIOCODEC_ALAC ((__u32) 0x00000020)
-#define SND_AUDIOCODEC_APE ((__u32) 0x00000021)
-#define SND_AUDIOCODEC_DSD ((__u32) 0x00000022)
-#define SND_AUDIOCODEC_APTX ((__u32) 0x00000023)
-#define SND_AUDIOCODEC_TRUEHD ((__u32) 0x00000024)
-#define SND_AUDIOCODEC_MAX SND_AUDIOCODEC_TRUEHD
-#define SND_AUDIOPROFILE_PCM ((__u32) 0x00000001)
-#define SND_AUDIOCHANMODE_MP3_MONO ((__u32) 0x00000001)
-#define SND_AUDIOCHANMODE_MP3_STEREO ((__u32) 0x00000002)
-#define SND_AUDIOCHANMODE_MP3_JOINTSTEREO ((__u32) 0x00000004)
-#define SND_AUDIOCHANMODE_MP3_DUAL ((__u32) 0x00000008)
-#define SND_AUDIOPROFILE_AMR ((__u32) 0x00000001)
-#define SND_AUDIOMODE_AMR_DTX_OFF ((__u32) 0x00000001)
-#define SND_AUDIOMODE_AMR_VAD1 ((__u32) 0x00000002)
-#define SND_AUDIOMODE_AMR_VAD2 ((__u32) 0x00000004)
-#define SND_AUDIOSTREAMFORMAT_UNDEFINED ((__u32) 0x00000000)
-#define SND_AUDIOSTREAMFORMAT_CONFORMANCE ((__u32) 0x00000001)
-#define SND_AUDIOSTREAMFORMAT_IF1 ((__u32) 0x00000002)
-#define SND_AUDIOSTREAMFORMAT_IF2 ((__u32) 0x00000004)
-#define SND_AUDIOSTREAMFORMAT_FSF ((__u32) 0x00000008)
-#define SND_AUDIOSTREAMFORMAT_RTPPAYLOAD ((__u32) 0x00000010)
-#define SND_AUDIOSTREAMFORMAT_ITU ((__u32) 0x00000020)
-#define SND_AUDIOPROFILE_AMRWB ((__u32) 0x00000001)
-#define SND_AUDIOMODE_AMRWB_DTX_OFF ((__u32) 0x00000001)
-#define SND_AUDIOMODE_AMRWB_VAD1 ((__u32) 0x00000002)
-#define SND_AUDIOMODE_AMRWB_VAD2 ((__u32) 0x00000004)
-#define SND_AUDIOPROFILE_AMRWBPLUS ((__u32) 0x00000001)
-#define SND_AUDIOPROFILE_AAC ((__u32) 0x00000001)
-#define SND_AUDIOMODE_AAC_MAIN ((__u32) 0x00000001)
-#define SND_AUDIOMODE_AAC_LC ((__u32) 0x00000002)
-#define SND_AUDIOMODE_AAC_SSR ((__u32) 0x00000004)
-#define SND_AUDIOMODE_AAC_LTP ((__u32) 0x00000008)
-#define SND_AUDIOMODE_AAC_HE ((__u32) 0x00000010)
-#define SND_AUDIOMODE_AAC_SCALABLE ((__u32) 0x00000020)
-#define SND_AUDIOMODE_AAC_ERLC ((__u32) 0x00000040)
-#define SND_AUDIOMODE_AAC_LD ((__u32) 0x00000080)
-#define SND_AUDIOMODE_AAC_HE_PS ((__u32) 0x00000100)
-#define SND_AUDIOMODE_AAC_HE_MPS ((__u32) 0x00000200)
-#define SND_AUDIOSTREAMFORMAT_MP2ADTS ((__u32) 0x00000001)
-#define SND_AUDIOSTREAMFORMAT_MP4ADTS ((__u32) 0x00000002)
-#define SND_AUDIOSTREAMFORMAT_MP4LOAS ((__u32) 0x00000004)
-#define SND_AUDIOSTREAMFORMAT_MP4LATM ((__u32) 0x00000008)
-#define SND_AUDIOSTREAMFORMAT_ADIF ((__u32) 0x00000010)
-#define SND_AUDIOSTREAMFORMAT_MP4FF ((__u32) 0x00000020)
-#define SND_AUDIOSTREAMFORMAT_RAW ((__u32) 0x00000040)
-#define SND_AUDIOPROFILE_WMA7 ((__u32) 0x00000001)
-#define SND_AUDIOPROFILE_WMA8 ((__u32) 0x00000002)
-#define SND_AUDIOPROFILE_WMA9 ((__u32) 0x00000004)
-#define SND_AUDIOPROFILE_WMA10 ((__u32) 0x00000008)
-#define SND_AUDIOMODE_WMA_LEVEL1 ((__u32) 0x00000001)
-#define SND_AUDIOMODE_WMA_LEVEL2 ((__u32) 0x00000002)
-#define SND_AUDIOMODE_WMA_LEVEL3 ((__u32) 0x00000004)
-#define SND_AUDIOMODE_WMA_LEVEL4 ((__u32) 0x00000008)
-#define SND_AUDIOMODE_WMAPRO_LEVELM0 ((__u32) 0x00000010)
-#define SND_AUDIOMODE_WMAPRO_LEVELM1 ((__u32) 0x00000020)
-#define SND_AUDIOMODE_WMAPRO_LEVELM2 ((__u32) 0x00000040)
-#define SND_AUDIOMODE_WMAPRO_LEVELM3 ((__u32) 0x00000080)
-#define SND_AUDIOSTREAMFORMAT_WMA_ASF ((__u32) 0x00000001)
-#define SND_AUDIOSTREAMFORMAT_WMA_NOASF_HDR ((__u32) 0x00000002)
-#define SND_AUDIOPROFILE_REALAUDIO ((__u32) 0x00000001)
-#define SND_AUDIOMODE_REALAUDIO_G2 ((__u32) 0x00000001)
-#define SND_AUDIOMODE_REALAUDIO_8 ((__u32) 0x00000002)
-#define SND_AUDIOMODE_REALAUDIO_10 ((__u32) 0x00000004)
-#define SND_AUDIOMODE_REALAUDIO_SURROUND ((__u32) 0x00000008)
-#define SND_AUDIOPROFILE_VORBIS ((__u32) 0x00000001)
-#define SND_AUDIOMODE_VORBIS ((__u32) 0x00000001)
-#define SND_AUDIOPROFILE_FLAC ((__u32) 0x00000001)
-#define SND_AUDIOMODE_FLAC_LEVEL0 ((__u32) 0x00000001)
-#define SND_AUDIOMODE_FLAC_LEVEL1 ((__u32) 0x00000002)
-#define SND_AUDIOMODE_FLAC_LEVEL2 ((__u32) 0x00000004)
-#define SND_AUDIOMODE_FLAC_LEVEL3 ((__u32) 0x00000008)
-#define SND_AUDIOMODE_FLAC_LEVEL4 ((__u32) 0x00000010)
-#define SND_AUDIOMODE_FLAC_LEVEL5 ((__u32) 0x00000020)
-#define SND_AUDIOMODE_FLAC_LEVEL6 ((__u32) 0x00000040)
-#define SND_AUDIOMODE_FLAC_LEVEL7 ((__u32) 0x00000080)
-#define SND_AUDIOMODE_FLAC_LEVEL8 ((__u32) 0x00000100)
-#define SND_AUDIOSTREAMFORMAT_FLAC ((__u32) 0x00000001)
-#define SND_AUDIOSTREAMFORMAT_FLAC_OGG ((__u32) 0x00000002)
-#define SND_AUDIOPROFILE_IEC61937 ((__u32) 0x00000001)
-#define SND_AUDIOPROFILE_IEC61937_SPDIF ((__u32) 0x00000002)
-#define SND_AUDIOMODE_IEC_REF_STREAM_HEADER ((__u32) 0x00000000)
-#define SND_AUDIOMODE_IEC_LPCM ((__u32) 0x00000001)
-#define SND_AUDIOMODE_IEC_AC3 ((__u32) 0x00000002)
-#define SND_AUDIOMODE_IEC_MPEG1 ((__u32) 0x00000004)
-#define SND_AUDIOMODE_IEC_MP3 ((__u32) 0x00000008)
-#define SND_AUDIOMODE_IEC_MPEG2 ((__u32) 0x00000010)
-#define SND_AUDIOMODE_IEC_AACLC ((__u32) 0x00000020)
-#define SND_AUDIOMODE_IEC_DTS ((__u32) 0x00000040)
-#define SND_AUDIOMODE_IEC_ATRAC ((__u32) 0x00000080)
-#define SND_AUDIOMODE_IEC_SACD ((__u32) 0x00000100)
-#define SND_AUDIOMODE_IEC_EAC3 ((__u32) 0x00000200)
-#define SND_AUDIOMODE_IEC_DTS_HD ((__u32) 0x00000400)
-#define SND_AUDIOMODE_IEC_MLP ((__u32) 0x00000800)
-#define SND_AUDIOMODE_IEC_DST ((__u32) 0x00001000)
-#define SND_AUDIOMODE_IEC_WMAPRO ((__u32) 0x00002000)
-#define SND_AUDIOMODE_IEC_REF_CXT ((__u32) 0x00004000)
-#define SND_AUDIOMODE_IEC_HE_AAC ((__u32) 0x00008000)
-#define SND_AUDIOMODE_IEC_HE_AAC2 ((__u32) 0x00010000)
-#define SND_AUDIOMODE_IEC_MPEG_SURROUND ((__u32) 0x00020000)
-#define SND_AUDIOPROFILE_G723_1 ((__u32) 0x00000001)
-#define SND_AUDIOMODE_G723_1_ANNEX_A ((__u32) 0x00000001)
-#define SND_AUDIOMODE_G723_1_ANNEX_B ((__u32) 0x00000002)
-#define SND_AUDIOMODE_G723_1_ANNEX_C ((__u32) 0x00000004)
-#define SND_AUDIOPROFILE_G729 ((__u32) 0x00000001)
-#define SND_AUDIOMODE_G729_ANNEX_A ((__u32) 0x00000001)
-#define SND_AUDIOMODE_G729_ANNEX_B ((__u32) 0x00000002)
-#define SND_RATECONTROLMODE_CONSTANTBITRATE ((__u32) 0x00000001)
-#define SND_RATECONTROLMODE_VARIABLEBITRATE ((__u32) 0x00000002)
-struct snd_enc_wma {
- __u32 super_block_align;
- __u32 bits_per_sample;
- __u32 channelmask;
- __u32 encodeopt;
- __u32 encodeopt1;
- __u32 encodeopt2;
- __u32 avg_bit_rate;
-};
-struct snd_enc_vorbis {
- __s32 quality;
- __u32 managed;
- __u32 max_bit_rate;
- __u32 min_bit_rate;
- __u32 downmix;
-} __attribute__((packed, aligned(4)));
-struct snd_enc_real {
- __u32 quant_bits;
- __u32 start_region;
- __u32 num_regions;
-} __attribute__((packed, aligned(4)));
-struct snd_enc_flac {
- __u32 num;
- __u32 gain;
-} __attribute__((packed, aligned(4)));
-struct snd_enc_generic {
- __u32 bw;
- __s32 reserved[15];
-} __attribute__((packed, aligned(4)));
-struct snd_dec_ddp {
- __u32 params_length;
- __u32 params_id[SND_DEC_DDP_MAX_PARAMS];
- __u32 params_value[SND_DEC_DDP_MAX_PARAMS];
-} __attribute__((packed, aligned(4)));
-struct snd_dec_flac {
- __u16 sample_size;
- __u16 min_blk_size;
- __u16 max_blk_size;
- __u16 min_frame_size;
- __u16 max_frame_size;
-} __attribute__((packed, aligned(4)));
-struct snd_dec_vorbis {
- __u32 bit_stream_fmt;
-};
-struct snd_dec_alac {
- __u32 frame_length;
- __u8 compatible_version;
- __u8 bit_depth;
- __u8 pb;
- __u8 mb;
- __u8 kb;
- __u8 num_channels;
- __u16 max_run;
- __u32 max_frame_bytes;
- __u32 avg_bit_rate;
- __u32 sample_rate;
- __u32 channel_layout_tag;
-};
-struct snd_dec_ape {
- __u16 compatible_version;
- __u16 compression_level;
- __u32 format_flags;
- __u32 blocks_per_frame;
- __u32 final_frame_blocks;
- __u32 total_frames;
- __u16 bits_per_sample;
- __u16 num_channels;
- __u32 sample_rate;
- __u32 seek_table_present;
-};
-struct snd_dec_aptx {
- __u32 lap;
- __u32 uap;
- __u32 nap;
-};
-struct snd_dec_amrwb_plus {
- __u32 bit_stream_fmt;
-};
-union snd_codec_options {
- struct snd_enc_wma wma;
- struct snd_enc_vorbis vorbis;
- struct snd_enc_real real;
- struct snd_enc_flac flac;
- struct snd_enc_generic generic;
- struct snd_dec_ddp ddp;
- struct snd_dec_flac flac_dec;
- struct snd_dec_vorbis vorbis_dec;
- struct snd_dec_alac alac;
- struct snd_dec_ape ape;
- struct snd_dec_aptx aptx_dec;
- struct snd_dec_amrwb_plus amrwbplus;
-};
-struct snd_codec_desc {
- __u32 max_ch;
- __u32 sample_rates[MAX_NUM_SAMPLE_RATES];
- __u32 num_sample_rates;
- __u32 bit_rate[MAX_NUM_BITRATES];
- __u32 num_bitrates;
- __u32 rate_control;
- __u32 profiles;
- __u32 modes;
- __u32 formats;
- __u32 min_buffer;
- __u32 reserved[15];
-} __attribute__((packed, aligned(4)));
-struct snd_codec {
- __u32 id;
- __u32 ch_in;
- __u32 ch_out;
- __u32 sample_rate;
- __u32 bit_rate;
- __u32 rate_control;
- __u32 profile;
- __u32 level;
- __u32 ch_mode;
- __u32 format;
- __u32 align;
- __u32 compr_passthr;
- union snd_codec_options options;
- __u32 flags;
- __u32 reserved[2];
-} __attribute__((packed, aligned(4)));
-struct snd_codec_metadata {
- __u32 length;
- __u32 offset;
- __u64 timestamp;
- __u32 reserved[4];
-};
-#endif
diff --git a/sdm710/kernel-headers/sound/devdep_params.h b/sdm710/kernel-headers/sound/devdep_params.h
deleted file mode 100644
index b4a185f7..00000000
--- a/sdm710/kernel-headers/sound/devdep_params.h
+++ /dev/null
@@ -1,66 +0,0 @@
-#ifndef _DEV_DEP_H
-#define _DEV_DEP_H
-
-struct dolby_param_data {
- int32_t version;
- int32_t device_id;
- int32_t be_id;
- int32_t param_id;
- int32_t length;
- int32_t *data;
-};
-
-struct dolby_param_license {
- int32_t dmid;
- int32_t license_key;
-};
-
-#define SNDRV_DEVDEP_DAP_IOCTL_SET_PARAM\
- _IOWR('U', 0x10, struct dolby_param_data)
-#define SNDRV_DEVDEP_DAP_IOCTL_GET_PARAM\
- _IOR('U', 0x11, struct dolby_param_data)
-#define SNDRV_DEVDEP_DAP_IOCTL_DAP_COMMAND\
- _IOWR('U', 0x13, struct dolby_param_data)
-#define SNDRV_DEVDEP_DAP_IOCTL_DAP_LICENSE\
- _IOWR('U', 0x14, struct dolby_param_license)
-#define SNDRV_DEVDEP_DAP_IOCTL_GET_VISUALIZER\
- _IOR('U', 0x15, struct dolby_param_data)
-
-#define DTS_EAGLE_MODULE 0x00005000
-#define DTS_EAGLE_MODULE_ENABLE 0x00005001
-#define EAGLE_DRIVER_ID 0xF2
-#define DTS_EAGLE_IOCTL_GET_CACHE_SIZE _IOR(EAGLE_DRIVER_ID, 0, int)
-#define DTS_EAGLE_IOCTL_SET_CACHE_SIZE _IOW(EAGLE_DRIVER_ID, 1, int)
-#define DTS_EAGLE_IOCTL_GET_PARAM _IOR(EAGLE_DRIVER_ID, 2, void*)
-#define DTS_EAGLE_IOCTL_SET_PARAM _IOW(EAGLE_DRIVER_ID, 3, void*)
-#define DTS_EAGLE_IOCTL_SET_CACHE_BLOCK _IOW(EAGLE_DRIVER_ID, 4, void*)
-#define DTS_EAGLE_IOCTL_SET_ACTIVE_DEVICE _IOW(EAGLE_DRIVER_ID, 5, void*)
-#define DTS_EAGLE_IOCTL_GET_LICENSE _IOR(EAGLE_DRIVER_ID, 6, void*)
-#define DTS_EAGLE_IOCTL_SET_LICENSE _IOW(EAGLE_DRIVER_ID, 7, void*)
-#define DTS_EAGLE_IOCTL_SEND_LICENSE _IOW(EAGLE_DRIVER_ID, 8, int)
-#define DTS_EAGLE_IOCTL_SET_VOLUME_COMMANDS _IOW(EAGLE_DRIVER_ID, 9, void*)
-#define DTS_EAGLE_FLAG_IOCTL_PRE (1<<30)
-#define DTS_EAGLE_FLAG_IOCTL_JUSTSETCACHE (1<<31)
-#define DTS_EAGLE_FLAG_IOCTL_GETFROMCORE DTS_EAGLE_FLAG_IOCTL_JUSTSETCACHE
-#define DTS_EAGLE_FLAG_IOCTL_MASK (~(DTS_EAGLE_FLAG_IOCTL_PRE | \
- DTS_EAGLE_FLAG_IOCTL_JUSTSETCACHE))
-#define DTS_EAGLE_FLAG_ALSA_GET (1<<31)
-
-struct dts_eagle_param_desc {
- uint32_t id;
- uint32_t size;
- int32_t offset;
- uint32_t device;
-} __attribute__((packed));
-
-#define HWDEP_FE_BASE 3000 /*unique base for FE hw dep nodes*/
-struct snd_pcm_mmap_fd {
- int32_t dir;
- int32_t fd;
- int32_t size;
- int32_t actual_size;
-};
-
-#define SNDRV_PCM_IOCTL_MMAP_DATA_FD _IOWR('U', 0xd2, struct snd_pcm_mmap_fd)
-
-#endif
diff --git a/sdm710/kernel-headers/sound/lsm_params.h b/sdm710/kernel-headers/sound/lsm_params.h
deleted file mode 100644
index 50ec97a0..00000000
--- a/sdm710/kernel-headers/sound/lsm_params.h
+++ /dev/null
@@ -1,200 +0,0 @@
-#ifndef _LSM_PARAMS_H__
-#define _LSM_PARAMS_H__
-
-#define LSM_POLLING_ENABLE_SUPPORT
-#define LSM_EVENT_TIMESTAMP_MODE_SUPPORT
-
-#include <linux/types.h>
-#include <sound/asound.h>
-
-#define SNDRV_LSM_VERSION SNDRV_PROTOCOL_VERSION(0, 1, 0)
-
-#define LSM_OUT_FORMAT_PCM (0)
-#define LSM_OUT_FORMAT_ADPCM (1 << 0)
-
-#define LSM_OUT_DATA_RAW (0)
-#define LSM_OUT_DATA_PACKED (1)
-
-#define LSM_OUT_DATA_EVENTS_DISABLED (0)
-#define LSM_OUT_DATA_EVENTS_ENABLED (1)
-
-#define LSM_OUT_TRANSFER_MODE_RT (0)
-#define LSM_OUT_TRANSFER_MODE_FTRT (1)
-
-#define LSM_ENDPOINT_DETECT_THRESHOLD (0)
-#define LSM_OPERATION_MODE (1)
-#define LSM_GAIN (2)
-#define LSM_MIN_CONFIDENCE_LEVELS (3)
-#define LSM_REG_SND_MODEL (4)
-#define LSM_DEREG_SND_MODEL (5)
-#define LSM_CUSTOM_PARAMS (6)
-#define LSM_POLLING_ENABLE (7)
-#define LSM_PARAMS_MAX (LSM_POLLING_ENABLE + 1)
-
-#define LSM_EVENT_NON_TIME_STAMP_MODE (0)
-#define LSM_EVENT_TIME_STAMP_MODE (1)
-
-enum lsm_app_id {
- LSM_VOICE_WAKEUP_APP_ID = 1,
- LSM_VOICE_WAKEUP_APP_ID_V2 = 2,
-};
-
-enum lsm_detection_mode {
- LSM_MODE_KEYWORD_ONLY_DETECTION = 1,
- LSM_MODE_USER_KEYWORD_DETECTION
-};
-
-enum lsm_vw_status {
- LSM_VOICE_WAKEUP_STATUS_RUNNING = 1,
- LSM_VOICE_WAKEUP_STATUS_DETECTED,
- LSM_VOICE_WAKEUP_STATUS_END_SPEECH,
- LSM_VOICE_WAKEUP_STATUS_REJECTED
-};
-
-/*
- * Data for LSM_ENDPOINT_DETECT_THRESHOLD param_type
- * @epd_begin: Begin threshold
- * @epd_end: End threshold
- */
-struct snd_lsm_ep_det_thres {
- __u32 epd_begin;
- __u32 epd_end;
-};
-
-/*
- * Data for LSM_OPERATION_MODE param_type
- * @mode: The detection mode to be used
- * @detect_failure: Setting to enable failure detections.
- */
-struct snd_lsm_detect_mode {
- enum lsm_detection_mode mode;
- bool detect_failure;
-};
-
-/*
- * Data for LSM_GAIN param_type
- * @gain: The gain to be applied on LSM
- */
-struct snd_lsm_gain {
- __u16 gain;
-};
-
-/*
- * Data for LSM_POLLING_ENABLE param_type
- * @poll_en: Polling enable or disable
- */
-struct snd_lsm_poll_enable {
- bool poll_en;
-};
-
-
-struct snd_lsm_sound_model_v2 {
- __u8 *data;
- __u8 *confidence_level;
- __u32 data_size;
- enum lsm_detection_mode detection_mode;
- __u8 num_confidence_levels;
- bool detect_failure;
-};
-
-struct snd_lsm_session_data {
- enum lsm_app_id app_id;
-};
-
-struct snd_lsm_event_status {
- __u16 status;
- __u16 payload_size;
- __u8 payload[0];
-};
-
-struct snd_lsm_event_status_v3 {
- __u32 timestamp_lsw;
- __u32 timestamp_msw;
- __u16 status;
- __u16 payload_size;
- __u8 payload[0];
-};
-
-struct snd_lsm_detection_params {
- __u8 *conf_level;
- enum lsm_detection_mode detect_mode;
- __u8 num_confidence_levels;
- bool detect_failure;
- bool poll_enable;
-};
-
-/*
- * Param info for each parameter type
- * @module_id: Module to which parameter is to be set
- * @param_id: Parameter that is to be set
- * @param_size: size (in number of bytes) for the data
- * in param_data.
- * For confidence levels, this is num_conf_levels
- * For REG_SND_MODEL, this is size of sound model
- * For CUSTOM_PARAMS, this is size of the entire blob of data
- * @param_data: Data for the parameter.
- * For some param_types this is a structure defined, ex: LSM_GAIN
- * For CONFIDENCE_LEVELS, this is array of confidence levels
- * For REG_SND_MODEL, this is the sound model data
- * For CUSTOM_PARAMS, this is the blob of custom data.
- */
-struct lsm_params_info {
- __u32 module_id;
- __u32 param_id;
- __u32 param_size;
- __u8 *param_data;
- uint32_t param_type;
-};
-
-/*
- * Data passed to the SET_PARAM_V2 IOCTL
- * @num_params: Number of params that are to be set
- * should not be greater than LSM_PARAMS_MAX
- * @params: Points to an array of lsm_params_info
- * Each entry points to one parameter to set
- * @data_size: size (in bytes) for params
- * should be equal to
- * num_params * sizeof(struct lsm_parms_info)
- */
-struct snd_lsm_module_params {
- __u8 *params;
- __u32 num_params;
- __u32 data_size;
-};
-
-/*
- * Data passed to LSM_OUT_FORMAT_CFG IOCTL
- * @format: The media format enum
- * @packing: indicates the packing method used for data path
- * @events: indicates whether data path events need to be enabled
- * @transfer_mode: indicates whether FTRT mode or RT mode.
- */
-struct snd_lsm_output_format_cfg {
- __u8 format;
- __u8 packing;
- __u8 events;
- __u8 mode;
-};
-
-#define SNDRV_LSM_DEREG_SND_MODEL _IOW('U', 0x01, int)
-#define SNDRV_LSM_EVENT_STATUS _IOW('U', 0x02, struct snd_lsm_event_status)
-#define SNDRV_LSM_ABORT_EVENT _IOW('U', 0x03, int)
-#define SNDRV_LSM_START _IOW('U', 0x04, int)
-#define SNDRV_LSM_STOP _IOW('U', 0x05, int)
-#define SNDRV_LSM_SET_SESSION_DATA _IOW('U', 0x06, struct snd_lsm_session_data)
-#define SNDRV_LSM_REG_SND_MODEL_V2 _IOW('U', 0x07,\
- struct snd_lsm_sound_model_v2)
-#define SNDRV_LSM_LAB_CONTROL _IOW('U', 0x08, uint32_t)
-#define SNDRV_LSM_STOP_LAB _IO('U', 0x09)
-#define SNDRV_LSM_SET_PARAMS _IOW('U', 0x0A, \
- struct snd_lsm_detection_params)
-#define SNDRV_LSM_SET_MODULE_PARAMS _IOW('U', 0x0B, \
- struct snd_lsm_module_params)
-#define SNDRV_LSM_OUT_FORMAT_CFG _IOW('U', 0x0C, \
- struct snd_lsm_output_format_cfg)
-#define SNDRV_LSM_SET_PORT _IO('U', 0x0D)
-#define SNDRV_LSM_SET_FWK_MODE_CONFIG _IOW('U', 0x0E, uint32_t)
-#define SNDRV_LSM_EVENT_STATUS_V3 _IOW('U', 0x0F, \
- struct snd_lsm_event_status_v3)
-
-#endif
diff --git a/sdm710/kernel-headers/sound/msmcal-hwdep.h b/sdm710/kernel-headers/sound/msmcal-hwdep.h
deleted file mode 100644
index 9b29ebf3..00000000
--- a/sdm710/kernel-headers/sound/msmcal-hwdep.h
+++ /dev/null
@@ -1,37 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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 _CALIB_HWDEP_H
-#define _CALIB_HWDEP_H
-#define WCD9XXX_CODEC_HWDEP_NODE 1000
-enum wcd_cal_type {
- WCD9XXX_MIN_CAL,
- WCD9XXX_ANC_CAL = WCD9XXX_MIN_CAL,
- WCD9XXX_MAD_CAL,
- WCD9XXX_MBHC_CAL,
- WCD9XXX_VBAT_CAL,
- WCD9XXX_MAX_CAL,
-};
-struct wcdcal_ioctl_buffer {
- __u32 size;
- __u8 * buffer;
- enum wcd_cal_type cal_type;
-};
-#define SNDRV_CTL_IOCTL_HWDEP_CAL_TYPE _IOW('U', 0x1, struct wcdcal_ioctl_buffer)
-#endif
-
diff --git a/sdm710/kernel-headers/sound/voice_params.h b/sdm710/kernel-headers/sound/voice_params.h
deleted file mode 100644
index 43e3b9d0..00000000
--- a/sdm710/kernel-headers/sound/voice_params.h
+++ /dev/null
@@ -1,14 +0,0 @@
-#ifndef __VOICE_PARAMS_H__
-#define __VOICE_PARAMS_H__
-
-#include <linux/types.h>
-#include <sound/asound.h>
-
-enum voice_lch_mode {
- VOICE_LCH_START = 1,
- VOICE_LCH_STOP
-};
-
-#define SNDRV_VOICE_IOCTL_LCH _IOW('U', 0x00, enum voice_lch_mode)
-
-#endif
diff --git a/sdm710/kernel-headers/sound/voice_svc.h b/sdm710/kernel-headers/sound/voice_svc.h
deleted file mode 100644
index 5b471a8b..00000000
--- a/sdm710/kernel-headers/sound/voice_svc.h
+++ /dev/null
@@ -1,57 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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>
-#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
-#define MSG_REGISTER 0x1
-#define MSG_REQUEST 0x2
-#define MSG_RESPONSE 0x3
-struct voice_svc_write_msg {
- __u32 msg_type;
- __u8 payload[0];
-};
-struct voice_svc_register {
- char svc_name[MAX_APR_SERVICE_NAME_LEN];
- __u32 src_port;
- __u8 reg_flag;
-};
-struct voice_svc_cmd_response {
- __u32 src_port;
- __u32 dest_port;
- __u32 token;
- __u32 opcode;
- __u32 payload_size;
- __u8 payload[0];
-};
-struct voice_svc_cmd_request {
- char svc_name[MAX_APR_SERVICE_NAME_LEN];
- __u32 src_port;
- __u32 dest_port;
- __u32 token;
- __u32 opcode;
- __u32 payload_size;
- __u8 payload[0];
-};
-#endif
-
diff --git a/sdm710/kernel-headers/sound/wcd-dsp-glink.h b/sdm710/kernel-headers/sound/wcd-dsp-glink.h
deleted file mode 100644
index 39d128d3..00000000
--- a/sdm710/kernel-headers/sound/wcd-dsp-glink.h
+++ /dev/null
@@ -1,60 +0,0 @@
-#ifndef _WCD_DSP_GLINK_H
-#define _WCD_DSP_GLINK_H
-
-#include <linux/types.h>
-
-#define WDSP_CH_NAME_MAX_LEN 50
-
-enum {
- WDSP_REG_PKT = 1,
- WDSP_CMD_PKT,
- WDSP_READY_PKT,
-};
-#define WDSP_READY_PKT WDSP_READY_PKT
-
-/*
- * struct wdsp_reg_pkt - Glink channel information structure format
- * @no_of_channels: Number of glink channels to open
- * @payload[0]: Dynamic array contains all the glink channels information
- */
-struct wdsp_reg_pkt {
- __u8 no_of_channels;
- __u8 payload[0];
-};
-
-/*
- * struct wdsp_cmd_pkt - WDSP command packet format
- * @ch_name: Name of the glink channel
- * @payload_size: Size of the payload
- * @payload[0]: Actual data payload
- */
-struct wdsp_cmd_pkt {
- char ch_name[WDSP_CH_NAME_MAX_LEN];
- __u32 payload_size;
- __u8 payload[0];
-};
-
-/*
- * struct wdsp_write_pkt - Format that userspace send the data to driver.
- * @pkt_type: Type of the packet(REG or CMD PKT)
- * @payload[0]: Payload is either cmd or reg pkt structure based on pkt type
- */
-struct wdsp_write_pkt {
- __u8 pkt_type;
- __u8 payload[0];
-};
-
-/*
- * struct wdsp_glink_ch_cfg - Defines the glink channel configuration.
- * @ch_name: Name of the glink channel
- * @latency_in_us: Latency specified in micro seconds for QOS
- * @no_of_intents: Number of intents prequeued
- * @intents_size[0]: Dynamic array to specify size of each intent
- */
-struct wdsp_glink_ch_cfg {
- char name[WDSP_CH_NAME_MAX_LEN];
- __u32 latency_in_us;
- __u32 no_of_intents;
- __u32 intents_size[0];
-};
-#endif /* _WCD_DSP_GLINK_H */
diff --git a/sdm710/kernel-headers/video/msm_hdmi_modes.h b/sdm710/kernel-headers/video/msm_hdmi_modes.h
deleted file mode 100644
index 8e76b32f..00000000
--- a/sdm710/kernel-headers/video/msm_hdmi_modes.h
+++ /dev/null
@@ -1,290 +0,0 @@
-/****************************************************************************
- ****************************************************************************
- ***
- *** 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>
-#define MSM_HDMI_RGB_888_24BPP_FORMAT (1 << 0)
-#define MSM_HDMI_YUV_420_12BPP_FORMAT (1 << 1)
-enum aspect_ratio {
- HDMI_RES_AR_INVALID,
- HDMI_RES_AR_4_3,
- HDMI_RES_AR_5_4,
- HDMI_RES_AR_16_9,
- HDMI_RES_AR_16_10,
- HDMI_RES_AR_64_27,
- HDMI_RES_AR_256_135,
- HDMI_RES_AR_MAX,
-};
-enum msm_hdmi_s3d_mode {
- HDMI_S3D_NONE,
- HDMI_S3D_SIDE_BY_SIDE,
- HDMI_S3D_TOP_AND_BOTTOM,
- HDMI_S3D_FRAME_PACKING,
- HDMI_S3D_MAX,
-};
-struct msm_hdmi_mode_timing_info {
- uint32_t video_format;
- uint32_t active_h;
- uint32_t front_porch_h;
- uint32_t pulse_width_h;
- uint32_t back_porch_h;
- uint32_t active_low_h;
- uint32_t active_v;
- uint32_t front_porch_v;
- uint32_t pulse_width_v;
- uint32_t back_porch_v;
- uint32_t active_low_v;
- uint32_t pixel_freq;
- uint32_t refresh_rate;
- uint32_t interlaced;
- uint32_t supported;
- enum aspect_ratio ar;
- uint32_t pixel_formats;
-};
-#define MSM_HDMI_INIT_RES_PAGE 1
-#define MSM_HDMI_MODES_CEA (1 << 0)
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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)
-#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)
-#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)
-#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
-#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
-#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)
-#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)
-#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)
-#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)
-#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
-#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 }
-#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 }
-#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 }
-#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 }
-#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 }
-#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 }
-#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 }
-#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 }
-#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 }
-#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 }
-#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 }
-#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 }
-#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 }
-#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)
-#endif
-
diff --git a/sdm710/original-kernel-headers/asm-generic/ioctls.h b/sdm710/original-kernel-headers/asm-generic/ioctls.h
deleted file mode 100644
index 6404e697..00000000
--- a/sdm710/original-kernel-headers/asm-generic/ioctls.h
+++ /dev/null
@@ -1,120 +0,0 @@
-#ifndef __ASM_GENERIC_IOCTLS_H
-#define __ASM_GENERIC_IOCTLS_H
-
-#include <linux/ioctl.h>
-
-/*
- * These are the most common definitions for tty ioctl numbers.
- * Most of them do not use the recommended _IOC(), but there is
- * probably some source code out there hardcoding the number,
- * so we might as well use them for all new platforms.
- *
- * The architectures that use different values here typically
- * try to be compatible with some Unix variants for the same
- * architecture.
- */
-
-/* 0x54 is just a magic number to make these relatively unique ('T') */
-
-#define TCGETS 0x5401
-#define TCSETS 0x5402
-#define TCSETSW 0x5403
-#define TCSETSF 0x5404
-#define TCGETA 0x5405
-#define TCSETA 0x5406
-#define TCSETAW 0x5407
-#define TCSETAF 0x5408
-#define TCSBRK 0x5409
-#define TCXONC 0x540A
-#define TCFLSH 0x540B
-#define TIOCEXCL 0x540C
-#define TIOCNXCL 0x540D
-#define TIOCSCTTY 0x540E
-#define TIOCGPGRP 0x540F
-#define TIOCSPGRP 0x5410
-#define TIOCOUTQ 0x5411
-#define TIOCSTI 0x5412
-#define TIOCGWINSZ 0x5413
-#define TIOCSWINSZ 0x5414
-#define TIOCMGET 0x5415
-#define TIOCMBIS 0x5416
-#define TIOCMBIC 0x5417
-#define TIOCMSET 0x5418
-#define TIOCGSOFTCAR 0x5419
-#define TIOCSSOFTCAR 0x541A
-#define FIONREAD 0x541B
-#define TIOCINQ FIONREAD
-#define TIOCLINUX 0x541C
-#define TIOCCONS 0x541D
-#define TIOCGSERIAL 0x541E
-#define TIOCSSERIAL 0x541F
-#define TIOCPKT 0x5420
-#define FIONBIO 0x5421
-#define TIOCNOTTY 0x5422
-#define TIOCSETD 0x5423
-#define TIOCGETD 0x5424
-#define TCSBRKP 0x5425 /* Needed for POSIX tcsendbreak() */
-#define TIOCSBRK 0x5427 /* BSD compatibility */
-#define TIOCCBRK 0x5428 /* BSD compatibility */
-#define TIOCGSID 0x5429 /* Return the session ID of FD */
-#define TCGETS2 _IOR('T', 0x2A, struct termios2)
-#define TCSETS2 _IOW('T', 0x2B, struct termios2)
-#define TCSETSW2 _IOW('T', 0x2C, struct termios2)
-#define TCSETSF2 _IOW('T', 0x2D, struct termios2)
-#define TIOCGRS485 0x542E
-#ifndef TIOCSRS485
-#define TIOCSRS485 0x542F
-#endif
-#define TIOCGPTN _IOR('T', 0x30, unsigned int) /* Get Pty Number (of pty-mux device) */
-#define TIOCSPTLCK _IOW('T', 0x31, int) /* Lock/unlock Pty */
-#define TIOCGDEV _IOR('T', 0x32, unsigned int) /* Get primary device node of /dev/console */
-#define TCGETX 0x5432 /* SYS5 TCGETX compatibility */
-#define TCSETX 0x5433
-#define TCSETXF 0x5434
-#define TCSETXW 0x5435
-#define TIOCSIG _IOW('T', 0x36, int) /* pty: generate signal */
-#define TIOCVHANGUP 0x5437
-#define TIOCGPKT _IOR('T', 0x38, int) /* Get packet mode state */
-#define TIOCGPTLCK _IOR('T', 0x39, int) /* Get Pty lock state */
-#define TIOCGEXCL _IOR('T', 0x40, int) /* Get exclusive mode state */
-#define TIOCPMGET 0x5441 /* PM get */
-#define TIOCPMPUT 0x5442 /* PM put */
-#define TIOCPMACT 0x5443 /* PM is active */
-
-#define FIONCLEX 0x5450
-#define FIOCLEX 0x5451
-#define FIOASYNC 0x5452
-#define TIOCSERCONFIG 0x5453
-#define TIOCSERGWILD 0x5454
-#define TIOCSERSWILD 0x5455
-#define TIOCGLCKTRMIOS 0x5456
-#define TIOCSLCKTRMIOS 0x5457
-#define TIOCSERGSTRUCT 0x5458 /* For debugging only */
-#define TIOCSERGETLSR 0x5459 /* Get line status register */
-#define TIOCSERGETMULTI 0x545A /* Get multiport config */
-#define TIOCSERSETMULTI 0x545B /* Set multiport config */
-
-#define TIOCMIWAIT 0x545C /* wait for a change on serial input line(s) */
-#define TIOCGICOUNT 0x545D /* read serial port __inline__ interrupt counts */
-
-/*
- * Some arches already define FIOQSIZE due to a historical
- * conflict with a Hayes modem-specific ioctl value.
- */
-#ifndef FIOQSIZE
-# define FIOQSIZE 0x5460
-#endif
-
-/* Used for packet mode */
-#define TIOCPKT_DATA 0
-#define TIOCPKT_FLUSHREAD 1
-#define TIOCPKT_FLUSHWRITE 2
-#define TIOCPKT_STOP 4
-#define TIOCPKT_START 8
-#define TIOCPKT_NOSTOP 16
-#define TIOCPKT_DOSTOP 32
-#define TIOCPKT_IOCTL 64
-
-#define TIOCSER_TEMT 0x01 /* Transmitter physically empty */
-
-#endif /* __ASM_GENERIC_IOCTLS_H */
diff --git a/sdm710/original-kernel-headers/drm/msm_drm.h b/sdm710/original-kernel-headers/drm/msm_drm.h
deleted file mode 100644
index 99ea02f4..00000000
--- a/sdm710/original-kernel-headers/drm/msm_drm.h
+++ /dev/null
@@ -1,394 +0,0 @@
-/*
- * Copyright (C) 2013 Red Hat
- * Author: Rob Clark <robdclark@gmail.com>
- *
- * This program is free software; you can redistribute it and/or modify it
- * under the terms of the GNU General Public License 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.
- *
- * You should have received a copy of the GNU General Public License along with
- * this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#ifndef __MSM_DRM_H__
-#define __MSM_DRM_H__
-
-#include "drm.h"
-#include "sde_drm.h"
-
-#if defined(__cplusplus)
-extern "C" {
-#endif
-
-/* Please note that modifications to all structs defined here are
- * subject to backwards-compatibility constraints:
- * 1) Do not use pointers, use __u64 instead for 32 bit / 64 bit
- * user/kernel compatibility
- * 2) Keep fields aligned to their size
- * 3) Because of how drm_ioctl() works, we can add new fields at
- * the end of an ioctl if some care is taken: drm_ioctl() will
- * zero out the new fields at the tail of the ioctl, so a zero
- * value should have a backwards compatible meaning. And for
- * output params, userspace won't see the newly added output
- * fields.. so that has to be somehow ok.
- */
-
-#define MSM_PIPE_NONE 0x00
-#define MSM_PIPE_2D0 0x01
-#define MSM_PIPE_2D1 0x02
-#define MSM_PIPE_3D0 0x10
-
-/* The pipe-id just uses the lower bits, so can be OR'd with flags in
- * the upper 16 bits (which could be extended further, if needed, maybe
- * we extend/overload the pipe-id some day to deal with multiple rings,
- * but even then I don't think we need the full lower 16 bits).
- */
-#define MSM_PIPE_ID_MASK 0xffff
-#define MSM_PIPE_ID(x) ((x) & MSM_PIPE_ID_MASK)
-#define MSM_PIPE_FLAGS(x) ((x) & ~MSM_PIPE_ID_MASK)
-
-/* timeouts are specified in clock-monotonic absolute times (to simplify
- * restarting interrupted ioctls). The following struct is logically the
- * same as 'struct timespec' but 32/64b ABI safe.
- */
-struct drm_msm_timespec {
- __s64 tv_sec; /* seconds */
- __s64 tv_nsec; /* nanoseconds */
-};
-
-/*
- * HDR Metadata
- * These are defined as per EDID spec and shall be used by the sink
- * to set the HDR metadata for playback from userspace.
- */
-
-#define HDR_PRIMARIES_COUNT 3
-
-/* HDR EOTF */
-#define HDR_EOTF_SDR_LUM_RANGE 0x0
-#define HDR_EOTF_HDR_LUM_RANGE 0x1
-#define HDR_EOTF_SMTPE_ST2084 0x2
-#define HDR_EOTF_HLG 0x3
-
-#define DRM_MSM_EXT_HDR_METADATA
-struct drm_msm_ext_hdr_metadata {
- __u32 hdr_state; /* HDR state */
- __u32 eotf; /* electro optical transfer function */
- __u32 hdr_supported; /* HDR supported */
- __u32 display_primaries_x[HDR_PRIMARIES_COUNT]; /* Primaries x */
- __u32 display_primaries_y[HDR_PRIMARIES_COUNT]; /* Primaries y */
- __u32 white_point_x; /* white_point_x */
- __u32 white_point_y; /* white_point_y */
- __u32 max_luminance; /* Max luminance */
- __u32 min_luminance; /* Min Luminance */
- __u32 max_content_light_level; /* max content light level */
- __u32 max_average_light_level; /* max average light level */
-};
-
-/**
- * HDR sink properties
- * These are defined as per EDID spec and shall be used by the userspace
- * to determine the HDR properties to be set to the sink.
- */
-#define DRM_MSM_EXT_HDR_PROPERTIES
-struct drm_msm_ext_hdr_properties {
- __u8 hdr_metadata_type_one; /* static metadata type one */
- __u32 hdr_supported; /* HDR supported */
- __u32 hdr_eotf; /* electro optical transfer function */
- __u32 hdr_max_luminance; /* Max luminance */
- __u32 hdr_avg_luminance; /* Avg luminance */
- __u32 hdr_min_luminance; /* Min Luminance */
-};
-
-#define MSM_PARAM_GPU_ID 0x01
-#define MSM_PARAM_GMEM_SIZE 0x02
-#define MSM_PARAM_CHIP_ID 0x03
-#define MSM_PARAM_MAX_FREQ 0x04
-#define MSM_PARAM_TIMESTAMP 0x05
-
-struct drm_msm_param {
- __u32 pipe; /* in, MSM_PIPE_x */
- __u32 param; /* in, MSM_PARAM_x */
- __u64 value; /* out (get_param) or in (set_param) */
-};
-
-/*
- * GEM buffers:
- */
-
-#define MSM_BO_SCANOUT 0x00000001 /* scanout capable */
-#define MSM_BO_GPU_READONLY 0x00000002
-#define MSM_BO_CACHE_MASK 0x000f0000
-/* cache modes */
-#define MSM_BO_CACHED 0x00010000
-#define MSM_BO_WC 0x00020000
-#define MSM_BO_UNCACHED 0x00040000
-
-#define MSM_BO_FLAGS (MSM_BO_SCANOUT | \
- MSM_BO_GPU_READONLY | \
- MSM_BO_CACHED | \
- MSM_BO_WC | \
- MSM_BO_UNCACHED)
-
-struct drm_msm_gem_new {
- __u64 size; /* in */
- __u32 flags; /* in, mask of MSM_BO_x */
- __u32 handle; /* out */
-};
-
-struct drm_msm_gem_info {
- __u32 handle; /* in */
- __u32 pad;
- __u64 offset; /* out, offset to pass to mmap() */
-};
-
-#define MSM_PREP_READ 0x01
-#define MSM_PREP_WRITE 0x02
-#define MSM_PREP_NOSYNC 0x04
-
-#define MSM_PREP_FLAGS (MSM_PREP_READ | MSM_PREP_WRITE | MSM_PREP_NOSYNC)
-
-struct drm_msm_gem_cpu_prep {
- __u32 handle; /* in */
- __u32 op; /* in, mask of MSM_PREP_x */
- struct drm_msm_timespec timeout; /* in */
-};
-
-struct drm_msm_gem_cpu_fini {
- __u32 handle; /* in */
-};
-
-/*
- * Cmdstream Submission:
- */
-
-/* The value written into the cmdstream is logically:
- *
- * ((relocbuf->gpuaddr + reloc_offset) << shift) | or
- *
- * When we have GPU's w/ >32bit ptrs, it should be possible to deal
- * with this by emit'ing two reloc entries with appropriate shift
- * values. Or a new MSM_SUBMIT_CMD_x type would also be an option.
- *
- * NOTE that reloc's must be sorted by order of increasing submit_offset,
- * otherwise EINVAL.
- */
-struct drm_msm_gem_submit_reloc {
- __u32 submit_offset; /* in, offset from submit_bo */
- __u32 or; /* in, value OR'd with result */
- __s32 shift; /* in, amount of left shift (can be negative) */
- __u32 reloc_idx; /* in, index of reloc_bo buffer */
- __u64 reloc_offset; /* in, offset from start of reloc_bo */
-};
-
-/* submit-types:
- * BUF - this cmd buffer is executed normally.
- * IB_TARGET_BUF - this cmd buffer is an IB target. Reloc's are
- * processed normally, but the kernel does not setup an IB to
- * this buffer in the first-level ringbuffer
- * CTX_RESTORE_BUF - only executed if there has been a GPU context
- * switch since the last SUBMIT ioctl
- */
-#define MSM_SUBMIT_CMD_BUF 0x0001
-#define MSM_SUBMIT_CMD_IB_TARGET_BUF 0x0002
-#define MSM_SUBMIT_CMD_CTX_RESTORE_BUF 0x0003
-struct drm_msm_gem_submit_cmd {
- __u32 type; /* in, one of MSM_SUBMIT_CMD_x */
- __u32 submit_idx; /* in, index of submit_bo cmdstream buffer */
- __u32 submit_offset; /* in, offset into submit_bo */
- __u32 size; /* in, cmdstream size */
- __u32 pad;
- __u32 nr_relocs; /* in, number of submit_reloc's */
- __u64 relocs; /* in, ptr to array of submit_reloc's */
-};
-
-/* Each buffer referenced elsewhere in the cmdstream submit (ie. the
- * cmdstream buffer(s) themselves or reloc entries) has one (and only
- * one) entry in the submit->bos[] table.
- *
- * As a optimization, the current buffer (gpu virtual address) can be
- * passed back through the 'presumed' field. If on a subsequent reloc,
- * userspace passes back a 'presumed' address that is still valid,
- * then patching the cmdstream for this entry is skipped. This can
- * avoid kernel needing to map/access the cmdstream bo in the common
- * case.
- */
-#define MSM_SUBMIT_BO_READ 0x0001
-#define MSM_SUBMIT_BO_WRITE 0x0002
-
-#define MSM_SUBMIT_BO_FLAGS (MSM_SUBMIT_BO_READ | MSM_SUBMIT_BO_WRITE)
-
-struct drm_msm_gem_submit_bo {
- __u32 flags; /* in, mask of MSM_SUBMIT_BO_x */
- __u32 handle; /* in, GEM handle */
- __u64 presumed; /* in/out, presumed buffer address */
-};
-
-/* Valid submit ioctl flags: */
-#define MSM_SUBMIT_NO_IMPLICIT 0x80000000 /* disable implicit sync */
-#define MSM_SUBMIT_FENCE_FD_IN 0x40000000 /* enable input fence_fd */
-#define MSM_SUBMIT_FENCE_FD_OUT 0x20000000 /* enable output fence_fd */
-#define MSM_SUBMIT_FLAGS ( \
- MSM_SUBMIT_NO_IMPLICIT | \
- MSM_SUBMIT_FENCE_FD_IN | \
- MSM_SUBMIT_FENCE_FD_OUT | \
- 0)
-
-/* Each cmdstream submit consists of a table of buffers involved, and
- * one or more cmdstream buffers. This allows for conditional execution
- * (context-restore), and IB buffers needed for per tile/bin draw cmds.
- */
-struct drm_msm_gem_submit {
- __u32 flags; /* MSM_PIPE_x | MSM_SUBMIT_x */
- __u32 fence; /* out */
- __u32 nr_bos; /* in, number of submit_bo's */
- __u32 nr_cmds; /* in, number of submit_cmd's */
- __u64 bos; /* in, ptr to array of submit_bo's */
- __u64 cmds; /* in, ptr to array of submit_cmd's */
- __s32 fence_fd; /* in/out fence fd (see MSM_SUBMIT_FENCE_FD_IN/OUT) */
-};
-
-/* The normal way to synchronize with the GPU is just to CPU_PREP on
- * a buffer if you need to access it from the CPU (other cmdstream
- * submission from same or other contexts, PAGE_FLIP ioctl, etc, all
- * handle the required synchronization under the hood). This ioctl
- * mainly just exists as a way to implement the gallium pipe_fence
- * APIs without requiring a dummy bo to synchronize on.
- */
-struct drm_msm_wait_fence {
- __u32 fence; /* in */
- __u32 pad;
- struct drm_msm_timespec timeout; /* in */
-};
-
-/* madvise provides a way to tell the kernel in case a buffers contents
- * can be discarded under memory pressure, which is useful for userspace
- * bo cache where we want to optimistically hold on to buffer allocate
- * and potential mmap, but allow the pages to be discarded under memory
- * pressure.
- *
- * Typical usage would involve madvise(DONTNEED) when buffer enters BO
- * cache, and madvise(WILLNEED) if trying to recycle buffer from BO cache.
- * In the WILLNEED case, 'retained' indicates to userspace whether the
- * backing pages still exist.
- */
-#define MSM_MADV_WILLNEED 0 /* backing pages are needed, status returned in 'retained' */
-#define MSM_MADV_DONTNEED 1 /* backing pages not needed */
-#define __MSM_MADV_PURGED 2 /* internal state */
-
-struct drm_msm_gem_madvise {
- __u32 handle; /* in, GEM handle */
- __u32 madv; /* in, MSM_MADV_x */
- __u32 retained; /* out, whether backing store still exists */
-};
-
-/* HDR WRGB x and y index */
-#define DISPLAY_PRIMARIES_WX 0
-#define DISPLAY_PRIMARIES_WY 1
-#define DISPLAY_PRIMARIES_RX 2
-#define DISPLAY_PRIMARIES_RY 3
-#define DISPLAY_PRIMARIES_GX 4
-#define DISPLAY_PRIMARIES_GY 5
-#define DISPLAY_PRIMARIES_BX 6
-#define DISPLAY_PRIMARIES_BY 7
-#define DISPLAY_PRIMARIES_MAX 8
-
-struct drm_panel_hdr_properties {
- __u32 hdr_enabled;
-
- /* WRGB X and y values arrayed in format */
- /* [WX, WY, RX, RY, GX, GY, BX, BY] */
- __u32 display_primaries[DISPLAY_PRIMARIES_MAX];
-
- /* peak brightness supported by panel */
- __u32 peak_brightness;
- /* Blackness level supported by panel */
- __u32 blackness_level;
-};
-
-/**
- * struct drm_msm_event_req - Payload to event enable/disable ioctls.
- * @object_id: DRM object id. e.g.: for crtc pass crtc id.
- * @object_type: DRM object type. e.g.: for crtc set it to DRM_MODE_OBJECT_CRTC.
- * @event: Event for which notification is being enabled/disabled.
- * e.g.: for Histogram set - DRM_EVENT_HISTOGRAM.
- * @client_context: Opaque pointer that will be returned during event response
- * notification.
- * @index: Object index(e.g.: crtc index), optional for user-space to set.
- * Driver will override value based on object_id and object_type.
- */
-struct drm_msm_event_req {
- __u32 object_id;
- __u32 object_type;
- __u32 event;
- __u64 client_context;
- __u32 index;
-};
-
-/**
- * struct drm_msm_event_resp - payload returned when read is called for
- * custom notifications.
- * @base: Event type and length of complete notification payload.
- * @info: Contains information about DRM that which raised this event.
- * @data: Custom payload that driver returns for event type.
- * size of data = base.length - (sizeof(base) + sizeof(info))
- */
-struct drm_msm_event_resp {
- struct drm_event base;
- struct drm_msm_event_req info;
- __u8 data[];
-};
-
-#define DRM_MSM_GET_PARAM 0x00
-/* placeholder:
-#define DRM_MSM_SET_PARAM 0x01
- */
-#define DRM_MSM_GEM_NEW 0x02
-#define DRM_MSM_GEM_INFO 0x03
-#define DRM_MSM_GEM_CPU_PREP 0x04
-#define DRM_MSM_GEM_CPU_FINI 0x05
-#define DRM_MSM_GEM_SUBMIT 0x06
-#define DRM_MSM_WAIT_FENCE 0x07
-#define DRM_MSM_GEM_MADVISE 0x08
-
-#define DRM_SDE_WB_CONFIG 0x40
-#define DRM_MSM_REGISTER_EVENT 0x41
-#define DRM_MSM_DEREGISTER_EVENT 0x42
-#define DRM_MSM_RMFB2 0x43
-
-/* sde custom events */
-#define DRM_EVENT_HISTOGRAM 0x80000000
-#define DRM_EVENT_AD_BACKLIGHT 0x80000001
-#define DRM_EVENT_CRTC_POWER 0x80000002
-#define DRM_EVENT_SYS_BACKLIGHT 0x80000003
-#define DRM_EVENT_SDE_POWER 0x80000004
-#define DRM_EVENT_IDLE_NOTIFY 0x80000005
-#define DRM_EVENT_PANEL_DEAD 0x80000006 /* ESD event */
-
-#define DRM_IOCTL_MSM_GET_PARAM DRM_IOWR(DRM_COMMAND_BASE + DRM_MSM_GET_PARAM, struct drm_msm_param)
-#define DRM_IOCTL_MSM_GEM_NEW DRM_IOWR(DRM_COMMAND_BASE + DRM_MSM_GEM_NEW, struct drm_msm_gem_new)
-#define DRM_IOCTL_MSM_GEM_INFO DRM_IOWR(DRM_COMMAND_BASE + DRM_MSM_GEM_INFO, struct drm_msm_gem_info)
-#define DRM_IOCTL_MSM_GEM_CPU_PREP DRM_IOW (DRM_COMMAND_BASE + DRM_MSM_GEM_CPU_PREP, struct drm_msm_gem_cpu_prep)
-#define DRM_IOCTL_MSM_GEM_CPU_FINI DRM_IOW (DRM_COMMAND_BASE + DRM_MSM_GEM_CPU_FINI, struct drm_msm_gem_cpu_fini)
-#define DRM_IOCTL_MSM_GEM_SUBMIT DRM_IOWR(DRM_COMMAND_BASE + DRM_MSM_GEM_SUBMIT, struct drm_msm_gem_submit)
-#define DRM_IOCTL_MSM_WAIT_FENCE DRM_IOW (DRM_COMMAND_BASE + DRM_MSM_WAIT_FENCE, struct drm_msm_wait_fence)
-#define DRM_IOCTL_MSM_GEM_MADVISE DRM_IOWR(DRM_COMMAND_BASE + DRM_MSM_GEM_MADVISE, struct drm_msm_gem_madvise)
-#define DRM_IOCTL_SDE_WB_CONFIG \
- DRM_IOW((DRM_COMMAND_BASE + DRM_SDE_WB_CONFIG), struct sde_drm_wb_cfg)
-#define DRM_IOCTL_MSM_REGISTER_EVENT DRM_IOW((DRM_COMMAND_BASE + \
- DRM_MSM_REGISTER_EVENT), struct drm_msm_event_req)
-#define DRM_IOCTL_MSM_DEREGISTER_EVENT DRM_IOW((DRM_COMMAND_BASE + \
- DRM_MSM_DEREGISTER_EVENT), struct drm_msm_event_req)
-#define DRM_IOCTL_MSM_RMFB2 DRM_IOW((DRM_COMMAND_BASE + \
- DRM_MSM_RMFB2), unsigned int)
-
-#if defined(__cplusplus)
-}
-#endif
-
-#endif /* __MSM_DRM_H__ */
diff --git a/sdm710/original-kernel-headers/drm/msm_drm_pp.h b/sdm710/original-kernel-headers/drm/msm_drm_pp.h
deleted file mode 100644
index 38f710ec..00000000
--- a/sdm710/original-kernel-headers/drm/msm_drm_pp.h
+++ /dev/null
@@ -1,439 +0,0 @@
-#ifndef _MSM_DRM_PP_H_
-#define _MSM_DRM_PP_H_
-
-#include <linux/types.h>
-/**
- * struct drm_msm_pcc_coeff - PCC coefficient structure for each color
- * component.
- * @c: constant coefficient.
- * @r: red coefficient.
- * @g: green coefficient.
- * @b: blue coefficient.
- * @rg: red green coefficient.
- * @gb: green blue coefficient.
- * @rb: red blue coefficient.
- * @rgb: red blue green coefficient.
- */
-
-struct drm_msm_pcc_coeff {
- __u32 c;
- __u32 r;
- __u32 g;
- __u32 b;
- __u32 rg;
- __u32 gb;
- __u32 rb;
- __u32 rgb;
-};
-
-/**
- * struct drm_msm_pcc - pcc feature structure
- * @flags: for customizing operations
- * @r: red coefficients.
- * @g: green coefficients.
- * @b: blue coefficients.
- * @r_rr: second order coefficients
- * @r_gg: second order coefficients
- * @r_bb: second order coefficients
- * @g_rr: second order coefficients
- * @g_gg: second order coefficients
- * @g_bb: second order coefficients
- * @b_rr: second order coefficients
- * @b_gg: second order coefficients
- * @b_bb: second order coefficients
- */
-#define DRM_MSM_PCC3
-struct drm_msm_pcc {
- __u64 flags;
- struct drm_msm_pcc_coeff r;
- struct drm_msm_pcc_coeff g;
- struct drm_msm_pcc_coeff b;
- __u32 r_rr;
- __u32 r_gg;
- __u32 r_bb;
- __u32 g_rr;
- __u32 g_gg;
- __u32 g_bb;
- __u32 b_rr;
- __u32 b_gg;
- __u32 b_bb;
-};
-
-/* struct drm_msm_pa_vlut - picture adjustment vLUT structure
- * flags: for customizing vlut operation
- * val: vLUT values
- */
-#define PA_VLUT_SIZE 256
-struct drm_msm_pa_vlut {
- __u64 flags;
- __u32 val[PA_VLUT_SIZE];
-};
-
-#define PA_HSIC_HUE_ENABLE (1 << 0)
-#define PA_HSIC_SAT_ENABLE (1 << 1)
-#define PA_HSIC_VAL_ENABLE (1 << 2)
-#define PA_HSIC_CONT_ENABLE (1 << 3)
-/**
- * struct drm_msm_pa_hsic - pa hsic feature structure
- * @flags: flags for the feature customization, values can be:
- * - PA_HSIC_HUE_ENABLE: Enable hue adjustment
- * - PA_HSIC_SAT_ENABLE: Enable saturation adjustment
- * - PA_HSIC_VAL_ENABLE: Enable value adjustment
- * - PA_HSIC_CONT_ENABLE: Enable contrast adjustment
- *
- * @hue: hue setting
- * @saturation: saturation setting
- * @value: value setting
- * @contrast: contrast setting
- */
-#define DRM_MSM_PA_HSIC
-struct drm_msm_pa_hsic {
- __u64 flags;
- __u32 hue;
- __u32 saturation;
- __u32 value;
- __u32 contrast;
-};
-
-#define MEMCOL_PROT_HUE (1 << 0)
-#define MEMCOL_PROT_SAT (1 << 1)
-#define MEMCOL_PROT_VAL (1 << 2)
-#define MEMCOL_PROT_CONT (1 << 3)
-#define MEMCOL_PROT_SIXZONE (1 << 4)
-#define MEMCOL_PROT_BLEND (1 << 5)
-/* struct drm_msm_memcol - Memory color feature structure.
- * Skin, sky, foliage features are supported.
- * @prot_flags: Bit mask for enabling protection feature.
- * @color_adjust_p0: Adjustment curve.
- * @color_adjust_p1: Adjustment curve.
- * @color_adjust_p2: Adjustment curve.
- * @blend_gain: Blend gain weightage from othe PA features.
- * @sat_hold: Saturation hold value.
- * @val_hold: Value hold info.
- * @hue_region: Hue qualifier.
- * @sat_region: Saturation qualifier.
- * @val_region: Value qualifier.
- */
-#define DRM_MSM_MEMCOL
-struct drm_msm_memcol {
- __u64 prot_flags;
- __u32 color_adjust_p0;
- __u32 color_adjust_p1;
- __u32 color_adjust_p2;
- __u32 blend_gain;
- __u32 sat_hold;
- __u32 val_hold;
- __u32 hue_region;
- __u32 sat_region;
- __u32 val_region;
-};
-
-#define DRM_MSM_SIXZONE
-#define SIXZONE_LUT_SIZE 384
-#define SIXZONE_HUE_ENABLE (1 << 0)
-#define SIXZONE_SAT_ENABLE (1 << 1)
-#define SIXZONE_VAL_ENABLE (1 << 2)
-/* struct drm_msm_sixzone_curve - Sixzone HSV adjustment curve structure.
- * @p0: Hue adjustment.
- * @p1: Saturation/Value adjustment.
- */
-struct drm_msm_sixzone_curve {
- __u32 p1;
- __u32 p0;
-};
-
-/* struct drm_msm_sixzone - Sixzone feature structure.
- * @flags: for feature customization, values can be:
- * - SIXZONE_HUE_ENABLE: Enable hue adjustment
- * - SIXZONE_SAT_ENABLE: Enable saturation adjustment
- * - SIXZONE_VAL_ENABLE: Enable value adjustment
- * @threshold: threshold qualifier.
- * @adjust_p0: Adjustment curve.
- * @adjust_p1: Adjustment curve.
- * @sat_hold: Saturation hold info.
- * @val_hold: Value hold info.
- * @curve: HSV adjustment curve lut.
- */
-struct drm_msm_sixzone {
- __u64 flags;
- __u32 threshold;
- __u32 adjust_p0;
- __u32 adjust_p1;
- __u32 sat_hold;
- __u32 val_hold;
- struct drm_msm_sixzone_curve curve[SIXZONE_LUT_SIZE];
-};
-
-#define GAMUT_3D_MODE_17 1
-#define GAMUT_3D_MODE_5 2
-#define GAMUT_3D_MODE_13 3
-
-#define GAMUT_3D_MODE17_TBL_SZ 1229
-#define GAMUT_3D_MODE5_TBL_SZ 32
-#define GAMUT_3D_MODE13_TBL_SZ 550
-#define GAMUT_3D_SCALE_OFF_SZ 16
-#define GAMUT_3D_SCALEB_OFF_SZ 12
-#define GAMUT_3D_TBL_NUM 4
-#define GAMUT_3D_SCALE_OFF_TBL_NUM 3
-#define GAMUT_3D_MAP_EN (1 << 0)
-
-/**
- * struct drm_msm_3d_col - 3d gamut color component structure
- * @c0: Holds c0 value
- * @c2_c1: Holds c2/c1 values
- */
-struct drm_msm_3d_col {
- __u32 c2_c1;
- __u32 c0;
-};
-/**
- * struct drm_msm_3d_gamut - 3d gamut feature structure
- * @flags: flags for the feature values are:
- * 0 - no map
- * GAMUT_3D_MAP_EN - enable map
- * @mode: lut mode can take following values:
- * - GAMUT_3D_MODE_17
- * - GAMUT_3D_MODE_5
- * - GAMUT_3D_MODE_13
- * @scale_off: Scale offset table
- * @col: Color component tables
- */
-struct drm_msm_3d_gamut {
- __u64 flags;
- __u32 mode;
- __u32 scale_off[GAMUT_3D_SCALE_OFF_TBL_NUM][GAMUT_3D_SCALE_OFF_SZ];
- struct drm_msm_3d_col col[GAMUT_3D_TBL_NUM][GAMUT_3D_MODE17_TBL_SZ];
-};
-
-#define PGC_TBL_LEN 512
-#define PGC_8B_ROUND (1 << 0)
-/**
- * struct drm_msm_pgc_lut - pgc lut feature structure
- * @flags: flags for the featue values can be:
- * - PGC_8B_ROUND
- * @c0: color0 component lut
- * @c1: color1 component lut
- * @c2: color2 component lut
- */
-struct drm_msm_pgc_lut {
- __u64 flags;
- __u32 c0[PGC_TBL_LEN];
- __u32 c1[PGC_TBL_LEN];
- __u32 c2[PGC_TBL_LEN];
-};
-
-#define IGC_TBL_LEN 256
-#define IGC_DITHER_ENABLE (1 << 0)
-/**
- * struct drm_msm_igc_lut - igc lut feature structure
- * @flags: flags for the feature customization, values can be:
- * - IGC_DITHER_ENABLE: Enable dither functionality
- * @c0: color0 component lut
- * @c1: color1 component lut
- * @c2: color2 component lut
- * @strength: dither strength, considered valid when IGC_DITHER_ENABLE
- * is set in flags. Strength value based on source bit width.
- */
-struct drm_msm_igc_lut {
- __u64 flags;
- __u32 c0[IGC_TBL_LEN];
- __u32 c1[IGC_TBL_LEN];
- __u32 c2[IGC_TBL_LEN];
- __u32 strength;
-};
-
-#define HIST_V_SIZE 256
-/**
- * struct drm_msm_hist - histogram feature structure
- * @flags: for customizing operations
- * @data: histogram data
- */
-struct drm_msm_hist {
- __u64 flags;
- __u32 data[HIST_V_SIZE];
-};
-
-#define AD4_LUT_GRP0_SIZE 33
-#define AD4_LUT_GRP1_SIZE 32
-/*
- * struct drm_msm_ad4_init - ad4 init structure set by user-space client.
- * Init param values can change based on tuning
- * hence it is passed by user-space clients.
- */
-struct drm_msm_ad4_init {
- __u32 init_param_001[AD4_LUT_GRP0_SIZE];
- __u32 init_param_002[AD4_LUT_GRP0_SIZE];
- __u32 init_param_003[AD4_LUT_GRP0_SIZE];
- __u32 init_param_004[AD4_LUT_GRP0_SIZE];
- __u32 init_param_005[AD4_LUT_GRP1_SIZE];
- __u32 init_param_006[AD4_LUT_GRP1_SIZE];
- __u32 init_param_007[AD4_LUT_GRP0_SIZE];
- __u32 init_param_008[AD4_LUT_GRP0_SIZE];
- __u32 init_param_009;
- __u32 init_param_010;
- __u32 init_param_011;
- __u32 init_param_012;
- __u32 init_param_013;
- __u32 init_param_014;
- __u32 init_param_015;
- __u32 init_param_016;
- __u32 init_param_017;
- __u32 init_param_018;
- __u32 init_param_019;
- __u32 init_param_020;
- __u32 init_param_021;
- __u32 init_param_022;
- __u32 init_param_023;
- __u32 init_param_024;
- __u32 init_param_025;
- __u32 init_param_026;
- __u32 init_param_027;
- __u32 init_param_028;
- __u32 init_param_029;
- __u32 init_param_030;
- __u32 init_param_031;
- __u32 init_param_032;
- __u32 init_param_033;
- __u32 init_param_034;
- __u32 init_param_035;
- __u32 init_param_036;
- __u32 init_param_037;
- __u32 init_param_038;
- __u32 init_param_039;
- __u32 init_param_040;
- __u32 init_param_041;
- __u32 init_param_042;
- __u32 init_param_043;
- __u32 init_param_044;
- __u32 init_param_045;
- __u32 init_param_046;
- __u32 init_param_047;
- __u32 init_param_048;
- __u32 init_param_049;
- __u32 init_param_050;
- __u32 init_param_051;
- __u32 init_param_052;
- __u32 init_param_053;
- __u32 init_param_054;
- __u32 init_param_055;
- __u32 init_param_056;
- __u32 init_param_057;
- __u32 init_param_058;
- __u32 init_param_059;
- __u32 init_param_060;
- __u32 init_param_061;
- __u32 init_param_062;
- __u32 init_param_063;
- __u32 init_param_064;
- __u32 init_param_065;
- __u32 init_param_066;
- __u32 init_param_067;
- __u32 init_param_068;
- __u32 init_param_069;
- __u32 init_param_070;
- __u32 init_param_071;
- __u32 init_param_072;
- __u32 init_param_073;
- __u32 init_param_074;
- __u32 init_param_075;
-};
-
-/*
- * struct drm_msm_ad4_cfg - ad4 config structure set by user-space client.
- * Config param values can vary based on tuning,
- * hence it is passed by user-space clients.
- */
-struct drm_msm_ad4_cfg {
- __u32 cfg_param_001;
- __u32 cfg_param_002;
- __u32 cfg_param_003;
- __u32 cfg_param_004;
- __u32 cfg_param_005;
- __u32 cfg_param_006;
- __u32 cfg_param_007;
- __u32 cfg_param_008;
- __u32 cfg_param_009;
- __u32 cfg_param_010;
- __u32 cfg_param_011;
- __u32 cfg_param_012;
- __u32 cfg_param_013;
- __u32 cfg_param_014;
- __u32 cfg_param_015;
- __u32 cfg_param_016;
- __u32 cfg_param_017;
- __u32 cfg_param_018;
- __u32 cfg_param_019;
- __u32 cfg_param_020;
- __u32 cfg_param_021;
- __u32 cfg_param_022;
- __u32 cfg_param_023;
- __u32 cfg_param_024;
- __u32 cfg_param_025;
- __u32 cfg_param_026;
- __u32 cfg_param_027;
- __u32 cfg_param_028;
- __u32 cfg_param_029;
- __u32 cfg_param_030;
- __u32 cfg_param_031;
- __u32 cfg_param_032;
- __u32 cfg_param_033;
- __u32 cfg_param_034;
- __u32 cfg_param_035;
- __u32 cfg_param_036;
- __u32 cfg_param_037;
- __u32 cfg_param_038;
- __u32 cfg_param_039;
- __u32 cfg_param_040;
- __u32 cfg_param_041;
- __u32 cfg_param_042;
- __u32 cfg_param_043;
- __u32 cfg_param_044;
- __u32 cfg_param_045;
- __u32 cfg_param_046;
- __u32 cfg_param_047;
- __u32 cfg_param_048;
- __u32 cfg_param_049;
- __u32 cfg_param_050;
- __u32 cfg_param_051;
- __u32 cfg_param_052;
- __u32 cfg_param_053;
-};
-
-#define DITHER_MATRIX_SZ 16
-
-/**
- * struct drm_msm_dither - dither feature structure
- * @flags: for customizing operations
- * @temporal_en: temperal dither enable
- * @c0_bitdepth: c0 component bit depth
- * @c1_bitdepth: c1 component bit depth
- * @c2_bitdepth: c2 component bit depth
- * @c3_bitdepth: c2 component bit depth
- * @matrix: dither strength matrix
- */
-struct drm_msm_dither {
- __u64 flags;
- __u32 temporal_en;
- __u32 c0_bitdepth;
- __u32 c1_bitdepth;
- __u32 c2_bitdepth;
- __u32 c3_bitdepth;
- __u32 matrix[DITHER_MATRIX_SZ];
-};
-
-/**
- * struct drm_msm_pa_dither - dspp dither feature structure
- * @flags: for customizing operations
- * @strength: dither strength
- * @offset_en: offset enable bit
- * @matrix: dither data matrix
- */
-#define DRM_MSM_PA_DITHER
-struct drm_msm_pa_dither {
- __u64 flags;
- __u32 strength;
- __u32 offset_en;
- __u32 matrix[DITHER_MATRIX_SZ];
-};
-
-#endif /* _MSM_DRM_PP_H_ */
diff --git a/sdm710/original-kernel-headers/drm/sde_drm.h b/sdm710/original-kernel-headers/drm/sde_drm.h
deleted file mode 100644
index 1a43659a..00000000
--- a/sdm710/original-kernel-headers/drm/sde_drm.h
+++ /dev/null
@@ -1,449 +0,0 @@
-#ifndef _SDE_DRM_H_
-#define _SDE_DRM_H_
-
-#include "drm.h"
-
-/* Total number of supported color planes */
-#define SDE_MAX_PLANES 4
-
-/* Total number of parameterized detail enhancer mapping curves */
-#define SDE_MAX_DE_CURVES 3
-
- /* 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
-#define FILTER_ALPHA_2D 0x3
-
-/* Blend filters */
-#define FILTER_BLEND_CIRCULAR_2D 0x0
-#define FILTER_BLEND_SEPARABLE_1D 0x1
-
-/* 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
-
-/**
- * Blend operations for "blend_op" property
- *
- * @SDE_DRM_BLEND_OP_NOT_DEFINED: No blend operation defined for the layer.
- * @SDE_DRM_BLEND_OP_OPAQUE: Apply a constant blend operation. The layer
- * would appear opaque in case fg plane alpha
- * is 0xff.
- * @SDE_DRM_BLEND_OP_PREMULTIPLIED: Apply source over blend rule. Layer already
- * has alpha pre-multiplication done. If the fg
- * plane alpha is less than 0xff, apply
- * modulation as well. This operation is
- * intended on layers having alpha channel.
- * @SDE_DRM_BLEND_OP_COVERAGE: Apply source over blend rule. Layer is not
- * alpha pre-multiplied. Apply
- * pre-multiplication. If fg plane alpha is
- * less than 0xff, apply modulation as well.
- * @SDE_DRM_BLEND_OP_MAX: Used to track maximum blend operation
- * possible by mdp.
- */
-#define SDE_DRM_BLEND_OP_NOT_DEFINED 0
-#define SDE_DRM_BLEND_OP_OPAQUE 1
-#define SDE_DRM_BLEND_OP_PREMULTIPLIED 2
-#define SDE_DRM_BLEND_OP_COVERAGE 3
-#define SDE_DRM_BLEND_OP_MAX 4
-
-/**
- * Bit masks for "src_config" property
- * construct bitmask via (1UL << SDE_DRM_<flag>)
- */
-#define SDE_DRM_DEINTERLACE 0 /* Specifies interlaced input */
-
-/* DRM bitmasks are restricted to 0..63 */
-#define SDE_DRM_BITMASK_COUNT 64
-
-/**
- * Framebuffer modes for "fb_translation_mode" PLANE and CONNECTOR property
- *
- * @SDE_DRM_FB_NON_SEC: IOMMU configuration for this framebuffer mode
- * is non-secure domain and requires
- * both stage I and stage II translations when
- * this buffer is accessed by the display HW.
- * This is the default mode of all frambuffers.
- * @SDE_DRM_FB_SEC: IOMMU configuration for this framebuffer mode
- * is secure domain and requires
- * both stage I and stage II translations when
- * this buffer is accessed by the display HW.
- * @SDE_DRM_FB_NON_SEC_DIR_TRANS: IOMMU configuration for this framebuffer mode
- * is non-secure domain and requires
- * only stage II translation when
- * this buffer is accessed by the display HW.
- * @SDE_DRM_FB_SEC_DIR_TRANS: IOMMU configuration for this framebuffer mode
- * is secure domain and requires
- * only stage II translation when
- * this buffer is accessed by the display HW.
- */
-
-#define SDE_DRM_FB_NON_SEC 0
-#define SDE_DRM_FB_SEC 1
-#define SDE_DRM_FB_NON_SEC_DIR_TRANS 2
-#define SDE_DRM_FB_SEC_DIR_TRANS 3
-
-/**
- * Secure levels for "security_level" CRTC property.
- * CRTC property which specifies what plane types
- * can be attached to this CRTC. Plane component
- * derives the plane type based on the FB_MODE.
- * @ SDE_DRM_SEC_NON_SEC: Both Secure and non-secure plane types can be
- * attached to this CRTC. This is the default state of
- * the CRTC.
- * @ SDE_DRM_SEC_ONLY: Only secure planes can be added to this CRTC. If a
- * CRTC is instructed to be in this mode it follows the
- * platform dependent restrictions.
- */
-#define SDE_DRM_SEC_NON_SEC 0
-#define SDE_DRM_SEC_ONLY 1
-
-/**
- * struct sde_drm_pix_ext_v1 - version 1 of pixel ext structure
- * @num_ext_pxls_lr: Number of total horizontal pixels
- * @num_ext_pxls_tb: Number of total vertical lines
- * @left_ftch: Number of extra pixels to overfetch from left
- * @right_ftch: Number of extra pixels to overfetch from right
- * @top_ftch: Number of extra lines to overfetch from top
- * @btm_ftch: Number of extra lines to overfetch from bottom
- * @left_rpt: Number of extra pixels to repeat from left
- * @right_rpt: Number of extra pixels to repeat from right
- * @top_rpt: Number of extra lines to repeat from top
- * @btm_rpt: Number of extra lines to repeat from bottom
- */
-struct sde_drm_pix_ext_v1 {
- /*
- * Number of pixels ext in left, right, top and bottom direction
- * for all color components.
- */
- int32_t num_ext_pxls_lr[SDE_MAX_PLANES];
- int32_t num_ext_pxls_tb[SDE_MAX_PLANES];
-
- /*
- * Number of pixels needs to be overfetched in left, right, top
- * and bottom directions from source image for scaling.
- */
- int32_t left_ftch[SDE_MAX_PLANES];
- int32_t right_ftch[SDE_MAX_PLANES];
- int32_t top_ftch[SDE_MAX_PLANES];
- int32_t btm_ftch[SDE_MAX_PLANES];
- /*
- * Number of pixels needs to be repeated in left, right, top and
- * bottom directions for scaling.
- */
- int32_t left_rpt[SDE_MAX_PLANES];
- int32_t right_rpt[SDE_MAX_PLANES];
- int32_t top_rpt[SDE_MAX_PLANES];
- int32_t btm_rpt[SDE_MAX_PLANES];
-
-};
-
-/**
- * struct sde_drm_scaler_v1 - version 1 of struct sde_drm_scaler
- * @lr: Pixel extension settings for left/right
- * @tb: Pixel extension settings for top/botton
- * @init_phase_x: Initial scaler phase values for x
- * @phase_step_x: Phase step values for x
- * @init_phase_y: Initial scaler phase values for y
- * @phase_step_y: Phase step values for y
- * @horz_filter: Horizontal filter array
- * @vert_filter: Vertical filter array
- */
-struct sde_drm_scaler_v1 {
- /*
- * Pix ext settings
- */
- struct sde_drm_pix_ext_v1 pe;
- /*
- * Phase settings
- */
- int32_t init_phase_x[SDE_MAX_PLANES];
- int32_t phase_step_x[SDE_MAX_PLANES];
- int32_t init_phase_y[SDE_MAX_PLANES];
- int32_t phase_step_y[SDE_MAX_PLANES];
-
- /*
- * Filter type to be used for scaling in horizontal and vertical
- * directions
- */
- uint32_t horz_filter[SDE_MAX_PLANES];
- uint32_t vert_filter[SDE_MAX_PLANES];
-};
-
-/**
- * struct sde_drm_de_v1 - version 1 of detail enhancer structure
- * @enable: Enables/disables detail enhancer
- * @sharpen_level1: Sharpening strength for noise
- * @sharpen_level2: Sharpening strength for context
- * @clip: Clip coefficient
- * @limit: Detail enhancer limit factor
- * @thr_quiet: Quite zone threshold
- * @thr_dieout: Die-out zone threshold
- * @thr_low: Linear zone left threshold
- * @thr_high: Linear zone right threshold
- * @prec_shift: Detail enhancer precision
- * @adjust_a: Mapping curves A coefficients
- * @adjust_b: Mapping curves B coefficients
- * @adjust_c: Mapping curves C coefficients
- */
-struct sde_drm_de_v1 {
- 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[SDE_MAX_DE_CURVES];
- int16_t adjust_b[SDE_MAX_DE_CURVES];
- int16_t adjust_c[SDE_MAX_DE_CURVES];
-};
-
-/**
- * struct sde_drm_scaler_v2 - version 2 of struct sde_drm_scaler
- * @enable: Scaler enable
- * @dir_en: Detail enhancer enable
- * @pe: Pixel extension settings
- * @horz_decimate: Horizontal decimation factor
- * @vert_decimate: Vertical decimation factor
- * @init_phase_x: Initial scaler phase values for x
- * @phase_step_x: Phase step values for x
- * @init_phase_y: Initial scaler phase values for y
- * @phase_step_y: Phase step values for y
- * @preload_x: Horizontal preload value
- * @preload_y: Vertical preload value
- * @src_width: Source width
- * @src_height: Source height
- * @dst_width: Destination width
- * @dst_height: Destination height
- * @y_rgb_filter_cfg: Y/RGB plane filter configuration
- * @uv_filter_cfg: UV plane filter configuration
- * @alpha_filter_cfg: Alpha filter configuration
- * @blend_cfg: Selection of blend coefficients
- * @lut_flag: LUT configuration flags
- * @dir_lut_idx: 2d 4x4 LUT index
- * @y_rgb_cir_lut_idx: Y/RGB circular LUT index
- * @uv_cir_lut_idx: UV circular LUT index
- * @y_rgb_sep_lut_idx: Y/RGB separable LUT index
- * @uv_sep_lut_idx: UV separable LUT index
- * @de: Detail enhancer settings
- */
-struct sde_drm_scaler_v2 {
- /*
- * General definitions
- */
- uint32_t enable;
- uint32_t dir_en;
-
- /*
- * Pix ext settings
- */
- struct sde_drm_pix_ext_v1 pe;
-
- /*
- * Decimation settings
- */
- uint32_t horz_decimate;
- uint32_t vert_decimate;
-
- /*
- * Phase settings
- */
- int32_t init_phase_x[SDE_MAX_PLANES];
- int32_t phase_step_x[SDE_MAX_PLANES];
- int32_t init_phase_y[SDE_MAX_PLANES];
- int32_t phase_step_y[SDE_MAX_PLANES];
-
- uint32_t preload_x[SDE_MAX_PLANES];
- uint32_t preload_y[SDE_MAX_PLANES];
- uint32_t src_width[SDE_MAX_PLANES];
- uint32_t src_height[SDE_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;
-
- /*
- * Detail enhancer settings
- */
- struct sde_drm_de_v1 de;
-};
-
-/* Number of dest scalers supported */
-#define SDE_MAX_DS_COUNT 2
-
-/*
- * Destination scaler flag config
- */
-#define SDE_DRM_DESTSCALER_ENABLE 0x1
-#define SDE_DRM_DESTSCALER_SCALE_UPDATE 0x2
-#define SDE_DRM_DESTSCALER_ENHANCER_UPDATE 0x4
-#define SDE_DRM_DESTSCALER_PU_ENABLE 0x8
-
-/**
- * struct sde_drm_dest_scaler_cfg - destination scaler config structure
- * @flags: Flag to switch between mode for destination scaler
- * refer to destination scaler flag config
- * @index: Destination scaler selection index
- * @lm_width: Layer mixer width configuration
- * @lm_height: Layer mixer height configuration
- * @scaler_cfg: The scaling parameters for all the mode except disable
- * Userspace pointer to struct sde_drm_scaler_v2
- */
-struct sde_drm_dest_scaler_cfg {
- uint32_t flags;
- uint32_t index;
- uint32_t lm_width;
- uint32_t lm_height;
- uint64_t scaler_cfg;
-};
-
-/**
- * struct sde_drm_dest_scaler_data - destination scaler data struct
- * @num_dest_scaler: Number of dest scalers to be configured
- * @ds_cfg: Destination scaler block configuration
- */
-struct sde_drm_dest_scaler_data {
- uint32_t num_dest_scaler;
- struct sde_drm_dest_scaler_cfg ds_cfg[SDE_MAX_DS_COUNT];
-};
-
-/*
- * Define constants for struct sde_drm_csc
- */
-#define SDE_CSC_MATRIX_COEFF_SIZE 9
-#define SDE_CSC_CLAMP_SIZE 6
-#define SDE_CSC_BIAS_SIZE 3
-
-/**
- * struct sde_drm_csc_v1 - version 1 of struct sde_drm_csc
- * @ctm_coeff: Matrix coefficients, in S31.32 format
- * @pre_bias: Pre-bias array values
- * @post_bias: Post-bias array values
- * @pre_clamp: Pre-clamp array values
- * @post_clamp: Post-clamp array values
- */
-struct sde_drm_csc_v1 {
- int64_t ctm_coeff[SDE_CSC_MATRIX_COEFF_SIZE];
- uint32_t pre_bias[SDE_CSC_BIAS_SIZE];
- uint32_t post_bias[SDE_CSC_BIAS_SIZE];
- uint32_t pre_clamp[SDE_CSC_CLAMP_SIZE];
- uint32_t post_clamp[SDE_CSC_CLAMP_SIZE];
-};
-
-/**
- * struct sde_drm_color - struct to store the color and alpha values
- * @color_0: Color 0 value
- * @color_1: Color 1 value
- * @color_2: Color 2 value
- * @color_3: Color 3 value
- */
-struct sde_drm_color {
- uint32_t color_0;
- uint32_t color_1;
- uint32_t color_2;
- uint32_t color_3;
-};
-
-/* Total number of supported dim layers */
-#define SDE_MAX_DIM_LAYERS 7
-
-/* SDE_DRM_DIM_LAYER_CONFIG_FLAG - flags for Dim Layer */
-/* Color fill inside of the rect, including border */
-#define SDE_DRM_DIM_LAYER_INCLUSIVE 0x1
-/* Color fill outside of the rect, excluding border */
-#define SDE_DRM_DIM_LAYER_EXCLUSIVE 0x2
-
-/**
- * struct sde_drm_dim_layer - dim layer cfg struct
- * @flags: Refer SDE_DRM_DIM_LAYER_CONFIG_FLAG for possible values
- * @stage: Blending stage of the dim layer
- * @color_fill: Color fill for dim layer
- * @rect: Dim layer coordinates
- */
-struct sde_drm_dim_layer_cfg {
- uint32_t flags;
- uint32_t stage;
- struct sde_drm_color color_fill;
- struct drm_clip_rect rect;
-};
-
-/**
- * struct sde_drm_dim_layer_v1 - version 1 of dim layer struct
- * @num_layers: Numer of Dim Layers
- * @layer: Dim layer user cfgs ptr for the num_layers
- */
-struct sde_drm_dim_layer_v1 {
- uint32_t num_layers;
- struct sde_drm_dim_layer_cfg layer_cfg[SDE_MAX_DIM_LAYERS];
-};
-
-/* Writeback Config version definition */
-#define SDE_DRM_WB_CFG 0x1
-
-/* SDE_DRM_WB_CONFIG_FLAGS - Writeback configuration flags */
-#define SDE_DRM_WB_CFG_FLAGS_CONNECTED (1<<0)
-
-/**
- * struct sde_drm_wb_cfg - Writeback configuration structure
- * @flags: see DRM_MSM_WB_CONFIG_FLAGS
- * @connector_id: writeback connector identifier
- * @count_modes: Count of modes in modes_ptr
- * @modes: Pointer to struct drm_mode_modeinfo
- */
-struct sde_drm_wb_cfg {
- uint32_t flags;
- uint32_t connector_id;
- uint32_t count_modes;
- uint64_t modes;
-};
-
-#define SDE_MAX_ROI_V1 4
-
-/**
- * struct sde_drm_roi_v1 - list of regions of interest for a drm object
- * @num_rects: number of valid rectangles in the roi array
- * @roi: list of roi rectangles
- */
-struct sde_drm_roi_v1 {
- uint32_t num_rects;
- struct drm_clip_rect roi[SDE_MAX_ROI_V1];
-};
-
-/**
- * Define extended power modes supported by the SDE connectors.
- */
-#define SDE_MODE_DPMS_ON 0
-#define SDE_MODE_DPMS_LP1 1
-#define SDE_MODE_DPMS_LP2 2
-#define SDE_MODE_DPMS_STANDBY 3
-#define SDE_MODE_DPMS_SUSPEND 4
-#define SDE_MODE_DPMS_OFF 5
-
-#endif /* _SDE_DRM_H_ */
diff --git a/sdm710/original-kernel-headers/linux/avtimer.h b/sdm710/original-kernel-headers/linux/avtimer.h
deleted file mode 100644
index cbcd8247..00000000
--- a/sdm710/original-kernel-headers/linux/avtimer.h
+++ /dev/null
@@ -1,10 +0,0 @@
-#ifndef _AVTIMER_H
-#define _AVTIMER_H
-
-#include <linux/ioctl.h>
-
-#define MAJOR_NUM 100
-
-#define IOCTL_GET_AVTIMER_TICK _IOR(MAJOR_NUM, 0, uint64_t)
-
-#endif
diff --git a/sdm710/original-kernel-headers/linux/ion.h b/sdm710/original-kernel-headers/linux/ion.h
deleted file mode 100644
index a042797d..00000000
--- a/sdm710/original-kernel-headers/linux/ion.h
+++ /dev/null
@@ -1,203 +0,0 @@
-/*
- * 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 */
diff --git a/sdm710/original-kernel-headers/linux/ipa_qmi_service_v01.h b/sdm710/original-kernel-headers/linux/ipa_qmi_service_v01.h
deleted file mode 100644
index 72efc860..00000000
--- a/sdm710/original-kernel-headers/linux/ipa_qmi_service_v01.h
+++ /dev/null
@@ -1,2041 +0,0 @@
-/* Copyright (c) 2013-2018, 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.
- */
-
-/*
- * This header file defines the types and structures that were defined in
- * ipa. It contains the constant values defined, enums, structures,
- * messages, and service message IDs (in that order) Structures that were
- * defined in the IDL as messages contain mandatory elements, optional
- * elements, a combination of mandatory and optional elements (mandatory
- * always come before optionals in the structure), or nothing (null message)
-
- * An optional element in a message is preceded by a uint8_t value that must be
- * set to true if the element is going to be included. When decoding a received
- * message, the uint8_t values will be set to true or false by the decode
- * routine, and should be checked before accessing the values that they
- * correspond to.
-
- * Variable sized arrays are defined as static sized arrays with an unsigned
- * integer (32 bit) preceding it that must be set to the number of elements
- * in the array that are valid. For Example:
-
- * uint32_t test_opaque_len;
- * uint8_t test_opaque[16];
-
- * If only 4 elements are added to test_opaque[] then test_opaque_len must be
- * set to 4 before sending the message. When decoding, the _len value is set
- * by the decode routine and should be checked so that the correct number of
- * elements in the array will be accessed.
- */
-#ifndef IPA_QMI_SERVICE_V01_H
-#define IPA_QMI_SERVICE_V01_H
-
-#define QMI_IPA_IPFLTR_NUM_IHL_RANGE_16_EQNS_V01 2
-#define QMI_IPA_IPFLTR_NUM_MEQ_32_EQNS_V01 2
-#define QMI_IPA_IPFLTR_NUM_IHL_MEQ_32_EQNS_V01 2
-#define QMI_IPA_IPFLTR_NUM_MEQ_128_EQNS_V01 2
-#define QMI_IPA_MAX_FILTERS_V01 64
-#define QMI_IPA_MAX_FILTERS_EX_V01 128
-#define QMI_IPA_MAX_PIPES_V01 20
-#define QMI_IPA_MAX_APN_V01 8
-#define QMI_IPA_MAX_PER_CLIENTS_V01 64
-/* Currently max we can use is only 1. But for scalability purpose
- * we are having max value as 8.
- */
-#define QMI_IPA_MAX_CLIENT_DST_PIPES_V01 8
-#define QMI_IPA_MAX_UL_FIREWALL_RULES_V01 64
-
-/*
- * Indicates presence of newly added member to support HW stats.
- */
-#define IPA_QMI_SUPPORTS_STATS
-
-#define IPA_INT_MAX ((int)(~0U>>1))
-#define IPA_INT_MIN (-IPA_INT_MAX - 1)
-
-/* IPA definition as msm_qmi_interface.h */
-
-enum ipa_qmi_result_type_v01 {
- /* To force a 32 bit signed enum. Do not change or use*/
- IPA_QMI_RESULT_TYPE_MIN_ENUM_VAL_V01 = IPA_INT_MIN,
- IPA_QMI_RESULT_SUCCESS_V01 = 0,
- IPA_QMI_RESULT_FAILURE_V01 = 1,
- IPA_QMI_RESULT_TYPE_MAX_ENUM_VAL_V01 = IPA_INT_MAX,
-};
-
-enum ipa_qmi_error_type_v01 {
- /* To force a 32 bit signed enum. Do not change or use*/
- IPA_QMI_ERROR_TYPE_MIN_ENUM_VAL_V01 = IPA_INT_MIN,
- IPA_QMI_ERR_NONE_V01 = 0x0000,
- IPA_QMI_ERR_MALFORMED_MSG_V01 = 0x0001,
- IPA_QMI_ERR_NO_MEMORY_V01 = 0x0002,
- IPA_QMI_ERR_INTERNAL_V01 = 0x0003,
- IPA_QMI_ERR_CLIENT_IDS_EXHAUSTED_V01 = 0x0005,
- IPA_QMI_ERR_INVALID_ID_V01 = 0x0029,
- IPA_QMI_ERR_ENCODING_V01 = 0x003A,
- IPA_QMI_ERR_INCOMPATIBLE_STATE_V01 = 0x005A,
- IPA_QMI_ERR_NOT_SUPPORTED_V01 = 0x005E,
- IPA_QMI_ERROR_TYPE_MAX_ENUM_VAL_V01 = IPA_INT_MAX,
-};
-
-struct ipa_qmi_response_type_v01 {
- enum ipa_qmi_result_type_v01 result;
- enum ipa_qmi_error_type_v01 error;
-};
-
-enum ipa_platform_type_enum_v01 {
- IPA_PLATFORM_TYPE_ENUM_MIN_ENUM_VAL_V01 =
- -2147483647, /* To force a 32 bit signed enum. Do not change or use */
- QMI_IPA_PLATFORM_TYPE_INVALID_V01 = 0,
- /* Invalid platform identifier */
- QMI_IPA_PLATFORM_TYPE_TN_V01 = 1,
- /* Platform identifier - Data card device */
- QMI_IPA_PLATFORM_TYPE_LE_V01 = 2,
- /* Platform identifier - Data router device */
- QMI_IPA_PLATFORM_TYPE_MSM_ANDROID_V01 = 3,
- /* Platform identifier - MSM device with Android HLOS */
- QMI_IPA_PLATFORM_TYPE_MSM_WINDOWS_V01 = 4,
- /* Platform identifier - MSM device with Windows HLOS */
- QMI_IPA_PLATFORM_TYPE_MSM_QNX_V01 = 5,
- /* Platform identifier - MSM device with QNX HLOS */
- IPA_PLATFORM_TYPE_ENUM_MAX_ENUM_VAL_V01 = 2147483647
- /* To force a 32 bit signed enum. Do not change or use */
-};
-
-struct ipa_hdr_tbl_info_type_v01 {
- uint32_t modem_offset_start;
- /* Offset from the start of IPA Shared memory from which
- * modem driver may insert header table entries.
- */
- uint32_t modem_offset_end;
- /* Offset from the start of IPA shared mem beyond which modem
- * driver shall not insert header table entries. The space
- * available for the modem driver shall include the
- * modem_offset_start and modem_offset_end.
- */
-}; /* Type */
-
-struct ipa_route_tbl_info_type_v01 {
- uint32_t route_tbl_start_addr;
- /* Identifies the start of the routing table. Denotes the offset
- * from the start of the IPA Shared Mem
- */
-
- uint32_t num_indices;
- /* Number of indices (starting from 0) that is being allocated to
- * the modem. The number indicated here is also included in the
- * allocation. The value of num_indices shall not exceed 31
- * (5 bits used to specify the routing table index), unless there
- * is a change in the hardware.
- */
-}; /* Type */
-
-struct ipa_modem_mem_info_type_v01 {
-
- uint32_t block_start_addr;
- /* Identifies the start of the memory block allocated for the
- * modem. Denotes the offset from the start of the IPA Shared Mem
- */
-
- uint32_t size;
- /* Size of the block allocated for the modem driver */
-}; /* Type */
-
-struct ipa_hdr_proc_ctx_tbl_info_type_v01 {
-
- uint32_t modem_offset_start;
- /* Offset from the start of IPA shared memory from which the modem
- * driver may insert header processing context table entries.
- */
-
- uint32_t modem_offset_end;
- /* Offset from the start of IPA shared memory beyond which the modem
- * driver may not insert header proc table entries. The space
- * available for the modem driver includes modem_offset_start and
- * modem_offset_end.
- */
-}; /* Type */
-
-struct ipa_zip_tbl_info_type_v01 {
-
- uint32_t modem_offset_start;
- /* Offset from the start of IPA shared memory from which the modem
- * driver may insert compression/decompression command entries.
- */
-
- uint32_t modem_offset_end;
- /* Offset from the start of IPA shared memory beyond which the modem
- * driver may not insert compression/decompression command entries.
- * The space available for the modem driver includes
- * modem_offset_start and modem_offset_end.
- */
-}; /* Type */
-
-/**
- * Request Message; Requests the modem IPA driver
- * to perform initialization
- */
-struct ipa_init_modem_driver_req_msg_v01 {
-
- /* Optional */
- /* Platform info */
- uint8_t platform_type_valid;
- /* Must be set to true if platform_type is being passed */
- enum ipa_platform_type_enum_v01 platform_type;
- /* Provides information about the platform (ex. TN/MN/LE/MSM,etc) */
-
- /* Optional */
- /* Header table info */
- uint8_t hdr_tbl_info_valid;
- /* Must be set to true if hdr_tbl_info is being passed */
- struct ipa_hdr_tbl_info_type_v01 hdr_tbl_info;
- /* Provides information about the header table */
-
- /* Optional */
- /* IPV4 Routing table info */
- uint8_t v4_route_tbl_info_valid;
- /* Must be set to true if v4_route_tbl_info is being passed */
- struct ipa_route_tbl_info_type_v01 v4_route_tbl_info;
- /* Provides information about the IPV4 routing table */
-
- /* Optional */
- /* IPV6 Routing table info */
- uint8_t v6_route_tbl_info_valid;
- /* Must be set to true if v6_route_tbl_info is being passed */
- struct ipa_route_tbl_info_type_v01 v6_route_tbl_info;
- /* Provides information about the IPV6 routing table */
-
- /* Optional */
- /* IPV4 Filter table start address */
- uint8_t v4_filter_tbl_start_addr_valid;
- /* Must be set to true if v4_filter_tbl_start_addr is being passed */
- uint32_t v4_filter_tbl_start_addr;
- /* Provides information about the starting address of IPV4 filter
- * table in IPAv2 or non-hashable IPv4 filter table in IPAv3.
- * Denotes the offset from the start of the IPA Shared Mem
- */
-
- /* Optional */
- /* IPV6 Filter table start address */
- uint8_t v6_filter_tbl_start_addr_valid;
- /* Must be set to true if v6_filter_tbl_start_addr is being passed */
- uint32_t v6_filter_tbl_start_addr;
- /* Provides information about the starting address of IPV6 filter
- * table in IPAv2 or non-hashable IPv6 filter table in IPAv3.
- * Denotes the offset from the start of the IPA Shared Mem
- */
-
- /* Optional */
- /* Modem memory block */
- uint8_t modem_mem_info_valid;
- /* Must be set to true if modem_mem_info is being passed */
- struct ipa_modem_mem_info_type_v01 modem_mem_info;
- /* Provides information about the start address and the size of
- * the memory block that is being allocated to the modem driver.
- * Denotes the physical address
- */
-
- /* Optional */
- /* Destination end point for control commands from modem */
- uint8_t ctrl_comm_dest_end_pt_valid;
- /* Must be set to true if ctrl_comm_dest_end_pt is being passed */
- uint32_t ctrl_comm_dest_end_pt;
- /* Provides information about the destination end point on the
- * application processor to which the modem driver can send
- * control commands. The value of this parameter cannot exceed
- * 19 since IPA only supports 20 end points.
- */
-
- /* Optional */
- /* Modem Bootup Information */
- uint8_t is_ssr_bootup_valid;
- /* Must be set to true if is_ssr_bootup is being passed */
- uint8_t is_ssr_bootup;
- /* Specifies whether the modem is booting up after a modem only
- * sub-system restart or not. This will let the modem driver
- * know that it doesn't have to reinitialize some of the HW
- * blocks because IPA has not been reset since the previous
- * initialization.
- */
-
- /* Optional */
- /* Header Processing Context Table Information */
- uint8_t hdr_proc_ctx_tbl_info_valid;
- /* Must be set to true if hdr_proc_ctx_tbl_info is being passed */
- struct ipa_hdr_proc_ctx_tbl_info_type_v01 hdr_proc_ctx_tbl_info;
- /* Provides information about the header processing context table.
- */
-
- /* Optional */
- /* Compression Decompression Table Information */
- uint8_t zip_tbl_info_valid;
- /* Must be set to true if zip_tbl_info is being passed */
- struct ipa_zip_tbl_info_type_v01 zip_tbl_info;
- /* Provides information about the zip table.
- */
-
- /* Optional */
- /* IPv4 Hashable Routing Table Information */
- /** Must be set to true if v4_hash_route_tbl_info is being passed */
- uint8_t v4_hash_route_tbl_info_valid;
- struct ipa_route_tbl_info_type_v01 v4_hash_route_tbl_info;
-
- /* Optional */
- /* IPv6 Hashable Routing Table Information */
- /** Must be set to true if v6_hash_route_tbl_info is being passed */
- uint8_t v6_hash_route_tbl_info_valid;
- struct ipa_route_tbl_info_type_v01 v6_hash_route_tbl_info;
-
- /*
- * Optional
- * IPv4 Hashable Filter Table Start Address
- * Must be set to true if v4_hash_filter_tbl_start_addr
- * is being passed
- */
- uint8_t v4_hash_filter_tbl_start_addr_valid;
- uint32_t v4_hash_filter_tbl_start_addr;
- /* Identifies the starting address of the IPv4 hashable filter
- * table in IPAv3 onwards. Denotes the offset from the start of
- * the IPA shared memory.
- */
-
- /* Optional
- * IPv6 Hashable Filter Table Start Address
- * Must be set to true if v6_hash_filter_tbl_start_addr
- * is being passed
- */
- uint8_t v6_hash_filter_tbl_start_addr_valid;
- uint32_t v6_hash_filter_tbl_start_addr;
- /* Identifies the starting address of the IPv6 hashable filter
- * table in IPAv3 onwards. Denotes the offset from the start of
- * the IPA shared memory.
- */
-
- /* Optional
- * Modem HW Stats Quota Base address
- * Must be set to true if hw_stats_quota_base_addr
- * is being passed
- */
- uint8_t hw_stats_quota_base_addr_valid;
- uint32_t hw_stats_quota_base_addr;
-
- /* Optional
- * Modem HW Stats Quota Size
- * Must be set to true if hw_stats_quota_size
- * is being passed
- */
- uint8_t hw_stats_quota_size_valid;
- uint32_t hw_stats_quota_size;
-
- /* Optional
- * Modem HW Drop Stats Table Start Address
- * Must be set to true if hw_drop_stats_base_addr
- * is being passed
- */
- uint8_t hw_drop_stats_base_addr_valid;
- uint32_t hw_drop_stats_base_addr;
-
- /* Optional
- * Modem HW Drop Stats Table size
- * Must be set to true if hw_drop_stats_table_size
- * is being passed
- */
- uint8_t hw_drop_stats_table_size_valid;
- uint32_t hw_drop_stats_table_size;
-}; /* Message */
-
-/* Response Message; Requests the modem IPA driver about initialization */
-struct ipa_init_modem_driver_resp_msg_v01 {
- /* Mandatory */
- /* Result Code */
- struct ipa_qmi_response_type_v01 resp;
- /* Standard response type.*/
-
- /* Optional */
- /* Destination end point for control commands from master driver */
- uint8_t ctrl_comm_dest_end_pt_valid;
- /* Must be set to true if ctrl_comm_dest_ep is being passed */
- uint32_t ctrl_comm_dest_end_pt;
- /* Provides information about the destination end point on the
- * modem processor to which the master driver can send control
- * commands. The value of this parameter cannot exceed 19 since
- * IPA only supports 20 end points. This field is looked at only
- * if the result in TLV RESULT_CODE is QMI_RESULT_SUCCESS
- */
-
- /* Optional */
- /* Default end point */
- uint8_t default_end_pt_valid;
- /* Must be set to true if default_end_pt is being passed */
- uint32_t default_end_pt;
- /* Provides information about the default end point. The master
- * driver may or may not set the register in the hardware with
- * this value. The value of this parameter cannot exceed 19
- * since IPA only supports 20 end points. This field is looked
- * at only if the result in TLV RESULT_CODE is QMI_RESULT_SUCCESS
- */
-
- /* Optional */
- /* Modem Driver Initialization Pending */
- uint8_t modem_driver_init_pending_valid;
- /* Must be set to true if modem_driver_init_pending is being passed */
- uint8_t modem_driver_init_pending;
- /*
- * Identifies if second level message handshake is needed
- * between drivers to indicate when IPA HWP loading is completed.
- * If this is set by modem driver, AP driver will need to wait
- * for a INIT_MODEM_DRIVER_CMPLT message before communicating with
- * IPA HWP.
- */
-}; /* Message */
-
-/*
- * Request Message; Request from Modem IPA driver to indicate
- * modem driver init completion
- */
-struct ipa_init_modem_driver_cmplt_req_msg_v01 {
- /* Mandatory */
- /* Modem Driver init complete status; */
- uint8_t status;
- /*
- * Specifies whether the modem driver initialization is complete
- * including the micro controller image loading.
- */
-}; /* Message */
-
-/*
- * Response Message; Request from Modem IPA driver to indicate
- * modem driver init completion
- */
-struct ipa_init_modem_driver_cmplt_resp_msg_v01 {
- /* Mandatory */
- /* Result Code */
- struct ipa_qmi_response_type_v01 resp;
- /**< Standard response type.*/
-}; /* Message */
-
-/* Request Message; This is the message that is exchanged between the
- * control point and the service in order to register for indications.
- */
-struct ipa_indication_reg_req_msg_v01 {
- /* Optional */
- /* Master driver initialization completion */
- uint8_t master_driver_init_complete_valid;
- /* Must be set to true if master_driver_init_complete is being passed */
- uint8_t master_driver_init_complete;
- /* If set to TRUE, this field indicates that the client is
- * interested in getting indications about the completion
- * of the initialization sequence of the master driver.
- * Setting this field in the request message makes sense
- * only when the QMI_IPA_INDICATION_REGISTER_REQ is being
- * originated from the modem driver
- */
-
- /* Optional */
- /* Data Usage Quota Reached */
- uint8_t data_usage_quota_reached_valid;
- /* Must be set to true if data_usage_quota_reached is being passed */
- uint8_t data_usage_quota_reached;
- /* If set to TRUE, this field indicates that the client wants to
- * receive indications about reaching the data usage quota that
- * previously set via QMI_IPA_SET_DATA_USAGE_QUOTA. Setting this field
- * in the request message makes sense only when the
- * QMI_IPA_INDICATION_REGISTER_REQ is being originated from the Master
- * driver
- */
-}; /* Message */
-
-
-/* Response Message; This is the message that is exchanged between the
- * control point and the service in order to register for indications.
- */
-struct ipa_indication_reg_resp_msg_v01 {
- /* Mandatory */
- /* Result Code */
- struct ipa_qmi_response_type_v01 resp;
- /**< Standard response type.*/
-}; /* Message */
-
-
-/* Indication Message; Indication sent to the Modem IPA driver from
- * master IPA driver about initialization being complete.
- */
-struct ipa_master_driver_init_complt_ind_msg_v01 {
- /* Mandatory */
- /* Master driver initialization completion status */
- struct ipa_qmi_response_type_v01 master_driver_init_status;
- /* Indicates the status of initialization. If everything went
- * as expected, this field is set to SUCCESS. ERROR is set
- * otherwise. Extended error info may be used to convey
- * additional information about the error
- */
-}; /* Message */
-
-struct ipa_ipfltr_range_eq_16_type_v01 {
- uint8_t offset;
- /* Specifies the offset from the IHL (Internet Header length) */
-
- uint16_t range_low;
- /* Specifies the lower bound of the range */
-
- uint16_t range_high;
- /* Specifies the upper bound of the range */
-}; /* Type */
-
-struct ipa_ipfltr_mask_eq_32_type_v01 {
- uint8_t offset;
- /* Specifies the offset either from IHL or from the start of
- * the IP packet. This depends on the equation that this structure
- * is used in.
- */
-
- uint32_t mask;
- /* Specifies the mask that has to be used in the comparison.
- * The field is ANDed with the mask and compared against the value.
- */
-
- uint32_t value;
- /* Specifies the 32 bit value that used in the comparison. */
-}; /* Type */
-
-struct ipa_ipfltr_eq_16_type_v01 {
- uint8_t offset;
- /* Specifies the offset into the packet */
-
- uint16_t value;
- /* Specifies the 16 bit value that should be used in the comparison. */
-}; /* Type */
-
-struct ipa_ipfltr_eq_32_type_v01 {
- uint8_t offset;
- /* Specifies the offset into the packet */
-
- uint32_t value;
- /* Specifies the 32 bit value that should be used in the comparison. */
-}; /* Type */
-
-struct ipa_ipfltr_mask_eq_128_type_v01 {
- uint8_t offset;
- /* Specifies the offset into the packet */
-
- uint8_t mask[16];
- /* Specifies the mask that has to be used in the comparison.
- * The field is ANDed with the mask and compared against the value.
- */
-
- uint8_t value[16];
- /* Specifies the 128 bit value that should be used in the comparison. */
-}; /* Type */
-
-
-struct ipa_filter_rule_type_v01 {
- uint16_t rule_eq_bitmap;
- /* 16-bit Bitmask to indicate how many eqs are valid in this rule */
-
- uint8_t tos_eq_present;
- /* Specifies if a type of service check rule is present */
-
- uint8_t tos_eq;
- /* The value to check against the type of service (ipv4) field */
-
- uint8_t protocol_eq_present;
- /* Specifies if a protocol check rule is present */
-
- uint8_t protocol_eq;
- /* The value to check against the protocol field */
-
- uint8_t num_ihl_offset_range_16;
- /* The number of 16 bit range check rules at the location
- * determined by IP header length plus a given offset offset
- * in this rule. See the definition of the ipa_filter_range_eq_16
- * for better understanding. The value of this field cannot exceed
- * IPA_IPFLTR_NUM_IHL_RANGE_16_EQNS which is set as 2
- */
-
- struct ipa_ipfltr_range_eq_16_type_v01
- ihl_offset_range_16[QMI_IPA_IPFLTR_NUM_IHL_RANGE_16_EQNS_V01];
- /* Array of the registered IP header length offset 16 bit range
- * check rules.
- */
-
- uint8_t num_offset_meq_32;
- /* The number of 32 bit masked comparison rules present
- * in this rule
- */
-
- struct ipa_ipfltr_mask_eq_32_type_v01
- offset_meq_32[QMI_IPA_IPFLTR_NUM_MEQ_32_EQNS_V01];
- /* An array of all the possible 32bit masked comparison rules
- * in this rule
- */
-
- uint8_t tc_eq_present;
- /* Specifies if the traffic class rule is present in this rule */
-
- uint8_t tc_eq;
- /* The value against which the IPV4 traffic class field has to
- * be checked
- */
-
- uint8_t flow_eq_present;
- /* Specifies if the "flow equals" rule is present in this rule */
-
- uint32_t flow_eq;
- /* The value against which the IPV6 flow field has to be checked */
-
- uint8_t ihl_offset_eq_16_present;
- /* Specifies if there is a 16 bit comparison required at the
- * location in the packet determined by "Intenet Header length
- * + specified offset"
- */
-
- struct ipa_ipfltr_eq_16_type_v01 ihl_offset_eq_16;
- /* The 16 bit comparison equation */
-
- uint8_t ihl_offset_eq_32_present;
- /* Specifies if there is a 32 bit comparison required at the
- * location in the packet determined by "Intenet Header length
- * + specified offset"
- */
-
- struct ipa_ipfltr_eq_32_type_v01 ihl_offset_eq_32;
- /* The 32 bit comparison equation */
-
- uint8_t num_ihl_offset_meq_32;
- /* The number of 32 bit masked comparison equations in this
- * rule. The location of the packet to be compared is
- * determined by the IP Header length + the give offset
- */
-
- struct ipa_ipfltr_mask_eq_32_type_v01
- ihl_offset_meq_32[QMI_IPA_IPFLTR_NUM_IHL_MEQ_32_EQNS_V01];
- /* Array of 32 bit masked comparison equations.
- */
-
- uint8_t num_offset_meq_128;
- /* The number of 128 bit comparison equations in this rule */
-
- struct ipa_ipfltr_mask_eq_128_type_v01
- offset_meq_128[QMI_IPA_IPFLTR_NUM_MEQ_128_EQNS_V01];
- /* Array of 128 bit comparison equations. The location in the
- * packet is determined by the specified offset
- */
-
- uint8_t metadata_meq32_present;
- /* Boolean indicating if the 32 bit masked comparison equation
- * is present or not. Comparison is done against the metadata
- * in IPA. Metadata can either be extracted from the packet
- * header or from the "metadata" register.
- */
-
- struct ipa_ipfltr_mask_eq_32_type_v01
- metadata_meq32;
- /* The metadata 32 bit masked comparison equation */
-
- uint8_t ipv4_frag_eq_present;
- /* Specifies if the IPv4 Fragment equation is present in this rule */
-}; /* Type */
-
-
-enum ipa_ip_type_enum_v01 {
- IPA_IP_TYPE_ENUM_MIN_ENUM_VAL_V01 = -2147483647,
- /* To force a 32 bit signed enum. Do not change or use*/
- QMI_IPA_IP_TYPE_INVALID_V01 = 0,
- /* Invalid IP type identifier */
- QMI_IPA_IP_TYPE_V4_V01 = 1,
- /* IP V4 type */
- QMI_IPA_IP_TYPE_V6_V01 = 2,
- /* IP V6 type */
- QMI_IPA_IP_TYPE_V4V6_V01 = 3,
- /* Applies to both IP types */
- IPA_IP_TYPE_ENUM_MAX_ENUM_VAL_V01 = 2147483647
- /* To force a 32 bit signed enum. Do not change or use*/
-};
-
-
-enum ipa_filter_action_enum_v01 {
- IPA_FILTER_ACTION_ENUM_MIN_ENUM_VAL_V01 = -2147483647,
- /* To force a 32 bit signed enum. Do not change or use */
- QMI_IPA_FILTER_ACTION_INVALID_V01 = 0,
- /* Invalid action on filter hit */
- QMI_IPA_FILTER_ACTION_SRC_NAT_V01 = 1,
- /* Pass packet to NAT block for Source NAT */
- QMI_IPA_FILTER_ACTION_DST_NAT_V01 = 2,
- /* Pass packet to NAT block for Destination NAT */
- QMI_IPA_FILTER_ACTION_ROUTING_V01 = 3,
- /* Pass packet to Routing block */
- QMI_IPA_FILTER_ACTION_EXCEPTION_V01 = 4,
- /* Treat packet as exception and send to exception pipe */
- IPA_FILTER_ACTION_ENUM_MAX_ENUM_VAL_V01 = 2147483647
- /* To force a 32 bit signed enum. Do not change or use*/
-};
-
-struct ipa_filter_spec_type_v01 {
- uint32_t filter_spec_identifier;
- /* This field is used to identify a filter spec in the list
- * of filter specs being sent from the client. This field
- * is applicable only in the filter install request and response.
- */
-
- enum ipa_ip_type_enum_v01 ip_type;
- /* This field identifies the IP type for which this rule is
- * applicable. The driver needs to identify the filter table
- * (V6 or V4) and this field is essential for that
- */
-
- struct ipa_filter_rule_type_v01 filter_rule;
- /* This field specifies the rules in the filter spec. These rules
- * are the ones that are matched against fields in the packet.
- */
-
- enum ipa_filter_action_enum_v01 filter_action;
- /* This field specifies the action to be taken when a filter match
- * occurs. The remote side should install this information into the
- * hardware along with the filter equations.
- */
-
- uint8_t is_routing_table_index_valid;
- /* Specifies whether the routing table index is present or not.
- * If the action is "QMI_IPA_FILTER_ACTION_EXCEPTION", this
- * parameter need not be provided.
- */
-
- uint32_t route_table_index;
- /* This is the index in the routing table that should be used
- * to route the packets if the filter rule is hit
- */
-
- uint8_t is_mux_id_valid;
- /* Specifies whether the mux_id is valid */
-
- uint32_t mux_id;
- /* This field identifies the QMAP MUX ID. As a part of QMAP
- * protocol, several data calls may be multiplexed over the
- * same physical transport channel. This identifier is used to
- * identify one such data call. The maximum value for this
- * identifier is 255.
- */
-}; /* Type */
-
-struct ipa_filter_spec_ex_type_v01 {
- enum ipa_ip_type_enum_v01 ip_type;
- /* This field identifies the IP type for which this rule is
- * applicable. The driver needs to identify the filter table
- * (V6 or V4) and this field is essential for that
- */
-
- struct ipa_filter_rule_type_v01 filter_rule;
- /* This field specifies the rules in the filter spec. These rules
- * are the ones that are matched against fields in the packet.
- */
-
- enum ipa_filter_action_enum_v01 filter_action;
- /* This field specifies the action to be taken when a filter match
- * occurs. The remote side should install this information into the
- * hardware along with the filter equations.
- */
-
- uint8_t is_routing_table_index_valid;
- /* Specifies whether the routing table index is present or not.
- * If the action is "QMI_IPA_FILTER_ACTION_EXCEPTION", this
- * parameter need not be provided.
- */
-
- uint32_t route_table_index;
- /* This is the index in the routing table that should be used
- * to route the packets if the filter rule is hit
- */
-
- uint8_t is_mux_id_valid;
- /* Specifies whether the mux_id is valid */
-
- uint32_t mux_id;
- /* This field identifies the QMAP MUX ID. As a part of QMAP
- * protocol, several data calls may be multiplexed over the
- * same physical transport channel. This identifier is used to
- * identify one such data call. The maximum value for this
- * identifier is 255.
- */
-
- uint32_t rule_id;
- /* Rule Id of the given filter. The Rule Id is populated in the rule
- * header when installing the rule in IPA.
- */
-
- uint8_t is_rule_hashable;
- /** Specifies whether the given rule is hashable.
- */
-}; /* Type */
-
-
-/* Request Message; This is the message that is exchanged between the
- * control point and the service in order to request the installation
- * of filtering rules in the hardware block by the remote side.
- */
-struct ipa_install_fltr_rule_req_msg_v01 {
- /* Optional
- * IP type that this rule applies to
- * Filter specification to be installed in the hardware
- */
- uint8_t filter_spec_list_valid;
- /* Must be set to true if filter_spec_list is being passed */
- uint32_t filter_spec_list_len;
- /* Must be set to # of elements in filter_spec_list */
- struct ipa_filter_spec_type_v01
- filter_spec_list[QMI_IPA_MAX_FILTERS_V01];
- /* This structure defines the list of filters that have
- * to be installed in the hardware. The driver installing
- * these rules shall do so in the same order as specified
- * in this list.
- */
-
- /* Optional */
- /* Pipe index to intall rule */
- uint8_t source_pipe_index_valid;
- /* Must be set to true if source_pipe_index is being passed */
- uint32_t source_pipe_index;
- /* This is the source pipe on which the filter rule is to be
- * installed. The requestor may always not know the pipe
- * indices. If not specified, the receiver shall install
- * this rule on all the pipes that it controls through
- * which data may be fed into IPA.
- */
-
- /* Optional */
- /* Total number of IPv4 filters in the filter spec list */
- uint8_t num_ipv4_filters_valid;
- /* Must be set to true if num_ipv4_filters is being passed */
- uint32_t num_ipv4_filters;
- /* Number of IPv4 rules included in filter spec list */
-
- /* Optional */
- /* Total number of IPv6 filters in the filter spec list */
- uint8_t num_ipv6_filters_valid;
- /* Must be set to true if num_ipv6_filters is being passed */
- uint32_t num_ipv6_filters;
- /* Number of IPv6 rules included in filter spec list */
-
- /* Optional */
- /* List of XLAT filter indices in the filter spec list */
- uint8_t xlat_filter_indices_list_valid;
- /* Must be set to true if xlat_filter_indices_list
- * is being passed
- */
- uint32_t xlat_filter_indices_list_len;
- /* Must be set to # of elements in xlat_filter_indices_list */
- uint32_t xlat_filter_indices_list[QMI_IPA_MAX_FILTERS_V01];
- /* List of XLAT filter indices. Filter rules at specified indices
- * will need to be modified by the receiver if the PDN is XLAT
- * before installing them on the associated IPA consumer pipe.
- */
-
- /* Optional */
- /* Extended Filter Specification */
- uint8_t filter_spec_ex_list_valid;
- /* Must be set to true if filter_spec_ex_list is being passed */
- uint32_t filter_spec_ex_list_len;
- /* Must be set to # of elements in filter_spec_ex_list */
- struct ipa_filter_spec_ex_type_v01
- filter_spec_ex_list[QMI_IPA_MAX_FILTERS_V01];
- /*
- * List of filter specifications of filters that must be installed in
- * the IPAv3.x hardware.
- * The driver installing these rules must do so in the same
- * order as specified in this list.
- */
-}; /* Message */
-
-struct ipa_filter_rule_identifier_to_handle_map_v01 {
- uint32_t filter_spec_identifier;
- /* This field is used to identify a filter spec in the list of
- * filter specs being sent from the client. This field is
- * applicable only in the filter install request and response.
- */
- uint32_t filter_handle;
- /* This field is used to identify a rule in any subsequent message.
- * This is a value that is provided by the server to the control
- * point
- */
-}; /* Type */
-
-/* Response Message; This is the message that is exchanged between the
- * control point and the service in order to request the
- * installation of filtering rules in the hardware block by
- * the remote side.
- */
-struct ipa_install_fltr_rule_resp_msg_v01 {
- /* Mandatory */
- /* Result Code */
- struct ipa_qmi_response_type_v01 resp;
- /* Standard response type.
- * Standard response type. Contains the following data members:
- * - qmi_result_type -- QMI_RESULT_SUCCESS or QMI_RESULT_FAILURE
- * - qmi_error_type -- Error code. Possible error code values are
- * described in the error codes section of each message definition.
- */
-
- /* Optional */
- /* Filter Handle List */
- uint8_t filter_handle_list_valid;
- /* Must be set to true if filter_handle_list is being passed */
- uint32_t filter_handle_list_len;
- /* Must be set to # of elements in filter_handle_list */
- struct ipa_filter_rule_identifier_to_handle_map_v01
- filter_handle_list[QMI_IPA_MAX_FILTERS_V01];
- /*
- * List of handles returned to the control point. Each handle is
- * mapped to the rule identifier that was specified in the
- * request message. Any further reference to the rule is done
- * using the filter handle.
- */
-
- /* Optional */
- /* Rule id List */
- uint8_t rule_id_valid;
- /* Must be set to true if rule_id is being passed */
- uint32_t rule_id_len;
- /* Must be set to # of elements in rule_id */
- uint32_t rule_id[QMI_IPA_MAX_FILTERS_V01];
- /*
- * List of rule ids returned to the control point.
- * Any further reference to the rule is done using the
- * filter rule id specified in this list.
- */
-}; /* Message */
-
-struct ipa_filter_handle_to_index_map_v01 {
- uint32_t filter_handle;
- /* This is a handle that was given to the remote client that
- * requested the rule addition.
- */
- uint32_t filter_index;
- /* This index denotes the location in a filter table, where the
- * filter rule has been installed. The maximum value of this
- * field is 64.
- */
-}; /* Type */
-
-/* Request Message; This is the message that is exchanged between the
- * control point and the service in order to notify the remote driver
- * of the installation of the filter rule supplied earlier by the
- * remote driver.
- */
-struct ipa_fltr_installed_notif_req_msg_v01 {
- /* Mandatory */
- /* Pipe index */
- uint32_t source_pipe_index;
- /* This is the source pipe on which the filter rule has been
- * installed or was attempted to be installed
- */
-
- /* Mandatory */
- /* Installation Status */
- enum ipa_qmi_result_type_v01 install_status;
- /* This is the status of installation. If this indicates
- * SUCCESS, other optional fields carry additional
- * information
- */
-
- /* Mandatory */
- /* List of Filter Indices */
- uint32_t filter_index_list_len;
- /* Must be set to # of elements in filter_index_list */
- struct ipa_filter_handle_to_index_map_v01
- filter_index_list[QMI_IPA_MAX_FILTERS_V01];
- /*
- * Provides the list of filter indices and the corresponding
- * filter handle. If the installation_status indicates a
- * failure, the filter indices must be set to a reserve
- * index (255).
- */
-
- /* Optional */
- /* Embedded pipe index */
- uint8_t embedded_pipe_index_valid;
- /* Must be set to true if embedded_pipe_index is being passed */
- uint32_t embedded_pipe_index;
- /* This index denotes the embedded pipe number on which a call to
- * the same PDN has been made. If this field is set, it denotes
- * that this is a use case where PDN sharing is happening. The
- * embedded pipe is used to send data from the embedded client
- * in the device
- */
-
- /* Optional */
- /* Retain Header Configuration */
- uint8_t retain_header_valid;
- /* Must be set to true if retain_header is being passed */
- uint8_t retain_header;
- /* This field indicates if the driver installing the rule has
- * turned on the "retain header" bit. If this is true, the
- * header that is removed by IPA is reinserted after the
- * packet processing is completed.
- */
-
- /* Optional */
- /* Embedded call Mux Id */
- uint8_t embedded_call_mux_id_valid;
- /**< Must be set to true if embedded_call_mux_id is being passed */
- uint32_t embedded_call_mux_id;
- /* This identifies one of the many calls that have been originated
- * on the embedded pipe. This is how we identify the PDN gateway
- * to which traffic from the source pipe has to flow.
- */
-
- /* Optional */
- /* Total number of IPv4 filters in the filter index list */
- uint8_t num_ipv4_filters_valid;
- /* Must be set to true if num_ipv4_filters is being passed */
- uint32_t num_ipv4_filters;
- /* Number of IPv4 rules included in filter index list */
-
- /* Optional */
- /* Total number of IPv6 filters in the filter index list */
- uint8_t num_ipv6_filters_valid;
- /* Must be set to true if num_ipv6_filters is being passed */
- uint32_t num_ipv6_filters;
- /* Number of IPv6 rules included in filter index list */
-
- /* Optional */
- /* Start index on IPv4 filters installed on source pipe */
- uint8_t start_ipv4_filter_idx_valid;
- /* Must be set to true if start_ipv4_filter_idx is being passed */
- uint32_t start_ipv4_filter_idx;
- /* Start index of IPv4 rules in filter index list */
-
- /* Optional */
- /* Start index on IPv6 filters installed on source pipe */
- uint8_t start_ipv6_filter_idx_valid;
- /* Must be set to true if start_ipv6_filter_idx is being passed */
- uint32_t start_ipv6_filter_idx;
- /* Start index of IPv6 rules in filter index list */
-
- /* Optional */
- /* List of Rule Ids */
- uint8_t rule_id_valid;
- /* Must be set to true if rule_id is being passed */
- uint32_t rule_id_len;
- /* Must be set to # of elements in rule_id */
- uint32_t rule_id[QMI_IPA_MAX_FILTERS_V01];
- /*
- * Provides the list of Rule Ids of rules added in IPA on the given
- * source pipe index. If the install_status TLV indicates a
- * failure, the Rule Ids in this list must be set to a reserved
- * index (255).
- */
-
- /* Optional */
- /* List of destination pipe IDs. */
- uint8_t dst_pipe_id_valid;
- /* Must be set to true if dst_pipe_id is being passed. */
- uint32_t dst_pipe_id_len;
- /* Must be set to # of elements in dst_pipe_id. */
- uint32_t dst_pipe_id[QMI_IPA_MAX_CLIENT_DST_PIPES_V01];
- /* Provides the list of destination pipe IDs for a source pipe. */
-
-}; /* Message */
-
-/* Response Message; This is the message that is exchanged between the
- * control point and the service in order to notify the remote driver
- * of the installation of the filter rule supplied earlier by the
- * remote driver.
- */
-struct ipa_fltr_installed_notif_resp_msg_v01 {
- /* Mandatory */
- /* Result Code */
- struct ipa_qmi_response_type_v01 resp;
- /* Standard response type */
-}; /* Message */
-
-/* Request Message; Notifies the remote driver of the need to clear the data
- * path to prevent the IPA from being blocked at the head of the processing
- * pipeline
- */
-struct ipa_enable_force_clear_datapath_req_msg_v01 {
- /* Mandatory */
- /* Pipe Mask */
- uint32_t source_pipe_bitmask;
- /* Set of consumer (source) pipes that must be clear of
- * active data transfers.
- */
-
- /* Mandatory */
- /* Request ID */
- uint32_t request_id;
- /* Identifies the ID of the request that is sent to the server
- * The same request ID is used in the message to remove the force_clear
- * request. The server is expected to keep track of the request ID and
- * the source_pipe_bitmask so that it can revert as needed
- */
-
- /* Optional */
- /* Source Throttle State */
- uint8_t throttle_source_valid;
- /* Must be set to true if throttle_source is being passed */
- uint8_t throttle_source;
- /* Specifies whether the server is to throttle the data from
- * these consumer (source) pipes after clearing the exisiting
- * data present in the IPA that were pulled from these pipes
- * The server is expected to put all the source pipes in the
- * source_pipe_bitmask in the same state
- */
-}; /* Message */
-
-/* Response Message; Notifies the remote driver of the need to clear the
- * data path to prevent the IPA from being blocked at the head of the
- * processing pipeline
- */
-struct ipa_enable_force_clear_datapath_resp_msg_v01 {
- /* Mandatory */
- /* Result Code */
- struct ipa_qmi_response_type_v01 resp;
- /* Standard response type */
-}; /* Message */
-
-/* Request Message; Notifies the remote driver that the forceful clearing
- * of the data path can be lifted
- */
-struct ipa_disable_force_clear_datapath_req_msg_v01 {
- /* Mandatory */
- /* Request ID */
- uint32_t request_id;
- /* Identifies the request that was sent to the server to
- * forcibly clear the data path. This request simply undoes
- * the operation done in that request
- */
-}; /* Message */
-
-/* Response Message; Notifies the remote driver that the forceful clearing
- * of the data path can be lifted
- */
-struct ipa_disable_force_clear_datapath_resp_msg_v01 {
- /* Mandatory */
- /* Result Code */
- struct ipa_qmi_response_type_v01 resp;
- /* Standard response type */
-}; /* Message */
-
-enum ipa_peripheral_speed_enum_v01 {
- IPA_PERIPHERAL_SPEED_ENUM_MIN_ENUM_VAL_V01 = -2147483647,
- /* To force a 32 bit signed enum. Do not change or use */
- QMI_IPA_PER_USB_FS_V01 = 1,
- /* Full-speed USB connection */
- QMI_IPA_PER_USB_HS_V01 = 2,
- /* High-speed USB connection */
- QMI_IPA_PER_USB_SS_V01 = 3,
- /* Super-speed USB connection */
- QMI_IPA_PER_WLAN_V01 = 4,
- /* WLAN connection */
- IPA_PERIPHERAL_SPEED_ENUM_MAX_ENUM_VAL_V01 = 2147483647
- /* To force a 32 bit signed enum. Do not change or use*/
-};
-
-enum ipa_pipe_mode_enum_v01 {
- IPA_PIPE_MODE_ENUM_MIN_ENUM_VAL_V01 = -2147483647,
- /* To force a 32 bit signed enum. Do not change or use */
- QMI_IPA_PIPE_MODE_HW_V01 = 1,
- /* Pipe is connected with a hardware block */
- QMI_IPA_PIPE_MODE_SW_V01 = 2,
- /* Pipe is controlled by the software */
- IPA_PIPE_MODE_ENUM_MAX_ENUM_VAL_V01 = 2147483647
- /* To force a 32 bit signed enum. Do not change or use */
-};
-
-enum ipa_peripheral_type_enum_v01 {
- IPA_PERIPHERAL_TYPE_ENUM_MIN_ENUM_VAL_V01 = -2147483647,
- /* To force a 32 bit signed enum. Do not change or use */
- QMI_IPA_PERIPHERAL_USB_V01 = 1,
- /* Specifies a USB peripheral */
- QMI_IPA_PERIPHERAL_HSIC_V01 = 2,
- /* Specifies an HSIC peripheral */
- QMI_IPA_PERIPHERAL_PCIE_V01 = 3,
- /* Specifies a PCIe peripheral */
- IPA_PERIPHERAL_TYPE_ENUM_MAX_ENUM_VAL_V01 = 2147483647
- /* To force a 32 bit signed enum. Do not change or use */
-};
-
-struct ipa_config_req_msg_v01 {
- /* Optional */
- /* Peripheral Type */
- uint8_t peripheral_type_valid;
- /* Must be set to true if peripheral_type is being passed */
- enum ipa_peripheral_type_enum_v01 peripheral_type;
- /* Informs the remote driver about the perhipheral for
- * which this configuration information is relevant. Values:
- * - QMI_IPA_PERIPHERAL_USB (1) -- Specifies a USB peripheral
- * - QMI_IPA_PERIPHERAL_HSIC(2) -- Specifies an HSIC peripheral
- * - QMI_IPA_PERIPHERAL_PCIE(3) -- Specifies a PCIe peripheral
- */
-
- /* Optional */
- /* HW Deaggregation Support */
- uint8_t hw_deaggr_supported_valid;
- /* Must be set to true if hw_deaggr_supported is being passed */
- uint8_t hw_deaggr_supported;
- /* Informs the remote driver whether the local IPA driver
- * allows de-aggregation to be performed in the hardware
- */
-
- /* Optional */
- /* Maximum Aggregation Frame Size */
- uint8_t max_aggr_frame_size_valid;
- /* Must be set to true if max_aggr_frame_size is being passed */
- uint32_t max_aggr_frame_size;
- /* Specifies the maximum size of the aggregated frame that
- * the remote driver can expect from this execution environment
- * - Valid range: 128 bytes to 32768 bytes
- */
-
- /* Optional */
- /* IPA Ingress Pipe Mode */
- uint8_t ipa_ingress_pipe_mode_valid;
- /* Must be set to true if ipa_ingress_pipe_mode is being passed */
-
- enum ipa_pipe_mode_enum_v01 ipa_ingress_pipe_mode;
- /* Indicates to the remote driver if the ingress pipe into the
- * IPA is in direct connection with another hardware block or
- * if the producer of data to this ingress pipe is a software
- * module. Values:
- * -QMI_IPA_PIPE_MODE_HW(1) --Pipe is connected with hardware block
- * -QMI_IPA_PIPE_MODE_SW(2) --Pipe is controlled by the software
- */
-
- /* Optional */
- /* Peripheral Speed Info */
- uint8_t peripheral_speed_info_valid;
- /* Must be set to true if peripheral_speed_info is being passed */
-
- enum ipa_peripheral_speed_enum_v01 peripheral_speed_info;
- /* Indicates the speed that the peripheral connected to the IPA supports
- * Values:
- * - QMI_IPA_PER_USB_FS (1) -- Full-speed USB connection
- * - QMI_IPA_PER_USB_HS (2) -- High-speed USB connection
- * - QMI_IPA_PER_USB_SS (3) -- Super-speed USB connection
- * - QMI_IPA_PER_WLAN (4) -- WLAN connection
- */
-
- /* Optional */
- /* Downlink Accumulation Time limit */
- uint8_t dl_accumulation_time_limit_valid;
- /* Must be set to true if dl_accumulation_time_limit is being passed */
- uint32_t dl_accumulation_time_limit;
- /* Informs the remote driver about the time for which data
- * is accumulated in the downlink direction before it is pushed into the
- * IPA (downlink is with respect to the WWAN air interface)
- * - Units: milliseconds
- * - Maximum value: 255
- */
-
- /* Optional */
- /* Downlink Accumulation Packet limit */
- uint8_t dl_accumulation_pkt_limit_valid;
- /* Must be set to true if dl_accumulation_pkt_limit is being passed */
- uint32_t dl_accumulation_pkt_limit;
- /* Informs the remote driver about the number of packets
- * that are to be accumulated in the downlink direction before it is
- * pushed into the IPA - Maximum value: 1023
- */
-
- /* Optional */
- /* Downlink Accumulation Byte Limit */
- uint8_t dl_accumulation_byte_limit_valid;
- /* Must be set to true if dl_accumulation_byte_limit is being passed */
- uint32_t dl_accumulation_byte_limit;
- /* Inform the remote driver about the number of bytes
- * that are to be accumulated in the downlink direction before it
- * is pushed into the IPA - Maximum value: TBD
- */
-
- /* Optional */
- /* Uplink Accumulation Time Limit */
- uint8_t ul_accumulation_time_limit_valid;
- /* Must be set to true if ul_accumulation_time_limit is being passed */
- uint32_t ul_accumulation_time_limit;
- /* Inform thes remote driver about the time for which data
- * is to be accumulated in the uplink direction before it is pushed into
- * the IPA (downlink is with respect to the WWAN air interface).
- * - Units: milliseconds
- * - Maximum value: 255
- */
-
- /* Optional */
- /* HW Control Flags */
- uint8_t hw_control_flags_valid;
- /* Must be set to true if hw_control_flags is being passed */
- uint32_t hw_control_flags;
- /* Informs the remote driver about the hardware control flags:
- * - Bit 0: IPA_HW_FLAG_HALT_SYSTEM_ON_NON_TERMINAL_FAILURE --
- * Indicates to the hardware that it must not continue with
- * any subsequent operation even if the failure is not terminal
- * - Bit 1: IPA_HW_FLAG_NO_REPORT_MHI_CHANNEL_ERORR --
- * Indicates to the hardware that it is not required to report
- * channel errors to the host.
- * - Bit 2: IPA_HW_FLAG_NO_REPORT_MHI_CHANNEL_WAKE_UP --
- * Indicates to the hardware that it is not required to generate
- * wake-up events to the host.
- * - Bit 4: IPA_HW_FLAG_WORK_OVER_DDR --
- * Indicates to the hardware that it is accessing addresses in
- * the DDR and not over PCIe
- * - Bit 5: IPA_HW_FLAG_INTERRUPT_MODE_CTRL_FLAG --
- * Indicates whether the device must
- * raise an event to let the host know that it is going into an
- * interrupt mode (no longer polling for data/buffer availability)
- */
-
- /* Optional */
- /* Uplink MSI Event Threshold */
- uint8_t ul_msi_event_threshold_valid;
- /* Must be set to true if ul_msi_event_threshold is being passed */
- uint32_t ul_msi_event_threshold;
- /* Informs the remote driver about the threshold that will
- * cause an interrupt (MSI) to be fired to the host. This ensures
- * that the remote driver does not accumulate an excesive number of
- * events before firing an interrupt.
- * This threshold is applicable for data moved in the UL direction.
- * - Maximum value: 65535
- */
-
- /* Optional */
- /* Downlink MSI Event Threshold */
- uint8_t dl_msi_event_threshold_valid;
- /* Must be set to true if dl_msi_event_threshold is being passed */
- uint32_t dl_msi_event_threshold;
- /* Informs the remote driver about the threshold that will
- * cause an interrupt (MSI) to be fired to the host. This ensures
- * that the remote driver does not accumulate an excesive number of
- * events before firing an interrupt
- * This threshold is applicable for data that is moved in the
- * DL direction - Maximum value: 65535
- */
-
- /* Optional */
- /* Uplink Fifo Size */
- uint8_t ul_fifo_size_valid;
- /* Must be set to true if ul_fifo_size is being passed */
- uint32_t ul_fifo_size;
- /*
- * Informs the remote driver about the total Uplink xDCI
- * buffer size that holds the complete aggregated frame
- * or BAM data fifo size of the peripheral channel/pipe(in Bytes).
- * This deprecates the max_aggr_frame_size field. This TLV
- * deprecates max_aggr_frame_size TLV from version 1.9 onwards
- * and the max_aggr_frame_size TLV will be ignored in the presence
- * of this TLV.
- */
-
- /* Optional */
- /* Downlink Fifo Size */
- uint8_t dl_fifo_size_valid;
- /* Must be set to true if dl_fifo_size is being passed */
- uint32_t dl_fifo_size;
- /*
- * Informs the remote driver about the total Downlink xDCI buffering
- * capacity or BAM data fifo size of the peripheral channel/pipe.
- * (In Bytes). dl_fifo_size = n * dl_buf_size. This deprecates the
- * max_aggr_frame_size field. If this value is set
- * max_aggr_frame_size is ignored.
- */
-
- /* Optional */
- /* Downlink Buffer Size */
- uint8_t dl_buf_size_valid;
- /* Must be set to true if dl_buf_size is being passed */
- uint32_t dl_buf_size;
- /* Informs the remote driver about the single xDCI buffer size.
- * This is applicable only in GSI mode(in Bytes).\n
- */
-}; /* Message */
-
-/* Response Message; Notifies the remote driver of the configuration
- * information
- */
-struct ipa_config_resp_msg_v01 {
- /* Mandatory */
- /* Result Code */
- struct ipa_qmi_response_type_v01 resp;
- /**< Standard response type.*/
-}; /* Message */
-
-enum ipa_stats_type_enum_v01 {
- IPA_STATS_TYPE_ENUM_MIN_ENUM_VAL_V01 = -2147483647,
- /* To force a 32 bit signed enum. Do not change or use */
- QMI_IPA_STATS_TYPE_INVALID_V01 = 0,
- /* Invalid stats type identifier */
- QMI_IPA_STATS_TYPE_PIPE_V01 = 1,
- /* Pipe stats type */
- QMI_IPA_STATS_TYPE_FILTER_RULES_V01 = 2,
- /* Filter rule stats type */
- IPA_STATS_TYPE_ENUM_MAX_ENUM_VAL_V01 = 2147483647
- /* To force a 32 bit signed enum. Do not change or use */
-};
-
-struct ipa_pipe_stats_info_type_v01 {
- uint32_t pipe_index;
- /* Pipe index for statistics to be retrieved. */
-
- uint64_t num_ipv4_packets;
- /* Accumulated number of IPv4 packets over this pipe. */
-
- uint64_t num_ipv4_bytes;
- /* Accumulated number of IPv4 bytes over this pipe. */
-
- uint64_t num_ipv6_packets;
- /* Accumulated number of IPv6 packets over this pipe. */
-
- uint64_t num_ipv6_bytes;
- /* Accumulated number of IPv6 bytes over this pipe. */
-};
-
-struct ipa_stats_type_filter_rule_v01 {
- uint32_t filter_rule_index;
- /* Filter rule index for statistics to be retrieved. */
-
- uint64_t num_packets;
- /* Accumulated number of packets over this filter rule. */
-};
-
-/* Request Message; Retrieve the data statistics collected on modem
- * IPA driver.
- */
-struct ipa_get_data_stats_req_msg_v01 {
- /* Mandatory */
- /* Stats Type */
- enum ipa_stats_type_enum_v01 ipa_stats_type;
- /* Indicates the type of statistics to be retrieved. */
-
- /* Optional */
- /* Reset Statistics */
- uint8_t reset_stats_valid;
- /* Must be set to true if reset_stats is being passed */
- uint8_t reset_stats;
- /* Option to reset the specific type of data statistics
- * currently collected.
- */
-}; /* Message */
-
-/* Response Message; Retrieve the data statistics collected
- * on modem IPA driver.
- */
-struct ipa_get_data_stats_resp_msg_v01 {
- /* Mandatory */
- /* Result Code */
- struct ipa_qmi_response_type_v01 resp;
- /* Standard response type. */
-
- /* Optional */
- /* Stats Type */
- uint8_t ipa_stats_type_valid;
- /* Must be set to true if ipa_stats_type is passed */
- enum ipa_stats_type_enum_v01 ipa_stats_type;
- /* Indicates the type of statistics that are retrieved. */
-
- /* Optional */
- /* Uplink Source Pipe Statistics List */
- uint8_t ul_src_pipe_stats_list_valid;
- /* Must be set to true if ul_src_pipe_stats_list is being passed */
- uint32_t ul_src_pipe_stats_list_len;
- /* Must be set to # of elements in ul_src_pipe_stats_list */
- struct ipa_pipe_stats_info_type_v01
- ul_src_pipe_stats_list[QMI_IPA_MAX_PIPES_V01];
- /* List of all Uplink pipe statistics that are retrieved. */
-
- /* Optional */
- /* Downlink Destination Pipe Statistics List */
- uint8_t dl_dst_pipe_stats_list_valid;
- /* Must be set to true if dl_dst_pipe_stats_list is being passed */
- uint32_t dl_dst_pipe_stats_list_len;
- /* Must be set to # of elements in dl_dst_pipe_stats_list */
- struct ipa_pipe_stats_info_type_v01
- dl_dst_pipe_stats_list[QMI_IPA_MAX_PIPES_V01];
- /* List of all Downlink pipe statistics that are retrieved. */
-
- /* Optional */
- /* Downlink Filter Rule Stats List */
- uint8_t dl_filter_rule_stats_list_valid;
- /* Must be set to true if dl_filter_rule_stats_list is being passed */
- uint32_t dl_filter_rule_stats_list_len;
- /* Must be set to # of elements in dl_filter_rule_stats_list */
- struct ipa_stats_type_filter_rule_v01
- dl_filter_rule_stats_list[QMI_IPA_MAX_FILTERS_V01];
- /* List of all Downlink filter rule statistics retrieved. */
-}; /* Message */
-
-struct ipa_apn_data_stats_info_type_v01 {
- uint32_t mux_id;
- /* Indicates the MUX ID associated with the APN for which the data
- * usage statistics is queried
- */
-
- uint64_t num_ul_packets;
- /* Accumulated number of uplink packets corresponding to
- * this Mux ID
- */
-
- uint64_t num_ul_bytes;
- /* Accumulated number of uplink bytes corresponding to
- * this Mux ID
- */
-
- uint64_t num_dl_packets;
- /* Accumulated number of downlink packets corresponding
- * to this Mux ID
- */
-
- uint64_t num_dl_bytes;
- /* Accumulated number of downlink bytes corresponding to
- * this Mux ID
- */
-}; /* Type */
-
-/* Request Message; Retrieve the APN data statistics collected from modem */
-struct ipa_get_apn_data_stats_req_msg_v01 {
- /* Optional */
- /* Mux ID List */
- uint8_t mux_id_list_valid;
- /* Must be set to true if mux_id_list is being passed */
- uint32_t mux_id_list_len;
- /* Must be set to # of elements in mux_id_list */
- uint32_t mux_id_list[QMI_IPA_MAX_APN_V01];
- /* The list of MUX IDs associated with APNs for which the data usage
- * statistics is being retrieved
- */
-}; /* Message */
-
-/* Response Message; Retrieve the APN data statistics collected from modem */
-struct ipa_get_apn_data_stats_resp_msg_v01 {
- /* Mandatory */
- /* Result Code */
- struct ipa_qmi_response_type_v01 resp;
- /* Standard response type.*/
-
- /* Optional */
- /* APN Data Statistics List */
- uint8_t apn_data_stats_list_valid;
- /* Must be set to true if apn_data_stats_list is being passed */
- uint32_t apn_data_stats_list_len;
- /* Must be set to # of elements in apn_data_stats_list */
- struct ipa_apn_data_stats_info_type_v01
- apn_data_stats_list[QMI_IPA_MAX_APN_V01];
- /* List of APN data retrieved as per request on mux_id.
- * For now, only one APN monitoring is supported on modem driver.
- * Making this as list for expandability to support more APNs in future.
- */
-}; /* Message */
-
-struct ipa_data_usage_quota_info_type_v01 {
- uint32_t mux_id;
- /* Indicates the MUX ID associated with the APN for which the data usage
- * quota needs to be set
- */
-
- uint64_t num_Mbytes;
- /* Number of Mega-bytes of quota value to be set on this APN associated
- * with this Mux ID.
- */
-}; /* Type */
-
-/* Request Message; Master driver sets a data usage quota value on
- * modem driver
- */
-struct ipa_set_data_usage_quota_req_msg_v01 {
- /* Optional */
- /* APN Quota List */
- uint8_t apn_quota_list_valid;
- /* Must be set to true if apn_quota_list is being passed */
- uint32_t apn_quota_list_len;
- /* Must be set to # of elements in apn_quota_list */
- struct ipa_data_usage_quota_info_type_v01
- apn_quota_list[QMI_IPA_MAX_APN_V01];
- /* The list of APNs on which a data usage quota to be set on modem
- * driver. For now, only one APN monitoring is supported on modem
- * driver. Making this as list for expandability to support more
- * APNs in future.
- */
-}; /* Message */
-
-/* Response Message; Master driver sets a data usage on modem driver. */
-struct ipa_set_data_usage_quota_resp_msg_v01 {
- /* Mandatory */
- /* Result Code */
- struct ipa_qmi_response_type_v01 resp;
- /* Standard response type.*/
-}; /* Message */
-
-/* Indication Message; Modem driver sends this indication to master
- * driver when the data usage quota is reached
- */
-struct ipa_data_usage_quota_reached_ind_msg_v01 {
- /* Mandatory */
- /* APN Quota List */
- struct ipa_data_usage_quota_info_type_v01 apn;
- /* This message indicates which APN has the previously set quota
- * reached. For now, only one APN monitoring is supported on modem
- * driver.
- */
-}; /* Message */
-
-/* Request Message; Master driver request modem driver to terminate
- * the current data usage quota monitoring session.
- */
-struct ipa_stop_data_usage_quota_req_msg_v01 {
- /* This element is a placeholder to prevent the declaration of
- * an empty struct. DO NOT USE THIS FIELD UNDER ANY CIRCUMSTANCE
- */
- char __placeholder;
-}; /* Message */
-
-/* Response Message; Master driver request modem driver to terminate
- * the current quota monitoring session.
- */
-struct ipa_stop_data_usage_quota_resp_msg_v01 {
- /* Mandatory */
- /* Result Code */
- struct ipa_qmi_response_type_v01 resp;
- /**< Standard response type.*/
-}; /* Message */
-
-/* Request Message; Request from Modem IPA driver to set DPL peripheral pipe */
-struct ipa_install_fltr_rule_req_ex_msg_v01 {
-
- /* Optional */
- /* Extended Filter Specification */
- uint8_t filter_spec_ex_list_valid;
- uint32_t filter_spec_ex_list_len;
- struct ipa_filter_spec_ex_type_v01
- filter_spec_ex_list[QMI_IPA_MAX_FILTERS_EX_V01];
- /* List of filter specifications of filters that must be installed in
- * the IPAv3.x hardware.
- * The driver installing these rules must do so in the same order as
- * specified in this list.
- */
-
- /* Optional */
- /* Pipe Index to Install Rule */
- uint8_t source_pipe_index_valid;
- uint32_t source_pipe_index;
- /* Pipe index to install the filter rule.
- * The requester may not always know the pipe indices. If not specified,
- * the receiver must install this rule on all pipes that it controls,
- * through which data may be fed into the IPA.
- */
-
- /* Optional */
- /* Total Number of IPv4 Filters in the Filter Spec List */
- uint8_t num_ipv4_filters_valid;
- uint32_t num_ipv4_filters;
- /* Number of IPv4 rules included in the filter specification list. */
-
- /* Optional */
- /* Total Number of IPv6 Filters in the Filter Spec List */
- uint8_t num_ipv6_filters_valid;
- uint32_t num_ipv6_filters;
- /* Number of IPv6 rules included in the filter specification list. */
-
- /* Optional */
- /* List of XLAT Filter Indices in the Filter Spec List */
- uint8_t xlat_filter_indices_list_valid;
- uint32_t xlat_filter_indices_list_len;
- uint32_t xlat_filter_indices_list[QMI_IPA_MAX_FILTERS_EX_V01];
- /* List of XLAT filter indices.
- * Filter rules at specified indices must be modified by the
- * receiver if the PDN is XLAT before installing them on the associated
- * IPA consumer pipe.
- */
-}; /* Message */
-
-/* Response Message; Requests installation of filtering rules in the hardware
- * block on the remote side.
- */
-struct ipa_install_fltr_rule_resp_ex_msg_v01 {
- /* Mandatory */
- /* Result Code */
- struct ipa_qmi_response_type_v01 resp;
- /* Standard response type.
- * Standard response type. Contains the following data members:
- * - qmi_result_type -- QMI_RESULT_SUCCESS or QMI_RESULT_FAILURE
- * - qmi_error_type -- Error code. Possible error code values are
- * described in the error codes
- * section of each message
- * definition.
- */
-
- /* Optional */
- /* Rule ID List */
- uint8_t rule_id_valid;
- uint32_t rule_id_len;
- uint32_t rule_id[QMI_IPA_MAX_FILTERS_EX_V01];
- /* List of rule IDs returned to the control point.
- * Any further reference to the rule is done using the filter rule ID
- * specified in this list.
- */
-}; /* Message */
-
-/*
- * Request Message; Requests the modem IPA driver to enable or
- * disable collection of per client statistics.
- */
-struct ipa_enable_per_client_stats_req_msg_v01 {
-
- /* Mandatory */
- /* Collect statistics per client; */
- uint8_t enable_per_client_stats;
- /*
- * Indicates whether to start or stop collecting
- * per client statistics.
- */
-}; /* Message */
-
-/*
- * Response Message; Requests the modem IPA driver to enable or disable
- * collection of per client statistics.
- */
-struct ipa_enable_per_client_stats_resp_msg_v01 {
-
- /* Mandatory */
- /* Result Code */
- struct ipa_qmi_response_type_v01 resp;
- /* Standard response type. */
-}; /* Message */
-
-struct ipa_per_client_stats_info_type_v01 {
-
- uint32_t client_id;
- /*
- * Id of the client on APPS processor side for which Modem processor
- * needs to send uplink/downlink statistics.
- */
-
- uint32_t src_pipe_id;
- /*
- * IPA consumer pipe on which client on APPS side sent uplink
- * data to modem.
- */
-
- uint64_t num_ul_ipv4_bytes;
- /*
- * Accumulated number of uplink IPv4 bytes for a client.
- */
-
- uint64_t num_ul_ipv6_bytes;
- /*
- * Accumulated number of uplink IPv6 bytes for a client.
- */
-
- uint64_t num_dl_ipv4_bytes;
- /*
- * Accumulated number of downlink IPv4 bytes for a client.
- */
-
- uint64_t num_dl_ipv6_bytes;
- /*
- * Accumulated number of downlink IPv6 byes for a client.
- */
-
-
- uint32_t num_ul_ipv4_pkts;
- /*
- * Accumulated number of uplink IPv4 packets for a client.
- */
-
- uint32_t num_ul_ipv6_pkts;
- /*
- * Accumulated number of uplink IPv6 packets for a client.
- */
-
- uint32_t num_dl_ipv4_pkts;
- /*
- * Accumulated number of downlink IPv4 packets for a client.
- */
-
- uint32_t num_dl_ipv6_pkts;
- /*
- * Accumulated number of downlink IPv6 packets for a client.
- */
-}; /* Type */
-
-/*
- * Request Message; Requests the modem IPA driver to provide statistics
- * for a givenclient.
- */
-struct ipa_get_stats_per_client_req_msg_v01 {
-
- /* Mandatory */
- /* Client id */
- uint32_t client_id;
- /*
- * Id of the client on APPS processor side for which Modem processor
- * needs to send uplink/downlink statistics. if client id is specified
- * as 0xffffffff, then Q6 will send the stats for all the clients of
- * the specified source pipe.
- */
-
- /* Mandatory */
- /* Source pipe id */
- uint32_t src_pipe_id;
- /*
- * IPA consumer pipe on which client on APPS side sent uplink
- * data to modem. In future, this implementation can be extended
- * to provide 0xffffffff as the source pipe id, where Q6 will send
- * the stats of all the clients across all different tethered-pipes.
- */
-
- /* Optional */
- /* Reset client statistics. */
- uint8_t reset_stats_valid;
- /* Must be set to true if reset_stats is being passed. */
- uint8_t reset_stats;
- /*
- * Option to reset the statistics currently collected by modem for this
- * particular client.
- */
-}; /* Message */
-
-/*
- * Response Message; Requests the modem IPA driver to provide statistics
- * for a given client.
- */
-struct ipa_get_stats_per_client_resp_msg_v01 {
-
- /* Mandatory */
- /* Result Code */
- struct ipa_qmi_response_type_v01 resp;
- /* Standard response type. */
-
- /* Optional */
- /* Per clients Statistics List */
- uint8_t per_client_stats_list_valid;
- /* Must be set to true if per_client_stats_list is being passed. */
- uint32_t per_client_stats_list_len;
- /* Must be set to # of elements in per_client_stats_list. */
- struct ipa_per_client_stats_info_type_v01
- per_client_stats_list[QMI_IPA_MAX_PER_CLIENTS_V01];
- /*
- * List of all per client statistics that are retrieved.
- */
-}; /* Message */
-
-struct ipa_ul_firewall_rule_type_v01 {
-
- enum ipa_ip_type_enum_v01 ip_type;
- /*
- * IP type for which this rule is applicable.
- * The driver must identify the filter table (v6 or v4), and this
- * field is essential for that. Values:
- * - QMI_IPA_IP_TYPE_INVALID (0) -- Invalid IP type identifier
- * - QMI_IPA_IP_TYPE_V4 (1) -- IPv4 type
- * - QMI_IPA_IP_TYPE_V6 (2) -- IPv6 type
- */
-
- struct ipa_filter_rule_type_v01 filter_rule;
- /*
- * Rules in the filter specification. These rules are the
- * ones that are matched against fields in the packet.
- * Currently we only send IPv6 whitelist rules to Q6.
- */
-}; /* Type */
-
-/*
- * Request Message; Requestes remote IPA driver to install uplink
- * firewall rules.
- */
-struct ipa_configure_ul_firewall_rules_req_msg_v01 {
-
- /* Optional */
- /* Uplink Firewall Specification */
- uint32_t firewall_rules_list_len;
- /* Must be set to # of elements in firewall_rules_list. */
- struct ipa_ul_firewall_rule_type_v01
- firewall_rules_list[QMI_IPA_MAX_UL_FIREWALL_RULES_V01];
- /*
- * List of uplink firewall specifications of filters that must be
- * installed.
- */
-
- uint32_t mux_id;
- /*
- * QMAP Mux ID. As a part of the QMAP protocol,
- * several data calls may be multiplexed over the same physical
- * transport channel. This identifier is used to identify one
- * such data call. The maximum value for this identifier is 255.
- */
-
- /* Optional */
- uint8_t disable_valid;
- /* Must be set to true if enable is being passed. */
- uint8_t disable;
- /*
- * Indicates whether uplink firewall needs to be enabled or disabled.
- */
-
- /* Optional */
- uint8_t are_blacklist_filters_valid;
- /* Must be set to true if are_blacklist_filters is being passed. */
- uint8_t are_blacklist_filters;
- /*
- * Indicates whether the filters received as part of this message are
- * blacklist filters. i.e. drop uplink packets matching these rules.
- */
-}; /* Message */
-
-/*
- * Response Message; Requestes remote IPA driver to install
- * uplink firewall rules.
- */
-struct ipa_configure_ul_firewall_rules_resp_msg_v01 {
-
- /* Mandatory */
- /* Result Code */
- struct ipa_qmi_response_type_v01 resp;
- /*
- * Standard response type.
- * Standard response type. Contains the following data members:
- * qmi_result_type -- QMI_RESULT_SUCCESS or QMI_RESULT_FAILURE
- * qmi_error_type -- Error code. Possible error code values are
- * described in the error codes section of each message definition.
- */
-}; /* Message */
-
-enum ipa_ul_firewall_status_enum_v01 {
- IPA_UL_FIREWALL_STATUS_ENUM_MIN_ENUM_VAL_V01 = -2147483647,
- /* To force a 32 bit signed enum. Do not change or use*/
- QMI_IPA_UL_FIREWALL_STATUS_SUCCESS_V01 = 0,
- /* Indicates that the uplink firewall rules
- * are configured successfully.
- */
- QMI_IPA_UL_FIREWALL_STATUS_FAILURE_V01 = 1,
- /* Indicates that the uplink firewall rules
- * are not configured successfully.
- */
- IPA_UL_FIREWALL_STATUS_ENUM_MAX_ENUM_VAL_V01 = 2147483647
- /* To force a 32 bit signed enum. Do not change or use*/
-};
-
-struct ipa_ul_firewall_config_result_type_v01 {
-
- enum ipa_ul_firewall_status_enum_v01 is_success;
- /*
- * Indicates whether the uplink firewall rules are configured
- * successfully.
- */
-
- uint32_t mux_id;
- /*
- * QMAP Mux ID. As a part of the QMAP protocol,
- * several data calls may be multiplexed over the same physical
- * transport channel. This identifier is used to identify one
- * such data call. The maximum value for this identifier is 255.
- */
-};
-
-/*
- * Indication Message; Requestes remote IPA driver to install
- * uplink firewall rules.
- */
-struct ipa_configure_ul_firewall_rules_ind_msg_v01 {
-
- struct ipa_ul_firewall_config_result_type_v01 result;
-}; /* Message */
-
-
-/*Service Message Definition*/
-#define QMI_IPA_INDICATION_REGISTER_REQ_V01 0x0020
-#define QMI_IPA_INDICATION_REGISTER_RESP_V01 0x0020
-#define QMI_IPA_INIT_MODEM_DRIVER_REQ_V01 0x0021
-#define QMI_IPA_INIT_MODEM_DRIVER_RESP_V01 0x0021
-#define QMI_IPA_MASTER_DRIVER_INIT_COMPLETE_IND_V01 0x0022
-#define QMI_IPA_INSTALL_FILTER_RULE_REQ_V01 0x0023
-#define QMI_IPA_INSTALL_FILTER_RULE_RESP_V01 0x0023
-#define QMI_IPA_FILTER_INSTALLED_NOTIF_REQ_V01 0x0024
-#define QMI_IPA_FILTER_INSTALLED_NOTIF_RESP_V01 0x0024
-#define QMI_IPA_ENABLE_FORCE_CLEAR_DATAPATH_REQ_V01 0x0025
-#define QMI_IPA_ENABLE_FORCE_CLEAR_DATAPATH_RESP_V01 0x0025
-#define QMI_IPA_DISABLE_FORCE_CLEAR_DATAPATH_REQ_V01 0x0026
-#define QMI_IPA_DISABLE_FORCE_CLEAR_DATAPATH_RESP_V01 0x0026
-#define QMI_IPA_CONFIG_REQ_V01 0x0027
-#define QMI_IPA_CONFIG_RESP_V01 0x0027
-#define QMI_IPA_DISABLE_LINK_LOW_PWR_STATE_REQ_V01 0x0028
-#define QMI_IPA_DISABLE_LINK_LOW_PWR_STATE_RESP_V01 0x0028
-#define QMI_IPA_ENABLE_LINK_LOW_PWR_STATE_REQ_V01 0x0029
-#define QMI_IPA_ENABLE_LINK_LOW_PWR_STATE_RESP_V01 0x0029
-#define QMI_IPA_GET_DATA_STATS_REQ_V01 0x0030
-#define QMI_IPA_GET_DATA_STATS_RESP_V01 0x0030
-#define QMI_IPA_GET_APN_DATA_STATS_REQ_V01 0x0031
-#define QMI_IPA_GET_APN_DATA_STATS_RESP_V01 0x0031
-#define QMI_IPA_SET_DATA_USAGE_QUOTA_REQ_V01 0x0032
-#define QMI_IPA_SET_DATA_USAGE_QUOTA_RESP_V01 0x0032
-#define QMI_IPA_DATA_USAGE_QUOTA_REACHED_IND_V01 0x0033
-#define QMI_IPA_STOP_DATA_USAGE_QUOTA_REQ_V01 0x0034
-#define QMI_IPA_STOP_DATA_USAGE_QUOTA_RESP_V01 0x0034
-#define QMI_IPA_INIT_MODEM_DRIVER_CMPLT_REQ_V01 0x0035
-#define QMI_IPA_INIT_MODEM_DRIVER_CMPLT_RESP_V01 0x0035
-#define QMI_IPA_INSTALL_FILTER_RULE_EX_REQ_V01 0x0037
-#define QMI_IPA_INSTALL_FILTER_RULE_EX_RESP_V01 0x0037
-#define QMI_IPA_ENABLE_PER_CLIENT_STATS_REQ_V01 0x0038
-#define QMI_IPA_ENABLE_PER_CLIENT_STATS_RESP_V01 0x0038
-#define QMI_IPA_GET_STATS_PER_CLIENT_REQ_V01 0x0039
-#define QMI_IPA_GET_STATS_PER_CLIENT_RESP_V01 0x0039
-#define QMI_IPA_INSTALL_UL_FIREWALL_RULES_REQ_V01 0x003A
-#define QMI_IPA_INSTALL_UL_FIREWALL_RULES_RESP_V01 0x003A
-#define QMI_IPA_INSTALL_UL_FIREWALL_RULES_IND_V01 0x003A
-
-/* add for max length*/
-#define QMI_IPA_INIT_MODEM_DRIVER_REQ_MAX_MSG_LEN_V01 162
-#define QMI_IPA_INIT_MODEM_DRIVER_RESP_MAX_MSG_LEN_V01 25
-#define QMI_IPA_INDICATION_REGISTER_REQ_MAX_MSG_LEN_V01 8
-#define QMI_IPA_INDICATION_REGISTER_RESP_MAX_MSG_LEN_V01 7
-#define QMI_IPA_INSTALL_FILTER_RULE_REQ_MAX_MSG_LEN_V01 22369
-#define QMI_IPA_INSTALL_FILTER_RULE_RESP_MAX_MSG_LEN_V01 783
-#define QMI_IPA_FILTER_INSTALLED_NOTIF_REQ_MAX_MSG_LEN_V01 870
-#define QMI_IPA_FILTER_INSTALLED_NOTIF_RESP_MAX_MSG_LEN_V01 7
-#define QMI_IPA_MASTER_DRIVER_INIT_COMPLETE_IND_MAX_MSG_LEN_V01 7
-#define QMI_IPA_DATA_USAGE_QUOTA_REACHED_IND_MAX_MSG_LEN_V01 15
-
-
-#define QMI_IPA_ENABLE_FORCE_CLEAR_DATAPATH_REQ_MAX_MSG_LEN_V01 18
-#define QMI_IPA_DISABLE_FORCE_CLEAR_DATAPATH_REQ_MAX_MSG_LEN_V01 7
-#define QMI_IPA_ENABLE_FORCE_CLEAR_DATAPATH_RESP_MAX_MSG_LEN_V01 7
-#define QMI_IPA_DISABLE_FORCE_CLEAR_DATAPATH_RESP_MAX_MSG_LEN_V01 7
-
-
-#define QMI_IPA_CONFIG_REQ_MAX_MSG_LEN_V01 102
-#define QMI_IPA_CONFIG_RESP_MAX_MSG_LEN_V01 7
-#define QMI_IPA_DISABLE_LINK_LOW_PWR_STATE_REQ_MAX_MSG_LEN_V01 18
-#define QMI_IPA_DISABLE_LINK_LOW_PWR_STATE_RESP_MAX_MSG_LEN_V01 7
-#define QMI_IPA_ENABLE_LINK_LOW_PWR_STATE_REQ_MAX_MSG_LEN_V01 7
-#define QMI_IPA_ENABLE_LINK_LOW_PWR_STATE_RESP_MAX_MSG_LEN_V01 7
-#define QMI_IPA_GET_DATA_STATS_REQ_MAX_MSG_LEN_V01 11
-#define QMI_IPA_GET_DATA_STATS_RESP_MAX_MSG_LEN_V01 2234
-#define QMI_IPA_GET_APN_DATA_STATS_REQ_MAX_MSG_LEN_V01 36
-#define QMI_IPA_GET_APN_DATA_STATS_RESP_MAX_MSG_LEN_V01 299
-#define QMI_IPA_SET_DATA_USAGE_QUOTA_REQ_MAX_MSG_LEN_V01 100
-#define QMI_IPA_SET_DATA_USAGE_QUOTA_RESP_MAX_MSG_LEN_V01 7
-#define QMI_IPA_STOP_DATA_USAGE_QUOTA_REQ_MAX_MSG_LEN_V01 0
-#define QMI_IPA_STOP_DATA_USAGE_QUOTA_RESP_MAX_MSG_LEN_V01 7
-
-#define QMI_IPA_INIT_MODEM_DRIVER_CMPLT_REQ_MAX_MSG_LEN_V01 4
-#define QMI_IPA_INIT_MODEM_DRIVER_CMPLT_RESP_MAX_MSG_LEN_V01 7
-
-#define QMI_IPA_INSTALL_FILTER_RULE_EX_REQ_MAX_MSG_LEN_V01 22685
-#define QMI_IPA_INSTALL_FILTER_RULE_EX_RESP_MAX_MSG_LEN_V01 523
-
-#define QMI_IPA_ENABLE_PER_CLIENT_STATS_REQ_MAX_MSG_LEN_V01 4
-#define QMI_IPA_ENABLE_PER_CLIENT_STATS_RESP_MAX_MSG_LEN_V01 7
-
-#define QMI_IPA_GET_STATS_PER_CLIENT_REQ_MAX_MSG_LEN_V01 18
-#define QMI_IPA_GET_STATS_PER_CLIENT_RESP_MAX_MSG_LEN_V01 3595
-
-#define QMI_IPA_INSTALL_UL_FIREWALL_RULES_REQ_MAX_MSG_LEN_V01 9875
-#define QMI_IPA_INSTALL_UL_FIREWALL_RULES_RESP_MAX_MSG_LEN_V01 7
-#define QMI_IPA_INSTALL_UL_FIREWALL_RULES_IND_MAX_MSG_LEN_V01 11
-/* Service Object Accessor */
-
-#endif/* IPA_QMI_SERVICE_V01_H */
diff --git a/sdm710/original-kernel-headers/linux/mdss_rotator.h b/sdm710/original-kernel-headers/linux/mdss_rotator.h
deleted file mode 100644
index 23f0ff48..00000000
--- a/sdm710/original-kernel-headers/linux/mdss_rotator.h
+++ /dev/null
@@ -1,144 +0,0 @@
-#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_*/
diff --git a/sdm710/original-kernel-headers/linux/mfd/msm-adie-codec.h b/sdm710/original-kernel-headers/linux/mfd/msm-adie-codec.h
deleted file mode 100644
index 3f523c00..00000000
--- a/sdm710/original-kernel-headers/linux/mfd/msm-adie-codec.h
+++ /dev/null
@@ -1,147 +0,0 @@
-#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
diff --git a/sdm710/original-kernel-headers/linux/mfd/wcd9xxx/wcd9320_registers.h b/sdm710/original-kernel-headers/linux/mfd/wcd9xxx/wcd9320_registers.h
deleted file mode 100644
index 63ab6241..00000000
--- a/sdm710/original-kernel-headers/linux/mfd/wcd9xxx/wcd9320_registers.h
+++ /dev/null
@@ -1,1399 +0,0 @@
-#ifndef WCD9320_REGISTERS_H
-#define WCD9320_REGISTERS_H
-
-#include <linux/mfd/wcd9xxx/wcd9xxx_registers.h>
-
-#define TAIKO_A_CHIP_CTL WCD9XXX_A_CHIP_CTL
-#define TAIKO_A_CHIP_CTL__POR WCD9XXX_A_CHIP_CTL__POR
-#define TAIKO_A_CHIP_STATUS WCD9XXX_A_CHIP_STATUS
-#define TAIKO_A_CHIP_STATUS__POR WCD9XXX_A_CHIP_STATUS__POR
-#define TAIKO_A_CHIP_ID_BYTE_0 WCD9XXX_A_CHIP_ID_BYTE_0
-#define TAIKO_A_CHIP_ID_BYTE_0__POR WCD9XXX_A_CHIP_ID_BYTE_0__POR
-#define TAIKO_A_CHIP_ID_BYTE_1 WCD9XXX_A_CHIP_ID_BYTE_1
-#define TAIKO_A_CHIP_ID_BYTE_1__POR WCD9XXX_A_CHIP_ID_BYTE_1__POR
-#define TAIKO_A_CHIP_ID_BYTE_2 WCD9XXX_A_CHIP_ID_BYTE_2
-#define TAIKO_A_CHIP_ID_BYTE_2__POR WCD9XXX_A_CHIP_ID_BYTE_2__POR
-#define TAIKO_A_CHIP_ID_BYTE_3 WCD9XXX_A_CHIP_ID_BYTE_3
-#define TAIKO_A_CHIP_ID_BYTE_3__POR WCD9XXX_A_CHIP_ID_BYTE_3__POR
-#define TAIKO_A_CHIP_VERSION WCD9XXX_A_CHIP_VERSION
-#define TAIKO_A_CHIP_VERSION__POR WCD9XXX_A_CHIP_VERSION__POR
-#define TAIKO_A_SB_VERSION WCD9XXX_A_SB_VERSION
-#define TAIKO_A_SB_VERSION__POR WCD9XXX_A_SB_VERSION__POR
-#define TAIKO_A_SLAVE_ID_1 WCD9XXX_A_SLAVE_ID_1
-#define TAIKO_A_SLAVE_ID_1__POR WCD9XXX_A_SLAVE_ID_1__POR
-#define TAIKO_A_SLAVE_ID_2 WCD9XXX_A_SLAVE_ID_2
-#define TAIKO_A_SLAVE_ID_2__POR WCD9XXX_A_SLAVE_ID_2__POR
-#define TAIKO_A_SLAVE_ID_3 WCD9XXX_A_SLAVE_ID_3
-#define TAIKO_A_SLAVE_ID_3__POR WCD9XXX_A_SLAVE_ID_3__POR
-#define TAIKO_A_PIN_CTL_OE0 (0x010)
-#define TAIKO_A_PIN_CTL_OE0__POR (0x00)
-#define TAIKO_A_PIN_CTL_OE1 (0x011)
-#define TAIKO_A_PIN_CTL_OE1__POR (0x00)
-#define TAIKO_A_PIN_CTL_DATA0 (0x012)
-#define TAIKO_A_PIN_CTL_DATA0__POR (0x00)
-#define TAIKO_A_PIN_CTL_DATA1 (0x013)
-#define TAIKO_A_PIN_CTL_DATA1__POR (0x00)
-#define TAIKO_A_HDRIVE_GENERIC (0x018)
-#define TAIKO_A_HDRIVE_GENERIC__POR (0x00)
-#define TAIKO_A_HDRIVE_OVERRIDE (0x019)
-#define TAIKO_A_HDRIVE_OVERRIDE__POR (0x08)
-#define TAIKO_A_ANA_CSR_WAIT_STATE (0x020)
-#define TAIKO_A_ANA_CSR_WAIT_STATE__POR (0x44)
-#define TAIKO_A_PROCESS_MONITOR_CTL0 (0x040)
-#define TAIKO_A_PROCESS_MONITOR_CTL0__POR (0x80)
-#define TAIKO_A_PROCESS_MONITOR_CTL1 (0x041)
-#define TAIKO_A_PROCESS_MONITOR_CTL1__POR (0x00)
-#define TAIKO_A_PROCESS_MONITOR_CTL2 (0x042)
-#define TAIKO_A_PROCESS_MONITOR_CTL2__POR (0x00)
-#define TAIKO_A_PROCESS_MONITOR_CTL3 (0x043)
-#define TAIKO_A_PROCESS_MONITOR_CTL3__POR (0x01)
-#define TAIKO_A_QFUSE_CTL (0x048)
-#define TAIKO_A_QFUSE_CTL__POR (0x00)
-#define TAIKO_A_QFUSE_STATUS (0x049)
-#define TAIKO_A_QFUSE_STATUS__POR (0x00)
-#define TAIKO_A_QFUSE_DATA_OUT0 (0x04A)
-#define TAIKO_A_QFUSE_DATA_OUT0__POR (0x00)
-#define TAIKO_A_QFUSE_DATA_OUT1 (0x04B)
-#define TAIKO_A_QFUSE_DATA_OUT1__POR (0x00)
-#define TAIKO_A_QFUSE_DATA_OUT2 (0x04C)
-#define TAIKO_A_QFUSE_DATA_OUT2__POR (0x00)
-#define TAIKO_A_QFUSE_DATA_OUT3 (0x04D)
-#define TAIKO_A_QFUSE_DATA_OUT3__POR (0x00)
-#define TAIKO_A_QFUSE_DATA_OUT4 (0x04E)
-#define TAIKO_A_QFUSE_DATA_OUT4__POR (0x00)
-#define TAIKO_A_QFUSE_DATA_OUT5 (0x04F)
-#define TAIKO_A_QFUSE_DATA_OUT5__POR (0x00)
-#define TAIKO_A_QFUSE_DATA_OUT6 (0x050)
-#define TAIKO_A_QFUSE_DATA_OUT6__POR (0x00)
-#define TAIKO_A_QFUSE_DATA_OUT7 (0x051)
-#define TAIKO_A_QFUSE_DATA_OUT7__POR (0x00)
-#define TAIKO_A_CDC_CTL WCD9XXX_A_CDC_CTL
-#define TAIKO_A_CDC_CTL__POR WCD9XXX_A_CDC_CTL__POR
-#define TAIKO_A_LEAKAGE_CTL WCD9XXX_A_LEAKAGE_CTL
-#define TAIKO_A_LEAKAGE_CTL__POR WCD9XXX_A_LEAKAGE_CTL__POR
-#define TAIKO_A_INTR_MODE (0x090)
-#define TAIKO_A_INTR_MODE__POR (0x00)
-#define TAIKO_A_INTR_MASK0 (0x094)
-#define TAIKO_A_INTR_MASK0__POR (0xFF)
-#define TAIKO_A_INTR_MASK1 (0x095)
-#define TAIKO_A_INTR_MASK1__POR (0xFF)
-#define TAIKO_A_INTR_MASK2 (0x096)
-#define TAIKO_A_INTR_MASK2__POR (0x3F)
-#define TAIKO_A_INTR_MASK3 (0x097)
-#define TAIKO_A_INTR_MASK3__POR (0x3F)
-#define TAIKO_A_INTR_STATUS0 (0x098)
-#define TAIKO_A_INTR_STATUS0__POR (0x00)
-#define TAIKO_A_INTR_STATUS1 (0x099)
-#define TAIKO_A_INTR_STATUS1__POR (0x00)
-#define TAIKO_A_INTR_STATUS2 (0x09A)
-#define TAIKO_A_INTR_STATUS2__POR (0x00)
-#define TAIKO_A_INTR_STATUS3 (0x09B)
-#define TAIKO_A_INTR_STATUS3__POR (0x00)
-#define TAIKO_A_INTR_CLEAR0 (0x09C)
-#define TAIKO_A_INTR_CLEAR0__POR (0x00)
-#define TAIKO_A_INTR_CLEAR1 (0x09D)
-#define TAIKO_A_INTR_CLEAR1__POR (0x00)
-#define TAIKO_A_INTR_CLEAR2 (0x09E)
-#define TAIKO_A_INTR_CLEAR2__POR (0x00)
-#define TAIKO_A_INTR_CLEAR3 (0x09F)
-#define TAIKO_A_INTR_CLEAR3__POR (0x00)
-#define TAIKO_A_INTR_LEVEL0 (0x0A0)
-#define TAIKO_A_INTR_LEVEL0__POR (0x01)
-#define TAIKO_A_INTR_LEVEL1 (0x0A1)
-#define TAIKO_A_INTR_LEVEL1__POR (0x00)
-#define TAIKO_A_INTR_LEVEL2 (0x0A2)
-#define TAIKO_A_INTR_LEVEL2__POR (0x00)
-#define TAIKO_A_INTR_LEVEL3 (0x0A3)
-#define TAIKO_A_INTR_LEVEL3__POR (0x00)
-#define TAIKO_A_INTR_TEST0 (0x0A4)
-#define TAIKO_A_INTR_TEST0__POR (0x00)
-#define TAIKO_A_INTR_TEST1 (0x0A5)
-#define TAIKO_A_INTR_TEST1__POR (0x00)
-#define TAIKO_A_INTR_TEST2 (0x0A6)
-#define TAIKO_A_INTR_TEST2__POR (0x00)
-#define TAIKO_A_INTR_TEST3 (0x0A7)
-#define TAIKO_A_INTR_TEST3__POR (0x00)
-#define TAIKO_A_INTR_SET0 (0x0A8)
-#define TAIKO_A_INTR_SET0__POR (0x00)
-#define TAIKO_A_INTR_SET1 (0x0A9)
-#define TAIKO_A_INTR_SET1__POR (0x00)
-#define TAIKO_A_INTR_SET2 (0x0AA)
-#define TAIKO_A_INTR_SET2__POR (0x00)
-#define TAIKO_A_INTR_SET3 (0x0AB)
-#define TAIKO_A_INTR_SET3__POR (0x00)
-#define TAIKO_A_INTR_DESTN0 (0x0AC)
-#define TAIKO_A_INTR_DESTN0__POR (0x00)
-#define TAIKO_A_INTR_DESTN1 (0x0AD)
-#define TAIKO_A_INTR_DESTN1__POR (0x00)
-#define TAIKO_A_INTR_DESTN2 (0x0AE)
-#define TAIKO_A_INTR_DESTN2__POR (0x00)
-#define TAIKO_A_INTR_DESTN3 (0x0AF)
-#define TAIKO_A_INTR_DESTN3__POR (0x00)
-#define TAIKO_A_CDC_TX_I2S_SCK_MODE (0x0C0)
-#define TAIKO_A_CDC_TX_I2S_SCK_MODE__POR (0x00)
-#define TAIKO_A_CDC_TX_I2S_WS_MODE (0x0C1)
-#define TAIKO_A_CDC_TX_I2S_WS_MODE__POR (0x00)
-#define TAIKO_A_CDC_DMIC_DATA0_MODE (0x0C4)
-#define TAIKO_A_CDC_DMIC_DATA0_MODE__POR (0x00)
-#define TAIKO_A_CDC_DMIC_CLK0_MODE (0x0C5)
-#define TAIKO_A_CDC_DMIC_CLK0_MODE__POR (0x00)
-#define TAIKO_A_CDC_DMIC_DATA1_MODE (0x0C6)
-#define TAIKO_A_CDC_DMIC_DATA1_MODE__POR (0x00)
-#define TAIKO_A_CDC_DMIC_CLK1_MODE (0x0C7)
-#define TAIKO_A_CDC_DMIC_CLK1_MODE__POR (0x00)
-#define TAIKO_A_CDC_RX_I2S_SCK_MODE (0x0C8)
-#define TAIKO_A_CDC_RX_I2S_SCK_MODE__POR (0x00)
-#define TAIKO_A_CDC_RX_I2S_WS_MODE (0x0C9)
-#define TAIKO_A_CDC_RX_I2S_WS_MODE__POR (0x00)
-#define TAIKO_A_CDC_DMIC_DATA2_MODE (0x0CA)
-#define TAIKO_A_CDC_DMIC_DATA2_MODE__POR (0x00)
-#define TAIKO_A_CDC_DMIC_CLK2_MODE (0x0CB)
-#define TAIKO_A_CDC_DMIC_CLK2_MODE__POR (0x00)
-#define TAIKO_A_CDC_INTR1_MODE (0x0CC)
-#define TAIKO_A_CDC_INTR1_MODE__POR (0x00)
-#define TAIKO_A_CDC_SB_NRZ_SEL_MODE (0x0CD)
-#define TAIKO_A_CDC_SB_NRZ_SEL_MODE__POR (0x00)
-#define TAIKO_A_CDC_INTR2_MODE (0x0CE)
-#define TAIKO_A_CDC_INTR2_MODE__POR (0x00)
-#define TAIKO_A_CDC_RF_PA_ON_MODE (0x0CF)
-#define TAIKO_A_CDC_RF_PA_ON_MODE__POR (0x00)
-#define TAIKO_A_BIAS_REF_CTL (0x100)
-#define TAIKO_A_BIAS_REF_CTL__POR (0x1C)
-#define TAIKO_A_BIAS_CENTRAL_BG_CTL (0x101)
-#define TAIKO_A_BIAS_CENTRAL_BG_CTL__POR (0x50)
-#define TAIKO_A_BIAS_PRECHRG_CTL (0x102)
-#define TAIKO_A_BIAS_PRECHRG_CTL__POR (0x07)
-#define TAIKO_A_BIAS_CURR_CTL_1 (0x103)
-#define TAIKO_A_BIAS_CURR_CTL_1__POR (0x52)
-#define TAIKO_A_BIAS_CURR_CTL_2 (0x104)
-#define TAIKO_A_BIAS_CURR_CTL_2__POR (0x00)
-#define TAIKO_A_BIAS_OSC_BG_CTL (0x105)
-#define TAIKO_A_BIAS_OSC_BG_CTL__POR (0x16)
-#define TAIKO_A_CLK_BUFF_EN1 (0x108)
-#define TAIKO_A_CLK_BUFF_EN1__POR (0x04)
-#define TAIKO_A_CLK_BUFF_EN2 (0x109)
-#define TAIKO_A_CLK_BUFF_EN2__POR (0x02)
-#define TAIKO_A_LDO_H_MODE_1 (0x110)
-#define TAIKO_A_LDO_H_MODE_1__POR (0x65)
-#define TAIKO_A_LDO_H_MODE_2 (0x111)
-#define TAIKO_A_LDO_H_MODE_2__POR (0xA8)
-#define TAIKO_A_LDO_H_LOOP_CTL (0x112)
-#define TAIKO_A_LDO_H_LOOP_CTL__POR (0x6B)
-#define TAIKO_A_LDO_H_COMP_1 (0x113)
-#define TAIKO_A_LDO_H_COMP_1__POR (0x84)
-#define TAIKO_A_LDO_H_COMP_2 (0x114)
-#define TAIKO_A_LDO_H_COMP_2__POR (0xE0)
-#define TAIKO_A_LDO_H_BIAS_1 (0x115)
-#define TAIKO_A_LDO_H_BIAS_1__POR (0x6D)
-#define TAIKO_A_LDO_H_BIAS_2 (0x116)
-#define TAIKO_A_LDO_H_BIAS_2__POR (0xA5)
-#define TAIKO_A_LDO_H_BIAS_3 (0x117)
-#define TAIKO_A_LDO_H_BIAS_3__POR (0x60)
-#define TAIKO_A_VBAT_CLK (0x118)
-#define TAIKO_A_VBAT_CLK__POR (0x03)
-#define TAIKO_A_VBAT_LOOP (0x119)
-#define TAIKO_A_VBAT_LOOP__POR (0x02)
-#define TAIKO_A_VBAT_REF (0x11A)
-#define TAIKO_A_VBAT_REF__POR (0x20)
-#define TAIKO_A_VBAT_ADC_TEST (0x11B)
-#define TAIKO_A_VBAT_ADC_TEST__POR (0x00)
-#define TAIKO_A_VBAT_FE (0x11C)
-#define TAIKO_A_VBAT_FE__POR (0x48)
-#define TAIKO_A_VBAT_BIAS_1 (0x11D)
-#define TAIKO_A_VBAT_BIAS_1__POR (0x03)
-#define TAIKO_A_VBAT_BIAS_2 (0x11E)
-#define TAIKO_A_VBAT_BIAS_2__POR (0x00)
-#define TAIKO_A_VBAT_ADC_DATA_MSB (0x11F)
-#define TAIKO_A_VBAT_ADC_DATA_MSB__POR (0x00)
-#define TAIKO_A_VBAT_ADC_DATA_LSB (0x120)
-#define TAIKO_A_VBAT_ADC_DATA_LSB__POR (0x00)
-#define TAIKO_A_MICB_CFILT_1_CTL (0x128)
-#define TAIKO_A_MICB_CFILT_1_CTL__POR (0x40)
-#define TAIKO_A_MICB_CFILT_1_VAL (0x129)
-#define TAIKO_A_MICB_CFILT_1_VAL__POR (0x80)
-#define TAIKO_A_MICB_CFILT_1_PRECHRG (0x12A)
-#define TAIKO_A_MICB_CFILT_1_PRECHRG__POR (0x38)
-#define TAIKO_A_MICB_1_CTL (0x12B)
-#define TAIKO_A_MICB_1_CTL__POR (0x16)
-#define TAIKO_A_MICB_1_INT_RBIAS (0x12C)
-#define TAIKO_A_MICB_1_INT_RBIAS__POR (0x24)
-#define TAIKO_A_MICB_1_MBHC (0x12D)
-#define TAIKO_A_MICB_1_MBHC__POR (0x01)
-#define TAIKO_A_MICB_CFILT_2_CTL (0x12E)
-#define TAIKO_A_MICB_CFILT_2_CTL__POR (0x40)
-#define TAIKO_A_MICB_CFILT_2_VAL (0x12F)
-#define TAIKO_A_MICB_CFILT_2_VAL__POR (0x80)
-#define TAIKO_A_MICB_CFILT_2_PRECHRG (0x130)
-#define TAIKO_A_MICB_CFILT_2_PRECHRG__POR (0x38)
-#define TAIKO_A_MICB_2_CTL (0x131)
-#define TAIKO_A_MICB_2_CTL__POR (0x16)
-#define TAIKO_A_MICB_2_INT_RBIAS (0x132)
-#define TAIKO_A_MICB_2_INT_RBIAS__POR (0x24)
-#define TAIKO_A_MICB_2_MBHC (0x133)
-#define TAIKO_A_MICB_2_MBHC__POR (0x02)
-#define TAIKO_A_MICB_CFILT_3_CTL (0x134)
-#define TAIKO_A_MICB_CFILT_3_CTL__POR (0x40)
-#define TAIKO_A_MICB_CFILT_3_VAL (0x135)
-#define TAIKO_A_MICB_CFILT_3_VAL__POR (0x80)
-#define TAIKO_A_MICB_CFILT_3_PRECHRG (0x136)
-#define TAIKO_A_MICB_CFILT_3_PRECHRG__POR (0x38)
-#define TAIKO_A_MICB_3_CTL (0x137)
-#define TAIKO_A_MICB_3_CTL__POR (0x16)
-#define TAIKO_A_MICB_3_INT_RBIAS (0x138)
-#define TAIKO_A_MICB_3_INT_RBIAS__POR (0x24)
-#define TAIKO_A_MICB_3_MBHC (0x139)
-#define TAIKO_A_MICB_3_MBHC__POR (0x00)
-#define TAIKO_A_MICB_4_CTL (0x13D)
-#define TAIKO_A_MICB_4_CTL__POR (0x16)
-#define TAIKO_A_MICB_4_INT_RBIAS (0x13E)
-#define TAIKO_A_MICB_4_INT_RBIAS__POR (0x24)
-#define TAIKO_A_MICB_4_MBHC (0x13F)
-#define TAIKO_A_MICB_4_MBHC__POR (0x01)
-#define TAIKO_A_MBHC_INSERT_DETECT (0x14A)
-#define TAIKO_A_MBHC_INSERT_DETECT__POR (0x00)
-#define TAIKO_A_MBHC_INSERT_DET_STATUS (0x14B)
-#define TAIKO_A_MBHC_INSERT_DET_STATUS__POR (0x00)
-#define TAIKO_A_TX_COM_BIAS (0x14C)
-#define TAIKO_A_TX_COM_BIAS__POR (0xF0)
-#define TAIKO_A_MBHC_SCALING_MUX_1 (0x14E)
-#define TAIKO_A_MBHC_SCALING_MUX_1__POR (0x00)
-#define TAIKO_A_MBHC_SCALING_MUX_2 (0x14F)
-#define TAIKO_A_MBHC_SCALING_MUX_2__POR (0x80)
-#define TAIKO_A_MAD_ANA_CTRL (0x150)
-#define TAIKO_A_MAD_ANA_CTRL__POR (0xF1)
-#define TAIKO_A_TX_SUP_SWITCH_CTRL_1 (0x151)
-#define TAIKO_A_TX_SUP_SWITCH_CTRL_1__POR (0x00)
-#define TAIKO_A_TX_SUP_SWITCH_CTRL_2 (0x152)
-#define TAIKO_A_TX_SUP_SWITCH_CTRL_2__POR (0x80)
-#define TAIKO_A_TX_1_2_EN (0x153)
-#define TAIKO_A_TX_1_2_EN__POR (0x00)
-#define TAIKO_A_TX_1_2_TEST_EN (0x154)
-#define TAIKO_A_TX_1_2_TEST_EN__POR (0xCC)
-#define TAIKO_A_TX_1_2_ADC_CH1 (0x155)
-#define TAIKO_A_TX_1_2_ADC_CH1__POR (0x44)
-#define TAIKO_A_TX_1_2_ADC_CH2 (0x156)
-#define TAIKO_A_TX_1_2_ADC_CH2__POR (0x44)
-#define TAIKO_A_TX_1_2_ATEST_REFCTRL (0x157)
-#define TAIKO_A_TX_1_2_ATEST_REFCTRL__POR (0x00)
-#define TAIKO_A_TX_1_2_TEST_CTL (0x158)
-#define TAIKO_A_TX_1_2_TEST_CTL__POR (0x38)
-#define TAIKO_A_TX_1_2_TEST_BLOCK_EN (0x159)
-#define TAIKO_A_TX_1_2_TEST_BLOCK_EN__POR (0xFC)
-#define TAIKO_A_TX_1_2_TXFE_CLKDIV (0x15A)
-#define TAIKO_A_TX_1_2_TXFE_CLKDIV__POR (0x55)
-#define TAIKO_A_TX_1_2_SAR_ERR_CH1 (0x15B)
-#define TAIKO_A_TX_1_2_SAR_ERR_CH1__POR (0x00)
-#define TAIKO_A_TX_1_2_SAR_ERR_CH2 (0x15C)
-#define TAIKO_A_TX_1_2_SAR_ERR_CH2__POR (0x00)
-#define TAIKO_A_TX_3_4_EN (0x15D)
-#define TAIKO_A_TX_3_4_EN__POR (0x00)
-#define TAIKO_A_TX_3_4_TEST_EN (0x15E)
-#define TAIKO_A_TX_3_4_TEST_EN__POR (0xCC)
-#define TAIKO_A_TX_3_4_ADC_CH3 (0x15F)
-#define TAIKO_A_TX_3_4_ADC_CH3__POR (0x44)
-#define TAIKO_A_TX_3_4_ADC_CH4 (0x160)
-#define TAIKO_A_TX_3_4_ADC_CH4__POR (0x44)
-#define TAIKO_A_TX_3_4_ATEST_REFCTRL (0x161)
-#define TAIKO_A_TX_3_4_ATEST_REFCTRL__POR (0x00)
-#define TAIKO_A_TX_3_4_TEST_CTL (0x162)
-#define TAIKO_A_TX_3_4_TEST_CTL__POR (0x38)
-#define TAIKO_A_TX_3_4_TEST_BLOCK_EN (0x163)
-#define TAIKO_A_TX_3_4_TEST_BLOCK_EN__POR (0xFC)
-#define TAIKO_A_TX_3_4_TXFE_CKDIV (0x164)
-#define TAIKO_A_TX_3_4_TXFE_CKDIV__POR (0x55)
-#define TAIKO_A_TX_3_4_SAR_ERR_CH3 (0x165)
-#define TAIKO_A_TX_3_4_SAR_ERR_CH3__POR (0x00)
-#define TAIKO_A_TX_3_4_SAR_ERR_CH4 (0x166)
-#define TAIKO_A_TX_3_4_SAR_ERR_CH4__POR (0x00)
-#define TAIKO_A_TX_5_6_EN (0x167)
-#define TAIKO_A_TX_5_6_EN__POR (0x11)
-#define TAIKO_A_TX_5_6_TEST_EN (0x168)
-#define TAIKO_A_TX_5_6_TEST_EN__POR (0xCC)
-#define TAIKO_A_TX_5_6_ADC_CH5 (0x169)
-#define TAIKO_A_TX_5_6_ADC_CH5__POR (0x44)
-#define TAIKO_A_TX_5_6_ADC_CH6 (0x16A)
-#define TAIKO_A_TX_5_6_ADC_CH6__POR (0x44)
-#define TAIKO_A_TX_5_6_ATEST_REFCTRL (0x16B)
-#define TAIKO_A_TX_5_6_ATEST_REFCTRL__POR (0x00)
-#define TAIKO_A_TX_5_6_TEST_CTL (0x16C)
-#define TAIKO_A_TX_5_6_TEST_CTL__POR (0x38)
-#define TAIKO_A_TX_5_6_TEST_BLOCK_EN (0x16D)
-#define TAIKO_A_TX_5_6_TEST_BLOCK_EN__POR (0xFC)
-#define TAIKO_A_TX_5_6_TXFE_CKDIV (0x16E)
-#define TAIKO_A_TX_5_6_TXFE_CKDIV__POR (0x55)
-#define TAIKO_A_TX_5_6_SAR_ERR_CH5 (0x16F)
-#define TAIKO_A_TX_5_6_SAR_ERR_CH5__POR (0x00)
-#define TAIKO_A_TX_5_6_SAR_ERR_CH6 (0x170)
-#define TAIKO_A_TX_5_6_SAR_ERR_CH6__POR (0x00)
-#define TAIKO_A_TX_7_MBHC_EN (0x171)
-#define TAIKO_A_TX_7_MBHC_EN__POR (0x0C)
-#define TAIKO_A_TX_7_MBHC_ATEST_REFCTRL (0x172)
-#define TAIKO_A_TX_7_MBHC_ATEST_REFCTRL__POR (0x00)
-#define TAIKO_A_TX_7_MBHC_ADC (0x173)
-#define TAIKO_A_TX_7_MBHC_ADC__POR (0x44)
-#define TAIKO_A_TX_7_MBHC_TEST_CTL (0x174)
-#define TAIKO_A_TX_7_MBHC_TEST_CTL__POR (0x38)
-#define TAIKO_A_TX_7_MBHC_SAR_ERR (0x175)
-#define TAIKO_A_TX_7_MBHC_SAR_ERR__POR (0x00)
-#define TAIKO_A_TX_7_TXFE_CLKDIV (0x176)
-#define TAIKO_A_TX_7_TXFE_CLKDIV__POR (0x0B)
-#define TAIKO_A_BUCK_MODE_1 (0x181)
-#define TAIKO_A_BUCK_MODE_1__POR (0x21)
-#define TAIKO_A_BUCK_MODE_2 (0x182)
-#define TAIKO_A_BUCK_MODE_2__POR (0xFF)
-#define TAIKO_A_BUCK_MODE_3 (0x183)
-#define TAIKO_A_BUCK_MODE_3__POR (0xCC)
-#define TAIKO_A_BUCK_MODE_4 (0x184)
-#define TAIKO_A_BUCK_MODE_4__POR (0x3A)
-#define TAIKO_A_BUCK_MODE_5 (0x185)
-#define TAIKO_A_BUCK_MODE_5__POR (0x00)
-#define TAIKO_A_BUCK_CTRL_VCL_1 (0x186)
-#define TAIKO_A_BUCK_CTRL_VCL_1__POR (0x48)
-#define TAIKO_A_BUCK_CTRL_VCL_2 (0x187)
-#define TAIKO_A_BUCK_CTRL_VCL_2__POR (0xA3)
-#define TAIKO_A_BUCK_CTRL_VCL_3 (0x188)
-#define TAIKO_A_BUCK_CTRL_VCL_3__POR (0x82)
-#define TAIKO_A_BUCK_CTRL_CCL_1 (0x189)
-#define TAIKO_A_BUCK_CTRL_CCL_1__POR (0xAB)
-#define TAIKO_A_BUCK_CTRL_CCL_2 (0x18A)
-#define TAIKO_A_BUCK_CTRL_CCL_2__POR (0xDC)
-#define TAIKO_A_BUCK_CTRL_CCL_3 (0x18B)
-#define TAIKO_A_BUCK_CTRL_CCL_3__POR (0x6A)
-#define TAIKO_A_BUCK_CTRL_CCL_4 (0x18C)
-#define TAIKO_A_BUCK_CTRL_CCL_4__POR (0x58)
-#define TAIKO_A_BUCK_CTRL_PWM_DRVR_1 (0x18D)
-#define TAIKO_A_BUCK_CTRL_PWM_DRVR_1__POR (0x50)
-#define TAIKO_A_BUCK_CTRL_PWM_DRVR_2 (0x18E)
-#define TAIKO_A_BUCK_CTRL_PWM_DRVR_2__POR (0x64)
-#define TAIKO_A_BUCK_CTRL_PWM_DRVR_3 (0x18F)
-#define TAIKO_A_BUCK_CTRL_PWM_DRVR_3__POR (0x77)
-#define TAIKO_A_BUCK_TMUX_A_D (0x190)
-#define TAIKO_A_BUCK_TMUX_A_D__POR (0x00)
-#define TAIKO_A_NCP_BUCKREF (0x191)
-#define TAIKO_A_NCP_BUCKREF__POR (0x00)
-#define TAIKO_A_NCP_EN (0x192)
-#define TAIKO_A_NCP_EN__POR (0xFE)
-#define TAIKO_A_NCP_CLK (0x193)
-#define TAIKO_A_NCP_CLK__POR (0x94)
-#define TAIKO_A_NCP_STATIC (0x194)
-#define TAIKO_A_NCP_STATIC__POR (0x28)
-#define TAIKO_A_NCP_VTH_LOW (0x195)
-#define TAIKO_A_NCP_VTH_LOW__POR (0x88)
-#define TAIKO_A_NCP_VTH_HIGH (0x196)
-#define TAIKO_A_NCP_VTH_HIGH__POR (0xA0)
-#define TAIKO_A_NCP_ATEST (0x197)
-#define TAIKO_A_NCP_ATEST__POR (0x00)
-#define TAIKO_A_NCP_DTEST (0x198)
-#define TAIKO_A_NCP_DTEST__POR (0x00)
-#define TAIKO_A_NCP_DLY1 (0x199)
-#define TAIKO_A_NCP_DLY1__POR (0x06)
-#define TAIKO_A_NCP_DLY2 (0x19A)
-#define TAIKO_A_NCP_DLY2__POR (0x06)
-#define TAIKO_A_RX_AUX_SW_CTL (0x19B)
-#define TAIKO_A_RX_AUX_SW_CTL__POR (0x00)
-#define TAIKO_A_RX_PA_AUX_IN_CONN (0x19C)
-#define TAIKO_A_RX_PA_AUX_IN_CONN__POR (0x00)
-#define TAIKO_A_RX_COM_TIMER_DIV (0x19E)
-#define TAIKO_A_RX_COM_TIMER_DIV__POR (0xE8)
-#define TAIKO_A_RX_COM_OCP_CTL (0x19F)
-#define TAIKO_A_RX_COM_OCP_CTL__POR (0x1F)
-#define TAIKO_A_RX_COM_OCP_COUNT (0x1A0)
-#define TAIKO_A_RX_COM_OCP_COUNT__POR (0x77)
-#define TAIKO_A_RX_COM_DAC_CTL (0x1A1)
-#define TAIKO_A_RX_COM_DAC_CTL__POR (0x00)
-#define TAIKO_A_RX_COM_BIAS (0x1A2)
-#define TAIKO_A_RX_COM_BIAS__POR (0x00)
-#define TAIKO_A_RX_HPH_AUTO_CHOP (0x1A4)
-#define TAIKO_A_RX_HPH_AUTO_CHOP__POR (0x38)
-#define TAIKO_A_RX_HPH_CHOP_CTL (0x1A5)
-#define TAIKO_A_RX_HPH_CHOP_CTL__POR (0xB4)
-#define TAIKO_A_RX_HPH_BIAS_PA (0x1A6)
-#define TAIKO_A_RX_HPH_BIAS_PA__POR (0xAA)
-#define TAIKO_A_RX_HPH_BIAS_LDO (0x1A7)
-#define TAIKO_A_RX_HPH_BIAS_LDO__POR (0x87)
-#define TAIKO_A_RX_HPH_BIAS_CNP (0x1A8)
-#define TAIKO_A_RX_HPH_BIAS_CNP__POR (0x8A)
-#define TAIKO_A_RX_HPH_BIAS_WG_OCP (0x1A9)
-#define TAIKO_A_RX_HPH_BIAS_WG_OCP__POR (0x2A)
-#define TAIKO_A_RX_HPH_OCP_CTL (0x1AA)
-#define TAIKO_A_RX_HPH_OCP_CTL__POR (0x68)
-#define TAIKO_A_RX_HPH_CNP_EN (0x1AB)
-#define TAIKO_A_RX_HPH_CNP_EN__POR (0x80)
-#define TAIKO_A_RX_HPH_CNP_WG_CTL (0x1AC)
-#define TAIKO_A_RX_HPH_CNP_WG_CTL__POR (0xDE)
-#define TAIKO_A_RX_HPH_CNP_WG_TIME (0x1AD)
-#define TAIKO_A_RX_HPH_CNP_WG_TIME__POR (0x2A)
-#define TAIKO_A_RX_HPH_L_GAIN (0x1AE)
-#define TAIKO_A_RX_HPH_L_GAIN__POR (0x00)
-#define TAIKO_A_RX_HPH_L_TEST (0x1AF)
-#define TAIKO_A_RX_HPH_L_TEST__POR (0x00)
-#define TAIKO_A_RX_HPH_L_PA_CTL (0x1B0)
-#define TAIKO_A_RX_HPH_L_PA_CTL__POR (0x40)
-#define TAIKO_A_RX_HPH_L_DAC_CTL (0x1B1)
-#define TAIKO_A_RX_HPH_L_DAC_CTL__POR (0x00)
-#define TAIKO_A_RX_HPH_L_ATEST (0x1B2)
-#define TAIKO_A_RX_HPH_L_ATEST__POR (0x00)
-#define TAIKO_A_RX_HPH_L_STATUS (0x1B3)
-#define TAIKO_A_RX_HPH_L_STATUS__POR (0x00)
-#define TAIKO_A_RX_HPH_R_GAIN (0x1B4)
-#define TAIKO_A_RX_HPH_R_GAIN__POR (0x00)
-#define TAIKO_A_RX_HPH_R_TEST (0x1B5)
-#define TAIKO_A_RX_HPH_R_TEST__POR (0x00)
-#define TAIKO_A_RX_HPH_R_PA_CTL (0x1B6)
-#define TAIKO_A_RX_HPH_R_PA_CTL__POR (0x40)
-#define TAIKO_A_RX_HPH_R_DAC_CTL (0x1B7)
-#define TAIKO_A_RX_HPH_R_DAC_CTL__POR (0x00)
-#define TAIKO_A_RX_HPH_R_ATEST (0x1B8)
-#define TAIKO_A_RX_HPH_R_ATEST__POR (0x00)
-#define TAIKO_A_RX_HPH_R_STATUS (0x1B9)
-#define TAIKO_A_RX_HPH_R_STATUS__POR (0x00)
-#define TAIKO_A_RX_EAR_BIAS_PA (0x1BA)
-#define TAIKO_A_RX_EAR_BIAS_PA__POR (0xA6)
-#define TAIKO_A_RX_EAR_BIAS_CMBUFF (0x1BB)
-#define TAIKO_A_RX_EAR_BIAS_CMBUFF__POR (0xA0)
-#define TAIKO_A_RX_EAR_EN (0x1BC)
-#define TAIKO_A_RX_EAR_EN__POR (0x00)
-#define TAIKO_A_RX_EAR_GAIN (0x1BD)
-#define TAIKO_A_RX_EAR_GAIN__POR (0x02)
-#define TAIKO_A_RX_EAR_CMBUFF (0x1BE)
-#define TAIKO_A_RX_EAR_CMBUFF__POR (0x04)
-#define TAIKO_A_RX_EAR_ICTL (0x1BF)
-#define TAIKO_A_RX_EAR_ICTL__POR (0x40)
-#define TAIKO_A_RX_EAR_CCOMP (0x1C0)
-#define TAIKO_A_RX_EAR_CCOMP__POR (0x08)
-#define TAIKO_A_RX_EAR_VCM (0x1C1)
-#define TAIKO_A_RX_EAR_VCM__POR (0x03)
-#define TAIKO_A_RX_EAR_CNP (0x1C2)
-#define TAIKO_A_RX_EAR_CNP__POR (0xF2)
-#define TAIKO_A_RX_EAR_DAC_CTL_ATEST (0x1C3)
-#define TAIKO_A_RX_EAR_DAC_CTL_ATEST__POR (0x00)
-#define TAIKO_A_RX_EAR_STATUS (0x1C5)
-#define TAIKO_A_RX_EAR_STATUS__POR (0x04)
-#define TAIKO_A_RX_LINE_BIAS_PA (0x1C6)
-#define TAIKO_A_RX_LINE_BIAS_PA__POR (0xA8)
-#define TAIKO_A_RX_BUCK_BIAS1 (0x1C7)
-#define TAIKO_A_RX_BUCK_BIAS1__POR (0x42)
-#define TAIKO_A_RX_BUCK_BIAS2 (0x1C8)
-#define TAIKO_A_RX_BUCK_BIAS2__POR (0x84)
-#define TAIKO_A_RX_LINE_COM (0x1C9)
-#define TAIKO_A_RX_LINE_COM__POR (0x80)
-#define TAIKO_A_RX_LINE_CNP_EN (0x1CA)
-#define TAIKO_A_RX_LINE_CNP_EN__POR (0x00)
-#define TAIKO_A_RX_LINE_CNP_WG_CTL (0x1CB)
-#define TAIKO_A_RX_LINE_CNP_WG_CTL__POR (0x00)
-#define TAIKO_A_RX_LINE_CNP_WG_TIME (0x1CC)
-#define TAIKO_A_RX_LINE_CNP_WG_TIME__POR (0x04)
-#define TAIKO_A_RX_LINE_1_GAIN (0x1CD)
-#define TAIKO_A_RX_LINE_1_GAIN__POR (0x00)
-#define TAIKO_A_RX_LINE_1_TEST (0x1CE)
-#define TAIKO_A_RX_LINE_1_TEST__POR (0x00)
-#define TAIKO_A_RX_LINE_1_DAC_CTL (0x1CF)
-#define TAIKO_A_RX_LINE_1_DAC_CTL__POR (0x00)
-#define TAIKO_A_RX_LINE_1_STATUS (0x1D0)
-#define TAIKO_A_RX_LINE_1_STATUS__POR (0x00)
-#define TAIKO_A_RX_LINE_2_GAIN (0x1D1)
-#define TAIKO_A_RX_LINE_2_GAIN__POR (0x00)
-#define TAIKO_A_RX_LINE_2_TEST (0x1D2)
-#define TAIKO_A_RX_LINE_2_TEST__POR (0x00)
-#define TAIKO_A_RX_LINE_2_DAC_CTL (0x1D3)
-#define TAIKO_A_RX_LINE_2_DAC_CTL__POR (0x00)
-#define TAIKO_A_RX_LINE_2_STATUS (0x1D4)
-#define TAIKO_A_RX_LINE_2_STATUS__POR (0x00)
-#define TAIKO_A_RX_LINE_3_GAIN (0x1D5)
-#define TAIKO_A_RX_LINE_3_GAIN__POR (0x00)
-#define TAIKO_A_RX_LINE_3_TEST (0x1D6)
-#define TAIKO_A_RX_LINE_3_TEST__POR (0x00)
-#define TAIKO_A_RX_LINE_3_DAC_CTL (0x1D7)
-#define TAIKO_A_RX_LINE_3_DAC_CTL__POR (0x00)
-#define TAIKO_A_RX_LINE_3_STATUS (0x1D8)
-#define TAIKO_A_RX_LINE_3_STATUS__POR (0x00)
-#define TAIKO_A_RX_LINE_4_GAIN (0x1D9)
-#define TAIKO_A_RX_LINE_4_GAIN__POR (0x00)
-#define TAIKO_A_RX_LINE_4_TEST (0x1DA)
-#define TAIKO_A_RX_LINE_4_TEST__POR (0x00)
-#define TAIKO_A_RX_LINE_4_DAC_CTL (0x1DB)
-#define TAIKO_A_RX_LINE_4_DAC_CTL__POR (0x00)
-#define TAIKO_A_RX_LINE_4_STATUS (0x1DC)
-#define TAIKO_A_RX_LINE_4_STATUS__POR (0x00)
-#define TAIKO_A_RX_LINE_CNP_DBG (0x1DD)
-#define TAIKO_A_RX_LINE_CNP_DBG__POR (0x00)
-#define TAIKO_A_SPKR_DRV_EN (0x1DF)
-#define TAIKO_A_SPKR_DRV_EN__POR (0x6F)
-#define TAIKO_A_SPKR_DRV_GAIN (0x1E0)
-#define TAIKO_A_SPKR_DRV_GAIN__POR (0x00)
-#define TAIKO_A_SPKR_DRV_DAC_CTL (0x1E1)
-#define TAIKO_A_SPKR_DRV_DAC_CTL__POR (0x04)
-#define TAIKO_A_SPKR_DRV_OCP_CTL (0x1E2)
-#define TAIKO_A_SPKR_DRV_OCP_CTL__POR (0x98)
-#define TAIKO_A_SPKR_DRV_CLIP_DET (0x1E3)
-#define TAIKO_A_SPKR_DRV_CLIP_DET__POR (0x48)
-#define TAIKO_A_SPKR_DRV_IEC (0x1E4)
-#define TAIKO_A_SPKR_DRV_IEC__POR (0x20)
-#define TAIKO_A_SPKR_DRV_DBG_DAC (0x1E5)
-#define TAIKO_A_SPKR_DRV_DBG_DAC__POR (0x05)
-#define TAIKO_A_SPKR_DRV_DBG_PA (0x1E6)
-#define TAIKO_A_SPKR_DRV_DBG_PA__POR (0x18)
-#define TAIKO_A_SPKR_DRV_DBG_PWRSTG (0x1E7)
-#define TAIKO_A_SPKR_DRV_DBG_PWRSTG__POR (0x00)
-#define TAIKO_A_SPKR_DRV_BIAS_LDO (0x1E8)
-#define TAIKO_A_SPKR_DRV_BIAS_LDO__POR (0x45)
-#define TAIKO_A_SPKR_DRV_BIAS_INT (0x1E9)
-#define TAIKO_A_SPKR_DRV_BIAS_INT__POR (0xA5)
-#define TAIKO_A_SPKR_DRV_BIAS_PA (0x1EA)
-#define TAIKO_A_SPKR_DRV_BIAS_PA__POR (0x55)
-#define TAIKO_A_SPKR_DRV_STATUS_OCP (0x1EB)
-#define TAIKO_A_SPKR_DRV_STATUS_OCP__POR (0x00)
-#define TAIKO_A_SPKR_DRV_STATUS_PA (0x1EC)
-#define TAIKO_A_SPKR_DRV_STATUS_PA__POR (0x00)
-#define TAIKO_A_SPKR_PROT_EN (0x1ED)
-#define TAIKO_A_SPKR_PROT_EN__POR (0x00)
-#define TAIKO_A_SPKR_PROT_ADC_EN (0x1EE)
-#define TAIKO_A_SPKR_PROT_ADC_EN__POR (0x44)
-#define TAIKO_A_SPKR_PROT_ISENSE_BIAS (0x1EF)
-#define TAIKO_A_SPKR_PROT_ISENSE_BIAS__POR (0x44)
-#define TAIKO_A_SPKR_PROT_VSENSE_BIAS (0x1F0)
-#define TAIKO_A_SPKR_PROT_VSENSE_BIAS__POR (0x44)
-#define TAIKO_A_SPKR_PROT_ADC_ATEST_REFCTRL (0x1F1)
-#define TAIKO_A_SPKR_PROT_ADC_ATEST_REFCTRL__POR (0x00)
-#define TAIKO_A_SPKR_PROT_ADC_TEST_CTL (0x1F2)
-#define TAIKO_A_SPKR_PROT_ADC_TEST_CTL__POR (0x38)
-#define TAIKO_A_SPKR_PROT_TEST_BLOCK_EN (0x1F3)
-#define TAIKO_A_SPKR_PROT_TEST_BLOCK_EN__POR (0xFC)
-#define TAIKO_A_SPKR_PROT_ATEST (0x1F4)
-#define TAIKO_A_SPKR_PROT_ATEST__POR (0x00)
-#define TAIKO_A_SPKR_PROT_V_SAR_ERR (0x1F5)
-#define TAIKO_A_SPKR_PROT_V_SAR_ERR__POR (0x00)
-#define TAIKO_A_SPKR_PROT_I_SAR_ERR (0x1F6)
-#define TAIKO_A_SPKR_PROT_I_SAR_ERR__POR (0x00)
-#define TAIKO_A_SPKR_PROT_LDO_CTRL (0x1F7)
-#define TAIKO_A_SPKR_PROT_LDO_CTRL__POR (0x00)
-#define TAIKO_A_SPKR_PROT_ISENSE_CTRL (0x1F8)
-#define TAIKO_A_SPKR_PROT_ISENSE_CTRL__POR (0x00)
-#define TAIKO_A_SPKR_PROT_VSENSE_CTRL (0x1F9)
-#define TAIKO_A_SPKR_PROT_VSENSE_CTRL__POR (0x00)
-#define TAIKO_A_RC_OSC_FREQ (0x1FA)
-#define TAIKO_A_RC_OSC_FREQ__POR (0x46)
-#define TAIKO_A_RC_OSC_TEST (0x1FB)
-#define TAIKO_A_RC_OSC_TEST__POR (0x0A)
-#define TAIKO_A_RC_OSC_STATUS (0x1FC)
-#define TAIKO_A_RC_OSC_STATUS__POR (0x18)
-#define TAIKO_A_RC_OSC_TUNER (0x1FD)
-#define TAIKO_A_RC_OSC_TUNER__POR (0x00)
-#define TAIKO_A_MBHC_HPH (0x1FE)
-#define TAIKO_A_MBHC_HPH__POR (0x44)
-#define TAIKO_A_CDC_ANC1_B1_CTL (0x200)
-#define TAIKO_A_CDC_ANC1_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC2_B1_CTL (0x280)
-#define TAIKO_A_CDC_ANC2_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC1_SHIFT (0x201)
-#define TAIKO_A_CDC_ANC1_SHIFT__POR (0x00)
-#define TAIKO_A_CDC_ANC2_SHIFT (0x281)
-#define TAIKO_A_CDC_ANC2_SHIFT__POR (0x00)
-#define TAIKO_A_CDC_ANC1_IIR_B1_CTL (0x202)
-#define TAIKO_A_CDC_ANC1_IIR_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC2_IIR_B1_CTL (0x282)
-#define TAIKO_A_CDC_ANC2_IIR_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC1_IIR_B2_CTL (0x203)
-#define TAIKO_A_CDC_ANC1_IIR_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC2_IIR_B2_CTL (0x283)
-#define TAIKO_A_CDC_ANC2_IIR_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC1_IIR_B3_CTL (0x204)
-#define TAIKO_A_CDC_ANC1_IIR_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC2_IIR_B3_CTL (0x284)
-#define TAIKO_A_CDC_ANC2_IIR_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC1_LPF_B1_CTL (0x206)
-#define TAIKO_A_CDC_ANC1_LPF_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC2_LPF_B1_CTL (0x286)
-#define TAIKO_A_CDC_ANC2_LPF_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC1_LPF_B2_CTL (0x207)
-#define TAIKO_A_CDC_ANC1_LPF_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC2_LPF_B2_CTL (0x287)
-#define TAIKO_A_CDC_ANC2_LPF_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC1_SPARE (0x209)
-#define TAIKO_A_CDC_ANC1_SPARE__POR (0x00)
-#define TAIKO_A_CDC_ANC2_SPARE (0x289)
-#define TAIKO_A_CDC_ANC2_SPARE__POR (0x00)
-#define TAIKO_A_CDC_ANC1_SMLPF_CTL (0x20A)
-#define TAIKO_A_CDC_ANC1_SMLPF_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC2_SMLPF_CTL (0x28A)
-#define TAIKO_A_CDC_ANC2_SMLPF_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC1_DCFLT_CTL (0x20B)
-#define TAIKO_A_CDC_ANC1_DCFLT_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC2_DCFLT_CTL (0x28B)
-#define TAIKO_A_CDC_ANC2_DCFLT_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC1_GAIN_CTL (0x20C)
-#define TAIKO_A_CDC_ANC1_GAIN_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC2_GAIN_CTL (0x28C)
-#define TAIKO_A_CDC_ANC2_GAIN_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC1_B2_CTL (0x20D)
-#define TAIKO_A_CDC_ANC1_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_ANC2_B2_CTL (0x28D)
-#define TAIKO_A_CDC_ANC2_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_TX1_VOL_CTL_TIMER (0x220)
-#define TAIKO_A_CDC_TX1_VOL_CTL_TIMER__POR (0x00)
-#define TAIKO_A_CDC_TX2_VOL_CTL_TIMER (0x228)
-#define TAIKO_A_CDC_TX2_VOL_CTL_TIMER__POR (0x00)
-#define TAIKO_A_CDC_TX3_VOL_CTL_TIMER (0x230)
-#define TAIKO_A_CDC_TX3_VOL_CTL_TIMER__POR (0x00)
-#define TAIKO_A_CDC_TX4_VOL_CTL_TIMER (0x238)
-#define TAIKO_A_CDC_TX4_VOL_CTL_TIMER__POR (0x00)
-#define TAIKO_A_CDC_TX5_VOL_CTL_TIMER (0x240)
-#define TAIKO_A_CDC_TX5_VOL_CTL_TIMER__POR (0x00)
-#define TAIKO_A_CDC_TX6_VOL_CTL_TIMER (0x248)
-#define TAIKO_A_CDC_TX6_VOL_CTL_TIMER__POR (0x00)
-#define TAIKO_A_CDC_TX7_VOL_CTL_TIMER (0x250)
-#define TAIKO_A_CDC_TX7_VOL_CTL_TIMER__POR (0x00)
-#define TAIKO_A_CDC_TX8_VOL_CTL_TIMER (0x258)
-#define TAIKO_A_CDC_TX8_VOL_CTL_TIMER__POR (0x00)
-#define TAIKO_A_CDC_TX9_VOL_CTL_TIMER (0x260)
-#define TAIKO_A_CDC_TX9_VOL_CTL_TIMER__POR (0x00)
-#define TAIKO_A_CDC_TX10_VOL_CTL_TIMER (0x268)
-#define TAIKO_A_CDC_TX10_VOL_CTL_TIMER__POR (0x00)
-#define TAIKO_A_CDC_TX1_VOL_CTL_GAIN (0x221)
-#define TAIKO_A_CDC_TX1_VOL_CTL_GAIN__POR (0x00)
-#define TAIKO_A_CDC_TX2_VOL_CTL_GAIN (0x229)
-#define TAIKO_A_CDC_TX2_VOL_CTL_GAIN__POR (0x00)
-#define TAIKO_A_CDC_TX3_VOL_CTL_GAIN (0x231)
-#define TAIKO_A_CDC_TX3_VOL_CTL_GAIN__POR (0x00)
-#define TAIKO_A_CDC_TX4_VOL_CTL_GAIN (0x239)
-#define TAIKO_A_CDC_TX4_VOL_CTL_GAIN__POR (0x00)
-#define TAIKO_A_CDC_TX5_VOL_CTL_GAIN (0x241)
-#define TAIKO_A_CDC_TX5_VOL_CTL_GAIN__POR (0x00)
-#define TAIKO_A_CDC_TX6_VOL_CTL_GAIN (0x249)
-#define TAIKO_A_CDC_TX6_VOL_CTL_GAIN__POR (0x00)
-#define TAIKO_A_CDC_TX7_VOL_CTL_GAIN (0x251)
-#define TAIKO_A_CDC_TX7_VOL_CTL_GAIN__POR (0x00)
-#define TAIKO_A_CDC_TX8_VOL_CTL_GAIN (0x259)
-#define TAIKO_A_CDC_TX8_VOL_CTL_GAIN__POR (0x00)
-#define TAIKO_A_CDC_TX9_VOL_CTL_GAIN (0x261)
-#define TAIKO_A_CDC_TX9_VOL_CTL_GAIN__POR (0x00)
-#define TAIKO_A_CDC_TX10_VOL_CTL_GAIN (0x269)
-#define TAIKO_A_CDC_TX10_VOL_CTL_GAIN__POR (0x00)
-#define TAIKO_A_CDC_TX1_VOL_CTL_CFG (0x222)
-#define TAIKO_A_CDC_TX1_VOL_CTL_CFG__POR (0x00)
-#define TAIKO_A_CDC_TX2_VOL_CTL_CFG (0x22A)
-#define TAIKO_A_CDC_TX2_VOL_CTL_CFG__POR (0x00)
-#define TAIKO_A_CDC_TX3_VOL_CTL_CFG (0x232)
-#define TAIKO_A_CDC_TX3_VOL_CTL_CFG__POR (0x00)
-#define TAIKO_A_CDC_TX4_VOL_CTL_CFG (0x23A)
-#define TAIKO_A_CDC_TX4_VOL_CTL_CFG__POR (0x00)
-#define TAIKO_A_CDC_TX5_VOL_CTL_CFG (0x242)
-#define TAIKO_A_CDC_TX5_VOL_CTL_CFG__POR (0x00)
-#define TAIKO_A_CDC_TX6_VOL_CTL_CFG (0x24A)
-#define TAIKO_A_CDC_TX6_VOL_CTL_CFG__POR (0x00)
-#define TAIKO_A_CDC_TX7_VOL_CTL_CFG (0x252)
-#define TAIKO_A_CDC_TX7_VOL_CTL_CFG__POR (0x00)
-#define TAIKO_A_CDC_TX8_VOL_CTL_CFG (0x25A)
-#define TAIKO_A_CDC_TX8_VOL_CTL_CFG__POR (0x00)
-#define TAIKO_A_CDC_TX9_VOL_CTL_CFG (0x262)
-#define TAIKO_A_CDC_TX9_VOL_CTL_CFG__POR (0x00)
-#define TAIKO_A_CDC_TX10_VOL_CTL_CFG (0x26A)
-#define TAIKO_A_CDC_TX10_VOL_CTL_CFG__POR (0x00)
-#define TAIKO_A_CDC_TX1_MUX_CTL (0x223)
-#define TAIKO_A_CDC_TX1_MUX_CTL__POR (0x08)
-#define TAIKO_A_CDC_TX2_MUX_CTL (0x22B)
-#define TAIKO_A_CDC_TX2_MUX_CTL__POR (0x08)
-#define TAIKO_A_CDC_TX3_MUX_CTL (0x233)
-#define TAIKO_A_CDC_TX3_MUX_CTL__POR (0x08)
-#define TAIKO_A_CDC_TX4_MUX_CTL (0x23B)
-#define TAIKO_A_CDC_TX4_MUX_CTL__POR (0x08)
-#define TAIKO_A_CDC_TX5_MUX_CTL (0x243)
-#define TAIKO_A_CDC_TX5_MUX_CTL__POR (0x08)
-#define TAIKO_A_CDC_TX6_MUX_CTL (0x24B)
-#define TAIKO_A_CDC_TX6_MUX_CTL__POR (0x08)
-#define TAIKO_A_CDC_TX7_MUX_CTL (0x253)
-#define TAIKO_A_CDC_TX7_MUX_CTL__POR (0x08)
-#define TAIKO_A_CDC_TX8_MUX_CTL (0x25B)
-#define TAIKO_A_CDC_TX8_MUX_CTL__POR (0x08)
-#define TAIKO_A_CDC_TX9_MUX_CTL (0x263)
-#define TAIKO_A_CDC_TX9_MUX_CTL__POR (0x08)
-#define TAIKO_A_CDC_TX10_MUX_CTL (0x26B)
-#define TAIKO_A_CDC_TX10_MUX_CTL__POR (0x08)
-#define TAIKO_A_CDC_TX1_CLK_FS_CTL (0x224)
-#define TAIKO_A_CDC_TX1_CLK_FS_CTL__POR (0x03)
-#define TAIKO_A_CDC_TX2_CLK_FS_CTL (0x22C)
-#define TAIKO_A_CDC_TX2_CLK_FS_CTL__POR (0x03)
-#define TAIKO_A_CDC_TX3_CLK_FS_CTL (0x234)
-#define TAIKO_A_CDC_TX3_CLK_FS_CTL__POR (0x03)
-#define TAIKO_A_CDC_TX4_CLK_FS_CTL (0x23C)
-#define TAIKO_A_CDC_TX4_CLK_FS_CTL__POR (0x03)
-#define TAIKO_A_CDC_TX5_CLK_FS_CTL (0x244)
-#define TAIKO_A_CDC_TX5_CLK_FS_CTL__POR (0x03)
-#define TAIKO_A_CDC_TX6_CLK_FS_CTL (0x24C)
-#define TAIKO_A_CDC_TX6_CLK_FS_CTL__POR (0x03)
-#define TAIKO_A_CDC_TX7_CLK_FS_CTL (0x254)
-#define TAIKO_A_CDC_TX7_CLK_FS_CTL__POR (0x03)
-#define TAIKO_A_CDC_TX8_CLK_FS_CTL (0x25C)
-#define TAIKO_A_CDC_TX8_CLK_FS_CTL__POR (0x03)
-#define TAIKO_A_CDC_TX9_CLK_FS_CTL (0x264)
-#define TAIKO_A_CDC_TX9_CLK_FS_CTL__POR (0x03)
-#define TAIKO_A_CDC_TX10_CLK_FS_CTL (0x26C)
-#define TAIKO_A_CDC_TX10_CLK_FS_CTL__POR (0x03)
-#define TAIKO_A_CDC_TX1_DMIC_CTL (0x225)
-#define TAIKO_A_CDC_TX1_DMIC_CTL__POR (0x00)
-#define TAIKO_A_CDC_TX2_DMIC_CTL (0x22D)
-#define TAIKO_A_CDC_TX2_DMIC_CTL__POR (0x00)
-#define TAIKO_A_CDC_TX3_DMIC_CTL (0x235)
-#define TAIKO_A_CDC_TX3_DMIC_CTL__POR (0x00)
-#define TAIKO_A_CDC_TX4_DMIC_CTL (0x23D)
-#define TAIKO_A_CDC_TX4_DMIC_CTL__POR (0x00)
-#define TAIKO_A_CDC_TX5_DMIC_CTL (0x245)
-#define TAIKO_A_CDC_TX5_DMIC_CTL__POR (0x00)
-#define TAIKO_A_CDC_TX6_DMIC_CTL (0x24D)
-#define TAIKO_A_CDC_TX6_DMIC_CTL__POR (0x00)
-#define TAIKO_A_CDC_TX7_DMIC_CTL (0x255)
-#define TAIKO_A_CDC_TX7_DMIC_CTL__POR (0x00)
-#define TAIKO_A_CDC_TX8_DMIC_CTL (0x25D)
-#define TAIKO_A_CDC_TX8_DMIC_CTL__POR (0x00)
-#define TAIKO_A_CDC_TX9_DMIC_CTL (0x265)
-#define TAIKO_A_CDC_TX9_DMIC_CTL__POR (0x00)
-#define TAIKO_A_CDC_TX10_DMIC_CTL (0x26D)
-#define TAIKO_A_CDC_TX10_DMIC_CTL__POR (0x00)
-#define TAIKO_A_CDC_DEBUG_B1_CTL (0x278)
-#define TAIKO_A_CDC_DEBUG_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_DEBUG_B2_CTL (0x279)
-#define TAIKO_A_CDC_DEBUG_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_DEBUG_B3_CTL (0x27A)
-#define TAIKO_A_CDC_DEBUG_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_DEBUG_B4_CTL (0x27B)
-#define TAIKO_A_CDC_DEBUG_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_DEBUG_B5_CTL (0x27C)
-#define TAIKO_A_CDC_DEBUG_B5_CTL__POR (0x00)
-#define TAIKO_A_CDC_DEBUG_B6_CTL (0x27D)
-#define TAIKO_A_CDC_DEBUG_B6_CTL__POR (0x00)
-#define TAIKO_A_CDC_DEBUG_B7_CTL (0x27E)
-#define TAIKO_A_CDC_DEBUG_B7_CTL__POR (0x00)
-#define TAIKO_A_CDC_SRC1_PDA_CFG (0x2A0)
-#define TAIKO_A_CDC_SRC1_PDA_CFG__POR (0x00)
-#define TAIKO_A_CDC_SRC2_PDA_CFG (0x2A8)
-#define TAIKO_A_CDC_SRC2_PDA_CFG__POR (0x00)
-#define TAIKO_A_CDC_SRC1_FS_CTL (0x2A1)
-#define TAIKO_A_CDC_SRC1_FS_CTL__POR (0x1B)
-#define TAIKO_A_CDC_SRC2_FS_CTL (0x2A9)
-#define TAIKO_A_CDC_SRC2_FS_CTL__POR (0x1B)
-#define TAIKO_A_CDC_RX1_B1_CTL (0x2B0)
-#define TAIKO_A_CDC_RX1_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX2_B1_CTL (0x2B8)
-#define TAIKO_A_CDC_RX2_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX3_B1_CTL (0x2C0)
-#define TAIKO_A_CDC_RX3_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX4_B1_CTL (0x2C8)
-#define TAIKO_A_CDC_RX4_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX5_B1_CTL (0x2D0)
-#define TAIKO_A_CDC_RX5_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX6_B1_CTL (0x2D8)
-#define TAIKO_A_CDC_RX6_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX7_B1_CTL (0x2E0)
-#define TAIKO_A_CDC_RX7_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX1_B2_CTL (0x2B1)
-#define TAIKO_A_CDC_RX1_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX2_B2_CTL (0x2B9)
-#define TAIKO_A_CDC_RX2_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX3_B2_CTL (0x2C1)
-#define TAIKO_A_CDC_RX3_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX4_B2_CTL (0x2C9)
-#define TAIKO_A_CDC_RX4_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX5_B2_CTL (0x2D1)
-#define TAIKO_A_CDC_RX5_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX6_B2_CTL (0x2D9)
-#define TAIKO_A_CDC_RX6_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX7_B2_CTL (0x2E1)
-#define TAIKO_A_CDC_RX7_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX1_B3_CTL (0x2B2)
-#define TAIKO_A_CDC_RX1_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX2_B3_CTL (0x2BA)
-#define TAIKO_A_CDC_RX2_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX3_B3_CTL (0x2C2)
-#define TAIKO_A_CDC_RX3_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX4_B3_CTL (0x2CA)
-#define TAIKO_A_CDC_RX4_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX5_B3_CTL (0x2D2)
-#define TAIKO_A_CDC_RX5_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX6_B3_CTL (0x2DA)
-#define TAIKO_A_CDC_RX6_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX7_B3_CTL (0x2E2)
-#define TAIKO_A_CDC_RX7_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX1_B4_CTL (0x2B3)
-#define TAIKO_A_CDC_RX1_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX2_B4_CTL (0x2BB)
-#define TAIKO_A_CDC_RX2_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX3_B4_CTL (0x2C3)
-#define TAIKO_A_CDC_RX3_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX4_B4_CTL (0x2CB)
-#define TAIKO_A_CDC_RX4_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX5_B4_CTL (0x2D3)
-#define TAIKO_A_CDC_RX5_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX6_B4_CTL (0x2DB)
-#define TAIKO_A_CDC_RX6_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX7_B4_CTL (0x2E3)
-#define TAIKO_A_CDC_RX7_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX1_B5_CTL (0x2B4)
-#define TAIKO_A_CDC_RX1_B5_CTL__POR (0x78)
-#define TAIKO_A_CDC_RX2_B5_CTL (0x2BC)
-#define TAIKO_A_CDC_RX2_B5_CTL__POR (0x78)
-#define TAIKO_A_CDC_RX3_B5_CTL (0x2C4)
-#define TAIKO_A_CDC_RX3_B5_CTL__POR (0x78)
-#define TAIKO_A_CDC_RX4_B5_CTL (0x2CC)
-#define TAIKO_A_CDC_RX4_B5_CTL__POR (0x78)
-#define TAIKO_A_CDC_RX5_B5_CTL (0x2D4)
-#define TAIKO_A_CDC_RX5_B5_CTL__POR (0x78)
-#define TAIKO_A_CDC_RX6_B5_CTL (0x2DC)
-#define TAIKO_A_CDC_RX6_B5_CTL__POR (0x78)
-#define TAIKO_A_CDC_RX7_B5_CTL (0x2E4)
-#define TAIKO_A_CDC_RX7_B5_CTL__POR (0x78)
-#define TAIKO_A_CDC_RX1_B6_CTL (0x2B5)
-#define TAIKO_A_CDC_RX1_B6_CTL__POR (0x80)
-#define TAIKO_A_CDC_RX2_B6_CTL (0x2BD)
-#define TAIKO_A_CDC_RX2_B6_CTL__POR (0x80)
-#define TAIKO_A_CDC_RX3_B6_CTL (0x2C5)
-#define TAIKO_A_CDC_RX3_B6_CTL__POR (0x80)
-#define TAIKO_A_CDC_RX4_B6_CTL (0x2CD)
-#define TAIKO_A_CDC_RX4_B6_CTL__POR (0x80)
-#define TAIKO_A_CDC_RX5_B6_CTL (0x2D5)
-#define TAIKO_A_CDC_RX5_B6_CTL__POR (0x80)
-#define TAIKO_A_CDC_RX6_B6_CTL (0x2DD)
-#define TAIKO_A_CDC_RX6_B6_CTL__POR (0x80)
-#define TAIKO_A_CDC_RX7_B6_CTL (0x2E5)
-#define TAIKO_A_CDC_RX7_B6_CTL__POR (0x80)
-#define TAIKO_A_CDC_RX1_VOL_CTL_B1_CTL (0x2B6)
-#define TAIKO_A_CDC_RX1_VOL_CTL_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX2_VOL_CTL_B1_CTL (0x2BE)
-#define TAIKO_A_CDC_RX2_VOL_CTL_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX3_VOL_CTL_B1_CTL (0x2C6)
-#define TAIKO_A_CDC_RX3_VOL_CTL_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX4_VOL_CTL_B1_CTL (0x2CE)
-#define TAIKO_A_CDC_RX4_VOL_CTL_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX5_VOL_CTL_B1_CTL (0x2D6)
-#define TAIKO_A_CDC_RX5_VOL_CTL_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX6_VOL_CTL_B1_CTL (0x2DE)
-#define TAIKO_A_CDC_RX6_VOL_CTL_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX7_VOL_CTL_B1_CTL (0x2E6)
-#define TAIKO_A_CDC_RX7_VOL_CTL_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX1_VOL_CTL_B2_CTL (0x2B7)
-#define TAIKO_A_CDC_RX1_VOL_CTL_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX2_VOL_CTL_B2_CTL (0x2BF)
-#define TAIKO_A_CDC_RX2_VOL_CTL_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX3_VOL_CTL_B2_CTL (0x2C7)
-#define TAIKO_A_CDC_RX3_VOL_CTL_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX4_VOL_CTL_B2_CTL (0x2CF)
-#define TAIKO_A_CDC_RX4_VOL_CTL_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX5_VOL_CTL_B2_CTL (0x2D7)
-#define TAIKO_A_CDC_RX5_VOL_CTL_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX6_VOL_CTL_B2_CTL (0x2DF)
-#define TAIKO_A_CDC_RX6_VOL_CTL_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_RX7_VOL_CTL_B2_CTL (0x2E7)
-#define TAIKO_A_CDC_RX7_VOL_CTL_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_VBAT_CFG (0x2E8)
-#define TAIKO_A_CDC_VBAT_CFG__POR (0x1A)
-#define TAIKO_A_CDC_VBAT_ADC_CAL1 (0x2E9)
-#define TAIKO_A_CDC_VBAT_ADC_CAL1__POR (0x00)
-#define TAIKO_A_CDC_VBAT_ADC_CAL2 (0x2EA)
-#define TAIKO_A_CDC_VBAT_ADC_CAL2__POR (0x00)
-#define TAIKO_A_CDC_VBAT_ADC_CAL3 (0x2EB)
-#define TAIKO_A_CDC_VBAT_ADC_CAL3__POR (0x04)
-#define TAIKO_A_CDC_VBAT_PK_EST1 (0x2EC)
-#define TAIKO_A_CDC_VBAT_PK_EST1__POR (0xE0)
-#define TAIKO_A_CDC_VBAT_PK_EST2 (0x2ED)
-#define TAIKO_A_CDC_VBAT_PK_EST2__POR (0x01)
-#define TAIKO_A_CDC_VBAT_PK_EST3 (0x2EE)
-#define TAIKO_A_CDC_VBAT_PK_EST3__POR (0x40)
-#define TAIKO_A_CDC_VBAT_RF_PROC1 (0x2EF)
-#define TAIKO_A_CDC_VBAT_RF_PROC1__POR (0x2A)
-#define TAIKO_A_CDC_VBAT_RF_PROC2 (0x2F0)
-#define TAIKO_A_CDC_VBAT_RF_PROC2__POR (0x86)
-#define TAIKO_A_CDC_VBAT_TAC1 (0x2F1)
-#define TAIKO_A_CDC_VBAT_TAC1__POR (0x70)
-#define TAIKO_A_CDC_VBAT_TAC2 (0x2F2)
-#define TAIKO_A_CDC_VBAT_TAC2__POR (0x18)
-#define TAIKO_A_CDC_VBAT_TAC3 (0x2F3)
-#define TAIKO_A_CDC_VBAT_TAC3__POR (0x18)
-#define TAIKO_A_CDC_VBAT_TAC4 (0x2F4)
-#define TAIKO_A_CDC_VBAT_TAC4__POR (0x03)
-#define TAIKO_A_CDC_VBAT_GAIN_UPD1 (0x2F5)
-#define TAIKO_A_CDC_VBAT_GAIN_UPD1__POR (0x01)
-#define TAIKO_A_CDC_VBAT_GAIN_UPD2 (0x2F6)
-#define TAIKO_A_CDC_VBAT_GAIN_UPD2__POR (0x00)
-#define TAIKO_A_CDC_VBAT_GAIN_UPD3 (0x2F7)
-#define TAIKO_A_CDC_VBAT_GAIN_UPD3__POR (0x64)
-#define TAIKO_A_CDC_VBAT_GAIN_UPD4 (0x2F8)
-#define TAIKO_A_CDC_VBAT_GAIN_UPD4__POR (0x01)
-#define TAIKO_A_CDC_VBAT_DEBUG1 (0x2F9)
-#define TAIKO_A_CDC_VBAT_DEBUG1__POR (0x00)
-#define TAIKO_A_CDC_CLK_ANC_RESET_CTL (0x300)
-#define TAIKO_A_CDC_CLK_ANC_RESET_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_RX_RESET_CTL (0x301)
-#define TAIKO_A_CDC_CLK_RX_RESET_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_TX_RESET_B1_CTL (0x302)
-#define TAIKO_A_CDC_CLK_TX_RESET_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_TX_RESET_B2_CTL (0x303)
-#define TAIKO_A_CDC_CLK_TX_RESET_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_DMIC_B1_CTL (0x304)
-#define TAIKO_A_CDC_CLK_DMIC_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_DMIC_B2_CTL (0x305)
-#define TAIKO_A_CDC_CLK_DMIC_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_RX_I2S_CTL (0x306)
-#define TAIKO_A_CDC_CLK_RX_I2S_CTL__POR (0x03)
-#define TAIKO_A_CDC_CLK_TX_I2S_CTL (0x307)
-#define TAIKO_A_CDC_CLK_TX_I2S_CTL__POR (0x03)
-#define TAIKO_A_CDC_CLK_OTHR_RESET_B1_CTL (0x308)
-#define TAIKO_A_CDC_CLK_OTHR_RESET_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_OTHR_RESET_B2_CTL (0x309)
-#define TAIKO_A_CDC_CLK_OTHR_RESET_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_TX_CLK_EN_B1_CTL (0x30A)
-#define TAIKO_A_CDC_CLK_TX_CLK_EN_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_TX_CLK_EN_B2_CTL (0x30B)
-#define TAIKO_A_CDC_CLK_TX_CLK_EN_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_OTHR_CTL (0x30C)
-#define TAIKO_A_CDC_CLK_OTHR_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_RDAC_CLK_EN_CTL (0x30D)
-#define TAIKO_A_CDC_CLK_RDAC_CLK_EN_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_ANC_CLK_EN_CTL (0x30E)
-#define TAIKO_A_CDC_CLK_ANC_CLK_EN_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_RX_B1_CTL (0x30F)
-#define TAIKO_A_CDC_CLK_RX_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_RX_B2_CTL (0x310)
-#define TAIKO_A_CDC_CLK_RX_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_MCLK_CTL (0x311)
-#define TAIKO_A_CDC_CLK_MCLK_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_PDM_CTL (0x312)
-#define TAIKO_A_CDC_CLK_PDM_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_SD_CTL (0x313)
-#define TAIKO_A_CDC_CLK_SD_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLK_POWER_CTL (0x314)
-#define TAIKO_A_CDC_CLK_POWER_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLSH_B1_CTL (0x320)
-#define TAIKO_A_CDC_CLSH_B1_CTL__POR (0xE4)
-#define TAIKO_A_CDC_CLSH_B2_CTL (0x321)
-#define TAIKO_A_CDC_CLSH_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLSH_B3_CTL (0x322)
-#define TAIKO_A_CDC_CLSH_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_CLSH_BUCK_NCP_VARS (0x323)
-#define TAIKO_A_CDC_CLSH_BUCK_NCP_VARS__POR (0x00)
-#define TAIKO_A_CDC_CLSH_IDLE_HPH_THSD (0x324)
-#define TAIKO_A_CDC_CLSH_IDLE_HPH_THSD__POR (0x12)
-#define TAIKO_A_CDC_CLSH_IDLE_EAR_THSD (0x325)
-#define TAIKO_A_CDC_CLSH_IDLE_EAR_THSD__POR (0x0C)
-#define TAIKO_A_CDC_CLSH_FCLKONLY_HPH_THSD (0x326)
-#define TAIKO_A_CDC_CLSH_FCLKONLY_HPH_THSD__POR (0x18)
-#define TAIKO_A_CDC_CLSH_FCLKONLY_EAR_THSD (0x327)
-#define TAIKO_A_CDC_CLSH_FCLKONLY_EAR_THSD__POR (0x23)
-#define TAIKO_A_CDC_CLSH_K_ADDR (0x328)
-#define TAIKO_A_CDC_CLSH_K_ADDR__POR (0x00)
-#define TAIKO_A_CDC_CLSH_K_DATA (0x329)
-#define TAIKO_A_CDC_CLSH_K_DATA__POR (0xA4)
-#define TAIKO_A_CDC_CLSH_I_PA_FACT_HPH_L (0x32A)
-#define TAIKO_A_CDC_CLSH_I_PA_FACT_HPH_L__POR (0xD7)
-#define TAIKO_A_CDC_CLSH_I_PA_FACT_HPH_U (0x32B)
-#define TAIKO_A_CDC_CLSH_I_PA_FACT_HPH_U__POR (0x05)
-#define TAIKO_A_CDC_CLSH_I_PA_FACT_EAR_L (0x32C)
-#define TAIKO_A_CDC_CLSH_I_PA_FACT_EAR_L__POR (0x60)
-#define TAIKO_A_CDC_CLSH_I_PA_FACT_EAR_U (0x32D)
-#define TAIKO_A_CDC_CLSH_I_PA_FACT_EAR_U__POR (0x09)
-#define TAIKO_A_CDC_CLSH_V_PA_HD_EAR (0x32E)
-#define TAIKO_A_CDC_CLSH_V_PA_HD_EAR__POR (0x00)
-#define TAIKO_A_CDC_CLSH_V_PA_HD_HPH (0x32F)
-#define TAIKO_A_CDC_CLSH_V_PA_HD_HPH__POR (0x00)
-#define TAIKO_A_CDC_CLSH_V_PA_MIN_EAR (0x330)
-#define TAIKO_A_CDC_CLSH_V_PA_MIN_EAR__POR (0x00)
-#define TAIKO_A_CDC_CLSH_V_PA_MIN_HPH (0x331)
-#define TAIKO_A_CDC_CLSH_V_PA_MIN_HPH__POR (0x00)
-#define TAIKO_A_CDC_IIR1_GAIN_B1_CTL (0x340)
-#define TAIKO_A_CDC_IIR1_GAIN_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR2_GAIN_B1_CTL (0x350)
-#define TAIKO_A_CDC_IIR2_GAIN_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR1_GAIN_B2_CTL (0x341)
-#define TAIKO_A_CDC_IIR1_GAIN_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR2_GAIN_B2_CTL (0x351)
-#define TAIKO_A_CDC_IIR2_GAIN_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR1_GAIN_B3_CTL (0x342)
-#define TAIKO_A_CDC_IIR1_GAIN_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR2_GAIN_B3_CTL (0x352)
-#define TAIKO_A_CDC_IIR2_GAIN_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR1_GAIN_B4_CTL (0x343)
-#define TAIKO_A_CDC_IIR1_GAIN_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR2_GAIN_B4_CTL (0x353)
-#define TAIKO_A_CDC_IIR2_GAIN_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR1_GAIN_B5_CTL (0x344)
-#define TAIKO_A_CDC_IIR1_GAIN_B5_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR2_GAIN_B5_CTL (0x354)
-#define TAIKO_A_CDC_IIR2_GAIN_B5_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR1_GAIN_B6_CTL (0x345)
-#define TAIKO_A_CDC_IIR1_GAIN_B6_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR2_GAIN_B6_CTL (0x355)
-#define TAIKO_A_CDC_IIR2_GAIN_B6_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR1_GAIN_B7_CTL (0x346)
-#define TAIKO_A_CDC_IIR1_GAIN_B7_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR2_GAIN_B7_CTL (0x356)
-#define TAIKO_A_CDC_IIR2_GAIN_B7_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR1_GAIN_B8_CTL (0x347)
-#define TAIKO_A_CDC_IIR1_GAIN_B8_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR2_GAIN_B8_CTL (0x357)
-#define TAIKO_A_CDC_IIR2_GAIN_B8_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR1_CTL (0x348)
-#define TAIKO_A_CDC_IIR1_CTL__POR (0x40)
-#define TAIKO_A_CDC_IIR2_CTL (0x358)
-#define TAIKO_A_CDC_IIR2_CTL__POR (0x40)
-#define TAIKO_A_CDC_IIR1_GAIN_TIMER_CTL (0x349)
-#define TAIKO_A_CDC_IIR1_GAIN_TIMER_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR2_GAIN_TIMER_CTL (0x359)
-#define TAIKO_A_CDC_IIR2_GAIN_TIMER_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR1_COEF_B1_CTL (0x34A)
-#define TAIKO_A_CDC_IIR1_COEF_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR2_COEF_B1_CTL (0x35A)
-#define TAIKO_A_CDC_IIR2_COEF_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR1_COEF_B2_CTL (0x34B)
-#define TAIKO_A_CDC_IIR1_COEF_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_IIR2_COEF_B2_CTL (0x35B)
-#define TAIKO_A_CDC_IIR2_COEF_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_TOP_GAIN_UPDATE (0x360)
-#define TAIKO_A_CDC_TOP_GAIN_UPDATE__POR (0x00)
-#define TAIKO_A_CDC_COMP0_B1_CTL (0x368)
-#define TAIKO_A_CDC_COMP0_B1_CTL__POR (0x30)
-#define TAIKO_A_CDC_COMP1_B1_CTL (0x370)
-#define TAIKO_A_CDC_COMP1_B1_CTL__POR (0x30)
-#define TAIKO_A_CDC_COMP2_B1_CTL (0x378)
-#define TAIKO_A_CDC_COMP2_B1_CTL__POR (0x30)
-#define TAIKO_A_CDC_COMP0_B2_CTL (0x369)
-#define TAIKO_A_CDC_COMP0_B2_CTL__POR (0xB5)
-#define TAIKO_A_CDC_COMP1_B2_CTL (0x371)
-#define TAIKO_A_CDC_COMP1_B2_CTL__POR (0xB5)
-#define TAIKO_A_CDC_COMP2_B2_CTL (0x379)
-#define TAIKO_A_CDC_COMP2_B2_CTL__POR (0xB5)
-#define TAIKO_A_CDC_COMP0_B3_CTL (0x36A)
-#define TAIKO_A_CDC_COMP0_B3_CTL__POR (0x28)
-#define TAIKO_A_CDC_COMP1_B3_CTL (0x372)
-#define TAIKO_A_CDC_COMP1_B3_CTL__POR (0x28)
-#define TAIKO_A_CDC_COMP2_B3_CTL (0x37A)
-#define TAIKO_A_CDC_COMP2_B3_CTL__POR (0x28)
-#define TAIKO_A_CDC_COMP0_B4_CTL (0x36B)
-#define TAIKO_A_CDC_COMP0_B4_CTL__POR (0x3C)
-#define TAIKO_A_CDC_COMP1_B4_CTL (0x373)
-#define TAIKO_A_CDC_COMP1_B4_CTL__POR (0x3C)
-#define TAIKO_A_CDC_COMP2_B4_CTL (0x37B)
-#define TAIKO_A_CDC_COMP2_B4_CTL__POR (0x3C)
-#define TAIKO_A_CDC_COMP0_B5_CTL (0x36C)
-#define TAIKO_A_CDC_COMP0_B5_CTL__POR (0x1F)
-#define TAIKO_A_CDC_COMP1_B5_CTL (0x374)
-#define TAIKO_A_CDC_COMP1_B5_CTL__POR (0x1F)
-#define TAIKO_A_CDC_COMP2_B5_CTL (0x37C)
-#define TAIKO_A_CDC_COMP2_B5_CTL__POR (0x1F)
-#define TAIKO_A_CDC_COMP0_B6_CTL (0x36D)
-#define TAIKO_A_CDC_COMP0_B6_CTL__POR (0x00)
-#define TAIKO_A_CDC_COMP1_B6_CTL (0x375)
-#define TAIKO_A_CDC_COMP1_B6_CTL__POR (0x00)
-#define TAIKO_A_CDC_COMP2_B6_CTL (0x37D)
-#define TAIKO_A_CDC_COMP2_B6_CTL__POR (0x00)
-#define TAIKO_A_CDC_COMP0_SHUT_DOWN_STATUS (0x36E)
-#define TAIKO_A_CDC_COMP0_SHUT_DOWN_STATUS__POR (0x03)
-#define TAIKO_A_CDC_COMP1_SHUT_DOWN_STATUS (0x376)
-#define TAIKO_A_CDC_COMP1_SHUT_DOWN_STATUS__POR (0x03)
-#define TAIKO_A_CDC_COMP2_SHUT_DOWN_STATUS (0x37E)
-#define TAIKO_A_CDC_COMP2_SHUT_DOWN_STATUS__POR (0x03)
-#define TAIKO_A_CDC_COMP0_FS_CFG (0x36F)
-#define TAIKO_A_CDC_COMP0_FS_CFG__POR (0x03)
-#define TAIKO_A_CDC_COMP1_FS_CFG (0x377)
-#define TAIKO_A_CDC_COMP1_FS_CFG__POR (0x03)
-#define TAIKO_A_CDC_COMP2_FS_CFG (0x37F)
-#define TAIKO_A_CDC_COMP2_FS_CFG__POR (0x03)
-#define TAIKO_A_CDC_CONN_RX1_B1_CTL (0x380)
-#define TAIKO_A_CDC_CONN_RX1_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX1_B2_CTL (0x381)
-#define TAIKO_A_CDC_CONN_RX1_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX1_B3_CTL (0x382)
-#define TAIKO_A_CDC_CONN_RX1_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX2_B1_CTL (0x383)
-#define TAIKO_A_CDC_CONN_RX2_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX2_B2_CTL (0x384)
-#define TAIKO_A_CDC_CONN_RX2_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX2_B3_CTL (0x385)
-#define TAIKO_A_CDC_CONN_RX2_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX3_B1_CTL (0x386)
-#define TAIKO_A_CDC_CONN_RX3_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX3_B2_CTL (0x387)
-#define TAIKO_A_CDC_CONN_RX3_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX4_B1_CTL (0x388)
-#define TAIKO_A_CDC_CONN_RX4_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX4_B2_CTL (0x389)
-#define TAIKO_A_CDC_CONN_RX4_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX5_B1_CTL (0x38A)
-#define TAIKO_A_CDC_CONN_RX5_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX5_B2_CTL (0x38B)
-#define TAIKO_A_CDC_CONN_RX5_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX6_B1_CTL (0x38C)
-#define TAIKO_A_CDC_CONN_RX6_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX6_B2_CTL (0x38D)
-#define TAIKO_A_CDC_CONN_RX6_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX7_B1_CTL (0x38E)
-#define TAIKO_A_CDC_CONN_RX7_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX7_B2_CTL (0x38F)
-#define TAIKO_A_CDC_CONN_RX7_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX7_B3_CTL (0x390)
-#define TAIKO_A_CDC_CONN_RX7_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_ANC_B1_CTL (0x391)
-#define TAIKO_A_CDC_CONN_ANC_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_ANC_B2_CTL (0x392)
-#define TAIKO_A_CDC_CONN_ANC_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_TX_B1_CTL (0x393)
-#define TAIKO_A_CDC_CONN_TX_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_TX_B2_CTL (0x394)
-#define TAIKO_A_CDC_CONN_TX_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_TX_B3_CTL (0x395)
-#define TAIKO_A_CDC_CONN_TX_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_TX_B4_CTL (0x396)
-#define TAIKO_A_CDC_CONN_TX_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_EQ1_B1_CTL (0x397)
-#define TAIKO_A_CDC_CONN_EQ1_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_EQ1_B2_CTL (0x398)
-#define TAIKO_A_CDC_CONN_EQ1_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_EQ1_B3_CTL (0x399)
-#define TAIKO_A_CDC_CONN_EQ1_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_EQ1_B4_CTL (0x39A)
-#define TAIKO_A_CDC_CONN_EQ1_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_EQ2_B1_CTL (0x39B)
-#define TAIKO_A_CDC_CONN_EQ2_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_EQ2_B2_CTL (0x39C)
-#define TAIKO_A_CDC_CONN_EQ2_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_EQ2_B3_CTL (0x39D)
-#define TAIKO_A_CDC_CONN_EQ2_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_EQ2_B4_CTL (0x39E)
-#define TAIKO_A_CDC_CONN_EQ2_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_SRC1_B1_CTL (0x39F)
-#define TAIKO_A_CDC_CONN_SRC1_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_SRC1_B2_CTL (0x3A0)
-#define TAIKO_A_CDC_CONN_SRC1_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_SRC2_B1_CTL (0x3A1)
-#define TAIKO_A_CDC_CONN_SRC2_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_SRC2_B2_CTL (0x3A2)
-#define TAIKO_A_CDC_CONN_SRC2_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_TX_SB_B1_CTL (0x3A3)
-#define TAIKO_A_CDC_CONN_TX_SB_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_TX_SB_B2_CTL (0x3A4)
-#define TAIKO_A_CDC_CONN_TX_SB_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_TX_SB_B3_CTL (0x3A5)
-#define TAIKO_A_CDC_CONN_TX_SB_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_TX_SB_B4_CTL (0x3A6)
-#define TAIKO_A_CDC_CONN_TX_SB_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_TX_SB_B5_CTL (0x3A7)
-#define TAIKO_A_CDC_CONN_TX_SB_B5_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_TX_SB_B6_CTL (0x3A8)
-#define TAIKO_A_CDC_CONN_TX_SB_B6_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_TX_SB_B7_CTL (0x3A9)
-#define TAIKO_A_CDC_CONN_TX_SB_B7_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_TX_SB_B8_CTL (0x3AA)
-#define TAIKO_A_CDC_CONN_TX_SB_B8_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_TX_SB_B9_CTL (0x3AB)
-#define TAIKO_A_CDC_CONN_TX_SB_B9_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_TX_SB_B10_CTL (0x3AC)
-#define TAIKO_A_CDC_CONN_TX_SB_B10_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_TX_SB_B11_CTL (0x3AD)
-#define TAIKO_A_CDC_CONN_TX_SB_B11_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX_SB_B1_CTL (0x3AE)
-#define TAIKO_A_CDC_CONN_RX_SB_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_RX_SB_B2_CTL (0x3AF)
-#define TAIKO_A_CDC_CONN_RX_SB_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_CLSH_CTL (0x3B0)
-#define TAIKO_A_CDC_CONN_CLSH_CTL__POR (0x00)
-#define TAIKO_A_CDC_CONN_MISC (0x3B1)
-#define TAIKO_A_CDC_CONN_MISC__POR (0x01)
-#define TAIKO_A_CDC_CONN_MAD (0x3B2)
-#define TAIKO_A_CDC_CONN_MAD__POR (0x01)
-#define TAIKO_A_CDC_MBHC_EN_CTL (0x3C0)
-#define TAIKO_A_CDC_MBHC_EN_CTL__POR (0x00)
-#define TAIKO_A_CDC_MBHC_FIR_B1_CFG (0x3C1)
-#define TAIKO_A_CDC_MBHC_FIR_B1_CFG__POR (0x00)
-#define TAIKO_A_CDC_MBHC_FIR_B2_CFG (0x3C2)
-#define TAIKO_A_CDC_MBHC_FIR_B2_CFG__POR (0x06)
-#define TAIKO_A_CDC_MBHC_TIMER_B1_CTL (0x3C3)
-#define TAIKO_A_CDC_MBHC_TIMER_B1_CTL__POR (0x03)
-#define TAIKO_A_CDC_MBHC_TIMER_B2_CTL (0x3C4)
-#define TAIKO_A_CDC_MBHC_TIMER_B2_CTL__POR (0x09)
-#define TAIKO_A_CDC_MBHC_TIMER_B3_CTL (0x3C5)
-#define TAIKO_A_CDC_MBHC_TIMER_B3_CTL__POR (0x1E)
-#define TAIKO_A_CDC_MBHC_TIMER_B4_CTL (0x3C6)
-#define TAIKO_A_CDC_MBHC_TIMER_B4_CTL__POR (0x45)
-#define TAIKO_A_CDC_MBHC_TIMER_B5_CTL (0x3C7)
-#define TAIKO_A_CDC_MBHC_TIMER_B5_CTL__POR (0x04)
-#define TAIKO_A_CDC_MBHC_TIMER_B6_CTL (0x3C8)
-#define TAIKO_A_CDC_MBHC_TIMER_B6_CTL__POR (0x78)
-#define TAIKO_A_CDC_MBHC_B1_STATUS (0x3C9)
-#define TAIKO_A_CDC_MBHC_B1_STATUS__POR (0x00)
-#define TAIKO_A_CDC_MBHC_B2_STATUS (0x3CA)
-#define TAIKO_A_CDC_MBHC_B2_STATUS__POR (0x00)
-#define TAIKO_A_CDC_MBHC_B3_STATUS (0x3CB)
-#define TAIKO_A_CDC_MBHC_B3_STATUS__POR (0x00)
-#define TAIKO_A_CDC_MBHC_B4_STATUS (0x3CC)
-#define TAIKO_A_CDC_MBHC_B4_STATUS__POR (0x00)
-#define TAIKO_A_CDC_MBHC_B5_STATUS (0x3CD)
-#define TAIKO_A_CDC_MBHC_B5_STATUS__POR (0x00)
-#define TAIKO_A_CDC_MBHC_B1_CTL (0x3CE)
-#define TAIKO_A_CDC_MBHC_B1_CTL__POR (0xC0)
-#define TAIKO_A_CDC_MBHC_B2_CTL (0x3CF)
-#define TAIKO_A_CDC_MBHC_B2_CTL__POR (0x5D)
-#define TAIKO_A_CDC_MBHC_VOLT_B1_CTL (0x3D0)
-#define TAIKO_A_CDC_MBHC_VOLT_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_MBHC_VOLT_B2_CTL (0x3D1)
-#define TAIKO_A_CDC_MBHC_VOLT_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_MBHC_VOLT_B3_CTL (0x3D2)
-#define TAIKO_A_CDC_MBHC_VOLT_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_MBHC_VOLT_B4_CTL (0x3D3)
-#define TAIKO_A_CDC_MBHC_VOLT_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_MBHC_VOLT_B5_CTL (0x3D4)
-#define TAIKO_A_CDC_MBHC_VOLT_B5_CTL__POR (0x00)
-#define TAIKO_A_CDC_MBHC_VOLT_B6_CTL (0x3D5)
-#define TAIKO_A_CDC_MBHC_VOLT_B6_CTL__POR (0x00)
-#define TAIKO_A_CDC_MBHC_VOLT_B7_CTL (0x3D6)
-#define TAIKO_A_CDC_MBHC_VOLT_B7_CTL__POR (0xFF)
-#define TAIKO_A_CDC_MBHC_VOLT_B8_CTL (0x3D7)
-#define TAIKO_A_CDC_MBHC_VOLT_B8_CTL__POR (0x07)
-#define TAIKO_A_CDC_MBHC_VOLT_B9_CTL (0x3D8)
-#define TAIKO_A_CDC_MBHC_VOLT_B9_CTL__POR (0xFF)
-#define TAIKO_A_CDC_MBHC_VOLT_B10_CTL (0x3D9)
-#define TAIKO_A_CDC_MBHC_VOLT_B10_CTL__POR (0x7F)
-#define TAIKO_A_CDC_MBHC_VOLT_B11_CTL (0x3DA)
-#define TAIKO_A_CDC_MBHC_VOLT_B11_CTL__POR (0x00)
-#define TAIKO_A_CDC_MBHC_VOLT_B12_CTL (0x3DB)
-#define TAIKO_A_CDC_MBHC_VOLT_B12_CTL__POR (0x80)
-#define TAIKO_A_CDC_MBHC_CLK_CTL (0x3DC)
-#define TAIKO_A_CDC_MBHC_CLK_CTL__POR (0x00)
-#define TAIKO_A_CDC_MBHC_INT_CTL (0x3DD)
-#define TAIKO_A_CDC_MBHC_INT_CTL__POR (0x00)
-#define TAIKO_A_CDC_MBHC_DEBUG_CTL (0x3DE)
-#define TAIKO_A_CDC_MBHC_DEBUG_CTL__POR (0x00)
-#define TAIKO_A_CDC_MBHC_SPARE (0x3DF)
-#define TAIKO_A_CDC_MBHC_SPARE__POR (0x00)
-#define TAIKO_A_CDC_MAD_MAIN_CTL_1 (0x3E0)
-#define TAIKO_A_CDC_MAD_MAIN_CTL_1__POR (0x00)
-#define TAIKO_A_CDC_MAD_MAIN_CTL_2 (0x3E1)
-#define TAIKO_A_CDC_MAD_MAIN_CTL_2__POR (0x00)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_1 (0x3E2)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_1__POR (0x00)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_2 (0x3E3)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_2__POR (0x00)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_3 (0x3E4)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_3__POR (0x00)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_4 (0x3E5)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_4__POR (0x00)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_5 (0x3E6)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_5__POR (0x00)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_6 (0x3E7)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_6__POR (0x00)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_7 (0x3E8)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_7__POR (0x00)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_8 (0x3E9)
-#define TAIKO_A_CDC_MAD_AUDIO_CTL_8__POR (0x00)
-#define TAIKO_A_CDC_MAD_AUDIO_IIR_CTL_PTR (0x3EA)
-#define TAIKO_A_CDC_MAD_AUDIO_IIR_CTL_PTR__POR (0x00)
-#define TAIKO_A_CDC_MAD_AUDIO_IIR_CTL_VAL (0x3EB)
-#define TAIKO_A_CDC_MAD_AUDIO_IIR_CTL_VAL__POR (0x40)
-#define TAIKO_A_CDC_MAD_ULTR_CTL_1 (0x3EC)
-#define TAIKO_A_CDC_MAD_ULTR_CTL_1__POR (0x00)
-#define TAIKO_A_CDC_MAD_ULTR_CTL_2 (0x3ED)
-#define TAIKO_A_CDC_MAD_ULTR_CTL_2__POR (0x00)
-#define TAIKO_A_CDC_MAD_ULTR_CTL_3 (0x3EE)
-#define TAIKO_A_CDC_MAD_ULTR_CTL_3__POR (0x00)
-#define TAIKO_A_CDC_MAD_ULTR_CTL_4 (0x3EF)
-#define TAIKO_A_CDC_MAD_ULTR_CTL_4__POR (0x00)
-#define TAIKO_A_CDC_MAD_ULTR_CTL_5 (0x3F0)
-#define TAIKO_A_CDC_MAD_ULTR_CTL_5__POR (0x00)
-#define TAIKO_A_CDC_MAD_ULTR_CTL_6 (0x3F1)
-#define TAIKO_A_CDC_MAD_ULTR_CTL_6__POR (0x00)
-#define TAIKO_A_CDC_MAD_ULTR_CTL_7 (0x3F2)
-#define TAIKO_A_CDC_MAD_ULTR_CTL_7__POR (0x00)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_1 (0x3F3)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_1__POR (0x00)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_2 (0x3F4)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_2__POR (0x00)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_3 (0x3F5)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_3__POR (0x00)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_4 (0x3F6)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_4__POR (0x00)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_5 (0x3F7)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_5__POR (0x00)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_6 (0x3F8)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_6__POR (0x00)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_7 (0x3F9)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_7__POR (0x00)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_8 (0x3FA)
-#define TAIKO_A_CDC_MAD_BEACON_CTL_8__POR (0x00)
-#define TAIKO_A_CDC_MAD_BEACON_IIR_CTL_PTR (0x3FB)
-#define TAIKO_A_CDC_MAD_BEACON_IIR_CTL_PTR__POR (0x00)
-#define TAIKO_A_CDC_MAD_BEACON_IIR_CTL_VAL (0x3FC)
-#define TAIKO_A_CDC_MAD_BEACON_IIR_CTL_VAL__POR (0x00)
-
-/* Taiko v2+ registers */
-#define TAIKO_A_CDC_TX_1_GAIN (0x153)
-#define TAIKO_A_CDC_TX_1_GAIN__POR (0x02)
-#define TAIKO_A_CDC_TX_2_GAIN (0x155)
-#define TAIKO_A_CDC_TX_2_GAIN__POR (0x02)
-#define TAIKO_A_CDC_TX_1_2_ADC_IB (0x156)
-#define TAIKO_A_CDC_TX_1_2_ADC_IB__POR (0x44)
-#define TAIKO_A_CDC_TX_3_GAIN (0x15D)
-#define TAIKO_A_CDC_TX_3_GAIN__POR (0x02)
-#define TAIKO_A_CDC_TX_4_GAIN (0x15F)
-#define TAIKO_A_CDC_TX_4_GAIN__POR (0x02)
-#define TAIKO_A_CDC_TX_3_4_ADC_IB (0x160)
-#define TAIKO_A_CDC_TX_3_4_ADC_IB__POR (0x44)
-#define TAIKO_A_CDC_TX_5_GAIN (0x167)
-#define TAIKO_A_CDC_TX_5_GAIN__POR (0x02)
-#define TAIKO_A_CDC_TX_6_GAIN (0x169)
-#define TAIKO_A_CDC_TX_6_GAIN__POR (0x02)
-#define TAIKO_A_CDC_TX_5_6_ADC_IB (0x16A)
-#define TAIKO_A_CDC_TX_5_6_ADC_IB__POR (0x44)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL0 (0x270)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL0__POR (0x00)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL1 (0x271)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL1__POR (0x00)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL2 (0x272)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL2__POR (0x00)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL3 (0x273)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL3__POR (0x00)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL4 (0x274)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL4__POR (0x00)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL5 (0x275)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL5__POR (0x00)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL6 (0x276)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL6__POR (0x00)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL7 (0x277)
-#define TAIKO_A_CDC_SPKR_CLIPDET_VAL7__POR (0x00)
-#define TAIKO_A_CDC_VBAT_GAIN_UPD_MON (0x2FA)
-#define TAIKO_A_CDC_VBAT_GAIN_UPD_MON__POR (0x00)
-#define TAIKO_A_CDC_VBAT_GAIN_MON_VAL (0x2FB)
-#define TAIKO_A_CDC_VBAT_GAIN_MON_VAL__POR (0x00)
-#define TAIKO_A_CDC_PA_RAMP_B1_CTL (0x361)
-#define TAIKO_A_CDC_PA_RAMP_B1_CTL__POR (0x00)
-#define TAIKO_A_CDC_PA_RAMP_B2_CTL (0x362)
-#define TAIKO_A_CDC_PA_RAMP_B2_CTL__POR (0x00)
-#define TAIKO_A_CDC_PA_RAMP_B3_CTL (0x363)
-#define TAIKO_A_CDC_PA_RAMP_B3_CTL__POR (0x00)
-#define TAIKO_A_CDC_PA_RAMP_B4_CTL (0x364)
-#define TAIKO_A_CDC_PA_RAMP_B4_CTL__POR (0x00)
-#define TAIKO_A_CDC_SPKR_CLIPDET_B1_CTL (0x365)
-#define TAIKO_A_CDC_SPKR_CLIPDET_B1_CTL__POR (0x00)
-
-/* SLIMBUS Slave Registers */
-#define TAIKO_SLIM_PGD_PORT_INT_EN0 (0x30)
-#define TAIKO_SLIM_PGD_PORT_INT_STATUS_RX_0 (0x34)
-#define TAIKO_SLIM_PGD_PORT_INT_STATUS_RX_1 (0x35)
-#define TAIKO_SLIM_PGD_PORT_INT_STATUS_TX_0 (0x36)
-#define TAIKO_SLIM_PGD_PORT_INT_STATUS_TX_1 (0x37)
-#define TAIKO_SLIM_PGD_PORT_INT_CLR_RX_0 (0x38)
-#define TAIKO_SLIM_PGD_PORT_INT_CLR_RX_1 (0x39)
-#define TAIKO_SLIM_PGD_PORT_INT_CLR_TX_0 (0x3A)
-#define TAIKO_SLIM_PGD_PORT_INT_CLR_TX_1 (0x3B)
-#define TAIKO_SLIM_PGD_PORT_INT_RX_SOURCE0 (0x60)
-#define TAIKO_SLIM_PGD_PORT_INT_TX_SOURCE0 (0x70)
-
-/* Macros for Packing Register Writes into a U32 */
-#define TAIKO_PACKED_REG_SIZE sizeof(u32)
-
-#define TAIKO_CODEC_PACK_ENTRY(reg, mask, val) ((val & 0xff)|\
- ((mask & 0xff) << 8)|((reg & 0xffff) << 16))
-
-#define TAIKO_CODEC_UNPACK_ENTRY(packed, reg, mask, val) \
- do { \
- ((reg) = ((packed >> 16) & (0xffff))); \
- ((mask) = ((packed >> 8) & (0xff))); \
- ((val) = ((packed) & (0xff))); \
- } while (0);
-
-#endif
diff --git a/sdm710/original-kernel-headers/linux/mfd/wcd9xxx/wcd9xxx_registers.h b/sdm710/original-kernel-headers/linux/mfd/wcd9xxx/wcd9xxx_registers.h
deleted file mode 100644
index 7902cfba..00000000
--- a/sdm710/original-kernel-headers/linux/mfd/wcd9xxx/wcd9xxx_registers.h
+++ /dev/null
@@ -1,361 +0,0 @@
-#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_FLYBACK_VNEG_CTRL_1 (0x6A5)
-#define WCD9XXX_FLYBACK_VNEGDAC_CTRL_2 (0x6AF)
-#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)
-
-/* RX Gain control registers of codecs from and above WCD9335 */
-#define WCD9XXX_CDC_RX1_RX_VOL_CTL (0xB59)
-#define WCD9XXX_CDC_RX1_RX_VOL_MIX_CTL (0xB5C)
-#define WCD9XXX_CDC_RX1_RX_PATH_SEC1 (0xB5E)
-#define WCD9XXX_CDC_RX2_RX_VOL_CTL (0xB6D)
-#define WCD9XXX_CDC_RX2_RX_VOL_MIX_CTL (0xB70)
-#define WCD9XXX_CDC_RX2_RX_PATH_SEC1 (0xB72)
-
-/* Class-H registers for codecs from and above WCD934X */
-#define WCD9XXX_HPH_CNP_WG_CTL (0x06cc)
-#define WCD9XXX_FLYBACK_VNEG_CTRL_4 (0x06a8)
-#define WCD9XXX_HPH_NEW_INT_PA_MISC2 (0x0738)
-#define WCD9XXX_RX_BIAS_HPH_LOWPOWER (0x06bf)
-#define WCD9XXX_HPH_PA_CTL1 (0x06d1)
-#endif
diff --git a/sdm710/original-kernel-headers/linux/msm-core-interface.h b/sdm710/original-kernel-headers/linux/msm-core-interface.h
deleted file mode 100644
index 6c0dae46..00000000
--- a/sdm710/original-kernel-headers/linux/msm-core-interface.h
+++ /dev/null
@@ -1,29 +0,0 @@
-#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
diff --git a/sdm710/original-kernel-headers/linux/msm_adsp.h b/sdm710/original-kernel-headers/linux/msm_adsp.h
deleted file mode 100644
index 12731698..00000000
--- a/sdm710/original-kernel-headers/linux/msm_adsp.h
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * 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
diff --git a/sdm710/original-kernel-headers/linux/msm_audio.h b/sdm710/original-kernel-headers/linux/msm_audio.h
deleted file mode 100644
index 95d39602..00000000
--- a/sdm710/original-kernel-headers/linux/msm_audio.h
+++ /dev/null
@@ -1,480 +0,0 @@
-/* include/linux/msm_audio.h
- *
- * Copyright (C) 2008 Google, Inc.
- * Copyright (c) 2012, 2014, 2017 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 int)
-#define AUDIO_STOP _IOW(AUDIO_IOCTL_MAGIC, 1, unsigned int)
-#define AUDIO_FLUSH _IOW(AUDIO_IOCTL_MAGIC, 2, unsigned int)
-#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 int)
-#define AUDIO_SET_ADRC _IOW(AUDIO_IOCTL_MAGIC, 7, unsigned int)
-#define AUDIO_SET_EQ _IOW(AUDIO_IOCTL_MAGIC, 8, unsigned int)
-#define AUDIO_SET_RX_IIR _IOW(AUDIO_IOCTL_MAGIC, 9, unsigned int)
-#define AUDIO_SET_VOLUME _IOW(AUDIO_IOCTL_MAGIC, 10, unsigned int)
-#define AUDIO_PAUSE _IOW(AUDIO_IOCTL_MAGIC, 11, unsigned int)
-#define AUDIO_PLAY_DTMF _IOW(AUDIO_IOCTL_MAGIC, 12, unsigned int)
-#define AUDIO_GET_EVENT _IOR(AUDIO_IOCTL_MAGIC, 13, \
- struct msm_audio_event)
-#define AUDIO_ABORT_GET_EVENT _IOW(AUDIO_IOCTL_MAGIC, 14, unsigned int)
-#define AUDIO_REGISTER_PMEM _IOW(AUDIO_IOCTL_MAGIC, 15, unsigned int)
-#define AUDIO_DEREGISTER_PMEM _IOW(AUDIO_IOCTL_MAGIC, 16, unsigned int)
-#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 int)
-#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 int)
-#define AUDIO_DISABLE_SND_DEVICE _IOW(AUDIO_IOCTL_MAGIC, 23, unsigned int)
-#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 int)
-#define AUDIO_SET_PCM_CONFIG _IOW(AUDIO_IOCTL_MAGIC, 31, unsigned int)
-#define AUDIO_SWITCH_DEVICE _IOW(AUDIO_IOCTL_MAGIC, 32, unsigned int)
-#define AUDIO_SET_MUTE _IOW(AUDIO_IOCTL_MAGIC, 33, unsigned int)
-#define AUDIO_UPDATE_ACDB _IOW(AUDIO_IOCTL_MAGIC, 34, unsigned int)
-#define AUDIO_START_VOICE _IOW(AUDIO_IOCTL_MAGIC, 35, unsigned int)
-#define AUDIO_STOP_VOICE _IOW(AUDIO_IOCTL_MAGIC, 36, unsigned int)
-#define AUDIO_REINIT_ACDB _IOW(AUDIO_IOCTL_MAGIC, 39, unsigned int)
-#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 int)
-
-/* Qualcomm technologies inc 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 int)
-#define AUDIO_SET_QCONCERT_PLUS _IOW(AUDIO_IOCTL_MAGIC, 85, unsigned int)
-#define AUDIO_SET_MBADRC _IOW(AUDIO_IOCTL_MAGIC, 86, unsigned int)
-#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 int)
-#define AUDIO_ENABLE_AUDPRE _IOW(AUDIO_IOCTL_MAGIC, 89, unsigned int)
-#define AUDIO_SET_AGC _IOW(AUDIO_IOCTL_MAGIC, 90, unsigned int)
-#define AUDIO_SET_NS _IOW(AUDIO_IOCTL_MAGIC, 91, unsigned int)
-#define AUDIO_SET_TX_IIR _IOW(AUDIO_IOCTL_MAGIC, 92, unsigned int)
-#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 int)
-#define AUDIO_PM_RELAX _IOW(AUDIO_IOCTL_MAGIC, 106, unsigned int)
-
-#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 int *)
-
-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 int *)
-#define SND_AGC_CTL _IOW(SND_IOCTL_MAGIC, 7, unsigned int *)
-
-/*return the number of CAD endpoints supported. */
-
-#define CAD_GET_NUM_ENDPOINTS _IOR(SND_IOCTL_MAGIC, 4, unsigned int *)
-
-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;
-};
-
-#define ADSP_STREAM_PP_EVENT 0
-#define ADSP_STREAM_ENCDEC_EVENT 1
-#define ADSP_STREAM_IEC_61937_FMT_UPDATE_EVENT 2
-#define ADSP_STREAM_EVENT_MAX 3
-
-struct msm_adsp_event_data {
- __u32 event_type;
- __u32 payload_len;
- __u8 payload[0];
-};
-
-#if defined(CONFIG_CIRRUS_SPKR_PROTECTION)
-struct msm_pcm_drv_data {
- const char *config_name;
-};
-#endif
-#endif
diff --git a/sdm710/original-kernel-headers/linux/msm_audio_aac.h b/sdm710/original-kernel-headers/linux/msm_audio_aac.h
deleted file mode 100644
index 8499ac48..00000000
--- a/sdm710/original-kernel-headers/linux/msm_audio_aac.h
+++ /dev/null
@@ -1,76 +0,0 @@
-#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 */
diff --git a/sdm710/original-kernel-headers/linux/msm_audio_ac3.h b/sdm710/original-kernel-headers/linux/msm_audio_ac3.h
deleted file mode 100644
index 2203d9e4..00000000
--- a/sdm710/original-kernel-headers/linux/msm_audio_ac3.h
+++ /dev/null
@@ -1,41 +0,0 @@
-#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 int)
-#define AUDIO_GET_AC3_CONFIG _IOR(AUDIO_IOCTL_MAGIC, \
- (AUDIO_MAX_COMMON_IOCTL_NUM+1), unsigned int)
-
-#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 */
diff --git a/sdm710/original-kernel-headers/linux/msm_audio_alac.h b/sdm710/original-kernel-headers/linux/msm_audio_alac.h
deleted file mode 100644
index 36b96567..00000000
--- a/sdm710/original-kernel-headers/linux/msm_audio_alac.h
+++ /dev/null
@@ -1,24 +0,0 @@
-#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 */
diff --git a/sdm710/original-kernel-headers/linux/msm_audio_amrnb.h b/sdm710/original-kernel-headers/linux/msm_audio_amrnb.h
deleted file mode 100644
index 04099835..00000000
--- a/sdm710/original-kernel-headers/linux/msm_audio_amrnb.h
+++ /dev/null
@@ -1,34 +0,0 @@
-#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 int)
-#define AUDIO_SET_AMRNB_ENC_CONFIG _IOR(AUDIO_IOCTL_MAGIC, \
- (AUDIO_MAX_COMMON_IOCTL_NUM+1), unsigned int)
-#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 */
diff --git a/sdm710/original-kernel-headers/linux/msm_audio_amrwb.h b/sdm710/original-kernel-headers/linux/msm_audio_amrwb.h
deleted file mode 100644
index 0d55397d..00000000
--- a/sdm710/original-kernel-headers/linux/msm_audio_amrwb.h
+++ /dev/null
@@ -1,18 +0,0 @@
-#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 */
diff --git a/sdm710/original-kernel-headers/linux/msm_audio_amrwbplus.h b/sdm710/original-kernel-headers/linux/msm_audio_amrwbplus.h
deleted file mode 100644
index 5b8a980a..00000000
--- a/sdm710/original-kernel-headers/linux/msm_audio_amrwbplus.h
+++ /dev/null
@@ -1,18 +0,0 @@
-#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 */
diff --git a/sdm710/original-kernel-headers/linux/msm_audio_ape.h b/sdm710/original-kernel-headers/linux/msm_audio_ape.h
deleted file mode 100644
index b14f6852..00000000
--- a/sdm710/original-kernel-headers/linux/msm_audio_ape.h
+++ /dev/null
@@ -1,26 +0,0 @@
-/* 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 */
diff --git a/sdm710/original-kernel-headers/linux/msm_audio_calibration.h b/sdm710/original-kernel-headers/linux/msm_audio_calibration.h
deleted file mode 100644
index 42800d7b..00000000
--- a/sdm710/original-kernel-headers/linux/msm_audio_calibration.h
+++ /dev/null
@@ -1,742 +0,0 @@
-#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,
- AFE_SIDETONE_IIR_CAL_TYPE,
- AFE_LSM_TOPOLOGY_CAL_TYPE,
- AFE_LSM_TX_CAL_TYPE,
- ADM_LSM_TOPOLOGY_CAL_TYPE,
- ADM_LSM_AUDPROC_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
-
-#define AFE_SIDETONE_IIR_CAL_TYPE AFE_SIDETONE_IIR_CAL_TYPE
-
-#define AFE_LSM_TOPOLOGY_CAL_TYPE AFE_LSM_TOPOLOGY_CAL_TYPE
-#define AFE_LSM_TX_CAL_TYPE AFE_LSM_TX_CAL_TYPE
-#define ADM_LSM_TOPOLOGY_CAL_TYPE ADM_LSM_TOPOLOGY_CAL_TYPE
-#define ADM_LSM_AUDPROC_CAL_TYPE ADM_LSM_AUDPROC_CAL_TYPE
-#define LSM_CAL_TYPES
-
-#define TOPOLOGY_SPECIFIC_CHANNEL_INFO
-#define MSM_SPKR_PROT_SPV3
-
-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
- */
-#ifdef MSM_SPKR_PROT_SPV3
- uint32_t sp_version;
- int32_t limiter_th[SP_V2_NUM_MAX_SPKRS];
-#endif
-};
-
-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;
-};
-
-#define MAX_SIDETONE_IIR_DATA_SIZE 224
-#define MAX_NO_IIR_FILTER_STAGE 10
-
-struct audio_cal_info_sidetone_iir {
- uint16_t iir_enable;
- uint16_t num_biquad_stages;
- uint16_t pregain;
- int32_t tx_acdb_id;
- int32_t rx_acdb_id;
- int32_t mid;
- int32_t pid;
- uint8_t iir_config[MAX_SIDETONE_IIR_DATA_SIZE];
-};
-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;
-};
-
-#define VSS_NUM_CHANNELS_MAX 8
-
-struct audio_cal_info_voc_top {
- int32_t topology;
- int32_t acdb_id;
-#ifdef TOPOLOGY_SPECIFIC_CHANNEL_INFO
- uint32_t num_channels;
- uint8_t channel_mapping[VSS_NUM_CHANNELS_MAX];
-#endif
-};
-
-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;
- /* DEFAULT_ 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_sidetone_iir {
- struct audio_cal_type_header cal_hdr;
- struct audio_cal_data cal_data;
- struct audio_cal_info_sidetone_iir cal_info;
-};
-
-struct audio_cal_sidetone_iir {
- struct audio_cal_header hdr;
- struct audio_cal_type_sidetone_iir 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 */
diff --git a/sdm710/original-kernel-headers/linux/msm_audio_mvs.h b/sdm710/original-kernel-headers/linux/msm_audio_mvs.h
deleted file mode 100644
index 36d3b55b..00000000
--- a/sdm710/original-kernel-headers/linux/msm_audio_mvs.h
+++ /dev/null
@@ -1,155 +0,0 @@
-#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 int)
-#define AUDIO_SET_MVS_CONFIG _IOR(AUDIO_IOCTL_MAGIC, \
- (AUDIO_MAX_COMMON_IOCTL_NUM + 1), unsigned int)
-
-/* 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 */
diff --git a/sdm710/original-kernel-headers/linux/msm_audio_qcp.h b/sdm710/original-kernel-headers/linux/msm_audio_qcp.h
deleted file mode 100644
index de8552a2..00000000
--- a/sdm710/original-kernel-headers/linux/msm_audio_qcp.h
+++ /dev/null
@@ -1,37 +0,0 @@
-#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 */
diff --git a/sdm710/original-kernel-headers/linux/msm_audio_sbc.h b/sdm710/original-kernel-headers/linux/msm_audio_sbc.h
deleted file mode 100644
index 206b183c..00000000
--- a/sdm710/original-kernel-headers/linux/msm_audio_sbc.h
+++ /dev/null
@@ -1,36 +0,0 @@
-#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 */
diff --git a/sdm710/original-kernel-headers/linux/msm_audio_voicememo.h b/sdm710/original-kernel-headers/linux/msm_audio_voicememo.h
deleted file mode 100644
index 50e1696f..00000000
--- a/sdm710/original-kernel-headers/linux/msm_audio_voicememo.h
+++ /dev/null
@@ -1,66 +0,0 @@
-#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 int)
-#define AUDIO_SET_VOICEMEMO_CONFIG _IOR(AUDIO_IOCTL_MAGIC, \
- (AUDIO_MAX_COMMON_IOCTL_NUM+1), unsigned int)
-
-/* 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 */
diff --git a/sdm710/original-kernel-headers/linux/msm_audio_wma.h b/sdm710/original-kernel-headers/linux/msm_audio_wma.h
deleted file mode 100644
index 8f46f2c6..00000000
--- a/sdm710/original-kernel-headers/linux/msm_audio_wma.h
+++ /dev/null
@@ -1,33 +0,0 @@
-#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 int)
-#define AUDIO_SET_WMA_CONFIG _IOW(AUDIO_IOCTL_MAGIC, \
- (AUDIO_MAX_COMMON_IOCTL_NUM+1), unsigned int)
-
-#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 */
diff --git a/sdm710/original-kernel-headers/linux/msm_audio_wmapro.h b/sdm710/original-kernel-headers/linux/msm_audio_wmapro.h
deleted file mode 100644
index 7559a877..00000000
--- a/sdm710/original-kernel-headers/linux/msm_audio_wmapro.h
+++ /dev/null
@@ -1,22 +0,0 @@
-#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 */
diff --git a/sdm710/original-kernel-headers/linux/msm_dsps.h b/sdm710/original-kernel-headers/linux/msm_dsps.h
deleted file mode 100644
index e3da5769..00000000
--- a/sdm710/original-kernel-headers/linux/msm_dsps.h
+++ /dev/null
@@ -1,16 +0,0 @@
-#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_ */
diff --git a/sdm710/original-kernel-headers/linux/msm_ion.h b/sdm710/original-kernel-headers/linux/msm_ion.h
deleted file mode 100644
index b7918c8b..00000000
--- a/sdm710/original-kernel-headers/linux/msm_ion.h
+++ /dev/null
@@ -1,218 +0,0 @@
-#ifndef _MSM_ION_H
-#define _MSM_ION_H
-
-#include "ion.h"
-
-#define ION_BIT(nr) (1UL << (nr))
-
-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,
- ION_HEAP_TYPE_SECURE_CARVEOUT,
- /*
- * 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_SECURE_CARVEOUT_HEAP_ID = 14,
- ION_CP_WB_HEAP_ID = 16, /* 8660 only */
- ION_QSECOM_TA_HEAP_ID = 19,
- 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_GOOGLE_HEAP_ID = 30,
-
- 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 ION_BIT(17)
-#define ION_FLAG_CP_BITSTREAM ION_BIT(18)
-#define ION_FLAG_CP_PIXEL ION_BIT(19)
-#define ION_FLAG_CP_NON_PIXEL ION_BIT(20)
-#define ION_FLAG_CP_CAMERA ION_BIT(21)
-#define ION_FLAG_CP_HLOS ION_BIT(22)
-#define ION_FLAG_CP_SPSS_SP ION_BIT(23)
-#define ION_FLAG_CP_SPSS_SP_SHARED ION_BIT(24)
-#define ION_FLAG_CP_SEC_DISPLAY ION_BIT(25)
-#define ION_FLAG_CP_APP ION_BIT(26)
-#define ION_FLAG_CP_CAMERA_PREVIEW ION_BIT(27)
-/* ION_FLAG_ALLOW_NON_CONTIG uses ION_BIT(28) */
-#define ION_FLAG_CP_CDSP ION_BIT(29)
-#define ION_FLAG_CP_SPSS_HLOS_SHARED ION_BIT(30)
-
-/**
- * Flag to allow non continguous allocation of memory from secure
- * heap
- */
-#define ION_FLAG_ALLOW_NON_CONTIG ION_BIT(28)
-
-/**
- * Flag to use when allocating to indicate that a heap is secure.
- * Do NOT use BIT macro since it is defined in #ifdef __KERNEL__
- */
-#define ION_FLAG_SECURE ION_BIT(ION_HEAP_ID_RESERVED)
-
-/*
- * 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 ION_BIT(16)
-
-/**
- * Deprecated! Please use the corresponding ION_FLAG_*
- */
-#define ION_SECURE ION_FLAG_SECURE
-
-/**
- * Macro should be used with ion_heap_ids defined above.
- */
-#define ION_HEAP(bit) ION_BIT(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_SECURE_CARVEOUT_HEAP_NAME "secure_carveout"
-#define ION_WB_HEAP_NAME "wb"
-#define ION_MM_FIRMWARE_HEAP_NAME "mm_fw"
-#define ION_GOOGLE_HEAP_NAME "easel_mem"
-#define ION_PIL1_HEAP_NAME "pil_1"
-#define ION_PIL2_HEAP_NAME "pil_2"
-#define ION_QSECOM_HEAP_NAME "qsecom"
-#define ION_QSECOM_TA_HEAP_NAME "qsecom_ta"
-#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;
- 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
diff --git a/sdm710/original-kernel-headers/linux/msm_ipa.h b/sdm710/original-kernel-headers/linux/msm_ipa.h
deleted file mode 100644
index 123bfca7..00000000
--- a/sdm710/original-kernel-headers/linux/msm_ipa.h
+++ /dev/null
@@ -1,2196 +0,0 @@
-#ifndef _MSM_IPA_H_
-#define _MSM_IPA_H_
-
-#include <stdint.h>
-#include <stddef.h>
-#include <sys/stat.h>
-#include <linux/ioctl.h>
-#include <linux/types.h>
-#include <linux/if_ether.h>
-
-/**
- * unique magic number of the IPA device
- */
-#define IPA_IOC_MAGIC 0xCF
-
-/**
- * IPA device full path
- */
-#define IPA_DEV_NAME "/dev/ipa"
-
-/**
- * IPA NAT table character device name
- */
-#define IPA_NAT_DEV_NAME "ipaNatTable"
-
-/**
- * IPA IPv6CT table character device name
- */
-#define IPA_IPV6CT_DEV_NAME "ipaIpv6CTTable"
-
- /**
- * name of the default routing tables for v4 and v6
- */
-#define IPA_DFLT_RT_TBL_NAME "ipa_dflt_rt"
-
-/**
- * commands supported by IPA driver
- */
-#define IPA_IOCTL_ADD_HDR 0
-#define IPA_IOCTL_DEL_HDR 1
-#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
-#define IPA_IOCTL_COMMIT_HDR 6
-#define IPA_IOCTL_RESET_HDR 7
-#define IPA_IOCTL_COMMIT_RT 8
-#define IPA_IOCTL_RESET_RT 9
-#define IPA_IOCTL_COMMIT_FLT 10
-#define IPA_IOCTL_RESET_FLT 11
-#define IPA_IOCTL_DUMP 12
-#define IPA_IOCTL_GET_RT_TBL 13
-#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
-#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
-#define IPA_IOCTL_ALLOC_NAT_MEM 22
-#define IPA_IOCTL_V4_INIT_NAT 23
-#define IPA_IOCTL_TABLE_DMA_CMD 24
-#define IPA_IOCTL_NAT_DMA IPA_IOCTL_TABLE_DMA_CMD
-#define IPA_IOCTL_INIT_IPV6CT_TABLE 25
-#define IPA_IOCTL_V4_DEL_NAT 26
-#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
-#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
-#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
-#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
-#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_ADD_RT_RULE_EXT 46
-#define IPA_IOCTL_ADD_VLAN_IFACE 47
-#define IPA_IOCTL_DEL_VLAN_IFACE 48
-#define IPA_IOCTL_ADD_L2TP_VLAN_MAPPING 49
-#define IPA_IOCTL_DEL_L2TP_VLAN_MAPPING 50
-#define IPA_IOCTL_NAT_MODIFY_PDN 51
-#define IPA_IOCTL_ALLOC_NAT_TABLE 52
-#define IPA_IOCTL_ALLOC_IPV6CT_TABLE 53
-#define IPA_IOCTL_DEL_NAT_TABLE 54
-#define IPA_IOCTL_DEL_IPV6CT_TABLE 55
-#define IPA_IOCTL_CLEANUP 56
-#define IPA_IOCTL_QUERY_WLAN_CLIENT 57
-#define IPA_IOCTL_GET_VLAN_MODE 58
-
-/**
- * max size of the header to be inserted
- */
-#define IPA_HDR_MAX_SIZE 64
-
-/**
- * max size of the name of the resource (routing table, header)
- */
-#define IPA_RESOURCE_NAME_MAX 32
-
-/**
- * max number of interface properties
- */
-#define IPA_NUM_PROPS_MAX 35
-
-/**
- * size of the mac address
- */
-#define IPA_MAC_ADDR_SIZE 6
-
-/**
- * max number of mbim streams
- */
-#define IPA_MBIM_MAX_STREAM_NUM 8
-
-/**
- * size of the ipv6 address
- */
-#define IPA_WAN_MSG_IPv6_ADDR_GW_LEN 4
-
-/**
- * max number of lan clients supported per device type
- * for LAN stats via HW.
- */
-#define IPA_MAX_NUM_HW_PATH_CLIENTS 16
-
-/**
- * max number of destination pipes possible for a client.
- */
-#define QMI_IPA_MAX_CLIENT_DST_PIPES 4
-
-/**
- * the attributes of the rule (routing or filtering)
- */
-#define IPA_FLT_TOS (1ul << 0)
-#define IPA_FLT_PROTOCOL (1ul << 1)
-#define IPA_FLT_SRC_ADDR (1ul << 2)
-#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)
-#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)
-#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)
-#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)
-#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)
-#define IPA_FLT_MAC_DST_ADDR_L2TP (1ul << 22)
-#define IPA_FLT_TCP_SYN (1ul << 23)
-#define IPA_FLT_TCP_SYN_L2TP (1ul << 24)
-#define IPA_FLT_L2TP_INNER_IP_TYPE (1ul << 25)
-#define IPA_FLT_L2TP_INNER_IPV4_DST_ADDR (1ul << 26)
-
-/**
- * maximal number of NAT PDNs in the PDN config table
- */
-#define IPA_MAX_PDN_NUM 5
-
-/**
- * enum ipa_client_type - names for the various IPA "clients"
- * these are from the perspective of the clients, for e.g.
- * HSIC1_PROD means HSIC client is the producer and IPA is the
- * consumer.
- * PROD clients are always even, and CONS clients are always odd.
- * Add new clients in the end of the list and update IPA_CLIENT_MAX
- */
-enum ipa_client_type {
- IPA_CLIENT_HSIC1_PROD = 0,
- IPA_CLIENT_HSIC1_CONS = 1,
-
- IPA_CLIENT_HSIC2_PROD = 2,
- IPA_CLIENT_HSIC2_CONS = 3,
-
- IPA_CLIENT_HSIC3_PROD = 4,
- IPA_CLIENT_HSIC3_CONS = 5,
-
- IPA_CLIENT_HSIC4_PROD = 6,
- IPA_CLIENT_HSIC4_CONS = 7,
-
- IPA_CLIENT_HSIC5_PROD = 8,
- IPA_CLIENT_HSIC5_CONS = 9,
-
- IPA_CLIENT_WLAN1_PROD = 10,
- IPA_CLIENT_WLAN1_CONS = 11,
-
- IPA_CLIENT_A5_WLAN_AMPDU_PROD = 12,
- IPA_CLIENT_WLAN2_CONS = 13,
-
- /* RESERVERD PROD = 14, */
- IPA_CLIENT_WLAN3_CONS = 15,
-
- /* RESERVERD PROD = 16, */
- IPA_CLIENT_WLAN4_CONS = 17,
-
- IPA_CLIENT_USB_PROD = 18,
- IPA_CLIENT_USB_CONS = 19,
-
- IPA_CLIENT_USB2_PROD = 20,
- IPA_CLIENT_USB2_CONS = 21,
-
- IPA_CLIENT_USB3_PROD = 22,
- IPA_CLIENT_USB3_CONS = 23,
-
- IPA_CLIENT_USB4_PROD = 24,
- IPA_CLIENT_USB4_CONS = 25,
-
- IPA_CLIENT_UC_USB_PROD = 26,
- IPA_CLIENT_USB_DPL_CONS = 27,
-
- IPA_CLIENT_A2_EMBEDDED_PROD = 28,
- IPA_CLIENT_A2_EMBEDDED_CONS = 29,
-
- IPA_CLIENT_A2_TETHERED_PROD = 30,
- IPA_CLIENT_A2_TETHERED_CONS = 31,
-
- IPA_CLIENT_APPS_LAN_PROD = 32,
- IPA_CLIENT_APPS_LAN_CONS = 33,
-
- IPA_CLIENT_APPS_WAN_PROD = 34,
- IPA_CLIENT_APPS_LAN_WAN_PROD = IPA_CLIENT_APPS_WAN_PROD,
- IPA_CLIENT_APPS_WAN_CONS = 35,
-
- IPA_CLIENT_APPS_CMD_PROD = 36,
- IPA_CLIENT_A5_LAN_WAN_CONS = 37,
-
- IPA_CLIENT_ODU_PROD = 38,
- IPA_CLIENT_ODU_EMB_CONS = 39,
-
- /* RESERVERD PROD = 40, */
- IPA_CLIENT_ODU_TETH_CONS = 41,
-
- IPA_CLIENT_MHI_PROD = 42,
- IPA_CLIENT_MHI_CONS = 43,
-
- IPA_CLIENT_MEMCPY_DMA_SYNC_PROD = 44,
- IPA_CLIENT_MEMCPY_DMA_SYNC_CONS = 45,
-
- IPA_CLIENT_MEMCPY_DMA_ASYNC_PROD = 46,
- IPA_CLIENT_MEMCPY_DMA_ASYNC_CONS = 47,
-
- IPA_CLIENT_ETHERNET_PROD = 48,
- IPA_CLIENT_ETHERNET_CONS = 49,
-
- IPA_CLIENT_Q6_LAN_PROD = 50,
- IPA_CLIENT_Q6_LAN_CONS = 51,
-
- IPA_CLIENT_Q6_WAN_PROD = 52,
- IPA_CLIENT_Q6_WAN_CONS = 53,
-
- IPA_CLIENT_Q6_CMD_PROD = 54,
- IPA_CLIENT_Q6_DUN_CONS = 55,
-
- IPA_CLIENT_Q6_DECOMP_PROD = 56,
- IPA_CLIENT_Q6_DECOMP_CONS = 57,
-
- IPA_CLIENT_Q6_DECOMP2_PROD = 58,
- IPA_CLIENT_Q6_DECOMP2_CONS = 59,
-
- /* RESERVERD PROD = 60, */
- IPA_CLIENT_Q6_LTE_WIFI_AGGR_CONS = 61,
-
- IPA_CLIENT_TEST_PROD = 62,
- IPA_CLIENT_TEST_CONS = 63,
-
- IPA_CLIENT_TEST1_PROD = 64,
- IPA_CLIENT_TEST1_CONS = 65,
-
- IPA_CLIENT_TEST2_PROD = 66,
- IPA_CLIENT_TEST2_CONS = 67,
-
- IPA_CLIENT_TEST3_PROD = 68,
- IPA_CLIENT_TEST3_CONS = 69,
-
- IPA_CLIENT_TEST4_PROD = 70,
- IPA_CLIENT_TEST4_CONS = 71,
-
- /* RESERVERD PROD = 72, */
- IPA_CLIENT_DUMMY_CONS = 73
-};
-
-#define IPA_CLIENT_MAX (IPA_CLIENT_DUMMY_CONS + 1)
-
-#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)
-
-#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)
-
-#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)
-
-#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)
-
-#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 - Address family: IPv4 or IPv6
- */
-enum ipa_ip_type {
- IPA_IP_v4,
- IPA_IP_v6,
- IPA_IP_MAX
-};
-
-/**
- * enum ipa_rule_type - Type of routing or filtering rule
- * Hashable: Rule will be located at the hashable tables
- * Non_Hashable: Rule will be located at the non-hashable tables
- */
-enum ipa_rule_type {
- IPA_RULE_HASHABLE,
- IPA_RULE_NON_HASHABLE,
-};
-#define IPA_RULE_TYPE_MAX (IPA_RULE_NON_HASHABLE + 1)
-
-/**
- * enum ipa_flt_action - action field of filtering rule
- *
- * Pass to routing: 5'd0
- * Pass to source NAT: 5'd1
- * Pass to destination NAT: 5'd2
- * Pass to default output pipe (e.g., Apps or Modem): 5'd3
- */
-enum ipa_flt_action {
- IPA_PASS_TO_ROUTING,
- IPA_PASS_TO_SRC_NAT,
- IPA_PASS_TO_DST_NAT,
- IPA_PASS_TO_EXCEPTION
-};
-
-/**
- * enum ipa_wlan_event - Events for wlan client
- *
- * wlan client connect: New wlan client connected
- * wlan client disconnect: wlan client disconnected
- * wlan client power save: wlan client moved to power save
- * wlan client normal: wlan client moved out of power save
- * sw routing enable: ipa routing is disabled
- * sw routing disable: ipa routing is enabled
- * wlan ap connect: wlan AP(access point) is up
- * wlan ap disconnect: wlan AP(access point) is down
- * wlan sta connect: wlan STA(station) is up
- * wlan sta disconnect: wlan STA(station) is down
- * wlan client connect ex: new wlan client connected
- * wlan scc switch: wlan interfaces in scc mode
- * wlan mcc switch: wlan interfaces in mcc mode
- * wlan wdi enable: wdi data path completed
- * wlan wdi disable: wdi data path teardown
- */
-enum ipa_wlan_event {
- WLAN_CLIENT_CONNECT,
- WLAN_CLIENT_DISCONNECT,
- WLAN_CLIENT_POWER_SAVE_MODE,
- WLAN_CLIENT_NORMAL_MODE,
- SW_ROUTING_ENABLE,
- SW_ROUTING_DISABLE,
- WLAN_AP_CONNECT,
- WLAN_AP_DISCONNECT,
- WLAN_STA_CONNECT,
- WLAN_STA_DISCONNECT,
- WLAN_CLIENT_CONNECT_EX,
- WLAN_SWITCH_TO_SCC,
- WLAN_SWITCH_TO_MCC,
- WLAN_WDI_ENABLE,
- WLAN_WDI_DISABLE,
- IPA_WLAN_EVENT_MAX
-};
-
-/**
- * enum ipa_wan_event - Events for wan client
- *
- * wan default route add/del
- * wan embms connect: New wan embms interface connected
- */
-enum ipa_wan_event {
- WAN_UPSTREAM_ROUTE_ADD = IPA_WLAN_EVENT_MAX,
- WAN_UPSTREAM_ROUTE_DEL,
- WAN_EMBMS_CONNECT,
- WAN_XLAT_CONNECT,
- IPA_WAN_EVENT_MAX
-};
-
-enum ipa_ecm_event {
- ECM_CONNECT = IPA_WAN_EVENT_MAX,
- ECM_DISCONNECT,
- IPA_ECM_EVENT_MAX,
-};
-
-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,
-};
-
-
-enum ipa_quota_event {
- IPA_QUOTA_REACH = IPA_TETHERING_STATS_EVENT_MAX,
- IPA_QUOTA_EVENT_MAX,
-};
-
-enum ipa_ssr_event {
- IPA_SSR_BEFORE_SHUTDOWN = IPA_QUOTA_EVENT_MAX,
- IPA_SSR_AFTER_POWERUP,
- IPA_SSR_EVENT_MAX
-};
-
-enum ipa_vlan_l2tp_event {
- ADD_VLAN_IFACE = IPA_SSR_EVENT_MAX,
- DEL_VLAN_IFACE,
- ADD_L2TP_VLAN_MAPPING,
- DEL_L2TP_VLAN_MAPPING,
- IPA_VLAN_L2TP_EVENT_MAX,
-};
-
-enum ipa_per_client_stats_event {
- IPA_PER_CLIENT_STATS_CONNECT_EVENT = IPA_VLAN_L2TP_EVENT_MAX,
- IPA_PER_CLIENT_STATS_DISCONNECT_EVENT,
- IPA_PER_CLIENT_STATS_EVENT_MAX
-};
-
-enum ipa_wlan_fw_ssr_event {
- WLAN_FWR_SSR_BEFORE_SHUTDOWN = IPA_PER_CLIENT_STATS_EVENT_MAX,
- IPA_WLAN_FW_SSR_EVENT_MAX,
-#define IPA_WLAN_FW_SSR_EVENT_MAX IPA_WLAN_FW_SSR_EVENT_MAX
-};
-
-#define IPA_EVENT_MAX_NUM (IPA_WLAN_FW_SSR_EVENT_MAX)
-#define IPA_EVENT_MAX ((int)IPA_EVENT_MAX_NUM)
-
-/**
- * enum ipa_rm_resource_name - IPA RM clients identification names
- *
- * PROD resources are always even, and CONS resources are always odd.
- * Add new clients in the end of the list and update IPA_RM_RESOURCE_MAX
- */
-enum ipa_rm_resource_name {
- IPA_RM_RESOURCE_Q6_PROD = 0,
- IPA_RM_RESOURCE_Q6_CONS = 1,
-
- IPA_RM_RESOURCE_USB_PROD = 2,
- IPA_RM_RESOURCE_USB_CONS = 3,
-
- IPA_RM_RESOURCE_USB_DPL_DUMMY_PROD = 4,
- IPA_RM_RESOURCE_USB_DPL_CONS = 5,
-
- IPA_RM_RESOURCE_HSIC_PROD = 6,
- IPA_RM_RESOURCE_HSIC_CONS = 7,
-
- IPA_RM_RESOURCE_STD_ECM_PROD = 8,
- IPA_RM_RESOURCE_APPS_CONS = 9,
-
- IPA_RM_RESOURCE_RNDIS_PROD = 10,
- /* RESERVED CONS = 11, */
-
- IPA_RM_RESOURCE_WWAN_0_PROD = 12,
- /* RESERVED CONS = 13, */
-
- IPA_RM_RESOURCE_WLAN_PROD = 14,
- IPA_RM_RESOURCE_WLAN_CONS = 15,
-
- IPA_RM_RESOURCE_ODU_ADAPT_PROD = 16,
- IPA_RM_RESOURCE_ODU_ADAPT_CONS = 17,
-
- IPA_RM_RESOURCE_MHI_PROD = 18,
- IPA_RM_RESOURCE_MHI_CONS = 19,
-
- IPA_RM_RESOURCE_ETHERNET_PROD = 20,
- IPA_RM_RESOURCE_ETHERNET_CONS = 21,
-};
-#define IPA_RM_RESOURCE_MAX (IPA_RM_RESOURCE_ETHERNET_CONS + 1)
-
-/**
- * enum ipa_hw_type - IPA hardware version type
- * @IPA_HW_None: IPA hardware version not defined
- * @IPA_HW_v1_0: IPA hardware version 1.0
- * @IPA_HW_v1_1: IPA hardware version 1.1
- * @IPA_HW_v2_0: IPA hardware version 2.0
- * @IPA_HW_v2_1: IPA hardware version 2.1
- * @IPA_HW_v2_5: IPA hardware version 2.5
- * @IPA_HW_v2_6: IPA hardware version 2.6
- * @IPA_HW_v2_6L: IPA hardware version 2.6L
- * @IPA_HW_v3_0: IPA hardware version 3.0
- * @IPA_HW_v3_1: IPA hardware version 3.1
- * @IPA_HW_v3_5: IPA hardware version 3.5
- * @IPA_HW_v3_5_1: IPA hardware version 3.5.1
- * @IPA_HW_v4_0: IPA hardware version 4.0
- */
-enum ipa_hw_type {
- IPA_HW_None = 0,
- IPA_HW_v1_0 = 1,
- IPA_HW_v1_1 = 2,
- IPA_HW_v2_0 = 3,
- IPA_HW_v2_1 = 4,
- IPA_HW_v2_5 = 5,
- IPA_HW_v2_6 = IPA_HW_v2_5,
- IPA_HW_v2_6L = 6,
- IPA_HW_v3_0 = 10,
- IPA_HW_v3_1 = 11,
- IPA_HW_v3_5 = 12,
- IPA_HW_v3_5_1 = 13,
- IPA_HW_v4_0 = 14,
-};
-#define IPA_HW_MAX (IPA_HW_v4_0 + 1)
-
-#define IPA_HW_v4_0 IPA_HW_v4_0
-
-/**
- * struct ipa_rule_attrib - attributes of a routing/filtering
- * rule, all in LE
- * @attrib_mask: what attributes are valid
- * @src_port_lo: low port of src port range
- * @src_port_hi: high port of src port range
- * @dst_port_lo: low port of dst port range
- * @dst_port_hi: high port of dst port range
- * @type: ICMP/IGMP type
- * @code: ICMP/IGMP code
- * @spi: IPSec SPI
- * @src_port: exact src port
- * @dst_port: exact dst port
- * @meta_data: meta-data val
- * @meta_data_mask: meta-data mask
- * @u.v4.tos: type of service
- * @u.v4.protocol: protocol
- * @u.v4.src_addr: src address value
- * @u.v4.src_addr_mask: src address mask
- * @u.v4.dst_addr: dst address value
- * @u.v4.dst_addr_mask: dst address mask
- * @u.v6.tc: traffic class
- * @u.v6.flow_label: flow label
- * @u.v6.next_hdr: next header
- * @u.v6.src_addr: src address val
- * @u.v6.src_addr_mask: src address mask
- * @u.v6.dst_addr: dst address val
- * @u.v6.dst_addr_mask: dst address mask
- */
-struct ipa_rule_attrib {
- uint32_t attrib_mask;
- uint16_t src_port_lo;
- uint16_t src_port_hi;
- uint16_t dst_port_lo;
- uint16_t dst_port_hi;
- uint8_t type;
- uint8_t code;
- uint8_t tos_value;
- uint8_t tos_mask;
- uint32_t spi;
- uint16_t src_port;
- uint16_t dst_port;
- uint32_t meta_data;
- uint32_t meta_data_mask;
- uint8_t src_mac_addr[ETH_ALEN];
- uint8_t src_mac_addr_mask[ETH_ALEN];
- uint8_t dst_mac_addr[ETH_ALEN];
- uint8_t dst_mac_addr_mask[ETH_ALEN];
- uint16_t ether_type;
- union {
- struct {
- uint8_t tos;
- uint8_t protocol;
- uint32_t src_addr;
- uint32_t src_addr_mask;
- uint32_t dst_addr;
- uint32_t dst_addr_mask;
- } v4;
- struct {
- uint8_t tc;
- uint32_t flow_label;
- uint8_t next_hdr;
- uint32_t src_addr[4];
- uint32_t src_addr_mask[4];
- uint32_t dst_addr[4];
- uint32_t dst_addr_mask[4];
- } v6;
- } u;
-};
-
-/*! @brief The maximum number of Mask Equal 32 Eqns */
-#define IPA_IPFLTR_NUM_MEQ_32_EQNS 2
-
-/*! @brief The maximum number of IHL offset Mask Equal 32 Eqns */
-#define IPA_IPFLTR_NUM_IHL_MEQ_32_EQNS 2
-
-/*! @brief The maximum number of Mask Equal 128 Eqns */
-#define IPA_IPFLTR_NUM_MEQ_128_EQNS 2
-
-/*! @brief The maximum number of IHL offset Range Check 16 Eqns */
-#define IPA_IPFLTR_NUM_IHL_RANGE_16_EQNS 2
-
-/*! @brief Offset and 16 bit comparison equation */
-struct ipa_ipfltr_eq_16 {
- int8_t offset;
- uint16_t value;
-};
-
-/*! @brief Offset and 32 bit comparison equation */
-struct ipa_ipfltr_eq_32 {
- int8_t offset;
- uint32_t value;
-};
-
-/*! @brief Offset and 128 bit masked comparison equation */
-struct ipa_ipfltr_mask_eq_128 {
- int8_t offset;
- uint8_t mask[16];
- uint8_t value[16];
-};
-
-/*! @brief Offset and 32 bit masked comparison equation */
-struct ipa_ipfltr_mask_eq_32 {
- int8_t offset;
- uint32_t mask;
- uint32_t value;
-};
-
-/*! @brief Equation for identifying a range. Ranges are inclusive */
-struct ipa_ipfltr_range_eq_16 {
- int8_t offset;
- uint16_t range_low;
- uint16_t range_high;
-};
-
-/*! @brief Rule equations which are set according to DS filter installation */
-struct ipa_ipfltri_rule_eq {
- /*! 16-bit Bitmask to indicate how many eqs are valid in this rule */
- uint16_t rule_eq_bitmap;
- /*! Specifies if a type of service check rule is present */
- uint8_t tos_eq_present;
- /*! The value to check against the type of service (ipv4) field */
- uint8_t tos_eq;
- /*! Specifies if a protocol check rule is present */
- uint8_t protocol_eq_present;
- /*! The value to check against the protocol (ipv6) field */
- uint8_t protocol_eq;
- /*! The number of ip header length offset 16 bit range check
- * rules in this rule
- */
- uint8_t num_ihl_offset_range_16;
- /*! An array of the registered ip header length offset 16 bit
- * range check rules
- */
- struct ipa_ipfltr_range_eq_16
- ihl_offset_range_16[IPA_IPFLTR_NUM_IHL_RANGE_16_EQNS];
- /*! The number of mask equal 32 rules present in this rule */
- uint8_t num_offset_meq_32;
- /*! An array of all the possible mask equal 32 rules in this rule */
- struct ipa_ipfltr_mask_eq_32
- offset_meq_32[IPA_IPFLTR_NUM_MEQ_32_EQNS];
- /*! Specifies if the traffic class rule is present in this rule */
- uint8_t tc_eq_present;
- /*! The value to check the traffic class (ipv4) field against */
- uint8_t tc_eq;
- /*! Specifies if the flow equals rule is present in this rule */
- uint8_t fl_eq_present;
- /*! The value to check the flow (ipv6) field against */
- uint32_t fl_eq;
- /*! The number of ip header length offset 16 bit equations in this
- * rule
- */
- uint8_t ihl_offset_eq_16_present;
- /*! The ip header length offset 16 bit equation */
- struct ipa_ipfltr_eq_16 ihl_offset_eq_16;
- /*! The number of ip header length offset 32 bit equations in this
- * rule
- */
- uint8_t ihl_offset_eq_32_present;
- /*! The ip header length offset 32 bit equation */
- struct ipa_ipfltr_eq_32 ihl_offset_eq_32;
- /*! The number of ip header length offset 32 bit mask equations in
- * this rule
- */
- uint8_t num_ihl_offset_meq_32;
- /*! The ip header length offset 32 bit mask equation */
- struct ipa_ipfltr_mask_eq_32
- ihl_offset_meq_32[IPA_IPFLTR_NUM_IHL_MEQ_32_EQNS];
- /*! The number of ip header length offset 128 bit equations in this
- * rule
- */
- uint8_t num_offset_meq_128;
- /*! The ip header length offset 128 bit equation */
- struct ipa_ipfltr_mask_eq_128
- offset_meq_128[IPA_IPFLTR_NUM_MEQ_128_EQNS];
- /*! The metadata 32 bit masked comparison equation present or not */
- /* Metadata based rules are added internally by IPA driver */
- uint8_t metadata_meq32_present;
- /*! The metadata 32 bit masked comparison equation */
- struct ipa_ipfltr_mask_eq_32 metadata_meq32;
- /*! Specifies if the Fragment equation is present in this rule */
- uint8_t ipv4_frag_eq_present;
-};
-
-/**
- * struct ipa_flt_rule - attributes of a filtering rule
- * @retain_hdr: bool switch to instruct IPA core to add back to the packet
- * the header removed as part of header removal
- * @to_uc: bool switch to pass packet to micro-controller
- * @action: action field
- * @rt_tbl_hdl: handle of table from "get"
- * @attrib: attributes of the rule
- * @eq_attrib: attributes of the rule in equation form (valid when
- * eq_attrib_type is true)
- * @rt_tbl_idx: index of RT table referred to by filter rule (valid when
- * eq_attrib_type is true and non-exception action)
- * @eq_attrib_type: true if equation level form used to specify attributes
- * @max_prio: bool switch. is this rule with Max priority? meaning on rule hit,
- * IPA will use the rule and will not look for other rules that may have
- * higher priority
- * @hashable: bool switch. is this rule hashable or not?
- * ipa uses hashable rules to cache their hit results to be used in
- * consecutive packets
- * @rule_id: rule_id to be assigned to the filter rule. In case client specifies
- * rule_id as 0 the driver will assign a new rule_id
- * @set_metadata: bool switch. should metadata replacement at the NAT block
- * take place?
- * @pdn_idx: if action is "pass to source\destination NAT" then a comparison
- * against the PDN index in the matching PDN entry will take place as an
- * additional condition for NAT hit.
- */
-struct ipa_flt_rule {
- uint8_t retain_hdr;
- uint8_t to_uc;
- enum ipa_flt_action action;
- uint32_t rt_tbl_hdl;
- struct ipa_rule_attrib attrib;
- struct ipa_ipfltri_rule_eq eq_attrib;
- uint32_t rt_tbl_idx;
- uint8_t eq_attrib_type;
- uint8_t max_prio;
- uint8_t hashable;
- uint16_t rule_id;
- uint8_t set_metadata;
- uint8_t pdn_idx;
-};
-
-/**
- * enum ipa_hdr_l2_type - L2 header type
- * IPA_HDR_L2_NONE: L2 header which isn't Ethernet II and isn't 802_3
- * IPA_HDR_L2_ETHERNET_II: L2 header of type Ethernet II
- * IPA_HDR_L2_802_3: L2 header of type 802_3
- * IPA_HDR_L2_802_1Q: L2 header of type 802_1Q
- */
-enum ipa_hdr_l2_type {
- IPA_HDR_L2_NONE,
- IPA_HDR_L2_ETHERNET_II,
- IPA_HDR_L2_802_3,
- IPA_HDR_L2_802_1Q,
-};
-#define IPA_HDR_L2_MAX (IPA_HDR_L2_802_1Q + 1)
-
-#define IPA_HDR_L2_802_1Q IPA_HDR_L2_802_1Q
-
-/**
- * enum ipa_hdr_l2_type - Processing context type
- * IPA_HDR_PROC_NONE: No processing context
- * IPA_HDR_PROC_ETHII_TO_ETHII: Process Ethernet II to Ethernet II
- * IPA_HDR_PROC_ETHII_TO_802_3: Process Ethernet II to 802_3
- * IPA_HDR_PROC_802_3_TO_ETHII: Process 802_3 to Ethernet II
- * IPA_HDR_PROC_802_3_TO_802_3: Process 802_3 to 802_3
- */
-enum ipa_hdr_proc_type {
- IPA_HDR_PROC_NONE,
- IPA_HDR_PROC_ETHII_TO_ETHII,
- IPA_HDR_PROC_ETHII_TO_802_3,
- IPA_HDR_PROC_802_3_TO_ETHII,
- IPA_HDR_PROC_802_3_TO_802_3,
- IPA_HDR_PROC_L2TP_HEADER_ADD,
- IPA_HDR_PROC_L2TP_HEADER_REMOVE
-};
-#define IPA_HDR_PROC_MAX (IPA_HDR_PROC_L2TP_HEADER_REMOVE + 1)
-
-/**
- * struct ipa_rt_rule - attributes of a routing rule
- * @dst: dst "client"
- * @hdr_hdl: handle to the dynamic header
- it is not an index or an offset
- * @hdr_proc_ctx_hdl: handle to header processing context. if it is provided
- hdr_hdl shall be 0
- * @attrib: attributes of the rule
- * @max_prio: bool switch. is this rule with Max priority? meaning on rule hit,
- * IPA will use the rule and will not look for other rules that may have
- * higher priority
- * @hashable: bool switch. is this rule hashable or not?
- * ipa uses hashable rules to cache their hit results to be used in
- * consecutive packets
- * @retain_hdr: bool switch to instruct IPA core to add back to the packet
- * the header removed as part of header removal
- */
-struct ipa_rt_rule {
- enum ipa_client_type dst;
- uint32_t hdr_hdl;
- uint32_t hdr_proc_ctx_hdl;
- struct ipa_rule_attrib attrib;
- uint8_t max_prio;
- uint8_t hashable;
- uint8_t retain_hdr;
-};
-
-/**
- * struct ipa_hdr_add - header descriptor includes in and out
- * parameters
- * @name: name of the header
- * @hdr: actual header to be inserted
- * @hdr_len: size of above header
- * @type: l2 header type
- * @is_partial: header not fully specified
- * @hdr_hdl: out parameter, handle to header, valid when status is 0
- * @status: out parameter, status of header add operation,
- * 0 for success,
- * -1 for failure
- * @is_eth2_ofst_valid: is eth2_ofst field valid?
- * @eth2_ofst: offset to start of Ethernet-II/802.3 header
- */
-struct ipa_hdr_add {
- char name[IPA_RESOURCE_NAME_MAX];
- uint8_t hdr[IPA_HDR_MAX_SIZE];
- uint8_t hdr_len;
- enum ipa_hdr_l2_type type;
- uint8_t is_partial;
- uint32_t hdr_hdl;
- int status;
- uint8_t is_eth2_ofst_valid;
- uint16_t eth2_ofst;
-};
-
-/**
- * struct ipa_ioc_add_hdr - header addition parameters (support
- * multiple headers and commit)
- * @commit: should headers be written to IPA HW also?
- * @num_hdrs: num of headers that follow
- * @ipa_hdr_add hdr: all headers need to go here back to
- * back, no pointers
- */
-struct ipa_ioc_add_hdr {
- uint8_t commit;
- uint8_t num_hdrs;
- struct ipa_hdr_add hdr[0];
-};
-
-/**
- * struct ipa_l2tp_header_add_procparams -
- * @eth_hdr_retained: Specifies if Ethernet header is retained or not
- * @input_ip_version: Specifies if Input header is IPV4(0) or IPV6(1)
- * @output_ip_version: Specifies if template header is IPV4(0) or IPV6(1)
- */
-struct ipa_l2tp_header_add_procparams {
- uint32_t eth_hdr_retained:1;
- uint32_t input_ip_version:1;
- uint32_t output_ip_version:1;
- uint32_t reserved:29;
-};
-
-/**
- * struct ipa_l2tp_header_remove_procparams -
- * @hdr_len_remove: Specifies how much of the header needs to
- be removed in bytes
- * @eth_hdr_retained: Specifies if Ethernet header is retained or not
- * @hdr_ofst_pkt_size_valid: Specifies if the Header offset is valid
- * @hdr_ofst_pkt_size: If hdr_ofst_pkt_size_valid =1, this indicates where the
- packet size field (2bytes) resides
- * @hdr_endianness: 0:little endian, 1:big endian
- */
-struct ipa_l2tp_header_remove_procparams {
- uint32_t hdr_len_remove:8;
- uint32_t eth_hdr_retained:1;
- /* Following fields are valid if eth_hdr_retained =1 ( bridge mode) */
- uint32_t hdr_ofst_pkt_size_valid:1;
- uint32_t hdr_ofst_pkt_size:6;
- uint32_t hdr_endianness:1;
- uint32_t reserved:15;
-};
-
-/**
- * struct ipa_l2tp_hdr_proc_ctx_params -
- * @hdr_add_param: parameters for header add
- * @hdr_remove_param: parameters for header remove
- * @is_dst_pipe_valid: if dst pipe is valid
- * @dst_pipe: destination pipe
- */
-struct ipa_l2tp_hdr_proc_ctx_params {
- struct ipa_l2tp_header_add_procparams hdr_add_param;
- struct ipa_l2tp_header_remove_procparams hdr_remove_param;
- uint8_t is_dst_pipe_valid;
- enum ipa_client_type dst_pipe;
-};
-
-#define L2TP_USER_SPACE_SPECIFY_DST_PIPE
-
-/**
- * struct ipa_hdr_proc_ctx_add - processing context descriptor includes
- * in and out parameters
- * @type: processing context type
- * @hdr_hdl: in parameter, handle to header
- * @l2tp_params: l2tp parameters
- * @proc_ctx_hdl: out parameter, handle to proc_ctx, valid when status is 0
- * @status: out parameter, status of header add operation,
- * 0 for success,
- * -1 for failure
- */
-struct ipa_hdr_proc_ctx_add {
- enum ipa_hdr_proc_type type;
- uint32_t hdr_hdl;
- uint32_t proc_ctx_hdl;
- int status;
- struct ipa_l2tp_hdr_proc_ctx_params l2tp_params;
-};
-
-#define IPA_L2TP_HDR_PROC_SUPPORT
-
-/**
- * struct ipa_ioc_add_hdr - processing context addition parameters (support
- * multiple processing context and commit)
- * @commit: should processing context be written to IPA HW also?
- * @num_proc_ctxs: num of processing context that follow
- * @proc_ctx: all processing context need to go here back to
- * back, no pointers
- */
-struct ipa_ioc_add_hdr_proc_ctx {
- uint8_t commit;
- uint8_t num_proc_ctxs;
- struct ipa_hdr_proc_ctx_add proc_ctx[0];
-};
-
-/**
- * struct ipa_ioc_copy_hdr - retrieve a copy of the specified
- * header - caller can then derive the complete header
- * @name: name of the header resource
- * @hdr: out parameter, contents of specified header,
- * valid only when ioctl return val is non-negative
- * @hdr_len: out parameter, size of above header
- * valid only when ioctl return val is non-negative
- * @type: l2 header type
- * valid only when ioctl return val is non-negative
- * @is_partial: out parameter, indicates whether specified header is partial
- * valid only when ioctl return val is non-negative
- * @is_eth2_ofst_valid: is eth2_ofst field valid?
- * @eth2_ofst: offset to start of Ethernet-II/802.3 header
- */
-struct ipa_ioc_copy_hdr {
- char name[IPA_RESOURCE_NAME_MAX];
- uint8_t hdr[IPA_HDR_MAX_SIZE];
- uint8_t hdr_len;
- enum ipa_hdr_l2_type type;
- uint8_t is_partial;
- uint8_t is_eth2_ofst_valid;
- uint16_t eth2_ofst;
-};
-
-/**
- * struct ipa_ioc_get_hdr - header entry lookup parameters, if lookup was
- * successful caller must call put to release the reference count when done
- * @name: name of the header resource
- * @hdl: out parameter, handle of header entry
- * valid only when ioctl return val is non-negative
- */
-struct ipa_ioc_get_hdr {
- char name[IPA_RESOURCE_NAME_MAX];
- uint32_t hdl;
-};
-
-/**
- * struct ipa_hdr_del - header descriptor includes in and out
- * parameters
- *
- * @hdl: handle returned from header add operation
- * @status: out parameter, status of header remove operation,
- * 0 for success,
- * -1 for failure
- */
-struct ipa_hdr_del {
- uint32_t hdl;
- int status;
-};
-
-/**
- * struct ipa_ioc_del_hdr - header deletion parameters (support
- * multiple headers and commit)
- * @commit: should headers be removed from IPA HW also?
- * @num_hdls: num of headers being removed
- * @ipa_hdr_del hdl: all handles need to go here back to back, no pointers
- */
-struct ipa_ioc_del_hdr {
- uint8_t commit;
- uint8_t num_hdls;
- struct ipa_hdr_del hdl[0];
-};
-
-/**
- * struct ipa_hdr_proc_ctx_del - processing context descriptor includes
- * in and out parameters
- * @hdl: handle returned from processing context add operation
- * @status: out parameter, status of header remove operation,
- * 0 for success,
- * -1 for failure
- */
-struct ipa_hdr_proc_ctx_del {
- uint32_t hdl;
- int status;
-};
-
-/**
- * ipa_ioc_del_hdr_proc_ctx - processing context deletion parameters (support
- * multiple headers and commit)
- * @commit: should processing contexts be removed from IPA HW also?
- * @num_hdls: num of processing contexts being removed
- * @ipa_hdr_proc_ctx_del hdl: all handles need to go here back to back,
- * no pointers
- */
-struct ipa_ioc_del_hdr_proc_ctx {
- uint8_t commit;
- uint8_t num_hdls;
- struct ipa_hdr_proc_ctx_del hdl[0];
-};
-
-/**
- * struct ipa_rt_rule_add - routing rule descriptor includes in
- * and out parameters
- * @rule: actual rule to be added
- * @at_rear: add at back of routing table, it is NOT possible to add rules at
- * the rear of the "default" routing tables
- * @rt_rule_hdl: output parameter, handle to rule, valid when status is 0
- * @status: output parameter, status of routing rule add operation,
- * 0 for success,
- * -1 for failure
- */
-struct ipa_rt_rule_add {
- struct ipa_rt_rule rule;
- uint8_t at_rear;
- uint32_t rt_rule_hdl;
- int status;
-};
-
-/**
- * struct ipa_ioc_add_rt_rule - routing rule addition parameters (supports
- * multiple rules and commit);
- *
- * all rules MUST be added to same table
- * @commit: should rules be written to IPA HW also?
- * @ip: IP family of rule
- * @rt_tbl_name: name of routing table resource
- * @num_rules: number of routing rules that follow
- * @ipa_rt_rule_add rules: all rules need to go back to back here, no pointers
- */
-struct ipa_ioc_add_rt_rule {
- uint8_t commit;
- enum ipa_ip_type ip;
- char rt_tbl_name[IPA_RESOURCE_NAME_MAX];
- uint8_t num_rules;
- struct ipa_rt_rule_add rules[0];
-};
-
-/**
- * struct ipa_ioc_add_rt_rule_after - routing rule addition after a specific
- * rule parameters(supports multiple rules and commit);
- *
- * all rules MUST be added to same table
- * @commit: should rules be written to IPA HW also?
- * @ip: IP family of rule
- * @rt_tbl_name: name of routing table resource
- * @num_rules: number of routing rules that follow
- * @add_after_hdl: the rules will be added after this specific rule
- * @ipa_rt_rule_add rules: all rules need to go back to back here, no pointers
- * at_rear field will be ignored when using this IOCTL
- */
-struct ipa_ioc_add_rt_rule_after {
- uint8_t commit;
- enum ipa_ip_type ip;
- char rt_tbl_name[IPA_RESOURCE_NAME_MAX];
- uint8_t num_rules;
- uint32_t add_after_hdl;
- struct ipa_rt_rule_add rules[0];
-};
-
-/**
- * struct ipa_rt_rule_mdfy - routing rule descriptor includes
- * in and out parameters
- * @rule: actual rule to be added
- * @rt_rule_hdl: handle to rule which supposed to modify
- * @status: output parameter, status of routing rule modify operation,
- * 0 for success,
- * -1 for failure
- *
- */
-struct ipa_rt_rule_mdfy {
- struct ipa_rt_rule rule;
- uint32_t rt_rule_hdl;
- int status;
-};
-
-/**
- * struct ipa_ioc_mdfy_rt_rule - routing rule modify parameters (supports
- * multiple rules and commit)
- * @commit: should rules be written to IPA HW also?
- * @ip: IP family of rule
- * @num_rules: number of routing rules that follow
- * @rules: all rules need to go back to back here, no pointers
- */
-struct ipa_ioc_mdfy_rt_rule {
- uint8_t commit;
- enum ipa_ip_type ip;
- uint8_t num_rules;
- struct ipa_rt_rule_mdfy rules[0];
-};
-
-/**
- * struct ipa_rt_rule_del - routing rule descriptor includes in
- * and out parameters
- * @hdl: handle returned from route rule add operation
- * @status: output parameter, status of route rule delete operation,
- * 0 for success,
- * -1 for failure
- */
-struct ipa_rt_rule_del {
- uint32_t hdl;
- int status;
-};
-
-/**
- * struct ipa_rt_rule_add_ext - routing rule descriptor includes in
- * and out parameters
- * @rule: actual rule to be added
- * @at_rear: add at back of routing table, it is NOT possible to add rules at
- * the rear of the "default" routing tables
- * @rt_rule_hdl: output parameter, handle to rule, valid when status is 0
- * @status: output parameter, status of routing rule add operation,
- * @rule_id: rule_id to be assigned to the routing rule. In case client
- * specifies rule_id as 0 the driver will assign a new rule_id
- * 0 for success,
- * -1 for failure
- */
-struct ipa_rt_rule_add_ext {
- struct ipa_rt_rule rule;
- uint8_t at_rear;
- uint32_t rt_rule_hdl;
- int status;
- uint16_t rule_id;
-};
-
-/**
- * struct ipa_ioc_add_rt_rule - routing rule addition parameters (supports
- * multiple rules and commit with rule_id);
- *
- * all rules MUST be added to same table
- * @commit: should rules be written to IPA HW also?
- * @ip: IP family of rule
- * @rt_tbl_name: name of routing table resource
- * @num_rules: number of routing rules that follow
- * @ipa_rt_rule_add_ext rules: all rules need to go back to back here,
- * no pointers
- */
-struct ipa_ioc_add_rt_rule_ext {
- uint8_t commit;
- enum ipa_ip_type ip;
- char rt_tbl_name[IPA_RESOURCE_NAME_MAX];
- uint8_t num_rules;
- struct ipa_rt_rule_add_ext rules[0];
-};
-
-
-/**
- * struct ipa_ioc_del_rt_rule - routing rule deletion parameters (supports
- * multiple headers and commit)
- * @commit: should rules be removed from IPA HW also?
- * @ip: IP family of rules
- * @num_hdls: num of rules being removed
- * @ipa_rt_rule_del hdl: all handles need to go back to back here, no pointers
- */
-struct ipa_ioc_del_rt_rule {
- uint8_t commit;
- enum ipa_ip_type ip;
- uint8_t num_hdls;
- struct ipa_rt_rule_del hdl[0];
-};
-
-/**
- * struct ipa_ioc_get_rt_tbl_indx - routing table index lookup parameters
- * @ip: IP family of table
- * @name: name of routing table resource
- * @index: output parameter, routing table index, valid only when ioctl
- * return val is non-negative
- */
-struct ipa_ioc_get_rt_tbl_indx {
- enum ipa_ip_type ip;
- char name[IPA_RESOURCE_NAME_MAX];
- uint32_t idx;
-};
-
-/**
- * struct ipa_flt_rule_add - filtering rule descriptor includes
- * in and out parameters
- * @rule: actual rule to be added
- * @at_rear: add at back of filtering table?
- * @flt_rule_hdl: out parameter, handle to rule, valid when status is 0
- * @status: output parameter, status of filtering rule add operation,
- * 0 for success,
- * -1 for failure
- *
- */
-struct ipa_flt_rule_add {
- struct ipa_flt_rule rule;
- uint8_t at_rear;
- uint32_t flt_rule_hdl;
- int status;
-};
-
-/**
- * struct ipa_ioc_add_flt_rule - filtering rule addition parameters (supports
- * multiple rules and commit)
- * all rules MUST be added to same table
- * @commit: should rules be written to IPA HW also?
- * @ip: IP family of rule
- * @ep: which "clients" pipe does this rule apply to?
- * valid only when global is 0
- * @global: does this apply to global filter table of specific IP family
- * @num_rules: number of filtering rules that follow
- * @rules: all rules need to go back to back here, no pointers
- */
-struct ipa_ioc_add_flt_rule {
- uint8_t commit;
- enum ipa_ip_type ip;
- enum ipa_client_type ep;
- uint8_t global;
- uint8_t num_rules;
- struct ipa_flt_rule_add rules[0];
-};
-
-/**
- * struct ipa_ioc_add_flt_rule_after - filtering rule addition after specific
- * rule parameters (supports multiple rules and commit)
- * all rules MUST be added to same table
- * @commit: should rules be written to IPA HW also?
- * @ip: IP family of rule
- * @ep: which "clients" pipe does this rule apply to?
- * @num_rules: number of filtering rules that follow
- * @add_after_hdl: rules will be added after the rule with this handle
- * @rules: all rules need to go back to back here, no pointers. at rear field
- * is ignored when using this IOCTL
- */
-struct ipa_ioc_add_flt_rule_after {
- uint8_t commit;
- enum ipa_ip_type ip;
- enum ipa_client_type ep;
- uint8_t num_rules;
- uint32_t add_after_hdl;
- struct ipa_flt_rule_add rules[0];
-};
-
-/**
- * struct ipa_flt_rule_mdfy - filtering rule descriptor includes
- * in and out parameters
- * @rule: actual rule to be added
- * @flt_rule_hdl: handle to rule
- * @status: output parameter, status of filtering rule modify operation,
- * 0 for success,
- * -1 for failure
- *
- */
-struct ipa_flt_rule_mdfy {
- struct ipa_flt_rule rule;
- uint32_t rule_hdl;
- int status;
-};
-
-/**
- * struct ipa_ioc_mdfy_flt_rule - filtering rule modify parameters (supports
- * multiple rules and commit)
- * @commit: should rules be written to IPA HW also?
- * @ip: IP family of rule
- * @num_rules: number of filtering rules that follow
- * @rules: all rules need to go back to back here, no pointers
- */
-struct ipa_ioc_mdfy_flt_rule {
- uint8_t commit;
- enum ipa_ip_type ip;
- uint8_t num_rules;
- struct ipa_flt_rule_mdfy rules[0];
-};
-
-/**
- * struct ipa_flt_rule_del - filtering rule descriptor includes
- * in and out parameters
- *
- * @hdl: handle returned from filtering rule add operation
- * @status: output parameter, status of filtering rule delete operation,
- * 0 for success,
- * -1 for failure
- */
-struct ipa_flt_rule_del {
- uint32_t hdl;
- int status;
-};
-
-/**
- * struct ipa_ioc_del_flt_rule - filtering rule deletion parameters (supports
- * multiple headers and commit)
- * @commit: should rules be removed from IPA HW also?
- * @ip: IP family of rules
- * @num_hdls: num of rules being removed
- * @hdl: all handles need to go back to back here, no pointers
- */
-struct ipa_ioc_del_flt_rule {
- uint8_t commit;
- enum ipa_ip_type ip;
- uint8_t num_hdls;
- struct ipa_flt_rule_del hdl[0];
-};
-
-/**
- * struct ipa_ioc_get_rt_tbl - routing table lookup parameters, if lookup was
- * successful caller must call put to release the reference
- * count when done
- * @ip: IP family of table
- * @name: name of routing table resource
- * @htl: output parameter, handle of routing table, valid only when ioctl
- * return val is non-negative
- */
-struct ipa_ioc_get_rt_tbl {
- enum ipa_ip_type ip;
- char name[IPA_RESOURCE_NAME_MAX];
- uint32_t hdl;
-};
-
-/**
- * struct ipa_ioc_query_intf - used to lookup number of tx and
- * rx properties of interface
- * @name: name of interface
- * @num_tx_props: output parameter, number of tx properties
- * valid only when ioctl return val is non-negative
- * @num_rx_props: output parameter, number of rx properties
- * valid only when ioctl return val is non-negative
- * @num_ext_props: output parameter, number of ext properties
- * valid only when ioctl return val is non-negative
- * @excp_pipe: exception packets of this interface should be
- * routed to this pipe
- */
-struct ipa_ioc_query_intf {
- char name[IPA_RESOURCE_NAME_MAX];
- uint32_t num_tx_props;
- uint32_t num_rx_props;
- uint32_t num_ext_props;
- enum ipa_client_type excp_pipe;
-};
-
-/**
- * struct ipa_ioc_tx_intf_prop - interface tx property
- * @ip: IP family of routing rule
- * @attrib: routing rule
- * @dst_pipe: routing output pipe
- * @alt_dst_pipe: alternate routing output pipe
- * @hdr_name: name of associated header if any, empty string when no header
- * @hdr_l2_type: type of associated header if any, use NONE when no header
- */
-struct ipa_ioc_tx_intf_prop {
- enum ipa_ip_type ip;
- struct ipa_rule_attrib attrib;
- enum ipa_client_type dst_pipe;
- enum ipa_client_type alt_dst_pipe;
- char hdr_name[IPA_RESOURCE_NAME_MAX];
- enum ipa_hdr_l2_type hdr_l2_type;
-};
-
-/**
- * struct ipa_ioc_query_intf_tx_props - interface tx propertie
- * @name: name of interface
- * @num_tx_props: number of TX properties
- * @tx[0]: output parameter, the tx properties go here back to back
- */
-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];
-};
-
-/**
- * struct ipa_ioc_ext_intf_prop - interface extended property
- * @ip: IP family of routing rule
- * @eq_attrib: attributes of the rule in equation form
- * @action: action field
- * @rt_tbl_idx: index of RT table referred to by filter rule
- * @mux_id: MUX_ID
- * @filter_hdl: handle of filter (as specified by provider of filter rule)
- * @is_xlat_rule: it is xlat flt rule or not
- */
-struct ipa_ioc_ext_intf_prop {
- enum ipa_ip_type ip;
- struct ipa_ipfltri_rule_eq eq_attrib;
- enum ipa_flt_action action;
- uint32_t rt_tbl_idx;
- uint8_t mux_id;
- uint32_t filter_hdl;
- uint8_t is_xlat_rule;
- uint32_t rule_id;
- uint8_t is_rule_hashable;
-};
-
-/**
- * struct ipa_ioc_query_intf_ext_props - interface ext propertie
- * @name: name of interface
- * @num_ext_props: number of EXT properties
- * @ext[0]: output parameter, the ext properties go here back to back
- */
-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];
-};
-
-/**
- * struct ipa_ioc_rx_intf_prop - interface rx property
- * @ip: IP family of filtering rule
- * @attrib: filtering rule
- * @src_pipe: input pipe
- * @hdr_l2_type: type of associated header if any, use NONE when no header
- */
-struct ipa_ioc_rx_intf_prop {
- enum ipa_ip_type ip;
- struct ipa_rule_attrib attrib;
- enum ipa_client_type src_pipe;
- enum ipa_hdr_l2_type hdr_l2_type;
-};
-
-/**
- * struct ipa_ioc_query_intf_rx_props - interface rx propertie
- * @name: name of interface
- * @num_rx_props: number of RX properties
- * @rx: output parameter, the rx properties go here back to back
- */
-struct ipa_ioc_query_intf_rx_props {
- char name[IPA_RESOURCE_NAME_MAX];
- uint32_t num_rx_props;
- struct ipa_ioc_rx_intf_prop rx[0];
-};
-
-/**
- * struct ipa_ioc_nat_alloc_mem - nat table memory allocation
- * properties
- * @dev_name: input parameter, the name of table
- * @size: input parameter, size of table in bytes
- * @offset: output parameter, offset into page in case of system memory
- */
-struct ipa_ioc_nat_alloc_mem {
- char dev_name[IPA_RESOURCE_NAME_MAX];
- size_t size;
- off_t offset;
-};
-
-/**
- * struct ipa_ioc_nat_ipv6ct_table_alloc - NAT/IPv6CT table memory allocation
- * properties
- * @size: input parameter, size of table in bytes
- * @offset: output parameter, offset into page in case of system memory
- */
-struct ipa_ioc_nat_ipv6ct_table_alloc {
- size_t size;
- off_t offset;
-};
-
-/**
- * struct ipa_ioc_v4_nat_init - nat table initialization parameters
- * @tbl_index: input parameter, index of the table
- * @ipv4_rules_offset: input parameter, ipv4 rules address offset
- * @expn_rules_offset: input parameter, ipv4 expansion rules address offset
- * @index_offset: input parameter, index rules offset
- * @index_expn_offset: input parameter, index expansion rules offset
- * @table_entries: input parameter, ipv4 rules table number of entries
- * @expn_table_entries: input parameter, ipv4 expansion rules table number of
- * entries
- * @ip_addr: input parameter, public ip address
- */
-struct ipa_ioc_v4_nat_init {
- uint8_t tbl_index;
- uint32_t ipv4_rules_offset;
- uint32_t expn_rules_offset;
-
- uint32_t index_offset;
- uint32_t index_expn_offset;
-
- uint16_t table_entries;
- uint16_t expn_table_entries;
- uint32_t ip_addr;
-};
-
-/**
- * struct ipa_ioc_ipv6ct_init - IPv6CT table initialization parameters
- * @base_table_offset: input parameter, IPv6CT base table address offset
- * @expn_table_offset: input parameter, IPv6CT expansion table address offset
- * @table_entries: input parameter, IPv6CT table number of entries
- * @expn_table_entries: input parameter, IPv6CT expansion table number of
- * entries
- * @tbl_index: input parameter, index of the table
- */
-struct ipa_ioc_ipv6ct_init {
- uint32_t base_table_offset;
- uint32_t expn_table_offset;
- uint16_t table_entries;
- uint16_t expn_table_entries;
- uint8_t tbl_index;
-};
-
-/**
- * struct ipa_ioc_v4_nat_del - nat table delete parameter
- * @table_index: input parameter, index of the table
- * @public_ip_addr: input parameter, public ip address
- */
-struct ipa_ioc_v4_nat_del {
- uint8_t table_index;
- uint32_t public_ip_addr;
-};
-
-/**
- * struct ipa_ioc_nat_ipv6ct_table_del - NAT/IPv6CT table delete parameter
- * @table_index: input parameter, index of the table
- */
-struct ipa_ioc_nat_ipv6ct_table_del {
- uint8_t table_index;
-};
-
-/**
- * struct ipa_ioc_nat_dma_one - nat/ipv6ct dma command parameter
- * @table_index: input parameter, index of the table
- * @base_addr: type of table, from which the base address of the table
- * can be inferred
- * @offset: destination offset within the NAT table
- * @data: data to be written.
- */
-struct ipa_ioc_nat_dma_one {
- uint8_t table_index;
- uint8_t base_addr;
-
- uint32_t offset;
- uint16_t data;
-
-};
-
-/**
- * struct ipa_ioc_nat_dma_cmd - To hold multiple nat/ipv6ct dma commands
- * @entries: number of dma commands in use
- * @dma: data pointer to the dma commands
- */
-struct ipa_ioc_nat_dma_cmd {
- uint8_t entries;
- struct ipa_ioc_nat_dma_one dma[0];
-
-};
-
-/**
- * struct ipa_ioc_nat_pdn_entry - PDN entry modification data
- * @pdn_index: index of the entry in the PDN config table to be changed
- * @public_ip: PDN's public ip
- * @src_metadata: PDN's source NAT metadata for metadata replacement
- * @dst_metadata: PDN's destination NAT metadata for metadata replacement
- */
-struct ipa_ioc_nat_pdn_entry {
- uint8_t pdn_index;
- uint32_t public_ip;
- uint32_t src_metadata;
- uint32_t dst_metadata;
-};
-
-/**
- * struct ipa_ioc_vlan_iface_info - add vlan interface
- * @name: interface name
- * @vlan_id: VLAN ID
- */
-struct ipa_ioc_vlan_iface_info {
- char name[IPA_RESOURCE_NAME_MAX];
- uint8_t vlan_id;
-};
-
-/**
- * struct ipa_ioc_l2tp_vlan_mapping_info - l2tp->vlan mapping info
- * @iptype: l2tp tunnel IP type
- * @l2tp_iface_name: l2tp interface name
- * @l2tp_session_id: l2tp session id
- * @vlan_iface_name: vlan interface name
- */
-struct ipa_ioc_l2tp_vlan_mapping_info {
- enum ipa_ip_type iptype;
- char l2tp_iface_name[IPA_RESOURCE_NAME_MAX];
- uint8_t l2tp_session_id;
- char vlan_iface_name[IPA_RESOURCE_NAME_MAX];
-};
-
-/**
- * struct ipa_msg_meta - Format of the message meta-data.
- * @msg_type: the type of the message
- * @rsvd: reserved bits for future use.
- * @msg_len: the length of the message in bytes
- *
- * For push model:
- * Client in user-space should issue a read on the device (/dev/ipa) with a
- * sufficiently large buffer in a continuous loop, call will block when there is
- * no message to read. Upon return, client can read the ipa_msg_meta from start
- * of buffer to find out type and length of message
- * size of buffer supplied >= (size of largest message + size of metadata)
- *
- * For pull model:
- * Client in user-space can also issue a pull msg IOCTL to device (/dev/ipa)
- * with a payload containing space for the ipa_msg_meta and the message specific
- * payload length.
- * size of buffer supplied == (len of specific message + size of metadata)
- */
-struct ipa_msg_meta {
- uint8_t msg_type;
- uint8_t rsvd;
- uint16_t msg_len;
-};
-
-/**
- * struct ipa_wlan_msg - To hold information about wlan client
- * @name: name of the wlan interface
- * @mac_addr: mac address of wlan client
- *
- * wlan drivers need to pass name of wlan iface and mac address of
- * wlan client along with ipa_wlan_event, whenever a wlan client is
- * connected/disconnected/moved to power save/come out of power save
- */
-struct ipa_wlan_msg {
- char name[IPA_RESOURCE_NAME_MAX];
- uint8_t mac_addr[IPA_MAC_ADDR_SIZE];
-};
-
-/**
- * enum ipa_wlan_hdr_attrib_type - attribute type
- * in wlan client header
- *
- * WLAN_HDR_ATTRIB_MAC_ADDR: attrib type mac address
- * WLAN_HDR_ATTRIB_STA_ID: attrib type station id
- */
-enum ipa_wlan_hdr_attrib_type {
- WLAN_HDR_ATTRIB_MAC_ADDR,
- WLAN_HDR_ATTRIB_STA_ID
-};
-
-/**
- * struct ipa_wlan_hdr_attrib_val - header attribute value
- * @attrib_type: type of attribute
- * @offset: offset of attribute within header
- * @u.mac_addr: mac address
- * @u.sta_id: station id
- */
-struct ipa_wlan_hdr_attrib_val {
- enum ipa_wlan_hdr_attrib_type attrib_type;
- uint8_t offset;
- union {
- uint8_t mac_addr[IPA_MAC_ADDR_SIZE];
- uint8_t sta_id;
- } u;
-};
-
-/**
- * struct ipa_wlan_msg_ex - To hold information about wlan client
- * @name: name of the wlan interface
- * @num_of_attribs: number of attributes
- * @attrib_val: holds attribute values
- *
- * wlan drivers need to pass name of wlan iface and mac address
- * of wlan client or station id along with ipa_wlan_event,
- * whenever a wlan client is connected/disconnected/moved to
- * power save/come out of power save
- */
-struct ipa_wlan_msg_ex {
- char name[IPA_RESOURCE_NAME_MAX];
- uint8_t num_of_attribs;
- struct ipa_wlan_hdr_attrib_val attribs[0];
-};
-
-struct ipa_ecm_msg {
- char name[IPA_RESOURCE_NAME_MAX];
- int ifindex;
-};
-
-/**
- * struct ipa_wan_msg - To hold information about wan client
- * @name: name of the wan interface
- *
- * CnE need to pass the name of default wan iface when connected/disconnected.
- * CNE need to pass the gw info in wlan AP+STA mode.
- * netmgr need to pass the name of wan eMBMS iface when connected.
- */
-struct ipa_wan_msg {
- char upstream_ifname[IPA_RESOURCE_NAME_MAX];
- char tethered_ifname[IPA_RESOURCE_NAME_MAX];
- enum ipa_ip_type ip;
- uint32_t ipv4_addr_gw;
- uint32_t ipv6_addr_gw[IPA_WAN_MSG_IPv6_ADDR_GW_LEN];
-};
-
-/**
- * struct ipa_ioc_rm_dependency - parameters for add/delete dependency
- * @resource_name: name of dependent resource
- * @depends_on_name: name of its dependency
- */
-struct ipa_ioc_rm_dependency {
- enum ipa_rm_resource_name resource_name;
- enum ipa_rm_resource_name depends_on_name;
-};
-
-struct ipa_ioc_generate_flt_eq {
- enum ipa_ip_type ip;
- struct ipa_rule_attrib attrib;
- struct ipa_ipfltri_rule_eq eq_attrib;
-};
-
-/**
- * struct ipa_ioc_write_qmapid - to write mux id to endpoint meta register
- * @mux_id: mux id of wan
- */
-struct ipa_ioc_write_qmapid {
- enum ipa_client_type client;
- uint8_t qmap_id;
-};
-
-enum ipacm_client_enum {
- IPACM_CLIENT_USB = 1,
- IPACM_CLIENT_WLAN,
- IPACM_CLIENT_MAX
-};
-
-enum ipacm_per_client_device_type {
- IPACM_CLIENT_DEVICE_TYPE_USB = 0,
- IPACM_CLIENT_DEVICE_TYPE_WLAN = 1,
- IPACM_CLIENT_DEVICE_TYPE_ETH = 2
-};
-
-/**
- * max number of device types supported.
- */
-#define IPACM_MAX_CLIENT_DEVICE_TYPES 3
-
-/**
- * @lanIface - Name of the lan interface
- * @mac: Mac address of the client.
- */
-struct ipa_lan_client_msg {
- char lanIface[IPA_RESOURCE_NAME_MAX];
- uint8_t mac[IPA_MAC_ADDR_SIZE];
-};
-
-/**
- * struct ipa_lan_client - lan client data
- * @mac: MAC Address of the client.
- * @client_idx: Client Index.
- * @inited: Bool to indicate whether client info is set.
- */
-struct ipa_lan_client {
- uint8_t mac[IPA_MAC_ADDR_SIZE];
- int8_t client_idx;
- uint8_t inited;
-};
-
-/**
- * struct ipa_tether_device_info - tether device info indicated from IPACM
- * @ul_src_pipe: Source pipe of the lan client.
- * @hdr_len: Header length of the client.
- * @num_clients: Number of clients connected.
- */
-struct ipa_tether_device_info {
- int32_t ul_src_pipe;
- uint8_t hdr_len;
- uint32_t num_clients;
- struct ipa_lan_client lan_client[IPA_MAX_NUM_HW_PATH_CLIENTS];
-};
-
-/**
- * enum ipa_vlan_ifaces - vlan interfaces types
- */
-enum ipa_vlan_ifaces {
- IPA_VLAN_IF_ETH,
- IPA_VLAN_IF_RNDIS,
- IPA_VLAN_IF_ECM
-};
-
-#define IPA_VLAN_IF_EMAC IPA_VLAN_IF_ETH
-#define IPA_VLAN_IF_MAX (IPA_VLAN_IF_ECM + 1)
-
-/**
- * struct ipa_get_vlan_mode - get vlan mode of a Lan interface
- * @iface: Lan interface type to be queried.
- * @is_vlan_mode: output parameter, is interface in vlan mode, valid only when
- * ioctl return val is non-negative
- */
-struct ipa_ioc_get_vlan_mode {
- enum ipa_vlan_ifaces iface;
- uint32_t is_vlan_mode;
-};
-
-/**
- * actual IOCTLs supported by IPA driver
- */
-#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 *)
-#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_EXT _IOWR(IPA_IOC_MAGIC, \
- IPA_IOCTL_ADD_RT_RULE_EXT, \
- struct ipa_ioc_add_rt_rule_ext *)
-#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 *)
-#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)
-#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)
-#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 *)
-#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 *)
-#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_ALLOC_NAT_TABLE _IOWR(IPA_IOC_MAGIC, \
- IPA_IOCTL_ALLOC_NAT_TABLE, \
- struct ipa_ioc_nat_ipv6ct_table_alloc *)
-#define IPA_IOC_ALLOC_IPV6CT_TABLE _IOWR(IPA_IOC_MAGIC, \
- IPA_IOCTL_ALLOC_IPV6CT_TABLE, \
- struct ipa_ioc_nat_ipv6ct_table_alloc *)
-#define IPA_IOC_V4_INIT_NAT _IOWR(IPA_IOC_MAGIC, \
- IPA_IOCTL_V4_INIT_NAT, \
- struct ipa_ioc_v4_nat_init *)
-#define IPA_IOC_INIT_IPV6CT_TABLE _IOWR(IPA_IOC_MAGIC, \
- IPA_IOCTL_INIT_IPV6CT_TABLE, \
- struct ipa_ioc_ipv6ct_init *)
-#define IPA_IOC_NAT_DMA _IOWR(IPA_IOC_MAGIC, \
- IPA_IOCTL_NAT_DMA, \
- struct ipa_ioc_nat_dma_cmd *)
-#define IPA_IOC_TABLE_DMA_CMD _IOWR(IPA_IOC_MAGIC, \
- IPA_IOCTL_TABLE_DMA_CMD, \
- 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_DEL_NAT_TABLE _IOWR(IPA_IOC_MAGIC, \
- IPA_IOCTL_DEL_NAT_TABLE, \
- struct ipa_ioc_nat_ipv6ct_table_del *)
-#define IPA_IOC_DEL_IPV6CT_TABLE _IOWR(IPA_IOC_MAGIC, \
- IPA_IOCTL_DEL_IPV6CT_TABLE, \
- struct ipa_ioc_nat_ipv6ct_table_del *)
-#define IPA_IOC_GET_NAT_OFFSET _IOWR(IPA_IOC_MAGIC, \
- IPA_IOCTL_GET_NAT_OFFSET, \
- uint32_t *)
-#define IPA_IOC_NAT_MODIFY_PDN _IOWR(IPA_IOC_MAGIC, \
- IPA_IOCTL_NAT_MODIFY_PDN, \
- struct ipa_ioc_nat_pdn_entry *)
-#define IPA_IOC_SET_FLT _IOW(IPA_IOC_MAGIC, \
- IPA_IOCTL_SET_FLT, \
- uint32_t)
-#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 *)
-#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 *)
-#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 *)
-#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 IPA_IOC_ADD_VLAN_IFACE _IOWR(IPA_IOC_MAGIC, \
- IPA_IOCTL_ADD_VLAN_IFACE, \
- struct ipa_ioc_vlan_iface_info *)
-
-#define IPA_IOC_DEL_VLAN_IFACE _IOWR(IPA_IOC_MAGIC, \
- IPA_IOCTL_DEL_VLAN_IFACE, \
- struct ipa_ioc_vlan_iface_info *)
-
-#define IPA_IOC_ADD_L2TP_VLAN_MAPPING _IOWR(IPA_IOC_MAGIC, \
- IPA_IOCTL_ADD_L2TP_VLAN_MAPPING, \
- struct ipa_ioc_l2tp_vlan_mapping_info *)
-
-#define IPA_IOC_DEL_L2TP_VLAN_MAPPING _IOWR(IPA_IOC_MAGIC, \
- IPA_IOCTL_DEL_L2TP_VLAN_MAPPING, \
- struct ipa_ioc_l2tp_vlan_mapping_info *)
-#define IPA_IOC_CLEANUP _IO(IPA_IOC_MAGIC,\
- IPA_IOCTL_CLEANUP)
-#define IPA_IOC_QUERY_WLAN_CLIENT _IO(IPA_IOC_MAGIC,\
- IPA_IOCTL_QUERY_WLAN_CLIENT)
-#define IPA_IOC_GET_VLAN_MODE _IOWR(IPA_IOC_MAGIC, \
- IPA_IOCTL_GET_VLAN_MODE, \
- struct ipa_ioc_get_vlan_mode *)
-/*
- * unique magic number of the Tethering bridge ioctls
- */
-#define TETH_BRIDGE_IOC_MAGIC 0xCE
-
-/*
- * Ioctls supported by Tethering bridge driver
- */
-#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
-#define TETH_BRIDGE_IOCTL_MAX 4
-
-
-/**
- * enum teth_link_protocol_type - link protocol (IP / Ethernet)
- */
-enum teth_link_protocol_type {
- TETH_LINK_PROTOCOL_IP,
- TETH_LINK_PROTOCOL_ETHERNET,
- TETH_LINK_PROTOCOL_MAX,
-};
-
-/**
- * enum teth_aggr_protocol_type - Aggregation protocol (MBIM / TLP)
- */
-enum teth_aggr_protocol_type {
- TETH_AGGR_PROTOCOL_NONE,
- TETH_AGGR_PROTOCOL_MBIM,
- TETH_AGGR_PROTOCOL_TLP,
- TETH_AGGR_PROTOCOL_MAX,
-};
-
-/**
- * struct teth_aggr_params_link - Aggregation parameters for uplink/downlink
- * @aggr_prot: Aggregation protocol (MBIM / TLP)
- * @max_transfer_size_byte: Maximal size of aggregated packet in bytes.
- * Default value is 16*1024.
- * @max_datagrams: Maximal number of IP packets in an aggregated
- * packet. Default value is 16
- */
-struct teth_aggr_params_link {
- enum teth_aggr_protocol_type aggr_prot;
- uint32_t max_transfer_size_byte;
- uint32_t max_datagrams;
-};
-
-
-/**
- * struct teth_aggr_params - Aggregation parmeters
- * @ul: Uplink parameters
- * @dl: Downlink parmaeters
- */
-struct teth_aggr_params {
- struct teth_aggr_params_link ul;
- struct teth_aggr_params_link dl;
-};
-
-/**
- * struct teth_aggr_capabilities - Aggregation capabilities
- * @num_protocols: Number of protocols described in the array
- * @prot_caps[]: Array of aggregation capabilities per protocol
- */
-struct teth_aggr_capabilities {
- uint16_t num_protocols;
- struct teth_aggr_params_link prot_caps[0];
-};
-
-/**
- * struct teth_ioc_set_bridge_mode
- * @link_protocol: link protocol (IP / Ethernet)
- * @lcid: logical channel number
- */
-struct teth_ioc_set_bridge_mode {
- enum teth_link_protocol_type link_protocol;
- uint16_t lcid;
-};
-
-/**
- * struct teth_ioc_set_aggr_params
- * @aggr_params: Aggregation parmeters
- * @lcid: logical channel number
- */
-struct teth_ioc_aggr_params {
- struct teth_aggr_params aggr_params;
- uint16_t lcid;
-};
-
-
-#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 *)
-#define TETH_BRIDGE_IOC_GET_AGGR_CAPABILITIES _IOWR(TETH_BRIDGE_IOC_MAGIC, \
- TETH_BRIDGE_IOCTL_GET_AGGR_CAPABILITIES, \
- struct teth_aggr_capabilities *)
-
-/*
- * unique magic number of the ODU bridge ioctls
- */
-#define ODU_BRIDGE_IOC_MAGIC 0xCD
-
-/*
- * Ioctls supported by ODU bridge driver
- */
-#define ODU_BRIDGE_IOCTL_SET_MODE 0
-#define ODU_BRIDGE_IOCTL_SET_LLV6_ADDR 1
-#define ODU_BRIDGE_IOCTL_MAX 2
-
-/**
- * enum odu_bridge_mode - bridge mode
- * (ROUTER MODE / BRIDGE MODE)
- */
-enum odu_bridge_mode {
- ODU_BRIDGE_MODE_ROUTER,
- ODU_BRIDGE_MODE_BRIDGE,
- 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 *)
-
-#endif /* _MSM_IPA_H_ */
diff --git a/sdm710/original-kernel-headers/linux/msm_kgsl.h b/sdm710/original-kernel-headers/linux/msm_kgsl.h
deleted file mode 100644
index cea619e2..00000000
--- a/sdm710/original-kernel-headers/linux/msm_kgsl.h
+++ /dev/null
@@ -1,1622 +0,0 @@
-#ifndef _MSM_KGSL_H
-#define _MSM_KGSL_H
-
-#include <linux/types.h>
-#include <linux/ioctl.h>
-
-/*
- * The KGSL version has proven not to be very useful in userspace if features
- * are cherry picked into other trees out of order so it is frozen as of 3.14.
- * It is left here for backwards compatabilty and as a reminder that
- * software releases are never linear. Also, I like pie.
- */
-
-#define KGSL_VERSION_MAJOR 3
-#define KGSL_VERSION_MINOR 14
-
-/*
- * We have traditionally mixed context and issueibcmds / command batch flags
- * together into a big flag stew. This worked fine until we started adding a
- * lot more command batch flags and we started running out of bits. Turns out
- * we have a bit of room in the context type / priority mask that we could use
- * for command batches, but that means we need to split out the flags into two
- * coherent sets.
- *
- * If any future definitions are for both context and cmdbatch add both defines
- * and link the cmdbatch to the context define as we do below. Otherwise feel
- * free to add exclusive bits to either set.
- */
-
-/* --- context flags --- */
-#define KGSL_CONTEXT_SAVE_GMEM 0x00000001
-#define KGSL_CONTEXT_NO_GMEM_ALLOC 0x00000002
-/* This is a cmdbatch exclusive flag - use the CMDBATCH equivalent instead */
-#define KGSL_CONTEXT_SUBMIT_IB_LIST 0x00000004
-#define KGSL_CONTEXT_CTX_SWITCH 0x00000008
-#define KGSL_CONTEXT_PREAMBLE 0x00000010
-#define KGSL_CONTEXT_TRASH_STATE 0x00000020
-#define KGSL_CONTEXT_PER_CONTEXT_TS 0x00000040
-#define KGSL_CONTEXT_USER_GENERATED_TS 0x00000080
-/* This is a cmdbatch exclusive flag - use the CMDBATCH equivalent instead */
-#define KGSL_CONTEXT_END_OF_FRAME 0x00000100
-#define KGSL_CONTEXT_NO_FAULT_TOLERANCE 0x00000200
-/* This is a cmdbatch exclusive flag - use the CMDBATCH equivalent instead */
-#define KGSL_CONTEXT_SYNC 0x00000400
-#define KGSL_CONTEXT_PWR_CONSTRAINT 0x00000800
-#define KGSL_CONTEXT_PRIORITY_MASK 0x0000F000
-#define KGSL_CONTEXT_PRIORITY_SHIFT 12
-#define KGSL_CONTEXT_PRIORITY_UNDEF 0
-
-#define KGSL_CONTEXT_IFH_NOP 0x00010000
-#define KGSL_CONTEXT_SECURE 0x00020000
-#define KGSL_CONTEXT_NO_SNAPSHOT 0x00040000
-#define KGSL_CONTEXT_SPARSE 0x00080000
-
-#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
-#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
-#define KGSL_CONTEXT_TYPE_GL 1
-#define KGSL_CONTEXT_TYPE_CL 2
-#define KGSL_CONTEXT_TYPE_C2D 3
-#define KGSL_CONTEXT_TYPE_RS 4
-#define KGSL_CONTEXT_TYPE_UNKNOWN 0x1E
-
-#define KGSL_CONTEXT_INVALIDATE_ON_FAULT 0x10000000
-
-#define KGSL_CONTEXT_INVALID 0xffffffff
-
-/*
- * --- command batch flags ---
- * The bits that are linked to a KGSL_CONTEXT equivalent are either legacy
- * definitions or bits that are valid for both contexts and cmdbatches. To be
- * safe the other 8 bits that are still available in the context field should be
- * omitted here in case we need to share - the other bits are available for
- * cmdbatch only flags as needed
- */
-#define KGSL_CMDBATCH_MEMLIST 0x00000001
-#define KGSL_CMDBATCH_MARKER 0x00000002
-#define KGSL_CMDBATCH_SUBMIT_IB_LIST KGSL_CONTEXT_SUBMIT_IB_LIST /* 0x004 */
-#define KGSL_CMDBATCH_CTX_SWITCH KGSL_CONTEXT_CTX_SWITCH /* 0x008 */
-#define KGSL_CMDBATCH_PROFILING 0x00000010
-/*
- * KGSL_CMDBATCH_PROFILING must also be set for KGSL_CMDBATCH_PROFILING_KTIME
- * to take effect, as the latter only affects the time data returned.
- */
-#define KGSL_CMDBATCH_PROFILING_KTIME 0x00000020
-#define KGSL_CMDBATCH_END_OF_FRAME KGSL_CONTEXT_END_OF_FRAME /* 0x100 */
-#define KGSL_CMDBATCH_SYNC KGSL_CONTEXT_SYNC /* 0x400 */
-#define KGSL_CMDBATCH_PWR_CONSTRAINT KGSL_CONTEXT_PWR_CONSTRAINT /* 0x800 */
-#define KGSL_CMDBATCH_SPARSE 0x1000 /* 0x1000 */
-
-/*
- * Reserve bits [16:19] and bits [28:31] for possible bits shared between
- * contexts and command batches. Update this comment as new flags are added.
- */
-
-/*
- * gpu_command_object flags - these flags communicate the type of command or
- * memory object being submitted for a GPU command
- */
-
-/* Flags for GPU command objects */
-#define KGSL_CMDLIST_IB 0x00000001U
-#define KGSL_CMDLIST_CTXTSWITCH_PREAMBLE 0x00000002U
-#define KGSL_CMDLIST_IB_PREAMBLE 0x00000004U
-
-/* Flags for GPU command memory objects */
-#define KGSL_OBJLIST_MEMOBJ 0x00000008U
-#define KGSL_OBJLIST_PROFILE 0x00000010U
-
-/* Flags for GPU command sync points */
-#define KGSL_CMD_SYNCPOINT_TYPE_TIMESTAMP 0
-#define KGSL_CMD_SYNCPOINT_TYPE_FENCE 1
-
-/* --- Memory allocation flags --- */
-
-/* General allocation hints */
-#define KGSL_MEMFLAGS_SECURE 0x00000008ULL
-#define KGSL_MEMFLAGS_GPUREADONLY 0x01000000U
-#define KGSL_MEMFLAGS_GPUWRITEONLY 0x02000000U
-#define KGSL_MEMFLAGS_FORCE_32BIT 0x100000000ULL
-
-/* Flag for binding all the virt range to single phys data */
-#define KGSL_SPARSE_BIND_MULTIPLE_TO_PHYS 0x400000000ULL
-#define KGSL_SPARSE_BIND 0x1ULL
-#define KGSL_SPARSE_UNBIND 0x2ULL
-
-/* Memory caching hints */
-#define KGSL_CACHEMODE_MASK 0x0C000000U
-#define KGSL_CACHEMODE_SHIFT 26
-
-#define KGSL_CACHEMODE_WRITECOMBINE 0
-#define KGSL_CACHEMODE_UNCACHED 1
-#define KGSL_CACHEMODE_WRITETHROUGH 2
-#define KGSL_CACHEMODE_WRITEBACK 3
-
-#define KGSL_MEMFLAGS_USE_CPU_MAP 0x10000000ULL
-#define KGSL_MEMFLAGS_SPARSE_PHYS 0x20000000ULL
-#define KGSL_MEMFLAGS_SPARSE_VIRT 0x40000000ULL
-#define KGSL_MEMFLAGS_IOCOHERENT 0x80000000ULL
-
-/* Memory types for which allocations are made */
-#define KGSL_MEMTYPE_MASK 0x0000FF00
-#define KGSL_MEMTYPE_SHIFT 8
-
-#define KGSL_MEMTYPE_OBJECTANY 0
-#define KGSL_MEMTYPE_FRAMEBUFFER 1
-#define KGSL_MEMTYPE_RENDERBUFFER 2
-#define KGSL_MEMTYPE_ARRAYBUFFER 3
-#define KGSL_MEMTYPE_ELEMENTARRAYBUFFER 4
-#define KGSL_MEMTYPE_VERTEXARRAYBUFFER 5
-#define KGSL_MEMTYPE_TEXTURE 6
-#define KGSL_MEMTYPE_SURFACE 7
-#define KGSL_MEMTYPE_EGL_SURFACE 8
-#define KGSL_MEMTYPE_GL 9
-#define KGSL_MEMTYPE_CL 10
-#define KGSL_MEMTYPE_CL_BUFFER_MAP 11
-#define KGSL_MEMTYPE_CL_BUFFER_NOMAP 12
-#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
-#define KGSL_MEMTYPE_2D 17
-#define KGSL_MEMTYPE_EGL_IMAGE 18
-#define KGSL_MEMTYPE_EGL_SHADOW 19
-#define KGSL_MEMTYPE_MULTISAMPLE 20
-#define KGSL_MEMTYPE_KERNEL 255
-
-/*
- * Alignment hint, passed as the power of 2 exponent.
- * i.e 4k (2^12) would be 12, 64k (2^16)would be 16.
- */
-#define KGSL_MEMALIGN_MASK 0x00FF0000
-#define KGSL_MEMALIGN_SHIFT 16
-
-enum kgsl_user_mem_type {
- KGSL_USER_MEM_TYPE_PMEM = 0x00000000,
- KGSL_USER_MEM_TYPE_ASHMEM = 0x00000001,
- KGSL_USER_MEM_TYPE_ADDR = 0x00000002,
- KGSL_USER_MEM_TYPE_ION = 0x00000003,
- /*
- * ION type is retained for backwards compatibility but Ion buffers are
- * dma-bufs so try to use that naming if we can
- */
- KGSL_USER_MEM_TYPE_DMABUF = 0x00000003,
- KGSL_USER_MEM_TYPE_MAX = 0x00000007,
-};
-#define KGSL_MEMFLAGS_USERMEM_MASK 0x000000e0
-#define KGSL_MEMFLAGS_USERMEM_SHIFT 5
-
-/*
- * Unfortunately, enum kgsl_user_mem_type starts at 0 which does not
- * leave a good value for allocated memory. In the flags we use
- * 0 to indicate allocated memory and thus need to add 1 to the enum
- * values.
- */
-#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)
-#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)
-
-/* --- generic KGSL flag values --- */
-
-#define KGSL_FLAGS_NORMALMODE 0x00000000
-#define KGSL_FLAGS_SAFEMODE 0x00000001
-#define KGSL_FLAGS_INITIALIZED0 0x00000002
-#define KGSL_FLAGS_INITIALIZED 0x00000004
-#define KGSL_FLAGS_STARTED 0x00000008
-#define KGSL_FLAGS_ACTIVE 0x00000010
-#define KGSL_FLAGS_RESERVED0 0x00000020
-#define KGSL_FLAGS_RESERVED1 0x00000040
-#define KGSL_FLAGS_RESERVED2 0x00000080
-#define KGSL_FLAGS_SOFT_RESET 0x00000100
-#define KGSL_FLAGS_PER_CONTEXT_TIMESTAMPS 0x00000200
-
-/* Server Side Sync Timeout in milliseconds */
-#define KGSL_SYNCOBJ_SERVER_TIMEOUT 2000
-
-/* UBWC Modes */
-#define KGSL_UBWC_NONE 0
-#define KGSL_UBWC_1_0 1
-#define KGSL_UBWC_2_0 2
-#define KGSL_UBWC_3_0 3
-
-/*
- * Reset status values for context
- */
-enum kgsl_ctx_reset_stat {
- 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
-};
-
-#define KGSL_CONVERT_TO_MBPS(val) \
- (val*1000*1000U)
-
-/* device id */
-enum kgsl_deviceid {
- KGSL_DEVICE_3D0 = 0x00000000,
- KGSL_DEVICE_MAX
-};
-
-struct kgsl_devinfo {
-
- unsigned int device_id;
- /*
- * chip revision id
- * coreid:8 majorrev:8 minorrev:8 patch:8
- */
- unsigned int chip_id;
- unsigned int mmu_enabled;
- unsigned long gmem_gpubaseaddr;
- /*
- * This field contains the adreno revision
- * number 200, 205, 220, etc...
- */
- unsigned int gpu_id;
- size_t gmem_sizebytes;
-};
-
-/*
- * struct kgsl_devmemstore - this structure defines the region of memory
- * that can be mmap()ed from this driver. The timestamp fields are __volatile__
- * because they are written by the GPU
- * @soptimestamp: Start of pipeline timestamp written by GPU before the
- * commands in concern are processed
- * @sbz: Unused, kept for 8 byte alignment
- * @eoptimestamp: End of pipeline timestamp written by GPU after the
- * commands in concern are processed
- * @sbz2: Unused, kept for 8 byte alignment
- * @preempted: Indicates if the context was preempted
- * @sbz3: Unused, kept for 8 byte alignment
- * @ref_wait_ts: Timestamp on which to generate interrupt, unused now.
- * @sbz4: Unused, kept for 8 byte alignment
- * @current_context: The current context the GPU is working on
- * @sbz5: Unused, kept for 8 byte alignment
- */
-struct kgsl_devmemstore {
- __volatile__ unsigned int soptimestamp;
- unsigned int sbz;
- __volatile__ unsigned int eoptimestamp;
- unsigned int sbz2;
- __volatile__ unsigned int preempted;
- unsigned int sbz3;
- __volatile__ unsigned int ref_wait_ts;
- unsigned int sbz4;
- unsigned int current_context;
- unsigned int sbz5;
-};
-
-#define KGSL_MEMSTORE_OFFSET(ctxt_id, field) \
- ((ctxt_id)*sizeof(struct kgsl_devmemstore) + \
- offsetof(struct kgsl_devmemstore, field))
-
-/* timestamp id*/
-enum kgsl_timestamp_type {
- KGSL_TIMESTAMP_CONSUMED = 0x00000001, /* start-of-pipeline timestamp */
- KGSL_TIMESTAMP_RETIRED = 0x00000002, /* end-of-pipeline timestamp*/
- KGSL_TIMESTAMP_QUEUED = 0x00000003,
-};
-
-/* property types - used with kgsl_device_getproperty */
-#define KGSL_PROP_DEVICE_INFO 0x1
-#define KGSL_PROP_DEVICE_SHADOW 0x2
-#define KGSL_PROP_DEVICE_POWER 0x3
-#define KGSL_PROP_SHMEM 0x4
-#define KGSL_PROP_SHMEM_APERTURES 0x5
-#define KGSL_PROP_MMU_ENABLE 0x6
-#define KGSL_PROP_INTERRUPT_WAITS 0x7
-#define KGSL_PROP_VERSION 0x8
-#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
-#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
-#define KGSL_PROP_DEVICE_BITNESS 0x18
-#define KGSL_PROP_DEVICE_QDSS_STM 0x19
-#define KGSL_PROP_MIN_ACCESS_LENGTH 0x1A
-#define KGSL_PROP_UBWC_MODE 0x1B
-#define KGSL_PROP_DEVICE_QTIMER 0x20
-#define KGSL_PROP_L3_PWR_CONSTRAINT 0x22
-
-struct kgsl_shadowprop {
- unsigned long gpuaddr;
- size_t size;
- unsigned int flags; /* contains KGSL_FLAGS_ values */
-};
-
-struct kgsl_qdss_stm_prop {
- uint64_t gpuaddr;
- uint64_t size;
-};
-
-struct kgsl_qtimer_prop {
- uint64_t gpuaddr;
- uint64_t size;
-};
-
-struct kgsl_version {
- unsigned int drv_major;
- unsigned int drv_minor;
- unsigned int dev_major;
- unsigned int dev_minor;
-};
-
-struct kgsl_sp_generic_mem {
- uint64_t local;
- uint64_t pvt;
-};
-
-struct kgsl_ucode_version {
- unsigned int pfp;
- unsigned int pm4;
-};
-
-struct kgsl_gpmu_version {
- unsigned int major;
- unsigned int minor;
- unsigned int features;
-};
-
-/* Performance counter groups */
-
-#define KGSL_PERFCOUNTER_GROUP_CP 0x0
-#define KGSL_PERFCOUNTER_GROUP_RBBM 0x1
-#define KGSL_PERFCOUNTER_GROUP_PC 0x2
-#define KGSL_PERFCOUNTER_GROUP_VFD 0x3
-#define KGSL_PERFCOUNTER_GROUP_HLSQ 0x4
-#define KGSL_PERFCOUNTER_GROUP_VPC 0x5
-#define KGSL_PERFCOUNTER_GROUP_TSE 0x6
-#define KGSL_PERFCOUNTER_GROUP_RAS 0x7
-#define KGSL_PERFCOUNTER_GROUP_UCHE 0x8
-#define KGSL_PERFCOUNTER_GROUP_TP 0x9
-#define KGSL_PERFCOUNTER_GROUP_SP 0xA
-#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
-#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
-#define KGSL_PERFCOUNTER_GROUP_TCF 0x13
-#define KGSL_PERFCOUNTER_GROUP_TCM 0x14
-#define KGSL_PERFCOUNTER_GROUP_TCR 0x15
-#define KGSL_PERFCOUNTER_GROUP_L2 0x16
-#define KGSL_PERFCOUNTER_GROUP_VSC 0x17
-#define KGSL_PERFCOUNTER_GROUP_CCU 0x18
-#define KGSL_PERFCOUNTER_GROUP_LRZ 0x19
-#define KGSL_PERFCOUNTER_GROUP_CMP 0x1A
-#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
-#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
-#define KGSL_PERFCOUNTER_GROUP_ALWAYSON_PWR 0x23
-#define KGSL_PERFCOUNTER_GROUP_MAX 0x24
-
-#define KGSL_PERFCOUNTER_NOT_USED 0xFFFFFFFF
-#define KGSL_PERFCOUNTER_BROKEN 0xFFFFFFFE
-
-/* structure holds list of ibs */
-struct kgsl_ibdesc {
- unsigned long gpuaddr;
- unsigned long __pad;
- size_t sizedwords;
- unsigned int ctrl;
-};
-
-/**
- * struct kgsl_cmdbatch_profiling_buffer
- * @wall_clock_s: Ringbuffer submission time (seconds).
- * If KGSL_CMDBATCH_PROFILING_KTIME is set, time is provided
- * in kernel clocks, otherwise wall clock time is used.
- * @wall_clock_ns: Ringbuffer submission time (nanoseconds).
- * If KGSL_CMDBATCH_PROFILING_KTIME is set time is provided
- * in kernel clocks, otherwise wall clock time is used.
- * @gpu_ticks_queued: GPU ticks at ringbuffer submission
- * @gpu_ticks_submitted: GPU ticks when starting cmdbatch execution
- * @gpu_ticks_retired: GPU ticks when finishing cmdbatch execution
- *
- * This structure defines the profiling buffer used to measure cmdbatch
- * execution time
- */
-struct kgsl_cmdbatch_profiling_buffer {
- uint64_t wall_clock_s;
- uint64_t wall_clock_ns;
- uint64_t gpu_ticks_queued;
- uint64_t gpu_ticks_submitted;
- uint64_t gpu_ticks_retired;
-};
-
-/* ioctls */
-#define KGSL_IOC_TYPE 0x09
-
-/*
- * get misc info about the GPU
- * type should be a value from enum kgsl_property_type
- * value points to a structure that varies based on type
- * sizebytes is sizeof() that structure
- * for KGSL_PROP_DEVICE_INFO, use struct kgsl_devinfo
- * this structure contaings hardware versioning info.
- * for KGSL_PROP_DEVICE_SHADOW, use struct kgsl_shadowprop
- * this is used to find mmap() offset and sizes for mapping
- * struct kgsl_memstore into userspace.
- */
-struct kgsl_device_getproperty {
- unsigned int type;
- void *value;
- size_t sizebytes;
-};
-
-#define IOCTL_KGSL_DEVICE_GETPROPERTY \
- _IOWR(KGSL_IOC_TYPE, 0x2, struct kgsl_device_getproperty)
-
-/* IOCTL_KGSL_DEVICE_READ (0x3) - removed 03/2012
- */
-
-/* block until the GPU has executed past a given timestamp
- * timeout is in milliseconds.
- */
-struct kgsl_device_waittimestamp {
- unsigned int timestamp;
- unsigned int timeout;
-};
-
-#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;
- unsigned int timeout;
-};
-
-#define IOCTL_KGSL_DEVICE_WAITTIMESTAMP_CTXTID \
- _IOW(KGSL_IOC_TYPE, 0x7, struct kgsl_device_waittimestamp_ctxtid)
-
-/* DEPRECATED: issue indirect commands to the GPU.
- * drawctxt_id must have been created with IOCTL_KGSL_DRAWCTXT_CREATE
- * ibaddr and sizedwords must specify a subset of a buffer created
- * with IOCTL_KGSL_SHAREDMEM_FROM_PMEM
- * flags may be a mask of KGSL_CONTEXT_ values
- * timestamp is a returned counter value which can be passed to
- * other ioctls to determine when the commands have been executed by
- * the GPU.
- *
- * This function is deprecated - consider using IOCTL_KGSL_SUBMIT_COMMANDS
- * instead
- */
-struct kgsl_ringbuffer_issueibcmds {
- unsigned int drawctxt_id;
- unsigned long ibdesc_addr;
- unsigned int numibs;
- unsigned int timestamp; /*output param */
- unsigned int flags;
-};
-
-#define IOCTL_KGSL_RINGBUFFER_ISSUEIBCMDS \
- _IOWR(KGSL_IOC_TYPE, 0x10, struct kgsl_ringbuffer_issueibcmds)
-
-/* read the most recently executed timestamp value
- * type should be a value from enum kgsl_timestamp_type
- */
-struct kgsl_cmdstream_readtimestamp {
- unsigned int type;
- unsigned int timestamp; /*output param */
-};
-
-#define IOCTL_KGSL_CMDSTREAM_READTIMESTAMP_OLD \
- _IOR(KGSL_IOC_TYPE, 0x11, struct kgsl_cmdstream_readtimestamp)
-
-#define IOCTL_KGSL_CMDSTREAM_READTIMESTAMP \
- _IOWR(KGSL_IOC_TYPE, 0x11, struct kgsl_cmdstream_readtimestamp)
-
-/* free memory when the GPU reaches a given timestamp.
- * gpuaddr specify a memory region created by a
- * IOCTL_KGSL_SHAREDMEM_FROM_PMEM call
- * type should be a value from enum kgsl_timestamp_type
- */
-struct kgsl_cmdstream_freememontimestamp {
- unsigned long gpuaddr;
- unsigned int type;
- unsigned int timestamp;
-};
-
-#define IOCTL_KGSL_CMDSTREAM_FREEMEMONTIMESTAMP \
- _IOW(KGSL_IOC_TYPE, 0x12, struct kgsl_cmdstream_freememontimestamp)
-
-/*
- * Previous versions of this header had incorrectly defined
- * IOCTL_KGSL_CMDSTREAM_FREEMEMONTIMESTAMP as a read-only ioctl instead
- * of a write only ioctl. To ensure binary compatibility, the following
- * #define will be used to intercept the incorrect ioctl
- */
-
-#define IOCTL_KGSL_CMDSTREAM_FREEMEMONTIMESTAMP_OLD \
- _IOR(KGSL_IOC_TYPE, 0x12, struct kgsl_cmdstream_freememontimestamp)
-
-/* create a draw context, which is used to preserve GPU state.
- * The flags field may contain a mask KGSL_CONTEXT_* values
- */
-struct kgsl_drawctxt_create {
- unsigned int flags;
- unsigned int drawctxt_id; /*output param */
-};
-
-#define IOCTL_KGSL_DRAWCTXT_CREATE \
- _IOWR(KGSL_IOC_TYPE, 0x13, struct kgsl_drawctxt_create)
-
-/* destroy a draw context */
-struct kgsl_drawctxt_destroy {
- unsigned int drawctxt_id;
-};
-
-#define IOCTL_KGSL_DRAWCTXT_DESTROY \
- _IOW(KGSL_IOC_TYPE, 0x14, struct kgsl_drawctxt_destroy)
-
-/*
- * add a block of pmem, fb, ashmem or user allocated address
- * into the GPU address space
- */
-struct kgsl_map_user_mem {
- int fd;
- unsigned long gpuaddr; /*output param */
- size_t len;
- size_t offset;
- unsigned long hostptr; /*input param */
- enum kgsl_user_mem_type memtype;
- unsigned int flags;
-};
-
-#define IOCTL_KGSL_MAP_USER_MEM \
- _IOWR(KGSL_IOC_TYPE, 0x15, struct kgsl_map_user_mem)
-
-struct kgsl_cmdstream_readtimestamp_ctxtid {
- unsigned int context_id;
- unsigned int type;
- unsigned int timestamp; /*output param */
-};
-
-#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;
- unsigned int type;
- unsigned int timestamp;
-};
-
-#define IOCTL_KGSL_CMDSTREAM_FREEMEMONTIMESTAMP_CTXTID \
- _IOW(KGSL_IOC_TYPE, 0x17, \
- struct kgsl_cmdstream_freememontimestamp_ctxtid)
-
-/* add a block of pmem or fb into the GPU address space */
-struct kgsl_sharedmem_from_pmem {
- int pmem_fd;
- unsigned long gpuaddr; /*output param */
- unsigned int len;
- unsigned int offset;
-};
-
-#define IOCTL_KGSL_SHAREDMEM_FROM_PMEM \
- _IOWR(KGSL_IOC_TYPE, 0x20, struct kgsl_sharedmem_from_pmem)
-
-/* remove memory from the GPU's address space */
-struct kgsl_sharedmem_free {
- unsigned long gpuaddr;
-};
-
-#define IOCTL_KGSL_SHAREDMEM_FREE \
- _IOW(KGSL_IOC_TYPE, 0x21, struct kgsl_sharedmem_free)
-
-struct kgsl_cff_user_event {
- unsigned char cff_opcode;
- unsigned int op1;
- unsigned int op2;
- unsigned int op3;
- unsigned int op4;
- unsigned int op5;
- unsigned int __pad[2];
-};
-
-#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;
- unsigned int width;
- unsigned int height;
- unsigned int pitch;
-};
-
-struct kgsl_buffer_desc {
- void *hostptr;
- unsigned long gpuaddr;
- int size;
- unsigned int format;
- unsigned int pitch;
- unsigned int enabled;
-};
-
-struct kgsl_bind_gmem_shadow {
- unsigned int drawctxt_id;
- struct kgsl_gmem_desc gmem_desc;
- unsigned int shadow_x;
- unsigned int shadow_y;
- struct kgsl_buffer_desc shadow_buffer;
- unsigned int buffer_id;
-};
-
-#define IOCTL_KGSL_DRAWCTXT_BIND_GMEM_SHADOW \
- _IOW(KGSL_IOC_TYPE, 0x22, struct kgsl_bind_gmem_shadow)
-
-/* add a block of memory into the GPU address space */
-
-/*
- * IOCTL_KGSL_SHAREDMEM_FROM_VMALLOC deprecated 09/2012
- * use IOCTL_KGSL_GPUMEM_ALLOC instead
- */
-
-struct kgsl_sharedmem_from_vmalloc {
- unsigned long gpuaddr; /*output param */
- unsigned int hostptr;
- unsigned int flags;
-};
-
-#define IOCTL_KGSL_SHAREDMEM_FROM_VMALLOC \
- _IOWR(KGSL_IOC_TYPE, 0x23, struct kgsl_sharedmem_from_vmalloc)
-
-/*
- * This is being deprecated in favor of IOCTL_KGSL_GPUMEM_CACHE_SYNC which
- * supports both directions (flush and invalidate). This code will still
- * work, but by definition it will do a flush of the cache which might not be
- * what you want to have happen on a buffer following a GPU operation. It is
- * safer to go with IOCTL_KGSL_GPUMEM_CACHE_SYNC
- */
-
-#define IOCTL_KGSL_SHAREDMEM_FLUSH_CACHE \
- _IOW(KGSL_IOC_TYPE, 0x24, struct kgsl_sharedmem_free)
-
-struct kgsl_drawctxt_set_bin_base_offset {
- unsigned int drawctxt_id;
- unsigned int offset;
-};
-
-#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,
- KGSL_CMDWINDOW_3D = 0x00000001, /* legacy */
- KGSL_CMDWINDOW_MMU = 0x00000002,
- KGSL_CMDWINDOW_ARBITER = 0x000000FF,
- KGSL_CMDWINDOW_MAX = 0x000000FF,
-};
-
-/* write to the command window */
-struct kgsl_cmdwindow_write {
- enum kgsl_cmdwindow_type target;
- unsigned int addr;
- unsigned int data;
-};
-
-#define IOCTL_KGSL_CMDWINDOW_WRITE \
- _IOW(KGSL_IOC_TYPE, 0x2e, struct kgsl_cmdwindow_write)
-
-struct kgsl_gpumem_alloc {
- unsigned long gpuaddr; /* output param */
- size_t size;
- unsigned int flags;
-};
-
-#define IOCTL_KGSL_GPUMEM_ALLOC \
- _IOWR(KGSL_IOC_TYPE, 0x2f, struct kgsl_gpumem_alloc)
-
-struct kgsl_cff_syncmem {
- unsigned long gpuaddr;
- size_t len;
- unsigned int __pad[2]; /* For future binary compatibility */
-};
-
-#define IOCTL_KGSL_CFF_SYNCMEM \
- _IOW(KGSL_IOC_TYPE, 0x30, struct kgsl_cff_syncmem)
-
-/*
- * A timestamp event allows the user space to register an action following an
- * expired timestamp. Note IOCTL_KGSL_TIMESTAMP_EVENT has been redefined to
- * _IOWR to support fences which need to return a fd for the priv parameter.
- */
-
-struct kgsl_timestamp_event {
- int type; /* Type of event (see list below) */
- unsigned int timestamp; /* Timestamp to trigger event on */
- unsigned int context_id; /* Context for the timestamp */
- void *priv; /* Pointer to the event specific blob */
- size_t len; /* Size of the event specific blob */
-};
-
-#define IOCTL_KGSL_TIMESTAMP_EVENT_OLD \
- _IOW(KGSL_IOC_TYPE, 0x31, struct kgsl_timestamp_event)
-
-/* A genlock timestamp event releases an existing lock on timestamp expire */
-
-#define KGSL_TIMESTAMP_EVENT_GENLOCK 1
-
-struct kgsl_timestamp_event_genlock {
- int handle; /* Handle of the genlock lock to release */
-};
-
-/* A fence timestamp event releases an existing lock on timestamp expire */
-
-#define KGSL_TIMESTAMP_EVENT_FENCE 2
-
-struct kgsl_timestamp_event_fence {
- int fence_fd; /* Fence to signal */
-};
-
-/*
- * Set a property within the kernel. Uses the same structure as
- * IOCTL_KGSL_GETPROPERTY
- */
-
-#define IOCTL_KGSL_SETPROPERTY \
- _IOW(KGSL_IOC_TYPE, 0x32, struct kgsl_device_getproperty)
-
-#define IOCTL_KGSL_TIMESTAMP_EVENT \
- _IOWR(KGSL_IOC_TYPE, 0x33, struct kgsl_timestamp_event)
-
-/**
- * struct kgsl_gpumem_alloc_id - argument to IOCTL_KGSL_GPUMEM_ALLOC_ID
- * @id: returned id value for this allocation.
- * @flags: mask of KGSL_MEM* values requested and actual flags on return.
- * @size: requested size of the allocation and actual size on return.
- * @mmapsize: returned size to pass to mmap() which may be larger than 'size'
- * @gpuaddr: returned GPU address for the allocation
- *
- * Allocate memory for access by the GPU. The flags and size fields are echoed
- * back by the kernel, so that the caller can know if the request was
- * adjusted.
- *
- * Supported flags:
- * KGSL_MEMFLAGS_GPUREADONLY: the GPU will be unable to write to the buffer
- * KGSL_MEMTYPE*: usage hint for debugging aid
- * KGSL_MEMALIGN*: alignment hint, may be ignored or adjusted by the kernel.
- * KGSL_MEMFLAGS_USE_CPU_MAP: If set on call and return, the returned GPU
- * address will be 0. Calling mmap() will set the GPU address.
- */
-struct kgsl_gpumem_alloc_id {
- unsigned int id;
- unsigned int flags;
- size_t size;
- size_t mmapsize;
- unsigned long gpuaddr;
-/* private: reserved for future use*/
- unsigned long __pad[2];
-};
-
-#define IOCTL_KGSL_GPUMEM_ALLOC_ID \
- _IOWR(KGSL_IOC_TYPE, 0x34, struct kgsl_gpumem_alloc_id)
-
-/**
- * struct kgsl_gpumem_free_id - argument to IOCTL_KGSL_GPUMEM_FREE_ID
- * @id: GPU allocation id to free
- *
- * Free an allocation by id, in case a GPU address has not been assigned or
- * is unknown. Freeing an allocation by id with this ioctl or by GPU address
- * with IOCTL_KGSL_SHAREDMEM_FREE are equivalent.
- */
-struct kgsl_gpumem_free_id {
- unsigned int id;
-/* private: reserved for future use*/
- unsigned int __pad;
-};
-
-#define IOCTL_KGSL_GPUMEM_FREE_ID \
- _IOWR(KGSL_IOC_TYPE, 0x35, struct kgsl_gpumem_free_id)
-
-/**
- * struct kgsl_gpumem_get_info - argument to IOCTL_KGSL_GPUMEM_GET_INFO
- * @gpuaddr: GPU address to query. Also set on return.
- * @id: GPU allocation id to query. Also set on return.
- * @flags: returned mask of KGSL_MEM* values.
- * @size: returned size of the allocation.
- * @mmapsize: returned size to pass mmap(), which may be larger than 'size'
- * @useraddr: returned address of the userspace mapping for this buffer
- *
- * This ioctl allows querying of all user visible attributes of an existing
- * allocation, by either the GPU address or the id returned by a previous
- * call to IOCTL_KGSL_GPUMEM_ALLOC_ID. Legacy allocation ioctls may not
- * return all attributes so this ioctl can be used to look them up if needed.
- *
- */
-struct kgsl_gpumem_get_info {
- unsigned long gpuaddr;
- unsigned int id;
- unsigned int flags;
- size_t size;
- size_t mmapsize;
- unsigned long useraddr;
-/* private: reserved for future use*/
- unsigned long __pad[4];
-};
-
-#define IOCTL_KGSL_GPUMEM_GET_INFO\
- _IOWR(KGSL_IOC_TYPE, 0x36, struct kgsl_gpumem_get_info)
-
-/**
- * struct kgsl_gpumem_sync_cache - argument to IOCTL_KGSL_GPUMEM_SYNC_CACHE
- * @gpuaddr: GPU address of the buffer to sync.
- * @id: id of the buffer to sync. Either gpuaddr or id is sufficient.
- * @op: a mask of KGSL_GPUMEM_CACHE_* values
- * @offset: offset into the buffer
- * @length: number of bytes starting from offset to perform
- * the cache operation on
- *
- * Sync the L2 cache for memory headed to and from the GPU - this replaces
- * KGSL_SHAREDMEM_FLUSH_CACHE since it can handle cache management for both
- * directions
- *
- */
-struct kgsl_gpumem_sync_cache {
- unsigned long gpuaddr;
- unsigned int id;
- unsigned int op;
- size_t offset;
- size_t length;
-};
-
-#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
-
-#define KGSL_GPUMEM_CACHE_FLUSH \
- (KGSL_GPUMEM_CACHE_CLEAN | KGSL_GPUMEM_CACHE_INV)
-
-/* Flag to ensure backwards compatibility of kgsl_gpumem_sync_cache struct */
-#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 - argument to IOCTL_KGSL_PERFCOUNTER_GET
- * @groupid: Performance counter group ID
- * @countable: Countable to select within the group
- * @offset: Return offset of the reserved LO counter
- * @offset_hi: Return offset of the reserved HI counter
- *
- * Get an available performance counter from a specified groupid. The offset
- * of the performance counter will be returned after successfully assigning
- * the countable to the counter for the specified group. An error will be
- * returned and an offset of 0 if the groupid is invalid or there are no
- * more counters left. After successfully getting a perfcounter, the user
- * must call kgsl_perfcounter_put(groupid, contable) when finished with
- * the perfcounter to clear up perfcounter resources.
- *
- */
-struct kgsl_perfcounter_get {
- unsigned int groupid;
- unsigned int countable;
- unsigned int offset;
- unsigned int offset_hi;
-/* private: reserved for future use */
- unsigned int __pad; /* For future binary compatibility */
-};
-
-#define IOCTL_KGSL_PERFCOUNTER_GET \
- _IOWR(KGSL_IOC_TYPE, 0x38, struct kgsl_perfcounter_get)
-
-/**
- * struct kgsl_perfcounter_put - argument to IOCTL_KGSL_PERFCOUNTER_PUT
- * @groupid: Performance counter group ID
- * @countable: Countable to release within the group
- *
- * Put an allocated performance counter to allow others to have access to the
- * resource that was previously taken. This is only to be called after
- * successfully getting a performance counter from kgsl_perfcounter_get().
- *
- */
-struct kgsl_perfcounter_put {
- unsigned int groupid;
- unsigned int countable;
-/* private: reserved for future use */
- unsigned int __pad[2]; /* For future binary compatibility */
-};
-
-#define IOCTL_KGSL_PERFCOUNTER_PUT \
- _IOW(KGSL_IOC_TYPE, 0x39, struct kgsl_perfcounter_put)
-
-/**
- * struct kgsl_perfcounter_query - argument to IOCTL_KGSL_PERFCOUNTER_QUERY
- * @groupid: Performance counter group ID
- * @countable: Return active countables array
- * @size: Size of active countables array
- * @max_counters: Return total number counters for the group ID
- *
- * Query the available performance counters given a groupid. The array
- * *countables is used to return the current active countables in counters.
- * The size of the array is passed in so the kernel will only write at most
- * size or counter->size for the group id. The total number of available
- * counters for the group ID is returned in max_counters.
- * If the array or size passed in are invalid, then only the maximum number
- * of counters will be returned, no data will be written to *countables.
- * If the groupid is invalid an error code will be returned.
- *
- */
-struct kgsl_perfcounter_query {
- unsigned int groupid;
- /* Array to return the current countable for up to size counters */
- unsigned int *countables;
- unsigned int count;
- unsigned int max_counters;
-/* private: reserved for future use */
- unsigned int __pad[2]; /* For future binary compatibility */
-};
-
-#define IOCTL_KGSL_PERFCOUNTER_QUERY \
- _IOWR(KGSL_IOC_TYPE, 0x3A, struct kgsl_perfcounter_query)
-
-/**
- * struct kgsl_perfcounter_query - argument to IOCTL_KGSL_PERFCOUNTER_QUERY
- * @groupid: Performance counter group IDs
- * @countable: Performance counter countable IDs
- * @value: Return performance counter reads
- * @size: Size of all arrays (groupid/countable pair and return value)
- *
- * Read in the current value of a performance counter given by the groupid
- * and countable.
- *
- */
-
-struct kgsl_perfcounter_read_group {
- unsigned int groupid;
- unsigned int countable;
- unsigned long long value;
-};
-
-struct kgsl_perfcounter_read {
- struct kgsl_perfcounter_read_group *reads;
- unsigned int count;
-/* private: reserved for future use */
- unsigned int __pad[2]; /* For future binary compatibility */
-};
-
-#define IOCTL_KGSL_PERFCOUNTER_READ \
- _IOWR(KGSL_IOC_TYPE, 0x3B, struct kgsl_perfcounter_read)
-/*
- * struct kgsl_gpumem_sync_cache_bulk - argument to
- * IOCTL_KGSL_GPUMEM_SYNC_CACHE_BULK
- * @id_list: list of GPU buffer ids of the buffers to sync
- * @count: number of GPU buffer ids in id_list
- * @op: a mask of KGSL_GPUMEM_CACHE_* values
- *
- * Sync the cache for memory headed to and from the GPU. Certain
- * optimizations can be made on the cache operation based on the total
- * size of the working set of memory to be managed.
- */
-struct kgsl_gpumem_sync_cache_bulk {
- unsigned int *id_list;
- unsigned int count;
- unsigned int op;
-/* private: reserved for future use */
- unsigned int __pad[2]; /* For future binary compatibility */
-};
-
-#define IOCTL_KGSL_GPUMEM_SYNC_CACHE_BULK \
- _IOWR(KGSL_IOC_TYPE, 0x3C, struct kgsl_gpumem_sync_cache_bulk)
-
-/*
- * struct kgsl_cmd_syncpoint_timestamp
- * @context_id: ID of a KGSL context
- * @timestamp: GPU timestamp
- *
- * This structure defines a syncpoint comprising a context/timestamp pair. A
- * list of these may be passed by IOCTL_KGSL_SUBMIT_COMMANDS to define
- * dependencies that must be met before the command can be submitted to the
- * hardware
- */
-struct kgsl_cmd_syncpoint_timestamp {
- unsigned int context_id;
- unsigned int timestamp;
-};
-
-struct kgsl_cmd_syncpoint_fence {
- int fd;
-};
-
-/**
- * struct kgsl_cmd_syncpoint - Define a sync point for a command batch
- * @type: type of sync point defined here
- * @priv: Pointer to the type specific buffer
- * @size: Size of the type specific buffer
- *
- * This structure contains pointers defining a specific command sync point.
- * The pointer and size should point to a type appropriate structure.
- */
-struct kgsl_cmd_syncpoint {
- int type;
- void *priv;
- size_t size;
-};
-
-/* Flag to indicate that the cmdlist may contain memlists */
-#define KGSL_IBDESC_MEMLIST 0x1
-
-/* Flag to point out the cmdbatch profiling buffer in the memlist */
-#define KGSL_IBDESC_PROFILING_BUFFER 0x2
-
-/**
- * struct kgsl_submit_commands - Argument to IOCTL_KGSL_SUBMIT_COMMANDS
- * @context_id: KGSL context ID that owns the commands
- * @flags:
- * @cmdlist: User pointer to a list of kgsl_ibdesc structures
- * @numcmds: Number of commands listed in cmdlist
- * @synclist: User pointer to a list of kgsl_cmd_syncpoint structures
- * @numsyncs: Number of sync points listed in synclist
- * @timestamp: On entry the a user defined timestamp, on exist the timestamp
- * assigned to the command batch
- *
- * This structure specifies a command to send to the GPU hardware. This is
- * similar to kgsl_issueibcmds expect that it doesn't support the legacy way to
- * submit IB lists and it adds sync points to block the IB until the
- * dependencies are satisified. This entry point is the new and preferred way
- * to submit commands to the GPU. The memory list can be used to specify all
- * memory that is referrenced in the current set of commands.
- */
-
-struct kgsl_submit_commands {
- unsigned int context_id;
- unsigned int flags;
- struct kgsl_ibdesc *cmdlist;
- unsigned int numcmds;
- struct kgsl_cmd_syncpoint *synclist;
- unsigned int numsyncs;
- unsigned int timestamp;
-/* private: reserved for future use */
- unsigned int __pad[4];
-};
-
-#define IOCTL_KGSL_SUBMIT_COMMANDS \
- _IOWR(KGSL_IOC_TYPE, 0x3D, struct kgsl_submit_commands)
-
-/**
- * struct kgsl_device_constraint - device constraint argument
- * @context_id: KGSL context ID
- * @type: type of constraint i.e pwrlevel/none
- * @data: constraint data
- * @size: size of the constraint data
- */
-struct kgsl_device_constraint {
- unsigned int type;
- unsigned int context_id;
- void *data;
- size_t size;
-};
-
-/* Constraint Type*/
-#define KGSL_CONSTRAINT_NONE 0
-#define KGSL_CONSTRAINT_PWRLEVEL 1
-
-/* L3 constraint Type */
-#define KGSL_CONSTRAINT_L3_NONE 2
-#define KGSL_CONSTRAINT_L3_PWRLEVEL 3
-
-/* PWRLEVEL constraint level*/
-/* set to min frequency */
-#define KGSL_CONSTRAINT_PWR_MIN 0
-/* set to max frequency */
-#define KGSL_CONSTRAINT_PWR_MAX 1
-
-/* L3 PWRLEVEL constraint level */
-#define KGSL_CONSTRAINT_L3_PWR_MED 0
-#define KGSL_CONSTRAINT_L3_PWR_MAX 1
-
-struct kgsl_device_constraint_pwrlevel {
- unsigned int level;
-};
-
-/**
- * struct kgsl_syncsource_create - Argument to IOCTL_KGSL_SYNCSOURCE_CREATE
- * @id: returned id for the syncsource that was created.
- *
- * This ioctl creates a userspace sync timeline.
- */
-
-struct kgsl_syncsource_create {
- unsigned int id;
-/* private: reserved for future use */
- unsigned int __pad[3];
-};
-
-#define IOCTL_KGSL_SYNCSOURCE_CREATE \
- _IOWR(KGSL_IOC_TYPE, 0x40, struct kgsl_syncsource_create)
-
-/**
- * struct kgsl_syncsource_destroy - Argument to IOCTL_KGSL_SYNCSOURCE_DESTROY
- * @id: syncsource id to destroy
- *
- * This ioctl creates a userspace sync timeline.
- */
-
-struct kgsl_syncsource_destroy {
- unsigned int id;
-/* private: reserved for future use */
- unsigned int __pad[3];
-};
-
-#define IOCTL_KGSL_SYNCSOURCE_DESTROY \
- _IOWR(KGSL_IOC_TYPE, 0x41, struct kgsl_syncsource_destroy)
-
-/**
- * struct kgsl_syncsource_create_fence - Argument to
- * IOCTL_KGSL_SYNCSOURCE_CREATE_FENCE
- * @id: syncsource id
- * @fence_fd: returned sync_fence fd
- *
- * Create a fence that may be signaled by userspace by calling
- * IOCTL_KGSL_SYNCSOURCE_SIGNAL_FENCE. There are no order dependencies between
- * these fences.
- */
-struct kgsl_syncsource_create_fence {
- unsigned int id;
- int fence_fd;
-/* private: reserved for future use */
- unsigned int __pad[4];
-};
-
-/**
- * struct kgsl_syncsource_signal_fence - Argument to
- * IOCTL_KGSL_SYNCSOURCE_SIGNAL_FENCE
- * @id: syncsource id
- * @fence_fd: sync_fence fd to signal
- *
- * Signal a fence that was created by a IOCTL_KGSL_SYNCSOURCE_CREATE_FENCE
- * call using the same syncsource id. This allows a fence to be shared
- * to other processes but only signaled by the process owning the fd
- * used to create the fence.
- */
-#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;
-/* private: reserved for future use */
- 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 - Argument to IOCTL_KGSL_CFF_SYNC_GPUOBJ
- * @offset: Offset into the GPU object to sync
- * @length: Number of bytes to sync
- * @id: ID of the GPU object to sync
- */
-struct kgsl_cff_sync_gpuobj {
- uint64_t offset;
- uint64_t length;
- unsigned int id;
-};
-
-#define IOCTL_KGSL_CFF_SYNC_GPUOBJ \
- _IOW(KGSL_IOC_TYPE, 0x44, struct kgsl_cff_sync_gpuobj)
-
-/**
- * struct kgsl_gpuobj_alloc - Argument to IOCTL_KGSL_GPUOBJ_ALLOC
- * @size: Size in bytes of the object to allocate
- * @flags: mask of KGSL_MEMFLAG_* bits
- * @va_len: Size in bytes of the virtual region to allocate
- * @mmapsize: Returns the mmap() size of the object
- * @id: Returns the GPU object ID of the new object
- * @metadata_len: Length of the metdata to copy from the user
- * @metadata: Pointer to the user specified metadata to store for the object
- */
-struct kgsl_gpuobj_alloc {
- uint64_t size;
- uint64_t flags;
- uint64_t va_len;
- uint64_t mmapsize;
- unsigned int id;
- unsigned int metadata_len;
- uint64_t metadata;
-};
-
-/* Let the user know that this header supports the gpuobj metadata */
-#define KGSL_GPUOBJ_ALLOC_METADATA_MAX 64
-
-#define IOCTL_KGSL_GPUOBJ_ALLOC \
- _IOWR(KGSL_IOC_TYPE, 0x45, struct kgsl_gpuobj_alloc)
-
-/**
- * struct kgsl_gpuobj_free - Argument to IOCTL_KGLS_GPUOBJ_FREE
- * @flags: Mask of: KGSL_GUPOBJ_FREE_ON_EVENT
- * @priv: Pointer to the private object if KGSL_GPUOBJ_FREE_ON_EVENT is
- * specified
- * @id: ID of the GPU object to free
- * @type: If KGSL_GPUOBJ_FREE_ON_EVENT is specified, the type of asynchronous
- * event to free on
- * @len: Length of the data passed in priv
- */
-struct kgsl_gpuobj_free {
- uint64_t flags;
- uint64_t priv;
- unsigned int id;
- unsigned int type;
- unsigned int len;
-};
-
-#define KGSL_GPUOBJ_FREE_ON_EVENT 1
-
-#define KGSL_GPU_EVENT_TIMESTAMP 1
-#define KGSL_GPU_EVENT_FENCE 2
-
-/**
- * struct kgsl_gpu_event_timestamp - Specifies a timestamp event to free a GPU
- * object on
- * @context_id: ID of the timestamp event to wait for
- * @timestamp: Timestamp of the timestamp event to wait for
- */
-struct kgsl_gpu_event_timestamp {
- unsigned int context_id;
- unsigned int timestamp;
-};
-
-/**
- * struct kgsl_gpu_event_fence - Specifies a fence ID to to free a GPU object on
- * @fd: File descriptor for the fence
- */
-struct kgsl_gpu_event_fence {
- int fd;
-};
-
-#define IOCTL_KGSL_GPUOBJ_FREE \
- _IOW(KGSL_IOC_TYPE, 0x46, struct kgsl_gpuobj_free)
-
-/**
- * struct kgsl_gpuobj_info - argument to IOCTL_KGSL_GPUOBJ_INFO
- * @gpuaddr: GPU address of the object
- * @flags: Current flags for the object
- * @size: Size of the object
- * @va_len: VA size of the object
- * @va_addr: Virtual address of the object (if it is mapped)
- * id - GPU object ID of the object to query
- */
-struct kgsl_gpuobj_info {
- uint64_t gpuaddr;
- uint64_t flags;
- uint64_t size;
- uint64_t va_len;
- uint64_t va_addr;
- unsigned int id;
-};
-
-#define IOCTL_KGSL_GPUOBJ_INFO \
- _IOWR(KGSL_IOC_TYPE, 0x47, struct kgsl_gpuobj_info)
-
-/**
- * struct kgsl_gpuobj_import - argument to IOCTL_KGSL_GPUOBJ_IMPORT
- * @priv: Pointer to the private data for the import type
- * @priv_len: Length of the private data
- * @flags: Mask of KGSL_MEMFLAG_ flags
- * @type: Type of the import (KGSL_USER_MEM_TYPE_*)
- * @id: Returns the ID of the new GPU object
- */
-struct kgsl_gpuobj_import {
- uint64_t priv;
- uint64_t priv_len;
- uint64_t flags;
- unsigned int type;
- unsigned int id;
-};
-
-/**
- * struct kgsl_gpuobj_import_dma_buf - import a dmabuf object
- * @fd: File descriptor for the dma-buf object
- */
-struct kgsl_gpuobj_import_dma_buf {
- int fd;
-};
-
-/**
- * struct kgsl_gpuobj_import_useraddr - import an object based on a useraddr
- * @virtaddr: Virtual address of the object to import
- */
-struct kgsl_gpuobj_import_useraddr {
- uint64_t virtaddr;
-};
-
-#define IOCTL_KGSL_GPUOBJ_IMPORT \
- _IOWR(KGSL_IOC_TYPE, 0x48, struct kgsl_gpuobj_import)
-
-/**
- * struct kgsl_gpuobj_sync_obj - Individual GPU object to sync
- * @offset: Offset within the GPU object to sync
- * @length: Number of bytes to sync
- * @id: ID of the GPU object to sync
- * @op: Cache operation to execute
- */
-
-struct kgsl_gpuobj_sync_obj {
- uint64_t offset;
- uint64_t length;
- unsigned int id;
- unsigned int op;
-};
-
-/**
- * struct kgsl_gpuobj_sync - Argument for IOCTL_KGSL_GPUOBJ_SYNC
- * @objs: Pointer to an array of kgsl_gpuobj_sync_obj structs
- * @obj_len: Size of each item in the array
- * @count: Number of items in the array
- */
-
-struct kgsl_gpuobj_sync {
- uint64_t objs;
- unsigned int obj_len;
- unsigned int count;
-};
-
-#define IOCTL_KGSL_GPUOBJ_SYNC \
- _IOW(KGSL_IOC_TYPE, 0x49, struct kgsl_gpuobj_sync)
-
-/**
- * struct kgsl_command_object - GPU command object
- * @offset: GPU address offset of the object
- * @gpuaddr: GPU address of the object
- * @size: Size of the object
- * @flags: Current flags for the object
- * @id - GPU command object ID
- */
-struct kgsl_command_object {
- uint64_t offset;
- uint64_t gpuaddr;
- uint64_t size;
- unsigned int flags;
- unsigned int id;
-};
-
-/**
- * struct kgsl_command_syncpoint - GPU syncpoint object
- * @priv: Pointer to the type specific buffer
- * @size: Size of the type specific buffer
- * @type: type of sync point defined here
- */
-struct kgsl_command_syncpoint {
- uint64_t priv;
- uint64_t size;
- unsigned int type;
-};
-
-/**
- * struct kgsl_command_object - Argument for IOCTL_KGSL_GPU_COMMAND
- * @flags: Current flags for the object
- * @cmdlist: List of kgsl_command_objects for submission
- * @cmd_size: Size of kgsl_command_objects structure
- * @numcmds: Number of kgsl_command_objects in command list
- * @objlist: List of kgsl_command_objects for tracking
- * @obj_size: Size of kgsl_command_objects structure
- * @numobjs: Number of kgsl_command_objects in object list
- * @synclist: List of kgsl_command_syncpoints
- * @sync_size: Size of kgsl_command_syncpoint structure
- * @numsyncs: Number of kgsl_command_syncpoints in syncpoint list
- * @context_id: Context ID submittin ghte kgsl_gpu_command
- * @timestamp: Timestamp for the submitted commands
- */
-struct kgsl_gpu_command {
- uint64_t flags;
- uint64_t cmdlist;
- unsigned int cmdsize;
- unsigned int numcmds;
- uint64_t objlist;
- unsigned int objsize;
- unsigned int numobjs;
- uint64_t synclist;
- unsigned int syncsize;
- unsigned int numsyncs;
- unsigned int context_id;
- unsigned int timestamp;
-};
-
-#define IOCTL_KGSL_GPU_COMMAND \
- _IOWR(KGSL_IOC_TYPE, 0x4A, struct kgsl_gpu_command)
-
-/**
- * struct kgsl_preemption_counters_query - argument to
- * IOCTL_KGSL_PREEMPTIONCOUNTER_QUERY
- * @counters: Return preemption counters array
- * @size_user: Size allocated by userspace
- * @size_priority_level: Size of preemption counters for each
- * priority level
- * @max_priority_level: Return max number of priority levels
- *
- * Query the available preemption counters. The array counters
- * is used to return preemption counters. The size of the array
- * is passed in so the kernel will only write at most size_user
- * or max available preemption counters. The total number of
- * preemption counters is returned in max_priority_level. If the
- * array or size passed in are invalid, then an error is
- * returned back.
- */
-struct kgsl_preemption_counters_query {
- uint64_t counters;
- unsigned int size_user;
- unsigned int size_priority_level;
- unsigned int max_priority_level;
-};
-
-#define IOCTL_KGSL_PREEMPTIONCOUNTER_QUERY \
- _IOWR(KGSL_IOC_TYPE, 0x4B, struct kgsl_preemption_counters_query)
-
-/**
- * struct kgsl_gpuobj_set_info - argument for IOCTL_KGSL_GPUOBJ_SET_INFO
- * @flags: Flags to indicate which paramaters to change
- * @metadata: If KGSL_GPUOBJ_SET_INFO_METADATA is set, a pointer to the new
- * metadata
- * @id: GPU memory object ID to change
- * @metadata_len: If KGSL_GPUOBJ_SET_INFO_METADATA is set, the length of the
- * new metadata string
- * @type: If KGSL_GPUOBJ_SET_INFO_TYPE is set, the new type of the memory object
- */
-
-#define KGSL_GPUOBJ_SET_INFO_METADATA (1 << 0)
-#define KGSL_GPUOBJ_SET_INFO_TYPE (1 << 1)
-
-struct kgsl_gpuobj_set_info {
- uint64_t flags;
- uint64_t metadata;
- unsigned int id;
- unsigned int metadata_len;
- unsigned int type;
-};
-
-#define IOCTL_KGSL_GPUOBJ_SET_INFO \
- _IOW(KGSL_IOC_TYPE, 0x4C, struct kgsl_gpuobj_set_info)
-
-/**
- * struct kgsl_sparse_phys_alloc - Argument for IOCTL_KGSL_SPARSE_PHYS_ALLOC
- * @size: Size in bytes to back
- * @pagesize: Pagesize alignment required
- * @flags: Flags for this allocation
- * @id: Returned ID for this allocation
- */
-struct kgsl_sparse_phys_alloc {
- uint64_t size;
- uint64_t pagesize;
- uint64_t flags;
- unsigned int id;
-};
-
-#define IOCTL_KGSL_SPARSE_PHYS_ALLOC \
- _IOWR(KGSL_IOC_TYPE, 0x50, struct kgsl_sparse_phys_alloc)
-
-/**
- * struct kgsl_sparse_phys_free - Argument for IOCTL_KGSL_SPARSE_PHYS_FREE
- * @id: ID to free
- */
-struct kgsl_sparse_phys_free {
- unsigned int id;
-};
-
-#define IOCTL_KGSL_SPARSE_PHYS_FREE \
- _IOW(KGSL_IOC_TYPE, 0x51, struct kgsl_sparse_phys_free)
-
-/**
- * struct kgsl_sparse_virt_alloc - Argument for IOCTL_KGSL_SPARSE_VIRT_ALLOC
- * @size: Size in bytes to reserve
- * @pagesize: Pagesize alignment required
- * @flags: Flags for this allocation
- * @id: Returned ID for this allocation
- * @gpuaddr: Returned GPU address for this allocation
- */
-struct kgsl_sparse_virt_alloc {
- uint64_t size;
- uint64_t pagesize;
- uint64_t flags;
- uint64_t gpuaddr;
- unsigned int id;
-};
-
-#define IOCTL_KGSL_SPARSE_VIRT_ALLOC \
- _IOWR(KGSL_IOC_TYPE, 0x52, struct kgsl_sparse_virt_alloc)
-
-/**
- * struct kgsl_sparse_virt_free - Argument for IOCTL_KGSL_SPARSE_VIRT_FREE
- * @id: ID to free
- */
-struct kgsl_sparse_virt_free {
- unsigned int id;
-};
-
-#define IOCTL_KGSL_SPARSE_VIRT_FREE \
- _IOW(KGSL_IOC_TYPE, 0x53, struct kgsl_sparse_virt_free)
-
-/**
- * struct kgsl_sparse_binding_object - Argument for kgsl_sparse_bind
- * @virtoffset: Offset into the virtual ID
- * @physoffset: Offset into the physical ID (bind only)
- * @size: Size in bytes to reserve
- * @flags: Flags for this kgsl_sparse_binding_object
- * @id: Physical ID to bind (bind only)
- */
-struct kgsl_sparse_binding_object {
- uint64_t virtoffset;
- uint64_t physoffset;
- uint64_t size;
- uint64_t flags;
- unsigned int id;
-};
-
-/**
- * struct kgsl_sparse_bind - Argument for IOCTL_KGSL_SPARSE_BIND
- * @list: List of kgsl_sparse_bind_objects to bind/unbind
- * @id: Virtual ID to bind/unbind
- * @size: Size of kgsl_sparse_bind_object
- * @count: Number of elements in list
- *
- */
-struct kgsl_sparse_bind {
- uint64_t list;
- unsigned int id;
- unsigned int size;
- unsigned int count;
-};
-
-#define IOCTL_KGSL_SPARSE_BIND \
- _IOW(KGSL_IOC_TYPE, 0x54, struct kgsl_sparse_bind)
-
-/**
- * struct kgsl_gpu_sparse_command - Argument for
- * IOCTL_KGSL_GPU_SPARSE_COMMAND
- * @flags: Current flags for the object
- * @sparselist: List of kgsl_sparse_binding_object to bind/unbind
- * @synclist: List of kgsl_command_syncpoints
- * @sparsesize: Size of kgsl_sparse_binding_object
- * @numsparse: Number of elements in list
- * @sync_size: Size of kgsl_command_syncpoint structure
- * @numsyncs: Number of kgsl_command_syncpoints in syncpoint list
- * @context_id: Context ID submitting the kgsl_gpu_command
- * @timestamp: Timestamp for the submitted commands
- * @id: Virtual ID to bind/unbind
- */
-struct kgsl_gpu_sparse_command {
- uint64_t flags;
- uint64_t sparselist;
- uint64_t synclist;
- unsigned int sparsesize;
- unsigned int numsparse;
- unsigned int syncsize;
- unsigned int numsyncs;
- unsigned int context_id;
- unsigned int timestamp;
- unsigned int id;
-};
-
-#define IOCTL_KGSL_GPU_SPARSE_COMMAND \
- _IOWR(KGSL_IOC_TYPE, 0x55, struct kgsl_gpu_sparse_command)
-
-#endif /* _MSM_KGSL_H */
diff --git a/sdm710/original-kernel-headers/linux/msm_mdp.h b/sdm710/original-kernel-headers/linux/msm_mdp.h
deleted file mode 100644
index 487cb169..00000000
--- a/sdm710/original-kernel-headers/linux/msm_mdp.h
+++ /dev/null
@@ -1,1462 +0,0 @@
-#ifndef _MSM_MDP_H_
-#define _MSM_MDP_H_
-
-#include <stdint.h>
-#include <linux/fb.h>
-
-#define MSMFB_IOCTL_MAGIC 'm'
-#define MSMFB_GRP_DISP _IOW(MSMFB_IOCTL_MAGIC, 1, unsigned int)
-#define MSMFB_BLIT _IOW(MSMFB_IOCTL_MAGIC, 2, unsigned int)
-#define MSMFB_SUSPEND_SW_REFRESHER _IOW(MSMFB_IOCTL_MAGIC, 128, unsigned int)
-#define MSMFB_RESUME_SW_REFRESHER _IOW(MSMFB_IOCTL_MAGIC, 129, unsigned int)
-#define MSMFB_CURSOR _IOW(MSMFB_IOCTL_MAGIC, 130, struct fb_cursor)
-#define MSMFB_SET_LUT _IOW(MSMFB_IOCTL_MAGIC, 131, struct fb_cmap)
-#define MSMFB_HISTOGRAM _IOWR(MSMFB_IOCTL_MAGIC, 132, struct mdp_histogram_data)
-/* new ioctls's for set/get ccs matrix */
-#define MSMFB_GET_CCS_MATRIX _IOWR(MSMFB_IOCTL_MAGIC, 133, struct mdp_ccs)
-#define MSMFB_SET_CCS_MATRIX _IOW(MSMFB_IOCTL_MAGIC, 134, struct mdp_ccs)
-#define MSMFB_OVERLAY_SET _IOWR(MSMFB_IOCTL_MAGIC, 135, \
- struct mdp_overlay)
-#define MSMFB_OVERLAY_UNSET _IOW(MSMFB_IOCTL_MAGIC, 136, unsigned int)
-
-#define MSMFB_OVERLAY_PLAY _IOW(MSMFB_IOCTL_MAGIC, 137, \
- struct msmfb_overlay_data)
-#define MSMFB_OVERLAY_QUEUE MSMFB_OVERLAY_PLAY
-
-#define MSMFB_GET_PAGE_PROTECTION _IOR(MSMFB_IOCTL_MAGIC, 138, \
- struct mdp_page_protection)
-#define MSMFB_SET_PAGE_PROTECTION _IOW(MSMFB_IOCTL_MAGIC, 139, \
- struct mdp_page_protection)
-#define MSMFB_OVERLAY_GET _IOR(MSMFB_IOCTL_MAGIC, 140, \
- struct mdp_overlay)
-#define MSMFB_OVERLAY_PLAY_ENABLE _IOW(MSMFB_IOCTL_MAGIC, 141, unsigned int)
-#define MSMFB_OVERLAY_BLT _IOWR(MSMFB_IOCTL_MAGIC, 142, \
- struct msmfb_overlay_blt)
-#define MSMFB_OVERLAY_BLT_OFFSET _IOW(MSMFB_IOCTL_MAGIC, 143, unsigned int)
-#define MSMFB_HISTOGRAM_START _IOR(MSMFB_IOCTL_MAGIC, 144, \
- struct mdp_histogram_start_req)
-#define MSMFB_HISTOGRAM_STOP _IOR(MSMFB_IOCTL_MAGIC, 145, unsigned int)
-#define MSMFB_NOTIFY_UPDATE _IOWR(MSMFB_IOCTL_MAGIC, 146, unsigned int)
-
-#define MSMFB_OVERLAY_3D _IOWR(MSMFB_IOCTL_MAGIC, 147, \
- struct msmfb_overlay_3d)
-
-#define MSMFB_MIXER_INFO _IOWR(MSMFB_IOCTL_MAGIC, 148, \
- struct msmfb_mixer_info_req)
-#define MSMFB_OVERLAY_PLAY_WAIT _IOWR(MSMFB_IOCTL_MAGIC, 149, \
- struct msmfb_overlay_data)
-#define MSMFB_WRITEBACK_INIT _IO(MSMFB_IOCTL_MAGIC, 150)
-#define MSMFB_WRITEBACK_START _IO(MSMFB_IOCTL_MAGIC, 151)
-#define MSMFB_WRITEBACK_STOP _IO(MSMFB_IOCTL_MAGIC, 152)
-#define MSMFB_WRITEBACK_QUEUE_BUFFER _IOW(MSMFB_IOCTL_MAGIC, 153, \
- struct msmfb_data)
-#define MSMFB_WRITEBACK_DEQUEUE_BUFFER _IOW(MSMFB_IOCTL_MAGIC, 154, \
- struct msmfb_data)
-#define MSMFB_WRITEBACK_TERMINATE _IO(MSMFB_IOCTL_MAGIC, 155)
-#define MSMFB_MDP_PP _IOWR(MSMFB_IOCTL_MAGIC, 156, struct msmfb_mdp_pp)
-#define MSMFB_OVERLAY_VSYNC_CTRL _IOW(MSMFB_IOCTL_MAGIC, 160, unsigned int)
-#define MSMFB_VSYNC_CTRL _IOW(MSMFB_IOCTL_MAGIC, 161, unsigned int)
-#define MSMFB_BUFFER_SYNC _IOW(MSMFB_IOCTL_MAGIC, 162, struct mdp_buf_sync)
-#define MSMFB_OVERLAY_COMMIT _IO(MSMFB_IOCTL_MAGIC, 163)
-#define MSMFB_DISPLAY_COMMIT _IOW(MSMFB_IOCTL_MAGIC, 164, \
- struct mdp_display_commit)
-#define MSMFB_METADATA_SET _IOW(MSMFB_IOCTL_MAGIC, 165, struct msmfb_metadata)
-#define MSMFB_METADATA_GET _IOW(MSMFB_IOCTL_MAGIC, 166, struct msmfb_metadata)
-#define MSMFB_WRITEBACK_SET_MIRRORING_HINT _IOW(MSMFB_IOCTL_MAGIC, 167, \
- unsigned int)
-#define MSMFB_ASYNC_BLIT _IOW(MSMFB_IOCTL_MAGIC, 168, unsigned int)
-#define MSMFB_OVERLAY_PREPARE _IOWR(MSMFB_IOCTL_MAGIC, 169, \
- struct mdp_overlay_list)
-#define MSMFB_LPM_ENABLE _IOWR(MSMFB_IOCTL_MAGIC, 170, unsigned int)
-#define MSMFB_MDP_PP_GET_FEATURE_VERSION _IOWR(MSMFB_IOCTL_MAGIC, 171, \
- struct mdp_pp_feature_version)
-
-#define FB_TYPE_3D_PANEL 0x10101010
-#define MDP_IMGTYPE2_START 0x10000
-#define MSMFB_DRIVER_VERSION 0xF9E8D701
-/* Maximum number of formats supported by MDP*/
-#define MDP_IMGTYPE_END 0x100
-
-/* HW Revisions for different MDSS targets */
-#define MDSS_GET_MAJOR(rev) ((rev) >> 28)
-#define MDSS_GET_MINOR(rev) (((rev) >> 16) & 0xFFF)
-#define MDSS_GET_STEP(rev) ((rev) & 0xFFFF)
-#define MDSS_GET_MAJOR_MINOR(rev) ((rev) >> 16)
-
-#define IS_MDSS_MAJOR_MINOR_SAME(rev1, rev2) \
- (MDSS_GET_MAJOR_MINOR((rev1)) == MDSS_GET_MAJOR_MINOR((rev2)))
-
-#define MDSS_MDP_REV(major, minor, step) \
- ((((major) & 0x000F) << 28) | \
- (((minor) & 0x0FFF) << 16) | \
- ((step) & 0xFFFF))
-
-#define MDSS_MDP_HW_REV_100 MDSS_MDP_REV(1, 0, 0) /* 8974 v1.0 */
-#define MDSS_MDP_HW_REV_101 MDSS_MDP_REV(1, 1, 0) /* 8x26 v1.0 */
-#define MDSS_MDP_HW_REV_101_1 MDSS_MDP_REV(1, 1, 1) /* 8x26 v2.0, 8926 v1.0 */
-#define MDSS_MDP_HW_REV_101_2 MDSS_MDP_REV(1, 1, 2) /* 8926 v2.0 */
-#define MDSS_MDP_HW_REV_102 MDSS_MDP_REV(1, 2, 0) /* 8974 v2.0 */
-#define MDSS_MDP_HW_REV_102_1 MDSS_MDP_REV(1, 2, 1) /* 8974 v3.0 (Pro) */
-#define MDSS_MDP_HW_REV_103 MDSS_MDP_REV(1, 3, 0) /* 8084 v1.0 */
-#define MDSS_MDP_HW_REV_103_1 MDSS_MDP_REV(1, 3, 1) /* 8084 v1.1 */
-#define MDSS_MDP_HW_REV_105 MDSS_MDP_REV(1, 5, 0) /* 8994 v1.0 */
-#define MDSS_MDP_HW_REV_106 MDSS_MDP_REV(1, 6, 0) /* 8916 v1.0 */
-#define MDSS_MDP_HW_REV_107 MDSS_MDP_REV(1, 7, 0) /* 8996 v1 */
-#define MDSS_MDP_HW_REV_107_1 MDSS_MDP_REV(1, 7, 1) /* 8996 v2 */
-#define MDSS_MDP_HW_REV_107_2 MDSS_MDP_REV(1, 7, 2) /* 8996 v3 */
-#define MDSS_MDP_HW_REV_108 MDSS_MDP_REV(1, 8, 0) /* 8939 v1.0 */
-#define MDSS_MDP_HW_REV_109 MDSS_MDP_REV(1, 9, 0) /* 8994 v2.0 */
-#define MDSS_MDP_HW_REV_110 MDSS_MDP_REV(1, 10, 0) /* 8992 v1.0 */
-#define MDSS_MDP_HW_REV_200 MDSS_MDP_REV(2, 0, 0) /* 8092 v1.0 */
-#define MDSS_MDP_HW_REV_112 MDSS_MDP_REV(1, 12, 0) /* 8952 v1.0 */
-#define MDSS_MDP_HW_REV_114 MDSS_MDP_REV(1, 14, 0) /* 8937 v1.0 */
-#define MDSS_MDP_HW_REV_115 MDSS_MDP_REV(1, 15, 0) /* msmgold */
-#define MDSS_MDP_HW_REV_116 MDSS_MDP_REV(1, 16, 0) /* msmtitanium */
-#define MDSS_MDP_HW_REV_300 MDSS_MDP_REV(3, 0, 0) /* msmcobalt */
-#define MDSS_MDP_HW_REV_301 MDSS_MDP_REV(3, 0, 1) /* msmcobalt v1.0 */
-
-enum {
- NOTIFY_UPDATE_INIT,
- NOTIFY_UPDATE_DEINIT,
- NOTIFY_UPDATE_START,
- NOTIFY_UPDATE_STOP,
- NOTIFY_UPDATE_POWER_OFF,
-};
-
-enum {
- NOTIFY_TYPE_NO_UPDATE,
- NOTIFY_TYPE_SUSPEND,
- NOTIFY_TYPE_UPDATE,
- NOTIFY_TYPE_BL_UPDATE,
- NOTIFY_TYPE_BL_AD_ATTEN_UPDATE,
-};
-
-enum {
- MDP_RGB_565, /* RGB 565 planer */
- MDP_XRGB_8888, /* RGB 888 padded */
- MDP_Y_CBCR_H2V2, /* Y and CbCr, pseudo planer w/ Cb is in MSB */
- MDP_Y_CBCR_H2V2_ADRENO,
- MDP_ARGB_8888, /* ARGB 888 */
- MDP_RGB_888, /* RGB 888 planer */
- MDP_Y_CRCB_H2V2, /* Y and CrCb, pseudo planer w/ Cr is in MSB */
- MDP_YCRYCB_H2V1, /* YCrYCb interleave */
- MDP_CBYCRY_H2V1, /* CbYCrY interleave */
- MDP_Y_CRCB_H2V1, /* Y and CrCb, pseduo planer w/ Cr is in MSB */
- MDP_Y_CBCR_H2V1, /* Y and CrCb, pseduo planer w/ Cr is in MSB */
- MDP_Y_CRCB_H1V2,
- MDP_Y_CBCR_H1V2,
- MDP_RGBA_8888, /* ARGB 888 */
- MDP_BGRA_8888, /* ABGR 888 */
- MDP_RGBX_8888, /* RGBX 888 */
- MDP_Y_CRCB_H2V2_TILE, /* Y and CrCb, pseudo planer tile */
- MDP_Y_CBCR_H2V2_TILE, /* Y and CbCr, pseudo planer tile */
- MDP_Y_CR_CB_H2V2, /* Y, Cr and Cb, planar */
- MDP_Y_CR_CB_GH2V2, /* Y, Cr and Cb, planar aligned to Android YV12 */
- MDP_Y_CB_CR_H2V2, /* Y, Cb and Cr, planar */
- MDP_Y_CRCB_H1V1, /* Y and CrCb, pseduo planer w/ Cr is in MSB */
- MDP_Y_CBCR_H1V1, /* Y and CbCr, pseduo planer w/ Cb is in MSB */
- MDP_YCRCB_H1V1, /* YCrCb interleave */
- MDP_YCBCR_H1V1, /* YCbCr interleave */
- MDP_BGR_565, /* BGR 565 planer */
- MDP_BGR_888, /* BGR 888 */
- MDP_Y_CBCR_H2V2_VENUS,
- MDP_BGRX_8888, /* BGRX 8888 */
- MDP_RGBA_8888_TILE, /* RGBA 8888 in tile format */
- MDP_ARGB_8888_TILE, /* ARGB 8888 in tile format */
- MDP_ABGR_8888_TILE, /* ABGR 8888 in tile format */
- MDP_BGRA_8888_TILE, /* BGRA 8888 in tile format */
- MDP_RGBX_8888_TILE, /* RGBX 8888 in tile format */
- MDP_XRGB_8888_TILE, /* XRGB 8888 in tile format */
- MDP_XBGR_8888_TILE, /* XBGR 8888 in tile format */
- MDP_BGRX_8888_TILE, /* BGRX 8888 in tile format */
- MDP_YCBYCR_H2V1, /* YCbYCr interleave */
- MDP_RGB_565_TILE, /* RGB 565 in tile format */
- MDP_BGR_565_TILE, /* BGR 565 in tile format */
- MDP_ARGB_1555, /*ARGB 1555*/
- MDP_RGBA_5551, /*RGBA 5551*/
- MDP_ARGB_4444, /*ARGB 4444*/
- MDP_RGBA_4444, /*RGBA 4444*/
- MDP_RGB_565_UBWC,
- MDP_RGBA_8888_UBWC,
- MDP_Y_CBCR_H2V2_UBWC,
- MDP_RGBX_8888_UBWC,
- MDP_Y_CRCB_H2V2_VENUS,
- MDP_IMGTYPE_LIMIT,
- MDP_RGB_BORDERFILL, /* border fill pipe */
- MDP_XRGB_1555,
- MDP_RGBX_5551,
- MDP_XRGB_4444,
- MDP_RGBX_4444,
- MDP_ABGR_1555,
- MDP_BGRA_5551,
- MDP_XBGR_1555,
- MDP_BGRX_5551,
- MDP_ABGR_4444,
- MDP_BGRA_4444,
- MDP_XBGR_4444,
- MDP_BGRX_4444,
- MDP_ABGR_8888,
- MDP_XBGR_8888,
- MDP_RGBA_1010102,
- MDP_ARGB_2101010,
- MDP_RGBX_1010102,
- MDP_XRGB_2101010,
- MDP_BGRA_1010102,
- MDP_ABGR_2101010,
- MDP_BGRX_1010102,
- MDP_XBGR_2101010,
- MDP_RGBA_1010102_UBWC,
- MDP_RGBX_1010102_UBWC,
- MDP_Y_CBCR_H2V2_P010,
- MDP_Y_CBCR_H2V2_TP10_UBWC,
- MDP_CRYCBY_H2V1, /* CrYCbY interleave */
- MDP_IMGTYPE_LIMIT1 = MDP_IMGTYPE_END,
- MDP_FB_FORMAT = MDP_IMGTYPE2_START, /* framebuffer format */
- MDP_IMGTYPE_LIMIT2 /* Non valid image type after this enum */
-};
-
-#define MDP_CRYCBY_H2V1 MDP_CRYCBY_H2V1
-
-enum {
- PMEM_IMG,
- FB_IMG,
-};
-
-enum {
- HSIC_HUE = 0,
- HSIC_SAT,
- HSIC_INT,
- HSIC_CON,
- NUM_HSIC_PARAM,
-};
-
-enum mdss_mdp_max_bw_mode {
- MDSS_MAX_BW_LIMIT_DEFAULT = 0x1,
- MDSS_MAX_BW_LIMIT_CAMERA = 0x2,
- MDSS_MAX_BW_LIMIT_HFLIP = 0x4,
- MDSS_MAX_BW_LIMIT_VFLIP = 0x8,
-};
-
-#define MDSS_MDP_ROT_ONLY 0x80
-#define MDSS_MDP_RIGHT_MIXER 0x100
-#define MDSS_MDP_DUAL_PIPE 0x200
-
-/* mdp_blit_req flag values */
-#define MDP_ROT_NOP 0
-#define MDP_FLIP_LR 0x1
-#define MDP_FLIP_UD 0x2
-#define MDP_ROT_90 0x4
-#define MDP_ROT_180 (MDP_FLIP_UD|MDP_FLIP_LR)
-#define MDP_ROT_270 (MDP_ROT_90|MDP_FLIP_UD|MDP_FLIP_LR)
-#define MDP_DITHER 0x8
-#define MDP_BLUR 0x10
-#define MDP_BLEND_FG_PREMULT 0x20000
-#define MDP_IS_FG 0x40000
-#define MDP_SOLID_FILL 0x00000020
-#define MDP_VPU_PIPE 0x00000040
-#define MDP_DEINTERLACE 0x80000000
-#define MDP_SHARPENING 0x40000000
-#define MDP_NO_DMA_BARRIER_START 0x20000000
-#define MDP_NO_DMA_BARRIER_END 0x10000000
-#define MDP_NO_BLIT 0x08000000
-#define MDP_BLIT_WITH_DMA_BARRIERS 0x000
-#define MDP_BLIT_WITH_NO_DMA_BARRIERS \
- (MDP_NO_DMA_BARRIER_START | MDP_NO_DMA_BARRIER_END)
-#define MDP_BLIT_SRC_GEM 0x04000000
-#define MDP_BLIT_DST_GEM 0x02000000
-#define MDP_BLIT_NON_CACHED 0x01000000
-#define MDP_OV_PIPE_SHARE 0x00800000
-#define MDP_DEINTERLACE_ODD 0x00400000
-#define MDP_OV_PLAY_NOWAIT 0x00200000
-#define MDP_SOURCE_ROTATED_90 0x00100000
-#define MDP_OVERLAY_PP_CFG_EN 0x00080000
-#define MDP_BACKEND_COMPOSITION 0x00040000
-#define MDP_BORDERFILL_SUPPORTED 0x00010000
-#define MDP_SECURE_OVERLAY_SESSION 0x00008000
-#define MDP_SECURE_DISPLAY_OVERLAY_SESSION 0x00002000
-#define MDP_OV_PIPE_FORCE_DMA 0x00004000
-#define MDP_MEMORY_ID_TYPE_FB 0x00001000
-#define MDP_BWC_EN 0x00000400
-#define MDP_DECIMATION_EN 0x00000800
-#define MDP_SMP_FORCE_ALLOC 0x00200000
-#define MDP_TRANSP_NOP 0xffffffff
-#define MDP_ALPHA_NOP 0xff
-
-#define MDP_FB_PAGE_PROTECTION_NONCACHED (0)
-#define MDP_FB_PAGE_PROTECTION_WRITECOMBINE (1)
-#define MDP_FB_PAGE_PROTECTION_WRITETHROUGHCACHE (2)
-#define MDP_FB_PAGE_PROTECTION_WRITEBACKCACHE (3)
-#define MDP_FB_PAGE_PROTECTION_WRITEBACKWACACHE (4)
-/* Sentinel: Don't use! */
-#define MDP_FB_PAGE_PROTECTION_INVALID (5)
-/* Count of the number of MDP_FB_PAGE_PROTECTION_... values. */
-#define MDP_NUM_FB_PAGE_PROTECTION_VALUES (5)
-
-#define MDP_DEEP_COLOR_YUV444 0x1
-#define MDP_DEEP_COLOR_RGB30B 0x2
-#define MDP_DEEP_COLOR_RGB36B 0x4
-#define MDP_DEEP_COLOR_RGB48B 0x8
-
-struct mdp_rect {
- uint32_t x;
- uint32_t y;
- uint32_t w;
- uint32_t h;
-};
-
-struct mdp_img {
- uint32_t width;
- uint32_t height;
- uint32_t format;
- uint32_t offset;
- int memory_id; /* the file descriptor */
- uint32_t priv;
-};
-
-struct mult_factor {
- uint32_t numer;
- uint32_t denom;
-};
-
-/*
- * {3x3} + {3} ccs matrix
- */
-
-#define MDP_CCS_RGB2YUV 0
-#define MDP_CCS_YUV2RGB 1
-
-#define MDP_CCS_SIZE 9
-#define MDP_BV_SIZE 3
-
-struct mdp_ccs {
- int direction; /* MDP_CCS_RGB2YUV or YUV2RGB */
- uint16_t ccs[MDP_CCS_SIZE]; /* 3x3 color coefficients */
- uint16_t bv[MDP_BV_SIZE]; /* 1x3 bias vector */
-};
-
-struct mdp_csc {
- int id;
- uint32_t csc_mv[9];
- uint32_t csc_pre_bv[3];
- uint32_t csc_post_bv[3];
- uint32_t csc_pre_lv[6];
- uint32_t csc_post_lv[6];
-};
-
-/* The version of the mdp_blit_req structure so that
- * user applications can selectively decide which functionality
- * to include
- */
-
-#define MDP_BLIT_REQ_VERSION 3
-
-struct color {
- uint32_t r;
- uint32_t g;
- uint32_t b;
- uint32_t alpha;
-};
-
-struct mdp_blit_req {
- struct mdp_img src;
- struct mdp_img dst;
- struct mdp_rect src_rect;
- struct mdp_rect dst_rect;
- struct color const_color;
- uint32_t alpha;
- uint32_t transp_mask;
- uint32_t flags;
- int sharpening_strength; /* -127 <--> 127, default 64 */
- uint8_t color_space;
- uint32_t fps;
-};
-
-struct mdp_blit_req_list {
- uint32_t count;
- struct mdp_blit_req req[];
-};
-
-#define MSMFB_DATA_VERSION 2
-
-struct msmfb_data {
- uint32_t offset;
- int memory_id;
- int id;
- uint32_t flags;
- uint32_t priv;
- uint32_t iova;
-};
-
-#define MSMFB_NEW_REQUEST -1
-
-struct msmfb_overlay_data {
- uint32_t id;
- struct msmfb_data data;
- uint32_t version_key;
- struct msmfb_data plane1_data;
- struct msmfb_data plane2_data;
- struct msmfb_data dst_data;
-};
-
-struct msmfb_img {
- uint32_t width;
- uint32_t height;
- uint32_t format;
-};
-
-#define MSMFB_WRITEBACK_DEQUEUE_BLOCKING 0x1
-struct msmfb_writeback_data {
- struct msmfb_data buf_info;
- struct msmfb_img img;
-};
-
-#define MDP_PP_OPS_ENABLE 0x1
-#define MDP_PP_OPS_READ 0x2
-#define MDP_PP_OPS_WRITE 0x4
-#define MDP_PP_OPS_DISABLE 0x8
-#define MDP_PP_IGC_FLAG_ROM0 0x10
-#define MDP_PP_IGC_FLAG_ROM1 0x20
-
-
-#define MDSS_PP_DSPP_CFG 0x000
-#define MDSS_PP_SSPP_CFG 0x100
-#define MDSS_PP_LM_CFG 0x200
-#define MDSS_PP_WB_CFG 0x300
-
-#define MDSS_PP_ARG_MASK 0x3C00
-#define MDSS_PP_ARG_NUM 4
-#define MDSS_PP_ARG_SHIFT 10
-#define MDSS_PP_LOCATION_MASK 0x0300
-#define MDSS_PP_LOGICAL_MASK 0x00FF
-
-#define MDSS_PP_ADD_ARG(var, arg) ((var) | (0x1 << (MDSS_PP_ARG_SHIFT + (arg))))
-#define PP_ARG(x, var) ((var) & (0x1 << (MDSS_PP_ARG_SHIFT + (x))))
-#define PP_LOCAT(var) ((var) & MDSS_PP_LOCATION_MASK)
-#define PP_BLOCK(var) ((var) & MDSS_PP_LOGICAL_MASK)
-
-
-struct mdp_qseed_cfg {
- uint32_t table_num;
- uint32_t ops;
- uint32_t len;
- uint32_t *data;
-};
-
-struct mdp_sharp_cfg {
- uint32_t flags;
- uint32_t strength;
- uint32_t edge_thr;
- uint32_t smooth_thr;
- uint32_t noise_thr;
-};
-
-struct mdp_qseed_cfg_data {
- uint32_t block;
- struct mdp_qseed_cfg qseed_data;
-};
-
-#define MDP_OVERLAY_PP_CSC_CFG 0x1
-#define MDP_OVERLAY_PP_QSEED_CFG 0x2
-#define MDP_OVERLAY_PP_PA_CFG 0x4
-#define MDP_OVERLAY_PP_IGC_CFG 0x8
-#define MDP_OVERLAY_PP_SHARP_CFG 0x10
-#define MDP_OVERLAY_PP_HIST_CFG 0x20
-#define MDP_OVERLAY_PP_HIST_LUT_CFG 0x40
-#define MDP_OVERLAY_PP_PA_V2_CFG 0x80
-#define MDP_OVERLAY_PP_PCC_CFG 0x100
-
-#define MDP_CSC_FLAG_ENABLE 0x1
-#define MDP_CSC_FLAG_YUV_IN 0x2
-#define MDP_CSC_FLAG_YUV_OUT 0x4
-
-#define MDP_CSC_MATRIX_COEFF_SIZE 9
-#define MDP_CSC_CLAMP_SIZE 6
-#define MDP_CSC_BIAS_SIZE 3
-
-struct mdp_csc_cfg {
- /* flags for enable CSC, toggling RGB,YUV input/output */
- uint32_t flags;
- uint32_t csc_mv[MDP_CSC_MATRIX_COEFF_SIZE];
- uint32_t csc_pre_bv[MDP_CSC_BIAS_SIZE];
- uint32_t csc_post_bv[MDP_CSC_BIAS_SIZE];
- uint32_t csc_pre_lv[MDP_CSC_CLAMP_SIZE];
- uint32_t csc_post_lv[MDP_CSC_CLAMP_SIZE];
-};
-
-struct mdp_csc_cfg_data {
- uint32_t block;
- struct mdp_csc_cfg csc_data;
-};
-
-struct mdp_pa_cfg {
- uint32_t flags;
- uint32_t hue_adj;
- uint32_t sat_adj;
- uint32_t val_adj;
- uint32_t cont_adj;
-};
-
-struct mdp_pa_mem_col_cfg {
- uint32_t color_adjust_p0;
- uint32_t color_adjust_p1;
- uint32_t hue_region;
- uint32_t sat_region;
- uint32_t val_region;
-};
-
-#define MDP_SIX_ZONE_LUT_SIZE 384
-
-/* PA Write/Read extension flags */
-#define MDP_PP_PA_HUE_ENABLE 0x10
-#define MDP_PP_PA_SAT_ENABLE 0x20
-#define MDP_PP_PA_VAL_ENABLE 0x40
-#define MDP_PP_PA_CONT_ENABLE 0x80
-#define MDP_PP_PA_SIX_ZONE_ENABLE 0x100
-#define MDP_PP_PA_SKIN_ENABLE 0x200
-#define MDP_PP_PA_SKY_ENABLE 0x400
-#define MDP_PP_PA_FOL_ENABLE 0x800
-
-/* PA masks */
-/* Masks used in PA v1_7 only */
-#define MDP_PP_PA_MEM_PROT_HUE_EN 0x1
-#define MDP_PP_PA_MEM_PROT_SAT_EN 0x2
-#define MDP_PP_PA_MEM_PROT_VAL_EN 0x4
-#define MDP_PP_PA_MEM_PROT_CONT_EN 0x8
-#define MDP_PP_PA_MEM_PROT_SIX_EN 0x10
-#define MDP_PP_PA_MEM_PROT_BLEND_EN 0x20
-/* Masks used in all PAv2 versions */
-#define MDP_PP_PA_HUE_MASK 0x1000
-#define MDP_PP_PA_SAT_MASK 0x2000
-#define MDP_PP_PA_VAL_MASK 0x4000
-#define MDP_PP_PA_CONT_MASK 0x8000
-#define MDP_PP_PA_SIX_ZONE_HUE_MASK 0x10000
-#define MDP_PP_PA_SIX_ZONE_SAT_MASK 0x20000
-#define MDP_PP_PA_SIX_ZONE_VAL_MASK 0x40000
-#define MDP_PP_PA_MEM_COL_SKIN_MASK 0x80000
-#define MDP_PP_PA_MEM_COL_SKY_MASK 0x100000
-#define MDP_PP_PA_MEM_COL_FOL_MASK 0x200000
-#define MDP_PP_PA_MEM_PROTECT_EN 0x400000
-#define MDP_PP_PA_SAT_ZERO_EXP_EN 0x800000
-
-/* Flags for setting PA saturation and value hold */
-#define MDP_PP_PA_LEFT_HOLD 0x1
-#define MDP_PP_PA_RIGHT_HOLD 0x2
-
-struct mdp_pa_v2_data {
- /* Mask bits for PA features */
- uint32_t flags;
- uint32_t global_hue_adj;
- uint32_t global_sat_adj;
- uint32_t global_val_adj;
- uint32_t global_cont_adj;
- struct mdp_pa_mem_col_cfg skin_cfg;
- struct mdp_pa_mem_col_cfg sky_cfg;
- struct mdp_pa_mem_col_cfg fol_cfg;
- uint32_t six_zone_len;
- uint32_t six_zone_thresh;
- uint32_t *six_zone_curve_p0;
- uint32_t *six_zone_curve_p1;
-};
-
-struct mdp_pa_mem_col_data_v1_7 {
- uint32_t color_adjust_p0;
- uint32_t color_adjust_p1;
- uint32_t color_adjust_p2;
- uint32_t blend_gain;
- uint8_t sat_hold;
- uint8_t val_hold;
- uint32_t hue_region;
- uint32_t sat_region;
- uint32_t val_region;
-};
-
-struct mdp_pa_data_v1_7 {
- uint32_t mode;
- uint32_t global_hue_adj;
- uint32_t global_sat_adj;
- uint32_t global_val_adj;
- uint32_t global_cont_adj;
- struct mdp_pa_mem_col_data_v1_7 skin_cfg;
- struct mdp_pa_mem_col_data_v1_7 sky_cfg;
- struct mdp_pa_mem_col_data_v1_7 fol_cfg;
- uint32_t six_zone_thresh;
- uint32_t six_zone_adj_p0;
- uint32_t six_zone_adj_p1;
- uint8_t six_zone_sat_hold;
- uint8_t six_zone_val_hold;
- uint32_t six_zone_len;
- uint32_t *six_zone_curve_p0;
- uint32_t *six_zone_curve_p1;
-};
-
-
-struct mdp_pa_v2_cfg_data {
- uint32_t version;
- uint32_t block;
- uint32_t flags;
- struct mdp_pa_v2_data pa_v2_data;
- void *cfg_payload;
-};
-
-
-enum {
- mdp_igc_rec601 = 1,
- mdp_igc_rec709,
- mdp_igc_srgb,
- mdp_igc_custom,
- mdp_igc_rec_max,
-};
-
-struct mdp_igc_lut_data {
- uint32_t block;
- uint32_t version;
- uint32_t len, ops;
- uint32_t *c0_c1_data;
- uint32_t *c2_data;
- void *cfg_payload;
-};
-
-struct mdp_igc_lut_data_v1_7 {
- uint32_t table_fmt;
- uint32_t len;
- uint32_t *c0_c1_data;
- uint32_t *c2_data;
-};
-
-struct mdp_igc_lut_data_payload {
- uint32_t table_fmt;
- uint32_t len;
- uint64_t c0_c1_data;
- uint64_t c2_data;
- uint32_t strength;
-};
-
-struct mdp_histogram_cfg {
- uint32_t ops;
- uint32_t block;
- uint8_t frame_cnt;
- uint8_t bit_mask;
- uint16_t num_bins;
-};
-
-struct mdp_hist_lut_data_v1_7 {
- uint32_t len;
- uint32_t *data;
-};
-
-struct mdp_hist_lut_data {
- uint32_t block;
- uint32_t version;
- uint32_t hist_lut_first;
- uint32_t ops;
- uint32_t len;
- uint32_t *data;
- void *cfg_payload;
-};
-
-struct mdp_pcc_coeff {
- uint32_t c, r, g, b, rr, gg, bb, rg, gb, rb, rgb_0, rgb_1;
-};
-
-struct mdp_pcc_coeff_v1_7 {
- uint32_t c, r, g, b, rg, gb, rb, rgb;
-};
-
-struct mdp_pcc_data_v1_7 {
- struct mdp_pcc_coeff_v1_7 r, g, b;
-};
-
-struct mdp_pcc_cfg_data {
- uint32_t version;
- uint32_t block;
- uint32_t ops;
- struct mdp_pcc_coeff r, g, b;
- void *cfg_payload;
-};
-
-enum {
- mdp_lut_igc,
- mdp_lut_pgc,
- mdp_lut_hist,
- mdp_lut_rgb,
- mdp_lut_max,
-};
-struct mdp_overlay_pp_params {
- uint32_t config_ops;
- struct mdp_csc_cfg csc_cfg;
- struct mdp_qseed_cfg qseed_cfg[2];
- struct mdp_pa_cfg pa_cfg;
- struct mdp_pa_v2_data pa_v2_cfg;
- struct mdp_igc_lut_data igc_cfg;
- struct mdp_sharp_cfg sharp_cfg;
- struct mdp_histogram_cfg hist_cfg;
- struct mdp_hist_lut_data hist_lut_cfg;
- /* PAv2 cfg data for PA 2.x versions */
- struct mdp_pa_v2_cfg_data pa_v2_cfg_data;
- struct mdp_pcc_cfg_data pcc_cfg_data;
-};
-
-/**
- * enum mdss_mdp_blend_op - Different blend operations set by userspace
- *
- * @BLEND_OP_NOT_DEFINED: No blend operation defined for the layer.
- * @BLEND_OP_OPAQUE: Apply a constant blend operation. The layer
- * would appear opaque in case fg plane alpha is
- * 0xff.
- * @BLEND_OP_PREMULTIPLIED: Apply source over blend rule. Layer already has
- * alpha pre-multiplication done. If fg plane alpha
- * is less than 0xff, apply modulation as well. This
- * operation is intended on layers having alpha
- * channel.
- * @BLEND_OP_COVERAGE: Apply source over blend rule. Layer is not alpha
- * pre-multiplied. Apply pre-multiplication. If fg
- * plane alpha is less than 0xff, apply modulation as
- * well.
- * @BLEND_OP_MAX: Used to track maximum blend operation possible by
- * mdp.
- */
-enum mdss_mdp_blend_op {
- BLEND_OP_NOT_DEFINED = 0,
- BLEND_OP_OPAQUE,
- BLEND_OP_PREMULTIPLIED,
- BLEND_OP_COVERAGE,
- BLEND_OP_MAX,
-};
-
-#define DECIMATED_DIMENSION(dim, deci) (((dim) + ((1 << (deci)) - 1)) >> (deci))
-#define MAX_PLANES 4
-struct mdp_scale_data {
- uint8_t enable_pxl_ext;
-
- int init_phase_x[MAX_PLANES];
- int phase_step_x[MAX_PLANES];
- int init_phase_y[MAX_PLANES];
- int phase_step_y[MAX_PLANES];
-
- int num_ext_pxls_left[MAX_PLANES];
- int num_ext_pxls_right[MAX_PLANES];
- int num_ext_pxls_top[MAX_PLANES];
- int num_ext_pxls_btm[MAX_PLANES];
-
- int left_ftch[MAX_PLANES];
- int left_rpt[MAX_PLANES];
- int right_ftch[MAX_PLANES];
- int right_rpt[MAX_PLANES];
-
- int top_rpt[MAX_PLANES];
- int btm_rpt[MAX_PLANES];
- int top_ftch[MAX_PLANES];
- int btm_ftch[MAX_PLANES];
-
- uint32_t roi_w[MAX_PLANES];
-};
-
-/**
- * enum mdp_overlay_pipe_type - Different pipe type set by userspace
- *
- * @PIPE_TYPE_AUTO: Not specified, pipe will be selected according to flags.
- * @PIPE_TYPE_VIG: VIG pipe.
- * @PIPE_TYPE_RGB: RGB pipe.
- * @PIPE_TYPE_DMA: DMA pipe.
- * @PIPE_TYPE_CURSOR: CURSOR pipe.
- * @PIPE_TYPE_MAX: Used to track maximum number of pipe type.
- */
-enum mdp_overlay_pipe_type {
- PIPE_TYPE_AUTO = 0,
- PIPE_TYPE_VIG,
- PIPE_TYPE_RGB,
- PIPE_TYPE_DMA,
- PIPE_TYPE_CURSOR,
- PIPE_TYPE_MAX,
-};
-
-/**
- * struct mdp_overlay - overlay surface structure
- * @src: Source image information (width, height, format).
- * @src_rect: Source crop rectangle, portion of image that will be fetched.
- * This should always be within boundaries of source image.
- * @dst_rect: Destination rectangle, the position and size of image on screen.
- * This should always be within panel boundaries.
- * @z_order: 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-3 to support blending
- * up to 4 layers.
- * @is_fg: This flag is used to disable blending of any layers with z_order
- * less than this overlay. It means that any layers with z_order
- * less than this layer will not be blended and will be replaced
- * by the background border color.
- * @alpha: Used to set plane opacity. The range can be from 0-255, where
- * 0 means completely transparent and 255 means fully opaque.
- * @transp_mask: 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.
- * @flags: This is used to customize operation of overlay. See MDP flags
- * for more information.
- * @pipe_type: Used to specify the type of overlay pipe.
- * @user_data: DEPRECATED* Used to store user application specific information.
- * @bg_color: Solid color used to fill the overlay surface when no source
- * buffer is provided.
- * @horz_deci: Horizontal decimation value, this indicates the amount of pixels
- * dropped for each pixel that is fetched from a line. The 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)
- * @vert_deci: Vertical decimation value, this indicates the amount of lines
- * dropped for each line that is fetched from overlay. The 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)
- * @overlay_pp_cfg: Overlay post processing configuration, for more information
- * see struct mdp_overlay_pp_params.
- * @priority: Priority is returned by the driver when overlay is set for the
- * first time. It indicates the priority of the underlying pipe
- * serving the overlay. This priority can be used by user-space
- * in source split when pipes are re-used and shuffled around to
- * reduce fallbacks.
- */
-struct mdp_overlay {
- struct msmfb_img src;
- struct mdp_rect src_rect;
- struct mdp_rect dst_rect;
- uint32_t z_order; /* stage number */
- uint32_t is_fg; /* control alpha & transp */
- uint32_t alpha;
- uint32_t blend_op;
- uint32_t transp_mask;
- uint32_t flags;
- uint32_t pipe_type;
- uint32_t id;
- uint8_t priority;
- uint32_t user_data[6];
- uint32_t bg_color;
- uint8_t horz_deci;
- uint8_t vert_deci;
- struct mdp_overlay_pp_params overlay_pp_cfg;
- struct mdp_scale_data scale;
- uint8_t color_space;
- uint32_t frame_rate;
-};
-
-struct msmfb_overlay_3d {
- uint32_t is_3d;
- uint32_t width;
- uint32_t height;
-};
-
-
-struct msmfb_overlay_blt {
- uint32_t enable;
- uint32_t offset;
- uint32_t width;
- uint32_t height;
- uint32_t bpp;
-};
-
-struct mdp_histogram {
- uint32_t frame_cnt;
- uint32_t bin_cnt;
- uint32_t *r;
- uint32_t *g;
- uint32_t *b;
-};
-
-#define MISR_CRC_BATCH_SIZE 32
-enum {
- DISPLAY_MISR_EDP,
- DISPLAY_MISR_DSI0,
- DISPLAY_MISR_DSI1,
- DISPLAY_MISR_HDMI,
- DISPLAY_MISR_LCDC,
- DISPLAY_MISR_MDP,
- DISPLAY_MISR_ATV,
- DISPLAY_MISR_DSI_CMD,
- DISPLAY_MISR_MAX
-};
-
-enum {
- MISR_OP_NONE,
- MISR_OP_SFM,
- MISR_OP_MFM,
- MISR_OP_BM,
- MISR_OP_MAX
-};
-
-struct mdp_misr {
- uint32_t block_id;
- uint32_t frame_count;
- uint32_t crc_op_mode;
- uint32_t crc_value[MISR_CRC_BATCH_SIZE];
-};
-
-/*
- * mdp_block_type defines the identifiers for pipes in MDP 4.3 and up
- *
- * MDP_BLOCK_RESERVED is provided for backward compatibility and is
- * deprecated. It corresponds to DMA_P. So MDP_BLOCK_DMA_P should be used
- * instead.
- *
- * MDP_LOGICAL_BLOCK_DISP_0 identifies the display pipe which fb0 uses,
- * same for others.
- */
-
-enum {
- MDP_BLOCK_RESERVED = 0,
- MDP_BLOCK_OVERLAY_0,
- MDP_BLOCK_OVERLAY_1,
- MDP_BLOCK_VG_1,
- MDP_BLOCK_VG_2,
- MDP_BLOCK_RGB_1,
- MDP_BLOCK_RGB_2,
- MDP_BLOCK_DMA_P,
- MDP_BLOCK_DMA_S,
- MDP_BLOCK_DMA_E,
- MDP_BLOCK_OVERLAY_2,
- MDP_LOGICAL_BLOCK_DISP_0 = 0x10,
- MDP_LOGICAL_BLOCK_DISP_1,
- MDP_LOGICAL_BLOCK_DISP_2,
- MDP_BLOCK_MAX,
-};
-
-/*
- * mdp_histogram_start_req is used to provide the parameters for
- * histogram start request
- */
-
-struct mdp_histogram_start_req {
- uint32_t block;
- uint8_t frame_cnt;
- uint8_t bit_mask;
- uint16_t num_bins;
-};
-
-/*
- * mdp_histogram_data is used to return the histogram data, once
- * the histogram is done/stopped/cance
- */
-
-struct mdp_histogram_data {
- uint32_t block;
- uint32_t bin_cnt;
- uint32_t *c0;
- uint32_t *c1;
- uint32_t *c2;
- uint32_t *extra_info;
-};
-
-
-#define GC_LUT_ENTRIES_V1_7 512
-
-struct mdp_ar_gc_lut_data {
- uint32_t x_start;
- uint32_t slope;
- uint32_t offset;
-};
-
-#define MDP_PP_PGC_ROUNDING_ENABLE 0x10
-struct mdp_pgc_lut_data {
- uint32_t version;
- uint32_t block;
- uint32_t flags;
- uint8_t num_r_stages;
- uint8_t num_g_stages;
- uint8_t num_b_stages;
- struct mdp_ar_gc_lut_data *r_data;
- struct mdp_ar_gc_lut_data *g_data;
- struct mdp_ar_gc_lut_data *b_data;
- void *cfg_payload;
-};
-
-#define PGC_LUT_ENTRIES 1024
-struct mdp_pgc_lut_data_v1_7 {
- uint32_t len;
- uint32_t *c0_data;
- uint32_t *c1_data;
- uint32_t *c2_data;
-};
-
-/*
- * mdp_rgb_lut_data is used to provide parameters for configuring the
- * generic RGB lut in case of gamma correction or other LUT updation usecases
- */
-struct mdp_rgb_lut_data {
- uint32_t flags;
- uint32_t lut_type;
- struct fb_cmap cmap;
-};
-
-enum {
- mdp_rgb_lut_gc,
- mdp_rgb_lut_hist,
-};
-
-struct mdp_lut_cfg_data {
- uint32_t lut_type;
- union {
- struct mdp_igc_lut_data igc_lut_data;
- struct mdp_pgc_lut_data pgc_lut_data;
- struct mdp_hist_lut_data hist_lut_data;
- struct mdp_rgb_lut_data rgb_lut_data;
- } data;
-};
-
-struct mdp_bl_scale_data {
- uint32_t min_lvl;
- uint32_t scale;
-};
-
-struct mdp_pa_cfg_data {
- uint32_t block;
- struct mdp_pa_cfg pa_data;
-};
-
-#define MDP_DITHER_DATA_V1_7_SZ 16
-
-struct mdp_dither_data_v1_7 {
- uint32_t g_y_depth;
- uint32_t r_cr_depth;
- uint32_t b_cb_depth;
- uint32_t len;
- uint32_t data[MDP_DITHER_DATA_V1_7_SZ];
- uint32_t temporal_en;
-};
-
-struct mdp_pa_dither_data {
- uint64_t data_flags;
- uint32_t matrix_sz;
- uint64_t matrix_data;
- uint32_t strength;
- uint32_t offset_en;
-};
-
-struct mdp_dither_cfg_data {
- uint32_t version;
- uint32_t block;
- uint32_t flags;
- uint32_t mode;
- uint32_t g_y_depth;
- uint32_t r_cr_depth;
- uint32_t b_cb_depth;
- void *cfg_payload;
-};
-
-#define MDP_GAMUT_TABLE_NUM 8
-#define MDP_GAMUT_TABLE_NUM_V1_7 4
-#define MDP_GAMUT_SCALE_OFF_TABLE_NUM 3
-#define MDP_GAMUT_TABLE_V1_7_SZ 1229
-#define MDP_GAMUT_SCALE_OFF_SZ 16
-#define MDP_GAMUT_TABLE_V1_7_COARSE_SZ 32
-
-struct mdp_gamut_cfg_data {
- uint32_t block;
- uint32_t flags;
- uint32_t version;
- /* v1 version specific params */
- uint32_t gamut_first;
- uint32_t tbl_size[MDP_GAMUT_TABLE_NUM];
- uint16_t *r_tbl[MDP_GAMUT_TABLE_NUM];
- uint16_t *g_tbl[MDP_GAMUT_TABLE_NUM];
- uint16_t *b_tbl[MDP_GAMUT_TABLE_NUM];
- /* params for newer versions of gamut */
- void *cfg_payload;
-};
-
-enum {
- mdp_gamut_fine_mode = 0x1,
- mdp_gamut_coarse_mode,
-};
-
-struct mdp_gamut_data_v1_7 {
- uint32_t mode;
- uint32_t map_en;
- uint32_t tbl_size[MDP_GAMUT_TABLE_NUM_V1_7];
- uint32_t *c0_data[MDP_GAMUT_TABLE_NUM_V1_7];
- uint32_t *c1_c2_data[MDP_GAMUT_TABLE_NUM_V1_7];
- uint32_t tbl_scale_off_sz[MDP_GAMUT_SCALE_OFF_TABLE_NUM];
- uint32_t *scale_off_data[MDP_GAMUT_SCALE_OFF_TABLE_NUM];
-};
-
-struct mdp_calib_config_data {
- uint32_t ops;
- uint32_t addr;
- uint32_t data;
-};
-
-struct mdp_calib_config_buffer {
- uint32_t ops;
- uint32_t size;
- uint32_t *buffer;
-};
-
-struct mdp_calib_dcm_state {
- uint32_t ops;
- uint32_t dcm_state;
-};
-
-enum {
- DCM_UNINIT,
- DCM_UNBLANK,
- DCM_ENTER,
- DCM_EXIT,
- DCM_BLANK,
- DTM_ENTER,
- DTM_EXIT,
-};
-
-#define MDSS_PP_SPLIT_LEFT_ONLY 0x10000000
-#define MDSS_PP_SPLIT_RIGHT_ONLY 0x20000000
-#define MDSS_PP_SPLIT_MASK 0x30000000
-
-#define MDSS_MAX_BL_BRIGHTNESS 255
-#define AD_BL_LIN_LEN 256
-#define AD_BL_ATT_LUT_LEN 33
-
-#define MDSS_AD_MODE_AUTO_BL 0x0
-#define MDSS_AD_MODE_AUTO_STR 0x1
-#define MDSS_AD_MODE_TARG_STR 0x3
-#define MDSS_AD_MODE_MAN_STR 0x7
-#define MDSS_AD_MODE_CALIB 0xF
-
-#define MDP_PP_AD_INIT 0x10
-#define MDP_PP_AD_CFG 0x20
-
-struct mdss_ad_init {
- uint32_t asym_lut[33];
- uint32_t color_corr_lut[33];
- uint8_t i_control[2];
- uint16_t black_lvl;
- uint16_t white_lvl;
- uint8_t var;
- uint8_t limit_ampl;
- uint8_t i_dither;
- uint8_t slope_max;
- uint8_t slope_min;
- uint8_t dither_ctl;
- uint8_t format;
- uint8_t auto_size;
- uint16_t frame_w;
- uint16_t frame_h;
- uint8_t logo_v;
- uint8_t logo_h;
- uint32_t alpha;
- uint32_t alpha_base;
- uint32_t al_thresh;
- uint32_t bl_lin_len;
- uint32_t bl_att_len;
- uint32_t *bl_lin;
- uint32_t *bl_lin_inv;
- uint32_t *bl_att_lut;
-};
-
-#define MDSS_AD_BL_CTRL_MODE_EN 1
-#define MDSS_AD_BL_CTRL_MODE_DIS 0
-struct mdss_ad_cfg {
- uint32_t mode;
- uint32_t al_calib_lut[33];
- uint16_t backlight_min;
- uint16_t backlight_max;
- uint16_t backlight_scale;
- uint16_t amb_light_min;
- uint16_t filter[2];
- uint16_t calib[4];
- uint8_t strength_limit;
- uint8_t t_filter_recursion;
- uint16_t stab_itr;
- uint32_t bl_ctrl_mode;
-};
-
-struct mdss_ad_bl_cfg {
- uint32_t bl_min_delta;
- uint32_t bl_low_limit;
-};
-
-/* ops uses standard MDP_PP_* flags */
-struct mdss_ad_init_cfg {
- uint32_t ops;
- union {
- struct mdss_ad_init init;
- struct mdss_ad_cfg cfg;
- } params;
-};
-
-/* mode uses MDSS_AD_MODE_* flags */
-struct mdss_ad_input {
- uint32_t mode;
- union {
- uint32_t amb_light;
- uint32_t strength;
- uint32_t calib_bl;
- } in;
- uint32_t output;
-};
-
-#define MDSS_CALIB_MODE_BL 0x1
-struct mdss_calib_cfg {
- uint32_t ops;
- uint32_t calib_mask;
-};
-
-enum {
- mdp_op_pcc_cfg,
- mdp_op_csc_cfg,
- mdp_op_lut_cfg,
- mdp_op_qseed_cfg,
- mdp_bl_scale_cfg,
- mdp_op_pa_cfg,
- mdp_op_pa_v2_cfg,
- mdp_op_dither_cfg,
- mdp_op_gamut_cfg,
- mdp_op_calib_cfg,
- mdp_op_ad_cfg,
- mdp_op_ad_input,
- mdp_op_calib_mode,
- mdp_op_calib_buffer,
- mdp_op_calib_dcm_state,
- mdp_op_max,
- mdp_op_pa_dither_cfg,
- mdp_op_ad_bl_cfg,
- mdp_op_pp_max = 255,
-};
-#define mdp_op_pa_dither_cfg mdp_op_pa_dither_cfg
-#define mdp_op_pp_max mdp_op_pp_max
-
-#define mdp_op_ad_bl_cfg mdp_op_ad_bl_cfg
-
-enum {
- WB_FORMAT_NV12,
- WB_FORMAT_RGB_565,
- WB_FORMAT_RGB_888,
- WB_FORMAT_xRGB_8888,
- WB_FORMAT_ARGB_8888,
- WB_FORMAT_BGRA_8888,
- WB_FORMAT_BGRX_8888,
- WB_FORMAT_ARGB_8888_INPUT_ALPHA /* Need to support */
-};
-
-struct msmfb_mdp_pp {
- uint32_t op;
- union {
- struct mdp_pcc_cfg_data pcc_cfg_data;
- struct mdp_csc_cfg_data csc_cfg_data;
- struct mdp_lut_cfg_data lut_cfg_data;
- struct mdp_qseed_cfg_data qseed_cfg_data;
- struct mdp_bl_scale_data bl_scale_data;
- struct mdp_pa_cfg_data pa_cfg_data;
- struct mdp_pa_v2_cfg_data pa_v2_cfg_data;
- struct mdp_dither_cfg_data dither_cfg_data;
- struct mdp_gamut_cfg_data gamut_cfg_data;
- struct mdp_calib_config_data calib_cfg;
- struct mdss_ad_init_cfg ad_init_cfg;
- struct mdss_calib_cfg mdss_calib_cfg;
- struct mdss_ad_input ad_input;
- struct mdp_calib_config_buffer calib_buffer;
- struct mdp_calib_dcm_state calib_dcm;
- struct mdss_ad_bl_cfg ad_bl_cfg;
- } data;
-};
-
-#define FB_METADATA_VIDEO_INFO_CODE_SUPPORT 1
-enum {
- metadata_op_none,
- metadata_op_base_blend,
- metadata_op_frame_rate,
- metadata_op_vic,
- metadata_op_wb_format,
- metadata_op_wb_secure,
- metadata_op_get_caps,
- metadata_op_crc,
- metadata_op_get_ion_fd,
- metadata_op_max
-};
-
-struct mdp_blend_cfg {
- uint32_t is_premultiplied;
-};
-
-struct mdp_mixer_cfg {
- uint32_t writeback_format;
- uint32_t alpha;
-};
-
-struct mdss_hw_caps {
- uint32_t mdp_rev;
- uint8_t rgb_pipes;
- uint8_t vig_pipes;
- uint8_t dma_pipes;
- uint8_t max_smp_cnt;
- uint8_t smp_per_pipe;
- uint32_t features;
-};
-
-struct msmfb_metadata {
- uint32_t op;
- uint32_t flags;
- union {
- struct mdp_misr misr_request;
- struct mdp_blend_cfg blend_cfg;
- struct mdp_mixer_cfg mixer_cfg;
- uint32_t panel_frame_rate;
- uint32_t video_info_code;
- struct mdss_hw_caps caps;
- uint8_t secure_en;
- int fbmem_ionfd;
- } data;
-};
-
-#define MDP_MAX_FENCE_FD 32
-#define MDP_BUF_SYNC_FLAG_WAIT 1
-#define MDP_BUF_SYNC_FLAG_RETIRE_FENCE 0x10
-
-struct mdp_buf_sync {
- uint32_t flags;
- uint32_t acq_fen_fd_cnt;
- uint32_t session_id;
- int *acq_fen_fd;
- int *rel_fen_fd;
- int *retire_fen_fd;
-};
-
-struct mdp_async_blit_req_list {
- struct mdp_buf_sync sync;
- uint32_t count;
- struct mdp_blit_req req[];
-};
-
-#define MDP_DISPLAY_COMMIT_OVERLAY 1
-
-struct mdp_display_commit {
- uint32_t flags;
- uint32_t wait_for_finish;
- struct fb_var_screeninfo var;
- /*
- * user needs to follow guidelines as per below rules
- * 1. source split is enabled: l_roi = roi and r_roi = 0
- * 2. source split is disabled:
- * 2.1 split display: l_roi = l_roi and r_roi = r_roi
- * 2.2 non split display: l_roi = roi and r_roi = 0
- */
- struct mdp_rect l_roi;
- struct mdp_rect r_roi;
-};
-
-/**
- * struct mdp_overlay_list - argument for ioctl MSMFB_OVERLAY_PREPARE
- * @num_overlays: Number of overlay layers as part of the frame.
- * @overlay_list: Pointer to a list of overlay structures identifying
- * the layers as part of the frame
- * @flags: Flags can be used to extend behavior.
- * @processed_overlays: Output parameter indicating how many pipes were
- * successful. If there are no errors this number should
- * match num_overlays. Otherwise it will indicate the last
- * successful index for overlay that couldn't be set.
- */
-struct mdp_overlay_list {
- uint32_t num_overlays;
- struct mdp_overlay **overlay_list;
- uint32_t flags;
- uint32_t processed_overlays;
-};
-
-struct mdp_page_protection {
- uint32_t page_protection;
-};
-
-
-struct mdp_mixer_info {
- int pndx;
- int pnum;
- int ptype;
- int mixer_num;
- int z_order;
-};
-
-#define MAX_PIPE_PER_MIXER 7
-
-struct msmfb_mixer_info_req {
- int mixer_num;
- int cnt;
- struct mdp_mixer_info info[MAX_PIPE_PER_MIXER];
-};
-
-enum {
- DISPLAY_SUBSYSTEM_ID,
- ROTATOR_SUBSYSTEM_ID,
-};
-
-enum {
- MDP_IOMMU_DOMAIN_CP,
- MDP_IOMMU_DOMAIN_NS,
-};
-
-enum {
- MDP_WRITEBACK_MIRROR_OFF,
- MDP_WRITEBACK_MIRROR_ON,
- MDP_WRITEBACK_MIRROR_PAUSE,
- MDP_WRITEBACK_MIRROR_RESUME,
-};
-
-enum mdp_color_space {
- MDP_CSC_ITU_R_601,
- MDP_CSC_ITU_R_601_FR,
- MDP_CSC_ITU_R_709,
-};
-
-/*
- * These definitions are a continuation of the mdp_color_space enum above
- */
-#define MDP_CSC_ITU_R_2020 (MDP_CSC_ITU_R_709 + 1)
-#define MDP_CSC_ITU_R_2020_FR (MDP_CSC_ITU_R_2020 + 1)
-enum {
- mdp_igc_v1_7 = 1,
- mdp_igc_vmax,
- mdp_hist_lut_v1_7,
- mdp_hist_lut_vmax,
- mdp_pgc_v1_7,
- mdp_pgc_vmax,
- mdp_dither_v1_7,
- mdp_dither_vmax,
- mdp_gamut_v1_7,
- mdp_gamut_vmax,
- mdp_pa_v1_7,
- mdp_pa_vmax,
- mdp_pcc_v1_7,
- mdp_pcc_vmax,
- mdp_pp_legacy,
- mdp_dither_pa_v1_7,
- mdp_igc_v3,
- mdp_pp_unknown = 255
-};
-
-#define mdp_dither_pa_v1_7 mdp_dither_pa_v1_7
-#define mdp_pp_unknown mdp_pp_unknown
-#define mdp_igc_v3 mdp_igc_v3
-
-/* PP Features */
-enum {
- IGC = 1,
- PCC,
- GC,
- PA,
- GAMUT,
- DITHER,
- QSEED,
- HIST_LUT,
- HIST,
- PP_FEATURE_MAX,
- PA_DITHER,
- PP_MAX_FEATURES = 25,
-};
-
-#define PA_DITHER PA_DITHER
-#define PP_MAX_FEATURES PP_MAX_FEATURES
-
-struct mdp_pp_feature_version {
- uint32_t pp_feature;
- uint32_t version_info;
-};
-#endif /* _MSM_MDP_H_*/
diff --git a/sdm710/original-kernel-headers/linux/msm_mdp_ext.h b/sdm710/original-kernel-headers/linux/msm_mdp_ext.h
deleted file mode 100644
index 571d5944..00000000
--- a/sdm710/original-kernel-headers/linux/msm_mdp_ext.h
+++ /dev/null
@@ -1,706 +0,0 @@
-#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 2
-#else
-#define MDP_LAYER_COMMIT_V1_PAD 3
-#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 AVR(Adaptive variable refresh) feature. */
-#define MDP_COMMIT_AVR_EN 0x08
-
-/*
- * Flag to select one shot mode when AVR feature is enabled.
- * Default mode is continuous mode.
- */
-#define MDP_COMMIT_AVR_ONE_SHOT_MODE 0x10
-
-/* 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;
-
- /* color space of the destination */
- enum mdp_color_space color_space;
-
- /* 32bits reserved value for future usage. */
- uint32_t reserved[5];
-};
-
-/*
- * 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;
-};
-
-/* Enable Deterministic Frame Rate Control (FRC) */
-#define MDP_VIDEO_FRC_ENABLE (1 << 0)
-
-struct mdp_frc_info {
- /* flags to control FRC feature */
- uint32_t flags;
- /* video frame count per frame */
- uint32_t frame_cnt;
- /* video timestamp per frame in millisecond unit */
- int64_t timestamp;
-};
-
-/*
- * 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;
-
- /* FRC info per device which contains frame count and timestamp */
- struct mdp_frc_info *frc_info;
-
- /* 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
diff --git a/sdm710/original-kernel-headers/linux/msm_pft.h b/sdm710/original-kernel-headers/linux/msm_pft.h
deleted file mode 100644
index 1127337e..00000000
--- a/sdm710/original-kernel-headers/linux/msm_pft.h
+++ /dev/null
@@ -1,134 +0,0 @@
-/* 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_ */
diff --git a/sdm710/original-kernel-headers/linux/msm_rmnet.h b/sdm710/original-kernel-headers/linux/msm_rmnet.h
deleted file mode 100644
index 5b933286..00000000
--- a/sdm710/original-kernel-headers/linux/msm_rmnet.h
+++ /dev/null
@@ -1,152 +0,0 @@
-#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 commands
- * Values chosen to not conflict with other drivers in the ecosystem
- */
-
-#define RMNET_IOCTL_SET_LLP_ETHERNET 0x000089F1 /* Set Ethernet protocol */
-#define RMNET_IOCTL_SET_LLP_IP 0x000089F2 /* Set RAWIP protocol */
-#define RMNET_IOCTL_GET_LLP 0x000089F3 /* Get link protocol */
-#define RMNET_IOCTL_SET_QOS_ENABLE 0x000089F4 /* Set QoS header enabled */
-#define RMNET_IOCTL_SET_QOS_DISABLE 0x000089F5 /* Set QoS header disabled*/
-#define RMNET_IOCTL_GET_QOS 0x000089F6 /* Get QoS header state */
-#define RMNET_IOCTL_GET_OPMODE 0x000089F7 /* Get operation mode */
-#define RMNET_IOCTL_OPEN 0x000089F8 /* Open transport port */
-#define RMNET_IOCTL_CLOSE 0x000089F9 /* Close transport port */
-#define RMNET_IOCTL_FLOW_ENABLE 0x000089FA /* Flow enable */
-#define RMNET_IOCTL_FLOW_DISABLE 0x000089FB /* Flow disable */
-#define RMNET_IOCTL_FLOW_SET_HNDL 0x000089FC /* Set flow handle */
-#define RMNET_IOCTL_EXTENDED 0x000089FD /* Extended IOCTLs */
-
-/* RmNet Data Required IOCTLs */
-#define RMNET_IOCTL_GET_SUPPORTED_FEATURES 0x0000 /* Get features */
-#define RMNET_IOCTL_SET_MRU 0x0001 /* Set MRU */
-#define RMNET_IOCTL_GET_MRU 0x0002 /* Get MRU */
-#define RMNET_IOCTL_GET_EPID 0x0003 /* Get endpoint ID */
-#define RMNET_IOCTL_GET_DRIVER_NAME 0x0004 /* Get driver name */
-#define RMNET_IOCTL_ADD_MUX_CHANNEL 0x0005 /* Add MUX ID */
-#define RMNET_IOCTL_SET_EGRESS_DATA_FORMAT 0x0006 /* Set EDF */
-#define RMNET_IOCTL_SET_INGRESS_DATA_FORMAT 0x0007 /* Set IDF */
-#define RMNET_IOCTL_SET_AGGREGATION_COUNT 0x0008 /* Set agg count */
-#define RMNET_IOCTL_GET_AGGREGATION_COUNT 0x0009 /* Get agg count */
-#define RMNET_IOCTL_SET_AGGREGATION_SIZE 0x000A /* Set agg size */
-#define RMNET_IOCTL_GET_AGGREGATION_SIZE 0x000B /* Get agg size */
-#define RMNET_IOCTL_FLOW_CONTROL 0x000C /* Do flow control */
-#define RMNET_IOCTL_GET_DFLT_CONTROL_CHANNEL 0x000D /* For legacy use */
-#define RMNET_IOCTL_GET_HWSW_MAP 0x000E /* Get HW/SW map */
-#define RMNET_IOCTL_SET_RX_HEADROOM 0x000F /* RX Headroom */
-#define RMNET_IOCTL_GET_EP_PAIR 0x0010 /* Endpoint pair */
-#define RMNET_IOCTL_SET_QOS_VERSION 0x0011 /* 8/6 byte QoS hdr*/
-#define RMNET_IOCTL_GET_QOS_VERSION 0x0012 /* 8/6 byte QoS hdr*/
-#define RMNET_IOCTL_GET_SUPPORTED_QOS_MODES 0x0013 /* Get QoS modes */
-#define RMNET_IOCTL_SET_SLEEP_STATE 0x0014 /* Set sleep state */
-#define RMNET_IOCTL_SET_XLAT_DEV_INFO 0x0015 /* xlat dev name */
-#define RMNET_IOCTL_DEREGISTER_DEV 0x0016 /* Dereg a net dev */
-#define RMNET_IOCTL_GET_SG_SUPPORT 0x0017 /* Query sg support*/
-
-/* 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 */
-struct QMI_QOS_HDR_S {
- unsigned char version;
- unsigned char flags;
- uint32_t flow_id;
-} __attribute((__packed__));
-
-/* 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_ */
diff --git a/sdm710/original-kernel-headers/linux/msm_rotator.h b/sdm710/original-kernel-headers/linux/msm_rotator.h
deleted file mode 100644
index 6beb6293..00000000
--- a/sdm710/original-kernel-headers/linux/msm_rotator.h
+++ /dev/null
@@ -1,60 +0,0 @@
-#ifndef __MSM_ROTATOR_H__
-#define __MSM_ROTATOR_H__
-
-#include <linux/types.h>
-#include <linux/msm_mdp.h>
-
-#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)
-
-#define ROTATOR_VERSION_01 0xA5B4C301
-
-enum rotator_clk_type {
- ROTATOR_CORE_CLK,
- ROTATOR_PCLK,
- ROTATOR_IMEM_CLK
-};
-
-struct msm_rotator_img_info {
- unsigned int session_id;
- struct msmfb_img src;
- struct msmfb_img dst;
- struct mdp_rect src_rect;
- unsigned int dst_x;
- unsigned int dst_y;
- unsigned char rotations;
- int enable;
- unsigned int downscale_ratio;
- unsigned int secure;
-};
-
-struct msm_rotator_data_info {
- int session_id;
- struct msmfb_data src;
- struct msmfb_data dst;
- unsigned int version_key;
- struct msmfb_data src_chroma;
- struct msmfb_data dst_chroma;
-};
-
-struct msm_rot_clocks {
- const char *clk_name;
- enum rotator_clk_type clk_type;
- unsigned int clk_rate;
-};
-
-struct msm_rotator_platform_data {
- unsigned int number_of_clocks;
- unsigned int hardware_version_number;
- struct msm_rot_clocks *rotator_clks;
- struct msm_bus_scale_pdata *bus_scale_table;
- char rot_iommu_split_domain;
-};
-#endif
-
diff --git a/sdm710/original-kernel-headers/linux/msm_thermal_ioctl.h b/sdm710/original-kernel-headers/linux/msm_thermal_ioctl.h
deleted file mode 100644
index 18caab69..00000000
--- a/sdm710/original-kernel-headers/linux/msm_thermal_ioctl.h
+++ /dev/null
@@ -1,92 +0,0 @@
-#ifndef _MSM_THERMAL_IOCTL_H
-#define _MSM_THERMAL_IOCTL_H
-
-#include <linux/ioctl.h>
-
-#define MSM_THERMAL_IOCTL_NAME "msm_thermal_query"
-#define MSM_IOCTL_FREQ_SIZE 16
-
-struct __attribute__((__packed__)) cpu_freq_arg {
- uint32_t cpu_num;
- uint32_t freq_req;
-};
-
-struct __attribute__((__packed__)) clock_plan_arg {
- uint32_t cluster_num;
- /*
- ** A value of zero for freq_table_len, will fetch the length of the
- ** cluster frequency table. A non-zero value will fetch the frequency
- ** table contents.
- */
- uint32_t freq_table_len;
- /*
- ** For clusters with frequency table length greater than
- ** MSM_IOCTL_FREQ_SIZE, the frequency table is fetched from kernel
- ** in multiple sets or iterations. The set_idx variable,
- ** indicates, which set/part of frequency table the user is requesting.
- ** The set index value starts from zero. A set index value of 'Z',
- ** will fetch MSM_IOCTL_FREQ_SIZE or maximum available number of
- ** frequency values (if it is less than MSM_IOCTL_FREQ_SIZE)
- ** from the frequency table, starting from the index
- ** (Z * MSM_IOCTL_FREQ_SIZE).
- ** For example, in a device supporting 19 different frequencies, a set
- ** index value of 0 will fetch the first 16 (MSM_IOCTL_FREQ_SIZE)
- ** frequencies starting from the index 0 and a set value of 1 will fetch
- ** the remaining 3 frequencies starting from the index 16.
- ** A successful get, will populate the freq_table_len with the
- ** number of frequency table entries fetched.
- */
- uint32_t set_idx;
- unsigned int freq_table[MSM_IOCTL_FREQ_SIZE];
-};
-
-struct __attribute__((__packed__)) voltage_plan_arg {
- uint32_t cluster_num;
- uint32_t voltage_table_len;
- uint32_t set_idx;
- uint32_t voltage_table[MSM_IOCTL_FREQ_SIZE];
-};
-
-struct __attribute__((__packed__)) msm_thermal_ioctl {
- uint32_t size;
- union {
- struct cpu_freq_arg cpu_freq;
- struct clock_plan_arg clock_freq;
- struct voltage_plan_arg voltage;
- };
-};
-
-enum {
- /*Set CPU Frequency*/
- MSM_SET_CPU_MAX_FREQ = 0x00,
- MSM_SET_CPU_MIN_FREQ = 0x01,
- /*Set cluster frequency*/
- MSM_SET_CLUSTER_MAX_FREQ = 0x02,
- MSM_SET_CLUSTER_MIN_FREQ = 0x03,
- /*Get cluster frequency plan*/
- MSM_GET_CLUSTER_FREQ_PLAN = 0x04,
- /*Get cluster voltage plan */
- MSM_GET_CLUSTER_VOLTAGE_PLAN = 0x05,
- MSM_CMD_MAX_NR,
-};
-
-#define MSM_THERMAL_MAGIC_NUM 0xCA /*Unique magic number*/
-
-#define MSM_THERMAL_SET_CPU_MAX_FREQUENCY _IOW(MSM_THERMAL_MAGIC_NUM,\
- MSM_SET_CPU_MAX_FREQ, struct msm_thermal_ioctl)
-
-#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)
-
-#define MSM_THERMAL_GET_CLUSTER_VOLTAGE_PLAN _IOR(MSM_THERMAL_MAGIC_NUM,\
- MSM_GET_CLUSTER_VOLTAGE_PLAN, struct msm_thermal_ioctl)
-#endif
diff --git a/sdm710/original-kernel-headers/linux/msm_vidc_dec.h b/sdm710/original-kernel-headers/linux/msm_vidc_dec.h
deleted file mode 100644
index 2b772131..00000000
--- a/sdm710/original-kernel-headers/linux/msm_vidc_dec.h
+++ /dev/null
@@ -1,629 +0,0 @@
-#ifndef _MSM_VIDC_DEC_H_
-#define _MSM_VIDC_DEC_H_
-
-#include <linux/types.h>
-#include <linux/ioctl.h>
-
-/* STATUS CODES */
-/* Base value for status codes */
-#define VDEC_S_BASE 0x40000000
-/* Success */
-#define VDEC_S_SUCCESS (VDEC_S_BASE)
-/* General failure */
-#define VDEC_S_EFAIL (VDEC_S_BASE + 1)
-/* Fatal irrecoverable failure. Need to tear down session. */
-#define VDEC_S_EFATAL (VDEC_S_BASE + 2)
-/* Error detected in the passed parameters */
-#define VDEC_S_EBADPARAM (VDEC_S_BASE + 3)
-/* Command called in invalid state. */
-#define VDEC_S_EINVALSTATE (VDEC_S_BASE + 4)
- /* Insufficient OS resources - thread, memory etc. */
-#define VDEC_S_ENOSWRES (VDEC_S_BASE + 5)
- /* Insufficient HW resources - core capacity maxed out. */
-#define VDEC_S_ENOHWRES (VDEC_S_BASE + 6)
-/* Invalid command called */
-#define VDEC_S_EINVALCMD (VDEC_S_BASE + 7)
-/* Command timeout. */
-#define VDEC_S_ETIMEOUT (VDEC_S_BASE + 8)
-/* Pre-requirement is not met for API. */
-#define VDEC_S_ENOPREREQ (VDEC_S_BASE + 9)
-/* Command queue is full. */
-#define VDEC_S_ECMDQFULL (VDEC_S_BASE + 10)
-/* Command is not supported by this driver */
-#define VDEC_S_ENOTSUPP (VDEC_S_BASE + 11)
-/* Command is not implemented by thedriver. */
-#define VDEC_S_ENOTIMPL (VDEC_S_BASE + 12)
-/* Command is not implemented by the driver. */
-#define VDEC_S_BUSY (VDEC_S_BASE + 13)
-#define VDEC_S_INPUT_BITSTREAM_ERR (VDEC_S_BASE + 14)
-
-#define VDEC_INTF_VER 1
-#define VDEC_MSG_BASE 0x0000000
-/*
- *Codes to identify asynchronous message responses and events that driver
- *wants to communicate to the app.
- */
-#define VDEC_MSG_INVALID (VDEC_MSG_BASE + 0)
-#define VDEC_MSG_RESP_INPUT_BUFFER_DONE (VDEC_MSG_BASE + 1)
-#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)
-#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)
-#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)
-#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)
-#define VDEC_MSG_EVT_MAX_CLIENTS (VDEC_MSG_BASE + 18)
-#define VDEC_MSG_EVT_HW_UNSUPPORTED (VDEC_MSG_BASE + 19)
-
-/*Buffer flags bits masks.*/
-#define VDEC_BUFFERFLAG_EOS 0x00000001
-#define VDEC_BUFFERFLAG_DECODEONLY 0x00000004
-#define VDEC_BUFFERFLAG_DATACORRUPT 0x00000008
-#define VDEC_BUFFERFLAG_ENDOFFRAME 0x00000010
-#define VDEC_BUFFERFLAG_SYNCFRAME 0x00000020
-#define VDEC_BUFFERFLAG_EXTRADATA 0x00000040
-#define VDEC_BUFFERFLAG_CODECCONFIG 0x00000080
-
-/*Post processing flags bit masks*/
-#define VDEC_EXTRADATA_NONE 0x001
-#define VDEC_EXTRADATA_QP 0x004
-#define VDEC_EXTRADATA_MB_ERROR_MAP 0x008
-#define VDEC_EXTRADATA_SEI 0x010
-#define VDEC_EXTRADATA_VUI 0x020
-#define VDEC_EXTRADATA_VC1 0x040
-
-#define VDEC_EXTRADATA_EXT_DATA 0x0800
-#define VDEC_EXTRADATA_USER_DATA 0x1000
-#define VDEC_EXTRADATA_EXT_BUFFER 0x2000
-
-#define VDEC_CMDBASE 0x800
-#define VDEC_CMD_SET_INTF_VERSION (VDEC_CMDBASE)
-
-#define VDEC_IOCTL_MAGIC 'v'
-
-struct vdec_ioctl_msg {
- void *in;
- void *out;
-};
-
-/*
- * CMD params: InputParam:enum vdec_codec
- * OutputParam: struct vdec_profile_level
- */
-#define VDEC_IOCTL_GET_PROFILE_LEVEL_SUPPORTED \
- _IOWR(VDEC_IOCTL_MAGIC, 0, struct vdec_ioctl_msg)
-
-/*
- * CMD params:InputParam: NULL
- * OutputParam: uint32_t(bitmask)
- */
-#define VDEC_IOCTL_GET_INTERLACE_FORMAT \
- _IOR(VDEC_IOCTL_MAGIC, 1, struct vdec_ioctl_msg)
-
-/*
- * CMD params: InputParam: enum vdec_codec
- * OutputParam: struct vdec_profile_level
- */
-#define VDEC_IOCTL_GET_CURRENT_PROFILE_LEVEL \
- _IOWR(VDEC_IOCTL_MAGIC, 2, struct vdec_ioctl_msg)
-
-/*
- * CMD params: SET: InputParam: enum vdec_output_fromat OutputParam: NULL
- * GET: InputParam: NULL OutputParam: enum vdec_output_fromat
- */
-#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)
-
-/*
- * CMD params: SET: InputParam: enum vdec_codec OutputParam: NULL
- * GET: InputParam: NULL OutputParam: enum vdec_codec
- */
-#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)
-
-/*
- * CMD params: SET: InputParam: struct vdec_picsize outputparam: NULL
- * GET: InputParam: NULL outputparam: struct vdec_picsize
- */
-#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)
-
-#define VDEC_IOCTL_SET_SEQUENCE_HEADER \
- _IOW(VDEC_IOCTL_MAGIC, 11, struct vdec_ioctl_msg)
-
-/*
- * CMD params: SET: InputParam - vdec_allocatorproperty, OutputParam - NULL
- * GET: InputParam - NULL, OutputParam - vdec_allocatorproperty
- */
-#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)
-/* CMD params: InputParam - vdec_buffer, OutputParam - uint8_t** */
-#define VDEC_IOCTL_ALLOCATE_BUFFER \
- _IOWR(VDEC_IOCTL_MAGIC, 14, struct vdec_ioctl_msg)
-/* CMD params: InputParam - uint8_t *, OutputParam - NULL.*/
-#define VDEC_IOCTL_FREE_BUFFER \
- _IOW(VDEC_IOCTL_MAGIC, 15, struct vdec_ioctl_msg)
-
-/*CMD params: CMD: InputParam - struct vdec_setbuffer_cmd, OutputParam - NULL*/
-#define VDEC_IOCTL_SET_BUFFER \
- _IOW(VDEC_IOCTL_MAGIC, 16, struct vdec_ioctl_msg)
-
-/* CMD params: InputParam - struct vdec_fillbuffer_cmd, OutputParam - NULL*/
-#define VDEC_IOCTL_FILL_OUTPUT_BUFFER \
- _IOW(VDEC_IOCTL_MAGIC, 17, struct vdec_ioctl_msg)
-
-/*CMD params: InputParam - struct vdec_frameinfo , OutputParam - NULL*/
-#define VDEC_IOCTL_DECODE_FRAME \
- _IOW(VDEC_IOCTL_MAGIC, 18, struct vdec_ioctl_msg)
-
-#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)
-#define VDEC_IOCTL_CMD_RESUME _IO(VDEC_IOCTL_MAGIC, 23)
-
-/*CMD params: InputParam - enum vdec_bufferflush , OutputParam - NULL */
-#define VDEC_IOCTL_CMD_FLUSH _IOW(VDEC_IOCTL_MAGIC, 24, struct vdec_ioctl_msg)
-
-/* ========================================================
- * IOCTL for getting asynchronous notification from driver
- * ========================================================
- */
-
-/*IOCTL params: InputParam - NULL, OutputParam - struct vdec_msginfo*/
-#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)
-
-#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)
-
-#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)
-
-#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)
-
-#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,
- PICTURE_TYPE_P,
- PICTURE_TYPE_B,
- PICTURE_TYPE_BI,
- PICTURE_TYPE_SKIP,
- PICTURE_TYPE_IDR,
- PICTURE_TYPE_UNKNOWN
-};
-
-enum vdec_buffer {
- VDEC_BUFFER_TYPE_INPUT,
- VDEC_BUFFER_TYPE_OUTPUT
-};
-
-struct vdec_allocatorproperty {
- enum vdec_buffer buffer_type;
- uint32_t mincount;
- uint32_t maxcount;
- uint32_t actualcount;
- size_t buffer_size;
- uint32_t alignment;
- uint32_t buf_poolid;
- size_t meta_buffer_size;
-};
-
-struct vdec_bufferpayload {
- void *bufferaddr;
- size_t buffer_len;
- int pmem_fd;
- size_t offset;
- size_t mmaped_size;
-};
-
-struct vdec_setbuffer_cmd {
- enum vdec_buffer buffer_type;
- struct vdec_bufferpayload buffer;
-};
-
-struct vdec_fillbuffer_cmd {
- struct vdec_bufferpayload buffer;
- void *client_data;
-};
-
-enum vdec_bufferflush {
- VDEC_FLUSH_TYPE_INPUT,
- VDEC_FLUSH_TYPE_OUTPUT,
- VDEC_FLUSH_TYPE_ALL
-};
-
-enum vdec_codec {
- VDEC_CODECTYPE_H264 = 0x1,
- VDEC_CODECTYPE_H263 = 0x2,
- VDEC_CODECTYPE_MPEG4 = 0x3,
- VDEC_CODECTYPE_DIVX_3 = 0x4,
- VDEC_CODECTYPE_DIVX_4 = 0x5,
- VDEC_CODECTYPE_DIVX_5 = 0x6,
- VDEC_CODECTYPE_DIVX_6 = 0x7,
- VDEC_CODECTYPE_XVID = 0x8,
- VDEC_CODECTYPE_MPEG1 = 0x9,
- VDEC_CODECTYPE_MPEG2 = 0xa,
- VDEC_CODECTYPE_VC1 = 0xb,
- VDEC_CODECTYPE_VC1_RCV = 0xc,
- VDEC_CODECTYPE_HEVC = 0xd,
- VDEC_CODECTYPE_MVC = 0xe,
- VDEC_CODECTYPE_VP8 = 0xf,
- VDEC_CODECTYPE_VP9 = 0x10,
-};
-
-enum vdec_mpeg2_profile {
- VDEC_MPEG2ProfileSimple = 0x1,
- VDEC_MPEG2ProfileMain = 0x2,
- VDEC_MPEG2Profile422 = 0x4,
- VDEC_MPEG2ProfileSNR = 0x8,
- VDEC_MPEG2ProfileSpatial = 0x10,
- VDEC_MPEG2ProfileHigh = 0x20,
- VDEC_MPEG2ProfileKhronosExtensions = 0x6F000000,
- VDEC_MPEG2ProfileVendorStartUnused = 0x7F000000,
- VDEC_MPEG2ProfileMax = 0x7FFFFFFF
-};
-
-enum vdec_mpeg2_level {
-
- VDEC_MPEG2LevelLL = 0x1,
- VDEC_MPEG2LevelML = 0x2,
- VDEC_MPEG2LevelH14 = 0x4,
- VDEC_MPEG2LevelHL = 0x8,
- VDEC_MPEG2LevelKhronosExtensions = 0x6F000000,
- VDEC_MPEG2LevelVendorStartUnused = 0x7F000000,
- VDEC_MPEG2LevelMax = 0x7FFFFFFF
-};
-
-enum vdec_mpeg4_profile {
- VDEC_MPEG4ProfileSimple = 0x01,
- VDEC_MPEG4ProfileSimpleScalable = 0x02,
- VDEC_MPEG4ProfileCore = 0x04,
- VDEC_MPEG4ProfileMain = 0x08,
- VDEC_MPEG4ProfileNbit = 0x10,
- VDEC_MPEG4ProfileScalableTexture = 0x20,
- VDEC_MPEG4ProfileSimpleFace = 0x40,
- VDEC_MPEG4ProfileSimpleFBA = 0x80,
- VDEC_MPEG4ProfileBasicAnimated = 0x100,
- VDEC_MPEG4ProfileHybrid = 0x200,
- VDEC_MPEG4ProfileAdvancedRealTime = 0x400,
- VDEC_MPEG4ProfileCoreScalable = 0x800,
- VDEC_MPEG4ProfileAdvancedCoding = 0x1000,
- VDEC_MPEG4ProfileAdvancedCore = 0x2000,
- VDEC_MPEG4ProfileAdvancedScalable = 0x4000,
- VDEC_MPEG4ProfileAdvancedSimple = 0x8000,
- VDEC_MPEG4ProfileKhronosExtensions = 0x6F000000,
- VDEC_MPEG4ProfileVendorStartUnused = 0x7F000000,
- VDEC_MPEG4ProfileMax = 0x7FFFFFFF
-};
-
-enum vdec_mpeg4_level {
- VDEC_MPEG4Level0 = 0x01,
- VDEC_MPEG4Level0b = 0x02,
- VDEC_MPEG4Level1 = 0x04,
- VDEC_MPEG4Level2 = 0x08,
- VDEC_MPEG4Level3 = 0x10,
- VDEC_MPEG4Level4 = 0x20,
- VDEC_MPEG4Level4a = 0x40,
- VDEC_MPEG4Level5 = 0x80,
- VDEC_MPEG4LevelKhronosExtensions = 0x6F000000,
- VDEC_MPEG4LevelVendorStartUnused = 0x7F000000,
- VDEC_MPEG4LevelMax = 0x7FFFFFFF
-};
-
-enum vdec_avc_profile {
- VDEC_AVCProfileBaseline = 0x01,
- VDEC_AVCProfileMain = 0x02,
- VDEC_AVCProfileExtended = 0x04,
- VDEC_AVCProfileHigh = 0x08,
- VDEC_AVCProfileHigh10 = 0x10,
- VDEC_AVCProfileHigh422 = 0x20,
- VDEC_AVCProfileHigh444 = 0x40,
- VDEC_AVCProfileKhronosExtensions = 0x6F000000,
- VDEC_AVCProfileVendorStartUnused = 0x7F000000,
- VDEC_AVCProfileMax = 0x7FFFFFFF
-};
-
-enum vdec_avc_level {
- VDEC_AVCLevel1 = 0x01,
- VDEC_AVCLevel1b = 0x02,
- VDEC_AVCLevel11 = 0x04,
- VDEC_AVCLevel12 = 0x08,
- VDEC_AVCLevel13 = 0x10,
- VDEC_AVCLevel2 = 0x20,
- VDEC_AVCLevel21 = 0x40,
- VDEC_AVCLevel22 = 0x80,
- VDEC_AVCLevel3 = 0x100,
- VDEC_AVCLevel31 = 0x200,
- VDEC_AVCLevel32 = 0x400,
- VDEC_AVCLevel4 = 0x800,
- VDEC_AVCLevel41 = 0x1000,
- VDEC_AVCLevel42 = 0x2000,
- VDEC_AVCLevel5 = 0x4000,
- VDEC_AVCLevel51 = 0x8000,
- VDEC_AVCLevelKhronosExtensions = 0x6F000000,
- VDEC_AVCLevelVendorStartUnused = 0x7F000000,
- VDEC_AVCLevelMax = 0x7FFFFFFF
-};
-
-enum vdec_divx_profile {
- VDEC_DIVXProfile_qMobile = 0x01,
- VDEC_DIVXProfile_Mobile = 0x02,
- VDEC_DIVXProfile_HD = 0x04,
- VDEC_DIVXProfile_Handheld = 0x08,
- VDEC_DIVXProfile_Portable = 0x10,
- VDEC_DIVXProfile_HomeTheater = 0x20
-};
-
-enum vdec_xvid_profile {
- VDEC_XVIDProfile_Simple = 0x1,
- VDEC_XVIDProfile_Advanced_Realtime_Simple = 0x2,
- VDEC_XVIDProfile_Advanced_Simple = 0x4
-};
-
-enum vdec_xvid_level {
- VDEC_XVID_LEVEL_S_L0 = 0x1,
- VDEC_XVID_LEVEL_S_L1 = 0x2,
- VDEC_XVID_LEVEL_S_L2 = 0x4,
- VDEC_XVID_LEVEL_S_L3 = 0x8,
- VDEC_XVID_LEVEL_ARTS_L1 = 0x10,
- VDEC_XVID_LEVEL_ARTS_L2 = 0x20,
- VDEC_XVID_LEVEL_ARTS_L3 = 0x40,
- VDEC_XVID_LEVEL_ARTS_L4 = 0x80,
- VDEC_XVID_LEVEL_AS_L0 = 0x100,
- VDEC_XVID_LEVEL_AS_L1 = 0x200,
- VDEC_XVID_LEVEL_AS_L2 = 0x400,
- VDEC_XVID_LEVEL_AS_L3 = 0x800,
- VDEC_XVID_LEVEL_AS_L4 = 0x1000
-};
-
-enum vdec_h263profile {
- VDEC_H263ProfileBaseline = 0x01,
- VDEC_H263ProfileH320Coding = 0x02,
- VDEC_H263ProfileBackwardCompatible = 0x04,
- VDEC_H263ProfileISWV2 = 0x08,
- VDEC_H263ProfileISWV3 = 0x10,
- VDEC_H263ProfileHighCompression = 0x20,
- VDEC_H263ProfileInternet = 0x40,
- VDEC_H263ProfileInterlace = 0x80,
- VDEC_H263ProfileHighLatency = 0x100,
- VDEC_H263ProfileKhronosExtensions = 0x6F000000,
- VDEC_H263ProfileVendorStartUnused = 0x7F000000,
- VDEC_H263ProfileMax = 0x7FFFFFFF
-};
-
-enum vdec_h263level {
- VDEC_H263Level10 = 0x01,
- VDEC_H263Level20 = 0x02,
- VDEC_H263Level30 = 0x04,
- VDEC_H263Level40 = 0x08,
- VDEC_H263Level45 = 0x10,
- VDEC_H263Level50 = 0x20,
- VDEC_H263Level60 = 0x40,
- VDEC_H263Level70 = 0x80,
- VDEC_H263LevelKhronosExtensions = 0x6F000000,
- VDEC_H263LevelVendorStartUnused = 0x7F000000,
- VDEC_H263LevelMax = 0x7FFFFFFF
-};
-
-enum vdec_wmv_format {
- VDEC_WMVFormatUnused = 0x01,
- VDEC_WMVFormat7 = 0x02,
- VDEC_WMVFormat8 = 0x04,
- VDEC_WMVFormat9 = 0x08,
- VDEC_WMFFormatKhronosExtensions = 0x6F000000,
- VDEC_WMFFormatVendorStartUnused = 0x7F000000,
- VDEC_WMVFormatMax = 0x7FFFFFFF
-};
-
-enum vdec_vc1_profile {
- VDEC_VC1ProfileSimple = 0x1,
- VDEC_VC1ProfileMain = 0x2,
- VDEC_VC1ProfileAdvanced = 0x4
-};
-
-enum vdec_vc1_level {
- VDEC_VC1_LEVEL_S_Low = 0x1,
- VDEC_VC1_LEVEL_S_Medium = 0x2,
- VDEC_VC1_LEVEL_M_Low = 0x4,
- VDEC_VC1_LEVEL_M_Medium = 0x8,
- VDEC_VC1_LEVEL_M_High = 0x10,
- VDEC_VC1_LEVEL_A_L0 = 0x20,
- VDEC_VC1_LEVEL_A_L1 = 0x40,
- VDEC_VC1_LEVEL_A_L2 = 0x80,
- VDEC_VC1_LEVEL_A_L3 = 0x100,
- VDEC_VC1_LEVEL_A_L4 = 0x200
-};
-
-struct vdec_profile_level {
- uint32_t profiles;
- uint32_t levels;
-};
-
-enum vdec_interlaced_format {
- VDEC_InterlaceFrameProgressive = 0x1,
- VDEC_InterlaceInterleaveFrameTopFieldFirst = 0x2,
- VDEC_InterlaceInterleaveFrameBottomFieldFirst = 0x4
-};
-
-#define VDEC_YUV_FORMAT_NV12_TP10_UBWC \
- VDEC_YUV_FORMAT_NV12_TP10_UBWC
-
-enum vdec_output_fromat {
- VDEC_YUV_FORMAT_NV12 = 0x1,
- VDEC_YUV_FORMAT_TILE_4x2 = 0x2,
- VDEC_YUV_FORMAT_NV12_UBWC = 0x3,
- VDEC_YUV_FORMAT_NV12_TP10_UBWC = 0x4
-};
-
-enum vdec_output_order {
- VDEC_ORDER_DISPLAY = 0x1,
- VDEC_ORDER_DECODE = 0x2
-};
-
-struct vdec_picsize {
- uint32_t frame_width;
- uint32_t frame_height;
- uint32_t stride;
- uint32_t scan_lines;
-};
-
-struct vdec_seqheader {
- void *ptr_seqheader;
- size_t seq_header_len;
- int pmem_fd;
- size_t pmem_offset;
-};
-
-struct vdec_mberror {
- void *ptr_errormap;
- size_t err_mapsize;
-};
-
-struct vdec_input_frameinfo {
- void *bufferaddr;
- size_t offset;
- size_t datalen;
- uint32_t flags;
- int64_t timestamp;
- void *client_data;
- int pmem_fd;
- size_t pmem_offset;
- void *desc_addr;
- uint32_t desc_size;
-};
-
-struct vdec_framesize {
- uint32_t left;
- uint32_t top;
- uint32_t right;
- uint32_t bottom;
-};
-
-struct vdec_aspectratioinfo {
- uint32_t aspect_ratio;
- uint32_t par_width;
- uint32_t par_height;
-};
-
-struct vdec_sep_metadatainfo {
- void *metabufaddr;
- uint32_t size;
- int fd;
- int offset;
- uint32_t buffer_size;
-};
-
-struct vdec_output_frameinfo {
- void *bufferaddr;
- size_t offset;
- size_t len;
- uint32_t flags;
- int64_t time_stamp;
- enum vdec_picture pic_type;
- void *client_data;
- void *input_frame_clientdata;
- struct vdec_picsize picsize;
- struct vdec_framesize framesize;
- enum vdec_interlaced_format interlaced_format;
- struct vdec_aspectratioinfo aspect_ratio_info;
- struct vdec_sep_metadatainfo metadata_info;
-};
-
-union vdec_msgdata {
- struct vdec_output_frameinfo output_frame;
- void *input_frame_clientdata;
-};
-
-struct vdec_msginfo {
- uint32_t status_code;
- uint32_t msgcode;
- union vdec_msgdata msgdata;
- size_t msgdatasize;
-};
-
-struct vdec_framerate {
- unsigned long fps_denominator;
- unsigned long fps_numerator;
-};
-
-struct vdec_h264_mv {
- size_t size;
- int count;
- int pmem_fd;
- int offset;
-};
-
-struct vdec_mv_buff_size {
- int width;
- int height;
- int size;
- int alignment;
-};
-
-struct vdec_meta_buffers {
- size_t size;
- int count;
- int pmem_fd;
- int pmem_fd_iommu;
- int offset;
-};
-
-#endif /* end of macro _VDECDECODER_H_ */
diff --git a/sdm710/original-kernel-headers/linux/msm_vidc_enc.h b/sdm710/original-kernel-headers/linux/msm_vidc_enc.h
deleted file mode 100644
index 86d7fab4..00000000
--- a/sdm710/original-kernel-headers/linux/msm_vidc_enc.h
+++ /dev/null
@@ -1,752 +0,0 @@
-#ifndef _MSM_VIDC_ENC_H_
-#define _MSM_VIDC_ENC_H_
-
-#include <linux/types.h>
-#include <linux/ioctl.h>
-
-/** STATUS CODES*/
-/* Base value for status codes */
-#define VEN_S_BASE 0x00000000
-#define VEN_S_SUCCESS (VEN_S_BASE)/* Success */
-#define VEN_S_EFAIL (VEN_S_BASE+1)/* General failure */
-#define VEN_S_EFATAL (VEN_S_BASE+2)/* Fatal irrecoverable failure*/
-#define VEN_S_EBADPARAM (VEN_S_BASE+3)/* Error passed parameters*/
-/*Command called in invalid state*/
-#define VEN_S_EINVALSTATE (VEN_S_BASE+4)
-#define VEN_S_ENOSWRES (VEN_S_BASE+5)/* Insufficient OS resources*/
-#define VEN_S_ENOHWRES (VEN_S_BASE+6)/*Insufficient HW resources */
-#define VEN_S_EBUFFREQ (VEN_S_BASE+7)/* Buffer requirements were not met*/
-#define VEN_S_EINVALCMD (VEN_S_BASE+8)/* Invalid command called */
-#define VEN_S_ETIMEOUT (VEN_S_BASE+9)/* Command timeout. */
-/*Re-attempt was made when multiple invocation not supported for API.*/
-#define VEN_S_ENOREATMPT (VEN_S_BASE+10)
-#define VEN_S_ENOPREREQ (VEN_S_BASE+11)/*Pre-requirement is not met for API*/
-#define VEN_S_ECMDQFULL (VEN_S_BASE+12)/*Command queue is full*/
-#define VEN_S_ENOTSUPP (VEN_S_BASE+13)/*Command not supported*/
-#define VEN_S_ENOTIMPL (VEN_S_BASE+14)/*Command not implemented.*/
-#define VEN_S_ENOTPMEM (VEN_S_BASE+15)/*Buffer is not from PMEM*/
-#define VEN_S_EFLUSHED (VEN_S_BASE+16)/*returned buffer was flushed*/
-#define VEN_S_EINSUFBUF (VEN_S_BASE+17)/*provided buffer size insufficient*/
-#define VEN_S_ESAMESTATE (VEN_S_BASE+18)
-#define VEN_S_EINVALTRANS (VEN_S_BASE+19)
-
-#define VEN_INTF_VER 1
-
-/*Asynchronous messages from driver*/
-#define VEN_MSG_INDICATION 0
-#define VEN_MSG_INPUT_BUFFER_DONE 1
-#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_OUTPUT_DONE 5
-#define VEN_MSG_START 6
-#define VEN_MSG_STOP 7
-#define VEN_MSG_PAUSE 8
-#define VEN_MSG_RESUME 9
-#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
-
-
-/*Buffer flags bits masks*/
-#define VEN_BUFFLAG_EOS 0x00000001
-#define VEN_BUFFLAG_ENDOFFRAME 0x00000010
-#define VEN_BUFFLAG_SYNCFRAME 0x00000020
-#define VEN_BUFFLAG_EXTRADATA 0x00000040
-#define VEN_BUFFLAG_CODECCONFIG 0x00000080
-
-/*Post processing flags bit masks*/
-#define VEN_EXTRADATA_NONE 0x001
-#define VEN_EXTRADATA_QCOMFILLER 0x002
-#define VEN_EXTRADATA_SLICEINFO 0x100
-#define VEN_EXTRADATA_LTRINFO 0x200
-#define VEN_EXTRADATA_MBINFO 0x400
-
-/*ENCODER CONFIGURATION CONSTANTS*/
-
-/*Encoded video frame types*/
-#define VEN_FRAME_TYPE_I 1/* I frame type */
-#define VEN_FRAME_TYPE_P 2/* P frame type */
-#define VEN_FRAME_TYPE_B 3/* B frame type */
-
-/*Video codec types*/
-#define VEN_CODEC_MPEG4 1/* MPEG4 Codec */
-#define VEN_CODEC_H264 2/* H.264 Codec */
-#define VEN_CODEC_H263 3/* H.263 Codec */
-
-/*Video codec profile types.*/
-#define VEN_PROFILE_MPEG4_SP 1/* 1 - MPEG4 SP profile */
-#define VEN_PROFILE_MPEG4_ASP 2/* 2 - MPEG4 ASP profile */
-#define VEN_PROFILE_H264_BASELINE 3/* 3 - H264 Baseline profile */
-#define VEN_PROFILE_H264_MAIN 4/* 4 - H264 Main profile */
-#define VEN_PROFILE_H264_HIGH 5/* 5 - H264 High profile */
-#define VEN_PROFILE_H263_BASELINE 6/* 6 - H263 Baseline profile */
-
-/*Video codec profile level types.*/
-#define VEN_LEVEL_MPEG4_0 0x1/* MPEG4 Level 0 */
-#define VEN_LEVEL_MPEG4_1 0x2/* MPEG4 Level 1 */
-#define VEN_LEVEL_MPEG4_2 0x3/* MPEG4 Level 2 */
-#define VEN_LEVEL_MPEG4_3 0x4/* MPEG4 Level 3 */
-#define VEN_LEVEL_MPEG4_4 0x5/* MPEG4 Level 4 */
-#define VEN_LEVEL_MPEG4_5 0x6/* MPEG4 Level 5 */
-#define VEN_LEVEL_MPEG4_3b 0x7/* MPEG4 Level 3b */
-#define VEN_LEVEL_MPEG4_6 0x8/* MPEG4 Level 6 */
-
-#define VEN_LEVEL_H264_1 0x9/* H.264 Level 1 */
-#define VEN_LEVEL_H264_1b 0xA/* H.264 Level 1b */
-#define VEN_LEVEL_H264_1p1 0xB/* H.264 Level 1.1 */
-#define VEN_LEVEL_H264_1p2 0xC/* H.264 Level 1.2 */
-#define VEN_LEVEL_H264_1p3 0xD/* H.264 Level 1.3 */
-#define VEN_LEVEL_H264_2 0xE/* H.264 Level 2 */
-#define VEN_LEVEL_H264_2p1 0xF/* H.264 Level 2.1 */
-#define VEN_LEVEL_H264_2p2 0x10/* H.264 Level 2.2 */
-#define VEN_LEVEL_H264_3 0x11/* H.264 Level 3 */
-#define VEN_LEVEL_H264_3p1 0x12/* H.264 Level 3.1 */
-#define VEN_LEVEL_H264_3p2 0x13/* H.264 Level 3.2 */
-#define VEN_LEVEL_H264_4 0x14/* H.264 Level 4 */
-
-#define VEN_LEVEL_H263_10 0x15/* H.263 Level 10 */
-#define VEN_LEVEL_H263_20 0x16/* H.263 Level 20 */
-#define VEN_LEVEL_H263_30 0x17/* H.263 Level 30 */
-#define VEN_LEVEL_H263_40 0x18/* H.263 Level 40 */
-#define VEN_LEVEL_H263_45 0x19/* H.263 Level 45 */
-#define VEN_LEVEL_H263_50 0x1A/* H.263 Level 50 */
-#define VEN_LEVEL_H263_60 0x1B/* H.263 Level 60 */
-#define VEN_LEVEL_H263_70 0x1C/* H.263 Level 70 */
-
-/*Entropy coding model selection for H.264 encoder.*/
-#define VEN_ENTROPY_MODEL_CAVLC 1
-#define VEN_ENTROPY_MODEL_CABAC 2
-/*Cabac model number (0,1,2) for encoder.*/
-#define VEN_CABAC_MODEL_0 1/* CABAC Model 0. */
-#define VEN_CABAC_MODEL_1 2/* CABAC Model 1. */
-#define VEN_CABAC_MODEL_2 3/* CABAC Model 2. */
-
-/*Deblocking filter control type for encoder.*/
-#define VEN_DB_DISABLE 1/* 1 - Disable deblocking filter*/
-#define VEN_DB_ALL_BLKG_BNDRY 2/* 2 - All blocking boundary filtering*/
-#define VEN_DB_SKIP_SLICE_BNDRY 3/* 3 - Filtering except sliceboundary*/
-
-/*Different methods of Multi slice selection.*/
-#define VEN_MSLICE_OFF 1
-#define VEN_MSLICE_CNT_MB 2 /*number of MBscount per slice*/
-#define VEN_MSLICE_CNT_BYTE 3 /*number of bytes count per slice.*/
-#define VEN_MSLICE_GOB 4 /*Multi slice by GOB for H.263 only.*/
-
-/*Different modes for Rate Control.*/
-#define VEN_RC_OFF 1
-#define VEN_RC_VBR_VFR 2
-#define VEN_RC_VBR_CFR 3
-#define VEN_RC_CBR_VFR 4
-#define VEN_RC_CBR_CFR 5
-
-/*Different modes for flushing buffers*/
-#define VEN_FLUSH_INPUT 1
-#define VEN_FLUSH_OUTPUT 2
-#define VEN_FLUSH_ALL 3
-
-/*Different input formats for YUV data.*/
-#define VEN_INPUTFMT_NV12 1/* NV12 Linear */
-#define VEN_INPUTFMT_NV21 2/* NV21 Linear */
-#define VEN_INPUTFMT_NV12_16M2KA 3/* NV12 Linear */
-
-/*Different allowed rotation modes.*/
-#define VEN_ROTATION_0 1/* 0 degrees */
-#define VEN_ROTATION_90 2/* 90 degrees */
-#define VEN_ROTATION_180 3/* 180 degrees */
-#define VEN_ROTATION_270 4/* 270 degrees */
-
-/*IOCTL timeout values*/
-#define VEN_TIMEOUT_INFINITE 0xffffffff
-
-/*Different allowed intra refresh modes.*/
-#define VEN_IR_OFF 1
-#define VEN_IR_CYCLIC 2
-#define VEN_IR_RANDOM 3
-
-/*IOCTL BASE CODES Not to be used directly by the client.*/
-/* Base value for ioctls that are not related to encoder configuration.*/
-#define VEN_IOCTLBASE_NENC 0x800
-/* Base value for encoder configuration ioctls*/
-#define VEN_IOCTLBASE_ENC 0x850
-
-struct venc_ioctl_msg {
- void *in;
- void *out;
-};
-
-/*NON ENCODER CONFIGURATION IOCTLs*/
-
-/*IOCTL params:SET: InputData - unsigned long, OutputData - NULL*/
-#define VEN_IOCTL_SET_INTF_VERSION \
- _IOW(VEN_IOCTLBASE_NENC, 0, struct venc_ioctl_msg)
-
-/*IOCTL params:CMD: InputData - venc_timeout, OutputData - venc_msg*/
-#define VEN_IOCTL_CMD_READ_NEXT_MSG \
- _IOWR(VEN_IOCTLBASE_NENC, 1, struct venc_ioctl_msg)
-
-/*IOCTL params:CMD: InputData - NULL, OutputData - NULL*/
-#define VEN_IOCTL_CMD_STOP_READ_MSG _IO(VEN_IOCTLBASE_NENC, 2)
-
-/*
- * IOCTL params:SET: InputData - venc_allocatorproperty, OutputData - NULL
- * GET: InputData - NULL, OutputData - venc_allocatorproperty
- */
-#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)
-
-/*IOCTL params:CMD: InputData - venc_bufferpayload, OutputData - NULL*/
-#define VEN_IOCTL_CMD_ALLOC_INPUT_BUFFER \
- _IOW(VEN_IOCTLBASE_NENC, 5, struct venc_ioctl_msg)
-
-/*IOCTL params:CMD: InputData - venc_bufferpayload, OutputData - NULL*/
-#define VEN_IOCTL_SET_INPUT_BUFFER \
- _IOW(VEN_IOCTLBASE_NENC, 6, struct venc_ioctl_msg)
-
-/*IOCTL params: CMD: InputData - venc_bufferpayload, OutputData - NULL*/
-#define VEN_IOCTL_CMD_FREE_INPUT_BUFFER \
- _IOW(VEN_IOCTLBASE_NENC, 7, struct venc_ioctl_msg)
-
-/*
- * IOCTL params:SET: InputData - venc_allocatorproperty, OutputData - NULL
- * GET: InputData - NULL, OutputData - venc_allocatorproperty
- */
-#define VEN_IOCTL_SET_OUTPUT_BUFFER_REQ \
- _IOW(VEN_IOCTLBASE_NENC, 8, struct venc_ioctl_msg)
-#define VEN_IOCTL_GET_OUTPUT_BUFFER_REQ \
- _IOR(VEN_IOCTLBASE_NENC, 9, struct venc_ioctl_msg)
-
-/*IOCTL params:CMD: InputData - venc_bufferpayload, OutputData - NULL*/
-#define VEN_IOCTL_CMD_ALLOC_OUTPUT_BUFFER \
- _IOW(VEN_IOCTLBASE_NENC, 10, struct venc_ioctl_msg)
-
-
-/*IOCTL params:CMD: InputData - venc_bufferpayload, OutputData - NULL*/
-#define VEN_IOCTL_SET_OUTPUT_BUFFER \
- _IOW(VEN_IOCTLBASE_NENC, 11, struct venc_ioctl_msg)
-
-/*IOCTL params:CMD: InputData - venc_bufferpayload, OutputData - NULL.*/
-#define VEN_IOCTL_CMD_FREE_OUTPUT_BUFFER \
- _IOW(VEN_IOCTLBASE_NENC, 12, struct venc_ioctl_msg)
-
-
-/* Asynchronous respone message code:* VEN_MSG_START*/
-#define VEN_IOCTL_CMD_START _IO(VEN_IOCTLBASE_NENC, 13)
-
-
-/*
- * IOCTL params:CMD: InputData - venc_buffer, OutputData - NULL
- * Asynchronous respone message code:VEN_MSG_INPUT_BUFFER_DONE
- */
-#define VEN_IOCTL_CMD_ENCODE_FRAME \
- _IOW(VEN_IOCTLBASE_NENC, 14, struct venc_ioctl_msg)
-
-
-/*
- *IOCTL params:CMD: InputData - venc_buffer, OutputData - NULL
- *Asynchronous response message code:VEN_MSG_OUTPUT_BUFFER_DONE
- */
-#define VEN_IOCTL_CMD_FILL_OUTPUT_BUFFER \
- _IOW(VEN_IOCTLBASE_NENC, 15, struct venc_ioctl_msg)
-
-/*
- * IOCTL params:CMD: InputData - venc_bufferflush, OutputData - NULL
- * Asynchronous response message code:VEN_MSG_INPUT_BUFFER_DONE
- */
-#define VEN_IOCTL_CMD_FLUSH \
- _IOW(VEN_IOCTLBASE_NENC, 16, struct venc_ioctl_msg)
-
-
-/*Asynchronous respone message code:VEN_MSG_PAUSE*/
-#define VEN_IOCTL_CMD_PAUSE _IO(VEN_IOCTLBASE_NENC, 17)
-
-/*Asynchronous respone message code:VEN_MSG_RESUME*/
-#define VEN_IOCTL_CMD_RESUME _IO(VEN_IOCTLBASE_NENC, 18)
-
-/* Asynchronous respone message code:VEN_MSG_STOP*/
-#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)
-
-#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)
-
-
-
-/*ENCODER PROPERTY CONFIGURATION & CAPABILITY IOCTLs*/
-
-/*
- * IOCTL params:SET: InputData - venc_basecfg, OutputData - NULL
- * GET: InputData - NULL, OutputData - venc_basecfg
- */
-#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)
-
-/*
- * IOCTL params:SET: InputData - venc_switch, OutputData - NULL
- * GET: InputData - NULL, OutputData - venc_switch
- */
-#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)
-
-
-/*
- * IOCTL params:SET: InputData - venc_profile, OutputData - NULL
- * GET: InputData - NULL, OutputData - venc_profile
- */
-#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)
-
-
-/*
- * IOCTL params:SET: InputData - ven_profilelevel, OutputData - NULL
- * GET: InputData - NULL, OutputData - ven_profilelevel
- */
-#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)
-
-/*
- * IOCTL params:SET: InputData - venc_switch, OutputData - NULL
- * GET: InputData - NULL, OutputData - venc_switch
- */
-#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)
-
-
-/*
- * IOCTL params: SET: InputData - venc_sessionqp, OutputData - NULL
- * GET: InputData - NULL, OutputData - venc_sessionqp
- */
-#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)
-
-
-/*
- * IOCTL params:SET: InputData - venc_intraperiod, OutputData - NULL
- * GET: InputData - NULL, OutputData - venc_intraperiod
- */
-#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)
-
-
-/* Request an Iframe*/
-#define VEN_IOCTL_CMD_REQUEST_IFRAME _IO(VEN_IOCTLBASE_ENC, 15)
-
-/*IOCTL params:GET: InputData - NULL, OutputData - venc_capability*/
-#define VEN_IOCTL_GET_CAPABILITY \
- _IOR(VEN_IOCTLBASE_ENC, 16, struct venc_ioctl_msg)
-
-
-/*IOCTL params:GET: InputData - NULL, OutputData - venc_seqheader*/
-#define VEN_IOCTL_GET_SEQUENCE_HDR \
- _IOR(VEN_IOCTLBASE_ENC, 17, struct venc_ioctl_msg)
-
-/*
- * IOCTL params:SET: InputData - venc_entropycfg, OutputData - NULL
- * GET: InputData - NULL, OutputData - venc_entropycfg
- */
-#define VEN_IOCTL_SET_ENTROPY_CFG \
- _IOW(VEN_IOCTLBASE_ENC, 18, struct venc_ioctl_msg)
-#define VEN_IOCTL_GET_ENTROPY_CFG \
- _IOR(VEN_IOCTLBASE_ENC, 19, struct venc_ioctl_msg)
-
-/*
- * IOCTL params:SET: InputData - venc_dbcfg, OutputData - NULL
- * GET: InputData - NULL, OutputData - venc_dbcfg
- */
-#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)
-
-
-/*
- * IOCTL params:SET: InputData - venc_intrarefresh, OutputData - NULL
- * GET: InputData - NULL, OutputData - venc_intrarefresh
- */
-#define VEN_IOCTL_SET_INTRA_REFRESH \
- _IOW(VEN_IOCTLBASE_ENC, 22, struct venc_ioctl_msg)
-#define VEN_IOCTL_GET_INTRA_REFRESH \
- _IOR(VEN_IOCTLBASE_ENC, 23, struct venc_ioctl_msg)
-
-
-/*
- * IOCTL params:SET: InputData - venc_multiclicecfg, OutputData - NULL
- * GET: InputData - NULL, OutputData - venc_multiclicecfg
- */
-#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)
-
-/*
- * IOCTL params:SET: InputData - venc_ratectrlcfg, OutputData - NULL
- * GET: InputData - NULL, OutputData - venc_ratectrlcfg
- */
-#define VEN_IOCTL_SET_RATE_CTRL_CFG \
- _IOW(VEN_IOCTLBASE_ENC, 26, struct venc_ioctl_msg)
-#define VEN_IOCTL_GET_RATE_CTRL_CFG \
- _IOR(VEN_IOCTLBASE_ENC, 27, struct venc_ioctl_msg)
-
-
-/*
- * IOCTL params:SET: InputData - venc_voptimingcfg, OutputData - NULL
- * GET: InputData - NULL, OutputData - venc_voptimingcfg
- */
-#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)
-
-
-/*
- * IOCTL params:SET: InputData - venc_framerate, OutputData - NULL
- * GET: InputData - NULL, OutputData - venc_framerate
- */
-#define VEN_IOCTL_SET_FRAME_RATE \
- _IOW(VEN_IOCTLBASE_ENC, 30, struct venc_ioctl_msg)
-#define VEN_IOCTL_GET_FRAME_RATE \
- _IOR(VEN_IOCTLBASE_ENC, 31, struct venc_ioctl_msg)
-
-
-/*
- * IOCTL params:SET: InputData - venc_targetbitrate, OutputData - NULL
- * GET: InputData - NULL, OutputData - venc_targetbitrate
- */
-#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)
-
-
-/*
- * IOCTL params:SET: InputData - venc_rotation, OutputData - NULL
- * GET: InputData - NULL, OutputData - venc_rotation
- */
-#define VEN_IOCTL_SET_ROTATION \
- _IOW(VEN_IOCTLBASE_ENC, 34, struct venc_ioctl_msg)
-#define VEN_IOCTL_GET_ROTATION \
- _IOR(VEN_IOCTLBASE_ENC, 35, struct venc_ioctl_msg)
-
-
-/*
- * IOCTL params:SET: InputData - venc_headerextension, OutputData - NULL
- * GET: InputData - NULL, OutputData - venc_headerextension
- */
-#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)
-
-/*
- * IOCTL params:SET: InputData - venc_switch, OutputData - NULL
- * GET: InputData - NULL, OutputData - venc_switch
- */
-#define VEN_IOCTL_SET_DATA_PARTITION \
- _IOW(VEN_IOCTLBASE_ENC, 38, struct venc_ioctl_msg)
-#define VEN_IOCTL_GET_DATA_PARTITION \
- _IOR(VEN_IOCTLBASE_ENC, 39, struct venc_ioctl_msg)
-
-/*
- * IOCTL params:SET: InputData - venc_switch, OutputData - NULL
- * GET: InputData - NULL, OutputData - venc_switch
- */
-#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)
-
-
-/*
- * IOCTL params:SET: InputData - venc_switch, OutputData - NULL
- * GET: InputData - NULL, OutputData - venc_switch
- */
-#define VEN_IOCTL_SET_AC_PREDICTION \
- _IOW(VEN_IOCTLBASE_ENC, 42, struct venc_ioctl_msg)
-#define VEN_IOCTL_GET_AC_PREDICTION \
- _IOR(VEN_IOCTLBASE_ENC, 43, struct venc_ioctl_msg)
-
-
-/*
- * IOCTL params:SET: InputData - venc_qprange, OutputData - NULL
- * GET: InputData - NULL, OutputData - venc_qprange
- */
-#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)
-
-#define VEN_IOCTL_SET_METABUFFER_MODE \
- _IOW(VEN_IOCTLBASE_ENC, 47, struct venc_ioctl_msg)
-
-
-/*IOCTL params:SET: InputData - unsigned int, OutputData - NULL.*/
-#define VEN_IOCTL_SET_EXTRADATA \
- _IOW(VEN_IOCTLBASE_ENC, 48, struct venc_ioctl_msg)
-/*IOCTL params:GET: InputData - NULL, OutputData - unsigned int.*/
-#define VEN_IOCTL_GET_EXTRADATA \
- _IOR(VEN_IOCTLBASE_ENC, 49, struct venc_ioctl_msg)
-
-/*IOCTL params:SET: InputData - NULL, OutputData - NULL.*/
-#define VEN_IOCTL_SET_SLICE_DELIVERY_MODE \
- _IO(VEN_IOCTLBASE_ENC, 50)
-
-#define VEN_IOCTL_SET_H263_PLUSPTYPE \
- _IOW(VEN_IOCTLBASE_ENC, 51, struct venc_ioctl_msg)
-
-/*IOCTL params:SET: InputData - venc_range, OutputData - NULL.*/
-#define VEN_IOCTL_SET_CAPABILITY_LTRCOUNT \
- _IOW(VEN_IOCTLBASE_ENC, 52, struct venc_ioctl_msg)
-/*IOCTL params:GET: InputData - NULL, OutputData - venc_range.*/
-#define VEN_IOCTL_GET_CAPABILITY_LTRCOUNT \
- _IOR(VEN_IOCTLBASE_ENC, 53, struct venc_ioctl_msg)
-
-/*IOCTL params:SET: InputData - venc_ltrmode, OutputData - NULL.*/
-#define VEN_IOCTL_SET_LTRMODE \
- _IOW(VEN_IOCTLBASE_ENC, 54, struct venc_ioctl_msg)
-/*IOCTL params:GET: InputData - NULL, OutputData - venc_ltrmode.*/
-#define VEN_IOCTL_GET_LTRMODE \
- _IOR(VEN_IOCTLBASE_ENC, 55, struct venc_ioctl_msg)
-
-/*IOCTL params:SET: InputData - venc_ltrcount, OutputData - NULL.*/
-#define VEN_IOCTL_SET_LTRCOUNT \
- _IOW(VEN_IOCTLBASE_ENC, 56, struct venc_ioctl_msg)
-/*IOCTL params:GET: InputData - NULL, OutputData - venc_ltrcount.*/
-#define VEN_IOCTL_GET_LTRCOUNT \
- _IOR(VEN_IOCTLBASE_ENC, 57, struct venc_ioctl_msg)
-
-/*IOCTL params:SET: InputData - venc_ltrperiod, OutputData - NULL.*/
-#define VEN_IOCTL_SET_LTRPERIOD \
- _IOW(VEN_IOCTLBASE_ENC, 58, struct venc_ioctl_msg)
-/*IOCTL params:GET: InputData - NULL, OutputData - venc_ltrperiod.*/
-#define VEN_IOCTL_GET_LTRPERIOD \
- _IOR(VEN_IOCTLBASE_ENC, 59, struct venc_ioctl_msg)
-
-/*IOCTL params:SET: InputData - venc_ltruse, OutputData - NULL.*/
-#define VEN_IOCTL_SET_LTRUSE \
- _IOW(VEN_IOCTLBASE_ENC, 60, struct venc_ioctl_msg)
-/*IOCTL params:GET: InputData - NULL, OutputData - venc_ltruse.*/
-#define VEN_IOCTL_GET_LTRUSE \
- _IOR(VEN_IOCTLBASE_ENC, 61, struct venc_ioctl_msg)
-
-/*IOCTL params:SET: InputData - venc_ltrmark, OutputData - NULL.*/
-#define VEN_IOCTL_SET_LTRMARK \
- _IOW(VEN_IOCTLBASE_ENC, 62, struct venc_ioctl_msg)
-/*IOCTL params:GET: InputData - NULL, OutputData - venc_ltrmark.*/
-#define VEN_IOCTL_GET_LTRMARK \
- _IOR(VEN_IOCTLBASE_ENC, 63, struct venc_ioctl_msg)
-
-/*IOCTL params:SET: InputData - unsigned int, OutputData - NULL*/
-#define VEN_IOCTL_SET_SPS_PPS_FOR_IDR \
- _IOW(VEN_IOCTLBASE_ENC, 64, struct venc_ioctl_msg)
-
-struct venc_range {
- unsigned long max;
- unsigned long min;
- unsigned long step_size;
-};
-
-struct venc_switch {
- unsigned char status;
-};
-
-struct venc_allocatorproperty {
- unsigned long mincount;
- unsigned long maxcount;
- unsigned long actualcount;
- unsigned long datasize;
- unsigned long suffixsize;
- unsigned long alignment;
- unsigned long bufpoolid;
-};
-
-struct venc_bufferpayload {
- unsigned char *pbuffer;
- size_t sz;
- int fd;
- unsigned int offset;
- unsigned int maped_size;
- unsigned long filled_len;
-};
-
-struct venc_buffer {
- unsigned char *ptrbuffer;
- unsigned long sz;
- unsigned long len;
- unsigned long offset;
- long long timestamp;
- unsigned long flags;
- void *clientdata;
-};
-
-struct venc_basecfg {
- unsigned long input_width;
- unsigned long input_height;
- unsigned long dvs_width;
- unsigned long dvs_height;
- unsigned long codectype;
- unsigned long fps_num;
- unsigned long fps_den;
- unsigned long targetbitrate;
- unsigned long inputformat;
-};
-
-struct venc_profile {
- unsigned long profile;
-};
-struct ven_profilelevel {
- unsigned long level;
-};
-
-struct venc_sessionqp {
- unsigned long iframeqp;
- unsigned long pframqp;
-};
-
-struct venc_qprange {
- unsigned long maxqp;
- unsigned long minqp;
-};
-
-struct venc_plusptype {
- unsigned long plusptype_enable;
-};
-
-struct venc_intraperiod {
- unsigned long num_pframes;
- unsigned long num_bframes;
-};
-struct venc_seqheader {
- unsigned char *hdrbufptr;
- unsigned long bufsize;
- unsigned long hdrlen;
-};
-
-struct venc_capability {
- unsigned long codec_types;
- unsigned long maxframe_width;
- unsigned long maxframe_height;
- unsigned long maxtarget_bitrate;
- unsigned long maxframe_rate;
- unsigned long input_formats;
- unsigned char dvs;
-};
-
-struct venc_entropycfg {
- unsigned int longentropysel;
- unsigned long cabacmodel;
-};
-
-struct venc_dbcfg {
- unsigned long db_mode;
- unsigned long slicealpha_offset;
- unsigned long slicebeta_offset;
-};
-
-struct venc_intrarefresh {
- unsigned long irmode;
- unsigned long mbcount;
-};
-
-struct venc_multiclicecfg {
- unsigned long mslice_mode;
- unsigned long mslice_size;
-};
-
-struct venc_bufferflush {
- unsigned long flush_mode;
-};
-
-struct venc_ratectrlcfg {
- unsigned long rcmode;
-};
-
-struct venc_voptimingcfg {
- unsigned long voptime_resolution;
-};
-struct venc_framerate {
- unsigned long fps_denominator;
- unsigned long fps_numerator;
-};
-
-struct venc_targetbitrate {
- unsigned long target_bitrate;
-};
-
-
-struct venc_rotation {
- unsigned long rotation;
-};
-
-struct venc_timeout {
- unsigned long millisec;
-};
-
-struct venc_headerextension {
- unsigned long header_extension;
-};
-
-struct venc_msg {
- unsigned long statuscode;
- unsigned long msgcode;
- struct venc_buffer buf;
- unsigned long msgdata_size;
-};
-
-struct venc_recon_addr {
- unsigned char *pbuffer;
- unsigned long buffer_size;
- unsigned long pmem_fd;
- unsigned long offset;
-};
-
-struct venc_recon_buff_size {
- int width;
- int height;
- int size;
- int alignment;
-};
-
-struct venc_ltrmode {
- unsigned long ltr_mode;
-};
-
-struct venc_ltrcount {
- unsigned long ltr_count;
-};
-
-struct venc_ltrperiod {
- unsigned long ltr_period;
-};
-
-struct venc_ltruse {
- unsigned long ltr_id;
- unsigned long ltr_frames;
-};
-
-#endif /* _MSM_VIDC_ENC_H_ */
diff --git a/sdm710/original-kernel-headers/linux/qseecom.h b/sdm710/original-kernel-headers/linux/qseecom.h
deleted file mode 100644
index afaf0c47..00000000
--- a/sdm710/original-kernel-headers/linux/qseecom.h
+++ /dev/null
@@ -1,389 +0,0 @@
-#ifndef _QSEECOM_H_
-#define _QSEECOM_H_
-
-#include <linux/types.h>
-#include <linux/ioctl.h>
-
-#define MAX_ION_FD 4
-#define MAX_APP_NAME_SIZE 64
-#define QSEECOM_HASH_SIZE 32
-
-/* qseecom_ta_heap allocation retry delay (ms) and max attemp count */
-#define QSEECOM_TA_ION_ALLOCATE_DELAY 50
-#define QSEECOM_TA_ION_ALLOCATE_MAX_ATTEMP 20
-
-/*
- * struct qseecom_register_listener_req -
- * for register listener ioctl request
- * @listener_id - service id (shared between userspace and QSE)
- * @ifd_data_fd - ion handle
- * @virt_sb_base - shared buffer base in user space
- * @sb_size - shared buffer size
- */
-struct qseecom_register_listener_req {
- uint32_t listener_id; /* in */
- int32_t ifd_data_fd; /* in */
- void *virt_sb_base; /* in */
- uint32_t sb_size; /* in */
-};
-
-/*
- * struct qseecom_send_cmd_req - for send command ioctl request
- * @cmd_req_len - command buffer length
- * @cmd_req_buf - command buffer
- * @resp_len - response buffer length
- * @resp_buf - response buffer
- */
-struct qseecom_send_cmd_req {
- void *cmd_req_buf; /* in */
- unsigned int cmd_req_len; /* in */
- void *resp_buf; /* in/out */
- unsigned int resp_len; /* in/out */
-};
-
-/*
- * struct qseecom_ion_fd_info - ion fd handle data information
- * @fd - ion handle to some memory allocated in user space
- * @cmd_buf_offset - command buffer offset
- */
-struct qseecom_ion_fd_info {
- int32_t fd;
- uint32_t cmd_buf_offset;
-};
-/*
- * struct qseecom_send_modfd_cmd_req - for send command ioctl request
- * @cmd_req_len - command buffer length
- * @cmd_req_buf - command buffer
- * @resp_len - response buffer length
- * @resp_buf - response buffer
- * @ifd_data_fd - ion handle to memory allocated in user space
- * @cmd_buf_offset - command buffer offset
- */
-struct qseecom_send_modfd_cmd_req {
- void *cmd_req_buf; /* in */
- unsigned int cmd_req_len; /* in */
- void *resp_buf; /* in/out */
- unsigned int resp_len; /* in/out */
- struct qseecom_ion_fd_info ifd_data[MAX_ION_FD];
-};
-
-/*
- * struct qseecom_listener_send_resp_req - signal to continue the send_cmd req.
- * Used as a trigger from HLOS service to notify QSEECOM that it's done with its
- * operation and provide the response for QSEECOM can continue the incomplete
- * command execution
- * @resp_len - Length of the response
- * @resp_buf - Response buffer where the response of the cmd should go.
- */
-struct qseecom_send_resp_req {
- void *resp_buf; /* in */
- unsigned int resp_len; /* in */
-};
-
-/*
- * struct qseecom_load_img_data - for sending image length information and
- * ion file descriptor to the qseecom driver. ion file descriptor is used
- * for retrieving the ion file handle and in turn the physical address of
- * the image location.
- * @mdt_len - Length of the .mdt file in bytes.
- * @img_len - Length of the .mdt + .b00 +..+.bxx images files in bytes
- * @ion_fd - Ion file descriptor used when allocating memory.
- * @img_name - Name of the image.
- * @app_arch - Architecture of the image, i.e. 32bit or 64bit app
- */
-struct qseecom_load_img_req {
- uint32_t mdt_len; /* in */
- uint32_t img_len; /* in */
- int32_t ifd_data_fd; /* in */
- char img_name[MAX_APP_NAME_SIZE]; /* in */
- uint32_t app_arch; /* in */
- uint32_t app_id; /* out*/
-};
-
-struct qseecom_set_sb_mem_param_req {
- int32_t ifd_data_fd; /* in */
- void *virt_sb_base; /* in */
- uint32_t sb_len; /* in */
-};
-
-/*
- * struct qseecom_qseos_version_req - get qseos version
- * @qseos_version - version number
- */
-struct qseecom_qseos_version_req {
- unsigned int qseos_version; /* in */
-};
-
-/*
- * struct qseecom_qseos_app_load_query - verify if app is loaded in qsee
- * @app_name[MAX_APP_NAME_SIZE]- name of the app.
- * @app_id - app id.
- */
-struct qseecom_qseos_app_load_query {
- char app_name[MAX_APP_NAME_SIZE]; /* in */
- uint32_t app_id; /* out */
- uint32_t app_arch;
-};
-
-struct qseecom_send_svc_cmd_req {
- uint32_t cmd_id;
- void *cmd_req_buf; /* in */
- unsigned int cmd_req_len; /* in */
- void *resp_buf; /* in/out */
- unsigned int resp_len; /* in/out */
-};
-
-enum qseecom_key_management_usage_type {
- QSEOS_KM_USAGE_DISK_ENCRYPTION = 0x01,
- QSEOS_KM_USAGE_FILE_ENCRYPTION = 0x02,
- QSEOS_KM_USAGE_UFS_ICE_DISK_ENCRYPTION = 0x03,
- QSEOS_KM_USAGE_SDCC_ICE_DISK_ENCRYPTION = 0x04,
- QSEOS_KM_USAGE_MAX
-};
-
-struct qseecom_create_key_req {
- unsigned char hash32[QSEECOM_HASH_SIZE];
- enum qseecom_key_management_usage_type usage;
-};
-
-struct qseecom_wipe_key_req {
- enum qseecom_key_management_usage_type usage;
- int wipe_key_flag;/* 1->remove key from storage(alone with clear key) */
- /* 0->do not remove from storage (clear key) */
-};
-
-struct qseecom_update_key_userinfo_req {
- unsigned char current_hash32[QSEECOM_HASH_SIZE];
- unsigned char new_hash32[QSEECOM_HASH_SIZE];
- enum qseecom_key_management_usage_type usage;
-};
-
-#define SHA256_DIGEST_LENGTH (256/8)
-/*
- * struct qseecom_save_partition_hash_req
- * @partition_id - partition id.
- * @hash[SHA256_DIGEST_LENGTH] - sha256 digest.
- */
-struct qseecom_save_partition_hash_req {
- int partition_id; /* in */
- char digest[SHA256_DIGEST_LENGTH]; /* in */
-};
-
-/*
- * struct qseecom_is_es_activated_req
- * @is_activated - 1=true , 0=false
- */
-struct qseecom_is_es_activated_req {
- int is_activated; /* out */
-};
-
-/*
- * struct qseecom_mdtp_cipher_dip_req
- * @in_buf - input buffer
- * @in_buf_size - input buffer size
- * @out_buf - output buffer
- * @out_buf_size - output buffer size
- * @direction - 0=encrypt, 1=decrypt
- */
-struct qseecom_mdtp_cipher_dip_req {
- uint8_t *in_buf;
- uint32_t in_buf_size;
- uint8_t *out_buf;
- uint32_t out_buf_size;
- uint32_t direction;
-};
-
-enum qseecom_bandwidth_request_mode {
- INACTIVE = 0,
- LOW,
- MEDIUM,
- HIGH,
-};
-
-/*
- * struct qseecom_send_modfd_resp - for send command ioctl request
- * @req_len - command buffer length
- * @req_buf - command buffer
- * @ifd_data_fd - ion handle to memory allocated in user space
- * @cmd_buf_offset - command buffer offset
- */
-struct qseecom_send_modfd_listener_resp {
- void *resp_buf_ptr; /* in */
- unsigned int resp_len; /* in */
- struct qseecom_ion_fd_info ifd_data[MAX_ION_FD]; /* in */
-};
-
-struct qseecom_qteec_req {
- void *req_ptr;
- uint32_t req_len;
- void *resp_ptr;
- uint32_t resp_len;
-};
-
-struct qseecom_qteec_modfd_req {
- void *req_ptr;
- uint32_t req_len;
- void *resp_ptr;
- uint32_t resp_len;
- struct qseecom_ion_fd_info ifd_data[MAX_ION_FD];
-};
-
-struct qseecom_sg_entry {
- uint32_t phys_addr;
- uint32_t len;
-};
-
-struct qseecom_sg_entry_64bit {
- uint64_t phys_addr;
- uint32_t len;
-} __attribute__ ((packed));
-
-/*
- * sg list buf format version
- * 1: Legacy format to support only 512 SG list entries
- * 2: new format to support > 512 entries
- */
-#define QSEECOM_SG_LIST_BUF_FORMAT_VERSION_1 1
-#define QSEECOM_SG_LIST_BUF_FORMAT_VERSION_2 2
-
-struct qseecom_sg_list_buf_hdr_64bit {
- struct qseecom_sg_entry_64bit blank_entry; /* must be all 0 */
- uint32_t version; /* sg list buf format version */
- uint64_t new_buf_phys_addr; /* PA of new buffer */
- uint32_t nents_total; /* Total number of SG entries */
-} __attribute__ ((packed));
-
-#define QSEECOM_SG_LIST_BUF_HDR_SZ_64BIT \
- sizeof(struct qseecom_sg_list_buf_hdr_64bit)
-
-#define MAX_CE_PIPE_PAIR_PER_UNIT 3
-#define INVALID_CE_INFO_UNIT_NUM 0xffffffff
-
-#define CE_PIPE_PAIR_USE_TYPE_FDE 0
-#define CE_PIPE_PAIR_USE_TYPE_PFE 1
-
-struct qseecom_ce_pipe_entry {
- int valid;
- unsigned int ce_num;
- unsigned int ce_pipe_pair;
-};
-
-#define MAX_CE_INFO_HANDLE_SIZE 32
-struct qseecom_ce_info_req {
- unsigned char handle[MAX_CE_INFO_HANDLE_SIZE];
- unsigned int usage;
- unsigned int unit_num;
- unsigned int num_ce_pipe_entries;
- struct qseecom_ce_pipe_entry ce_pipe_entry[MAX_CE_PIPE_PAIR_PER_UNIT];
-};
-
-#define SG_ENTRY_SZ sizeof(struct qseecom_sg_entry)
-#define SG_ENTRY_SZ_64BIT sizeof(struct qseecom_sg_entry_64bit)
-
-struct file;
-
-
-#define QSEECOM_IOC_MAGIC 0x97
-
-
-#define QSEECOM_IOCTL_REGISTER_LISTENER_REQ \
- _IOWR(QSEECOM_IOC_MAGIC, 1, struct qseecom_register_listener_req)
-
-#define QSEECOM_IOCTL_UNREGISTER_LISTENER_REQ \
- _IO(QSEECOM_IOC_MAGIC, 2)
-
-#define QSEECOM_IOCTL_SEND_CMD_REQ \
- _IOWR(QSEECOM_IOC_MAGIC, 3, struct qseecom_send_cmd_req)
-
-#define QSEECOM_IOCTL_SEND_MODFD_CMD_REQ \
- _IOWR(QSEECOM_IOC_MAGIC, 4, struct qseecom_send_modfd_cmd_req)
-
-#define QSEECOM_IOCTL_RECEIVE_REQ \
- _IO(QSEECOM_IOC_MAGIC, 5)
-
-#define QSEECOM_IOCTL_SEND_RESP_REQ \
- _IO(QSEECOM_IOC_MAGIC, 6)
-
-#define QSEECOM_IOCTL_LOAD_APP_REQ \
- _IOWR(QSEECOM_IOC_MAGIC, 7, struct qseecom_load_img_req)
-
-#define QSEECOM_IOCTL_SET_MEM_PARAM_REQ \
- _IOWR(QSEECOM_IOC_MAGIC, 8, struct qseecom_set_sb_mem_param_req)
-
-#define QSEECOM_IOCTL_UNLOAD_APP_REQ \
- _IO(QSEECOM_IOC_MAGIC, 9)
-
-#define QSEECOM_IOCTL_GET_QSEOS_VERSION_REQ \
- _IOWR(QSEECOM_IOC_MAGIC, 10, struct qseecom_qseos_version_req)
-
-#define QSEECOM_IOCTL_PERF_ENABLE_REQ \
- _IO(QSEECOM_IOC_MAGIC, 11)
-
-#define QSEECOM_IOCTL_PERF_DISABLE_REQ \
- _IO(QSEECOM_IOC_MAGIC, 12)
-
-#define QSEECOM_IOCTL_LOAD_EXTERNAL_ELF_REQ \
- _IOWR(QSEECOM_IOC_MAGIC, 13, struct qseecom_load_img_req)
-
-#define QSEECOM_IOCTL_UNLOAD_EXTERNAL_ELF_REQ \
- _IO(QSEECOM_IOC_MAGIC, 14)
-
-#define QSEECOM_IOCTL_APP_LOADED_QUERY_REQ \
- _IOWR(QSEECOM_IOC_MAGIC, 15, struct qseecom_qseos_app_load_query)
-
-#define QSEECOM_IOCTL_SEND_CMD_SERVICE_REQ \
- _IOWR(QSEECOM_IOC_MAGIC, 16, struct qseecom_send_svc_cmd_req)
-
-#define QSEECOM_IOCTL_CREATE_KEY_REQ \
- _IOWR(QSEECOM_IOC_MAGIC, 17, struct qseecom_create_key_req)
-
-#define QSEECOM_IOCTL_WIPE_KEY_REQ \
- _IOWR(QSEECOM_IOC_MAGIC, 18, struct qseecom_wipe_key_req)
-
-#define QSEECOM_IOCTL_SAVE_PARTITION_HASH_REQ \
- _IOWR(QSEECOM_IOC_MAGIC, 19, struct qseecom_save_partition_hash_req)
-
-#define QSEECOM_IOCTL_IS_ES_ACTIVATED_REQ \
- _IOWR(QSEECOM_IOC_MAGIC, 20, struct qseecom_is_es_activated_req)
-
-#define QSEECOM_IOCTL_SEND_MODFD_RESP \
- _IOWR(QSEECOM_IOC_MAGIC, 21, struct qseecom_send_modfd_listener_resp)
-
-#define QSEECOM_IOCTL_SET_BUS_SCALING_REQ \
- _IOWR(QSEECOM_IOC_MAGIC, 23, int)
-
-#define QSEECOM_IOCTL_UPDATE_KEY_USER_INFO_REQ \
- _IOWR(QSEECOM_IOC_MAGIC, 24, struct qseecom_update_key_userinfo_req)
-
-#define QSEECOM_QTEEC_IOCTL_OPEN_SESSION_REQ \
- _IOWR(QSEECOM_IOC_MAGIC, 30, struct qseecom_qteec_modfd_req)
-
-#define QSEECOM_QTEEC_IOCTL_CLOSE_SESSION_REQ \
- _IOWR(QSEECOM_IOC_MAGIC, 31, struct qseecom_qteec_req)
-
-#define QSEECOM_QTEEC_IOCTL_INVOKE_MODFD_CMD_REQ \
- _IOWR(QSEECOM_IOC_MAGIC, 32, struct qseecom_qteec_modfd_req)
-
-#define QSEECOM_QTEEC_IOCTL_REQUEST_CANCELLATION_REQ \
- _IOWR(QSEECOM_IOC_MAGIC, 33, struct qseecom_qteec_modfd_req)
-
-#define QSEECOM_IOCTL_MDTP_CIPHER_DIP_REQ \
- _IOWR(QSEECOM_IOC_MAGIC, 34, struct qseecom_mdtp_cipher_dip_req)
-
-#define QSEECOM_IOCTL_SEND_MODFD_CMD_64_REQ \
- _IOWR(QSEECOM_IOC_MAGIC, 35, struct qseecom_send_modfd_cmd_req)
-
-#define QSEECOM_IOCTL_SEND_MODFD_RESP_64 \
- _IOWR(QSEECOM_IOC_MAGIC, 36, struct qseecom_send_modfd_listener_resp)
-
-#define QSEECOM_IOCTL_GET_CE_PIPE_INFO \
- _IOWR(QSEECOM_IOC_MAGIC, 40, struct qseecom_ce_info_req)
-
-#define QSEECOM_IOCTL_FREE_CE_PIPE_INFO \
- _IOWR(QSEECOM_IOC_MAGIC, 41, struct qseecom_ce_info_req)
-
-#define QSEECOM_IOCTL_QUERY_CE_PIPE_INFO \
- _IOWR(QSEECOM_IOC_MAGIC, 42, struct qseecom_ce_info_req)
-
-
-#endif /* _QSEECOM_H_ */
diff --git a/sdm710/original-kernel-headers/linux/rmnet_data.h b/sdm710/original-kernel-headers/linux/rmnet_data.h
deleted file mode 100644
index 48c173e4..00000000
--- a/sdm710/original-kernel-headers/linux/rmnet_data.h
+++ /dev/null
@@ -1,247 +0,0 @@
-/* Copyright (c) 2013-2017, 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.
- *
- * RMNET Data configuration specification
- */
-
-#ifndef _RMNET_DATA_H_
-#define _RMNET_DATA_H_
-
-/* Constants */
-#define RMNET_LOCAL_LOGICAL_ENDPOINT -1
-
-#define RMNET_EGRESS_FORMAT__RESERVED__ (1<<0)
-#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)
-#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)
-#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)
-
-/* Netlink API */
-#define RMNET_NETLINK_PROTO 31
-#define RMNET_MAX_STR_LEN 16
-#define RMNET_NL_DATA_MAX_LEN 64
-
-#define RMNET_NETLINK_MSG_COMMAND 0
-#define RMNET_NETLINK_MSG_RETURNCODE 1
-#define RMNET_NETLINK_MSG_RETURNDATA 2
-
-struct rmnet_nl_msg_s {
- uint16_t reserved;
- uint16_t message_type;
- uint16_t reserved2:14;
- uint16_t crd:2;
- union {
- uint16_t arg_length;
- uint16_t return_code;
- };
- union {
- uint8_t data[RMNET_NL_DATA_MAX_LEN];
- struct {
- uint8_t dev[RMNET_MAX_STR_LEN];
- uint32_t flags;
- uint16_t agg_size;
- uint16_t agg_count;
- uint8_t tail_spacing;
- } data_format;
- struct {
- uint8_t dev[RMNET_MAX_STR_LEN];
- int32_t ep_id;
- uint8_t operating_mode;
- uint8_t next_dev[RMNET_MAX_STR_LEN];
- } local_ep_config;
- struct {
- uint32_t id;
- uint8_t vnd_name[RMNET_MAX_STR_LEN];
- } vnd;
- struct {
- uint32_t id;
- uint32_t map_flow_id;
- uint32_t tc_flow_id;
- } flow_control;
- };
-};
-
-enum rmnet_netlink_message_types_e {
- /* RMNET_NETLINK_ASSOCIATE_NETWORK_DEVICE - Register RMNET data driver
- * on a particular device.
- * Args: char[] dev_name: Null terminated ASCII string, max length: 15
- * Returns: status code
- */
- RMNET_NETLINK_ASSOCIATE_NETWORK_DEVICE,
-
- /* RMNET_NETLINK_UNASSOCIATE_NETWORK_DEVICE - Unregister RMNET data
- * driver on a particular
- * device.
- * Args: char[] dev_name: Null terminated ASCII string, max length: 15
- * Returns: status code
- */
- RMNET_NETLINK_UNASSOCIATE_NETWORK_DEVICE,
-
- /* RMNET_NETLINK_GET_NETWORK_DEVICE_ASSOCIATED - Get if RMNET data
- * driver is registered on a
- * particular device.
- * Args: char[] dev_name: Null terminated ASCII string, max length: 15
- * Returns: 1 if registered, 0 if not
- */
- RMNET_NETLINK_GET_NETWORK_DEVICE_ASSOCIATED,
-
- /* RMNET_NETLINK_SET_LINK_EGRESS_DATA_FORMAT - Sets the egress data
- * format for a particular
- * link.
- * Args: uint32_t egress_flags
- * char[] dev_name: Null terminated ASCII string, max length: 15
- * Returns: status code
- */
- RMNET_NETLINK_SET_LINK_EGRESS_DATA_FORMAT,
-
- /* RMNET_NETLINK_GET_LINK_EGRESS_DATA_FORMAT - Gets the egress data
- * format for a particular
- * link.
- * Args: char[] dev_name: Null terminated ASCII string, max length: 15
- * Returns: 4-bytes data: uint32_t egress_flags
- */
- RMNET_NETLINK_GET_LINK_EGRESS_DATA_FORMAT,
-
- /* RMNET_NETLINK_SET_LINK_INGRESS_DATA_FORMAT - Sets the ingress data
- * format for a particular
- * link.
- * Args: uint32_t ingress_flags
- * char[] dev_name: Null terminated ASCII string, max length: 15
- * Returns: status code
- */
- RMNET_NETLINK_SET_LINK_INGRESS_DATA_FORMAT,
-
- /* RMNET_NETLINK_GET_LINK_INGRESS_DATA_FORMAT - Gets the ingress data
- * format for a particular
- * link.
- * Args: char[] dev_name: Null terminated ASCII string, max length: 15
- * Returns: 4-bytes data: uint32_t ingress_flags
- */
- RMNET_NETLINK_GET_LINK_INGRESS_DATA_FORMAT,
-
- /* RMNET_NETLINK_SET_LOGICAL_EP_CONFIG - Sets the logical endpoint
- * configuration for a particular
- * link.
- * Args: char[] dev_name: Null terminated ASCII string, max length: 15
- * int32_t logical_ep_id, valid values are -1 through 31
- * uint8_t rmnet_mode: one of none, vnd, bridged
- * char[] egress_dev_name: Egress device if operating in bridge mode
- * Returns: status code
- */
- RMNET_NETLINK_SET_LOGICAL_EP_CONFIG,
-
- /* RMNET_NETLINK_UNSET_LOGICAL_EP_CONFIG - Un-sets the logical endpoint
- * configuration for a particular
- * link.
- * Args: char[] dev_name: Null terminated ASCII string, max length: 15
- * int32_t logical_ep_id, valid values are -1 through 31
- * Returns: status code
- */
- RMNET_NETLINK_UNSET_LOGICAL_EP_CONFIG,
-
- /* RMNET_NETLINK_GET_LOGICAL_EP_CONFIG - Gets the logical endpoint
- * configuration for a particular
- * link.
- * Args: char[] dev_name: Null terminated ASCII string, max length: 15
- * int32_t logical_ep_id, valid values are -1 through 31
- * Returns: uint8_t rmnet_mode: one of none, vnd, bridged
- * char[] egress_dev_name: Egress device
- */
- RMNET_NETLINK_GET_LOGICAL_EP_CONFIG,
-
- /* RMNET_NETLINK_NEW_VND - Creates a new virtual network device node
- * Args: int32_t node number
- * Returns: status code
- */
- RMNET_NETLINK_NEW_VND,
-
- /* RMNET_NETLINK_NEW_VND_WITH_PREFIX - Creates a new virtual network
- * device node with the specified
- * prefix for the device name
- * Args: int32_t node number
- * char[] vnd_name - Use as prefix
- * Returns: status code
- */
- RMNET_NETLINK_NEW_VND_WITH_PREFIX,
-
- /* RMNET_NETLINK_GET_VND_NAME - Gets the string name of a VND from ID
- * Args: int32_t node number
- * Returns: char[] vnd_name
- */
- RMNET_NETLINK_GET_VND_NAME,
-
- /* RMNET_NETLINK_FREE_VND - Removes virtual network device node
- * Args: int32_t node number
- * Returns: status code
- */
- RMNET_NETLINK_FREE_VND,
-
- /* RMNET_NETLINK_ADD_VND_TC_FLOW - Add flow control handle on VND
- * Args: int32_t node number
- * uint32_t MAP Flow Handle
- * uint32_t TC Flow Handle
- * Returns: status code
- */
- RMNET_NETLINK_ADD_VND_TC_FLOW,
-
- /* RMNET_NETLINK_DEL_VND_TC_FLOW - Removes flow control handle on VND
- * Args: int32_t node number
- * uint32_t MAP Flow Handle
- * Returns: status code
- */
- RMNET_NETLINK_DEL_VND_TC_FLOW,
-
- /*
- * RMNET_NETLINK_NEW_VND_WITH_NAME - Creates a new virtual network
- * device node with the specified
- * device name
- * Args: int32_t node number
- * char[] vnd_name - Use as name
- * Returns: status code
- */
- RMNET_NETLINK_NEW_VND_WITH_NAME
-};
-#define RMNET_NETLINK_NEW_VND_WITH_NAME RMNET_NETLINK_NEW_VND_WITH_NAME
-
-enum rmnet_config_endpoint_modes_e {
- /* Pass the frame up the stack with no modifications to skb->dev */
- RMNET_EPMODE_NONE,
- /* Replace skb->dev to a virtual rmnet device and pass up the stack */
- RMNET_EPMODE_VND,
- /* Pass the frame directly to another device with dev_queue_xmit(). */
- RMNET_EPMODE_BRIDGE,
- /* Must be the last item in the list */
- RMNET_EPMODE_LENGTH
-};
-
-enum rmnet_config_return_codes_e {
- RMNET_CONFIG_OK,
- RMNET_CONFIG_UNKNOWN_MESSAGE,
- RMNET_CONFIG_UNKNOWN_ERROR,
- RMNET_CONFIG_NOMEM,
- RMNET_CONFIG_DEVICE_IN_USE,
- RMNET_CONFIG_INVALID_REQUEST,
- RMNET_CONFIG_NO_SUCH_DEVICE,
- RMNET_CONFIG_BAD_ARGUMENTS,
- RMNET_CONFIG_BAD_EGRESS_DEVICE,
- RMNET_CONFIG_TC_HANDLE_FULL
-};
-
-#endif /* _RMNET_DATA_H_ */
diff --git a/sdm710/original-kernel-headers/linux/rmnet_ipa_fd_ioctl.h b/sdm710/original-kernel-headers/linux/rmnet_ipa_fd_ioctl.h
deleted file mode 100644
index 2992e2c7..00000000
--- a/sdm710/original-kernel-headers/linux/rmnet_ipa_fd_ioctl.h
+++ /dev/null
@@ -1,261 +0,0 @@
-/* Copyright (c) 2013-2017, 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 _RMNET_IPA_FD_IOCTL_H
-#define _RMNET_IPA_FD_IOCTL_H
-
-#include <linux/ioctl.h>
-#include <linux/ipa_qmi_service_v01.h>
-#include <linux/msm_ipa.h>
-
-/**
- * unique magic number of the IPA_WAN device
- */
-#define WAN_IOC_MAGIC 0x69
-
-#define WAN_IOCTL_ADD_FLT_RULE 0
-#define WAN_IOCTL_ADD_FLT_INDEX 1
-#define WAN_IOCTL_VOTE_FOR_BW_MBPS 2
-#define WAN_IOCTL_POLL_TETHERING_STATS 3
-#define WAN_IOCTL_SET_DATA_QUOTA 4
-#define WAN_IOCTL_SET_TETHER_CLIENT_PIPE 5
-#define WAN_IOCTL_QUERY_TETHER_STATS 6
-#define WAN_IOCTL_RESET_TETHER_STATS 7
-#define WAN_IOCTL_QUERY_DL_FILTER_STATS 8
-#define WAN_IOCTL_ADD_FLT_RULE_EX 9
-#define WAN_IOCTL_QUERY_TETHER_STATS_ALL 10
-#define WAN_IOCTL_NOTIFY_WAN_STATE 11
-#define WAN_IOCTL_ADD_UL_FLT_RULE 12
-#define WAN_IOCTL_ENABLE_PER_CLIENT_STATS 13
-#define WAN_IOCTL_QUERY_PER_CLIENT_STATS 14
-#define WAN_IOCTL_SET_LAN_CLIENT_INFO 15
-#define WAN_IOCTL_CLEAR_LAN_CLIENT_INFO 16
-#define WAN_IOCTL_SEND_LAN_CLIENT_MSG 17
-
-/* User space may not have this defined. */
-#ifndef IFNAMSIZ
-#define IFNAMSIZ 16
-#endif
-
-/**
- * struct wan_ioctl_poll_tethering_stats - structure used for
- * WAN_IOCTL_POLL_TETHERING_STATS IOCTL.
- *
- * @polling_interval_secs: Polling interval in seconds.
- * @reset_stats: Indicate whether to reset the stats (use 1) or not.
- *
- * The structure to be used by the user space in order to request for the
- * tethering stats to be polled. Setting the interval to 0 indicates to stop
- * the polling process.
- */
-struct wan_ioctl_poll_tethering_stats {
- uint64_t polling_interval_secs;
- uint8_t reset_stats;
-};
-
-/**
- * struct wan_ioctl_set_data_quota - structure used for
- * WAN_IOCTL_SET_DATA_QUOTA IOCTL.
- *
- * @interface_name: Name of the interface on which to set the quota.
- * @quota_mbytes: Quota (in Mbytes) for the above interface.
- * @set_quota: Indicate whether to set the quota (use 1) or
- * unset the quota.
- *
- * The structure to be used by the user space in order to request
- * a quota to be set on a specific interface (by specifying its name).
- */
-struct wan_ioctl_set_data_quota {
- char interface_name[IFNAMSIZ];
- uint64_t quota_mbytes;
- uint8_t set_quota;
-};
-
-struct wan_ioctl_set_tether_client_pipe {
- /* enum of tether interface */
- enum ipacm_client_enum ipa_client;
- uint8_t reset_client;
- uint32_t ul_src_pipe_len;
- uint32_t ul_src_pipe_list[QMI_IPA_MAX_PIPES_V01];
- uint32_t dl_dst_pipe_len;
- uint32_t dl_dst_pipe_list[QMI_IPA_MAX_PIPES_V01];
-};
-
-struct wan_ioctl_query_tether_stats {
- /* Name of the upstream interface */
- char upstreamIface[IFNAMSIZ];
- /* Name of the tethered interface */
- char tetherIface[IFNAMSIZ];
- /* enum of tether interface */
- enum ipacm_client_enum ipa_client;
- uint64_t ipv4_tx_packets;
- uint64_t ipv4_tx_bytes;
- uint64_t ipv4_rx_packets;
- uint64_t ipv4_rx_bytes;
- uint64_t ipv6_tx_packets;
- uint64_t ipv6_tx_bytes;
- uint64_t ipv6_rx_packets;
- uint64_t ipv6_rx_bytes;
-};
-
-struct wan_ioctl_query_tether_stats_all {
- /* Name of the upstream interface */
- char upstreamIface[IFNAMSIZ];
- /* enum of tether interface */
- enum ipacm_client_enum ipa_client;
- uint8_t reset_stats;
- uint64_t tx_bytes;
- uint64_t rx_bytes;
-};
-
-struct wan_ioctl_reset_tether_stats {
- /* Name of the upstream interface, not support now */
- char upstreamIface[IFNAMSIZ];
- /* Indicate whether to reset the stats (use 1) or not */
- uint8_t reset_stats;
-};
-
-struct wan_ioctl_query_dl_filter_stats {
- /* Indicate whether to reset the filter stats (use 1) or not*/
- uint8_t reset_stats;
- /* Modem response QMI */
- struct ipa_get_data_stats_resp_msg_v01 stats_resp;
- /* provide right index to 1st firewall rule */
- uint32_t index;
-};
-
-struct wan_ioctl_notify_wan_state {
- uint8_t up;
-};
-struct wan_ioctl_send_lan_client_msg {
- /* Lan client info. */
- struct ipa_lan_client_msg lan_client;
- /* Event to indicate whether client is
- * connected or disconnected.
- */
- enum ipa_per_client_stats_event client_event;
-};
-
-struct wan_ioctl_lan_client_info {
- /* Device type of the client. */
- enum ipacm_per_client_device_type device_type;
- /* MAC Address of the client. */
- uint8_t mac[IPA_MAC_ADDR_SIZE];
- /* Init client. */
- uint8_t client_init;
- /* Client Index */
- int8_t client_idx;
- /* Header length of the client. */
- uint8_t hdr_len;
- /* Source pipe of the lan client. */
- enum ipa_client_type ul_src_pipe;
-};
-
-struct wan_ioctl_per_client_info {
- /* MAC Address of the client. */
- uint8_t mac[IPA_MAC_ADDR_SIZE];
- /* Ipv4 UL traffic bytes. */
- uint64_t ipv4_tx_bytes;
- /* Ipv4 DL traffic bytes. */
- uint64_t ipv4_rx_bytes;
- /* Ipv6 UL traffic bytes. */
- uint64_t ipv6_tx_bytes;
- /* Ipv6 DL traffic bytes. */
- uint64_t ipv6_rx_bytes;
-};
-
-struct wan_ioctl_query_per_client_stats {
- /* Device type of the client. */
- enum ipacm_per_client_device_type device_type;
- /* Indicate whether to reset the stats (use 1) or not */
- uint8_t reset_stats;
- /* Indicates whether client is disconnected. */
- uint8_t disconnect_clnt;
- /* Number of clients. */
- uint8_t num_clients;
- /* Client information. */
- struct wan_ioctl_per_client_info
- client_info[IPA_MAX_NUM_HW_PATH_CLIENTS];
-};
-
-#define WAN_IOC_ADD_FLT_RULE _IOWR(WAN_IOC_MAGIC, \
- WAN_IOCTL_ADD_FLT_RULE, \
- struct ipa_install_fltr_rule_req_msg_v01 *)
-
-#define WAN_IOC_ADD_FLT_RULE_INDEX _IOWR(WAN_IOC_MAGIC, \
- WAN_IOCTL_ADD_FLT_INDEX, \
- struct ipa_fltr_installed_notif_req_msg_v01 *)
-
-#define WAN_IOC_VOTE_FOR_BW_MBPS _IOWR(WAN_IOC_MAGIC, \
- WAN_IOCTL_VOTE_FOR_BW_MBPS, \
- uint32_t *)
-
-#define WAN_IOC_POLL_TETHERING_STATS _IOWR(WAN_IOC_MAGIC, \
- WAN_IOCTL_POLL_TETHERING_STATS, \
- struct wan_ioctl_poll_tethering_stats *)
-
-#define WAN_IOC_SET_DATA_QUOTA _IOWR(WAN_IOC_MAGIC, \
- WAN_IOCTL_SET_DATA_QUOTA, \
- struct wan_ioctl_set_data_quota *)
-
-#define WAN_IOC_SET_TETHER_CLIENT_PIPE _IOWR(WAN_IOC_MAGIC, \
- WAN_IOCTL_SET_TETHER_CLIENT_PIPE, \
- struct wan_ioctl_set_tether_client_pipe *)
-
-#define WAN_IOC_QUERY_TETHER_STATS _IOWR(WAN_IOC_MAGIC, \
- WAN_IOCTL_QUERY_TETHER_STATS, \
- struct wan_ioctl_query_tether_stats *)
-
-#define WAN_IOC_RESET_TETHER_STATS _IOWR(WAN_IOC_MAGIC, \
- WAN_IOCTL_RESET_TETHER_STATS, \
- struct wan_ioctl_reset_tether_stats *)
-
-#define WAN_IOC_QUERY_DL_FILTER_STATS _IOWR(WAN_IOC_MAGIC, \
- WAN_IOCTL_QUERY_DL_FILTER_STATS, \
- struct wan_ioctl_query_dl_filter_stats *)
-
-#define WAN_IOC_ADD_FLT_RULE_EX _IOWR(WAN_IOC_MAGIC, \
- WAN_IOCTL_ADD_FLT_RULE_EX, \
- struct ipa_install_fltr_rule_req_ex_msg_v01 *)
-
-#define WAN_IOC_QUERY_TETHER_STATS_ALL _IOWR(WAN_IOC_MAGIC, \
- WAN_IOCTL_QUERY_TETHER_STATS_ALL, \
- struct wan_ioctl_query_tether_stats_all *)
-
-#define WAN_IOC_NOTIFY_WAN_STATE _IOWR(WAN_IOC_MAGIC, \
- WAN_IOCTL_NOTIFY_WAN_STATE, \
- struct wan_ioctl_notify_wan_state *)
-
-#define WAN_IOC_ADD_UL_FLT_RULE _IOWR(WAN_IOC_MAGIC, \
- WAN_IOCTL_ADD_UL_FLT_RULE, \
- struct ipa_configure_ul_firewall_rules_req_msg_v01 *)
-
-#define WAN_IOC_ENABLE_PER_CLIENT_STATS _IOWR(WAN_IOC_MAGIC, \
- WAN_IOCTL_ENABLE_PER_CLIENT_STATS, \
- bool *)
-
-#define WAN_IOC_QUERY_PER_CLIENT_STATS _IOWR(WAN_IOC_MAGIC, \
- WAN_IOCTL_QUERY_PER_CLIENT_STATS, \
- struct wan_ioctl_query_per_client_stats *)
-
-#define WAN_IOC_SET_LAN_CLIENT_INFO _IOWR(WAN_IOC_MAGIC, \
- WAN_IOCTL_SET_LAN_CLIENT_INFO, \
- struct wan_ioctl_lan_client_info *)
-
-#define WAN_IOC_SEND_LAN_CLIENT_MSG _IOWR(WAN_IOC_MAGIC, \
- WAN_IOCTL_SEND_LAN_CLIENT_MSG, \
- struct wan_ioctl_send_lan_client_msg *)
-
-#define WAN_IOC_CLEAR_LAN_CLIENT_INFO _IOWR(WAN_IOC_MAGIC, \
- WAN_IOCTL_CLEAR_LAN_CLIENT_INFO, \
- struct wan_ioctl_lan_client_info *)
-#endif /* _RMNET_IPA_FD_IOCTL_H */
diff --git a/sdm710/original-kernel-headers/linux/sockios.h b/sdm710/original-kernel-headers/linux/sockios.h
deleted file mode 100644
index 8e7890b2..00000000
--- a/sdm710/original-kernel-headers/linux/sockios.h
+++ /dev/null
@@ -1,149 +0,0 @@
-/*
- * INET An implementation of the TCP/IP protocol suite for the LINUX
- * operating system. INET is implemented using the BSD Socket
- * interface as the means of communication with the user level.
- *
- * Definitions of the socket-level I/O control calls.
- *
- * Version: @(#)sockios.h 1.0.2 03/09/93
- *
- * Authors: Ross Biro
- * Fred N. van Kempen, <waltje@uWalt.NL.Mugnet.ORG>
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version
- * 2 of the License, or (at your option) any later version.
- */
-#ifndef _LINUX_SOCKIOS_H
-#define _LINUX_SOCKIOS_H
-
-#include <asm/sockios.h>
-
-/* Linux-specific socket ioctls */
-#define SIOCINQ FIONREAD
-#define SIOCOUTQ TIOCOUTQ /* output queue size (not sent + not acked) */
-
-/* Routing table calls. */
-#define SIOCADDRT 0x890B /* add routing table entry */
-#define SIOCDELRT 0x890C /* delete routing table entry */
-#define SIOCRTMSG 0x890D /* unused */
-
-/* Socket configuration controls. */
-#define SIOCGIFNAME 0x8910 /* get iface name */
-#define SIOCSIFLINK 0x8911 /* set iface channel */
-#define SIOCGIFCONF 0x8912 /* get iface list */
-#define SIOCGIFFLAGS 0x8913 /* get flags */
-#define SIOCSIFFLAGS 0x8914 /* set flags */
-#define SIOCGIFADDR 0x8915 /* get PA address */
-#define SIOCSIFADDR 0x8916 /* set PA address */
-#define SIOCGIFDSTADDR 0x8917 /* get remote PA address */
-#define SIOCSIFDSTADDR 0x8918 /* set remote PA address */
-#define SIOCGIFBRDADDR 0x8919 /* get broadcast PA address */
-#define SIOCSIFBRDADDR 0x891a /* set broadcast PA address */
-#define SIOCGIFNETMASK 0x891b /* get network PA mask */
-#define SIOCSIFNETMASK 0x891c /* set network PA mask */
-#define SIOCGIFMETRIC 0x891d /* get metric */
-#define SIOCSIFMETRIC 0x891e /* set metric */
-#define SIOCGIFMEM 0x891f /* get memory address (BSD) */
-#define SIOCSIFMEM 0x8920 /* set memory address (BSD) */
-#define SIOCGIFMTU 0x8921 /* get MTU size */
-#define SIOCSIFMTU 0x8922 /* set MTU size */
-#define SIOCSIFNAME 0x8923 /* set interface name */
-#define SIOCSIFHWADDR 0x8924 /* set hardware address */
-#define SIOCGIFENCAP 0x8925 /* get/set encapsulations */
-#define SIOCSIFENCAP 0x8926
-#define SIOCGIFHWADDR 0x8927 /* Get hardware address */
-#define SIOCGIFSLAVE 0x8929 /* Driver slaving support */
-#define SIOCSIFSLAVE 0x8930
-#define SIOCADDMULTI 0x8931 /* Multicast address lists */
-#define SIOCDELMULTI 0x8932
-#define SIOCGIFINDEX 0x8933 /* name -> if_index mapping */
-#define SIOGIFINDEX SIOCGIFINDEX /* misprint compatibility :-) */
-#define SIOCSIFPFLAGS 0x8934 /* set/get extended flags set */
-#define SIOCGIFPFLAGS 0x8935
-#define SIOCDIFADDR 0x8936 /* delete PA address */
-#define SIOCSIFHWBROADCAST 0x8937 /* set hardware broadcast addr */
-#define SIOCGIFCOUNT 0x8938 /* get number of devices */
-
-#define SIOCGIFBR 0x8940 /* Bridging support */
-#define SIOCSIFBR 0x8941 /* Set bridging options */
-
-#define SIOCGIFTXQLEN 0x8942 /* Get the tx queue length */
-#define SIOCSIFTXQLEN 0x8943 /* Set the tx queue length */
-
-/* SIOCGIFDIVERT was: 0x8944 Frame diversion support */
-/* SIOCSIFDIVERT was: 0x8945 Set frame diversion options */
-
-#define SIOCETHTOOL 0x8946 /* Ethtool interface */
-
-#define SIOCGMIIPHY 0x8947 /* Get address of MII PHY in use. */
-#define SIOCGMIIREG 0x8948 /* Read MII PHY register. */
-#define SIOCSMIIREG 0x8949 /* Write MII PHY register. */
-
-#define SIOCWANDEV 0x894A /* get/set netdev parameters */
-
-#define SIOCOUTQNSD 0x894B /* output queue size (not sent only) */
-
-/* ARP cache control calls. */
- /* 0x8950 - 0x8952 * obsolete calls, don't re-use */
-#define SIOCDARP 0x8953 /* delete ARP table entry */
-#define SIOCGARP 0x8954 /* get ARP table entry */
-#define SIOCSARP 0x8955 /* set ARP table entry */
-
-/* RARP cache control calls. */
-#define SIOCDRARP 0x8960 /* delete RARP table entry */
-#define SIOCGRARP 0x8961 /* get RARP table entry */
-#define SIOCSRARP 0x8962 /* set RARP table entry */
-
-/* Driver configuration calls */
-
-#define SIOCGIFMAP 0x8970 /* Get device parameters */
-#define SIOCSIFMAP 0x8971 /* Set device parameters */
-
-/* DLCI configuration calls */
-
-#define SIOCADDDLCI 0x8980 /* Create new DLCI device */
-#define SIOCDELDLCI 0x8981 /* Delete DLCI device */
-
-#define SIOCGIFVLAN 0x8982 /* 802.1Q VLAN support */
-#define SIOCSIFVLAN 0x8983 /* Set 802.1Q VLAN options */
-
-/* bonding calls */
-
-#define SIOCBONDENSLAVE 0x8990 /* enslave a device to the bond */
-#define SIOCBONDRELEASE 0x8991 /* release a slave from the bond*/
-#define SIOCBONDSETHWADDR 0x8992 /* set the hw addr of the bond */
-#define SIOCBONDSLAVEINFOQUERY 0x8993 /* rtn info about slave state */
-#define SIOCBONDINFOQUERY 0x8994 /* rtn info about bond state */
-#define SIOCBONDCHANGEACTIVE 0x8995 /* update to a new active slave */
-
-/* bridge calls */
-#define SIOCBRADDBR 0x89a0 /* create new bridge device */
-#define SIOCBRDELBR 0x89a1 /* remove bridge device */
-#define SIOCBRADDIF 0x89a2 /* add interface to bridge */
-#define SIOCBRDELIF 0x89a3 /* remove interface from bridge */
-
-/* hardware time stamping: parameters in linux/net_tstamp.h */
-#define SIOCSHWTSTAMP 0x89b0 /* set and get config */
-#define SIOCGHWTSTAMP 0x89b1 /* get config */
-
-/* Device private ioctl calls */
-
-/*
- * These 16 ioctls are available to devices via the do_ioctl() device
- * vector. Each device should include this file and redefine these names
- * as their own. Because these are device dependent it is a good idea
- * _NOT_ to issue them to random objects and hope.
- *
- * THESE IOCTLS ARE _DEPRECATED_ AND WILL DISAPPEAR IN 2.5.X -DaveM
- */
-
-#define SIOCDEVPRIVATE 0x89F0 /* to 89FF */
-
-/*
- * These 16 ioctl calls are protocol private
- */
-
-#define SIOCPROTOPRIVATE 0x89E0 /* to 89EF */
-#endif /* _LINUX_SOCKIOS_H */
diff --git a/sdm710/original-kernel-headers/linux/spcom.h b/sdm710/original-kernel-headers/linux/spcom.h
deleted file mode 100644
index 5a438db1..00000000
--- a/sdm710/original-kernel-headers/linux/spcom.h
+++ /dev/null
@@ -1,119 +0,0 @@
-/* Copyright (c) 2015-2017, 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 _SPCOM_H_
-#define _SPCOM_H_
-
-#include <linux/types.h> /* uint32_t, bool */
-#ifndef BIT
- #define BIT(x) (1 << x)
-#endif
-#ifndef PAGE_SIZE
- #define PAGE_SIZE 4096
-#endif
-
-/**
- * @brief - Secure Processor Communication interface to user space spcomlib.
- *
- * Sending data and control commands by write() file operation.
- * Receiving data by read() file operation.
- * Getting the next request size by read() file operation,
- * with special size SPCOM_GET_NEXT_REQUEST_SIZE.
- */
-
-/*
- * Maximum number of channel between Secure Processor and HLOS.
- * including predefined channels, like "sp_kernel".
- */
-#define SPCOM_MAX_CHANNELS 0x20
-
-/* Maximum size (including null) for channel names */
-#define SPCOM_CHANNEL_NAME_SIZE 32
-
-/*
- * file read(fd, buf, size) with this size,
- * hints the kernel that user space wants to read the next-req-size.
- * This size is bigger than both SPCOM_MAX_REQUEST_SIZE and
- * SPCOM_MAX_RESPONSE_SIZE , so it is not a valid data size.
- */
-#define SPCOM_GET_NEXT_REQUEST_SIZE (PAGE_SIZE-1)
-
-/* Command Id between spcomlib and spcom driver, on write() */
-enum spcom_cmd_id {
- SPCOM_CMD_LOAD_APP = 0x4C4F4144, /* "LOAD" = 0x4C4F4144 */
- SPCOM_CMD_RESET_SP = 0x52455354, /* "REST" = 0x52455354 */
- SPCOM_CMD_SEND = 0x53454E44, /* "SEND" = 0x53454E44 */
- SPCOM_CMD_SEND_MODIFIED = 0x534E444D, /* "SNDM" = 0x534E444D */
- SPCOM_CMD_LOCK_ION_BUF = 0x4C4F434B, /* "LOCK" = 0x4C4F434B */
- SPCOM_CMD_UNLOCK_ION_BUF = 0x554C434B, /* "ULCK" = 0x4C4F434B */
- SPCOM_CMD_FSSR = 0x46535352, /* "FSSR" = 0x46535352 */
- SPCOM_CMD_CREATE_CHANNEL = 0x43524554, /* "CRET" = 0x43524554 */
-};
-
-/*
- * @note: Event types that are always implicitly polled:
- * POLLERR=0x08 | POLLHUP=0x10 | POLLNVAL=0x20
- * so bits 3,4,5 can't be used
- */
-enum spcom_poll_events {
- SPCOM_POLL_LINK_STATE = BIT(1),
- SPCOM_POLL_CH_CONNECT = BIT(2),
- SPCOM_POLL_READY_FLAG = BIT(14), /* output */
- SPCOM_POLL_WAIT_FLAG = BIT(15), /* if set , wait for the event */
-};
-
-/* Common Command structure between User Space and spcom driver, on write() */
-struct spcom_user_command {
- enum spcom_cmd_id cmd_id;
- uint32_t arg;
-} __attribute__((packed));
-
-/* Command structure between User Space and spcom driver, on write() */
-struct spcom_send_command {
- enum spcom_cmd_id cmd_id;
- uint32_t timeout_msec;
- uint32_t buf_size;
- char buf[0]; /* Variable buffer size - must be last field */
-} __attribute__((packed));
-
-/* Command structure between userspace spcomlib and spcom driver, on write() */
-struct spcom_user_create_channel_command {
- enum spcom_cmd_id cmd_id;
- char ch_name[SPCOM_CHANNEL_NAME_SIZE];
-} __attribute__((packed));
-
-/* maximum ION buf for send-modfied-command */
-#define SPCOM_MAX_ION_BUF 4
-
-struct spcom_ion_info {
- int32_t fd; /* ION buffer File Descriptor, set -1 for invalid fd */
- uint32_t buf_offset; /* virtual address offset in request/response */
-};
-
-/* Pass this FD to unlock all ION buffer for the specific channel */
-#define SPCOM_ION_FD_UNLOCK_ALL 0xFFFF
-
-struct spcom_ion_handle {
- int32_t fd; /* File Descriptor associated with the buffer */
-};
-
-/* Command structure between User Space and spcom driver, on write() */
-struct spcom_user_send_modified_command {
- enum spcom_cmd_id cmd_id;
- struct spcom_ion_info ion_info[SPCOM_MAX_ION_BUF];
- uint32_t timeout_msec;
- uint32_t buf_size;
- char buf[0]; /* Variable buffer size - must be last field */
-} __attribute__((packed));
-
-
-#endif /* _SPCOM_H_ */
diff --git a/sdm710/original-kernel-headers/linux/v4l2-controls.h b/sdm710/original-kernel-headers/linux/v4l2-controls.h
deleted file mode 100644
index d14cd8fa..00000000
--- a/sdm710/original-kernel-headers/linux/v4l2-controls.h
+++ /dev/null
@@ -1,1696 +0,0 @@
-/*
- * Video for Linux Two controls header file
- *
- * Copyright (C) 1999-2012 the contributors
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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.
- *
- * Alternatively you can redistribute this file under the terms of the
- * BSD license as stated below:
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- * 3. The names of its contributors may not be used to endorse or promote
- * products derived from this software without specific prior written
- * permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
- * TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
- * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
- * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * The contents of this header was split off from videodev2.h. All control
- * definitions should be added to this header, which is included by
- * videodev2.h.
- */
-
-#ifndef __LINUX_V4L2_CONTROLS_H
-#define __LINUX_V4L2_CONTROLS_H
-
-/* Control classes */
-#define V4L2_CTRL_CLASS_USER 0x00980000 /* Old-style 'user' controls */
-#define V4L2_CTRL_CLASS_MPEG 0x00990000 /* MPEG-compression controls */
-#define V4L2_CTRL_CLASS_CAMERA 0x009a0000 /* Camera class controls */
-#define V4L2_CTRL_CLASS_FM_TX 0x009b0000 /* FM Modulator controls */
-#define V4L2_CTRL_CLASS_FLASH 0x009c0000 /* Camera flash controls */
-#define V4L2_CTRL_CLASS_JPEG 0x009d0000 /* JPEG-compression controls */
-#define V4L2_CTRL_CLASS_IMAGE_SOURCE 0x009e0000 /* Image source controls */
-#define V4L2_CTRL_CLASS_IMAGE_PROC 0x009f0000 /* Image processing controls */
-#define V4L2_CTRL_CLASS_DV 0x00a00000 /* Digital Video controls */
-#define V4L2_CTRL_CLASS_FM_RX 0x00a10000 /* FM Receiver controls */
-#define V4L2_CTRL_CLASS_RF_TUNER 0x00a20000 /* RF tuner controls */
-#define V4L2_CTRL_CLASS_DETECT 0x00a30000 /* Detection controls */
-
-/* User-class control IDs */
-
-#define V4L2_CID_BASE (V4L2_CTRL_CLASS_USER | 0x900)
-#define V4L2_CID_USER_BASE V4L2_CID_BASE
-#define V4L2_CID_USER_CLASS (V4L2_CTRL_CLASS_USER | 1)
-#define V4L2_CID_BRIGHTNESS (V4L2_CID_BASE+0)
-#define V4L2_CID_CONTRAST (V4L2_CID_BASE+1)
-#define V4L2_CID_SATURATION (V4L2_CID_BASE+2)
-#define V4L2_CID_HUE (V4L2_CID_BASE+3)
-#define V4L2_CID_AUDIO_VOLUME (V4L2_CID_BASE+5)
-#define V4L2_CID_AUDIO_BALANCE (V4L2_CID_BASE+6)
-#define V4L2_CID_AUDIO_BASS (V4L2_CID_BASE+7)
-#define V4L2_CID_AUDIO_TREBLE (V4L2_CID_BASE+8)
-#define V4L2_CID_AUDIO_MUTE (V4L2_CID_BASE+9)
-#define V4L2_CID_AUDIO_LOUDNESS (V4L2_CID_BASE+10)
-#define V4L2_CID_BLACK_LEVEL (V4L2_CID_BASE+11) /* Deprecated */
-#define V4L2_CID_AUTO_WHITE_BALANCE (V4L2_CID_BASE+12)
-#define V4L2_CID_DO_WHITE_BALANCE (V4L2_CID_BASE+13)
-#define V4L2_CID_RED_BALANCE (V4L2_CID_BASE+14)
-#define V4L2_CID_BLUE_BALANCE (V4L2_CID_BASE+15)
-#define V4L2_CID_GAMMA (V4L2_CID_BASE+16)
-#define V4L2_CID_WHITENESS (V4L2_CID_GAMMA) /* Deprecated */
-#define V4L2_CID_EXPOSURE (V4L2_CID_BASE+17)
-#define V4L2_CID_AUTOGAIN (V4L2_CID_BASE+18)
-#define V4L2_CID_GAIN (V4L2_CID_BASE+19)
-#define V4L2_CID_HFLIP (V4L2_CID_BASE+20)
-#define V4L2_CID_VFLIP (V4L2_CID_BASE+21)
-
-#define V4L2_CID_POWER_LINE_FREQUENCY (V4L2_CID_BASE+24)
-enum v4l2_power_line_frequency {
- V4L2_CID_POWER_LINE_FREQUENCY_DISABLED = 0,
- V4L2_CID_POWER_LINE_FREQUENCY_50HZ = 1,
- V4L2_CID_POWER_LINE_FREQUENCY_60HZ = 2,
- V4L2_CID_POWER_LINE_FREQUENCY_AUTO = 3,
-};
-#define V4L2_CID_HUE_AUTO (V4L2_CID_BASE+25)
-#define V4L2_CID_WHITE_BALANCE_TEMPERATURE (V4L2_CID_BASE+26)
-#define V4L2_CID_SHARPNESS (V4L2_CID_BASE+27)
-#define V4L2_CID_BACKLIGHT_COMPENSATION (V4L2_CID_BASE+28)
-#define V4L2_CID_CHROMA_AGC (V4L2_CID_BASE+29)
-#define V4L2_CID_COLOR_KILLER (V4L2_CID_BASE+30)
-#define V4L2_CID_COLORFX (V4L2_CID_BASE+31)
-enum v4l2_colorfx {
- V4L2_COLORFX_NONE = 0,
- V4L2_COLORFX_BW = 1,
- V4L2_COLORFX_SEPIA = 2,
- V4L2_COLORFX_NEGATIVE = 3,
- V4L2_COLORFX_EMBOSS = 4,
- V4L2_COLORFX_SKETCH = 5,
- V4L2_COLORFX_SKY_BLUE = 6,
- V4L2_COLORFX_GRASS_GREEN = 7,
- V4L2_COLORFX_SKIN_WHITEN = 8,
- V4L2_COLORFX_VIVID = 9,
- V4L2_COLORFX_AQUA = 10,
- V4L2_COLORFX_ART_FREEZE = 11,
- V4L2_COLORFX_SILHOUETTE = 12,
- V4L2_COLORFX_SOLARIZATION = 13,
- V4L2_COLORFX_ANTIQUE = 14,
- V4L2_COLORFX_SET_CBCR = 15,
-};
-#define V4L2_CID_AUTOBRIGHTNESS (V4L2_CID_BASE+32)
-#define V4L2_CID_BAND_STOP_FILTER (V4L2_CID_BASE+33)
-
-#define V4L2_CID_ROTATE (V4L2_CID_BASE+34)
-#define V4L2_CID_BG_COLOR (V4L2_CID_BASE+35)
-
-#define V4L2_CID_CHROMA_GAIN (V4L2_CID_BASE+36)
-
-#define V4L2_CID_ILLUMINATORS_1 (V4L2_CID_BASE+37)
-#define V4L2_CID_ILLUMINATORS_2 (V4L2_CID_BASE+38)
-
-#define V4L2_CID_MIN_BUFFERS_FOR_CAPTURE (V4L2_CID_BASE+39)
-#define V4L2_CID_MIN_BUFFERS_FOR_OUTPUT (V4L2_CID_BASE+40)
-
-#define V4L2_CID_ALPHA_COMPONENT (V4L2_CID_BASE+41)
-#define V4L2_CID_COLORFX_CBCR (V4L2_CID_BASE+42)
-
-/* last CID + 1 */
-#define V4L2_CID_LASTP1 (V4L2_CID_BASE+43)
-
-/* USER-class private control IDs */
-
-/* The base for the meye driver controls. See linux/meye.h for the list
- * of controls. We reserve 16 controls for this driver. */
-#define V4L2_CID_USER_MEYE_BASE (V4L2_CID_USER_BASE + 0x1000)
-
-/* The base for the bttv driver controls.
- * We reserve 32 controls for this driver. */
-#define V4L2_CID_USER_BTTV_BASE (V4L2_CID_USER_BASE + 0x1010)
-
-
-/* The base for the s2255 driver controls.
- * We reserve 16 controls for this driver. */
-#define V4L2_CID_USER_S2255_BASE (V4L2_CID_USER_BASE + 0x1030)
-
-/*
- * The base for the si476x driver controls. See include/media/drv-intf/si476x.h
- * for the list of controls. Total of 16 controls is reserved for this driver
- */
-#define V4L2_CID_USER_SI476X_BASE (V4L2_CID_USER_BASE + 0x1040)
-
-/* The base for the TI VPE driver controls. Total of 16 controls is reserved for
- * this driver */
-#define V4L2_CID_USER_TI_VPE_BASE (V4L2_CID_USER_BASE + 0x1050)
-
-/* The base for the saa7134 driver controls.
- * We reserve 16 controls for this driver. */
-#define V4L2_CID_USER_SAA7134_BASE (V4L2_CID_USER_BASE + 0x1060)
-
-/* The base for the adv7180 driver controls.
- * We reserve 16 controls for this driver. */
-#define V4L2_CID_USER_ADV7180_BASE (V4L2_CID_USER_BASE + 0x1070)
-
-/* The base for the tc358743 driver controls.
- * We reserve 16 controls for this driver. */
-#define V4L2_CID_USER_TC358743_BASE (V4L2_CID_USER_BASE + 0x1080)
-
-/* MPEG-class control IDs */
-/* The MPEG controls are applicable to all codec controls
- * and the 'MPEG' part of the define is historical */
-
-#define V4L2_CID_MPEG_BASE (V4L2_CTRL_CLASS_MPEG | 0x900)
-#define V4L2_CID_MPEG_CLASS (V4L2_CTRL_CLASS_MPEG | 1)
-
-/* MPEG streams, specific to multiplexed streams */
-#define V4L2_CID_MPEG_STREAM_TYPE (V4L2_CID_MPEG_BASE+0)
-enum v4l2_mpeg_stream_type {
- V4L2_MPEG_STREAM_TYPE_MPEG2_PS = 0, /* MPEG-2 program stream */
- V4L2_MPEG_STREAM_TYPE_MPEG2_TS = 1, /* MPEG-2 transport stream */
- V4L2_MPEG_STREAM_TYPE_MPEG1_SS = 2, /* MPEG-1 system stream */
- V4L2_MPEG_STREAM_TYPE_MPEG2_DVD = 3, /* MPEG-2 DVD-compatible stream */
- V4L2_MPEG_STREAM_TYPE_MPEG1_VCD = 4, /* MPEG-1 VCD-compatible stream */
- V4L2_MPEG_STREAM_TYPE_MPEG2_SVCD = 5, /* MPEG-2 SVCD-compatible stream */
-};
-#define V4L2_CID_MPEG_STREAM_PID_PMT (V4L2_CID_MPEG_BASE+1)
-#define V4L2_CID_MPEG_STREAM_PID_AUDIO (V4L2_CID_MPEG_BASE+2)
-#define V4L2_CID_MPEG_STREAM_PID_VIDEO (V4L2_CID_MPEG_BASE+3)
-#define V4L2_CID_MPEG_STREAM_PID_PCR (V4L2_CID_MPEG_BASE+4)
-#define V4L2_CID_MPEG_STREAM_PES_ID_AUDIO (V4L2_CID_MPEG_BASE+5)
-#define V4L2_CID_MPEG_STREAM_PES_ID_VIDEO (V4L2_CID_MPEG_BASE+6)
-#define V4L2_CID_MPEG_STREAM_VBI_FMT (V4L2_CID_MPEG_BASE+7)
-enum v4l2_mpeg_stream_vbi_fmt {
- V4L2_MPEG_STREAM_VBI_FMT_NONE = 0, /* No VBI in the MPEG stream */
- V4L2_MPEG_STREAM_VBI_FMT_IVTV = 1, /* VBI in private packets, IVTV format */
-};
-
-/* MPEG audio controls specific to multiplexed streams */
-#define V4L2_CID_MPEG_AUDIO_SAMPLING_FREQ (V4L2_CID_MPEG_BASE+100)
-enum v4l2_mpeg_audio_sampling_freq {
- V4L2_MPEG_AUDIO_SAMPLING_FREQ_44100 = 0,
- V4L2_MPEG_AUDIO_SAMPLING_FREQ_48000 = 1,
- V4L2_MPEG_AUDIO_SAMPLING_FREQ_32000 = 2,
-};
-#define V4L2_CID_MPEG_AUDIO_ENCODING (V4L2_CID_MPEG_BASE+101)
-enum v4l2_mpeg_audio_encoding {
- V4L2_MPEG_AUDIO_ENCODING_LAYER_1 = 0,
- V4L2_MPEG_AUDIO_ENCODING_LAYER_2 = 1,
- V4L2_MPEG_AUDIO_ENCODING_LAYER_3 = 2,
- V4L2_MPEG_AUDIO_ENCODING_AAC = 3,
- V4L2_MPEG_AUDIO_ENCODING_AC3 = 4,
-};
-#define V4L2_CID_MPEG_AUDIO_L1_BITRATE (V4L2_CID_MPEG_BASE+102)
-enum v4l2_mpeg_audio_l1_bitrate {
- V4L2_MPEG_AUDIO_L1_BITRATE_32K = 0,
- V4L2_MPEG_AUDIO_L1_BITRATE_64K = 1,
- V4L2_MPEG_AUDIO_L1_BITRATE_96K = 2,
- V4L2_MPEG_AUDIO_L1_BITRATE_128K = 3,
- V4L2_MPEG_AUDIO_L1_BITRATE_160K = 4,
- V4L2_MPEG_AUDIO_L1_BITRATE_192K = 5,
- V4L2_MPEG_AUDIO_L1_BITRATE_224K = 6,
- V4L2_MPEG_AUDIO_L1_BITRATE_256K = 7,
- V4L2_MPEG_AUDIO_L1_BITRATE_288K = 8,
- V4L2_MPEG_AUDIO_L1_BITRATE_320K = 9,
- V4L2_MPEG_AUDIO_L1_BITRATE_352K = 10,
- V4L2_MPEG_AUDIO_L1_BITRATE_384K = 11,
- V4L2_MPEG_AUDIO_L1_BITRATE_416K = 12,
- V4L2_MPEG_AUDIO_L1_BITRATE_448K = 13,
-};
-#define V4L2_CID_MPEG_AUDIO_L2_BITRATE (V4L2_CID_MPEG_BASE+103)
-enum v4l2_mpeg_audio_l2_bitrate {
- V4L2_MPEG_AUDIO_L2_BITRATE_32K = 0,
- V4L2_MPEG_AUDIO_L2_BITRATE_48K = 1,
- V4L2_MPEG_AUDIO_L2_BITRATE_56K = 2,
- V4L2_MPEG_AUDIO_L2_BITRATE_64K = 3,
- V4L2_MPEG_AUDIO_L2_BITRATE_80K = 4,
- V4L2_MPEG_AUDIO_L2_BITRATE_96K = 5,
- V4L2_MPEG_AUDIO_L2_BITRATE_112K = 6,
- V4L2_MPEG_AUDIO_L2_BITRATE_128K = 7,
- V4L2_MPEG_AUDIO_L2_BITRATE_160K = 8,
- V4L2_MPEG_AUDIO_L2_BITRATE_192K = 9,
- V4L2_MPEG_AUDIO_L2_BITRATE_224K = 10,
- V4L2_MPEG_AUDIO_L2_BITRATE_256K = 11,
- V4L2_MPEG_AUDIO_L2_BITRATE_320K = 12,
- V4L2_MPEG_AUDIO_L2_BITRATE_384K = 13,
-};
-#define V4L2_CID_MPEG_AUDIO_L3_BITRATE (V4L2_CID_MPEG_BASE+104)
-enum v4l2_mpeg_audio_l3_bitrate {
- V4L2_MPEG_AUDIO_L3_BITRATE_32K = 0,
- V4L2_MPEG_AUDIO_L3_BITRATE_40K = 1,
- V4L2_MPEG_AUDIO_L3_BITRATE_48K = 2,
- V4L2_MPEG_AUDIO_L3_BITRATE_56K = 3,
- V4L2_MPEG_AUDIO_L3_BITRATE_64K = 4,
- V4L2_MPEG_AUDIO_L3_BITRATE_80K = 5,
- V4L2_MPEG_AUDIO_L3_BITRATE_96K = 6,
- V4L2_MPEG_AUDIO_L3_BITRATE_112K = 7,
- V4L2_MPEG_AUDIO_L3_BITRATE_128K = 8,
- V4L2_MPEG_AUDIO_L3_BITRATE_160K = 9,
- V4L2_MPEG_AUDIO_L3_BITRATE_192K = 10,
- V4L2_MPEG_AUDIO_L3_BITRATE_224K = 11,
- V4L2_MPEG_AUDIO_L3_BITRATE_256K = 12,
- V4L2_MPEG_AUDIO_L3_BITRATE_320K = 13,
-};
-#define V4L2_CID_MPEG_AUDIO_MODE (V4L2_CID_MPEG_BASE+105)
-enum v4l2_mpeg_audio_mode {
- V4L2_MPEG_AUDIO_MODE_STEREO = 0,
- V4L2_MPEG_AUDIO_MODE_JOINT_STEREO = 1,
- V4L2_MPEG_AUDIO_MODE_DUAL = 2,
- V4L2_MPEG_AUDIO_MODE_MONO = 3,
-};
-#define V4L2_CID_MPEG_AUDIO_MODE_EXTENSION (V4L2_CID_MPEG_BASE+106)
-enum v4l2_mpeg_audio_mode_extension {
- V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_4 = 0,
- V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_8 = 1,
- V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_12 = 2,
- V4L2_MPEG_AUDIO_MODE_EXTENSION_BOUND_16 = 3,
-};
-#define V4L2_CID_MPEG_AUDIO_EMPHASIS (V4L2_CID_MPEG_BASE+107)
-enum v4l2_mpeg_audio_emphasis {
- V4L2_MPEG_AUDIO_EMPHASIS_NONE = 0,
- V4L2_MPEG_AUDIO_EMPHASIS_50_DIV_15_uS = 1,
- V4L2_MPEG_AUDIO_EMPHASIS_CCITT_J17 = 2,
-};
-#define V4L2_CID_MPEG_AUDIO_CRC (V4L2_CID_MPEG_BASE+108)
-enum v4l2_mpeg_audio_crc {
- V4L2_MPEG_AUDIO_CRC_NONE = 0,
- V4L2_MPEG_AUDIO_CRC_CRC16 = 1,
-};
-#define V4L2_CID_MPEG_AUDIO_MUTE (V4L2_CID_MPEG_BASE+109)
-#define V4L2_CID_MPEG_AUDIO_AAC_BITRATE (V4L2_CID_MPEG_BASE+110)
-#define V4L2_CID_MPEG_AUDIO_AC3_BITRATE (V4L2_CID_MPEG_BASE+111)
-enum v4l2_mpeg_audio_ac3_bitrate {
- V4L2_MPEG_AUDIO_AC3_BITRATE_32K = 0,
- V4L2_MPEG_AUDIO_AC3_BITRATE_40K = 1,
- V4L2_MPEG_AUDIO_AC3_BITRATE_48K = 2,
- V4L2_MPEG_AUDIO_AC3_BITRATE_56K = 3,
- V4L2_MPEG_AUDIO_AC3_BITRATE_64K = 4,
- V4L2_MPEG_AUDIO_AC3_BITRATE_80K = 5,
- V4L2_MPEG_AUDIO_AC3_BITRATE_96K = 6,
- V4L2_MPEG_AUDIO_AC3_BITRATE_112K = 7,
- V4L2_MPEG_AUDIO_AC3_BITRATE_128K = 8,
- V4L2_MPEG_AUDIO_AC3_BITRATE_160K = 9,
- V4L2_MPEG_AUDIO_AC3_BITRATE_192K = 10,
- V4L2_MPEG_AUDIO_AC3_BITRATE_224K = 11,
- V4L2_MPEG_AUDIO_AC3_BITRATE_256K = 12,
- V4L2_MPEG_AUDIO_AC3_BITRATE_320K = 13,
- V4L2_MPEG_AUDIO_AC3_BITRATE_384K = 14,
- V4L2_MPEG_AUDIO_AC3_BITRATE_448K = 15,
- V4L2_MPEG_AUDIO_AC3_BITRATE_512K = 16,
- V4L2_MPEG_AUDIO_AC3_BITRATE_576K = 17,
- V4L2_MPEG_AUDIO_AC3_BITRATE_640K = 18,
-};
-#define V4L2_CID_MPEG_AUDIO_DEC_PLAYBACK (V4L2_CID_MPEG_BASE+112)
-enum v4l2_mpeg_audio_dec_playback {
- V4L2_MPEG_AUDIO_DEC_PLAYBACK_AUTO = 0,
- V4L2_MPEG_AUDIO_DEC_PLAYBACK_STEREO = 1,
- V4L2_MPEG_AUDIO_DEC_PLAYBACK_LEFT = 2,
- V4L2_MPEG_AUDIO_DEC_PLAYBACK_RIGHT = 3,
- V4L2_MPEG_AUDIO_DEC_PLAYBACK_MONO = 4,
- V4L2_MPEG_AUDIO_DEC_PLAYBACK_SWAPPED_STEREO = 5,
-};
-#define V4L2_CID_MPEG_AUDIO_DEC_MULTILINGUAL_PLAYBACK (V4L2_CID_MPEG_BASE+113)
-
-/* MPEG video controls specific to multiplexed streams */
-#define V4L2_CID_MPEG_VIDEO_ENCODING (V4L2_CID_MPEG_BASE+200)
-enum v4l2_mpeg_video_encoding {
- V4L2_MPEG_VIDEO_ENCODING_MPEG_1 = 0,
- V4L2_MPEG_VIDEO_ENCODING_MPEG_2 = 1,
- V4L2_MPEG_VIDEO_ENCODING_MPEG_4_AVC = 2,
-};
-#define V4L2_CID_MPEG_VIDEO_ASPECT (V4L2_CID_MPEG_BASE+201)
-enum v4l2_mpeg_video_aspect {
- V4L2_MPEG_VIDEO_ASPECT_1x1 = 0,
- V4L2_MPEG_VIDEO_ASPECT_4x3 = 1,
- V4L2_MPEG_VIDEO_ASPECT_16x9 = 2,
- V4L2_MPEG_VIDEO_ASPECT_221x100 = 3,
-};
-#define V4L2_CID_MPEG_VIDEO_B_FRAMES (V4L2_CID_MPEG_BASE+202)
-#define V4L2_CID_MPEG_VIDEO_GOP_SIZE (V4L2_CID_MPEG_BASE+203)
-#define V4L2_CID_MPEG_VIDEO_GOP_CLOSURE (V4L2_CID_MPEG_BASE+204)
-#define V4L2_CID_MPEG_VIDEO_PULLDOWN (V4L2_CID_MPEG_BASE+205)
-#define V4L2_CID_MPEG_VIDEO_BITRATE_MODE (V4L2_CID_MPEG_BASE+206)
-enum v4l2_mpeg_video_bitrate_mode {
- V4L2_MPEG_VIDEO_BITRATE_MODE_VBR = 0,
- V4L2_MPEG_VIDEO_BITRATE_MODE_CBR = 1,
-};
-#define V4L2_CID_MPEG_VIDEO_BITRATE (V4L2_CID_MPEG_BASE+207)
-#define V4L2_CID_MPEG_VIDEO_BITRATE_PEAK (V4L2_CID_MPEG_BASE+208)
-#define V4L2_CID_MPEG_VIDEO_TEMPORAL_DECIMATION (V4L2_CID_MPEG_BASE+209)
-#define V4L2_CID_MPEG_VIDEO_MUTE (V4L2_CID_MPEG_BASE+210)
-#define V4L2_CID_MPEG_VIDEO_MUTE_YUV (V4L2_CID_MPEG_BASE+211)
-#define V4L2_CID_MPEG_VIDEO_DECODER_SLICE_INTERFACE (V4L2_CID_MPEG_BASE+212)
-#define V4L2_CID_MPEG_VIDEO_DECODER_MPEG4_DEBLOCK_FILTER (V4L2_CID_MPEG_BASE+213)
-#define V4L2_CID_MPEG_VIDEO_CYCLIC_INTRA_REFRESH_MB (V4L2_CID_MPEG_BASE+214)
-#define V4L2_CID_MPEG_VIDEO_FRAME_RC_ENABLE (V4L2_CID_MPEG_BASE+215)
-#define V4L2_CID_MPEG_VIDEO_HEADER_MODE (V4L2_CID_MPEG_BASE+216)
-enum v4l2_mpeg_video_header_mode {
- V4L2_MPEG_VIDEO_HEADER_MODE_SEPARATE = 0,
- V4L2_MPEG_VIDEO_HEADER_MODE_JOINED_WITH_1ST_FRAME = 1,
- V4L2_MPEG_VIDEO_HEADER_MODE_JOINED_WITH_I_FRAME = 2,
-};
-#define V4L2_CID_MPEG_VIDEO_MAX_REF_PIC (V4L2_CID_MPEG_BASE+217)
-#define V4L2_CID_MPEG_VIDEO_MB_RC_ENABLE (V4L2_CID_MPEG_BASE+218)
-#define V4L2_CID_MPEG_VIDEO_MULTI_SLICE_MAX_BYTES (V4L2_CID_MPEG_BASE+219)
-#define V4L2_CID_MPEG_VIDEO_MULTI_SLICE_MAX_MB (V4L2_CID_MPEG_BASE+220)
-#define V4L2_CID_MPEG_VIDEO_MULTI_SLICE_MODE (V4L2_CID_MPEG_BASE+221)
-enum v4l2_mpeg_video_multi_slice_mode {
- V4L2_MPEG_VIDEO_MULTI_SLICE_MODE_SINGLE = 0,
- V4L2_MPEG_VIDEO_MULTI_SICE_MODE_MAX_MB = 1,
- V4L2_MPEG_VIDEO_MULTI_SICE_MODE_MAX_BYTES = 2,
- V4L2_MPEG_VIDEO_MULTI_SLICE_GOB = 3,
-};
-#define V4L2_CID_MPEG_VIDEO_VBV_SIZE (V4L2_CID_MPEG_BASE+222)
-#define V4L2_CID_MPEG_VIDEO_DEC_PTS (V4L2_CID_MPEG_BASE+223)
-#define V4L2_CID_MPEG_VIDEO_DEC_FRAME (V4L2_CID_MPEG_BASE+224)
-#define V4L2_CID_MPEG_VIDEO_VBV_DELAY (V4L2_CID_MPEG_BASE+225)
-#define V4L2_CID_MPEG_VIDEO_REPEAT_SEQ_HEADER (V4L2_CID_MPEG_BASE+226)
-#define V4L2_CID_MPEG_VIDEO_MV_H_SEARCH_RANGE (V4L2_CID_MPEG_BASE+227)
-#define V4L2_CID_MPEG_VIDEO_MV_V_SEARCH_RANGE (V4L2_CID_MPEG_BASE+228)
-#define V4L2_CID_MPEG_VIDEO_FORCE_KEY_FRAME (V4L2_CID_MPEG_BASE+229)
-
-#define V4L2_CID_MPEG_VIDEO_H263_I_FRAME_QP (V4L2_CID_MPEG_BASE+300)
-#define V4L2_CID_MPEG_VIDEO_H263_P_FRAME_QP (V4L2_CID_MPEG_BASE+301)
-#define V4L2_CID_MPEG_VIDEO_H263_B_FRAME_QP (V4L2_CID_MPEG_BASE+302)
-#define V4L2_CID_MPEG_VIDEO_H263_MIN_QP (V4L2_CID_MPEG_BASE+303)
-#define V4L2_CID_MPEG_VIDEO_H263_MAX_QP (V4L2_CID_MPEG_BASE+304)
-#define V4L2_CID_MPEG_VIDEO_H264_I_FRAME_QP (V4L2_CID_MPEG_BASE+350)
-#define V4L2_CID_MPEG_VIDEO_H264_P_FRAME_QP (V4L2_CID_MPEG_BASE+351)
-#define V4L2_CID_MPEG_VIDEO_H264_B_FRAME_QP (V4L2_CID_MPEG_BASE+352)
-#define V4L2_CID_MPEG_VIDEO_H264_MIN_QP (V4L2_CID_MPEG_BASE+353)
-#define V4L2_CID_MPEG_VIDEO_H264_MAX_QP (V4L2_CID_MPEG_BASE+354)
-#define V4L2_CID_MPEG_VIDEO_H264_8X8_TRANSFORM (V4L2_CID_MPEG_BASE+355)
-#define V4L2_CID_MPEG_VIDEO_H264_CPB_SIZE (V4L2_CID_MPEG_BASE+356)
-#define V4L2_CID_MPEG_VIDEO_H264_ENTROPY_MODE (V4L2_CID_MPEG_BASE+357)
-enum v4l2_mpeg_video_h264_entropy_mode {
- V4L2_MPEG_VIDEO_H264_ENTROPY_MODE_CAVLC = 0,
- V4L2_MPEG_VIDEO_H264_ENTROPY_MODE_CABAC = 1,
-};
-#define V4L2_CID_MPEG_VIDEO_H264_I_PERIOD (V4L2_CID_MPEG_BASE+358)
-#define V4L2_CID_MPEG_VIDEO_H264_LEVEL (V4L2_CID_MPEG_BASE+359)
-enum v4l2_mpeg_video_h264_level {
- V4L2_MPEG_VIDEO_H264_LEVEL_1_0 = 0,
- V4L2_MPEG_VIDEO_H264_LEVEL_1B = 1,
- V4L2_MPEG_VIDEO_H264_LEVEL_1_1 = 2,
- V4L2_MPEG_VIDEO_H264_LEVEL_1_2 = 3,
- V4L2_MPEG_VIDEO_H264_LEVEL_1_3 = 4,
- V4L2_MPEG_VIDEO_H264_LEVEL_2_0 = 5,
- V4L2_MPEG_VIDEO_H264_LEVEL_2_1 = 6,
- V4L2_MPEG_VIDEO_H264_LEVEL_2_2 = 7,
- V4L2_MPEG_VIDEO_H264_LEVEL_3_0 = 8,
- V4L2_MPEG_VIDEO_H264_LEVEL_3_1 = 9,
- V4L2_MPEG_VIDEO_H264_LEVEL_3_2 = 10,
- V4L2_MPEG_VIDEO_H264_LEVEL_4_0 = 11,
- V4L2_MPEG_VIDEO_H264_LEVEL_4_1 = 12,
- V4L2_MPEG_VIDEO_H264_LEVEL_4_2 = 13,
- V4L2_MPEG_VIDEO_H264_LEVEL_5_0 = 14,
- V4L2_MPEG_VIDEO_H264_LEVEL_5_1 = 15,
- V4L2_MPEG_VIDEO_H264_LEVEL_5_2 = 16,
-#define V4L2_MPEG_VIDEO_H264_LEVEL_UNKNOWN \
- V4L2_MPEG_VIDEO_H264_LEVEL_UNKNOWN
- V4L2_MPEG_VIDEO_H264_LEVEL_UNKNOWN = 17,
-};
-#define V4L2_CID_MPEG_VIDEO_H264_LOOP_FILTER_ALPHA (V4L2_CID_MPEG_BASE+360)
-#define V4L2_CID_MPEG_VIDEO_H264_LOOP_FILTER_BETA (V4L2_CID_MPEG_BASE+361)
-#define V4L2_CID_MPEG_VIDEO_H264_LOOP_FILTER_MODE (V4L2_CID_MPEG_BASE+362)
-enum v4l2_mpeg_video_h264_loop_filter_mode {
- V4L2_MPEG_VIDEO_H264_LOOP_FILTER_MODE_ENABLED = 0,
- V4L2_MPEG_VIDEO_H264_LOOP_FILTER_MODE_DISABLED = 1,
- V4L2_MPEG_VIDEO_H264_LOOP_FILTER_MODE_DISABLED_AT_SLICE_BOUNDARY = 2,
-};
-#define V4L2_CID_MPEG_VIDEO_H264_PROFILE (V4L2_CID_MPEG_BASE+363)
-enum v4l2_mpeg_video_h264_profile {
- V4L2_MPEG_VIDEO_H264_PROFILE_BASELINE = 0,
- V4L2_MPEG_VIDEO_H264_PROFILE_CONSTRAINED_BASELINE = 1,
- V4L2_MPEG_VIDEO_H264_PROFILE_MAIN = 2,
- V4L2_MPEG_VIDEO_H264_PROFILE_EXTENDED = 3,
- V4L2_MPEG_VIDEO_H264_PROFILE_HIGH = 4,
- V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_10 = 5,
- V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_422 = 6,
- V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_444_PREDICTIVE = 7,
- V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_10_INTRA = 8,
- V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_422_INTRA = 9,
- V4L2_MPEG_VIDEO_H264_PROFILE_HIGH_444_INTRA = 10,
- V4L2_MPEG_VIDEO_H264_PROFILE_CAVLC_444_INTRA = 11,
- V4L2_MPEG_VIDEO_H264_PROFILE_SCALABLE_BASELINE = 12,
- V4L2_MPEG_VIDEO_H264_PROFILE_SCALABLE_HIGH = 13,
- V4L2_MPEG_VIDEO_H264_PROFILE_SCALABLE_HIGH_INTRA = 14,
- V4L2_MPEG_VIDEO_H264_PROFILE_STEREO_HIGH = 15,
- V4L2_MPEG_VIDEO_H264_PROFILE_MULTIVIEW_HIGH = 16,
- V4L2_MPEG_VIDEO_H264_PROFILE_CONSTRAINED_HIGH = 17,
-};
-#define V4L2_CID_MPEG_VIDEO_H264_VUI_EXT_SAR_HEIGHT (V4L2_CID_MPEG_BASE+364)
-#define V4L2_CID_MPEG_VIDEO_H264_VUI_EXT_SAR_WIDTH (V4L2_CID_MPEG_BASE+365)
-#define V4L2_CID_MPEG_VIDEO_H264_VUI_SAR_ENABLE (V4L2_CID_MPEG_BASE+366)
-#define V4L2_CID_MPEG_VIDEO_H264_VUI_SAR_IDC (V4L2_CID_MPEG_BASE+367)
-enum v4l2_mpeg_video_h264_vui_sar_idc {
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_UNSPECIFIED = 0,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_1x1 = 1,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_12x11 = 2,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_10x11 = 3,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_16x11 = 4,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_40x33 = 5,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_24x11 = 6,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_20x11 = 7,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_32x11 = 8,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_80x33 = 9,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_18x11 = 10,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_15x11 = 11,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_64x33 = 12,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_160x99 = 13,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_4x3 = 14,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_3x2 = 15,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_2x1 = 16,
- V4L2_MPEG_VIDEO_H264_VUI_SAR_IDC_EXTENDED = 17,
-};
-#define V4L2_CID_MPEG_VIDEO_H264_SEI_FRAME_PACKING (V4L2_CID_MPEG_BASE+368)
-#define V4L2_CID_MPEG_VIDEO_H264_SEI_FP_CURRENT_FRAME_0 (V4L2_CID_MPEG_BASE+369)
-#define V4L2_CID_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE (V4L2_CID_MPEG_BASE+370)
-enum v4l2_mpeg_video_h264_sei_fp_arrangement_type {
- V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_CHECKERBOARD = 0,
- V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_COLUMN = 1,
- V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_ROW = 2,
- V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_SIDE_BY_SIDE = 3,
- V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_TOP_BOTTOM = 4,
- V4L2_MPEG_VIDEO_H264_SEI_FP_ARRANGEMENT_TYPE_TEMPORAL = 5,
-};
-#define V4L2_CID_MPEG_VIDEO_H264_FMO (V4L2_CID_MPEG_BASE+371)
-#define V4L2_CID_MPEG_VIDEO_H264_FMO_MAP_TYPE (V4L2_CID_MPEG_BASE+372)
-enum v4l2_mpeg_video_h264_fmo_map_type {
- V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_INTERLEAVED_SLICES = 0,
- V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_SCATTERED_SLICES = 1,
- V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_FOREGROUND_WITH_LEFT_OVER = 2,
- V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_BOX_OUT = 3,
- V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_RASTER_SCAN = 4,
- V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_WIPE_SCAN = 5,
- V4L2_MPEG_VIDEO_H264_FMO_MAP_TYPE_EXPLICIT = 6,
-};
-#define V4L2_CID_MPEG_VIDEO_H264_FMO_SLICE_GROUP (V4L2_CID_MPEG_BASE+373)
-#define V4L2_CID_MPEG_VIDEO_H264_FMO_CHANGE_DIRECTION (V4L2_CID_MPEG_BASE+374)
-enum v4l2_mpeg_video_h264_fmo_change_dir {
- V4L2_MPEG_VIDEO_H264_FMO_CHANGE_DIR_RIGHT = 0,
- V4L2_MPEG_VIDEO_H264_FMO_CHANGE_DIR_LEFT = 1,
-};
-#define V4L2_CID_MPEG_VIDEO_H264_FMO_CHANGE_RATE (V4L2_CID_MPEG_BASE+375)
-#define V4L2_CID_MPEG_VIDEO_H264_FMO_RUN_LENGTH (V4L2_CID_MPEG_BASE+376)
-#define V4L2_CID_MPEG_VIDEO_H264_ASO (V4L2_CID_MPEG_BASE+377)
-#define V4L2_CID_MPEG_VIDEO_H264_ASO_SLICE_ORDER (V4L2_CID_MPEG_BASE+378)
-#define V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING (V4L2_CID_MPEG_BASE+379)
-#define V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING_TYPE (V4L2_CID_MPEG_BASE+380)
-enum v4l2_mpeg_video_h264_hierarchical_coding_type {
- V4L2_MPEG_VIDEO_H264_HIERARCHICAL_CODING_B = 0,
- V4L2_MPEG_VIDEO_H264_HIERARCHICAL_CODING_P = 1,
-};
-#define V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING_LAYER (V4L2_CID_MPEG_BASE+381)
-#define V4L2_CID_MPEG_VIDEO_H264_HIERARCHICAL_CODING_LAYER_QP (V4L2_CID_MPEG_BASE+382)
-#define V4L2_CID_MPEG_VIDEO_MPEG4_I_FRAME_QP (V4L2_CID_MPEG_BASE+400)
-#define V4L2_CID_MPEG_VIDEO_MPEG4_P_FRAME_QP (V4L2_CID_MPEG_BASE+401)
-#define V4L2_CID_MPEG_VIDEO_MPEG4_B_FRAME_QP (V4L2_CID_MPEG_BASE+402)
-#define V4L2_CID_MPEG_VIDEO_MPEG4_MIN_QP (V4L2_CID_MPEG_BASE+403)
-#define V4L2_CID_MPEG_VIDEO_MPEG4_MAX_QP (V4L2_CID_MPEG_BASE+404)
-#define V4L2_CID_MPEG_VIDEO_MPEG4_LEVEL (V4L2_CID_MPEG_BASE+405)
-enum v4l2_mpeg_video_mpeg4_level {
- V4L2_MPEG_VIDEO_MPEG4_LEVEL_0 = 0,
- V4L2_MPEG_VIDEO_MPEG4_LEVEL_0B = 1,
- V4L2_MPEG_VIDEO_MPEG4_LEVEL_1 = 2,
- V4L2_MPEG_VIDEO_MPEG4_LEVEL_2 = 3,
- V4L2_MPEG_VIDEO_MPEG4_LEVEL_3 = 4,
- V4L2_MPEG_VIDEO_MPEG4_LEVEL_3B = 5,
- V4L2_MPEG_VIDEO_MPEG4_LEVEL_4 = 6,
- V4L2_MPEG_VIDEO_MPEG4_LEVEL_5 = 7,
-};
-#define V4L2_CID_MPEG_VIDEO_MPEG4_PROFILE (V4L2_CID_MPEG_BASE+406)
-enum v4l2_mpeg_video_mpeg4_profile {
- V4L2_MPEG_VIDEO_MPEG4_PROFILE_SIMPLE = 0,
- V4L2_MPEG_VIDEO_MPEG4_PROFILE_ADVANCED_SIMPLE = 1,
- V4L2_MPEG_VIDEO_MPEG4_PROFILE_CORE = 2,
- V4L2_MPEG_VIDEO_MPEG4_PROFILE_SIMPLE_SCALABLE = 3,
- V4L2_MPEG_VIDEO_MPEG4_PROFILE_ADVANCED_CODING_EFFICIENCY = 4,
-};
-#define V4L2_CID_MPEG_VIDEO_MPEG4_QPEL (V4L2_CID_MPEG_BASE+407)
-
-/* Control IDs for VP8 streams
- * Although VP8 is not part of MPEG we add these controls to the MPEG class
- * as that class is already handling other video compression standards
- */
-#define V4L2_CID_MPEG_VIDEO_VPX_NUM_PARTITIONS (V4L2_CID_MPEG_BASE+500)
-enum v4l2_vp8_num_partitions {
- V4L2_CID_MPEG_VIDEO_VPX_1_PARTITION = 0,
- V4L2_CID_MPEG_VIDEO_VPX_2_PARTITIONS = 1,
- V4L2_CID_MPEG_VIDEO_VPX_4_PARTITIONS = 2,
- V4L2_CID_MPEG_VIDEO_VPX_8_PARTITIONS = 3,
-};
-#define V4L2_CID_MPEG_VIDEO_VPX_IMD_DISABLE_4X4 (V4L2_CID_MPEG_BASE+501)
-#define V4L2_CID_MPEG_VIDEO_VPX_NUM_REF_FRAMES (V4L2_CID_MPEG_BASE+502)
-enum v4l2_vp8_num_ref_frames {
- V4L2_CID_MPEG_VIDEO_VPX_1_REF_FRAME = 0,
- V4L2_CID_MPEG_VIDEO_VPX_2_REF_FRAME = 1,
- V4L2_CID_MPEG_VIDEO_VPX_3_REF_FRAME = 2,
-};
-#define V4L2_CID_MPEG_VIDEO_VPX_FILTER_LEVEL (V4L2_CID_MPEG_BASE+503)
-#define V4L2_CID_MPEG_VIDEO_VPX_FILTER_SHARPNESS (V4L2_CID_MPEG_BASE+504)
-#define V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_REF_PERIOD (V4L2_CID_MPEG_BASE+505)
-#define V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_SEL (V4L2_CID_MPEG_BASE+506)
-enum v4l2_vp8_golden_frame_sel {
- V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_USE_PREV = 0,
- V4L2_CID_MPEG_VIDEO_VPX_GOLDEN_FRAME_USE_REF_PERIOD = 1,
-};
-#define V4L2_CID_MPEG_VIDEO_VPX_MIN_QP (V4L2_CID_MPEG_BASE+507)
-#define V4L2_CID_MPEG_VIDEO_VPX_MAX_QP (V4L2_CID_MPEG_BASE+508)
-#define V4L2_CID_MPEG_VIDEO_VPX_I_FRAME_QP (V4L2_CID_MPEG_BASE+509)
-#define V4L2_CID_MPEG_VIDEO_VPX_P_FRAME_QP (V4L2_CID_MPEG_BASE+510)
-#define V4L2_CID_MPEG_VIDEO_VPX_PROFILE (V4L2_CID_MPEG_BASE+511)
-
-/* MPEG-class control IDs specific to the CX2341x driver as defined by V4L2 */
-#define V4L2_CID_MPEG_CX2341X_BASE (V4L2_CTRL_CLASS_MPEG | 0x1000)
-#define V4L2_CID_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE (V4L2_CID_MPEG_CX2341X_BASE+0)
-enum v4l2_mpeg_cx2341x_video_spatial_filter_mode {
- V4L2_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE_MANUAL = 0,
- V4L2_MPEG_CX2341X_VIDEO_SPATIAL_FILTER_MODE_AUTO = 1,
-};
-#define V4L2_CID_MPEG_CX2341X_VIDEO_SPATIAL_FILTER (V4L2_CID_MPEG_CX2341X_BASE+1)
-#define V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE (V4L2_CID_MPEG_CX2341X_BASE+2)
-enum v4l2_mpeg_cx2341x_video_luma_spatial_filter_type {
- V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_OFF = 0,
- V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_1D_HOR = 1,
- V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_1D_VERT = 2,
- V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_2D_HV_SEPARABLE = 3,
- V4L2_MPEG_CX2341X_VIDEO_LUMA_SPATIAL_FILTER_TYPE_2D_SYM_NON_SEPARABLE = 4,
-};
-#define V4L2_CID_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE (V4L2_CID_MPEG_CX2341X_BASE+3)
-enum v4l2_mpeg_cx2341x_video_chroma_spatial_filter_type {
- V4L2_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE_OFF = 0,
- V4L2_MPEG_CX2341X_VIDEO_CHROMA_SPATIAL_FILTER_TYPE_1D_HOR = 1,
-};
-#define V4L2_CID_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE (V4L2_CID_MPEG_CX2341X_BASE+4)
-enum v4l2_mpeg_cx2341x_video_temporal_filter_mode {
- V4L2_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE_MANUAL = 0,
- V4L2_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER_MODE_AUTO = 1,
-};
-#define V4L2_CID_MPEG_CX2341X_VIDEO_TEMPORAL_FILTER (V4L2_CID_MPEG_CX2341X_BASE+5)
-#define V4L2_CID_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE (V4L2_CID_MPEG_CX2341X_BASE+6)
-enum v4l2_mpeg_cx2341x_video_median_filter_type {
- V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_OFF = 0,
- V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_HOR = 1,
- V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_VERT = 2,
- V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_HOR_VERT = 3,
- V4L2_MPEG_CX2341X_VIDEO_MEDIAN_FILTER_TYPE_DIAG = 4,
-};
-#define V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_MEDIAN_FILTER_BOTTOM (V4L2_CID_MPEG_CX2341X_BASE+7)
-#define V4L2_CID_MPEG_CX2341X_VIDEO_LUMA_MEDIAN_FILTER_TOP (V4L2_CID_MPEG_CX2341X_BASE+8)
-#define V4L2_CID_MPEG_CX2341X_VIDEO_CHROMA_MEDIAN_FILTER_BOTTOM (V4L2_CID_MPEG_CX2341X_BASE+9)
-#define V4L2_CID_MPEG_CX2341X_VIDEO_CHROMA_MEDIAN_FILTER_TOP (V4L2_CID_MPEG_CX2341X_BASE+10)
-#define V4L2_CID_MPEG_CX2341X_STREAM_INSERT_NAV_PACKETS (V4L2_CID_MPEG_CX2341X_BASE+11)
-
-/* MPEG-class control IDs specific to the Samsung MFC 5.1 driver as defined by V4L2 */
-#define V4L2_CID_MPEG_MFC51_BASE (V4L2_CTRL_CLASS_MPEG | 0x1100)
-
-#define V4L2_CID_MPEG_MFC51_VIDEO_DECODER_H264_DISPLAY_DELAY (V4L2_CID_MPEG_MFC51_BASE+0)
-#define V4L2_CID_MPEG_MFC51_VIDEO_DECODER_H264_DISPLAY_DELAY_ENABLE (V4L2_CID_MPEG_MFC51_BASE+1)
-#define V4L2_CID_MPEG_MFC51_VIDEO_FRAME_SKIP_MODE (V4L2_CID_MPEG_MFC51_BASE+2)
-enum v4l2_mpeg_mfc51_video_frame_skip_mode {
- V4L2_MPEG_MFC51_VIDEO_FRAME_SKIP_MODE_DISABLED = 0,
- V4L2_MPEG_MFC51_VIDEO_FRAME_SKIP_MODE_LEVEL_LIMIT = 1,
- V4L2_MPEG_MFC51_VIDEO_FRAME_SKIP_MODE_BUF_LIMIT = 2,
-};
-#define V4L2_CID_MPEG_MFC51_VIDEO_FORCE_FRAME_TYPE (V4L2_CID_MPEG_MFC51_BASE+3)
-enum v4l2_mpeg_mfc51_video_force_frame_type {
- V4L2_MPEG_MFC51_VIDEO_FORCE_FRAME_TYPE_DISABLED = 0,
- V4L2_MPEG_MFC51_VIDEO_FORCE_FRAME_TYPE_I_FRAME = 1,
- V4L2_MPEG_MFC51_VIDEO_FORCE_FRAME_TYPE_NOT_CODED = 2,
-};
-#define V4L2_CID_MPEG_MFC51_VIDEO_PADDING (V4L2_CID_MPEG_MFC51_BASE+4)
-#define V4L2_CID_MPEG_MFC51_VIDEO_PADDING_YUV (V4L2_CID_MPEG_MFC51_BASE+5)
-#define V4L2_CID_MPEG_MFC51_VIDEO_RC_FIXED_TARGET_BIT (V4L2_CID_MPEG_MFC51_BASE+6)
-#define V4L2_CID_MPEG_MFC51_VIDEO_RC_REACTION_COEFF (V4L2_CID_MPEG_MFC51_BASE+7)
-#define V4L2_CID_MPEG_MFC51_VIDEO_H264_ADAPTIVE_RC_ACTIVITY (V4L2_CID_MPEG_MFC51_BASE+50)
-#define V4L2_CID_MPEG_MFC51_VIDEO_H264_ADAPTIVE_RC_DARK (V4L2_CID_MPEG_MFC51_BASE+51)
-#define V4L2_CID_MPEG_MFC51_VIDEO_H264_ADAPTIVE_RC_SMOOTH (V4L2_CID_MPEG_MFC51_BASE+52)
-#define V4L2_CID_MPEG_MFC51_VIDEO_H264_ADAPTIVE_RC_STATIC (V4L2_CID_MPEG_MFC51_BASE+53)
-#define V4L2_CID_MPEG_MFC51_VIDEO_H264_NUM_REF_PIC_FOR_P (V4L2_CID_MPEG_MFC51_BASE+54)
-
-/* MPEG-class control IDs specific to the msm_vidc driver */
-#define V4L2_CID_MPEG_MSM_VIDC_BASE (V4L2_CTRL_CLASS_MPEG | 0x2000)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_PICTYPE_DEC_MODE \
- (V4L2_CID_MPEG_MSM_VIDC_BASE+0)
-enum v4l2_mpeg_vidc_video_pictype_dec_mode {
- V4L2_MPEG_VIDC_VIDEO_PICTYPE_DECODE_OFF = 0,
- V4L2_MPEG_VIDC_VIDEO_PICTYPE_DECODE_ON = 1,
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_KEEP_ASPECT_RATIO \
- (V4L2_CID_MPEG_MSM_VIDC_BASE+1)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_STREAM_FORMAT (V4L2_CID_MPEG_MSM_VIDC_BASE+2)
-enum v4l2_mpeg_vidc_video_stream_format {
- V4L2_MPEG_VIDC_VIDEO_NAL_FORMAT_STARTCODES = 0,
- V4L2_MPEG_VIDC_VIDEO_NAL_FORMAT_ONE_NAL_PER_BUFFER = 1,
- V4L2_MPEG_VIDC_VIDEO_NAL_FORMAT_ONE_BYTE_LENGTH = 2,
- V4L2_MPEG_VIDC_VIDEO_NAL_FORMAT_TWO_BYTE_LENGTH = 3,
- V4L2_MPEG_VIDC_VIDEO_NAL_FORMAT_FOUR_BYTE_LENGTH = 4,
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_OUTPUT_ORDER (V4L2_CID_MPEG_MSM_VIDC_BASE+3)
-enum v4l2_mpeg_vidc_video_output_order {
- V4L2_MPEG_VIDC_VIDEO_OUTPUT_ORDER_DISPLAY = 0,
- V4L2_MPEG_VIDC_VIDEO_OUTPUT_ORDER_DECODE = 1,
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_FRAME_RATE (V4L2_CID_MPEG_MSM_VIDC_BASE+4)
-#define V4L2_CID_MPEG_VIDC_VIDEO_IDR_PERIOD (V4L2_CID_MPEG_MSM_VIDC_BASE+5)
-#define V4L2_CID_MPEG_VIDC_VIDEO_NUM_P_FRAMES (V4L2_CID_MPEG_MSM_VIDC_BASE+6)
-#define V4L2_CID_MPEG_VIDC_VIDEO_NUM_B_FRAMES (V4L2_CID_MPEG_MSM_VIDC_BASE+7)
-#define V4L2_CID_MPEG_VIDC_VIDEO_REQUEST_IFRAME (V4L2_CID_MPEG_MSM_VIDC_BASE+8)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_RATE_CONTROL (V4L2_CID_MPEG_MSM_VIDC_BASE+9)
-enum v4l2_mpeg_vidc_video_rate_control {
- V4L2_CID_MPEG_VIDC_VIDEO_RATE_CONTROL_OFF = 0,
- V4L2_CID_MPEG_VIDC_VIDEO_RATE_CONTROL_VBR_VFR = 1,
- V4L2_CID_MPEG_VIDC_VIDEO_RATE_CONTROL_VBR_CFR = 2,
- V4L2_CID_MPEG_VIDC_VIDEO_RATE_CONTROL_CBR_VFR = 3,
- V4L2_CID_MPEG_VIDC_VIDEO_RATE_CONTROL_CBR_CFR = 4,
- V4L2_CID_MPEG_VIDC_VIDEO_RATE_CONTROL_MBR_CFR = 5,
- V4L2_CID_MPEG_VIDC_VIDEO_RATE_CONTROL_MBR_VFR = 6,
- V4L2_CID_MPEG_VIDC_VIDEO_RATE_CONTROL_CQ = 7,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_RATE_CONTROL_MBR_CFR \
- V4L2_CID_MPEG_VIDC_VIDEO_RATE_CONTROL_MBR_CFR
-#define V4L2_CID_MPEG_VIDC_VIDEO_RATE_CONTROL_MBR_VFR \
- V4L2_CID_MPEG_VIDC_VIDEO_RATE_CONTROL_MBR_VFR
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_ROTATION (V4L2_CID_MPEG_MSM_VIDC_BASE+10)
-enum v4l2_mpeg_vidc_video_rotation {
- V4L2_CID_MPEG_VIDC_VIDEO_ROTATION_NONE = 0,
- V4L2_CID_MPEG_VIDC_VIDEO_ROTATION_90 = 1,
- V4L2_CID_MPEG_VIDC_VIDEO_ROTATION_180 = 2,
- V4L2_CID_MPEG_VIDC_VIDEO_ROTATION_270 = 3,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_H264_CABAC_MODEL \
- (V4L2_CID_MPEG_MSM_VIDC_BASE+11)
-enum v4l2_mpeg_vidc_h264_cabac_model {
- V4L2_CID_MPEG_VIDC_VIDEO_H264_CABAC_MODEL_0 = 0,
- V4L2_CID_MPEG_VIDC_VIDEO_H264_CABAC_MODEL_1 = 1,
- V4L2_CID_MPEG_VIDC_VIDEO_H264_CABAC_MODEL_2 = 2,
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_INTRA_REFRESH_MODE \
- (V4L2_CID_MPEG_MSM_VIDC_BASE+12)
-enum v4l2_mpeg_vidc_video_intra_refresh_mode {
- V4L2_CID_MPEG_VIDC_VIDEO_INTRA_REFRESH_NONE = 0,
- V4L2_CID_MPEG_VIDC_VIDEO_INTRA_REFRESH_CYCLIC = 1,
- V4L2_CID_MPEG_VIDC_VIDEO_INTRA_REFRESH_RANDOM = 2,
- V4L2_CID_MPEG_VIDC_VIDEO_INTRA_REFRESH_ADAPTIVE = 3,
- V4L2_CID_MPEG_VIDC_VIDEO_INTRA_REFRESH_CYCLIC_ADAPTIVE = 4,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_IR_MBS (V4L2_CID_MPEG_MSM_VIDC_BASE+13)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_AU_DELIMITER \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 14)
-enum v4l2_mpeg_vidc_video_au_delimiter {
- V4L2_MPEG_VIDC_VIDEO_AU_DELIMITER_DISABLED = 0,
- V4L2_MPEG_VIDC_VIDEO_AU_DELIMITER_ENABLED = 1
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_SYNC_FRAME_DECODE \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 15)
-enum v4l2_mpeg_vidc_video_sync_frame_decode {
- V4L2_MPEG_VIDC_VIDEO_SYNC_FRAME_DECODE_DISABLE = 0,
- V4L2_MPEG_VIDC_VIDEO_SYNC_FRAME_DECODE_ENABLE = 1
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_SECURE (V4L2_CID_MPEG_MSM_VIDC_BASE+16)
-#define V4L2_CID_MPEG_VIDC_VIDEO_EXTRADATA \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 17)
-enum v4l2_mpeg_vidc_extradata {
- V4L2_MPEG_VIDC_EXTRADATA_NONE = 0,
- V4L2_MPEG_VIDC_EXTRADATA_MB_QUANTIZATION = 1,
- V4L2_MPEG_VIDC_EXTRADATA_INTERLACE_VIDEO = 2,
- V4L2_MPEG_VIDC_EXTRADATA_VC1_FRAMEDISP = 3,
- V4L2_MPEG_VIDC_EXTRADATA_VC1_SEQDISP = 4,
- V4L2_MPEG_VIDC_EXTRADATA_TIMESTAMP = 5,
- V4L2_MPEG_VIDC_EXTRADATA_S3D_FRAME_PACKING = 6,
- V4L2_MPEG_VIDC_EXTRADATA_FRAME_RATE = 7,
- V4L2_MPEG_VIDC_EXTRADATA_PANSCAN_WINDOW = 8,
- V4L2_MPEG_VIDC_EXTRADATA_RECOVERY_POINT_SEI = 9,
- V4L2_MPEG_VIDC_EXTRADATA_MULTISLICE_INFO = 10,
- V4L2_MPEG_VIDC_EXTRADATA_NUM_CONCEALED_MB = 11,
- V4L2_MPEG_VIDC_EXTRADATA_METADATA_FILLER = 12,
- V4L2_MPEG_VIDC_EXTRADATA_INPUT_CROP = 13,
- V4L2_MPEG_VIDC_EXTRADATA_DIGITAL_ZOOM = 14,
- V4L2_MPEG_VIDC_EXTRADATA_ASPECT_RATIO = 15,
- V4L2_MPEG_VIDC_EXTRADATA_MPEG2_SEQDISP = 16,
- V4L2_MPEG_VIDC_EXTRADATA_STREAM_USERDATA = 17,
- V4L2_MPEG_VIDC_EXTRADATA_FRAME_QP = 18,
- V4L2_MPEG_VIDC_EXTRADATA_FRAME_BITS_INFO = 19,
- V4L2_MPEG_VIDC_EXTRADATA_LTR = 20,
- V4L2_MPEG_VIDC_EXTRADATA_METADATA_MBI = 21,
- V4L2_MPEG_VIDC_EXTRADATA_VQZIP_SEI = 22,
- V4L2_MPEG_VIDC_EXTRADATA_YUV_STATS = 23,
- V4L2_MPEG_VIDC_EXTRADATA_ROI_QP = 24,
-#define V4L2_MPEG_VIDC_EXTRADATA_OUTPUT_CROP \
- V4L2_MPEG_VIDC_EXTRADATA_OUTPUT_CROP
- V4L2_MPEG_VIDC_EXTRADATA_OUTPUT_CROP = 25,
-#define V4L2_MPEG_VIDC_EXTRADATA_DISPLAY_COLOUR_SEI \
- V4L2_MPEG_VIDC_EXTRADATA_DISPLAY_COLOUR_SEI
- V4L2_MPEG_VIDC_EXTRADATA_DISPLAY_COLOUR_SEI = 26,
-#define V4L2_MPEG_VIDC_EXTRADATA_CONTENT_LIGHT_LEVEL_SEI \
- V4L2_MPEG_VIDC_EXTRADATA_CONTENT_LIGHT_LEVEL_SEI
- V4L2_MPEG_VIDC_EXTRADATA_CONTENT_LIGHT_LEVEL_SEI = 27,
-#define V4L2_MPEG_VIDC_EXTRADATA_PQ_INFO \
- V4L2_MPEG_VIDC_EXTRADATA_PQ_INFO
- V4L2_MPEG_VIDC_EXTRADATA_PQ_INFO = 28,
-#define V4L2_MPEG_VIDC_EXTRADATA_VUI_DISPLAY \
- V4L2_MPEG_VIDC_EXTRADATA_VUI_DISPLAY
- V4L2_MPEG_VIDC_EXTRADATA_VUI_DISPLAY = 29,
-#define V4L2_MPEG_VIDC_EXTRADATA_VPX_COLORSPACE \
- V4L2_MPEG_VIDC_EXTRADATA_VPX_COLORSPACE
- V4L2_MPEG_VIDC_EXTRADATA_VPX_COLORSPACE = 30,
-#define V4L2_MPEG_VIDC_EXTRADATA_UBWC_CR_STATS_INFO \
- V4L2_MPEG_VIDC_EXTRADATA_UBWC_CR_STATS_INFO
- V4L2_MPEG_VIDC_EXTRADATA_UBWC_CR_STATS_INFO = 31,
-#define V4L2_MPEG_VIDC_EXTRADATA_ENC_FRAME_QP \
- V4L2_MPEG_VIDC_EXTRADATA_ENC_FRAME_QP
- V4L2_MPEG_VIDC_EXTRADATA_ENC_FRAME_QP = 32,
-};
-
-#define V4L2_CID_MPEG_VIDEO_MULTI_SLICE_DELIVERY_MODE \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 18)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_VUI_TIMING_INFO \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 19)
-enum v4l2_mpeg_vidc_video_vui_timing_info {
- V4L2_MPEG_VIDC_VIDEO_VUI_TIMING_INFO_DISABLED = 0,
- V4L2_MPEG_VIDC_VIDEO_VUI_TIMING_INFO_ENABLED = 1
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_VP8_PROFILE_LEVEL \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 20)
-enum v4l2_mpeg_vidc_video_vp8_profile_level {
- V4L2_MPEG_VIDC_VIDEO_VP8_UNUSED,
- V4L2_MPEG_VIDC_VIDEO_VP8_VERSION_0,
- V4L2_MPEG_VIDC_VIDEO_VP8_VERSION_1,
- V4L2_MPEG_VIDC_VIDEO_VP8_VERSION_2,
- V4L2_MPEG_VIDC_VIDEO_VP8_VERSION_3,
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_PRESERVE_TEXT_QUALITY \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 21)
-enum v4l2_mpeg_vidc_video_preserve_text_quality {
- V4L2_MPEG_VIDC_VIDEO_PRESERVE_TEXT_QUALITY_DISABLED = 0,
- V4L2_MPEG_VIDC_VIDEO_PRESERVE_TEXT_QUALITY_ENABLED = 1
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_STREAM_OUTPUT_MODE \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 22)
-enum v4l2_mpeg_vidc_video_decoder_multi_stream {
- V4L2_CID_MPEG_VIDC_VIDEO_STREAM_OUTPUT_PRIMARY = 0,
- V4L2_CID_MPEG_VIDC_VIDEO_STREAM_OUTPUT_SECONDARY = 1,
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_MPEG2_LEVEL (V4L2_CID_MPEG_MSM_VIDC_BASE+23)
-enum v4l2_mpeg_vidc_video_mpeg2_level {
- V4L2_MPEG_VIDC_VIDEO_MPEG2_LEVEL_0 = 0,
- V4L2_MPEG_VIDC_VIDEO_MPEG2_LEVEL_1 = 1,
- V4L2_MPEG_VIDC_VIDEO_MPEG2_LEVEL_2 = 2,
- V4L2_MPEG_VIDC_VIDEO_MPEG2_LEVEL_3 = 3,
-};
-#define V4L2_CID_MPEG_VIDC_VIDEO_MPEG2_PROFILE (V4L2_CID_MPEG_MSM_VIDC_BASE+24)
-enum v4l2_mpeg_vidc_video_mpeg2_profile {
- V4L2_MPEG_VIDC_VIDEO_MPEG2_PROFILE_SIMPLE = 0,
- V4L2_MPEG_VIDC_VIDEO_MPEG2_PROFILE_MAIN = 1,
- V4L2_MPEG_VIDC_VIDEO_MPEG2_PROFILE_422 = 2,
- V4L2_MPEG_VIDC_VIDEO_MPEG2_PROFILE_SNR_SCALABLE = 3,
- V4L2_MPEG_VIDC_VIDEO_MPEG2_PROFILE_SPATIAL_SCALABLE = 4,
- V4L2_MPEG_VIDC_VIDEO_MPEG2_PROFILE_HIGH = 5,
-};
-
-enum v4l2_mpeg_vidc_video_mvc_layout {
- V4L2_MPEG_VIDC_VIDEO_MVC_SEQUENTIAL = 0,
- V4L2_MPEG_VIDC_VIDEO_MVC_TOP_BOTTOM = 1
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_CONCEAL_COLOR \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 25)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_LTRMODE \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 26)
-
-enum v4l2_mpeg_vidc_video_ltrmode {
- V4L2_MPEG_VIDC_VIDEO_LTR_MODE_DISABLE = 0,
- V4L2_MPEG_VIDC_VIDEO_LTR_MODE_MANUAL = 1,
- V4L2_MPEG_VIDC_VIDEO_LTR_MODE_PERIODIC = 2
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_LTRCOUNT \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 27)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_USELTRFRAME \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 28)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_MARKLTRFRAME \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 29)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_HIER_P_NUM_LAYERS \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 30)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_ALLOC_MODE_OUTPUT \
- (V4L2_CID_MPEG_MSM_VIDC_BASE+31)
-enum v4l2_mpeg_vidc_video_alloc_mode_type {
- V4L2_MPEG_VIDC_VIDEO_STATIC = 0,
- V4L2_MPEG_VIDC_VIDEO_RING = 1,
- V4L2_MPEG_VIDC_VIDEO_DYNAMIC = 2,
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_IFRAME_X_RANGE \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 32)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_PFRAME_X_RANGE \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 33)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_BFRAME_X_RANGE \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 34)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_IFRAME_Y_RANGE \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 35)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_PFRAME_Y_RANGE \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 36)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_BFRAME_Y_RANGE \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 37)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_VPX_ERROR_RESILIENCE \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 38)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_BUFFER_SIZE_LIMIT \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 39)
-
-enum vl42_mpeg_vidc_video_vpx_error_resilience {
- V4L2_MPEG_VIDC_VIDEO_VPX_ERROR_RESILIENCE_DISABLED = 0,
- V4L2_MPEG_VIDC_VIDEO_VPX_ERROR_RESILIENCE_ENABLED = 1,
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_HEVC_PROFILE \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 40)
-enum v4l2_mpeg_video_hevc_profile {
- V4L2_MPEG_VIDC_VIDEO_HEVC_PROFILE_MAIN = 0,
- V4L2_MPEG_VIDC_VIDEO_HEVC_PROFILE_MAIN10 = 1,
- V4L2_MPEG_VIDC_VIDEO_HEVC_PROFILE_MAIN_STILL_PIC = 2,
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_HEVC_TIER_LEVEL \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 41)
-enum v4l2_mpeg_video_hevc_level {
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_MAIN_TIER_LEVEL_1 = 0,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_HIGH_TIER_LEVEL_1 = 1,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_MAIN_TIER_LEVEL_2 = 2,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_HIGH_TIER_LEVEL_2 = 3,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_MAIN_TIER_LEVEL_2_1 = 4,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_HIGH_TIER_LEVEL_2_1 = 5,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_MAIN_TIER_LEVEL_3 = 6,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_HIGH_TIER_LEVEL_3 = 7,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_MAIN_TIER_LEVEL_3_1 = 8,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_HIGH_TIER_LEVEL_3_1 = 9,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_MAIN_TIER_LEVEL_4 = 10,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_HIGH_TIER_LEVEL_4 = 11,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_MAIN_TIER_LEVEL_4_1 = 12,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_HIGH_TIER_LEVEL_4_1 = 13,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_MAIN_TIER_LEVEL_5 = 14,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_HIGH_TIER_LEVEL_5 = 15,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_MAIN_TIER_LEVEL_5_1 = 16,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_HIGH_TIER_LEVEL_5_1 = 17,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_MAIN_TIER_LEVEL_5_2 = 18,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_HIGH_TIER_LEVEL_5_2 = 19,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_MAIN_TIER_LEVEL_6 = 20,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_HIGH_TIER_LEVEL_6 = 21,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_MAIN_TIER_LEVEL_6_1 = 22,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_HIGH_TIER_LEVEL_6_1 = 23,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_MAIN_TIER_LEVEL_6_2 = 24,
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_HIGH_TIER_LEVEL_6_2 = 25,
-#define V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_UNKNOWN \
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_UNKNOWN
- V4L2_MPEG_VIDC_VIDEO_HEVC_LEVEL_UNKNOWN = 26,
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_HIER_B_NUM_LAYERS \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 42)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_HYBRID_HIERP_MODE \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 43)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_DPB_COLOR_FORMAT \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 44)
-
-enum v4l2_mpeg_vidc_video_dpb_color_format {
- V4L2_MPEG_VIDC_VIDEO_DPB_COLOR_FMT_NONE = 0,
- V4L2_MPEG_VIDC_VIDEO_DPB_COLOR_FMT_UBWC = 1,
- V4L2_MPEG_VIDC_VIDEO_DPB_COLOR_FMT_TP10_UBWC = 2
-};
-
-#define V4L2_CID_VIDC_QBUF_MODE \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 45)
-enum v4l2_vidc_qbuf_mode {
- V4L2_VIDC_QBUF_STANDARD = 0,
- V4L2_VIDC_QBUF_BATCHED = 1,
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_MAX_HIERP_LAYERS \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 46)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_BASELAYER_ID \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 47)
-
-#define V4L2_CID_MPEG_VIDC_VENC_PARAM_SAR_WIDTH \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 48)
-
-#define V4L2_CID_MPEG_VIDC_VENC_PARAM_SAR_HEIGHT \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 49)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_VQZIP_SEI \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 50)
-
-enum v4l2_mpeg_vidc_video_vqzip_sei_enable {
- V4L2_CID_MPEG_VIDC_VIDEO_VQZIP_SEI_DISABLE = 0,
- V4L2_CID_MPEG_VIDC_VIDEO_VQZIP_SEI_ENABLE = 1
-};
-
-#define V4L2_CID_MPEG_VIDC_VENC_PARAM_LAYER_BITRATE \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 51)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_PRIORITY \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 52)
-
-enum v4l2_mpeg_vidc_video_priority {
- V4L2_MPEG_VIDC_VIDEO_PRIORITY_REALTIME_ENABLE = 0,
- V4L2_MPEG_VIDC_VIDEO_PRIORITY_REALTIME_DISABLE = 1,
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_OPERATING_RATE \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 53)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_VENC_BITRATE_TYPE \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 54)
-
-enum v4l2_mpeg_vidc_video_venc_bitrate_type_enable {
- V4L2_CID_MPEG_VIDC_VIDEO_VENC_BITRATE_DISABLE = 0,
- V4L2_CID_MPEG_VIDC_VIDEO_VENC_BITRATE_ENABLE = 1
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_VPE_CSC \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 55)
-
-enum v4l2_cid_mpeg_vidc_video_vpe_csc_type_enable {
- V4L2_CID_MPEG_VIDC_VIDEO_VPE_CSC_DISABLE = 0,
- V4L2_CID_MPEG_VIDC_VIDEO_VPE_CSC_ENABLE = 1
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_LOWLATENCY_MODE \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 56)
-
-enum v4l2_mpeg_vidc_video_lowlatency_mode {
- V4L2_CID_MPEG_VIDC_VIDEO_LOWLATENCY_DISABLE = 0,
- V4L2_CID_MPEG_VIDC_VIDEO_LOWLATENCY_ENABLE = 1,
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_BLUR_WIDTH \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 57)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_BLUR_HEIGHT \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 58)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_H264_TRANSFORM_8x8 \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 59)
-enum v4l2_mpeg_vidc_video_h264_transform_8x8 {
- V4L2_MPEG_VIDC_VIDEO_H264_TRANSFORM_8x8_DISABLE = 0,
- V4L2_MPEG_VIDC_VIDEO_H264_TRANSFORM_8x8_ENABLE = 1,
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_COLOR_SPACE \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 60)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_FULL_RANGE \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 61)
-
-enum v4l2_cid_mpeg_vidc_video_full_range {
- V4L2_CID_MPEG_VIDC_VIDEO_FULL_RANGE_DISABLE = 0,
- V4L2_CID_MPEG_VIDC_VIDEO_FULL_RANGE_ENABLE = 1,
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_TRANSFER_CHARS \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 62)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_MATRIX_COEFFS \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 63)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_IFRAME_SIZE_TYPE \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 64)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_LAYER_ID \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 65)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_VP9_PROFILE \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 66)
-enum v4l2_mpeg_vidc_video_vp9_profile {
- V4L2_MPEG_VIDC_VIDEO_VP9_PROFILE_UNUSED = 0,
- V4L2_MPEG_VIDC_VIDEO_VP9_PROFILE_P0 = 1,
- V4L2_MPEG_VIDC_VIDEO_VP9_PROFILE_P2_10 = 2,
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_VP9_LEVEL \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 67)
-enum v4l2_mpeg_vidc_video_vp9_level {
- V4L2_MPEG_VIDC_VIDEO_VP9_LEVEL_UNUSED = 0,
- V4L2_MPEG_VIDC_VIDEO_VP9_LEVEL_1 = 1,
- V4L2_MPEG_VIDC_VIDEO_VP9_LEVEL_11 = 2,
- V4L2_MPEG_VIDC_VIDEO_VP9_LEVEL_2 = 3,
- V4L2_MPEG_VIDC_VIDEO_VP9_LEVEL_21 = 4,
- V4L2_MPEG_VIDC_VIDEO_VP9_LEVEL_3 = 5,
- V4L2_MPEG_VIDC_VIDEO_VP9_LEVEL_31 = 6,
- V4L2_MPEG_VIDC_VIDEO_VP9_LEVEL_4 = 7,
- V4L2_MPEG_VIDC_VIDEO_VP9_LEVEL_41 = 8,
- V4L2_MPEG_VIDC_VIDEO_VP9_LEVEL_5 = 9,
- V4L2_MPEG_VIDC_VIDEO_VP9_LEVEL_51 = 10,
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_MB_ERROR_MAP_REPORTING \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 68)
-#define V4L2_CID_MPEG_VIDC_VIDEO_CONTINUE_DATA_TRANSFER \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 69)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_ALLOC_MODE_INPUT \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 70)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_FRAME_ASSEMBLY \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 71)
-enum v4l2_mpeg_vidc_video_assembly {
- V4L2_MPEG_VIDC_FRAME_ASSEMBLY_DISABLE = 0,
- V4L2_MPEG_VIDC_FRAME_ASSEMBLY_ENABLE = 1,
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_H263_PROFILE\
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 72)
-enum v4l2_mpeg_vidc_video_h263_profile {
- V4L2_MPEG_VIDC_VIDEO_H263_PROFILE_BASELINE = 0,
- V4L2_MPEG_VIDC_VIDEO_H263_PROFILE_H320CODING = 1,
- V4L2_MPEG_VIDC_VIDEO_H263_PROFILE_BACKWARDCOMPATIBLE = 2,
- V4L2_MPEG_VIDC_VIDEO_H263_PROFILE_ISWV2 = 3,
- V4L2_MPEG_VIDC_VIDEO_H263_PROFILE_ISWV3 = 4,
- V4L2_MPEG_VIDC_VIDEO_H263_PROFILE_HIGHCOMPRESSION = 5,
- V4L2_MPEG_VIDC_VIDEO_H263_PROFILE_INTERNET = 6,
- V4L2_MPEG_VIDC_VIDEO_H263_PROFILE_INTERLACE = 7,
- V4L2_MPEG_VIDC_VIDEO_H263_PROFILE_HIGHLATENCY = 8,
-};
-
-#define V4L2_CID_MPEG_VIDEO_MIN_QP_PACKED \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 97)
-#define V4L2_CID_MPEG_VIDEO_MAX_QP_PACKED \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 98)
-#define V4L2_CID_MPEG_VIDC_VIDEO_I_FRAME_QP \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 99)
-#define V4L2_CID_MPEG_VIDC_VIDEO_P_FRAME_QP \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 100)
-#define V4L2_CID_MPEG_VIDC_VIDEO_B_FRAME_QP \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 101)
-#define V4L2_CID_MPEG_VIDC_VIDEO_I_FRAME_QP_MIN \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 102)
-#define V4L2_CID_MPEG_VIDC_VIDEO_P_FRAME_QP_MIN \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 103)
-#define V4L2_CID_MPEG_VIDC_VIDEO_B_FRAME_QP_MIN \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 104)
-#define V4L2_CID_MPEG_VIDC_VIDEO_I_FRAME_QP_MAX \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 105)
-#define V4L2_CID_MPEG_VIDC_VIDEO_P_FRAME_QP_MAX \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 106)
-#define V4L2_CID_MPEG_VIDC_VIDEO_B_FRAME_QP_MAX \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 107)
-#define V4L2_CID_MPEG_VIDC_VIDEO_QP_MASK \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 108)
-
-enum v4l2_mpeg_vidc_video_venc_iframesize_type {
- V4L2_CID_MPEG_VIDC_VIDEO_IFRAME_SIZE_DEFAULT,
- V4L2_CID_MPEG_VIDC_VIDEO_IFRAME_SIZE_MEDIUM,
- V4L2_CID_MPEG_VIDC_VIDEO_IFRAME_SIZE_HUGE,
- V4L2_CID_MPEG_VIDC_VIDEO_IFRAME_SIZE_UNLIMITED,
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_CONCEAL_COLOR_8BIT \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 109)
-#define V4L2_CID_MPEG_VIDC_VIDEO_CONCEAL_COLOR_10BIT \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 110)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_TME_PROFILE \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 111)
-
-enum v4l2_mpeg_vidc_video_tme_profile {
- V4L2_MPEG_VIDC_VIDEO_TME_PROFILE_0 = 0,
- V4L2_MPEG_VIDC_VIDEO_TME_PROFILE_1 = 1,
- V4L2_MPEG_VIDC_VIDEO_TME_PROFILE_2 = 2,
- V4L2_MPEG_VIDC_VIDEO_TME_PROFILE_3 = 3,
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_TME_LEVEL \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 112)
-
-enum v4l2_mpeg_vidc_video_tme_level {
- V4L2_MPEG_VIDC_VIDEO_TME_LEVEL_INTEGER = 0,
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_TME_PAYLOAD_VERSION \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 113)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_VPE_CSC_CUSTOM_MATRIX \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 114)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_FLIP (V4L2_CID_MPEG_MSM_VIDC_BASE + 115)
-enum v4l2_mpeg_vidc_video_flip {
- V4L2_CID_MPEG_VIDC_VIDEO_FLIP_NONE = 0,
- V4L2_CID_MPEG_VIDC_VIDEO_FLIP_HORI = 1,
- V4L2_CID_MPEG_VIDC_VIDEO_FLIP_VERT = 2,
- V4L2_CID_MPEG_VIDC_VIDEO_FLIP_BOTH = 3,
-};
-
-/* HDR SEI INFO related control IDs and definitions*/
-#define V4L2_MPEG_VIDC_VENC_HDR_INFO_ENABLED 1
-#define V4L2_MPEG_VIDC_VENC_HDR_INFO_DISABLED 0
-
-#define V4L2_CID_MPEG_VIDC_VENC_HDR_INFO \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 116)
-#define V4L2_CID_MPEG_VIDC_VENC_RGB_PRIMARY_00 \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 117)
-#define V4L2_CID_MPEG_VIDC_VENC_RGB_PRIMARY_01 \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 118)
-#define V4L2_CID_MPEG_VIDC_VENC_RGB_PRIMARY_10 \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 119)
-#define V4L2_CID_MPEG_VIDC_VENC_RGB_PRIMARY_11 \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 120)
-#define V4L2_CID_MPEG_VIDC_VENC_RGB_PRIMARY_20 \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 121)
-#define V4L2_CID_MPEG_VIDC_VENC_RGB_PRIMARY_21 \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 122)
-#define V4L2_CID_MPEG_VIDC_VENC_WHITEPOINT_X \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 123)
-#define V4L2_CID_MPEG_VIDC_VENC_WHITEPOINT_Y \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 124)
-#define V4L2_CID_MPEG_VIDC_VENC_MAX_DISP_LUM \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 125)
-#define V4L2_CID_MPEG_VIDC_VENC_MIN_DISP_LUM \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 126)
-#define V4L2_CID_MPEG_VIDC_VENC_MAX_CLL \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 127)
-#define V4L2_CID_MPEG_VIDC_VENC_MAX_FLL \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 128)
-
-#define V4L2_CID_MPEG_VIDC_SET_PERF_LEVEL \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 129)
-enum v4l2_mpeg_vidc_perf_level {
- V4L2_CID_MPEG_VIDC_PERF_LEVEL_NOMINAL = 0,
- V4L2_CID_MPEG_VIDC_PERF_LEVEL_PERFORMANCE = 1,
- V4L2_CID_MPEG_VIDC_PERF_LEVEL_TURBO = 2,
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_AIR_MBS (V4L2_CID_MPEG_MSM_VIDC_BASE + 130)
-#define V4L2_CID_MPEG_VIDC_VIDEO_AIR_REF (V4L2_CID_MPEG_MSM_VIDC_BASE + 131)
-#define V4L2_CID_MPEG_VIDC_VIDEO_CIR_MBS (V4L2_CID_MPEG_MSM_VIDC_BASE + 132)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_H264_VUI_TIMING_INFO \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 135)
-
-#define V4L2_CID_MPEG_VIDEO_MULTI_SLICE_GOB \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 136)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_H264_VUI_BITSTREAM_RESTRICT \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 137)
-enum v4l2_mpeg_vidc_video_h264_vui_bitstream_restrict {
- V4L2_MPEG_VIDC_VIDEO_H264_VUI_BITSTREAM_RESTRICT_DISABLED = 0,
- V4L2_MPEG_VIDC_VIDEO_H264_VUI_BITSTREAM_RESTRICT_ENABLED = 1
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_DEINTERLACE \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 138)
-enum v4l2_mpeg_vidc_video_deinterlace {
- V4L2_CID_MPEG_VIDC_VIDEO_DEINTERLACE_DISABLED = 0,
- V4L2_CID_MPEG_VIDC_VIDEO_DEINTERLACE_ENABLED = 1
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_MPEG4_TIME_RESOLUTION \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 139)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_REQUEST_SEQ_HEADER \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 140)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_RATE_CONTROL_TIMESTAMP_MODE \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 141)
-enum v4l2_mpeg_vidc_video_rate_control_timestamp_mode {
- V4L2_MPEG_VIDC_VIDEO_RATE_CONTROL_TIMESTAMP_MODE_HONOR = 0,
- V4L2_MPEG_VIDC_VIDEO_RATE_CONTROL_TIMESTAMP_MODE_IGNORE = 1,
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_ENABLE_INITIAL_QP \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 142)
-enum vl42_mpeg_vidc_video_enable_initial_qp {
- V4L2_CID_MPEG_VIDC_VIDEO_ENABLE_INITIAL_QP_IFRAME = 0x1,
- V4L2_CID_MPEG_VIDC_VIDEO_ENABLE_INITIAL_QP_PFRAME = 0x2,
- V4L2_CID_MPEG_VIDC_VIDEO_ENABLE_INITIAL_QP_BFRAME = 0x4,
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_INITIAL_I_FRAME_QP \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 143)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_INITIAL_P_FRAME_QP \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 144)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_INITIAL_B_FRAME_QP \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 145)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_H264_NAL_SVC \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 146)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_PERF_MODE \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 147)
-enum v4l2_mpeg_vidc_video_perf_mode {
- V4L2_MPEG_VIDC_VIDEO_PERF_MAX_QUALITY = 1,
- V4L2_MPEG_VIDC_VIDEO_PERF_POWER_SAVE = 2
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_MBI_STATISTICS_MODE \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 148)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_CONFIG_QP \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 149)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_H264_PIC_ORDER_CNT \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 150)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_SCS_THRESHOLD \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 151)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_MVC_BUFFER_LAYOUT \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 152)
-
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_SECURE_SCALING_THRESHOLD \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 153)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_NON_SECURE_OUTPUT2 \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 154)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_VP8_MIN_QP (V4L2_CID_MPEG_MSM_VIDC_BASE + 155)
-#define V4L2_CID_MPEG_VIDC_VIDEO_VP8_MAX_QP (V4L2_CID_MPEG_MSM_VIDC_BASE + 156)
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_H263_LEVEL (V4L2_CID_MPEG_MSM_VIDC_BASE + 157)
-enum v4l2_mpeg_vidc_video_h263_level {
- V4L2_MPEG_VIDC_VIDEO_H263_LEVEL_1_0 = 0,
- V4L2_MPEG_VIDC_VIDEO_H263_LEVEL_2_0 = 1,
- V4L2_MPEG_VIDC_VIDEO_H263_LEVEL_3_0 = 2,
- V4L2_MPEG_VIDC_VIDEO_H263_LEVEL_4_0 = 3,
- V4L2_MPEG_VIDC_VIDEO_H263_LEVEL_4_5 = 4,
- V4L2_MPEG_VIDC_VIDEO_H263_LEVEL_5_0 = 5,
- V4L2_MPEG_VIDC_VIDEO_H263_LEVEL_6_0 = 6,
- V4L2_MPEG_VIDC_VIDEO_H263_LEVEL_7_0 = 7,
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_POST_LOOP_DEBLOCKER_MODE \
- (V4L2_CID_MPEG_MSM_VIDC_BASE + 158)
-
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_DIVX_FORMAT (V4L2_CID_MPEG_MSM_VIDC_BASE+159)
-
-enum v4l2_mpeg_vidc_video_divx_format_type {
- V4L2_MPEG_VIDC_VIDEO_DIVX_FORMAT_4 = 0,
- V4L2_MPEG_VIDC_VIDEO_DIVX_FORMAT_5 = 1,
- V4L2_MPEG_VIDC_VIDEO_DIVX_FORMAT_6 = 2,
-};
-
-#define V4L2_CID_MPEG_VIDC_VIDEO_FRAME_QUALITY \
- (V4L2_CID_MPEG_MSM_VIDC_BASE+160)
-
-#define V4L2_CID_MPEG_VIDC_IMG_GRID_DIMENSION \
- (V4L2_CID_MPEG_MSM_VIDC_BASE+161)
-
-enum v4l2_mpeg_vidc_video_mbi_statistics_mode {
- V4L2_CID_MPEG_VIDC_VIDEO_MBI_MODE_DEFAULT = 0,
- V4L2_CID_MPEG_VIDC_VIDEO_MBI_MODE_1 = 1,
- V4L2_CID_MPEG_VIDC_VIDEO_MBI_MODE_2 = 2,
- V4L2_CID_MPEG_VIDC_VIDEO_MBI_MODE_3 = 3,
-};
-
-enum vl42_mpeg_vidc_video_h264_svc_nal {
- V4L2_CID_MPEG_VIDC_VIDEO_H264_NAL_SVC_DISABLED = 0,
- V4L2_CID_MPEG_VIDC_VIDEO_H264_NAL_SVC_ENABLED = 1,
-};
-
-enum v4l2_mpeg_vidc_video_h264_vui_timing_info {
- V4L2_MPEG_VIDC_VIDEO_H264_VUI_TIMING_INFO_DISABLED = 0,
- V4L2_MPEG_VIDC_VIDEO_H264_VUI_TIMING_INFO_ENABLED = 1
-};
-
-/* Camera class control IDs */
-
-#define V4L2_CID_CAMERA_CLASS_BASE (V4L2_CTRL_CLASS_CAMERA | 0x900)
-#define V4L2_CID_CAMERA_CLASS (V4L2_CTRL_CLASS_CAMERA | 1)
-
-#define V4L2_CID_EXPOSURE_AUTO (V4L2_CID_CAMERA_CLASS_BASE+1)
-enum v4l2_exposure_auto_type {
- V4L2_EXPOSURE_AUTO = 0,
- V4L2_EXPOSURE_MANUAL = 1,
- V4L2_EXPOSURE_SHUTTER_PRIORITY = 2,
- V4L2_EXPOSURE_APERTURE_PRIORITY = 3
-};
-#define V4L2_CID_EXPOSURE_ABSOLUTE (V4L2_CID_CAMERA_CLASS_BASE+2)
-#define V4L2_CID_EXPOSURE_AUTO_PRIORITY (V4L2_CID_CAMERA_CLASS_BASE+3)
-
-#define V4L2_CID_PAN_RELATIVE (V4L2_CID_CAMERA_CLASS_BASE+4)
-#define V4L2_CID_TILT_RELATIVE (V4L2_CID_CAMERA_CLASS_BASE+5)
-#define V4L2_CID_PAN_RESET (V4L2_CID_CAMERA_CLASS_BASE+6)
-#define V4L2_CID_TILT_RESET (V4L2_CID_CAMERA_CLASS_BASE+7)
-
-#define V4L2_CID_PAN_ABSOLUTE (V4L2_CID_CAMERA_CLASS_BASE+8)
-#define V4L2_CID_TILT_ABSOLUTE (V4L2_CID_CAMERA_CLASS_BASE+9)
-
-#define V4L2_CID_FOCUS_ABSOLUTE (V4L2_CID_CAMERA_CLASS_BASE+10)
-#define V4L2_CID_FOCUS_RELATIVE (V4L2_CID_CAMERA_CLASS_BASE+11)
-#define V4L2_CID_FOCUS_AUTO (V4L2_CID_CAMERA_CLASS_BASE+12)
-
-#define V4L2_CID_ZOOM_ABSOLUTE (V4L2_CID_CAMERA_CLASS_BASE+13)
-#define V4L2_CID_ZOOM_RELATIVE (V4L2_CID_CAMERA_CLASS_BASE+14)
-#define V4L2_CID_ZOOM_CONTINUOUS (V4L2_CID_CAMERA_CLASS_BASE+15)
-
-#define V4L2_CID_PRIVACY (V4L2_CID_CAMERA_CLASS_BASE+16)
-
-#define V4L2_CID_IRIS_ABSOLUTE (V4L2_CID_CAMERA_CLASS_BASE+17)
-#define V4L2_CID_IRIS_RELATIVE (V4L2_CID_CAMERA_CLASS_BASE+18)
-
-#define V4L2_CID_AUTO_EXPOSURE_BIAS (V4L2_CID_CAMERA_CLASS_BASE+19)
-
-#define V4L2_CID_AUTO_N_PRESET_WHITE_BALANCE (V4L2_CID_CAMERA_CLASS_BASE+20)
-enum v4l2_auto_n_preset_white_balance {
- V4L2_WHITE_BALANCE_MANUAL = 0,
- V4L2_WHITE_BALANCE_AUTO = 1,
- V4L2_WHITE_BALANCE_INCANDESCENT = 2,
- V4L2_WHITE_BALANCE_FLUORESCENT = 3,
- V4L2_WHITE_BALANCE_FLUORESCENT_H = 4,
- V4L2_WHITE_BALANCE_HORIZON = 5,
- V4L2_WHITE_BALANCE_DAYLIGHT = 6,
- V4L2_WHITE_BALANCE_FLASH = 7,
- V4L2_WHITE_BALANCE_CLOUDY = 8,
- V4L2_WHITE_BALANCE_SHADE = 9,
-};
-
-#define V4L2_CID_WIDE_DYNAMIC_RANGE (V4L2_CID_CAMERA_CLASS_BASE+21)
-#define V4L2_CID_IMAGE_STABILIZATION (V4L2_CID_CAMERA_CLASS_BASE+22)
-
-#define V4L2_CID_ISO_SENSITIVITY (V4L2_CID_CAMERA_CLASS_BASE+23)
-#define V4L2_CID_ISO_SENSITIVITY_AUTO (V4L2_CID_CAMERA_CLASS_BASE+24)
-enum v4l2_iso_sensitivity_auto_type {
- V4L2_ISO_SENSITIVITY_MANUAL = 0,
- V4L2_ISO_SENSITIVITY_AUTO = 1,
-};
-
-#define V4L2_CID_EXPOSURE_METERING (V4L2_CID_CAMERA_CLASS_BASE+25)
-enum v4l2_exposure_metering {
- V4L2_EXPOSURE_METERING_AVERAGE = 0,
- V4L2_EXPOSURE_METERING_CENTER_WEIGHTED = 1,
- V4L2_EXPOSURE_METERING_SPOT = 2,
- V4L2_EXPOSURE_METERING_MATRIX = 3,
-};
-
-#define V4L2_CID_SCENE_MODE (V4L2_CID_CAMERA_CLASS_BASE+26)
-enum v4l2_scene_mode {
- V4L2_SCENE_MODE_NONE = 0,
- V4L2_SCENE_MODE_BACKLIGHT = 1,
- V4L2_SCENE_MODE_BEACH_SNOW = 2,
- V4L2_SCENE_MODE_CANDLE_LIGHT = 3,
- V4L2_SCENE_MODE_DAWN_DUSK = 4,
- V4L2_SCENE_MODE_FALL_COLORS = 5,
- V4L2_SCENE_MODE_FIREWORKS = 6,
- V4L2_SCENE_MODE_LANDSCAPE = 7,
- V4L2_SCENE_MODE_NIGHT = 8,
- V4L2_SCENE_MODE_PARTY_INDOOR = 9,
- V4L2_SCENE_MODE_PORTRAIT = 10,
- V4L2_SCENE_MODE_SPORTS = 11,
- V4L2_SCENE_MODE_SUNSET = 12,
- V4L2_SCENE_MODE_TEXT = 13,
-};
-
-#define V4L2_CID_3A_LOCK (V4L2_CID_CAMERA_CLASS_BASE+27)
-#define V4L2_LOCK_EXPOSURE (1 << 0)
-#define V4L2_LOCK_WHITE_BALANCE (1 << 1)
-#define V4L2_LOCK_FOCUS (1 << 2)
-
-#define V4L2_CID_AUTO_FOCUS_START (V4L2_CID_CAMERA_CLASS_BASE+28)
-#define V4L2_CID_AUTO_FOCUS_STOP (V4L2_CID_CAMERA_CLASS_BASE+29)
-#define V4L2_CID_AUTO_FOCUS_STATUS (V4L2_CID_CAMERA_CLASS_BASE+30)
-#define V4L2_AUTO_FOCUS_STATUS_IDLE (0 << 0)
-#define V4L2_AUTO_FOCUS_STATUS_BUSY (1 << 0)
-#define V4L2_AUTO_FOCUS_STATUS_REACHED (1 << 1)
-#define V4L2_AUTO_FOCUS_STATUS_FAILED (1 << 2)
-
-#define V4L2_CID_AUTO_FOCUS_RANGE (V4L2_CID_CAMERA_CLASS_BASE+31)
-enum v4l2_auto_focus_range {
- V4L2_AUTO_FOCUS_RANGE_AUTO = 0,
- V4L2_AUTO_FOCUS_RANGE_NORMAL = 1,
- V4L2_AUTO_FOCUS_RANGE_MACRO = 2,
- V4L2_AUTO_FOCUS_RANGE_INFINITY = 3,
-};
-
-#define V4L2_CID_PAN_SPEED (V4L2_CID_CAMERA_CLASS_BASE+32)
-#define V4L2_CID_TILT_SPEED (V4L2_CID_CAMERA_CLASS_BASE+33)
-
-/* FM Modulator class control IDs */
-
-#define V4L2_CID_FM_TX_CLASS_BASE (V4L2_CTRL_CLASS_FM_TX | 0x900)
-#define V4L2_CID_FM_TX_CLASS (V4L2_CTRL_CLASS_FM_TX | 1)
-
-#define V4L2_CID_RDS_TX_DEVIATION (V4L2_CID_FM_TX_CLASS_BASE + 1)
-#define V4L2_CID_RDS_TX_PI (V4L2_CID_FM_TX_CLASS_BASE + 2)
-#define V4L2_CID_RDS_TX_PTY (V4L2_CID_FM_TX_CLASS_BASE + 3)
-#define V4L2_CID_RDS_TX_PS_NAME (V4L2_CID_FM_TX_CLASS_BASE + 5)
-#define V4L2_CID_RDS_TX_RADIO_TEXT (V4L2_CID_FM_TX_CLASS_BASE + 6)
-#define V4L2_CID_RDS_TX_MONO_STEREO (V4L2_CID_FM_TX_CLASS_BASE + 7)
-#define V4L2_CID_RDS_TX_ARTIFICIAL_HEAD (V4L2_CID_FM_TX_CLASS_BASE + 8)
-#define V4L2_CID_RDS_TX_COMPRESSED (V4L2_CID_FM_TX_CLASS_BASE + 9)
-#define V4L2_CID_RDS_TX_DYNAMIC_PTY (V4L2_CID_FM_TX_CLASS_BASE + 10)
-#define V4L2_CID_RDS_TX_TRAFFIC_ANNOUNCEMENT (V4L2_CID_FM_TX_CLASS_BASE + 11)
-#define V4L2_CID_RDS_TX_TRAFFIC_PROGRAM (V4L2_CID_FM_TX_CLASS_BASE + 12)
-#define V4L2_CID_RDS_TX_MUSIC_SPEECH (V4L2_CID_FM_TX_CLASS_BASE + 13)
-#define V4L2_CID_RDS_TX_ALT_FREQS_ENABLE (V4L2_CID_FM_TX_CLASS_BASE + 14)
-#define V4L2_CID_RDS_TX_ALT_FREQS (V4L2_CID_FM_TX_CLASS_BASE + 15)
-
-#define V4L2_CID_AUDIO_LIMITER_ENABLED (V4L2_CID_FM_TX_CLASS_BASE + 64)
-#define V4L2_CID_AUDIO_LIMITER_RELEASE_TIME (V4L2_CID_FM_TX_CLASS_BASE + 65)
-#define V4L2_CID_AUDIO_LIMITER_DEVIATION (V4L2_CID_FM_TX_CLASS_BASE + 66)
-
-#define V4L2_CID_AUDIO_COMPRESSION_ENABLED (V4L2_CID_FM_TX_CLASS_BASE + 80)
-#define V4L2_CID_AUDIO_COMPRESSION_GAIN (V4L2_CID_FM_TX_CLASS_BASE + 81)
-#define V4L2_CID_AUDIO_COMPRESSION_THRESHOLD (V4L2_CID_FM_TX_CLASS_BASE + 82)
-#define V4L2_CID_AUDIO_COMPRESSION_ATTACK_TIME (V4L2_CID_FM_TX_CLASS_BASE + 83)
-#define V4L2_CID_AUDIO_COMPRESSION_RELEASE_TIME (V4L2_CID_FM_TX_CLASS_BASE + 84)
-
-#define V4L2_CID_PILOT_TONE_ENABLED (V4L2_CID_FM_TX_CLASS_BASE + 96)
-#define V4L2_CID_PILOT_TONE_DEVIATION (V4L2_CID_FM_TX_CLASS_BASE + 97)
-#define V4L2_CID_PILOT_TONE_FREQUENCY (V4L2_CID_FM_TX_CLASS_BASE + 98)
-
-#define V4L2_CID_TUNE_PREEMPHASIS (V4L2_CID_FM_TX_CLASS_BASE + 112)
-enum v4l2_preemphasis {
- V4L2_PREEMPHASIS_DISABLED = 0,
- V4L2_PREEMPHASIS_50_uS = 1,
- V4L2_PREEMPHASIS_75_uS = 2,
-};
-#define V4L2_CID_TUNE_POWER_LEVEL (V4L2_CID_FM_TX_CLASS_BASE + 113)
-#define V4L2_CID_TUNE_ANTENNA_CAPACITOR (V4L2_CID_FM_TX_CLASS_BASE + 114)
-
-
-/* Flash and privacy (indicator) light controls */
-
-#define V4L2_CID_FLASH_CLASS_BASE (V4L2_CTRL_CLASS_FLASH | 0x900)
-#define V4L2_CID_FLASH_CLASS (V4L2_CTRL_CLASS_FLASH | 1)
-
-#define V4L2_CID_FLASH_LED_MODE (V4L2_CID_FLASH_CLASS_BASE + 1)
-enum v4l2_flash_led_mode {
- V4L2_FLASH_LED_MODE_NONE,
- V4L2_FLASH_LED_MODE_FLASH,
- V4L2_FLASH_LED_MODE_TORCH,
-};
-
-#define V4L2_CID_FLASH_STROBE_SOURCE (V4L2_CID_FLASH_CLASS_BASE + 2)
-enum v4l2_flash_strobe_source {
- V4L2_FLASH_STROBE_SOURCE_SOFTWARE,
- V4L2_FLASH_STROBE_SOURCE_EXTERNAL,
-};
-
-#define V4L2_CID_FLASH_STROBE (V4L2_CID_FLASH_CLASS_BASE + 3)
-#define V4L2_CID_FLASH_STROBE_STOP (V4L2_CID_FLASH_CLASS_BASE + 4)
-#define V4L2_CID_FLASH_STROBE_STATUS (V4L2_CID_FLASH_CLASS_BASE + 5)
-
-#define V4L2_CID_FLASH_TIMEOUT (V4L2_CID_FLASH_CLASS_BASE + 6)
-#define V4L2_CID_FLASH_INTENSITY (V4L2_CID_FLASH_CLASS_BASE + 7)
-#define V4L2_CID_FLASH_TORCH_INTENSITY (V4L2_CID_FLASH_CLASS_BASE + 8)
-#define V4L2_CID_FLASH_INDICATOR_INTENSITY (V4L2_CID_FLASH_CLASS_BASE + 9)
-
-#define V4L2_CID_FLASH_FAULT (V4L2_CID_FLASH_CLASS_BASE + 10)
-#define V4L2_FLASH_FAULT_OVER_VOLTAGE (1 << 0)
-#define V4L2_FLASH_FAULT_TIMEOUT (1 << 1)
-#define V4L2_FLASH_FAULT_OVER_TEMPERATURE (1 << 2)
-#define V4L2_FLASH_FAULT_SHORT_CIRCUIT (1 << 3)
-#define V4L2_FLASH_FAULT_OVER_CURRENT (1 << 4)
-#define V4L2_FLASH_FAULT_INDICATOR (1 << 5)
-#define V4L2_FLASH_FAULT_UNDER_VOLTAGE (1 << 6)
-#define V4L2_FLASH_FAULT_INPUT_VOLTAGE (1 << 7)
-#define V4L2_FLASH_FAULT_LED_OVER_TEMPERATURE (1 << 8)
-
-#define V4L2_CID_FLASH_CHARGE (V4L2_CID_FLASH_CLASS_BASE + 11)
-#define V4L2_CID_FLASH_READY (V4L2_CID_FLASH_CLASS_BASE + 12)
-
-
-/* JPEG-class control IDs */
-
-#define V4L2_CID_JPEG_CLASS_BASE (V4L2_CTRL_CLASS_JPEG | 0x900)
-#define V4L2_CID_JPEG_CLASS (V4L2_CTRL_CLASS_JPEG | 1)
-
-#define V4L2_CID_JPEG_CHROMA_SUBSAMPLING (V4L2_CID_JPEG_CLASS_BASE + 1)
-enum v4l2_jpeg_chroma_subsampling {
- V4L2_JPEG_CHROMA_SUBSAMPLING_444 = 0,
- V4L2_JPEG_CHROMA_SUBSAMPLING_422 = 1,
- V4L2_JPEG_CHROMA_SUBSAMPLING_420 = 2,
- V4L2_JPEG_CHROMA_SUBSAMPLING_411 = 3,
- V4L2_JPEG_CHROMA_SUBSAMPLING_410 = 4,
- V4L2_JPEG_CHROMA_SUBSAMPLING_GRAY = 5,
-};
-#define V4L2_CID_JPEG_RESTART_INTERVAL (V4L2_CID_JPEG_CLASS_BASE + 2)
-#define V4L2_CID_JPEG_COMPRESSION_QUALITY (V4L2_CID_JPEG_CLASS_BASE + 3)
-
-#define V4L2_CID_JPEG_ACTIVE_MARKER (V4L2_CID_JPEG_CLASS_BASE + 4)
-#define V4L2_JPEG_ACTIVE_MARKER_APP0 (1 << 0)
-#define V4L2_JPEG_ACTIVE_MARKER_APP1 (1 << 1)
-#define V4L2_JPEG_ACTIVE_MARKER_COM (1 << 16)
-#define V4L2_JPEG_ACTIVE_MARKER_DQT (1 << 17)
-#define V4L2_JPEG_ACTIVE_MARKER_DHT (1 << 18)
-
-
-/* Image source controls */
-#define V4L2_CID_IMAGE_SOURCE_CLASS_BASE (V4L2_CTRL_CLASS_IMAGE_SOURCE | 0x900)
-#define V4L2_CID_IMAGE_SOURCE_CLASS (V4L2_CTRL_CLASS_IMAGE_SOURCE | 1)
-
-#define V4L2_CID_VBLANK (V4L2_CID_IMAGE_SOURCE_CLASS_BASE + 1)
-#define V4L2_CID_HBLANK (V4L2_CID_IMAGE_SOURCE_CLASS_BASE + 2)
-#define V4L2_CID_ANALOGUE_GAIN (V4L2_CID_IMAGE_SOURCE_CLASS_BASE + 3)
-#define V4L2_CID_TEST_PATTERN_RED (V4L2_CID_IMAGE_SOURCE_CLASS_BASE + 4)
-#define V4L2_CID_TEST_PATTERN_GREENR (V4L2_CID_IMAGE_SOURCE_CLASS_BASE + 5)
-#define V4L2_CID_TEST_PATTERN_BLUE (V4L2_CID_IMAGE_SOURCE_CLASS_BASE + 6)
-#define V4L2_CID_TEST_PATTERN_GREENB (V4L2_CID_IMAGE_SOURCE_CLASS_BASE + 7)
-
-
-/* Image processing controls */
-
-#define V4L2_CID_IMAGE_PROC_CLASS_BASE (V4L2_CTRL_CLASS_IMAGE_PROC | 0x900)
-#define V4L2_CID_IMAGE_PROC_CLASS (V4L2_CTRL_CLASS_IMAGE_PROC | 1)
-
-#define V4L2_CID_LINK_FREQ (V4L2_CID_IMAGE_PROC_CLASS_BASE + 1)
-#define V4L2_CID_PIXEL_RATE (V4L2_CID_IMAGE_PROC_CLASS_BASE + 2)
-#define V4L2_CID_TEST_PATTERN (V4L2_CID_IMAGE_PROC_CLASS_BASE + 3)
-
-
-/* DV-class control IDs defined by V4L2 */
-#define V4L2_CID_DV_CLASS_BASE (V4L2_CTRL_CLASS_DV | 0x900)
-#define V4L2_CID_DV_CLASS (V4L2_CTRL_CLASS_DV | 1)
-
-#define V4L2_CID_DV_TX_HOTPLUG (V4L2_CID_DV_CLASS_BASE + 1)
-#define V4L2_CID_DV_TX_RXSENSE (V4L2_CID_DV_CLASS_BASE + 2)
-#define V4L2_CID_DV_TX_EDID_PRESENT (V4L2_CID_DV_CLASS_BASE + 3)
-#define V4L2_CID_DV_TX_MODE (V4L2_CID_DV_CLASS_BASE + 4)
-enum v4l2_dv_tx_mode {
- V4L2_DV_TX_MODE_DVI_D = 0,
- V4L2_DV_TX_MODE_HDMI = 1,
-};
-#define V4L2_CID_DV_TX_RGB_RANGE (V4L2_CID_DV_CLASS_BASE + 5)
-enum v4l2_dv_rgb_range {
- V4L2_DV_RGB_RANGE_AUTO = 0,
- V4L2_DV_RGB_RANGE_LIMITED = 1,
- V4L2_DV_RGB_RANGE_FULL = 2,
-};
-
-#define V4L2_CID_DV_TX_IT_CONTENT_TYPE (V4L2_CID_DV_CLASS_BASE + 6)
-enum v4l2_dv_it_content_type {
- V4L2_DV_IT_CONTENT_TYPE_GRAPHICS = 0,
- V4L2_DV_IT_CONTENT_TYPE_PHOTO = 1,
- V4L2_DV_IT_CONTENT_TYPE_CINEMA = 2,
- V4L2_DV_IT_CONTENT_TYPE_GAME = 3,
- V4L2_DV_IT_CONTENT_TYPE_NO_ITC = 4,
-};
-
-#define V4L2_CID_DV_RX_POWER_PRESENT (V4L2_CID_DV_CLASS_BASE + 100)
-#define V4L2_CID_DV_RX_RGB_RANGE (V4L2_CID_DV_CLASS_BASE + 101)
-#define V4L2_CID_DV_RX_IT_CONTENT_TYPE (V4L2_CID_DV_CLASS_BASE + 102)
-
-#define V4L2_CID_FM_RX_CLASS_BASE (V4L2_CTRL_CLASS_FM_RX | 0x900)
-#define V4L2_CID_FM_RX_CLASS (V4L2_CTRL_CLASS_FM_RX | 1)
-
-#define V4L2_CID_TUNE_DEEMPHASIS (V4L2_CID_FM_RX_CLASS_BASE + 1)
-enum v4l2_deemphasis {
- V4L2_DEEMPHASIS_DISABLED = V4L2_PREEMPHASIS_DISABLED,
- V4L2_DEEMPHASIS_50_uS = V4L2_PREEMPHASIS_50_uS,
- V4L2_DEEMPHASIS_75_uS = V4L2_PREEMPHASIS_75_uS,
-};
-
-#define V4L2_CID_RDS_RECEPTION (V4L2_CID_FM_RX_CLASS_BASE + 2)
-#define V4L2_CID_RDS_RX_PTY (V4L2_CID_FM_RX_CLASS_BASE + 3)
-#define V4L2_CID_RDS_RX_PS_NAME (V4L2_CID_FM_RX_CLASS_BASE + 4)
-#define V4L2_CID_RDS_RX_RADIO_TEXT (V4L2_CID_FM_RX_CLASS_BASE + 5)
-#define V4L2_CID_RDS_RX_TRAFFIC_ANNOUNCEMENT (V4L2_CID_FM_RX_CLASS_BASE + 6)
-#define V4L2_CID_RDS_RX_TRAFFIC_PROGRAM (V4L2_CID_FM_RX_CLASS_BASE + 7)
-#define V4L2_CID_RDS_RX_MUSIC_SPEECH (V4L2_CID_FM_RX_CLASS_BASE + 8)
-
-#define V4L2_CID_RF_TUNER_CLASS_BASE (V4L2_CTRL_CLASS_RF_TUNER | 0x900)
-#define V4L2_CID_RF_TUNER_CLASS (V4L2_CTRL_CLASS_RF_TUNER | 1)
-
-#define V4L2_CID_RF_TUNER_BANDWIDTH_AUTO (V4L2_CID_RF_TUNER_CLASS_BASE + 11)
-#define V4L2_CID_RF_TUNER_BANDWIDTH (V4L2_CID_RF_TUNER_CLASS_BASE + 12)
-#define V4L2_CID_RF_TUNER_RF_GAIN (V4L2_CID_RF_TUNER_CLASS_BASE + 32)
-#define V4L2_CID_RF_TUNER_LNA_GAIN_AUTO (V4L2_CID_RF_TUNER_CLASS_BASE + 41)
-#define V4L2_CID_RF_TUNER_LNA_GAIN (V4L2_CID_RF_TUNER_CLASS_BASE + 42)
-#define V4L2_CID_RF_TUNER_MIXER_GAIN_AUTO (V4L2_CID_RF_TUNER_CLASS_BASE + 51)
-#define V4L2_CID_RF_TUNER_MIXER_GAIN (V4L2_CID_RF_TUNER_CLASS_BASE + 52)
-#define V4L2_CID_RF_TUNER_IF_GAIN_AUTO (V4L2_CID_RF_TUNER_CLASS_BASE + 61)
-#define V4L2_CID_RF_TUNER_IF_GAIN (V4L2_CID_RF_TUNER_CLASS_BASE + 62)
-#define V4L2_CID_RF_TUNER_PLL_LOCK (V4L2_CID_RF_TUNER_CLASS_BASE + 91)
-
-
-/* Detection-class control IDs defined by V4L2 */
-#define V4L2_CID_DETECT_CLASS_BASE (V4L2_CTRL_CLASS_DETECT | 0x900)
-#define V4L2_CID_DETECT_CLASS (V4L2_CTRL_CLASS_DETECT | 1)
-
-#define V4L2_CID_DETECT_MD_MODE (V4L2_CID_DETECT_CLASS_BASE + 1)
-enum v4l2_detect_md_mode {
- V4L2_DETECT_MD_MODE_DISABLED = 0,
- V4L2_DETECT_MD_MODE_GLOBAL = 1,
- V4L2_DETECT_MD_MODE_THRESHOLD_GRID = 2,
- V4L2_DETECT_MD_MODE_REGION_GRID = 3,
-};
-#define V4L2_CID_DETECT_MD_GLOBAL_THRESHOLD (V4L2_CID_DETECT_CLASS_BASE + 2)
-#define V4L2_CID_DETECT_MD_THRESHOLD_GRID (V4L2_CID_DETECT_CLASS_BASE + 3)
-#define V4L2_CID_DETECT_MD_REGION_GRID (V4L2_CID_DETECT_CLASS_BASE + 4)
-
-#endif
diff --git a/sdm710/original-kernel-headers/linux/videodev2.h b/sdm710/original-kernel-headers/linux/videodev2.h
deleted file mode 100644
index 179e78c5..00000000
--- a/sdm710/original-kernel-headers/linux/videodev2.h
+++ /dev/null
@@ -1,2453 +0,0 @@
-/*
- * Video for Linux Two header file
- *
- * Copyright (C) 1999-2012 the contributors
- * Copyright (c) 2016-2018, 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 as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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.
- *
- * Alternatively you can redistribute this file under the terms of the
- * BSD license as stated below:
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in
- * the documentation and/or other materials provided with the
- * distribution.
- * 3. The names of its contributors may not be used to endorse or promote
- * products derived from this software without specific prior written
- * permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
- * TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
- * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
- * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- * Header file for v4l or V4L2 drivers and applications
- * with public API.
- * All kernel-specific stuff were moved to media/v4l2-dev.h, so
- * no #if __KERNEL tests are allowed here
- *
- * See https://linuxtv.org for more info
- *
- * Author: Bill Dirks <bill@thedirks.org>
- * Justin Schoeman
- * Hans Verkuil <hverkuil@xs4all.nl>
- * et al.
- */
-#ifndef __LINUX_VIDEODEV2_H
-#define __LINUX_VIDEODEV2_H
-
-#include <sys/time.h>
-
-#include <linux/ioctl.h>
-#include <linux/types.h>
-#include <linux/v4l2-common.h>
-#include <linux/v4l2-controls.h>
-
-/*
- * Common stuff for both V4L1 and V4L2
- * Moved from videodev.h
- */
-#define VIDEO_MAX_FRAME 64
-#define VIDEO_MAX_PLANES 8
-
-/*
- * M I S C E L L A N E O U S
- */
-
-/* Four-character-code (FOURCC) */
-#define v4l2_fourcc(a, b, c, d)\
- ((__u32)(a) | ((__u32)(b) << 8) | ((__u32)(c) << 16) | ((__u32)(d) << 24))
-#define v4l2_fourcc_be(a, b, c, d) (v4l2_fourcc(a, b, c, d) | (1 << 31))
-
-/*
- * E N U M S
- */
-enum v4l2_field {
- V4L2_FIELD_ANY = 0, /* driver can choose from none,
- top, bottom, interlaced
- depending on whatever it thinks
- is approximate ... */
- V4L2_FIELD_NONE = 1, /* this device has no fields ... */
- V4L2_FIELD_TOP = 2, /* top field only */
- V4L2_FIELD_BOTTOM = 3, /* bottom field only */
- V4L2_FIELD_INTERLACED = 4, /* both fields interlaced */
- V4L2_FIELD_SEQ_TB = 5, /* both fields sequential into one
- buffer, top-bottom order */
- V4L2_FIELD_SEQ_BT = 6, /* same as above + bottom-top order */
- V4L2_FIELD_ALTERNATE = 7, /* both fields alternating into
- separate buffers */
- V4L2_FIELD_INTERLACED_TB = 8, /* both fields interlaced, top field
- first and the top field is
- transmitted first */
- V4L2_FIELD_INTERLACED_BT = 9, /* both fields interlaced, top field
- first and the bottom field is
- transmitted first */
-};
-#define V4L2_FIELD_HAS_TOP(field) \
- ((field) == V4L2_FIELD_TOP ||\
- (field) == V4L2_FIELD_INTERLACED ||\
- (field) == V4L2_FIELD_INTERLACED_TB ||\
- (field) == V4L2_FIELD_INTERLACED_BT ||\
- (field) == V4L2_FIELD_SEQ_TB ||\
- (field) == V4L2_FIELD_SEQ_BT)
-#define V4L2_FIELD_HAS_BOTTOM(field) \
- ((field) == V4L2_FIELD_BOTTOM ||\
- (field) == V4L2_FIELD_INTERLACED ||\
- (field) == V4L2_FIELD_INTERLACED_TB ||\
- (field) == V4L2_FIELD_INTERLACED_BT ||\
- (field) == V4L2_FIELD_SEQ_TB ||\
- (field) == V4L2_FIELD_SEQ_BT)
-#define V4L2_FIELD_HAS_BOTH(field) \
- ((field) == V4L2_FIELD_INTERLACED ||\
- (field) == V4L2_FIELD_INTERLACED_TB ||\
- (field) == V4L2_FIELD_INTERLACED_BT ||\
- (field) == V4L2_FIELD_SEQ_TB ||\
- (field) == V4L2_FIELD_SEQ_BT)
-#define V4L2_FIELD_HAS_T_OR_B(field) \
- ((field) == V4L2_FIELD_BOTTOM ||\
- (field) == V4L2_FIELD_TOP ||\
- (field) == V4L2_FIELD_ALTERNATE)
-
-enum v4l2_buf_type {
- V4L2_BUF_TYPE_VIDEO_CAPTURE = 1,
- V4L2_BUF_TYPE_VIDEO_OUTPUT = 2,
- V4L2_BUF_TYPE_VIDEO_OVERLAY = 3,
- V4L2_BUF_TYPE_VBI_CAPTURE = 4,
- V4L2_BUF_TYPE_VBI_OUTPUT = 5,
- V4L2_BUF_TYPE_SLICED_VBI_CAPTURE = 6,
- V4L2_BUF_TYPE_SLICED_VBI_OUTPUT = 7,
- V4L2_BUF_TYPE_VIDEO_OUTPUT_OVERLAY = 8,
- V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE = 9,
- V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE = 10,
- V4L2_BUF_TYPE_SDR_CAPTURE = 11,
- V4L2_BUF_TYPE_SDR_OUTPUT = 12,
- /* Deprecated, do not use */
- V4L2_BUF_TYPE_PRIVATE = 0x80,
-};
-
-#define V4L2_TYPE_IS_MULTIPLANAR(type) \
- ((type) == V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE \
- || (type) == V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE)
-
-#define V4L2_TYPE_IS_OUTPUT(type) \
- ((type) == V4L2_BUF_TYPE_VIDEO_OUTPUT \
- || (type) == V4L2_BUF_TYPE_VIDEO_OUTPUT_MPLANE \
- || (type) == V4L2_BUF_TYPE_VIDEO_OVERLAY \
- || (type) == V4L2_BUF_TYPE_VIDEO_OUTPUT_OVERLAY \
- || (type) == V4L2_BUF_TYPE_VBI_OUTPUT \
- || (type) == V4L2_BUF_TYPE_SLICED_VBI_OUTPUT \
- || (type) == V4L2_BUF_TYPE_SDR_OUTPUT)
-
-enum v4l2_tuner_type {
- V4L2_TUNER_RADIO = 1,
- V4L2_TUNER_ANALOG_TV = 2,
- V4L2_TUNER_DIGITAL_TV = 3,
- V4L2_TUNER_SDR = 4,
- V4L2_TUNER_RF = 5,
-};
-
-/* Deprecated, do not use */
-#define V4L2_TUNER_ADC V4L2_TUNER_SDR
-
-enum v4l2_memory {
- V4L2_MEMORY_MMAP = 1,
- V4L2_MEMORY_USERPTR = 2,
- V4L2_MEMORY_OVERLAY = 3,
- V4L2_MEMORY_DMABUF = 4,
-};
-
-/* see also http://vektor.theorem.ca/graphics/ycbcr/ */
-enum v4l2_colorspace {
- /*
- * Default colorspace, i.e. let the driver figure it out.
- * Can only be used with video capture.
- */
- V4L2_COLORSPACE_DEFAULT = 0,
-
- /* SMPTE 170M: used for broadcast NTSC/PAL SDTV */
- V4L2_COLORSPACE_SMPTE170M = 1,
-
- /* Obsolete pre-1998 SMPTE 240M HDTV standard, superseded by Rec 709 */
- V4L2_COLORSPACE_SMPTE240M = 2,
-
- /* Rec.709: used for HDTV */
- V4L2_COLORSPACE_REC709 = 3,
-
- /*
- * Deprecated, do not use. No driver will ever return this. This was
- * based on a misunderstanding of the bt878 datasheet.
- */
- V4L2_COLORSPACE_BT878 = 4,
-
- /*
- * NTSC 1953 colorspace. This only makes sense when dealing with
- * really, really old NTSC recordings. Superseded by SMPTE 170M.
- */
- V4L2_COLORSPACE_470_SYSTEM_M = 5,
-
- /*
- * EBU Tech 3213 PAL/SECAM colorspace. This only makes sense when
- * dealing with really old PAL/SECAM recordings. Superseded by
- * SMPTE 170M.
- */
- V4L2_COLORSPACE_470_SYSTEM_BG = 6,
-
- /*
- * Effectively shorthand for V4L2_COLORSPACE_SRGB, V4L2_YCBCR_ENC_601
- * and V4L2_QUANTIZATION_FULL_RANGE. To be used for (Motion-)JPEG.
- */
- V4L2_COLORSPACE_JPEG = 7,
-
- /* For RGB colorspaces such as produces by most webcams. */
- V4L2_COLORSPACE_SRGB = 8,
-
- /* AdobeRGB colorspace */
- V4L2_COLORSPACE_ADOBERGB = 9,
-
- /* BT.2020 colorspace, used for UHDTV. */
- V4L2_COLORSPACE_BT2020 = 10,
-
- /* Raw colorspace: for RAW unprocessed images */
- V4L2_COLORSPACE_RAW = 11,
-
- /* DCI-P3 colorspace, used by cinema projectors */
- V4L2_COLORSPACE_DCI_P3 = 12,
-};
-
-/*
- * Determine how COLORSPACE_DEFAULT should map to a proper colorspace.
- * This depends on whether this is a SDTV image (use SMPTE 170M), an
- * HDTV image (use Rec. 709), or something else (use sRGB).
- */
-#define V4L2_MAP_COLORSPACE_DEFAULT(is_sdtv, is_hdtv) \
- ((is_sdtv) ? V4L2_COLORSPACE_SMPTE170M : \
- ((is_hdtv) ? V4L2_COLORSPACE_REC709 : V4L2_COLORSPACE_SRGB))
-
-enum v4l2_xfer_func {
- /*
- * Mapping of V4L2_XFER_FUNC_DEFAULT to actual transfer functions
- * for the various colorspaces:
- *
- * V4L2_COLORSPACE_SMPTE170M, V4L2_COLORSPACE_470_SYSTEM_M,
- * V4L2_COLORSPACE_470_SYSTEM_BG, V4L2_COLORSPACE_REC709 and
- * V4L2_COLORSPACE_BT2020: V4L2_XFER_FUNC_709
- *
- * V4L2_COLORSPACE_SRGB, V4L2_COLORSPACE_JPEG: V4L2_XFER_FUNC_SRGB
- *
- * V4L2_COLORSPACE_ADOBERGB: V4L2_XFER_FUNC_ADOBERGB
- *
- * V4L2_COLORSPACE_SMPTE240M: V4L2_XFER_FUNC_SMPTE240M
- *
- * V4L2_COLORSPACE_RAW: V4L2_XFER_FUNC_NONE
- *
- * V4L2_COLORSPACE_DCI_P3: V4L2_XFER_FUNC_DCI_P3
- */
- V4L2_XFER_FUNC_DEFAULT = 0,
- V4L2_XFER_FUNC_709 = 1,
- V4L2_XFER_FUNC_SRGB = 2,
- V4L2_XFER_FUNC_ADOBERGB = 3,
- V4L2_XFER_FUNC_SMPTE240M = 4,
- V4L2_XFER_FUNC_NONE = 5,
- V4L2_XFER_FUNC_DCI_P3 = 6,
- V4L2_XFER_FUNC_SMPTE2084 = 7,
-};
-
-/*
- * Determine how XFER_FUNC_DEFAULT should map to a proper transfer function.
- * This depends on the colorspace.
- */
-#define V4L2_MAP_XFER_FUNC_DEFAULT(colsp) \
- ((colsp) == V4L2_COLORSPACE_ADOBERGB ? V4L2_XFER_FUNC_ADOBERGB : \
- ((colsp) == V4L2_COLORSPACE_SMPTE240M ? V4L2_XFER_FUNC_SMPTE240M : \
- ((colsp) == V4L2_COLORSPACE_DCI_P3 ? V4L2_XFER_FUNC_DCI_P3 : \
- ((colsp) == V4L2_COLORSPACE_RAW ? V4L2_XFER_FUNC_NONE : \
- ((colsp) == V4L2_COLORSPACE_SRGB || (colsp) == V4L2_COLORSPACE_JPEG ? \
- V4L2_XFER_FUNC_SRGB : V4L2_XFER_FUNC_709)))))
-
-enum v4l2_ycbcr_encoding {
- /*
- * Mapping of V4L2_YCBCR_ENC_DEFAULT to actual encodings for the
- * various colorspaces:
- *
- * V4L2_COLORSPACE_SMPTE170M, V4L2_COLORSPACE_470_SYSTEM_M,
- * V4L2_COLORSPACE_470_SYSTEM_BG, V4L2_COLORSPACE_SRGB,
- * V4L2_COLORSPACE_ADOBERGB and V4L2_COLORSPACE_JPEG: V4L2_YCBCR_ENC_601
- *
- * V4L2_COLORSPACE_REC709 and V4L2_COLORSPACE_DCI_P3: V4L2_YCBCR_ENC_709
- *
- * V4L2_COLORSPACE_BT2020: V4L2_YCBCR_ENC_BT2020
- *
- * V4L2_COLORSPACE_SMPTE240M: V4L2_YCBCR_ENC_SMPTE240M
- */
- V4L2_YCBCR_ENC_DEFAULT = 0,
-
- /* ITU-R 601 -- SDTV */
- V4L2_YCBCR_ENC_601 = 1,
-
- /* Rec. 709 -- HDTV */
- V4L2_YCBCR_ENC_709 = 2,
-
- /* ITU-R 601/EN 61966-2-4 Extended Gamut -- SDTV */
- V4L2_YCBCR_ENC_XV601 = 3,
-
- /* Rec. 709/EN 61966-2-4 Extended Gamut -- HDTV */
- V4L2_YCBCR_ENC_XV709 = 4,
-
- /*
- * sYCC (Y'CbCr encoding of sRGB), identical to ENC_601. It was added
- * originally due to a misunderstanding of the sYCC standard. It should
- * not be used, instead use V4L2_YCBCR_ENC_601.
- */
- V4L2_YCBCR_ENC_SYCC = 5,
-
- /* BT.2020 Non-constant Luminance Y'CbCr */
- V4L2_YCBCR_ENC_BT2020 = 6,
-
- /* BT.2020 Constant Luminance Y'CbcCrc */
- V4L2_YCBCR_ENC_BT2020_CONST_LUM = 7,
-
- /* SMPTE 240M -- Obsolete HDTV */
- V4L2_YCBCR_ENC_SMPTE240M = 8,
-};
-
-/*
- * Determine how YCBCR_ENC_DEFAULT should map to a proper Y'CbCr encoding.
- * This depends on the colorspace.
- */
-#define V4L2_MAP_YCBCR_ENC_DEFAULT(colsp) \
- (((colsp) == V4L2_COLORSPACE_REC709 || \
- (colsp) == V4L2_COLORSPACE_DCI_P3) ? V4L2_YCBCR_ENC_709 : \
- ((colsp) == V4L2_COLORSPACE_BT2020 ? V4L2_YCBCR_ENC_BT2020 : \
- ((colsp) == V4L2_COLORSPACE_SMPTE240M ? V4L2_YCBCR_ENC_SMPTE240M : \
- V4L2_YCBCR_ENC_601)))
-
-enum v4l2_quantization {
- /*
- * The default for R'G'B' quantization is always full range, except
- * for the BT2020 colorspace. For Y'CbCr the quantization is always
- * limited range, except for COLORSPACE_JPEG, XV601 or XV709: those
- * are full range.
- */
- V4L2_QUANTIZATION_DEFAULT = 0,
- V4L2_QUANTIZATION_FULL_RANGE = 1,
- V4L2_QUANTIZATION_LIM_RANGE = 2,
-};
-
-/*
- * Determine how QUANTIZATION_DEFAULT should map to a proper quantization.
- * This depends on whether the image is RGB or not, the colorspace and the
- * Y'CbCr encoding.
- */
-#define V4L2_MAP_QUANTIZATION_DEFAULT(is_rgb, colsp, ycbcr_enc) \
- (((is_rgb) && (colsp) == V4L2_COLORSPACE_BT2020) ? V4L2_QUANTIZATION_LIM_RANGE : \
- (((is_rgb) || (ycbcr_enc) == V4L2_YCBCR_ENC_XV601 || \
- (ycbcr_enc) == V4L2_YCBCR_ENC_XV709 || (colsp) == V4L2_COLORSPACE_JPEG) ? \
- V4L2_QUANTIZATION_FULL_RANGE : V4L2_QUANTIZATION_LIM_RANGE))
-
-enum v4l2_priority {
- V4L2_PRIORITY_UNSET = 0, /* not initialized */
- V4L2_PRIORITY_BACKGROUND = 1,
- V4L2_PRIORITY_INTERACTIVE = 2,
- V4L2_PRIORITY_RECORD = 3,
- V4L2_PRIORITY_DEFAULT = V4L2_PRIORITY_INTERACTIVE,
-};
-
-struct v4l2_rect {
- __s32 left;
- __s32 top;
- __u32 width;
- __u32 height;
-};
-
-struct v4l2_fract {
- __u32 numerator;
- __u32 denominator;
-};
-
-/**
- * struct v4l2_capability - Describes V4L2 device caps returned by VIDIOC_QUERYCAP
- *
- * @driver: name of the driver module (e.g. "bttv")
- * @card: name of the card (e.g. "Hauppauge WinTV")
- * @bus_info: name of the bus (e.g. "PCI:" + pci_name(pci_dev) )
- * @version: KERNEL_VERSION
- * @capabilities: capabilities of the physical device as a whole
- * @device_caps: capabilities accessed via this particular device (node)
- * @reserved: reserved fields for future extensions
- */
-struct v4l2_capability {
- __u8 driver[16];
- __u8 card[32];
- __u8 bus_info[32];
- __u32 version;
- __u32 capabilities;
- __u32 device_caps;
- __u32 reserved[3];
-};
-
-/* Values for 'capabilities' field */
-#define V4L2_CAP_VIDEO_CAPTURE 0x00000001 /* Is a video capture device */
-#define V4L2_CAP_VIDEO_OUTPUT 0x00000002 /* Is a video output device */
-#define V4L2_CAP_VIDEO_OVERLAY 0x00000004 /* Can do video overlay */
-#define V4L2_CAP_VBI_CAPTURE 0x00000010 /* Is a raw VBI capture device */
-#define V4L2_CAP_VBI_OUTPUT 0x00000020 /* Is a raw VBI output device */
-#define V4L2_CAP_SLICED_VBI_CAPTURE 0x00000040 /* Is a sliced VBI capture device */
-#define V4L2_CAP_SLICED_VBI_OUTPUT 0x00000080 /* Is a sliced VBI output device */
-#define V4L2_CAP_RDS_CAPTURE 0x00000100 /* RDS data capture */
-#define V4L2_CAP_VIDEO_OUTPUT_OVERLAY 0x00000200 /* Can do video output overlay */
-#define V4L2_CAP_HW_FREQ_SEEK 0x00000400 /* Can do hardware frequency seek */
-#define V4L2_CAP_RDS_OUTPUT 0x00000800 /* Is an RDS encoder */
-
-/* Is a video capture device that supports multiplanar formats */
-#define V4L2_CAP_VIDEO_CAPTURE_MPLANE 0x00001000
-/* Is a video output device that supports multiplanar formats */
-#define V4L2_CAP_VIDEO_OUTPUT_MPLANE 0x00002000
-/* Is a video mem-to-mem device that supports multiplanar formats */
-#define V4L2_CAP_VIDEO_M2M_MPLANE 0x00004000
-/* Is a video mem-to-mem device */
-#define V4L2_CAP_VIDEO_M2M 0x00008000
-
-#define V4L2_CAP_TUNER 0x00010000 /* has a tuner */
-#define V4L2_CAP_AUDIO 0x00020000 /* has audio support */
-#define V4L2_CAP_RADIO 0x00040000 /* is a radio device */
-#define V4L2_CAP_MODULATOR 0x00080000 /* has a modulator */
-
-#define V4L2_CAP_SDR_CAPTURE 0x00100000 /* Is a SDR capture device */
-#define V4L2_CAP_EXT_PIX_FORMAT 0x00200000 /* Supports the extended pixel format */
-#define V4L2_CAP_SDR_OUTPUT 0x00400000 /* Is a SDR output device */
-
-#define V4L2_CAP_READWRITE 0x01000000 /* read/write systemcalls */
-#define V4L2_CAP_ASYNCIO 0x02000000 /* async I/O */
-#define V4L2_CAP_STREAMING 0x04000000 /* streaming I/O ioctls */
-
-#define V4L2_CAP_TOUCH 0x10000000 /* Is a touch device */
-
-#define V4L2_CAP_DEVICE_CAPS 0x80000000 /* sets device capabilities field */
-
-/*
- * V I D E O I M A G E F O R M A T
- */
-struct v4l2_pix_format {
- __u32 width;
- __u32 height;
- __u32 pixelformat;
- __u32 field; /* enum v4l2_field */
- __u32 bytesperline; /* for padding, zero if unused */
- __u32 sizeimage;
- __u32 colorspace; /* enum v4l2_colorspace */
- __u32 priv; /* private data, depends on pixelformat */
- __u32 flags; /* format flags (V4L2_PIX_FMT_FLAG_*) */
- __u32 ycbcr_enc; /* enum v4l2_ycbcr_encoding */
- __u32 quantization; /* enum v4l2_quantization */
- __u32 xfer_func; /* enum v4l2_xfer_func */
-};
-
-/* Pixel format FOURCC depth Description */
-
-/* RGB formats */
-#define V4L2_PIX_FMT_RGB332 v4l2_fourcc('R', 'G', 'B', '1') /* 8 RGB-3-3-2 */
-#define V4L2_PIX_FMT_RGB444 v4l2_fourcc('R', '4', '4', '4') /* 16 xxxxrrrr ggggbbbb */
-#define V4L2_PIX_FMT_ARGB444 v4l2_fourcc('A', 'R', '1', '2') /* 16 aaaarrrr ggggbbbb */
-#define V4L2_PIX_FMT_XRGB444 v4l2_fourcc('X', 'R', '1', '2') /* 16 xxxxrrrr ggggbbbb */
-#define V4L2_PIX_FMT_RGB555 v4l2_fourcc('R', 'G', 'B', 'O') /* 16 RGB-5-5-5 */
-#define V4L2_PIX_FMT_ARGB555 v4l2_fourcc('A', 'R', '1', '5') /* 16 ARGB-1-5-5-5 */
-#define V4L2_PIX_FMT_XRGB555 v4l2_fourcc('X', 'R', '1', '5') /* 16 XRGB-1-5-5-5 */
-#define V4L2_PIX_FMT_RGB565 v4l2_fourcc('R', 'G', 'B', 'P') /* 16 RGB-5-6-5 */
-#define V4L2_PIX_FMT_RGB555X v4l2_fourcc('R', 'G', 'B', 'Q') /* 16 RGB-5-5-5 BE */
-#define V4L2_PIX_FMT_ARGB555X v4l2_fourcc_be('A', 'R', '1', '5') /* 16 ARGB-5-5-5 BE */
-#define V4L2_PIX_FMT_XRGB555X v4l2_fourcc_be('X', 'R', '1', '5') /* 16 XRGB-5-5-5 BE */
-#define V4L2_PIX_FMT_RGB565X v4l2_fourcc('R', 'G', 'B', 'R') /* 16 RGB-5-6-5 BE */
-#define V4L2_PIX_FMT_BGR666 v4l2_fourcc('B', 'G', 'R', 'H') /* 18 BGR-6-6-6 */
-#define V4L2_PIX_FMT_BGR24 v4l2_fourcc('B', 'G', 'R', '3') /* 24 BGR-8-8-8 */
-#define V4L2_PIX_FMT_RGB24 v4l2_fourcc('R', 'G', 'B', '3') /* 24 RGB-8-8-8 */
-#define V4L2_PIX_FMT_BGR32 v4l2_fourcc('B', 'G', 'R', '4') /* 32 BGR-8-8-8-8 */
-#define V4L2_PIX_FMT_ABGR32 v4l2_fourcc('A', 'R', '2', '4') /* 32 BGRA-8-8-8-8 */
-#define V4L2_PIX_FMT_XBGR32 v4l2_fourcc('X', 'R', '2', '4') /* 32 BGRX-8-8-8-8 */
-#define V4L2_PIX_FMT_RGB32 v4l2_fourcc('R', 'G', 'B', '4') /* 32 RGB-8-8-8-8 */
-#define V4L2_PIX_FMT_ARGB32 v4l2_fourcc('B', 'A', '2', '4') /* 32 ARGB-8-8-8-8 */
-#define V4L2_PIX_FMT_XRGB32 v4l2_fourcc('B', 'X', '2', '4') /* 32 XRGB-8-8-8-8 */
-
-#define V4L2_PIX_FMT_RGBA8888_UBWC v4l2_fourcc('Q', 'R', 'G', 'B')
-
-/* Grey formats */
-#define V4L2_PIX_FMT_GREY v4l2_fourcc('G', 'R', 'E', 'Y') /* 8 Greyscale */
-#define V4L2_PIX_FMT_Y4 v4l2_fourcc('Y', '0', '4', ' ') /* 4 Greyscale */
-#define V4L2_PIX_FMT_Y6 v4l2_fourcc('Y', '0', '6', ' ') /* 6 Greyscale */
-#define V4L2_PIX_FMT_Y10 v4l2_fourcc('Y', '1', '0', ' ') /* 10 Greyscale */
-#define V4L2_PIX_FMT_Y12 v4l2_fourcc('Y', '1', '2', ' ') /* 12 Greyscale */
-#define V4L2_PIX_FMT_Y16 v4l2_fourcc('Y', '1', '6', ' ') /* 16 Greyscale */
-#define V4L2_PIX_FMT_Y16_BE v4l2_fourcc_be('Y', '1', '6', ' ') /* 16 Greyscale BE */
-
-/* Grey bit-packed formats */
-#define V4L2_PIX_FMT_Y10BPACK v4l2_fourcc('Y', '1', '0', 'B') /* 10 Greyscale bit-packed */
-
-/* Palette formats */
-#define V4L2_PIX_FMT_PAL8 v4l2_fourcc('P', 'A', 'L', '8') /* 8 8-bit palette */
-
-/* Chrominance formats */
-#define V4L2_PIX_FMT_UV8 v4l2_fourcc('U', 'V', '8', ' ') /* 8 UV 4:4 */
-
-/* Luminance+Chrominance formats */
-#define V4L2_PIX_FMT_YUYV v4l2_fourcc('Y', 'U', 'Y', 'V') /* 16 YUV 4:2:2 */
-#define V4L2_PIX_FMT_YYUV v4l2_fourcc('Y', 'Y', 'U', 'V') /* 16 YUV 4:2:2 */
-#define V4L2_PIX_FMT_YVYU v4l2_fourcc('Y', 'V', 'Y', 'U') /* 16 YVU 4:2:2 */
-#define V4L2_PIX_FMT_UYVY v4l2_fourcc('U', 'Y', 'V', 'Y') /* 16 YUV 4:2:2 */
-#define V4L2_PIX_FMT_VYUY v4l2_fourcc('V', 'Y', 'U', 'Y') /* 16 YUV 4:2:2 */
-#define V4L2_PIX_FMT_Y41P v4l2_fourcc('Y', '4', '1', 'P') /* 12 YUV 4:1:1 */
-#define V4L2_PIX_FMT_YUV444 v4l2_fourcc('Y', '4', '4', '4') /* 16 xxxxyyyy uuuuvvvv */
-#define V4L2_PIX_FMT_YUV555 v4l2_fourcc('Y', 'U', 'V', 'O') /* 16 YUV-5-5-5 */
-#define V4L2_PIX_FMT_YUV565 v4l2_fourcc('Y', 'U', 'V', 'P') /* 16 YUV-5-6-5 */
-#define V4L2_PIX_FMT_YUV32 v4l2_fourcc('Y', 'U', 'V', '4') /* 32 YUV-8-8-8-8 */
-#define V4L2_PIX_FMT_HI240 v4l2_fourcc('H', 'I', '2', '4') /* 8 8-bit color */
-#define V4L2_PIX_FMT_HM12 v4l2_fourcc('H', 'M', '1', '2') /* 8 YUV 4:2:0 16x16 macroblocks */
-#define V4L2_PIX_FMT_M420 v4l2_fourcc('M', '4', '2', '0') /* 12 YUV 4:2:0 2 lines y, 1 line uv interleaved */
-
-/* two planes -- one Y, one Cr + Cb interleaved */
-#define V4L2_PIX_FMT_NV12 v4l2_fourcc('N', 'V', '1', '2') /* 12 Y/CbCr 4:2:0 */
-#define V4L2_PIX_FMT_NV21 v4l2_fourcc('N', 'V', '2', '1') /* 12 Y/CrCb 4:2:0 */
-#define V4L2_PIX_FMT_NV16 v4l2_fourcc('N', 'V', '1', '6') /* 16 Y/CbCr 4:2:2 */
-#define V4L2_PIX_FMT_NV61 v4l2_fourcc('N', 'V', '6', '1') /* 16 Y/CrCb 4:2:2 */
-#define V4L2_PIX_FMT_NV24 v4l2_fourcc('N', 'V', '2', '4') /* 24 Y/CbCr 4:4:4 */
-#define V4L2_PIX_FMT_NV42 v4l2_fourcc('N', 'V', '4', '2') /* 24 Y/CrCb 4:4:4 */
-
-/* UBWC 8-bit Y/CbCr 4:2:0 */
-#define V4L2_PIX_FMT_NV12_UBWC v4l2_fourcc('Q', '1', '2', '8')
-/* UBWC 10-bit Y/CbCr 4:2:0 */
-#define V4L2_PIX_FMT_NV12_TP10_UBWC v4l2_fourcc('Q', '1', '2', 'A')
-#define V4L2_PIX_FMT_NV12_P010_UBWC v4l2_fourcc('Q', '1', '2', 'B')
-
-/* two non contiguous planes - one Y, one Cr + Cb interleaved */
-#define V4L2_PIX_FMT_NV12M v4l2_fourcc('N', 'M', '1', '2') /* 12 Y/CbCr 4:2:0 */
-#define V4L2_PIX_FMT_NV21M v4l2_fourcc('N', 'M', '2', '1') /* 21 Y/CrCb 4:2:0 */
-#define V4L2_PIX_FMT_NV16M v4l2_fourcc('N', 'M', '1', '6') /* 16 Y/CbCr 4:2:2 */
-#define V4L2_PIX_FMT_NV61M v4l2_fourcc('N', 'M', '6', '1') /* 16 Y/CrCb 4:2:2 */
-#define V4L2_PIX_FMT_NV12MT v4l2_fourcc('T', 'M', '1', '2') /* 12 Y/CbCr 4:2:0 64x32 macroblocks */
-#define V4L2_PIX_FMT_NV12MT_16X16 v4l2_fourcc('V', 'M', '1', '2') /* 12 Y/CbCr 4:2:0 16x16 macroblocks */
-
-/* three planes - Y Cb, Cr */
-#define V4L2_PIX_FMT_YUV410 v4l2_fourcc('Y', 'U', 'V', '9') /* 9 YUV 4:1:0 */
-#define V4L2_PIX_FMT_YVU410 v4l2_fourcc('Y', 'V', 'U', '9') /* 9 YVU 4:1:0 */
-#define V4L2_PIX_FMT_YUV411P v4l2_fourcc('4', '1', '1', 'P') /* 12 YVU411 planar */
-#define V4L2_PIX_FMT_YUV420 v4l2_fourcc('Y', 'U', '1', '2') /* 12 YUV 4:2:0 */
-#define V4L2_PIX_FMT_YVU420 v4l2_fourcc('Y', 'V', '1', '2') /* 12 YVU 4:2:0 */
-#define V4L2_PIX_FMT_YUV422P v4l2_fourcc('4', '2', '2', 'P') /* 16 YVU422 planar */
-
-/* three non contiguous planes - Y, Cb, Cr */
-#define V4L2_PIX_FMT_YUV420M v4l2_fourcc('Y', 'M', '1', '2') /* 12 YUV420 planar */
-#define V4L2_PIX_FMT_YVU420M v4l2_fourcc('Y', 'M', '2', '1') /* 12 YVU420 planar */
-#define V4L2_PIX_FMT_YUV422M v4l2_fourcc('Y', 'M', '1', '6') /* 16 YUV422 planar */
-#define V4L2_PIX_FMT_YVU422M v4l2_fourcc('Y', 'M', '6', '1') /* 16 YVU422 planar */
-#define V4L2_PIX_FMT_YUV444M v4l2_fourcc('Y', 'M', '2', '4') /* 24 YUV444 planar */
-#define V4L2_PIX_FMT_YVU444M v4l2_fourcc('Y', 'M', '4', '2') /* 24 YVU444 planar */
-
-/* Bayer formats - see http://www.siliconimaging.com/RGB%20Bayer.htm */
-#define V4L2_PIX_FMT_SBGGR8 v4l2_fourcc('B', 'A', '8', '1') /* 8 BGBG.. GRGR.. */
-#define V4L2_PIX_FMT_SGBRG8 v4l2_fourcc('G', 'B', 'R', 'G') /* 8 GBGB.. RGRG.. */
-#define V4L2_PIX_FMT_SGRBG8 v4l2_fourcc('G', 'R', 'B', 'G') /* 8 GRGR.. BGBG.. */
-#define V4L2_PIX_FMT_SRGGB8 v4l2_fourcc('R', 'G', 'G', 'B') /* 8 RGRG.. GBGB.. */
-#define V4L2_PIX_FMT_SBGGR10 v4l2_fourcc('B', 'G', '1', '0') /* 10 BGBG.. GRGR.. */
-#define V4L2_PIX_FMT_SGBRG10 v4l2_fourcc('G', 'B', '1', '0') /* 10 GBGB.. RGRG.. */
-#define V4L2_PIX_FMT_SGRBG10 v4l2_fourcc('B', 'A', '1', '0') /* 10 GRGR.. BGBG.. */
-#define V4L2_PIX_FMT_SRGGB10 v4l2_fourcc('R', 'G', '1', '0') /* 10 RGRG.. GBGB.. */
- /* 10bit raw bayer packed, 5 bytes for every 4 pixels */
-#define V4L2_PIX_FMT_SBGGR10P v4l2_fourcc('p', 'B', 'A', 'A')
-#define V4L2_PIX_FMT_SGBRG10P v4l2_fourcc('p', 'G', 'A', 'A')
-#define V4L2_PIX_FMT_SGRBG10P v4l2_fourcc('p', 'g', 'A', 'A')
-#define V4L2_PIX_FMT_SRGGB10P v4l2_fourcc('p', 'R', 'A', 'A')
- /* 10bit raw bayer a-law compressed to 8 bits */
-#define V4L2_PIX_FMT_SBGGR10ALAW8 v4l2_fourcc('a', 'B', 'A', '8')
-#define V4L2_PIX_FMT_SGBRG10ALAW8 v4l2_fourcc('a', 'G', 'A', '8')
-#define V4L2_PIX_FMT_SGRBG10ALAW8 v4l2_fourcc('a', 'g', 'A', '8')
-#define V4L2_PIX_FMT_SRGGB10ALAW8 v4l2_fourcc('a', 'R', 'A', '8')
- /* 10bit raw bayer DPCM compressed to 8 bits */
-#define V4L2_PIX_FMT_SBGGR10DPCM8 v4l2_fourcc('b', 'B', 'A', '8')
-#define V4L2_PIX_FMT_SGBRG10DPCM8 v4l2_fourcc('b', 'G', 'A', '8')
-#define V4L2_PIX_FMT_SGRBG10DPCM8 v4l2_fourcc('B', 'D', '1', '0')
-#define V4L2_PIX_FMT_SRGGB10DPCM8 v4l2_fourcc('b', 'R', 'A', '8')
-#define V4L2_PIX_FMT_SBGGR12 v4l2_fourcc('B', 'G', '1', '2') /* 12 BGBG.. GRGR.. */
-#define V4L2_PIX_FMT_SGBRG12 v4l2_fourcc('G', 'B', '1', '2') /* 12 GBGB.. RGRG.. */
-#define V4L2_PIX_FMT_SGRBG12 v4l2_fourcc('B', 'A', '1', '2') /* 12 GRGR.. BGBG.. */
-#define V4L2_PIX_FMT_SRGGB12 v4l2_fourcc('R', 'G', '1', '2') /* 12 RGRG.. GBGB.. */
-#define V4L2_PIX_FMT_SBGGR16 v4l2_fourcc('B', 'Y', 'R', '2') /* 16 BGBG.. GRGR.. */
-#define V4L2_PIX_FMT_SBGGR10DPCM6 v4l2_fourcc('b', 'B', 'A', '6')
-#define V4L2_PIX_FMT_SGBRG10DPCM6 v4l2_fourcc('b', 'G', 'A', '6')
-#define V4L2_PIX_FMT_SGRBG10DPCM6 v4l2_fourcc('B', 'D', '1', '6')
-#define V4L2_PIX_FMT_SRGGB10DPCM6 v4l2_fourcc('b', 'R', 'A', '6')
-#define V4L2_PIX_FMT_SBGGRPLAIN16 v4l2_fourcc('B', 'G', '1', '6')
-#define V4L2_PIX_FMT_SGBRGPLAIN16 v4l2_fourcc('G', 'B', '1', '6')
-#define V4L2_PIX_FMT_SGRBGPLAIN16 v4l2_fourcc('G', 'R', '1', '6')
-#define V4L2_PIX_FMT_SRGGBPLAIN16 v4l2_fourcc('R', 'G', '1', '6')
-
-/* compressed formats */
-#define V4L2_PIX_FMT_MJPEG v4l2_fourcc('M', 'J', 'P', 'G') /* Motion-JPEG */
-#define V4L2_PIX_FMT_JPEG v4l2_fourcc('J', 'P', 'E', 'G') /* JFIF JPEG */
-#define V4L2_PIX_FMT_DV v4l2_fourcc('d', 'v', 's', 'd') /* 1394 */
-#define V4L2_PIX_FMT_MPEG v4l2_fourcc('M', 'P', 'E', 'G') /* MPEG-1/2/4 Multiplexed */
-#define V4L2_PIX_FMT_H264 v4l2_fourcc('H', '2', '6', '4') /* H264 with start codes */
-#define V4L2_PIX_FMT_H264_NO_SC v4l2_fourcc('A', 'V', 'C', '1') /* H264 without start codes */
-#define V4L2_PIX_FMT_H264_MVC v4l2_fourcc('M', '2', '6', '4') /* H264 MVC */
-#define V4L2_PIX_FMT_H263 v4l2_fourcc('H', '2', '6', '3') /* H263 */
-#define V4L2_PIX_FMT_MPEG1 v4l2_fourcc('M', 'P', 'G', '1') /* MPEG-1 ES */
-#define V4L2_PIX_FMT_MPEG2 v4l2_fourcc('M', 'P', 'G', '2') /* MPEG-2 ES */
-#define V4L2_PIX_FMT_MPEG4 v4l2_fourcc('M', 'P', 'G', '4') /* MPEG-4 part 2 ES */
-#define V4L2_PIX_FMT_XVID v4l2_fourcc('X', 'V', 'I', 'D') /* Xvid */
-#define V4L2_PIX_FMT_VC1_ANNEX_G v4l2_fourcc('V', 'C', '1', 'G') /* SMPTE 421M Annex G compliant stream */
-#define V4L2_PIX_FMT_VC1_ANNEX_L v4l2_fourcc('V', 'C', '1', 'L') /* SMPTE 421M Annex L compliant stream */
-#define V4L2_PIX_FMT_VP8 v4l2_fourcc('V', 'P', '8', '0') /* VP8 */
-#define V4L2_PIX_FMT_VP9 v4l2_fourcc('V', 'P', '9', '0') /* VP9 */
-#define V4L2_PIX_FMT_DIVX_311 v4l2_fourcc('D', 'I', 'V', '3') /* DIVX311 */
-#define V4L2_PIX_FMT_DIVX v4l2_fourcc('D', 'I', 'V', 'X') /* DIVX */
-#define V4L2_PIX_FMT_HEVC v4l2_fourcc('H', 'E', 'V', 'C') /* for HEVC stream */
-#define V4L2_PIX_FMT_HEVC_HYBRID v4l2_fourcc('H', 'V', 'C', 'H')
-#define V4L2_PIX_FMT_TME v4l2_fourcc('T', 'M', 'E', '0') /* for TME stream */
-
-/* Vendor-specific formats */
-#define V4L2_PIX_FMT_CPIA1 v4l2_fourcc('C', 'P', 'I', 'A') /* cpia1 YUV */
-#define V4L2_PIX_FMT_WNVA v4l2_fourcc('W', 'N', 'V', 'A') /* Winnov hw compress */
-#define V4L2_PIX_FMT_SN9C10X v4l2_fourcc('S', '9', '1', '0') /* SN9C10x compression */
-#define V4L2_PIX_FMT_SN9C20X_I420 v4l2_fourcc('S', '9', '2', '0') /* SN9C20x YUV 4:2:0 */
-#define V4L2_PIX_FMT_PWC1 v4l2_fourcc('P', 'W', 'C', '1') /* pwc older webcam */
-#define V4L2_PIX_FMT_PWC2 v4l2_fourcc('P', 'W', 'C', '2') /* pwc newer webcam */
-#define V4L2_PIX_FMT_ET61X251 v4l2_fourcc('E', '6', '2', '5') /* ET61X251 compression */
-#define V4L2_PIX_FMT_SPCA501 v4l2_fourcc('S', '5', '0', '1') /* YUYV per line */
-#define V4L2_PIX_FMT_SPCA505 v4l2_fourcc('S', '5', '0', '5') /* YYUV per line */
-#define V4L2_PIX_FMT_SPCA508 v4l2_fourcc('S', '5', '0', '8') /* YUVY per line */
-#define V4L2_PIX_FMT_SPCA561 v4l2_fourcc('S', '5', '6', '1') /* compressed GBRG bayer */
-#define V4L2_PIX_FMT_PAC207 v4l2_fourcc('P', '2', '0', '7') /* compressed BGGR bayer */
-#define V4L2_PIX_FMT_MR97310A v4l2_fourcc('M', '3', '1', '0') /* compressed BGGR bayer */
-#define V4L2_PIX_FMT_JL2005BCD v4l2_fourcc('J', 'L', '2', '0') /* compressed RGGB bayer */
-#define V4L2_PIX_FMT_SN9C2028 v4l2_fourcc('S', 'O', 'N', 'X') /* compressed GBRG bayer */
-#define V4L2_PIX_FMT_SQ905C v4l2_fourcc('9', '0', '5', 'C') /* compressed RGGB bayer */
-#define V4L2_PIX_FMT_PJPG v4l2_fourcc('P', 'J', 'P', 'G') /* Pixart 73xx JPEG */
-#define V4L2_PIX_FMT_OV511 v4l2_fourcc('O', '5', '1', '1') /* ov511 JPEG */
-#define V4L2_PIX_FMT_OV518 v4l2_fourcc('O', '5', '1', '8') /* ov518 JPEG */
-#define V4L2_PIX_FMT_STV0680 v4l2_fourcc('S', '6', '8', '0') /* stv0680 bayer */
-#define V4L2_PIX_FMT_TM6000 v4l2_fourcc('T', 'M', '6', '0') /* tm5600/tm60x0 */
-#define V4L2_PIX_FMT_CIT_YYVYUY v4l2_fourcc('C', 'I', 'T', 'V') /* one line of Y then 1 line of VYUY */
-#define V4L2_PIX_FMT_KONICA420 v4l2_fourcc('K', 'O', 'N', 'I') /* YUV420 planar in blocks of 256 pixels */
-#define V4L2_PIX_FMT_JPGL v4l2_fourcc('J', 'P', 'G', 'L') /* JPEG-Lite */
-#define V4L2_PIX_FMT_SE401 v4l2_fourcc('S', '4', '0', '1') /* se401 janggu compressed rgb */
-#define V4L2_PIX_FMT_S5C_UYVY_JPG v4l2_fourcc('S', '5', 'C', 'I') /* S5C73M3 interleaved UYVY/JPEG */
-#define V4L2_PIX_FMT_Y8I v4l2_fourcc('Y', '8', 'I', ' ') /* Greyscale 8-bit L/R interleaved */
-#define V4L2_PIX_FMT_Y12I v4l2_fourcc('Y', '1', '2', 'I') /* Greyscale 12-bit L/R interleaved */
-#define V4L2_PIX_FMT_Z16 v4l2_fourcc('Z', '1', '6', ' ') /* Depth data 16-bit */
-
-#define V4L2_PIX_FMT_SDE_ABGR_8888 \
- v4l2_fourcc('R', 'A', '2', '4') /* 32-bit ABGR 8:8:8:8 */
-#define V4L2_PIX_FMT_SDE_RGBA_8888 \
- v4l2_fourcc('A', 'B', '2', '4') /* 32-bit RGBA 8:8:8:8 */
-#define V4L2_PIX_FMT_SDE_RGBX_8888 \
- v4l2_fourcc('X', 'B', '2', '4') /* 32-bit RGBX 8:8:8:8 */
-#define V4L2_PIX_FMT_SDE_XBGR_8888 \
- v4l2_fourcc('R', 'X', '2', '4') /* 32-bit XBGR 8:8:8:8 */
-#define V4L2_PIX_FMT_SDE_RGBA_5551 \
- v4l2_fourcc('R', 'A', '1', '5') /* 16-bit RGBA 5:5:5:1 */
-#define V4L2_PIX_FMT_SDE_ABGR_1555 \
- v4l2_fourcc('A', 'B', '1', '5') /* 16-bit ABGR 1:5:5:5 */
-#define V4L2_PIX_FMT_SDE_BGRA_5551 \
- v4l2_fourcc('B', 'A', '1', '5') /* 16-bit BGRA 5:5:5:1 */
-#define V4L2_PIX_FMT_SDE_BGRX_5551 \
- v4l2_fourcc('B', 'X', '1', '5') /* 16-bit BGRX 5:5:5:1 */
-#define V4L2_PIX_FMT_SDE_RGBX_5551 \
- v4l2_fourcc('R', 'X', '1', '5') /* 16-bit RGBX 5:5:5:1 */
-#define V4L2_PIX_FMT_SDE_XBGR_1555 \
- v4l2_fourcc('X', 'B', '1', '5') /* 16-bit XBGR 1:5:5:5 */
-#define V4L2_PIX_FMT_SDE_RGBA_4444 \
- v4l2_fourcc('R', 'A', '1', '2') /* 16-bit RGBA 4:4:4:4 */
-#define V4L2_PIX_FMT_SDE_BGRA_4444 \
- v4l2_fourcc('b', 'A', '1', '2') /* 16-bit BGRA 4:4:4:4 */
-#define V4L2_PIX_FMT_SDE_ABGR_4444 \
- v4l2_fourcc('A', 'B', '1', '2') /* 16-bit ABGR 4:4:4:4 */
-#define V4L2_PIX_FMT_SDE_RGBX_4444 \
- v4l2_fourcc('R', 'X', '1', '2') /* 16-bit RGBX 4:4:4:4 */
-#define V4L2_PIX_FMT_SDE_BGRX_4444 \
- v4l2_fourcc('B', 'X', '1', '2') /* 16-bit BGRX 4:4:4:4 */
-#define V4L2_PIX_FMT_SDE_XBGR_4444 \
- v4l2_fourcc('X', 'B', '1', '2') /* 16-bit XBGR 4:4:4:4 */
-#define V4L2_PIX_FMT_SDE_BGR_565 \
- v4l2_fourcc('B', 'G', '1', '6') /* 16-bit BGR 5:6:5 */
-#define V4L2_PIX_FMT_SDE_Y_CR_CB_GH2V2 \
- v4l2_fourcc('Y', 'U', '4', '2') /* Planar YVU 4:2:0 A16 */
-#define V4L2_PIX_FMT_SDE_Y_CBCR_H1V2 \
- v4l2_fourcc('N', 'H', '1', '6') /* Y/CbCr 4:2:2 */
-#define V4L2_PIX_FMT_SDE_Y_CRCB_H1V2 \
- v4l2_fourcc('N', 'H', '6', '1') /* Y/CrCb 4:2:2 */
-#define V4L2_PIX_FMT_SDE_Y_CBCR_H2V2_VENUS \
- v4l2_fourcc('Q', 'N', 'V', '2') /* Y/CbCr 4:2:0 Venus */
-#define V4L2_PIX_FMT_SDE_Y_CRCB_H2V2_VENUS \
- v4l2_fourcc('Q', 'N', 'V', '1') /* Y/CrCb 4:2:0 Venus */
-#define V4L2_PIX_FMT_SDE_RGBX_8888_UBWC \
- v4l2_fourcc('Q', 'X', 'B', '4') /* RGBX 8:8:8:8 UBWC */
-#define V4L2_PIX_FMT_SDE_RGB_565_UBWC \
- v4l2_fourcc('Q', 'R', 'G', '6') /* RGB 5:6:5 UBWC */
-#define V4L2_PIX_FMT_SDE_RGBA_1010102 \
- v4l2_fourcc('A', 'B', '3', '0') /* RGBA 10:10:10:2 */
-#define V4L2_PIX_FMT_SDE_RGBX_1010102 \
- v4l2_fourcc('X', 'B', '3', '0') /* RGBX 10:10:10:2 */
-#define V4L2_PIX_FMT_SDE_ARGB_2101010 \
- v4l2_fourcc('A', 'R', '3', '0') /* ARGB 2:10:10:10 */
-#define V4L2_PIX_FMT_SDE_XRGB_2101010 \
- v4l2_fourcc('X', 'R', '3', '0') /* XRGB 2:10:10:10 */
-#define V4L2_PIX_FMT_SDE_BGRA_1010102 \
- v4l2_fourcc('B', 'A', '3', '0') /* BGRA 10:10:10:2 */
-#define V4L2_PIX_FMT_SDE_BGRX_1010102 \
- v4l2_fourcc('B', 'X', '3', '0') /* BGRX 10:10:10:2 */
-#define V4L2_PIX_FMT_SDE_ABGR_2101010 \
- v4l2_fourcc('R', 'A', '3', '0') /* ABGR 2:10:10:10 */
-#define V4L2_PIX_FMT_SDE_XBGR_2101010 \
- v4l2_fourcc('R', 'X', '3', '0') /* XBGR 2:10:10:10 */
-#define V4L2_PIX_FMT_SDE_RGBA_1010102_UBWC \
- v4l2_fourcc('Q', 'R', 'B', 'A') /* RGBA 10:10:10:2 UBWC */
-#define V4L2_PIX_FMT_SDE_RGBX_1010102_UBWC \
- v4l2_fourcc('Q', 'X', 'B', 'A') /* RGBX 10:10:10:2 UBWC */
-#define V4L2_PIX_FMT_SDE_Y_CBCR_H2V2_TP10 \
- v4l2_fourcc('T', 'P', '1', '0') /* Y/CbCr 4:2:0 TP10 */
-#define V4L2_PIX_FMT_SDE_Y_CBCR_H2V2_P010 \
- v4l2_fourcc('P', '0', '1', '0') /* Y/CbCr 4:2:0 P10 */
-#define V4L2_PIX_FMT_SDE_Y_CBCR_H2V2_P010_VENUS \
- v4l2_fourcc('Q', 'P', '1', '0') /* Y/CbCr 4:2:0 P10 Venus*/
-
-/* SDR formats - used only for Software Defined Radio devices */
-#define V4L2_SDR_FMT_CU8 v4l2_fourcc('C', 'U', '0', '8') /* IQ u8 */
-#define V4L2_SDR_FMT_CU16LE v4l2_fourcc('C', 'U', '1', '6') /* IQ u16le */
-#define V4L2_SDR_FMT_CS8 v4l2_fourcc('C', 'S', '0', '8') /* complex s8 */
-#define V4L2_SDR_FMT_CS14LE v4l2_fourcc('C', 'S', '1', '4') /* complex s14le */
-#define V4L2_SDR_FMT_RU12LE v4l2_fourcc('R', 'U', '1', '2') /* real u12le */
-
-/* Touch formats - used for Touch devices */
-#define V4L2_TCH_FMT_DELTA_TD16 v4l2_fourcc('T', 'D', '1', '6') /* 16-bit signed deltas */
-#define V4L2_TCH_FMT_DELTA_TD08 v4l2_fourcc('T', 'D', '0', '8') /* 8-bit signed deltas */
-#define V4L2_TCH_FMT_TU16 v4l2_fourcc('T', 'U', '1', '6') /* 16-bit unsigned touch data */
-#define V4L2_TCH_FMT_TU08 v4l2_fourcc('T', 'U', '0', '8') /* 8-bit unsigned touch data */
-
-/* priv field value to indicates that subsequent fields are valid. */
-#define V4L2_PIX_FMT_PRIV_MAGIC 0xfeedcafe
-
-/* Flags */
-#define V4L2_PIX_FMT_FLAG_PREMUL_ALPHA 0x00000001
-
-/*
- * F O R M A T E N U M E R A T I O N
- */
-struct v4l2_fmtdesc {
- __u32 index; /* Format number */
- __u32 type; /* enum v4l2_buf_type */
- __u32 flags;
- __u8 description[32]; /* Description string */
- __u32 pixelformat; /* Format fourcc */
- __u32 reserved[4];
-};
-
-#define V4L2_FMT_FLAG_COMPRESSED 0x0001
-#define V4L2_FMT_FLAG_EMULATED 0x0002
-
- /* Frame Size and frame rate enumeration */
-/*
- * F R A M E S I Z E E N U M E R A T I O N
- */
-enum v4l2_frmsizetypes {
- V4L2_FRMSIZE_TYPE_DISCRETE = 1,
- V4L2_FRMSIZE_TYPE_CONTINUOUS = 2,
- V4L2_FRMSIZE_TYPE_STEPWISE = 3,
-};
-
-struct v4l2_frmsize_discrete {
- __u32 width; /* Frame width [pixel] */
- __u32 height; /* Frame height [pixel] */
-};
-
-struct v4l2_frmsize_stepwise {
- __u32 min_width; /* Minimum frame width [pixel] */
- __u32 max_width; /* Maximum frame width [pixel] */
- __u32 step_width; /* Frame width step size [pixel] */
- __u32 min_height; /* Minimum frame height [pixel] */
- __u32 max_height; /* Maximum frame height [pixel] */
- __u32 step_height; /* Frame height step size [pixel] */
-};
-
-struct v4l2_frmsizeenum {
- __u32 index; /* Frame size number */
- __u32 pixel_format; /* Pixel format */
- __u32 type; /* Frame size type the device supports. */
-
- union { /* Frame size */
- struct v4l2_frmsize_discrete discrete;
- struct v4l2_frmsize_stepwise stepwise;
- };
-
- __u32 reserved[2]; /* Reserved space for future use */
-};
-
-/*
- * F R A M E R A T E E N U M E R A T I O N
- */
-enum v4l2_frmivaltypes {
- V4L2_FRMIVAL_TYPE_DISCRETE = 1,
- V4L2_FRMIVAL_TYPE_CONTINUOUS = 2,
- V4L2_FRMIVAL_TYPE_STEPWISE = 3,
-};
-
-struct v4l2_frmival_stepwise {
- struct v4l2_fract min; /* Minimum frame interval [s] */
- struct v4l2_fract max; /* Maximum frame interval [s] */
- struct v4l2_fract step; /* Frame interval step size [s] */
-};
-
-struct v4l2_frmivalenum {
- __u32 index; /* Frame format index */
- __u32 pixel_format; /* Pixel format */
- __u32 width; /* Frame width */
- __u32 height; /* Frame height */
- __u32 type; /* Frame interval type the device supports. */
-
- union { /* Frame interval */
- struct v4l2_fract discrete;
- struct v4l2_frmival_stepwise stepwise;
- };
-
- __u32 reserved[2]; /* Reserved space for future use */
-};
-
-/*
- * T I M E C O D E
- */
-struct v4l2_timecode {
- __u32 type;
- __u32 flags;
- __u8 frames;
- __u8 seconds;
- __u8 minutes;
- __u8 hours;
- __u8 userbits[4];
-};
-
-/* Type */
-#define V4L2_TC_TYPE_24FPS 1
-#define V4L2_TC_TYPE_25FPS 2
-#define V4L2_TC_TYPE_30FPS 3
-#define V4L2_TC_TYPE_50FPS 4
-#define V4L2_TC_TYPE_60FPS 5
-
-/* Flags */
-#define V4L2_TC_FLAG_DROPFRAME 0x0001 /* "drop-frame" mode */
-#define V4L2_TC_FLAG_COLORFRAME 0x0002
-#define V4L2_TC_USERBITS_field 0x000C
-#define V4L2_TC_USERBITS_USERDEFINED 0x0000
-#define V4L2_TC_USERBITS_8BITCHARS 0x0008
-/* The above is based on SMPTE timecodes */
-
-struct v4l2_jpegcompression {
- int quality;
-
- int APPn; /* Number of APP segment to be written,
- * must be 0..15 */
- int APP_len; /* Length of data in JPEG APPn segment */
- char APP_data[60]; /* Data in the JPEG APPn segment. */
-
- int COM_len; /* Length of data in JPEG COM segment */
- char COM_data[60]; /* Data in JPEG COM segment */
-
- __u32 jpeg_markers; /* Which markers should go into the JPEG
- * output. Unless you exactly know what
- * you do, leave them untouched.
- * Including less markers will make the
- * resulting code smaller, but there will
- * be fewer applications which can read it.
- * The presence of the APP and COM marker
- * is influenced by APP_len and COM_len
- * ONLY, not by this property! */
-
-#define V4L2_JPEG_MARKER_DHT (1<<3) /* Define Huffman Tables */
-#define V4L2_JPEG_MARKER_DQT (1<<4) /* Define Quantization Tables */
-#define V4L2_JPEG_MARKER_DRI (1<<5) /* Define Restart Interval */
-#define V4L2_JPEG_MARKER_COM (1<<6) /* Comment segment */
-#define V4L2_JPEG_MARKER_APP (1<<7) /* App segment, driver will
- * always use APP0 */
-};
-
-/*
- * M E M O R Y - M A P P I N G B U F F E R S
- */
-struct v4l2_requestbuffers {
- __u32 count;
- __u32 type; /* enum v4l2_buf_type */
- __u32 memory; /* enum v4l2_memory */
- __u32 reserved[2];
-};
-
-/**
- * struct v4l2_plane - plane info for multi-planar buffers
- * @bytesused: number of bytes occupied by data in the plane (payload)
- * @length: size of this plane (NOT the payload) in bytes
- * @mem_offset: when memory in the associated struct v4l2_buffer is
- * V4L2_MEMORY_MMAP, equals the offset from the start of
- * the device memory for this plane (or is a "cookie" that
- * should be passed to mmap() called on the video node)
- * @userptr: when memory is V4L2_MEMORY_USERPTR, a userspace pointer
- * pointing to this plane
- * @fd: when memory is V4L2_MEMORY_DMABUF, a userspace file
- * descriptor associated with this plane
- * @data_offset: offset in the plane to the start of data; usually 0,
- * unless there is a header in front of the data
- *
- * Multi-planar buffers consist of one or more planes, e.g. an YCbCr buffer
- * with two planes can have one plane for Y, and another for interleaved CbCr
- * components. Each plane can reside in a separate memory buffer, or even in
- * a completely separate memory node (e.g. in embedded devices).
- */
-struct v4l2_plane {
- __u32 bytesused;
- __u32 length;
- union {
- __u32 mem_offset;
- unsigned long userptr;
- __s32 fd;
- } m;
- __u32 data_offset;
- __u32 reserved[11];
-};
-
-/**
- * struct v4l2_buffer - video buffer info
- * @index: id number of the buffer
- * @type: enum v4l2_buf_type; buffer type (type == *_MPLANE for
- * multiplanar buffers);
- * @bytesused: number of bytes occupied by data in the buffer (payload);
- * unused (set to 0) for multiplanar buffers
- * @flags: buffer informational flags
- * @field: enum v4l2_field; field order of the image in the buffer
- * @timestamp: frame timestamp
- * @timecode: frame timecode
- * @sequence: sequence count of this frame
- * @memory: enum v4l2_memory; the method, in which the actual video data is
- * passed
- * @offset: for non-multiplanar buffers with memory == V4L2_MEMORY_MMAP;
- * offset from the start of the device memory for this plane,
- * (or a "cookie" that should be passed to mmap() as offset)
- * @userptr: for non-multiplanar buffers with memory == V4L2_MEMORY_USERPTR;
- * a userspace pointer pointing to this buffer
- * @fd: for non-multiplanar buffers with memory == V4L2_MEMORY_DMABUF;
- * a userspace file descriptor associated with this buffer
- * @planes: for multiplanar buffers; userspace pointer to the array of plane
- * info structs for this buffer
- * @length: size in bytes of the buffer (NOT its payload) for single-plane
- * buffers (when type != *_MPLANE); number of elements in the
- * planes array for multi-plane buffers
- *
- * Contains data exchanged by application and driver using one of the Streaming
- * I/O methods.
- */
-struct v4l2_buffer {
- __u32 index;
- __u32 type;
- __u32 bytesused;
- __u32 flags;
- __u32 field;
- struct timeval timestamp;
- struct v4l2_timecode timecode;
- __u32 sequence;
-
- /* memory location */
- __u32 memory;
- union {
- __u32 offset;
- unsigned long userptr;
- struct v4l2_plane *planes;
- __s32 fd;
- } m;
- __u32 length;
- __u32 reserved2;
- __u32 reserved;
-};
-
-/* Flags for 'flags' field */
-/* Buffer is mapped (flag) */
-#define V4L2_BUF_FLAG_MAPPED 0x00000001
-/* Buffer is queued for processing */
-#define V4L2_BUF_FLAG_QUEUED 0x00000002
-/* Buffer is ready */
-#define V4L2_BUF_FLAG_DONE 0x00000004
-/* Image is a keyframe (I-frame) */
-#define V4L2_BUF_FLAG_KEYFRAME 0x00000008
-/* Image is a P-frame */
-#define V4L2_BUF_FLAG_PFRAME 0x00000010
-/* Image is a B-frame */
-#define V4L2_BUF_FLAG_BFRAME 0x00000020
-/* Buffer is ready, but the data contained within is corrupted. */
-#define V4L2_BUF_FLAG_ERROR 0x00000040
-/* timecode field is valid */
-#define V4L2_BUF_FLAG_TIMECODE 0x00000100
-/* Buffer is prepared for queuing */
-#define V4L2_BUF_FLAG_PREPARED 0x00000400
-/* Cache handling flags */
-#define V4L2_BUF_FLAG_NO_CACHE_INVALIDATE 0x00000800
-#define V4L2_BUF_FLAG_NO_CACHE_CLEAN 0x00001000
-/* Timestamp type */
-#define V4L2_BUF_FLAG_TIMESTAMP_MASK 0x0000e000
-#define V4L2_BUF_FLAG_TIMESTAMP_UNKNOWN 0x00000000
-#define V4L2_BUF_FLAG_TIMESTAMP_MONOTONIC 0x00002000
-#define V4L2_BUF_FLAG_TIMESTAMP_COPY 0x00004000
-/* Timestamp sources. */
-#define V4L2_BUF_FLAG_TSTAMP_SRC_MASK 0x00070000
-#define V4L2_BUF_FLAG_TSTAMP_SRC_EOF 0x00000000
-#define V4L2_BUF_FLAG_TSTAMP_SRC_SOE 0x00010000
-/* mem2mem encoder/decoder */
-#define V4L2_BUF_FLAG_LAST 0x00100000
-/* Vendor extensions */
-#define V4L2_QCOM_BUF_END_OF_SUBFRAME 0x00000080
-#define V4L2_QCOM_BUF_FLAG_CODECCONFIG 0x00020000
-#define V4L2_QCOM_BUF_FLAG_EOSEQ 0x00040000
-#define V4L2_QCOM_BUF_TIMESTAMP_INVALID 0x00080000
-#define V4L2_MSM_BUF_FLAG_MBAFF 0x00000200
-#define V4L2_QCOM_BUF_FLAG_DECODEONLY 0x00200000
-#define V4L2_QCOM_BUF_DATA_CORRUPT 0x00400000
-#define V4L2_QCOM_BUF_DROP_FRAME 0x00800000
-#define V4L2_QCOM_BUF_INPUT_UNSUPPORTED 0x01000000
-#define V4L2_QCOM_BUF_FLAG_EOS 0x02000000
-#define V4L2_QCOM_BUF_FLAG_READONLY 0x04000000
-#define V4L2_MSM_VIDC_BUF_START_CODE_NOT_FOUND 0x08000000
-#define V4L2_MSM_BUF_FLAG_YUV_601_709_CLAMP 0x10000000
-#define V4L2_QCOM_BUF_FLAG_PERF_MODE 0x20000000
-#define V4L2_MSM_BUF_FLAG_DEFER 0x40000000
-#define V4L2_QCOM_BUF_FLAG_IDRFRAME 0x80000000
-
-/**
- * struct v4l2_exportbuffer - export of video buffer as DMABUF file descriptor
- *
- * @index: id number of the buffer
- * @type: enum v4l2_buf_type; buffer type (type == *_MPLANE for
- * multiplanar buffers);
- * @plane: index of the plane to be exported, 0 for single plane queues
- * @flags: flags for newly created file, currently only O_CLOEXEC is
- * supported, refer to manual of open syscall for more details
- * @fd: file descriptor associated with DMABUF (set by driver)
- *
- * Contains data used for exporting a video buffer as DMABUF file descriptor.
- * The buffer is identified by a 'cookie' returned by VIDIOC_QUERYBUF
- * (identical to the cookie used to mmap() the buffer to userspace). All
- * reserved fields must be set to zero. The field reserved0 is expected to
- * become a structure 'type' allowing an alternative layout of the structure
- * content. Therefore this field should not be used for any other extensions.
- */
-struct v4l2_exportbuffer {
- __u32 type; /* enum v4l2_buf_type */
- __u32 index;
- __u32 plane;
- __u32 flags;
- __s32 fd;
- __u32 reserved[11];
-};
-
-/*
- * O V E R L A Y P R E V I E W
- */
-struct v4l2_framebuffer {
- __u32 capability;
- __u32 flags;
-/* FIXME: in theory we should pass something like PCI device + memory
- * region + offset instead of some physical address */
- void *base;
- struct {
- __u32 width;
- __u32 height;
- __u32 pixelformat;
- __u32 field; /* enum v4l2_field */
- __u32 bytesperline; /* for padding, zero if unused */
- __u32 sizeimage;
- __u32 colorspace; /* enum v4l2_colorspace */
- __u32 priv; /* reserved field, set to 0 */
- } fmt;
-};
-/* Flags for the 'capability' field. Read only */
-#define V4L2_FBUF_CAP_EXTERNOVERLAY 0x0001
-#define V4L2_FBUF_CAP_CHROMAKEY 0x0002
-#define V4L2_FBUF_CAP_LIST_CLIPPING 0x0004
-#define V4L2_FBUF_CAP_BITMAP_CLIPPING 0x0008
-#define V4L2_FBUF_CAP_LOCAL_ALPHA 0x0010
-#define V4L2_FBUF_CAP_GLOBAL_ALPHA 0x0020
-#define V4L2_FBUF_CAP_LOCAL_INV_ALPHA 0x0040
-#define V4L2_FBUF_CAP_SRC_CHROMAKEY 0x0080
-/* Flags for the 'flags' field. */
-#define V4L2_FBUF_FLAG_PRIMARY 0x0001
-#define V4L2_FBUF_FLAG_OVERLAY 0x0002
-#define V4L2_FBUF_FLAG_CHROMAKEY 0x0004
-#define V4L2_FBUF_FLAG_LOCAL_ALPHA 0x0008
-#define V4L2_FBUF_FLAG_GLOBAL_ALPHA 0x0010
-#define V4L2_FBUF_FLAG_LOCAL_INV_ALPHA 0x0020
-#define V4L2_FBUF_FLAG_SRC_CHROMAKEY 0x0040
-
-struct v4l2_clip {
- struct v4l2_rect c;
- struct v4l2_clip *next;
-};
-
-struct v4l2_window {
- struct v4l2_rect w;
- __u32 field; /* enum v4l2_field */
- __u32 chromakey;
- struct v4l2_clip *clips;
- __u32 clipcount;
- void *bitmap;
- __u8 global_alpha;
-};
-
-/*
- * C A P T U R E P A R A M E T E R S
- */
-struct v4l2_captureparm {
- __u32 capability; /* Supported modes */
- __u32 capturemode; /* Current mode */
- struct v4l2_fract timeperframe; /* Time per frame in seconds */
- __u32 extendedmode; /* Driver-specific extensions */
- __u32 readbuffers; /* # of buffers for read */
- __u32 reserved[4];
-};
-
-/* Flags for 'capability' and 'capturemode' fields */
-#define V4L2_MODE_HIGHQUALITY 0x0001 /* High quality imaging mode */
-#define V4L2_CAP_TIMEPERFRAME 0x1000 /* timeperframe field is supported */
-
-struct v4l2_outputparm {
- __u32 capability; /* Supported modes */
- __u32 outputmode; /* Current mode */
- struct v4l2_fract timeperframe; /* Time per frame in seconds */
- __u32 extendedmode; /* Driver-specific extensions */
- __u32 writebuffers; /* # of buffers for write */
- __u32 reserved[4];
-};
-
-/*
- * I N P U T I M A G E C R O P P I N G
- */
-struct v4l2_cropcap {
- __u32 type; /* enum v4l2_buf_type */
- struct v4l2_rect bounds;
- struct v4l2_rect defrect;
- struct v4l2_fract pixelaspect;
-};
-
-struct v4l2_crop {
- __u32 type; /* enum v4l2_buf_type */
- struct v4l2_rect c;
-};
-
-/**
- * struct v4l2_selection - selection info
- * @type: buffer type (do not use *_MPLANE types)
- * @target: Selection target, used to choose one of possible rectangles;
- * defined in v4l2-common.h; V4L2_SEL_TGT_* .
- * @flags: constraints flags, defined in v4l2-common.h; V4L2_SEL_FLAG_*.
- * @r: coordinates of selection window
- * @reserved: for future use, rounds structure size to 64 bytes, set to zero
- *
- * Hardware may use multiple helper windows to process a video stream.
- * The structure is used to exchange this selection areas between
- * an application and a driver.
- */
-struct v4l2_selection {
- __u32 type;
- __u32 target;
- __u32 flags;
- struct v4l2_rect r;
- __u32 reserved[9];
-};
-
-
-/*
- * A N A L O G V I D E O S T A N D A R D
- */
-
-typedef __u64 v4l2_std_id;
-
-/* one bit for each */
-#define V4L2_STD_PAL_B ((v4l2_std_id)0x00000001)
-#define V4L2_STD_PAL_B1 ((v4l2_std_id)0x00000002)
-#define V4L2_STD_PAL_G ((v4l2_std_id)0x00000004)
-#define V4L2_STD_PAL_H ((v4l2_std_id)0x00000008)
-#define V4L2_STD_PAL_I ((v4l2_std_id)0x00000010)
-#define V4L2_STD_PAL_D ((v4l2_std_id)0x00000020)
-#define V4L2_STD_PAL_D1 ((v4l2_std_id)0x00000040)
-#define V4L2_STD_PAL_K ((v4l2_std_id)0x00000080)
-
-#define V4L2_STD_PAL_M ((v4l2_std_id)0x00000100)
-#define V4L2_STD_PAL_N ((v4l2_std_id)0x00000200)
-#define V4L2_STD_PAL_Nc ((v4l2_std_id)0x00000400)
-#define V4L2_STD_PAL_60 ((v4l2_std_id)0x00000800)
-
-#define V4L2_STD_NTSC_M ((v4l2_std_id)0x00001000) /* BTSC */
-#define V4L2_STD_NTSC_M_JP ((v4l2_std_id)0x00002000) /* EIA-J */
-#define V4L2_STD_NTSC_443 ((v4l2_std_id)0x00004000)
-#define V4L2_STD_NTSC_M_KR ((v4l2_std_id)0x00008000) /* FM A2 */
-
-#define V4L2_STD_SECAM_B ((v4l2_std_id)0x00010000)
-#define V4L2_STD_SECAM_D ((v4l2_std_id)0x00020000)
-#define V4L2_STD_SECAM_G ((v4l2_std_id)0x00040000)
-#define V4L2_STD_SECAM_H ((v4l2_std_id)0x00080000)
-#define V4L2_STD_SECAM_K ((v4l2_std_id)0x00100000)
-#define V4L2_STD_SECAM_K1 ((v4l2_std_id)0x00200000)
-#define V4L2_STD_SECAM_L ((v4l2_std_id)0x00400000)
-#define V4L2_STD_SECAM_LC ((v4l2_std_id)0x00800000)
-
-/* ATSC/HDTV */
-#define V4L2_STD_ATSC_8_VSB ((v4l2_std_id)0x01000000)
-#define V4L2_STD_ATSC_16_VSB ((v4l2_std_id)0x02000000)
-
-/* FIXME:
- Although std_id is 64 bits, there is an issue on PPC32 architecture that
- makes switch(__u64) to break. So, there's a hack on v4l2-common.c rounding
- this value to 32 bits.
- As, currently, the max value is for V4L2_STD_ATSC_16_VSB (30 bits wide),
- it should work fine. However, if needed to add more than two standards,
- v4l2-common.c should be fixed.
- */
-
-/*
- * Some macros to merge video standards in order to make live easier for the
- * drivers and V4L2 applications
- */
-
-/*
- * "Common" NTSC/M - It should be noticed that V4L2_STD_NTSC_443 is
- * Missing here.
- */
-#define V4L2_STD_NTSC (V4L2_STD_NTSC_M |\
- V4L2_STD_NTSC_M_JP |\
- V4L2_STD_NTSC_M_KR)
-/* Secam macros */
-#define V4L2_STD_SECAM_DK (V4L2_STD_SECAM_D |\
- V4L2_STD_SECAM_K |\
- V4L2_STD_SECAM_K1)
-/* All Secam Standards */
-#define V4L2_STD_SECAM (V4L2_STD_SECAM_B |\
- V4L2_STD_SECAM_G |\
- V4L2_STD_SECAM_H |\
- V4L2_STD_SECAM_DK |\
- V4L2_STD_SECAM_L |\
- V4L2_STD_SECAM_LC)
-/* PAL macros */
-#define V4L2_STD_PAL_BG (V4L2_STD_PAL_B |\
- V4L2_STD_PAL_B1 |\
- V4L2_STD_PAL_G)
-#define V4L2_STD_PAL_DK (V4L2_STD_PAL_D |\
- V4L2_STD_PAL_D1 |\
- V4L2_STD_PAL_K)
-/*
- * "Common" PAL - This macro is there to be compatible with the old
- * V4L1 concept of "PAL": /BGDKHI.
- * Several PAL standards are missing here: /M, /N and /Nc
- */
-#define V4L2_STD_PAL (V4L2_STD_PAL_BG |\
- V4L2_STD_PAL_DK |\
- V4L2_STD_PAL_H |\
- V4L2_STD_PAL_I)
-/* Chroma "agnostic" standards */
-#define V4L2_STD_B (V4L2_STD_PAL_B |\
- V4L2_STD_PAL_B1 |\
- V4L2_STD_SECAM_B)
-#define V4L2_STD_G (V4L2_STD_PAL_G |\
- V4L2_STD_SECAM_G)
-#define V4L2_STD_H (V4L2_STD_PAL_H |\
- V4L2_STD_SECAM_H)
-#define V4L2_STD_L (V4L2_STD_SECAM_L |\
- V4L2_STD_SECAM_LC)
-#define V4L2_STD_GH (V4L2_STD_G |\
- V4L2_STD_H)
-#define V4L2_STD_DK (V4L2_STD_PAL_DK |\
- V4L2_STD_SECAM_DK)
-#define V4L2_STD_BG (V4L2_STD_B |\
- V4L2_STD_G)
-#define V4L2_STD_MN (V4L2_STD_PAL_M |\
- V4L2_STD_PAL_N |\
- V4L2_STD_PAL_Nc |\
- V4L2_STD_NTSC)
-
-/* Standards where MTS/BTSC stereo could be found */
-#define V4L2_STD_MTS (V4L2_STD_NTSC_M |\
- V4L2_STD_PAL_M |\
- V4L2_STD_PAL_N |\
- V4L2_STD_PAL_Nc)
-
-/* Standards for Countries with 60Hz Line frequency */
-#define V4L2_STD_525_60 (V4L2_STD_PAL_M |\
- V4L2_STD_PAL_60 |\
- V4L2_STD_NTSC |\
- V4L2_STD_NTSC_443)
-/* Standards for Countries with 50Hz Line frequency */
-#define V4L2_STD_625_50 (V4L2_STD_PAL |\
- V4L2_STD_PAL_N |\
- V4L2_STD_PAL_Nc |\
- V4L2_STD_SECAM)
-
-#define V4L2_STD_ATSC (V4L2_STD_ATSC_8_VSB |\
- V4L2_STD_ATSC_16_VSB)
-/* Macros with none and all analog standards */
-#define V4L2_STD_UNKNOWN 0
-#define V4L2_STD_ALL (V4L2_STD_525_60 |\
- V4L2_STD_625_50)
-
-struct v4l2_standard {
- __u32 index;
- v4l2_std_id id;
- __u8 name[24];
- struct v4l2_fract frameperiod; /* Frames, not fields */
- __u32 framelines;
- __u32 reserved[4];
-};
-
-/*
- * D V B T T I M I N G S
- */
-
-/** struct v4l2_bt_timings - BT.656/BT.1120 timing data
- * @width: total width of the active video in pixels
- * @height: total height of the active video in lines
- * @interlaced: Interlaced or progressive
- * @polarities: Positive or negative polarities
- * @pixelclock: Pixel clock in HZ. Ex. 74.25MHz->74250000
- * @hfrontporch:Horizontal front porch in pixels
- * @hsync: Horizontal Sync length in pixels
- * @hbackporch: Horizontal back porch in pixels
- * @vfrontporch:Vertical front porch in lines
- * @vsync: Vertical Sync length in lines
- * @vbackporch: Vertical back porch in lines
- * @il_vfrontporch:Vertical front porch for the even field
- * (aka field 2) of interlaced field formats
- * @il_vsync: Vertical Sync length for the even field
- * (aka field 2) of interlaced field formats
- * @il_vbackporch:Vertical back porch for the even field
- * (aka field 2) of interlaced field formats
- * @standards: Standards the timing belongs to
- * @flags: Flags
- * @reserved: Reserved fields, must be zeroed.
- *
- * A note regarding vertical interlaced timings: height refers to the total
- * height of the active video frame (= two fields). The blanking timings refer
- * to the blanking of each field. So the height of the total frame is
- * calculated as follows:
- *
- * tot_height = height + vfrontporch + vsync + vbackporch +
- * il_vfrontporch + il_vsync + il_vbackporch
- *
- * The active height of each field is height / 2.
- */
-struct v4l2_bt_timings {
- __u32 width;
- __u32 height;
- __u32 interlaced;
- __u32 polarities;
- __u64 pixelclock;
- __u32 hfrontporch;
- __u32 hsync;
- __u32 hbackporch;
- __u32 vfrontporch;
- __u32 vsync;
- __u32 vbackporch;
- __u32 il_vfrontporch;
- __u32 il_vsync;
- __u32 il_vbackporch;
- __u32 standards;
- __u32 flags;
- __u32 reserved[14];
-} __attribute__ ((packed));
-
-/* Interlaced or progressive format */
-#define V4L2_DV_PROGRESSIVE 0
-#define V4L2_DV_INTERLACED 1
-
-/* Polarities. If bit is not set, it is assumed to be negative polarity */
-#define V4L2_DV_VSYNC_POS_POL 0x00000001
-#define V4L2_DV_HSYNC_POS_POL 0x00000002
-
-/* Timings standards */
-#define V4L2_DV_BT_STD_CEA861 (1 << 0) /* CEA-861 Digital TV Profile */
-#define V4L2_DV_BT_STD_DMT (1 << 1) /* VESA Discrete Monitor Timings */
-#define V4L2_DV_BT_STD_CVT (1 << 2) /* VESA Coordinated Video Timings */
-#define V4L2_DV_BT_STD_GTF (1 << 3) /* VESA Generalized Timings Formula */
-#define V4L2_DV_BT_STD_SDI (1 << 4) /* SDI Timings */
-
-/* Flags */
-
-/* CVT/GTF specific: timing uses reduced blanking (CVT) or the 'Secondary
- GTF' curve (GTF). In both cases the horizontal and/or vertical blanking
- intervals are reduced, allowing a higher resolution over the same
- bandwidth. This is a read-only flag. */
-#define V4L2_DV_FL_REDUCED_BLANKING (1 << 0)
-/* CEA-861 specific: set for CEA-861 formats with a framerate of a multiple
- of six. These formats can be optionally played at 1 / 1.001 speed.
- This is a read-only flag. */
-#define V4L2_DV_FL_CAN_REDUCE_FPS (1 << 1)
-/* CEA-861 specific: only valid for video transmitters, the flag is cleared
- by receivers.
- If the framerate of the format is a multiple of six, then the pixelclock
- used to set up the transmitter is divided by 1.001 to make it compatible
- with 60 Hz based standards such as NTSC and PAL-M that use a framerate of
- 29.97 Hz. Otherwise this flag is cleared. If the transmitter can't generate
- such frequencies, then the flag will also be cleared. */
-#define V4L2_DV_FL_REDUCED_FPS (1 << 2)
-/* Specific to interlaced formats: if set, then field 1 is really one half-line
- longer and field 2 is really one half-line shorter, so each field has
- exactly the same number of half-lines. Whether half-lines can be detected
- or used depends on the hardware. */
-#define V4L2_DV_FL_HALF_LINE (1 << 3)
-/* If set, then this is a Consumer Electronics (CE) video format. Such formats
- * differ from other formats (commonly called IT formats) in that if RGB
- * encoding is used then by default the RGB values use limited range (i.e.
- * use the range 16-235) as opposed to 0-255. All formats defined in CEA-861
- * except for the 640x480 format are CE formats. */
-#define V4L2_DV_FL_IS_CE_VIDEO (1 << 4)
-/* Some formats like SMPTE-125M have an interlaced signal with a odd
- * total height. For these formats, if this flag is set, the first
- * field has the extra line. If not, it is the second field.
- */
-#define V4L2_DV_FL_FIRST_FIELD_EXTRA_LINE (1 << 5)
-
-/* A few useful defines to calculate the total blanking and frame sizes */
-#define V4L2_DV_BT_BLANKING_WIDTH(bt) \
- ((bt)->hfrontporch + (bt)->hsync + (bt)->hbackporch)
-#define V4L2_DV_BT_FRAME_WIDTH(bt) \
- ((bt)->width + V4L2_DV_BT_BLANKING_WIDTH(bt))
-#define V4L2_DV_BT_BLANKING_HEIGHT(bt) \
- ((bt)->vfrontporch + (bt)->vsync + (bt)->vbackporch + \
- (bt)->il_vfrontporch + (bt)->il_vsync + (bt)->il_vbackporch)
-#define V4L2_DV_BT_FRAME_HEIGHT(bt) \
- ((bt)->height + V4L2_DV_BT_BLANKING_HEIGHT(bt))
-
-/** struct v4l2_dv_timings - DV timings
- * @type: the type of the timings
- * @bt: BT656/1120 timings
- */
-struct v4l2_dv_timings {
- __u32 type;
- union {
- struct v4l2_bt_timings bt;
- __u32 reserved[32];
- };
-} __attribute__ ((packed));
-
-/* Values for the type field */
-#define V4L2_DV_BT_656_1120 0 /* BT.656/1120 timing type */
-
-
-/** struct v4l2_enum_dv_timings - DV timings enumeration
- * @index: enumeration index
- * @pad: the pad number for which to enumerate timings (used with
- * v4l-subdev nodes only)
- * @reserved: must be zeroed
- * @timings: the timings for the given index
- */
-struct v4l2_enum_dv_timings {
- __u32 index;
- __u32 pad;
- __u32 reserved[2];
- struct v4l2_dv_timings timings;
-};
-
-/** struct v4l2_bt_timings_cap - BT.656/BT.1120 timing capabilities
- * @min_width: width in pixels
- * @max_width: width in pixels
- * @min_height: height in lines
- * @max_height: height in lines
- * @min_pixelclock: Pixel clock in HZ. Ex. 74.25MHz->74250000
- * @max_pixelclock: Pixel clock in HZ. Ex. 74.25MHz->74250000
- * @standards: Supported standards
- * @capabilities: Supported capabilities
- * @reserved: Must be zeroed
- */
-struct v4l2_bt_timings_cap {
- __u32 min_width;
- __u32 max_width;
- __u32 min_height;
- __u32 max_height;
- __u64 min_pixelclock;
- __u64 max_pixelclock;
- __u32 standards;
- __u32 capabilities;
- __u32 reserved[16];
-} __attribute__ ((packed));
-
-/* Supports interlaced formats */
-#define V4L2_DV_BT_CAP_INTERLACED (1 << 0)
-/* Supports progressive formats */
-#define V4L2_DV_BT_CAP_PROGRESSIVE (1 << 1)
-/* Supports CVT/GTF reduced blanking */
-#define V4L2_DV_BT_CAP_REDUCED_BLANKING (1 << 2)
-/* Supports custom formats */
-#define V4L2_DV_BT_CAP_CUSTOM (1 << 3)
-
-/** struct v4l2_dv_timings_cap - DV timings capabilities
- * @type: the type of the timings (same as in struct v4l2_dv_timings)
- * @pad: the pad number for which to query capabilities (used with
- * v4l-subdev nodes only)
- * @bt: the BT656/1120 timings capabilities
- */
-struct v4l2_dv_timings_cap {
- __u32 type;
- __u32 pad;
- __u32 reserved[2];
- union {
- struct v4l2_bt_timings_cap bt;
- __u32 raw_data[32];
- };
-};
-
-
-/*
- * V I D E O I N P U T S
- */
-struct v4l2_input {
- __u32 index; /* Which input */
- __u8 name[32]; /* Label */
- __u32 type; /* Type of input */
- __u32 audioset; /* Associated audios (bitfield) */
- __u32 tuner; /* enum v4l2_tuner_type */
- v4l2_std_id std;
- __u32 status;
- __u32 capabilities;
- __u32 reserved[3];
-};
-
-/* Values for the 'type' field */
-#define V4L2_INPUT_TYPE_TUNER 1
-#define V4L2_INPUT_TYPE_CAMERA 2
-#define V4L2_INPUT_TYPE_TOUCH 3
-
-/* field 'status' - general */
-#define V4L2_IN_ST_NO_POWER 0x00000001 /* Attached device is off */
-#define V4L2_IN_ST_NO_SIGNAL 0x00000002
-#define V4L2_IN_ST_NO_COLOR 0x00000004
-
-/* field 'status' - sensor orientation */
-/* If sensor is mounted upside down set both bits */
-#define V4L2_IN_ST_HFLIP 0x00000010 /* Frames are flipped horizontally */
-#define V4L2_IN_ST_VFLIP 0x00000020 /* Frames are flipped vertically */
-
-/* field 'status' - analog */
-#define V4L2_IN_ST_NO_H_LOCK 0x00000100 /* No horizontal sync lock */
-#define V4L2_IN_ST_COLOR_KILL 0x00000200 /* Color killer is active */
-#define V4L2_IN_ST_NO_V_LOCK 0x00000400 /* No vertical sync lock */
-#define V4L2_IN_ST_NO_STD_LOCK 0x00000800 /* No standard format lock */
-
-/* field 'status' - digital */
-#define V4L2_IN_ST_NO_SYNC 0x00010000 /* No synchronization lock */
-#define V4L2_IN_ST_NO_EQU 0x00020000 /* No equalizer lock */
-#define V4L2_IN_ST_NO_CARRIER 0x00040000 /* Carrier recovery failed */
-
-/* field 'status' - VCR and set-top box */
-#define V4L2_IN_ST_MACROVISION 0x01000000 /* Macrovision detected */
-#define V4L2_IN_ST_NO_ACCESS 0x02000000 /* Conditional access denied */
-#define V4L2_IN_ST_VTR 0x04000000 /* VTR time constant */
-
-/* capabilities flags */
-#define V4L2_IN_CAP_DV_TIMINGS 0x00000002 /* Supports S_DV_TIMINGS */
-#define V4L2_IN_CAP_CUSTOM_TIMINGS V4L2_IN_CAP_DV_TIMINGS /* For compatibility */
-#define V4L2_IN_CAP_STD 0x00000004 /* Supports S_STD */
-#define V4L2_IN_CAP_NATIVE_SIZE 0x00000008 /* Supports setting native size */
-
-/*
- * V I D E O O U T P U T S
- */
-struct v4l2_output {
- __u32 index; /* Which output */
- __u8 name[32]; /* Label */
- __u32 type; /* Type of output */
- __u32 audioset; /* Associated audios (bitfield) */
- __u32 modulator; /* Associated modulator */
- v4l2_std_id std;
- __u32 capabilities;
- __u32 reserved[3];
-};
-/* Values for the 'type' field */
-#define V4L2_OUTPUT_TYPE_MODULATOR 1
-#define V4L2_OUTPUT_TYPE_ANALOG 2
-#define V4L2_OUTPUT_TYPE_ANALOGVGAOVERLAY 3
-
-/* capabilities flags */
-#define V4L2_OUT_CAP_DV_TIMINGS 0x00000002 /* Supports S_DV_TIMINGS */
-#define V4L2_OUT_CAP_CUSTOM_TIMINGS V4L2_OUT_CAP_DV_TIMINGS /* For compatibility */
-#define V4L2_OUT_CAP_STD 0x00000004 /* Supports S_STD */
-#define V4L2_OUT_CAP_NATIVE_SIZE 0x00000008 /* Supports setting native size */
-
-/*
- * C O N T R O L S
- */
-struct v4l2_control {
- __u32 id;
- __s32 value;
-};
-
-struct v4l2_ext_control {
- __u32 id;
- __u32 size;
- __u32 reserved2[1];
- union {
- __s32 value;
- __s64 value64;
- char *string;
- __u8 *p_u8;
- __u16 *p_u16;
- __u32 *p_u32;
- void *ptr;
- };
-} __attribute__ ((packed));
-
-struct v4l2_ext_controls {
- union {
- __u32 ctrl_class;
- __u32 which;
- };
- __u32 count;
- __u32 error_idx;
- __u32 reserved[2];
- struct v4l2_ext_control *controls;
-};
-
-#define V4L2_CTRL_ID_MASK (0x0fffffff)
-#define V4L2_CTRL_ID2CLASS(id) ((id) & 0x0fff0000UL)
-#define V4L2_CTRL_ID2WHICH(id) ((id) & 0x0fff0000UL)
-#define V4L2_CTRL_DRIVER_PRIV(id) (((id) & 0xffff) >= 0x1000)
-#define V4L2_CTRL_MAX_DIMS (4)
-#define V4L2_CTRL_WHICH_CUR_VAL 0
-#define V4L2_CTRL_WHICH_DEF_VAL 0x0f000000
-
-enum v4l2_ctrl_type {
- V4L2_CTRL_TYPE_INTEGER = 1,
- V4L2_CTRL_TYPE_BOOLEAN = 2,
- V4L2_CTRL_TYPE_MENU = 3,
- V4L2_CTRL_TYPE_BUTTON = 4,
- V4L2_CTRL_TYPE_INTEGER64 = 5,
- V4L2_CTRL_TYPE_CTRL_CLASS = 6,
- V4L2_CTRL_TYPE_STRING = 7,
- V4L2_CTRL_TYPE_BITMASK = 8,
- V4L2_CTRL_TYPE_INTEGER_MENU = 9,
-
- /* Compound types are >= 0x0100 */
- V4L2_CTRL_COMPOUND_TYPES = 0x0100,
- V4L2_CTRL_TYPE_U8 = 0x0100,
- V4L2_CTRL_TYPE_U16 = 0x0101,
- V4L2_CTRL_TYPE_U32 = 0x0102,
-};
-
-/* Used in the VIDIOC_QUERYCTRL ioctl for querying controls */
-struct v4l2_queryctrl {
- __u32 id;
- __u32 type; /* enum v4l2_ctrl_type */
- __u8 name[32]; /* Whatever */
- __s32 minimum; /* Note signedness */
- __s32 maximum;
- __s32 step;
- __s32 default_value;
- __u32 flags;
- __u32 reserved[2];
-};
-
-/* Used in the VIDIOC_QUERY_EXT_CTRL ioctl for querying extended controls */
-struct v4l2_query_ext_ctrl {
- __u32 id;
- __u32 type;
- char name[32];
- __s64 minimum;
- __s64 maximum;
- __u64 step;
- __s64 default_value;
- __u32 flags;
- __u32 elem_size;
- __u32 elems;
- __u32 nr_of_dims;
- __u32 dims[V4L2_CTRL_MAX_DIMS];
- __u32 reserved[32];
-};
-
-/* Used in the VIDIOC_QUERYMENU ioctl for querying menu items */
-struct v4l2_querymenu {
- __u32 id;
- __u32 index;
- union {
- __u8 name[32]; /* Whatever */
- __s64 value;
- };
- __u32 reserved;
-} __attribute__ ((packed));
-
-/* Control flags */
-#define V4L2_CTRL_FLAG_DISABLED 0x0001
-#define V4L2_CTRL_FLAG_GRABBED 0x0002
-#define V4L2_CTRL_FLAG_READ_ONLY 0x0004
-#define V4L2_CTRL_FLAG_UPDATE 0x0008
-#define V4L2_CTRL_FLAG_INACTIVE 0x0010
-#define V4L2_CTRL_FLAG_SLIDER 0x0020
-#define V4L2_CTRL_FLAG_WRITE_ONLY 0x0040
-#define V4L2_CTRL_FLAG_VOLATILE 0x0080
-#define V4L2_CTRL_FLAG_HAS_PAYLOAD 0x0100
-#define V4L2_CTRL_FLAG_EXECUTE_ON_WRITE 0x0200
-
-/* Query flags, to be ORed with the control ID */
-#define V4L2_CTRL_FLAG_NEXT_CTRL 0x80000000
-#define V4L2_CTRL_FLAG_NEXT_COMPOUND 0x40000000
-
-/* User-class control IDs defined by V4L2 */
-#define V4L2_CID_MAX_CTRLS 1024
-/* IDs reserved for driver specific controls */
-#define V4L2_CID_PRIVATE_BASE 0x08000000
-
-
-/*
- * T U N I N G
- */
-struct v4l2_tuner {
- __u32 index;
- __u8 name[32];
- __u32 type; /* enum v4l2_tuner_type */
- __u32 capability;
- __u32 rangelow;
- __u32 rangehigh;
- __u32 rxsubchans;
- __u32 audmode;
- __s32 signal;
- __s32 afc;
- __u32 reserved[4];
-};
-
-struct v4l2_modulator {
- __u32 index;
- __u8 name[32];
- __u32 capability;
- __u32 rangelow;
- __u32 rangehigh;
- __u32 txsubchans;
- __u32 type; /* enum v4l2_tuner_type */
- __u32 reserved[3];
-};
-
-/* Flags for the 'capability' field */
-#define V4L2_TUNER_CAP_LOW 0x0001
-#define V4L2_TUNER_CAP_NORM 0x0002
-#define V4L2_TUNER_CAP_HWSEEK_BOUNDED 0x0004
-#define V4L2_TUNER_CAP_HWSEEK_WRAP 0x0008
-#define V4L2_TUNER_CAP_STEREO 0x0010
-#define V4L2_TUNER_CAP_LANG2 0x0020
-#define V4L2_TUNER_CAP_SAP 0x0020
-#define V4L2_TUNER_CAP_LANG1 0x0040
-#define V4L2_TUNER_CAP_RDS 0x0080
-#define V4L2_TUNER_CAP_RDS_BLOCK_IO 0x0100
-#define V4L2_TUNER_CAP_RDS_CONTROLS 0x0200
-#define V4L2_TUNER_CAP_FREQ_BANDS 0x0400
-#define V4L2_TUNER_CAP_HWSEEK_PROG_LIM 0x0800
-#define V4L2_TUNER_CAP_1HZ 0x1000
-
-/* Flags for the 'rxsubchans' field */
-#define V4L2_TUNER_SUB_MONO 0x0001
-#define V4L2_TUNER_SUB_STEREO 0x0002
-#define V4L2_TUNER_SUB_LANG2 0x0004
-#define V4L2_TUNER_SUB_SAP 0x0004
-#define V4L2_TUNER_SUB_LANG1 0x0008
-#define V4L2_TUNER_SUB_RDS 0x0010
-
-/* Values for the 'audmode' field */
-#define V4L2_TUNER_MODE_MONO 0x0000
-#define V4L2_TUNER_MODE_STEREO 0x0001
-#define V4L2_TUNER_MODE_LANG2 0x0002
-#define V4L2_TUNER_MODE_SAP 0x0002
-#define V4L2_TUNER_MODE_LANG1 0x0003
-#define V4L2_TUNER_MODE_LANG1_LANG2 0x0004
-
-struct v4l2_frequency {
- __u32 tuner;
- __u32 type; /* enum v4l2_tuner_type */
- __u32 frequency;
- __u32 reserved[8];
-};
-
-#define V4L2_BAND_MODULATION_VSB (1 << 1)
-#define V4L2_BAND_MODULATION_FM (1 << 2)
-#define V4L2_BAND_MODULATION_AM (1 << 3)
-
-struct v4l2_frequency_band {
- __u32 tuner;
- __u32 type; /* enum v4l2_tuner_type */
- __u32 index;
- __u32 capability;
- __u32 rangelow;
- __u32 rangehigh;
- __u32 modulation;
- __u32 reserved[9];
-};
-
-struct v4l2_hw_freq_seek {
- __u32 tuner;
- __u32 type; /* enum v4l2_tuner_type */
- __u32 seek_upward;
- __u32 wrap_around;
- __u32 spacing;
- __u32 rangelow;
- __u32 rangehigh;
- __u32 reserved[5];
-};
-
-/*
- * R D S
- */
-
-struct v4l2_rds_data {
- __u8 lsb;
- __u8 msb;
- __u8 block;
-} __attribute__ ((packed));
-
-#define V4L2_RDS_BLOCK_MSK 0x7
-#define V4L2_RDS_BLOCK_A 0
-#define V4L2_RDS_BLOCK_B 1
-#define V4L2_RDS_BLOCK_C 2
-#define V4L2_RDS_BLOCK_D 3
-#define V4L2_RDS_BLOCK_C_ALT 4
-#define V4L2_RDS_BLOCK_INVALID 7
-
-#define V4L2_RDS_BLOCK_CORRECTED 0x40
-#define V4L2_RDS_BLOCK_ERROR 0x80
-
-/*
- * A U D I O
- */
-struct v4l2_audio {
- __u32 index;
- __u8 name[32];
- __u32 capability;
- __u32 mode;
- __u32 reserved[2];
-};
-
-/* Flags for the 'capability' field */
-#define V4L2_AUDCAP_STEREO 0x00001
-#define V4L2_AUDCAP_AVL 0x00002
-
-/* Flags for the 'mode' field */
-#define V4L2_AUDMODE_AVL 0x00001
-
-struct v4l2_audioout {
- __u32 index;
- __u8 name[32];
- __u32 capability;
- __u32 mode;
- __u32 reserved[2];
-};
-
-/*
- * M P E G S E R V I C E S
- */
-#if 1
-#define V4L2_ENC_IDX_FRAME_I (0)
-#define V4L2_ENC_IDX_FRAME_P (1)
-#define V4L2_ENC_IDX_FRAME_B (2)
-#define V4L2_ENC_IDX_FRAME_MASK (0xf)
-
-struct v4l2_enc_idx_entry {
- __u64 offset;
- __u64 pts;
- __u32 length;
- __u32 flags;
- __u32 reserved[2];
-};
-
-#define V4L2_ENC_IDX_ENTRIES (64)
-struct v4l2_enc_idx {
- __u32 entries;
- __u32 entries_cap;
- __u32 reserved[4];
- struct v4l2_enc_idx_entry entry[V4L2_ENC_IDX_ENTRIES];
-};
-
-
-#define V4L2_ENC_CMD_START (0)
-#define V4L2_ENC_CMD_STOP (1)
-#define V4L2_ENC_CMD_PAUSE (2)
-#define V4L2_ENC_CMD_RESUME (3)
-
-/* Flags for V4L2_ENC_CMD_STOP */
-#define V4L2_ENC_CMD_STOP_AT_GOP_END (1 << 0)
-
-struct v4l2_encoder_cmd {
- __u32 cmd;
- __u32 flags;
- union {
- struct {
- __u32 data[8];
- } raw;
- };
-};
-
-/* Decoder commands */
-#define V4L2_DEC_CMD_START (0)
-#define V4L2_DEC_CMD_STOP (1)
-#define V4L2_DEC_CMD_PAUSE (2)
-#define V4L2_DEC_CMD_RESUME (3)
-#define V4L2_QCOM_CMD_FLUSH (4)
-#define V4L2_DEC_QCOM_CMD_RECONFIG_HINT (5)
-#define V4L2_QCOM_CMD_SESSION_CONTINUE (6)
-/* Flags for V4L2_DEC_CMD_START */
-#define V4L2_DEC_CMD_START_MUTE_AUDIO (1 << 0)
-
-/* Flags for V4L2_DEC_CMD_PAUSE */
-#define V4L2_DEC_CMD_PAUSE_TO_BLACK (1 << 0)
-
-/* Flags for V4L2_DEC_CMD_STOP */
-#define V4L2_DEC_CMD_STOP_TO_BLACK (1 << 0)
-#define V4L2_DEC_CMD_STOP_IMMEDIATELY (1 << 1)
-
-#define V4L2_QCOM_CMD_FLUSH_OUTPUT (1 << 0)
-#define V4L2_QCOM_CMD_FLUSH_CAPTURE (1 << 1)
-
-/* Play format requirements (returned by the driver): */
-
-/* The decoder has no special format requirements */
-#define V4L2_DEC_START_FMT_NONE (0)
-/* The decoder requires full GOPs */
-#define V4L2_DEC_START_FMT_GOP (1)
-
-/* The structure must be zeroed before use by the application
- This ensures it can be extended safely in the future. */
-struct v4l2_decoder_cmd {
- __u32 cmd;
- __u32 flags;
- union {
- struct {
- __u64 pts;
- } stop;
-
- struct {
- /* 0 or 1000 specifies normal speed,
- 1 specifies forward single stepping,
- -1 specifies backward single stepping,
- >1: playback at speed/1000 of the normal speed,
- <-1: reverse playback at (-speed/1000) of the normal speed. */
- __s32 speed;
- __u32 format;
- } start;
-
- struct {
- __u32 data[16];
- } raw;
- };
-};
-#endif
-
-
-/*
- * D A T A S E R V I C E S ( V B I )
- *
- * Data services API by Michael Schimek
- */
-
-/* Raw VBI */
-struct v4l2_vbi_format {
- __u32 sampling_rate; /* in 1 Hz */
- __u32 offset;
- __u32 samples_per_line;
- __u32 sample_format; /* V4L2_PIX_FMT_* */
- __s32 start[2];
- __u32 count[2];
- __u32 flags; /* V4L2_VBI_* */
- __u32 reserved[2]; /* must be zero */
-};
-
-/* VBI flags */
-#define V4L2_VBI_UNSYNC (1 << 0)
-#define V4L2_VBI_INTERLACED (1 << 1)
-
-/* ITU-R start lines for each field */
-#define V4L2_VBI_ITU_525_F1_START (1)
-#define V4L2_VBI_ITU_525_F2_START (264)
-#define V4L2_VBI_ITU_625_F1_START (1)
-#define V4L2_VBI_ITU_625_F2_START (314)
-
-/* Sliced VBI
- *
- * This implements is a proposal V4L2 API to allow SLICED VBI
- * required for some hardware encoders. It should change without
- * notice in the definitive implementation.
- */
-
-struct v4l2_sliced_vbi_format {
- __u16 service_set;
- /* service_lines[0][...] specifies lines 0-23 (1-23 used) of the first field
- service_lines[1][...] specifies lines 0-23 (1-23 used) of the second field
- (equals frame lines 313-336 for 625 line video
- standards, 263-286 for 525 line standards) */
- __u16 service_lines[2][24];
- __u32 io_size;
- __u32 reserved[2]; /* must be zero */
-};
-
-/* Teletext World System Teletext
- (WST), defined on ITU-R BT.653-2 */
-#define V4L2_SLICED_TELETEXT_B (0x0001)
-/* Video Program System, defined on ETS 300 231*/
-#define V4L2_SLICED_VPS (0x0400)
-/* Closed Caption, defined on EIA-608 */
-#define V4L2_SLICED_CAPTION_525 (0x1000)
-/* Wide Screen System, defined on ITU-R BT1119.1 */
-#define V4L2_SLICED_WSS_625 (0x4000)
-
-#define V4L2_SLICED_VBI_525 (V4L2_SLICED_CAPTION_525)
-#define V4L2_SLICED_VBI_625 (V4L2_SLICED_TELETEXT_B | V4L2_SLICED_VPS | V4L2_SLICED_WSS_625)
-
-struct v4l2_sliced_vbi_cap {
- __u16 service_set;
- /* service_lines[0][...] specifies lines 0-23 (1-23 used) of the first field
- service_lines[1][...] specifies lines 0-23 (1-23 used) of the second field
- (equals frame lines 313-336 for 625 line video
- standards, 263-286 for 525 line standards) */
- __u16 service_lines[2][24];
- __u32 type; /* enum v4l2_buf_type */
- __u32 reserved[3]; /* must be 0 */
-};
-
-struct v4l2_sliced_vbi_data {
- __u32 id;
- __u32 field; /* 0: first field, 1: second field */
- __u32 line; /* 1-23 */
- __u32 reserved; /* must be 0 */
- __u8 data[48];
-};
-
-/*
- * Sliced VBI data inserted into MPEG Streams
- */
-
-/*
- * V4L2_MPEG_STREAM_VBI_FMT_IVTV:
- *
- * Structure of payload contained in an MPEG 2 Private Stream 1 PES Packet in an
- * MPEG-2 Program Pack that contains V4L2_MPEG_STREAM_VBI_FMT_IVTV Sliced VBI
- * data
- *
- * Note, the MPEG-2 Program Pack and Private Stream 1 PES packet header
- * definitions are not included here. See the MPEG-2 specifications for details
- * on these headers.
- */
-
-/* Line type IDs */
-#define V4L2_MPEG_VBI_IVTV_TELETEXT_B (1)
-#define V4L2_MPEG_VBI_IVTV_CAPTION_525 (4)
-#define V4L2_MPEG_VBI_IVTV_WSS_625 (5)
-#define V4L2_MPEG_VBI_IVTV_VPS (7)
-
-struct v4l2_mpeg_vbi_itv0_line {
- __u8 id; /* One of V4L2_MPEG_VBI_IVTV_* above */
- __u8 data[42]; /* Sliced VBI data for the line */
-} __attribute__ ((packed));
-
-struct v4l2_mpeg_vbi_itv0 {
- __le32 linemask[2]; /* Bitmasks of VBI service lines present */
- struct v4l2_mpeg_vbi_itv0_line line[35];
-} __attribute__ ((packed));
-
-struct v4l2_mpeg_vbi_ITV0 {
- struct v4l2_mpeg_vbi_itv0_line line[36];
-} __attribute__ ((packed));
-
-#define V4L2_MPEG_VBI_IVTV_MAGIC0 "itv0"
-#define V4L2_MPEG_VBI_IVTV_MAGIC1 "ITV0"
-
-struct v4l2_mpeg_vbi_fmt_ivtv {
- __u8 magic[4];
- union {
- struct v4l2_mpeg_vbi_itv0 itv0;
- struct v4l2_mpeg_vbi_ITV0 ITV0;
- };
-} __attribute__ ((packed));
-
-/*
- * A G G R E G A T E S T R U C T U R E S
- */
-
-/**
- * struct v4l2_plane_pix_format - additional, per-plane format definition
- * @sizeimage: maximum size in bytes required for data, for which
- * this plane will be used
- * @bytesperline: distance in bytes between the leftmost pixels in two
- * adjacent lines
- */
-struct v4l2_plane_pix_format {
- __u32 sizeimage;
- __u32 bytesperline;
- __u16 reserved[6];
-} __attribute__ ((packed));
-
-/**
- * struct v4l2_pix_format_mplane - multiplanar format definition
- * @width: image width in pixels
- * @height: image height in pixels
- * @pixelformat: little endian four character code (fourcc)
- * @field: enum v4l2_field; field order (for interlaced video)
- * @colorspace: enum v4l2_colorspace; supplemental to pixelformat
- * @plane_fmt: per-plane information
- * @num_planes: number of planes for this format
- * @flags: format flags (V4L2_PIX_FMT_FLAG_*)
- * @ycbcr_enc: enum v4l2_ycbcr_encoding, Y'CbCr encoding
- * @quantization: enum v4l2_quantization, colorspace quantization
- * @xfer_func: enum v4l2_xfer_func, colorspace transfer function
- */
-struct v4l2_pix_format_mplane {
- __u32 width;
- __u32 height;
- __u32 pixelformat;
- __u32 field;
- __u32 colorspace;
-
- struct v4l2_plane_pix_format plane_fmt[VIDEO_MAX_PLANES];
- __u8 num_planes;
- __u8 flags;
- __u8 ycbcr_enc;
- __u8 quantization;
- __u8 xfer_func;
- __u8 reserved[7];
-} __attribute__ ((packed));
-
-/**
- * struct v4l2_sdr_format - SDR format definition
- * @pixelformat: little endian four character code (fourcc)
- * @buffersize: maximum size in bytes required for data
- */
-struct v4l2_sdr_format {
- __u32 pixelformat;
- __u32 buffersize;
- __u8 reserved[24];
-} __attribute__ ((packed));
-
-/**
- * struct v4l2_format - stream data format
- * @type: enum v4l2_buf_type; type of the data stream
- * @pix: definition of an image format
- * @pix_mp: definition of a multiplanar image format
- * @win: definition of an overlaid image
- * @vbi: raw VBI capture or output parameters
- * @sliced: sliced VBI capture or output parameters
- * @raw_data: placeholder for future extensions and custom formats
- */
-struct v4l2_format {
- __u32 type;
- union {
- struct v4l2_pix_format pix; /* V4L2_BUF_TYPE_VIDEO_CAPTURE */
- struct v4l2_pix_format_mplane pix_mp; /* V4L2_BUF_TYPE_VIDEO_CAPTURE_MPLANE */
- struct v4l2_window win; /* V4L2_BUF_TYPE_VIDEO_OVERLAY */
- struct v4l2_vbi_format vbi; /* V4L2_BUF_TYPE_VBI_CAPTURE */
- struct v4l2_sliced_vbi_format sliced; /* V4L2_BUF_TYPE_SLICED_VBI_CAPTURE */
- struct v4l2_sdr_format sdr; /* V4L2_BUF_TYPE_SDR_CAPTURE */
- __u8 raw_data[200]; /* user-defined */
- } fmt;
-};
-
-/* Stream type-dependent parameters
- */
-struct v4l2_streamparm {
- __u32 type; /* enum v4l2_buf_type */
- union {
- struct v4l2_captureparm capture;
- struct v4l2_outputparm output;
- __u8 raw_data[200]; /* user-defined */
- } parm;
-};
-
-/*
- * E V E N T S
- */
-
-#define V4L2_EVENT_ALL 0
-#define V4L2_EVENT_VSYNC 1
-#define V4L2_EVENT_EOS 2
-#define V4L2_EVENT_CTRL 3
-#define V4L2_EVENT_FRAME_SYNC 4
-#define V4L2_EVENT_SOURCE_CHANGE 5
-#define V4L2_EVENT_MOTION_DET 6
-#define V4L2_EVENT_PRIVATE_START 0x08000000
-
-#define V4L2_EVENT_BITDEPTH_FLAG 0x1
-#define V4L2_EVENT_PICSTRUCT_FLAG 0x2
-#define V4L2_EVENT_COLOUR_SPACE_FLAG 0x4
-
-#define V4L2_EVENT_MSM_VIDC_START (V4L2_EVENT_PRIVATE_START + 0x00001000)
-#define V4L2_EVENT_MSM_VIDC_FLUSH_DONE (V4L2_EVENT_MSM_VIDC_START + 1)
-#define V4L2_EVENT_MSM_VIDC_PORT_SETTINGS_CHANGED_SUFFICIENT \
- (V4L2_EVENT_MSM_VIDC_START + 2)
-#define V4L2_EVENT_MSM_VIDC_PORT_SETTINGS_CHANGED_INSUFFICIENT \
- (V4L2_EVENT_MSM_VIDC_START + 3)
-/*
- * Bitdepth changed insufficient is deprecated now, however retaining
- * to prevent changing the values of the other macros after bitdepth
- */
-#define V4L2_EVENT_MSM_VIDC_PORT_SETTINGS_BITDEPTH_CHANGED_INSUFFICIENT \
- (V4L2_EVENT_MSM_VIDC_START + 4)
-#define V4L2_EVENT_MSM_VIDC_SYS_ERROR (V4L2_EVENT_MSM_VIDC_START + 5)
-#define V4L2_EVENT_MSM_VIDC_RELEASE_BUFFER_REFERENCE \
- (V4L2_EVENT_MSM_VIDC_START + 6)
-#define V4L2_EVENT_MSM_VIDC_RELEASE_UNQUEUED_BUFFER \
- (V4L2_EVENT_MSM_VIDC_START + 7)
-#define V4L2_EVENT_MSM_VIDC_HW_OVERLOAD (V4L2_EVENT_MSM_VIDC_START + 8)
-#define V4L2_EVENT_MSM_VIDC_MAX_CLIENTS (V4L2_EVENT_MSM_VIDC_START + 9)
-#define V4L2_EVENT_MSM_VIDC_HW_UNSUPPORTED (V4L2_EVENT_MSM_VIDC_START + 10)
-
-/* Payload for V4L2_EVENT_VSYNC */
-struct v4l2_event_vsync {
- /* Can be V4L2_FIELD_ANY, _NONE, _TOP or _BOTTOM */
- __u8 field;
-} __attribute__ ((packed));
-
-/* Payload for V4L2_EVENT_CTRL */
-#define V4L2_EVENT_CTRL_CH_VALUE (1 << 0)
-#define V4L2_EVENT_CTRL_CH_FLAGS (1 << 1)
-#define V4L2_EVENT_CTRL_CH_RANGE (1 << 2)
-
-struct v4l2_event_ctrl {
- __u32 changes;
- __u32 type;
- union {
- __s32 value;
- __s64 value64;
- };
- __u32 flags;
- __s32 minimum;
- __s32 maximum;
- __s32 step;
- __s32 default_value;
-};
-
-struct v4l2_event_frame_sync {
- __u32 frame_sequence;
-};
-
-#define V4L2_EVENT_SRC_CH_RESOLUTION (1 << 0)
-
-struct v4l2_event_src_change {
- __u32 changes;
-};
-
-#define V4L2_EVENT_MD_FL_HAVE_FRAME_SEQ (1 << 0)
-
-/**
- * struct v4l2_event_motion_det - motion detection event
- * @flags: if V4L2_EVENT_MD_FL_HAVE_FRAME_SEQ is set, then the
- * frame_sequence field is valid.
- * @frame_sequence: the frame sequence number associated with this event.
- * @region_mask: which regions detected motion.
- */
-struct v4l2_event_motion_det {
- __u32 flags;
- __u32 frame_sequence;
- __u32 region_mask;
-};
-
-struct v4l2_event {
- __u32 type;
- union {
- struct v4l2_event_vsync vsync;
- struct v4l2_event_ctrl ctrl;
- struct v4l2_event_frame_sync frame_sync;
- struct v4l2_event_src_change src_change;
- struct v4l2_event_motion_det motion_det;
- __u8 data[64];
- } u;
- __u32 pending;
- __u32 sequence;
- struct timespec timestamp;
- __u32 id;
- __u32 reserved[8];
-};
-
-#define V4L2_EVENT_SUB_FL_SEND_INITIAL (1 << 0)
-#define V4L2_EVENT_SUB_FL_ALLOW_FEEDBACK (1 << 1)
-
-struct v4l2_event_subscription {
- __u32 type;
- __u32 id;
- __u32 flags;
- __u32 reserved[5];
-};
-
-/*
- * A D V A N C E D D E B U G G I N G
- *
- * NOTE: EXPERIMENTAL API, NEVER RELY ON THIS IN APPLICATIONS!
- * FOR DEBUGGING, TESTING AND INTERNAL USE ONLY!
- */
-
-/* VIDIOC_DBG_G_REGISTER and VIDIOC_DBG_S_REGISTER */
-
-#define V4L2_CHIP_MATCH_BRIDGE 0 /* Match against chip ID on the bridge (0 for the bridge) */
-#define V4L2_CHIP_MATCH_SUBDEV 4 /* Match against subdev index */
-
-/* The following four defines are no longer in use */
-#define V4L2_CHIP_MATCH_HOST V4L2_CHIP_MATCH_BRIDGE
-#define V4L2_CHIP_MATCH_I2C_DRIVER 1 /* Match against I2C driver name */
-#define V4L2_CHIP_MATCH_I2C_ADDR 2 /* Match against I2C 7-bit address */
-#define V4L2_CHIP_MATCH_AC97 3 /* Match against ancillary AC97 chip */
-
-struct v4l2_dbg_match {
- __u32 type; /* Match type */
- union { /* Match this chip, meaning determined by type */
- __u32 addr;
- char name[32];
- };
-} __attribute__ ((packed));
-
-struct v4l2_dbg_register {
- struct v4l2_dbg_match match;
- __u32 size; /* register size in bytes */
- __u64 reg;
- __u64 val;
-} __attribute__ ((packed));
-
-#define V4L2_CHIP_FL_READABLE (1 << 0)
-#define V4L2_CHIP_FL_WRITABLE (1 << 1)
-
-/* VIDIOC_DBG_G_CHIP_INFO */
-struct v4l2_dbg_chip_info {
- struct v4l2_dbg_match match;
- char name[32];
- __u32 flags;
- __u32 reserved[32];
-} __attribute__ ((packed));
-
-/**
- * struct v4l2_create_buffers - VIDIOC_CREATE_BUFS argument
- * @index: on return, index of the first created buffer
- * @count: entry: number of requested buffers,
- * return: number of created buffers
- * @memory: enum v4l2_memory; buffer memory type
- * @format: frame format, for which buffers are requested
- * @reserved: future extensions
- */
-struct v4l2_create_buffers {
- __u32 index;
- __u32 count;
- __u32 memory;
- struct v4l2_format format;
- __u32 reserved[8];
-};
-
-/*
- * I O C T L C O D E S F O R V I D E O D E V I C E S
- *
- */
-#define VIDIOC_QUERYCAP _IOR('V', 0, struct v4l2_capability)
-#define VIDIOC_RESERVED _IO('V', 1)
-#define VIDIOC_ENUM_FMT _IOWR('V', 2, struct v4l2_fmtdesc)
-#define VIDIOC_G_FMT _IOWR('V', 4, struct v4l2_format)
-#define VIDIOC_S_FMT _IOWR('V', 5, struct v4l2_format)
-#define VIDIOC_REQBUFS _IOWR('V', 8, struct v4l2_requestbuffers)
-#define VIDIOC_QUERYBUF _IOWR('V', 9, struct v4l2_buffer)
-#define VIDIOC_G_FBUF _IOR('V', 10, struct v4l2_framebuffer)
-#define VIDIOC_S_FBUF _IOW('V', 11, struct v4l2_framebuffer)
-#define VIDIOC_OVERLAY _IOW('V', 14, int)
-#define VIDIOC_QBUF _IOWR('V', 15, struct v4l2_buffer)
-#define VIDIOC_EXPBUF _IOWR('V', 16, struct v4l2_exportbuffer)
-#define VIDIOC_DQBUF _IOWR('V', 17, struct v4l2_buffer)
-#define VIDIOC_STREAMON _IOW('V', 18, int)
-#define VIDIOC_STREAMOFF _IOW('V', 19, int)
-#define VIDIOC_G_PARM _IOWR('V', 21, struct v4l2_streamparm)
-#define VIDIOC_S_PARM _IOWR('V', 22, struct v4l2_streamparm)
-#define VIDIOC_G_STD _IOR('V', 23, v4l2_std_id)
-#define VIDIOC_S_STD _IOW('V', 24, v4l2_std_id)
-#define VIDIOC_ENUMSTD _IOWR('V', 25, struct v4l2_standard)
-#define VIDIOC_ENUMINPUT _IOWR('V', 26, struct v4l2_input)
-#define VIDIOC_G_CTRL _IOWR('V', 27, struct v4l2_control)
-#define VIDIOC_S_CTRL _IOWR('V', 28, struct v4l2_control)
-#define VIDIOC_G_TUNER _IOWR('V', 29, struct v4l2_tuner)
-#define VIDIOC_S_TUNER _IOW('V', 30, struct v4l2_tuner)
-#define VIDIOC_G_AUDIO _IOR('V', 33, struct v4l2_audio)
-#define VIDIOC_S_AUDIO _IOW('V', 34, struct v4l2_audio)
-#define VIDIOC_QUERYCTRL _IOWR('V', 36, struct v4l2_queryctrl)
-#define VIDIOC_QUERYMENU _IOWR('V', 37, struct v4l2_querymenu)
-#define VIDIOC_G_INPUT _IOR('V', 38, int)
-#define VIDIOC_S_INPUT _IOWR('V', 39, int)
-#define VIDIOC_G_EDID _IOWR('V', 40, struct v4l2_edid)
-#define VIDIOC_S_EDID _IOWR('V', 41, struct v4l2_edid)
-#define VIDIOC_G_OUTPUT _IOR('V', 46, int)
-#define VIDIOC_S_OUTPUT _IOWR('V', 47, int)
-#define VIDIOC_ENUMOUTPUT _IOWR('V', 48, struct v4l2_output)
-#define VIDIOC_G_AUDOUT _IOR('V', 49, struct v4l2_audioout)
-#define VIDIOC_S_AUDOUT _IOW('V', 50, struct v4l2_audioout)
-#define VIDIOC_G_MODULATOR _IOWR('V', 54, struct v4l2_modulator)
-#define VIDIOC_S_MODULATOR _IOW('V', 55, struct v4l2_modulator)
-#define VIDIOC_G_FREQUENCY _IOWR('V', 56, struct v4l2_frequency)
-#define VIDIOC_S_FREQUENCY _IOW('V', 57, struct v4l2_frequency)
-#define VIDIOC_CROPCAP _IOWR('V', 58, struct v4l2_cropcap)
-#define VIDIOC_G_CROP _IOWR('V', 59, struct v4l2_crop)
-#define VIDIOC_S_CROP _IOW('V', 60, struct v4l2_crop)
-#define VIDIOC_G_JPEGCOMP _IOR('V', 61, struct v4l2_jpegcompression)
-#define VIDIOC_S_JPEGCOMP _IOW('V', 62, struct v4l2_jpegcompression)
-#define VIDIOC_QUERYSTD _IOR('V', 63, v4l2_std_id)
-#define VIDIOC_TRY_FMT _IOWR('V', 64, struct v4l2_format)
-#define VIDIOC_ENUMAUDIO _IOWR('V', 65, struct v4l2_audio)
-#define VIDIOC_ENUMAUDOUT _IOWR('V', 66, struct v4l2_audioout)
-#define VIDIOC_G_PRIORITY _IOR('V', 67, __u32) /* enum v4l2_priority */
-#define VIDIOC_S_PRIORITY _IOW('V', 68, __u32) /* enum v4l2_priority */
-#define VIDIOC_G_SLICED_VBI_CAP _IOWR('V', 69, struct v4l2_sliced_vbi_cap)
-#define VIDIOC_LOG_STATUS _IO('V', 70)
-#define VIDIOC_G_EXT_CTRLS _IOWR('V', 71, struct v4l2_ext_controls)
-#define VIDIOC_S_EXT_CTRLS _IOWR('V', 72, struct v4l2_ext_controls)
-#define VIDIOC_TRY_EXT_CTRLS _IOWR('V', 73, struct v4l2_ext_controls)
-#define VIDIOC_ENUM_FRAMESIZES _IOWR('V', 74, struct v4l2_frmsizeenum)
-#define VIDIOC_ENUM_FRAMEINTERVALS _IOWR('V', 75, struct v4l2_frmivalenum)
-#define VIDIOC_G_ENC_INDEX _IOR('V', 76, struct v4l2_enc_idx)
-#define VIDIOC_ENCODER_CMD _IOWR('V', 77, struct v4l2_encoder_cmd)
-#define VIDIOC_TRY_ENCODER_CMD _IOWR('V', 78, struct v4l2_encoder_cmd)
-
-/*
- * Experimental, meant for debugging, testing and internal use.
- * Only implemented if CONFIG_VIDEO_ADV_DEBUG is defined.
- * You must be root to use these ioctls. Never use these in applications!
- */
-#define VIDIOC_DBG_S_REGISTER _IOW('V', 79, struct v4l2_dbg_register)
-#define VIDIOC_DBG_G_REGISTER _IOWR('V', 80, struct v4l2_dbg_register)
-
-#define VIDIOC_S_HW_FREQ_SEEK _IOW('V', 82, struct v4l2_hw_freq_seek)
-#define VIDIOC_S_DV_TIMINGS _IOWR('V', 87, struct v4l2_dv_timings)
-#define VIDIOC_G_DV_TIMINGS _IOWR('V', 88, struct v4l2_dv_timings)
-#define VIDIOC_DQEVENT _IOR('V', 89, struct v4l2_event)
-#define VIDIOC_SUBSCRIBE_EVENT _IOW('V', 90, struct v4l2_event_subscription)
-#define VIDIOC_UNSUBSCRIBE_EVENT _IOW('V', 91, struct v4l2_event_subscription)
-#define VIDIOC_CREATE_BUFS _IOWR('V', 92, struct v4l2_create_buffers)
-#define VIDIOC_PREPARE_BUF _IOWR('V', 93, struct v4l2_buffer)
-#define VIDIOC_G_SELECTION _IOWR('V', 94, struct v4l2_selection)
-#define VIDIOC_S_SELECTION _IOWR('V', 95, struct v4l2_selection)
-#define VIDIOC_DECODER_CMD _IOWR('V', 96, struct v4l2_decoder_cmd)
-#define VIDIOC_TRY_DECODER_CMD _IOWR('V', 97, struct v4l2_decoder_cmd)
-#define VIDIOC_ENUM_DV_TIMINGS _IOWR('V', 98, struct v4l2_enum_dv_timings)
-#define VIDIOC_QUERY_DV_TIMINGS _IOR('V', 99, struct v4l2_dv_timings)
-#define VIDIOC_DV_TIMINGS_CAP _IOWR('V', 100, struct v4l2_dv_timings_cap)
-#define VIDIOC_ENUM_FREQ_BANDS _IOWR('V', 101, struct v4l2_frequency_band)
-
-/*
- * Experimental, meant for debugging, testing and internal use.
- * Never use this in applications!
- */
-#define VIDIOC_DBG_G_CHIP_INFO _IOWR('V', 102, struct v4l2_dbg_chip_info)
-
-#define VIDIOC_QUERY_EXT_CTRL _IOWR('V', 103, struct v4l2_query_ext_ctrl)
-
-/* Reminder: when adding new ioctls please add support for them to
- drivers/media/v4l2-core/v4l2-compat-ioctl32.c as well! */
-
-#define BASE_VIDIOC_PRIVATE 192 /* 192-255 are private */
-
-#endif /* __LINUX_VIDEODEV2_H */
diff --git a/sdm710/original-kernel-headers/linux/wcd-spi-ac-params.h b/sdm710/original-kernel-headers/linux/wcd-spi-ac-params.h
deleted file mode 100644
index cdb0aecd..00000000
--- a/sdm710/original-kernel-headers/linux/wcd-spi-ac-params.h
+++ /dev/null
@@ -1,52 +0,0 @@
-#ifndef __UAPI_WCD_SPI_AC_PARAMS_H__
-#define __UAPI_WCD_SPI_AC_PARAMS_H__
-
-#include <linux/types.h>
-
-#define WCD_SPI_AC_CMD_CONC_BEGIN 0x01
-#define WCD_SPI_AC_CMD_CONC_END 0x02
-#define WCD_SPI_AC_CMD_BUF_DATA 0x03
-
-#define WCD_SPI_AC_MAX_BUFFERS 2
-#define WCD_SPI_AC_MAX_CH_PER_BUF 8
-
-#define WCD_SPI_AC_CLIENT_CDEV_NAME "wcd-spi-ac-client"
-#define WCD_SPI_AC_PROCFS_DIR_NAME "wcd-spi-ac"
-#define WCD_SPI_AC_PROCFS_STATE_NAME "svc-state"
-
-/*
- * wcd_spi_ac_buf_data:
- * Buffer address for one buffer. Should have data
- * for all the channels. If channels are unused, the
- * value must be NULL.
- *
- * @addr:
- * Address where each channel of the buffer starts.
- */
-struct wcd_spi_ac_buf_data {
- __u32 addr[WCD_SPI_AC_MAX_CH_PER_BUF];
-} __attribute__((packed));
-
-/*
- * wcd_spi_ac_write_cmd:
- * Data sent to the driver's write interface should
- * be packed in this format.
- *
- * @cmd_type:
- * Indicates the type of command that is sent. Should
- * be one of the valid commands defined with
- * WCD_SPI_AC_CMD_*
- * @payload:
- * No payload for:
- * WCD_SPI_AC_CMD_CONC_BEGIN
- * WCD_SPI_AC_CMD_CONC_END
- * Upto WCD_SPI_AC_MAX_BUFFERS of type
- * struct wcd_spi_ac_buf_data for:
- * WCD_SPI_AC_CMD_BUF_DATA
- */
-struct wcd_spi_ac_write_cmd {
- __u32 cmd_type;
- __u8 payload[0];
-} __attribute__((packed));
-
-#endif /* end of __UAPI_WCD_SPI_AC_PARAMS_H__ */
diff --git a/sdm710/original-kernel-headers/media/cam_cpas.h b/sdm710/original-kernel-headers/media/cam_cpas.h
deleted file mode 100644
index c5cbac82..00000000
--- a/sdm710/original-kernel-headers/media/cam_cpas.h
+++ /dev/null
@@ -1,25 +0,0 @@
-#ifndef __UAPI_CAM_CPAS_H__
-#define __UAPI_CAM_CPAS_H__
-
-#include "cam_defs.h"
-
-#define CAM_FAMILY_CAMERA_SS 1
-#define CAM_FAMILY_CPAS_SS 2
-
-/**
- * struct cam_cpas_query_cap - CPAS query device capability payload
- *
- * @camera_family : Camera family type
- * @reserved : Reserved field for alignment
- * @camera_version : Camera platform version
- * @cpas_version : Camera CPAS version within camera platform
- *
- */
-struct cam_cpas_query_cap {
- uint32_t camera_family;
- uint32_t reserved;
- struct cam_hw_version camera_version;
- struct cam_hw_version cpas_version;
-};
-
-#endif /* __UAPI_CAM_CPAS_H__ */
diff --git a/sdm710/original-kernel-headers/media/cam_defs.h b/sdm710/original-kernel-headers/media/cam_defs.h
deleted file mode 100644
index e006463d..00000000
--- a/sdm710/original-kernel-headers/media/cam_defs.h
+++ /dev/null
@@ -1,477 +0,0 @@
-#ifndef __UAPI_CAM_DEFS_H__
-#define __UAPI_CAM_DEFS_H__
-
-#include <linux/videodev2.h>
-#include <linux/types.h>
-#include <linux/ioctl.h>
-
-
-/* camera op codes */
-#define CAM_COMMON_OPCODE_BASE 0x100
-#define CAM_QUERY_CAP (CAM_COMMON_OPCODE_BASE + 0x1)
-#define CAM_ACQUIRE_DEV (CAM_COMMON_OPCODE_BASE + 0x2)
-#define CAM_START_DEV (CAM_COMMON_OPCODE_BASE + 0x3)
-#define CAM_STOP_DEV (CAM_COMMON_OPCODE_BASE + 0x4)
-#define CAM_CONFIG_DEV (CAM_COMMON_OPCODE_BASE + 0x5)
-#define CAM_RELEASE_DEV (CAM_COMMON_OPCODE_BASE + 0x6)
-#define CAM_SD_SHUTDOWN (CAM_COMMON_OPCODE_BASE + 0x7)
-#define CAM_FLUSH_REQ (CAM_COMMON_OPCODE_BASE + 0x8)
-#define CAM_COMMON_OPCODE_MAX (CAM_COMMON_OPCODE_BASE + 0x9)
-
-#define CAM_EXT_OPCODE_BASE 0x200
-#define CAM_CONFIG_DEV_EXTERNAL (CAM_EXT_OPCODE_BASE + 0x1)
-
-/* camera handle type */
-#define CAM_HANDLE_USER_POINTER 1
-#define CAM_HANDLE_MEM_HANDLE 2
-
-/* Generic Blob CmdBuffer header properties */
-#define CAM_GENERIC_BLOB_CMDBUFFER_SIZE_MASK 0xFFFFFF00
-#define CAM_GENERIC_BLOB_CMDBUFFER_SIZE_SHIFT 8
-#define CAM_GENERIC_BLOB_CMDBUFFER_TYPE_MASK 0xFF
-#define CAM_GENERIC_BLOB_CMDBUFFER_TYPE_SHIFT 0
-
-/* Command Buffer Types */
-#define CAM_CMD_BUF_DMI 0x1
-#define CAM_CMD_BUF_DMI16 0x2
-#define CAM_CMD_BUF_DMI32 0x3
-#define CAM_CMD_BUF_DMI64 0x4
-#define CAM_CMD_BUF_DIRECT 0x5
-#define CAM_CMD_BUF_INDIRECT 0x6
-#define CAM_CMD_BUF_I2C 0x7
-#define CAM_CMD_BUF_FW 0x8
-#define CAM_CMD_BUF_GENERIC 0x9
-#define CAM_CMD_BUF_LEGACY 0xA
-
-/**
- * enum flush_type_t - Identifies the various flush types
- *
- * @CAM_FLUSH_TYPE_REQ: Flush specific request
- * @CAM_FLUSH_TYPE_ALL: Flush all requests belonging to a context
- * @CAM_FLUSH_TYPE_MAX: Max enum to validate flush type
- *
- */
-enum flush_type_t {
- CAM_FLUSH_TYPE_REQ,
- CAM_FLUSH_TYPE_ALL,
- CAM_FLUSH_TYPE_MAX
-};
-
-/**
- * struct cam_control - Structure used by ioctl control for camera
- *
- * @op_code: This is the op code for camera control
- * @size: Control command size
- * @handle_type: User pointer or shared memory handle
- * @reserved: Reserved field for 64 bit alignment
- * @handle: Control command payload
- */
-struct cam_control {
- uint32_t op_code;
- uint32_t size;
- uint32_t handle_type;
- uint32_t reserved;
- uint64_t handle;
-};
-
-/* camera IOCTL */
-#define VIDIOC_CAM_CONTROL \
- _IOWR('V', BASE_VIDIOC_PRIVATE, struct cam_control)
-
-/**
- * struct cam_hw_version - Structure for HW version of camera devices
- *
- * @major : Hardware version major
- * @minor : Hardware version minor
- * @incr : Hardware version increment
- * @reserved : Reserved for 64 bit aligngment
- */
-struct cam_hw_version {
- uint32_t major;
- uint32_t minor;
- uint32_t incr;
- uint32_t reserved;
-};
-
-/**
- * struct cam_iommu_handle - Structure for IOMMU handles of camera hw devices
- *
- * @non_secure: Device Non Secure IOMMU handle
- * @secure: Device Secure IOMMU handle
- *
- */
-struct cam_iommu_handle {
- int32_t non_secure;
- int32_t secure;
-};
-
-/* camera secure mode */
-#define CAM_SECURE_MODE_NON_SECURE 0
-#define CAM_SECURE_MODE_SECURE 1
-
-/* Camera Format Type */
-#define CAM_FORMAT_BASE 0
-#define CAM_FORMAT_MIPI_RAW_6 1
-#define CAM_FORMAT_MIPI_RAW_8 2
-#define CAM_FORMAT_MIPI_RAW_10 3
-#define CAM_FORMAT_MIPI_RAW_12 4
-#define CAM_FORMAT_MIPI_RAW_14 5
-#define CAM_FORMAT_MIPI_RAW_16 6
-#define CAM_FORMAT_MIPI_RAW_20 7
-#define CAM_FORMAT_QTI_RAW_8 8
-#define CAM_FORMAT_QTI_RAW_10 9
-#define CAM_FORMAT_QTI_RAW_12 10
-#define CAM_FORMAT_QTI_RAW_14 11
-#define CAM_FORMAT_PLAIN8 12
-#define CAM_FORMAT_PLAIN16_8 13
-#define CAM_FORMAT_PLAIN16_10 14
-#define CAM_FORMAT_PLAIN16_12 15
-#define CAM_FORMAT_PLAIN16_14 16
-#define CAM_FORMAT_PLAIN16_16 17
-#define CAM_FORMAT_PLAIN32_20 18
-#define CAM_FORMAT_PLAIN64 19
-#define CAM_FORMAT_PLAIN128 20
-#define CAM_FORMAT_ARGB 21
-#define CAM_FORMAT_ARGB_10 22
-#define CAM_FORMAT_ARGB_12 23
-#define CAM_FORMAT_ARGB_14 24
-#define CAM_FORMAT_DPCM_10_6_10 25
-#define CAM_FORMAT_DPCM_10_8_10 26
-#define CAM_FORMAT_DPCM_12_6_12 27
-#define CAM_FORMAT_DPCM_12_8_12 28
-#define CAM_FORMAT_DPCM_14_8_14 29
-#define CAM_FORMAT_DPCM_14_10_14 30
-#define CAM_FORMAT_NV21 31
-#define CAM_FORMAT_NV12 32
-#define CAM_FORMAT_TP10 33
-#define CAM_FORMAT_YUV422 34
-#define CAM_FORMAT_PD8 35
-#define CAM_FORMAT_PD10 36
-#define CAM_FORMAT_UBWC_NV12 37
-#define CAM_FORMAT_UBWC_NV12_4R 38
-#define CAM_FORMAT_UBWC_TP10 39
-#define CAM_FORMAT_UBWC_P010 40
-#define CAM_FORMAT_PLAIN8_SWAP 41
-#define CAM_FORMAT_PLAIN8_10 42
-#define CAM_FORMAT_PLAIN8_10_SWAP 43
-#define CAM_FORMAT_YV12 44
-#define CAM_FORMAT_Y_ONLY 45
-#define CAM_FORMAT_MAX 46
-
-/* camera rotaion */
-#define CAM_ROTATE_CW_0_DEGREE 0
-#define CAM_ROTATE_CW_90_DEGREE 1
-#define CAM_RORATE_CW_180_DEGREE 2
-#define CAM_ROTATE_CW_270_DEGREE 3
-
-/* camera Color Space */
-#define CAM_COLOR_SPACE_BASE 0
-#define CAM_COLOR_SPACE_BT601_FULL 1
-#define CAM_COLOR_SPACE_BT601625 2
-#define CAM_COLOR_SPACE_BT601525 3
-#define CAM_COLOR_SPACE_BT709 4
-#define CAM_COLOR_SPACE_DEPTH 5
-#define CAM_COLOR_SPACE_MAX 6
-
-/* camera buffer direction */
-#define CAM_BUF_INPUT 1
-#define CAM_BUF_OUTPUT 2
-#define CAM_BUF_IN_OUT 3
-
-/* camera packet device Type */
-#define CAM_PACKET_DEV_BASE 0
-#define CAM_PACKET_DEV_IMG_SENSOR 1
-#define CAM_PACKET_DEV_ACTUATOR 2
-#define CAM_PACKET_DEV_COMPANION 3
-#define CAM_PACKET_DEV_EEPOM 4
-#define CAM_PACKET_DEV_CSIPHY 5
-#define CAM_PACKET_DEV_OIS 6
-#define CAM_PACKET_DEV_FLASH 7
-#define CAM_PACKET_DEV_FD 8
-#define CAM_PACKET_DEV_JPEG_ENC 9
-#define CAM_PACKET_DEV_JPEG_DEC 10
-#define CAM_PACKET_DEV_VFE 11
-#define CAM_PACKET_DEV_CPP 12
-#define CAM_PACKET_DEV_CSID 13
-#define CAM_PACKET_DEV_ISPIF 14
-#define CAM_PACKET_DEV_IFE 15
-#define CAM_PACKET_DEV_ICP 16
-#define CAM_PACKET_DEV_LRME 17
-#define CAM_PACKET_DEV_MAX 18
-
-
-/* constants */
-#define CAM_PACKET_MAX_PLANES 3
-
-/**
- * struct cam_plane_cfg - Plane configuration info
- *
- * @width: Plane width in pixels
- * @height: Plane height in lines
- * @plane_stride: Plane stride in pixel
- * @slice_height: Slice height in line (not used by ISP)
- * @meta_stride: UBWC metadata stride
- * @meta_size: UBWC metadata plane size
- * @meta_offset: UBWC metadata offset
- * @packer_config: UBWC packer config
- * @mode_config: UBWC mode config
- * @tile_config: UBWC tile config
- * @h_init: UBWC horizontal initial coordinate in pixels
- * @v_init: UBWC vertical initial coordinate in lines
- *
- */
-struct cam_plane_cfg {
- uint32_t width;
- uint32_t height;
- uint32_t plane_stride;
- uint32_t slice_height;
- uint32_t meta_stride;
- uint32_t meta_size;
- uint32_t meta_offset;
- uint32_t packer_config;
- uint32_t mode_config;
- uint32_t tile_config;
- uint32_t h_init;
- uint32_t v_init;
-};
-
-/**
- * struct cam_cmd_buf_desc - Command buffer descriptor
- *
- * @mem_handle: Command buffer handle
- * @offset: Command start offset
- * @size: Size of the command buffer in bytes
- * @length: Used memory in command buffer in bytes
- * @type: Type of the command buffer
- * @meta_data: Data type for private command buffer
- * Between UMD and KMD
- *
- */
-struct cam_cmd_buf_desc {
- int32_t mem_handle;
- uint32_t offset;
- uint32_t size;
- uint32_t length;
- uint32_t type;
- uint32_t meta_data;
-};
-
-/**
- * struct cam_buf_io_cfg - Buffer io configuration for buffers
- *
- * @mem_handle: Mem_handle array for the buffers.
- * @offsets: Offsets for each planes in the buffer
- * @planes: Per plane information
- * @width: Main plane width in pixel
- * @height: Main plane height in lines
- * @format: Format of the buffer
- * @color_space: Color space for the buffer
- * @color_pattern: Color pattern in the buffer
- * @bpp: Bit per pixel
- * @rotation: Rotation information for the buffer
- * @resource_type: Resource type associated with the buffer
- * @fence: Fence handle
- * @early_fence: Fence handle for early signal
- * @aux_cmd_buf: An auxiliary command buffer that may be
- * used for programming the IO
- * @direction: Direction of the config
- * @batch_size: Batch size in HFR mode
- * @subsample_pattern: Subsample pattern. Used in HFR mode. It
- * should be consistent with batchSize and
- * CAMIF programming.
- * @subsample_period: Subsample period. Used in HFR mode. It
- * should be consistent with batchSize and
- * CAMIF programming.
- * @framedrop_pattern: Framedrop pattern
- * @framedrop_period: Framedrop period
- * @flag: Flags for extra information
- * @direction: Buffer direction: input or output
- * @padding: Padding for the structure
- *
- */
-struct cam_buf_io_cfg {
- int32_t mem_handle[CAM_PACKET_MAX_PLANES];
- uint32_t offsets[CAM_PACKET_MAX_PLANES];
- struct cam_plane_cfg planes[CAM_PACKET_MAX_PLANES];
- uint32_t format;
- uint32_t color_space;
- uint32_t color_pattern;
- uint32_t bpp;
- uint32_t rotation;
- uint32_t resource_type;
- int32_t fence;
- int32_t early_fence;
- struct cam_cmd_buf_desc aux_cmd_buf;
- uint32_t direction;
- uint32_t batch_size;
- uint32_t subsample_pattern;
- uint32_t subsample_period;
- uint32_t framedrop_pattern;
- uint32_t framedrop_period;
- uint32_t flag;
- uint32_t padding;
-};
-
-/**
- * struct cam_packet_header - Camera packet header
- *
- * @op_code: Camera packet opcode
- * @size: Size of the camera packet in bytes
- * @request_id: Request id for this camera packet
- * @flags: Flags for the camera packet
- * @padding: Padding
- *
- */
-struct cam_packet_header {
- uint32_t op_code;
- uint32_t size;
- uint64_t request_id;
- uint32_t flags;
- uint32_t padding;
-};
-
-/**
- * struct cam_patch_desc - Patch structure
- *
- * @dst_buf_hdl: Memory handle for the dest buffer
- * @dst_offset: Offset byte in the dest buffer
- * @src_buf_hdl: Memory handle for the source buffer
- * @src_offset: Offset byte in the source buffer
- *
- */
-struct cam_patch_desc {
- int32_t dst_buf_hdl;
- uint32_t dst_offset;
- int32_t src_buf_hdl;
- uint32_t src_offset;
-};
-
-/**
- * struct cam_packet - Camera packet structure
- *
- * @header: Camera packet header
- * @cmd_buf_offset: Command buffer start offset
- * @num_cmd_buf: Number of the command buffer in the packet
- * @io_config_offset: Buffer io configuration start offset
- * @num_io_configs: Number of the buffer io configurations
- * @patch_offset: Patch offset for the patch structure
- * @num_patches: Number of the patch structure
- * @kmd_cmd_buf_index: Command buffer index which contains extra
- * space for the KMD buffer
- * @kmd_cmd_buf_offset: Offset from the beginning of the command
- * buffer for KMD usage.
- * @payload: Camera packet payload
- *
- */
-struct cam_packet {
- struct cam_packet_header header;
- uint32_t cmd_buf_offset;
- uint32_t num_cmd_buf;
- uint32_t io_configs_offset;
- uint32_t num_io_configs;
- uint32_t patch_offset;
- uint32_t num_patches;
- uint32_t kmd_cmd_buf_index;
- uint32_t kmd_cmd_buf_offset;
- uint64_t payload[1];
-
-};
-
-/**
- * struct cam_release_dev_cmd - Control payload for release devices
- *
- * @session_handle: Session handle for the release
- * @dev_handle: Device handle for the release
- */
-struct cam_release_dev_cmd {
- int32_t session_handle;
- int32_t dev_handle;
-};
-
-/**
- * struct cam_start_stop_dev_cmd - Control payload for start/stop device
- *
- * @session_handle: Session handle for the start/stop command
- * @dev_handle: Device handle for the start/stop command
- *
- */
-struct cam_start_stop_dev_cmd {
- int32_t session_handle;
- int32_t dev_handle;
-};
-
-/**
- * struct cam_config_dev_cmd - Command payload for configure device
- *
- * @session_handle: Session handle for the command
- * @dev_handle: Device handle for the command
- * @offset: Offset byte in the packet handle.
- * @packet_handle: Packet memory handle for the actual packet:
- * struct cam_packet.
- *
- */
-struct cam_config_dev_cmd {
- int32_t session_handle;
- int32_t dev_handle;
- uint64_t offset;
- uint64_t packet_handle;
-};
-
-/**
- * struct cam_query_cap_cmd - Payload for query device capability
- *
- * @size: Handle size
- * @handle_type: User pointer or shared memory handle
- * @caps_handle: Device specific query command payload
- *
- */
-struct cam_query_cap_cmd {
- uint32_t size;
- uint32_t handle_type;
- uint64_t caps_handle;
-};
-
-/**
- * struct cam_acquire_dev_cmd - Control payload for acquire devices
- *
- * @session_handle: Session handle for the acquire command
- * @dev_handle: Device handle to be returned
- * @handle_type: Resource handle type:
- * 1 = user pointer, 2 = mem handle
- * @num_resources: Number of the resources to be acquired
- * @resources_hdl: Resource handle that refers to the actual
- * resource array. Each item in this
- * array is device specific resource structure
- *
- */
-struct cam_acquire_dev_cmd {
- int32_t session_handle;
- int32_t dev_handle;
- uint32_t handle_type;
- uint32_t num_resources;
- uint64_t resource_hdl;
-};
-
-/**
- * struct cam_flush_dev_cmd - Control payload for flush devices
- *
- * @version: Version
- * @session_handle: Session handle for the acquire command
- * @dev_handle: Device handle to be returned
- * @flush_type: Flush type:
- * 0 = flush specific request
- * 1 = flush all
- * @reserved: Reserved for 64 bit aligngment
- * @req_id: Request id that needs to cancel
- *
- */
-struct cam_flush_dev_cmd {
- uint64_t version;
- int32_t session_handle;
- int32_t dev_handle;
- uint32_t flush_type;
- uint32_t reserved;
- int64_t req_id;
-};
-
-#endif /* __UAPI_CAM_DEFS_H__ */
diff --git a/sdm710/original-kernel-headers/media/cam_fd.h b/sdm710/original-kernel-headers/media/cam_fd.h
deleted file mode 100644
index 6b2247f6..00000000
--- a/sdm710/original-kernel-headers/media/cam_fd.h
+++ /dev/null
@@ -1,127 +0,0 @@
-#ifndef __UAPI_CAM_FD_H__
-#define __UAPI_CAM_FD_H__
-
-#include "cam_defs.h"
-
-#define CAM_FD_MAX_FACES 35
-#define CAM_FD_RAW_RESULT_ENTRIES 512
-
-/* FD Op Codes */
-#define CAM_PACKET_OPCODES_FD_FRAME_UPDATE 0x0
-
-/* FD Command Buffer identifiers */
-#define CAM_FD_CMD_BUFFER_ID_GENERIC 0x0
-#define CAM_FD_CMD_BUFFER_ID_CDM 0x1
-#define CAM_FD_CMD_BUFFER_ID_MAX 0x2
-
-/* FD Blob types */
-#define CAM_FD_BLOB_TYPE_SOC_CLOCK_BW_REQUEST 0x0
-#define CAM_FD_BLOB_TYPE_RAW_RESULTS_REQUIRED 0x1
-
-/* FD Resource IDs */
-#define CAM_FD_INPUT_PORT_ID_IMAGE 0x0
-#define CAM_FD_INPUT_PORT_ID_MAX 0x1
-
-#define CAM_FD_OUTPUT_PORT_ID_RESULTS 0x0
-#define CAM_FD_OUTPUT_PORT_ID_RAW_RESULTS 0x1
-#define CAM_FD_OUTPUT_PORT_ID_WORK_BUFFER 0x2
-#define CAM_FD_OUTPUT_PORT_ID_MAX 0x3
-
-/**
- * struct cam_fd_soc_clock_bw_request - SOC clock, bandwidth request info
- *
- * @clock_rate : Clock rate required while processing frame
- * @bandwidth : Bandwidth required while processing frame
- * @reserved : Reserved for future use
- */
-struct cam_fd_soc_clock_bw_request {
- uint64_t clock_rate;
- uint64_t bandwidth;
- uint64_t reserved[4];
-};
-
-/**
- * struct cam_fd_face - Face properties
- *
- * @prop1 : Property 1 of face
- * @prop2 : Property 2 of face
- * @prop3 : Property 3 of face
- * @prop4 : Property 4 of face
- *
- * Do not change this layout, this is __inline__ with how HW writes
- * these values directly when the buffer is programmed to HW
- */
-struct cam_fd_face {
- uint32_t prop1;
- uint32_t prop2;
- uint32_t prop3;
- uint32_t prop4;
-};
-
-/**
- * struct cam_fd_results - FD results layout
- *
- * @faces : Array of faces with face properties
- * @face_count : Number of faces detected
- * @reserved : Reserved for alignment
- *
- * Do not change this layout, this is __inline__ with how HW writes
- * these values directly when the buffer is programmed to HW
- */
-struct cam_fd_results {
- struct cam_fd_face faces[CAM_FD_MAX_FACES];
- uint32_t face_count;
- uint32_t reserved[3];
-};
-
-/**
- * struct cam_fd_hw_caps - Face properties
- *
- * @core_version : FD core version
- * @wrapper_version : FD wrapper version
- * @raw_results_available : Whether raw results are available on this HW
- * @supported_modes : Modes supported by this HW.
- * @reserved : Reserved for future use
- */
-struct cam_fd_hw_caps {
- struct cam_hw_version core_version;
- struct cam_hw_version wrapper_version;
- uint32_t raw_results_available;
- uint32_t supported_modes;
- uint64_t reserved;
-};
-
-/**
- * struct cam_fd_query_cap_cmd - FD Query capabilities information
- *
- * @device_iommu : FD IOMMU handles
- * @cdm_iommu : CDM iommu handles
- * @hw_caps : FD HW capabilities
- * @reserved : Reserved for alignment
- */
-struct cam_fd_query_cap_cmd {
- struct cam_iommu_handle device_iommu;
- struct cam_iommu_handle cdm_iommu;
- struct cam_fd_hw_caps hw_caps;
- uint64_t reserved;
-};
-
-/**
- * struct cam_fd_acquire_dev_info - FD acquire device information
- *
- * @clk_bw_request : SOC clock, bandwidth request
- * @priority : Priority for this acquire
- * @mode : Mode in which to run FD HW.
- * @get_raw_results : Whether this acquire needs face raw results
- * while frame processing
- * @reserved : Reserved field for 64 bit alignment
- */
-struct cam_fd_acquire_dev_info {
- struct cam_fd_soc_clock_bw_request clk_bw_request;
- uint32_t priority;
- uint32_t mode;
- uint32_t get_raw_results;
- uint32_t reserved[13];
-};
-
-#endif /* __UAPI_CAM_FD_H__ */
diff --git a/sdm710/original-kernel-headers/media/cam_icp.h b/sdm710/original-kernel-headers/media/cam_icp.h
deleted file mode 100644
index cd2d2d29..00000000
--- a/sdm710/original-kernel-headers/media/cam_icp.h
+++ /dev/null
@@ -1,178 +0,0 @@
-#ifndef __UAPI_CAM_ICP_H__
-#define __UAPI_CAM_ICP_H__
-
-#include "cam_defs.h"
-
-/* icp, ipe, bps, cdm(ipe/bps) are used in querycap */
-#define CAM_ICP_DEV_TYPE_A5 1
-#define CAM_ICP_DEV_TYPE_IPE 2
-#define CAM_ICP_DEV_TYPE_BPS 3
-#define CAM_ICP_DEV_TYPE_IPE_CDM 4
-#define CAM_ICP_DEV_TYPE_BPS_CDM 5
-#define CAM_ICP_DEV_TYPE_MAX 5
-
-/* definitions needed for icp aquire device */
-#define CAM_ICP_RES_TYPE_BPS 1
-#define CAM_ICP_RES_TYPE_IPE_RT 2
-#define CAM_ICP_RES_TYPE_IPE 3
-#define CAM_ICP_RES_TYPE_MAX 4
-
-/* packet opcode types */
-#define CAM_ICP_OPCODE_IPE_UPDATE 0
-#define CAM_ICP_OPCODE_BPS_UPDATE 1
-
-/* IPE input port resource type */
-#define CAM_ICP_IPE_INPUT_IMAGE_FULL 0x0
-#define CAM_ICP_IPE_INPUT_IMAGE_DS4 0x1
-#define CAM_ICP_IPE_INPUT_IMAGE_DS16 0x2
-#define CAM_ICP_IPE_INPUT_IMAGE_DS64 0x3
-#define CAM_ICP_IPE_INPUT_IMAGE_FULL_REF 0x4
-#define CAM_ICP_IPE_INPUT_IMAGE_DS4_REF 0x5
-#define CAM_ICP_IPE_INPUT_IMAGE_DS16_REF 0x6
-#define CAM_ICP_IPE_INPUT_IMAGE_DS64_REF 0x7
-
-/* IPE output port resource type */
-#define CAM_ICP_IPE_OUTPUT_IMAGE_DISPLAY 0x8
-#define CAM_ICP_IPE_OUTPUT_IMAGE_VIDEO 0x9
-#define CAM_ICP_IPE_OUTPUT_IMAGE_FULL_REF 0xA
-#define CAM_ICP_IPE_OUTPUT_IMAGE_DS4_REF 0xB
-#define CAM_ICP_IPE_OUTPUT_IMAGE_DS16_REF 0xC
-#define CAM_ICP_IPE_OUTPUT_IMAGE_DS64_REF 0xD
-
-#define CAM_ICP_IPE_IMAGE_MAX 0xE
-
-/* BPS input port resource type */
-#define CAM_ICP_BPS_INPUT_IMAGE 0x0
-
-/* BPS output port resource type */
-#define CAM_ICP_BPS_OUTPUT_IMAGE_FULL 0x1
-#define CAM_ICP_BPS_OUTPUT_IMAGE_DS4 0x2
-#define CAM_ICP_BPS_OUTPUT_IMAGE_DS16 0x3
-#define CAM_ICP_BPS_OUTPUT_IMAGE_DS64 0x4
-#define CAM_ICP_BPS_OUTPUT_IMAGE_STATS_BG 0x5
-#define CAM_ICP_BPS_OUTPUT_IMAGE_STATS_BHIST 0x6
-#define CAM_ICP_BPS_OUTPUT_IMAGE_REG1 0x7
-#define CAM_ICP_BPS_OUTPUT_IMAGE_REG2 0x8
-
-#define CAM_ICP_BPS_IO_IMAGES_MAX 0x9
-
-/* Command meta types */
-#define CAM_ICP_CMD_META_GENERIC_BLOB 0x1
-
-/* Generic blon types */
-#define CAM_ICP_CMD_GENERIC_BLOB_CLK 0x1
-
-/**
- * struct cam_icp_clk_bw_request
- *
- * @budget_ns: Time required to process frame
- * @frame_cycles: Frame cycles needed to process the frame
- * @rt_flag: Flag to indicate real time stream
- * @uncompressed_bw: Bandwidth required to process frame
- * @compressed_bw: Compressed bandwidth to process frame
- */
-struct cam_icp_clk_bw_request {
- uint64_t budget_ns;
- uint32_t frame_cycles;
- uint32_t rt_flag;
- uint64_t uncompressed_bw;
- uint64_t compressed_bw;
-};
-
-/**
- * struct cam_icp_dev_ver - Device information for particular hw type
- *
- * This is used to get device version info of
- * ICP, IPE, BPS and CDM related IPE and BPS from firmware
- * and use this info in CAM_QUERY_CAP IOCTL
- *
- * @dev_type: hardware type for the cap info(icp, ipe, bps, cdm(ipe/bps))
- * @reserved: reserved field
- * @hw_ver: major, minor and incr values of a device version
- */
-struct cam_icp_dev_ver {
- uint32_t dev_type;
- uint32_t reserved;
- struct cam_hw_version hw_ver;
-};
-
-/**
- * struct cam_icp_ver - ICP version info
- *
- * This strcuture is used for fw and api version
- * this is used to get firmware version and api version from firmware
- * and use this info in CAM_QUERY_CAP IOCTL
- *
- * @major: FW version major
- * @minor: FW version minor
- * @revision: FW version increment
- */
-struct cam_icp_ver {
- uint32_t major;
- uint32_t minor;
- uint32_t revision;
- uint32_t reserved;
-};
-
-/**
- * struct cam_icp_query_cap_cmd - ICP query device capability payload
- *
- * @dev_iommu_handle: icp iommu handles for secure/non secure modes
- * @cdm_iommu_handle: iommu handles for secure/non secure modes
- * @fw_version: firmware version info
- * @api_version: api version info
- * @num_ipe: number of ipes
- * @num_bps: number of bps
- * @dev_ver: returned device capability array
- */
-struct cam_icp_query_cap_cmd {
- struct cam_iommu_handle dev_iommu_handle;
- struct cam_iommu_handle cdm_iommu_handle;
- struct cam_icp_ver fw_version;
- struct cam_icp_ver api_version;
- uint32_t num_ipe;
- uint32_t num_bps;
- struct cam_icp_dev_ver dev_ver[CAM_ICP_DEV_TYPE_MAX];
-};
-
-/**
- * struct cam_icp_res_info - ICP output resource info
- *
- * @format: format of the resource
- * @width: width in pixels
- * @height: height in lines
- * @fps: fps
- */
-struct cam_icp_res_info {
- uint32_t format;
- uint32_t width;
- uint32_t height;
- uint32_t fps;
-};
-
-/**
- * struct cam_icp_acquire_dev_info - An ICP device info
- *
- * @scratch_mem_size: Output param - size of scratch memory
- * @dev_type: device type (IPE_RT/IPE_NON_RT/BPS)
- * @io_config_cmd_size: size of IO config command
- * @io_config_cmd_handle: IO config command for each acquire
- * @secure_mode: camera mode (secure/non secure)
- * @chain_info: chaining info of FW device handles
- * @in_res: resource info used for clock and bandwidth calculation
- * @num_out_res: number of output resources
- * @out_res: output resource
- */
-struct cam_icp_acquire_dev_info {
- uint32_t scratch_mem_size;
- uint32_t dev_type;
- uint32_t io_config_cmd_size;
- int32_t io_config_cmd_handle;
- uint32_t secure_mode;
- int32_t chain_info;
- struct cam_icp_res_info in_res;
- uint32_t num_out_res;
- struct cam_icp_res_info out_res[1];
-} __attribute__((__packed__));
-
-#endif /* __UAPI_CAM_ICP_H__ */
diff --git a/sdm710/original-kernel-headers/media/cam_isp.h b/sdm710/original-kernel-headers/media/cam_isp.h
deleted file mode 100644
index afd109fc..00000000
--- a/sdm710/original-kernel-headers/media/cam_isp.h
+++ /dev/null
@@ -1,378 +0,0 @@
-#ifndef __UAPI_CAM_ISP_H__
-#define __UAPI_CAM_ISP_H__
-
-#include "cam_defs.h"
-#include "cam_isp_vfe.h"
-#include "cam_isp_ife.h"
-
-
-/* ISP driver name */
-#define CAM_ISP_DEV_NAME "cam-isp"
-
-/* HW type */
-#define CAM_ISP_HW_BASE 0
-#define CAM_ISP_HW_CSID 1
-#define CAM_ISP_HW_VFE 2
-#define CAM_ISP_HW_IFE 3
-#define CAM_ISP_HW_ISPIF 4
-#define CAM_ISP_HW_MAX 5
-
-/* Color Pattern */
-#define CAM_ISP_PATTERN_BAYER_RGRGRG 0
-#define CAM_ISP_PATTERN_BAYER_GRGRGR 1
-#define CAM_ISP_PATTERN_BAYER_BGBGBG 2
-#define CAM_ISP_PATTERN_BAYER_GBGBGB 3
-#define CAM_ISP_PATTERN_YUV_YCBYCR 4
-#define CAM_ISP_PATTERN_YUV_YCRYCB 5
-#define CAM_ISP_PATTERN_YUV_CBYCRY 6
-#define CAM_ISP_PATTERN_YUV_CRYCBY 7
-#define CAM_ISP_PATTERN_MAX 8
-
-/* Usage Type */
-#define CAM_ISP_RES_USAGE_SINGLE 0
-#define CAM_ISP_RES_USAGE_DUAL 1
-#define CAM_ISP_RES_USAGE_MAX 2
-
-/* Resource ID */
-#define CAM_ISP_RES_ID_PORT 0
-#define CAM_ISP_RES_ID_CLK 1
-#define CAM_ISP_RES_ID_MAX 2
-
-/* Resource Type - Type of resource for the resource id
- * defined in cam_isp_vfe.h, cam_isp_ife.h
- */
-
-/* Lane Type in input resource for Port */
-#define CAM_ISP_LANE_TYPE_DPHY 0
-#define CAM_ISP_LANE_TYPE_CPHY 1
-#define CAM_ISP_LANE_TYPE_MAX 2
-
-/* ISP Resurce Composite Group ID */
-#define CAM_ISP_RES_COMP_GROUP_NONE 0
-#define CAM_ISP_RES_COMP_GROUP_ID_0 1
-#define CAM_ISP_RES_COMP_GROUP_ID_1 2
-#define CAM_ISP_RES_COMP_GROUP_ID_2 3
-#define CAM_ISP_RES_COMP_GROUP_ID_3 4
-#define CAM_ISP_RES_COMP_GROUP_ID_4 5
-#define CAM_ISP_RES_COMP_GROUP_ID_5 6
-#define CAM_ISP_RES_COMP_GROUP_ID_MAX 6
-
-/* ISP packet opcode for ISP */
-#define CAM_ISP_PACKET_OP_BASE 0
-#define CAM_ISP_PACKET_INIT_DEV 1
-#define CAM_ISP_PACKET_UPDATE_DEV 2
-#define CAM_ISP_PACKET_OP_MAX 3
-
-/* ISP packet meta_data type for command buffer */
-#define CAM_ISP_PACKET_META_BASE 0
-#define CAM_ISP_PACKET_META_LEFT 1
-#define CAM_ISP_PACKET_META_RIGHT 2
-#define CAM_ISP_PACKET_META_COMMON 3
-#define CAM_ISP_PACKET_META_DMI_LEFT 4
-#define CAM_ISP_PACKET_META_DMI_RIGHT 5
-#define CAM_ISP_PACKET_META_DMI_COMMON 6
-#define CAM_ISP_PACKET_META_CLOCK 7
-#define CAM_ISP_PACKET_META_CSID 8
-#define CAM_ISP_PACKET_META_DUAL_CONFIG 9
-#define CAM_ISP_PACKET_META_GENERIC_BLOB_LEFT 10
-#define CAM_ISP_PACKET_META_GENERIC_BLOB_RIGHT 11
-#define CAM_ISP_PACKET_META_GENERIC_BLOB_COMMON 12
-
-/* DSP mode */
-#define CAM_ISP_DSP_MODE_NONE 0
-#define CAM_ISP_DSP_MODE_ONE_WAY 1
-#define CAM_ISP_DSP_MODE_ROUND 2
-
-/* ISP Generic Cmd Buffer Blob types */
-#define CAM_ISP_GENERIC_BLOB_TYPE_HFR_CONFIG 0
-#define CAM_ISP_GENERIC_BLOB_TYPE_CLOCK_CONFIG 1
-#define CAM_ISP_GENERIC_BLOB_TYPE_BW_CONFIG 2
-
-/* Query devices */
-/**
- * struct cam_isp_dev_cap_info - A cap info for particular hw type
- *
- * @hw_type: Hardware type for the cap info
- * @reserved: reserved field for alignment
- * @hw_version: Hardware version
- *
- */
-struct cam_isp_dev_cap_info {
- uint32_t hw_type;
- uint32_t reserved;
- struct cam_hw_version hw_version;
-};
-
-/**
- * struct cam_isp_query_cap_cmd - ISP query device capability payload
- *
- * @device_iommu: returned iommu handles for device
- * @cdm_iommu: returned iommu handles for cdm
- * @num_dev: returned number of device capabilities
- * @reserved: reserved field for alignment
- * @dev_caps: returned device capability array
- *
- */
-struct cam_isp_query_cap_cmd {
- struct cam_iommu_handle device_iommu;
- struct cam_iommu_handle cdm_iommu;
- int32_t num_dev;
- uint32_t reserved;
- struct cam_isp_dev_cap_info dev_caps[CAM_ISP_HW_MAX];
-};
-
-/* Acquire Device */
-/**
- * struct cam_isp_out_port_info - An output port resource info
- *
- * @res_type: output resource type defined in file
- * cam_isp_vfe.h or cam_isp_ife.h
- * @format: output format of the resource
- * @wdith: output width in pixels
- * @height: output height in lines
- * @comp_grp_id: composite group id for the resource.
- * @split_point: split point in pixels for the dual VFE.
- * @secure_mode: flag to tell if output should be run in secure
- * mode or not. See cam_defs.h for definition
- * @reserved: reserved field for alignment
- *
- */
-struct cam_isp_out_port_info {
- uint32_t res_type;
- uint32_t format;
- uint32_t width;
- uint32_t height;
- uint32_t comp_grp_id;
- uint32_t split_point;
- uint32_t secure_mode;
- uint32_t reserved;
-};
-
-/**
- * struct cam_isp_in_port_info - An input port resource info
- *
- * @res_type: input resource type define in file
- * cam_isp_vfe.h or cam_isp_ife.h
- * @lane_type: lane type: c-phy or d-phy.
- * @lane_num: active lane number
- * @lane_cfg: lane configurations: 4 bits per lane
- * @vc: input virtual channel number
- * @dt: input data type number
- * @format: input format
- * @test_pattern: test pattern for the testgen
- * @usage_type: whether dual vfe is required
- * @left_start: left input start offset in pixels
- * @left_stop: left input stop offset in pixels
- * @left_width: left input width in pixels
- * @right_start: right input start offset in pixels.
- * Only for Dual VFE
- * @right_stop: right input stop offset in pixels.
- * Only for Dual VFE
- * @right_width: right input width in pixels.
- * Only for dual VFE
- * @line_start: top of the line number
- * @line_stop: bottome of the line number
- * @height: input height in lines
- * @pixel_clk; sensor output clock
- * @batch_size: batch size for HFR mode
- * @dsp_mode: DSP stream mode (Defines as CAM_ISP_DSP_MODE_*)
- * @hbi_cnt: HBI count for the camif input
- * @reserved: Reserved field for alignment
- * @num_out_res: number of the output resource associated
- * @data: payload that contains the output resources
- *
- */
-struct cam_isp_in_port_info {
- uint32_t res_type;
- uint32_t lane_type;
- uint32_t lane_num;
- uint32_t lane_cfg;
- uint32_t vc;
- uint32_t dt;
- uint32_t format;
- uint32_t test_pattern;
- uint32_t usage_type;
- uint32_t left_start;
- uint32_t left_stop;
- uint32_t left_width;
- uint32_t right_start;
- uint32_t right_stop;
- uint32_t right_width;
- uint32_t line_start;
- uint32_t line_stop;
- uint32_t height;
- uint32_t pixel_clk;
- uint32_t batch_size;
- uint32_t dsp_mode;
- uint32_t hbi_cnt;
- uint32_t reserved;
- uint32_t num_out_res;
- struct cam_isp_out_port_info data[1];
-};
-
-/**
- * struct cam_isp_resource - A resource bundle
- *
- * @resoruce_id: resource id for the resource bundle
- * @length: length of the while resource blob
- * @handle_type: type of the resource handle
- * @reserved: reserved field for alignment
- * @res_hdl: resource handle that points to the
- * resource array;
- *
- */
-struct cam_isp_resource {
- uint32_t resource_id;
- uint32_t length;
- uint32_t handle_type;
- uint32_t reserved;
- uint64_t res_hdl;
-};
-
-/**
- * struct cam_isp_port_hfr_config - HFR configuration for this port
- *
- * @resource_type: Resource type
- * @subsample_pattern: Subsample pattern. Used in HFR mode. It
- * should be consistent with batchSize and
- * CAMIF programming.
- * @subsample_period: Subsample period. Used in HFR mode. It
- * should be consistent with batchSize and
- * CAMIF programming.
- * @framedrop_pattern: Framedrop pattern
- * @framedrop_period: Framedrop period
- * @reserved: Reserved for alignment
- */
-struct cam_isp_port_hfr_config {
- uint32_t resource_type;
- uint32_t subsample_pattern;
- uint32_t subsample_period;
- uint32_t framedrop_pattern;
- uint32_t framedrop_period;
- uint32_t reserved;
-} __attribute__((packed));
-
-/**
- * struct cam_isp_resource_hfr_config - Resource HFR configuration
- *
- * @num_ports: Number of ports
- * @reserved: Reserved for alignment
- * @port_hfr_config: HFR configuration for each IO port
- */
-struct cam_isp_resource_hfr_config {
- uint32_t num_ports;
- uint32_t reserved;
- struct cam_isp_port_hfr_config port_hfr_config[1];
-} __attribute__((packed));
-
-/**
- * struct cam_isp_dual_split_params - dual isp spilt parameters
- *
- * @split_point: Split point information x, where (0 < x < width)
- * left ISP's input ends at x + righ padding and
- * Right ISP's input starts at x - left padding
- * @right_padding: Padding added past the split point for left
- * ISP's input
- * @left_padding: Padding added before split point for right
- * ISP's input
- * @reserved: Reserved filed for alignment
- *
- */
-struct cam_isp_dual_split_params {
- uint32_t split_point;
- uint32_t right_padding;
- uint32_t left_padding;
- uint32_t reserved;
-};
-
-/**
- * struct cam_isp_dual_stripe_config - stripe config per bus client
- *
- * @offset: Start horizontal offset relative to
- * output buffer
- * In UBWC mode, this value indicates the H_INIT
- * value in pixel
- * @width: Width of the stripe in bytes
- * @tileconfig Ubwc meta tile config. Contain the partial
- * tile info
- * @port_id: port id of ISP output
- *
- */
-struct cam_isp_dual_stripe_config {
- uint32_t offset;
- uint32_t width;
- uint32_t tileconfig;
- uint32_t port_id;
-};
-
-/**
- * struct cam_isp_dual_config - dual isp configuration
- *
- * @num_ports Number of isp output ports
- * @reserved Reserved field for alignment
- * @split_params: Inpput split parameters
- * @stripes: Stripe information
- *
- */
-struct cam_isp_dual_config {
- uint32_t num_ports;
- uint32_t reserved;
- struct cam_isp_dual_split_params split_params;
- struct cam_isp_dual_stripe_config stripes[1];
-} __attribute__((packed));
-
-/**
- * struct cam_isp_clock_config - Clock configuration
- *
- * @usage_type: Usage type (Single/Dual)
- * @num_rdi: Number of RDI votes
- * @left_pix_hz: Pixel Clock for Left ISP
- * @right_pix_hz: Pixel Clock for Right ISP, valid only if Dual
- * @rdi_hz: RDI Clock. ISP clock will be max of RDI and
- * PIX clocks. For a particular context which ISP
- * HW the RDI is allocated to is not known to UMD.
- * Hence pass the clock and let KMD decide.
- */
-struct cam_isp_clock_config {
- uint32_t usage_type;
- uint32_t num_rdi;
- uint64_t left_pix_hz;
- uint64_t right_pix_hz;
- uint64_t rdi_hz[1];
-} __attribute__((packed));
-
-/**
- * struct cam_isp_bw_vote - Bandwidth vote information
- *
- * @resource_id: Resource ID
- * @reserved: Reserved field for alignment
- * @cam_bw_bps: Bandwidth vote for CAMNOC
- * @ext_bw_bps: Bandwidth vote for path-to-DDR after CAMNOC
- */
-
-struct cam_isp_bw_vote {
- uint32_t resource_id;
- uint32_t reserved;
- uint64_t cam_bw_bps;
- uint64_t ext_bw_bps;
-} __attribute__((packed));
-
-/**
- * struct cam_isp_bw_config - Bandwidth configuration
- *
- * @usage_type: Usage type (Single/Dual)
- * @num_rdi: Number of RDI votes
- * @left_pix_vote: Bandwidth vote for left ISP
- * @right_pix_vote: Bandwidth vote for right ISP
- * @rdi_vote: RDI bandwidth requirements
- */
-
-struct cam_isp_bw_config {
- uint32_t usage_type;
- uint32_t num_rdi;
- struct cam_isp_bw_vote left_pix_vote;
- struct cam_isp_bw_vote right_pix_vote;
- struct cam_isp_bw_vote rdi_vote[1];
-} __attribute__((packed));
-
-#endif /* __UAPI_CAM_ISP_H__ */
diff --git a/sdm710/original-kernel-headers/media/cam_isp_ife.h b/sdm710/original-kernel-headers/media/cam_isp_ife.h
deleted file mode 100644
index f5e72813..00000000
--- a/sdm710/original-kernel-headers/media/cam_isp_ife.h
+++ /dev/null
@@ -1,39 +0,0 @@
-#ifndef __UAPI_CAM_ISP_IFE_H__
-#define __UAPI_CAM_ISP_IFE_H__
-
-/* IFE output port resource type (global unique)*/
-#define CAM_ISP_IFE_OUT_RES_BASE 0x3000
-
-#define CAM_ISP_IFE_OUT_RES_FULL (CAM_ISP_IFE_OUT_RES_BASE + 0)
-#define CAM_ISP_IFE_OUT_RES_DS4 (CAM_ISP_IFE_OUT_RES_BASE + 1)
-#define CAM_ISP_IFE_OUT_RES_DS16 (CAM_ISP_IFE_OUT_RES_BASE + 2)
-#define CAM_ISP_IFE_OUT_RES_RAW_DUMP (CAM_ISP_IFE_OUT_RES_BASE + 3)
-#define CAM_ISP_IFE_OUT_RES_FD (CAM_ISP_IFE_OUT_RES_BASE + 4)
-#define CAM_ISP_IFE_OUT_RES_PDAF (CAM_ISP_IFE_OUT_RES_BASE + 5)
-#define CAM_ISP_IFE_OUT_RES_RDI_0 (CAM_ISP_IFE_OUT_RES_BASE + 6)
-#define CAM_ISP_IFE_OUT_RES_RDI_1 (CAM_ISP_IFE_OUT_RES_BASE + 7)
-#define CAM_ISP_IFE_OUT_RES_RDI_2 (CAM_ISP_IFE_OUT_RES_BASE + 8)
-#define CAM_ISP_IFE_OUT_RES_RDI_3 (CAM_ISP_IFE_OUT_RES_BASE + 9)
-#define CAM_ISP_IFE_OUT_RES_STATS_HDR_BE (CAM_ISP_IFE_OUT_RES_BASE + 10)
-#define CAM_ISP_IFE_OUT_RES_STATS_HDR_BHIST (CAM_ISP_IFE_OUT_RES_BASE + 11)
-#define CAM_ISP_IFE_OUT_RES_STATS_TL_BG (CAM_ISP_IFE_OUT_RES_BASE + 12)
-#define CAM_ISP_IFE_OUT_RES_STATS_BF (CAM_ISP_IFE_OUT_RES_BASE + 13)
-#define CAM_ISP_IFE_OUT_RES_STATS_AWB_BG (CAM_ISP_IFE_OUT_RES_BASE + 14)
-#define CAM_ISP_IFE_OUT_RES_STATS_BHIST (CAM_ISP_IFE_OUT_RES_BASE + 15)
-#define CAM_ISP_IFE_OUT_RES_STATS_RS (CAM_ISP_IFE_OUT_RES_BASE + 16)
-#define CAM_ISP_IFE_OUT_RES_STATS_CS (CAM_ISP_IFE_OUT_RES_BASE + 17)
-#define CAM_ISP_IFE_OUT_RES_STATS_IHIST (CAM_ISP_IFE_OUT_RES_BASE + 18)
-#define CAM_ISP_IFE_OUT_RES_MAX (CAM_ISP_IFE_OUT_RES_BASE + 19)
-
-
-/* IFE input port resource type (global unique) */
-#define CAM_ISP_IFE_IN_RES_BASE 0x4000
-
-#define CAM_ISP_IFE_IN_RES_TPG (CAM_ISP_IFE_IN_RES_BASE + 0)
-#define CAM_ISP_IFE_IN_RES_PHY_0 (CAM_ISP_IFE_IN_RES_BASE + 1)
-#define CAM_ISP_IFE_IN_RES_PHY_1 (CAM_ISP_IFE_IN_RES_BASE + 2)
-#define CAM_ISP_IFE_IN_RES_PHY_2 (CAM_ISP_IFE_IN_RES_BASE + 3)
-#define CAM_ISP_IFE_IN_RES_PHY_3 (CAM_ISP_IFE_IN_RES_BASE + 4)
-#define CAM_ISP_IFE_IN_RES_MAX (CAM_ISP_IFE_IN_RES_BASE + 5)
-
-#endif /* __UAPI_CAM_ISP_IFE_H__ */
diff --git a/sdm710/original-kernel-headers/media/cam_isp_vfe.h b/sdm710/original-kernel-headers/media/cam_isp_vfe.h
deleted file mode 100644
index e48db2f9..00000000
--- a/sdm710/original-kernel-headers/media/cam_isp_vfe.h
+++ /dev/null
@@ -1,44 +0,0 @@
-#ifndef __UAPI_CAM_ISP_VFE_H__
-#define __UAPI_CAM_ISP_VFE_H__
-
-/* VFE output port resource type (global unique) */
-#define CAM_ISP_VFE_OUT_RES_BASE 0x1000
-
-#define CAM_ISP_VFE_OUT_RES_ENC (CAM_ISP_VFE_OUT_RES_BASE + 0)
-#define CAM_ISP_VFE_OUT_RES_VIEW (CAM_ISP_VFE_OUT_RES_BASE + 1)
-#define CAM_ISP_VFE_OUT_RES_VID (CAM_ISP_VFE_OUT_RES_BASE + 2)
-#define CAM_ISP_VFE_OUT_RES_RDI_0 (CAM_ISP_VFE_OUT_RES_BASE + 3)
-#define CAM_ISP_VFE_OUT_RES_RDI_1 (CAM_ISP_VFE_OUT_RES_BASE + 4)
-#define CAM_ISP_VFE_OUT_RES_RDI_2 (CAM_ISP_VFE_OUT_RES_BASE + 5)
-#define CAM_ISP_VFE_OUT_RES_RDI_3 (CAM_ISP_VFE_OUT_RES_BASE + 6)
-#define CAM_ISP_VFE_OUT_RES_STATS_AEC (CAM_ISP_VFE_OUT_RES_BASE + 7)
-#define CAM_ISP_VFE_OUT_RES_STATS_AF (CAM_ISP_VFE_OUT_RES_BASE + 8)
-#define CAM_ISP_VFE_OUT_RES_STATS_AWB (CAM_ISP_VFE_OUT_RES_BASE + 9)
-#define CAM_ISP_VFE_OUT_RES_STATS_RS (CAM_ISP_VFE_OUT_RES_BASE + 10)
-#define CAM_ISP_VFE_OUT_RES_STATS_CS (CAM_ISP_VFE_OUT_RES_BASE + 11)
-#define CAM_ISP_VFE_OUT_RES_STATS_IHIST (CAM_ISP_VFE_OUT_RES_BASE + 12)
-#define CAM_ISP_VFE_OUT_RES_STATS_SKIN (CAM_ISP_VFE_OUT_RES_BASE + 13)
-#define CAM_ISP_VFE_OUT_RES_STATS_BG (CAM_ISP_VFE_OUT_RES_BASE + 14)
-#define CAM_ISP_VFE_OUT_RES_STATS_BF (CAM_ISP_VFE_OUT_RES_BASE + 15)
-#define CAM_ISP_VFE_OUT_RES_STATS_BE (CAM_ISP_VFE_OUT_RES_BASE + 16)
-#define CAM_ISP_VFE_OUT_RES_STATS_BHIST (CAM_ISP_VFE_OUT_RES_BASE + 17)
-#define CAM_ISP_VFE_OUT_RES_STATS_BF_SCALE (CAM_ISP_VFE_OUT_RES_BASE + 18)
-#define CAM_ISP_VFE_OUT_RES_STATS_HDR_BE (CAM_ISP_VFE_OUT_RES_BASE + 19)
-#define CAM_ISP_VFE_OUT_RES_STATS_HDR_BHIST (CAM_ISP_VFE_OUT_RES_BASE + 20)
-#define CAM_ISP_VFE_OUT_RES_STATS_AEC_BG (CAM_ISP_VFE_OUT_RES_BASE + 21)
-#define CAM_ISP_VFE_OUT_RES_CAMIF_RAW (CAM_ISP_VFE_OUT_RES_BASE + 22)
-#define CAM_ISP_VFE_OUT_RES_IDEAL_RAW (CAM_ISP_VFE_OUT_RES_BASE + 23)
-#define CAM_ISP_VFE_OUT_RES_MAX (CAM_ISP_VFE_OUT_RES_BASE + 24)
-
-/* VFE input port_ resource type (global unique) */
-#define CAM_ISP_VFE_IN_RES_BASE 0x2000
-
-#define CAM_ISP_VFE_IN_RES_TPG (CAM_ISP_VFE_IN_RES_BASE + 0)
-#define CAM_ISP_VFE_IN_RES_PHY_0 (CAM_ISP_VFE_IN_RES_BASE + 1)
-#define CAM_ISP_VFE_IN_RES_PHY_1 (CAM_ISP_VFE_IN_RES_BASE + 2)
-#define CAM_ISP_VFE_IN_RES_PHY_2 (CAM_ISP_VFE_IN_RES_BASE + 3)
-#define CAM_ISP_VFE_IN_RES_PHY_3 (CAM_ISP_VFE_IN_RES_BASE + 4)
-#define CAM_ISP_VFE_IN_RES_FE (CAM_ISP_VFE_IN_RES_BASE + 5)
-#define CAM_ISP_VFE_IN_RES_MAX (CAM_ISP_VFE_IN_RES_BASE + 6)
-
-#endif /* __UAPI_CAM_ISP_VFE_H__ */
diff --git a/sdm710/original-kernel-headers/media/cam_jpeg.h b/sdm710/original-kernel-headers/media/cam_jpeg.h
deleted file mode 100644
index f3082f3b..00000000
--- a/sdm710/original-kernel-headers/media/cam_jpeg.h
+++ /dev/null
@@ -1,117 +0,0 @@
-#ifndef __UAPI_CAM_JPEG_H__
-#define __UAPI_CAM_JPEG_H__
-
-#include "cam_defs.h"
-
-/* enc, dma, cdm(enc/dma) are used in querycap */
-#define CAM_JPEG_DEV_TYPE_ENC 0
-#define CAM_JPEG_DEV_TYPE_DMA 1
-#define CAM_JPEG_DEV_TYPE_MAX 2
-
-#define CAM_JPEG_NUM_DEV_PER_RES_MAX 1
-
-/* definitions needed for jpeg aquire device */
-#define CAM_JPEG_RES_TYPE_ENC 0
-#define CAM_JPEG_RES_TYPE_DMA 1
-#define CAM_JPEG_RES_TYPE_MAX 2
-
-/* packet opcode types */
-#define CAM_JPEG_OPCODE_ENC_UPDATE 0
-#define CAM_JPEG_OPCODE_DMA_UPDATE 1
-
-/* ENC input port resource type */
-#define CAM_JPEG_ENC_INPUT_IMAGE 0x0
-
-/* ENC output port resource type */
-#define CAM_JPEG_ENC_OUTPUT_IMAGE 0x1
-
-#define CAM_JPEG_ENC_IO_IMAGES_MAX 0x2
-
-/* DMA input port resource type */
-#define CAM_JPEG_DMA_INPUT_IMAGE 0x0
-
-/* DMA output port resource type */
-#define CAM_JPEG_DMA_OUTPUT_IMAGE 0x1
-
-#define CAM_JPEG_DMA_IO_IMAGES_MAX 0x2
-
-#define CAM_JPEG_IMAGE_MAX 0x2
-
-/**
- * struct cam_jpeg_dev_ver - Device information for particular hw type
- *
- * This is used to get device version info of JPEG ENC, JPEG DMA
- * from hardware and use this info in CAM_QUERY_CAP IOCTL
- *
- * @size : Size of struct passed
- * @dev_type: Hardware type for the cap info(jpeg enc, jpeg dma)
- * @hw_ver: Major, minor and incr values of a device version
- */
-struct cam_jpeg_dev_ver {
- uint32_t size;
- uint32_t dev_type;
- struct cam_hw_version hw_ver;
-};
-
-/**
- * struct cam_jpeg_query_cap_cmd - JPEG query device capability payload
- *
- * @dev_iommu_handle: Jpeg iommu handles for secure/non secure
- * modes
- * @cdm_iommu_handle: Iommu handles for secure/non secure modes
- * @num_enc: Number of encoder
- * @num_dma: Number of dma
- * @dev_ver: Returned device capability array
- */
-struct cam_jpeg_query_cap_cmd {
- struct cam_iommu_handle dev_iommu_handle;
- struct cam_iommu_handle cdm_iommu_handle;
- uint32_t num_enc;
- uint32_t num_dma;
- struct cam_jpeg_dev_ver dev_ver[CAM_JPEG_DEV_TYPE_MAX];
-};
-
-/**
- * struct cam_jpeg_res_info - JPEG output resource info
- *
- * @format: Format of the resource
- * @width: Width in pixels
- * @height: Height in lines
- * @fps: Fps
- */
-struct cam_jpeg_res_info {
- uint32_t format;
- uint32_t width;
- uint32_t height;
- uint32_t fps;
-};
-
-/**
- * struct cam_jpeg_acquire_dev_info - An JPEG device info
- *
- * @dev_type: Device type (ENC/DMA)
- * @reserved: Reserved Bytes
- * @in_res: In resource info
- * @in_res: Iut resource info
- */
-struct cam_jpeg_acquire_dev_info {
- uint32_t dev_type;
- uint32_t reserved;
- struct cam_jpeg_res_info in_res;
- struct cam_jpeg_res_info out_res;
-};
-
-/**
- * struct cam_jpeg_config_inout_param_info - JPEG Config time
- * input output params
- *
- * @clk_index: Input Param- clock selection index.(-1 default)
- * @output_size: Output Param - jpeg encode/dma output size in
- * bytes
- */
-struct cam_jpeg_config_inout_param_info {
- int32_t clk_index;
- int32_t output_size;
-};
-
-#endif /* __UAPI_CAM_JPEG_H__ */
diff --git a/sdm710/original-kernel-headers/media/cam_lrme.h b/sdm710/original-kernel-headers/media/cam_lrme.h
deleted file mode 100644
index 97d95783..00000000
--- a/sdm710/original-kernel-headers/media/cam_lrme.h
+++ /dev/null
@@ -1,65 +0,0 @@
-#ifndef __UAPI_CAM_LRME_H__
-#define __UAPI_CAM_LRME_H__
-
-#include "cam_defs.h"
-
-/* LRME Resource Types */
-
-enum CAM_LRME_IO_TYPE {
- CAM_LRME_IO_TYPE_TAR,
- CAM_LRME_IO_TYPE_REF,
- CAM_LRME_IO_TYPE_RES,
- CAM_LRME_IO_TYPE_DS2,
-};
-
-#define CAM_LRME_INPUT_PORT_TYPE_TAR (1 << 0)
-#define CAM_LRME_INPUT_PORT_TYPE_REF (1 << 1)
-
-#define CAM_LRME_OUTPUT_PORT_TYPE_DS2 (1 << 0)
-#define CAM_LRME_OUTPUT_PORT_TYPE_RES (1 << 1)
-
-#define CAM_LRME_DEV_MAX 1
-
-
-struct cam_lrme_hw_version {
- uint32_t gen;
- uint32_t rev;
- uint32_t step;
-};
-
-struct cam_lrme_dev_cap {
- struct cam_lrme_hw_version clc_hw_version;
- struct cam_lrme_hw_version bus_rd_hw_version;
- struct cam_lrme_hw_version bus_wr_hw_version;
- struct cam_lrme_hw_version top_hw_version;
- struct cam_lrme_hw_version top_titan_version;
-};
-
-/**
- * struct cam_lrme_query_cap_cmd - LRME query device capability payload
- *
- * @dev_iommu_handle: LRME iommu handles for secure/non secure
- * modes
- * @cdm_iommu_handle: Iommu handles for secure/non secure modes
- * @num_devices: number of hardware devices
- * @dev_caps: Returned device capability array
- */
-struct cam_lrme_query_cap_cmd {
- struct cam_iommu_handle device_iommu;
- struct cam_iommu_handle cdm_iommu;
- uint32_t num_devices;
- struct cam_lrme_dev_cap dev_caps[CAM_LRME_DEV_MAX];
-};
-
-struct cam_lrme_soc_info {
- uint64_t clock_rate;
- uint64_t bandwidth;
- uint64_t reserved[4];
-};
-
-struct cam_lrme_acquire_args {
- struct cam_lrme_soc_info lrme_soc_info;
-};
-
-#endif /* __UAPI_CAM_LRME_H__ */
-
diff --git a/sdm710/original-kernel-headers/media/cam_req_mgr.h b/sdm710/original-kernel-headers/media/cam_req_mgr.h
deleted file mode 100644
index a24f1266..00000000
--- a/sdm710/original-kernel-headers/media/cam_req_mgr.h
+++ /dev/null
@@ -1,434 +0,0 @@
-#ifndef __UAPI_LINUX_CAM_REQ_MGR_H
-#define __UAPI_LINUX_CAM_REQ_MGR_H
-
-#include <linux/videodev2.h>
-#include <linux/types.h>
-#include <linux/ioctl.h>
-#include <linux/media.h>
-#include <media/cam_defs.h>
-
-#define CAM_REQ_MGR_VNODE_NAME "cam-req-mgr-devnode"
-
-#define CAM_DEVICE_TYPE_BASE (MEDIA_ENT_F_OLD_BASE)
-#define CAM_VNODE_DEVICE_TYPE (CAM_DEVICE_TYPE_BASE)
-#define CAM_SENSOR_DEVICE_TYPE (CAM_DEVICE_TYPE_BASE + 1)
-#define CAM_IFE_DEVICE_TYPE (CAM_DEVICE_TYPE_BASE + 2)
-#define CAM_ICP_DEVICE_TYPE (CAM_DEVICE_TYPE_BASE + 3)
-#define CAM_LRME_DEVICE_TYPE (CAM_DEVICE_TYPE_BASE + 4)
-#define CAM_JPEG_DEVICE_TYPE (CAM_DEVICE_TYPE_BASE + 5)
-#define CAM_FD_DEVICE_TYPE (CAM_DEVICE_TYPE_BASE + 6)
-#define CAM_CPAS_DEVICE_TYPE (CAM_DEVICE_TYPE_BASE + 7)
-#define CAM_CSIPHY_DEVICE_TYPE (CAM_DEVICE_TYPE_BASE + 8)
-#define CAM_ACTUATOR_DEVICE_TYPE (CAM_DEVICE_TYPE_BASE + 9)
-#define CAM_CCI_DEVICE_TYPE (CAM_DEVICE_TYPE_BASE + 10)
-#define CAM_FLASH_DEVICE_TYPE (CAM_DEVICE_TYPE_BASE + 11)
-#define CAM_EEPROM_DEVICE_TYPE (CAM_DEVICE_TYPE_BASE + 12)
-#define CAM_OIS_DEVICE_TYPE (CAM_DEVICE_TYPE_BASE + 13)
-
-/* cam_req_mgr hdl info */
-#define CAM_REQ_MGR_HDL_IDX_POS 8
-#define CAM_REQ_MGR_HDL_IDX_MASK ((1 << CAM_REQ_MGR_HDL_IDX_POS) - 1)
-#define CAM_REQ_MGR_GET_HDL_IDX(hdl) (hdl & CAM_REQ_MGR_HDL_IDX_MASK)
-
-/**
- * Max handles supported by cam_req_mgr
- * It includes both session and device handles
- */
-#define CAM_REQ_MGR_MAX_HANDLES 64
-#define MAX_LINKS_PER_SESSION 2
-
-/* V4L event type which user space will subscribe to */
-#define V4L_EVENT_CAM_REQ_MGR_EVENT (V4L2_EVENT_PRIVATE_START + 0)
-
-/* Specific event ids to get notified in user space */
-#define V4L_EVENT_CAM_REQ_MGR_SOF 0
-#define V4L_EVENT_CAM_REQ_MGR_ERROR 1
-#define V4L_EVENT_CAM_REQ_MGR_SOF_BOOT_TS 2
-#define V4L_EVENT_CAM_REQ_MGR_MAX 3
-
-/* SOF Event status */
-#define CAM_REQ_MGR_SOF_EVENT_SUCCESS 0
-#define CAM_REQ_MGR_SOF_EVENT_ERROR 1
-
-/* Link control operations */
-#define CAM_REQ_MGR_LINK_ACTIVATE 0
-#define CAM_REQ_MGR_LINK_DEACTIVATE 1
-
-/**
- * Request Manager : flush_type
- * @CAM_REQ_MGR_FLUSH_TYPE_ALL: Req mgr will remove all the pending
- * requests from input/processing queue.
- * @CAM_REQ_MGR_FLUSH_TYPE_CANCEL_REQ: Req mgr will remove only particular
- * request id from input/processing queue.
- * @CAM_REQ_MGR_FLUSH_TYPE_MAX: Max number of the flush type
- * @opcode: CAM_REQ_MGR_FLUSH_REQ
- */
-#define CAM_REQ_MGR_FLUSH_TYPE_ALL 0
-#define CAM_REQ_MGR_FLUSH_TYPE_CANCEL_REQ 1
-#define CAM_REQ_MGR_FLUSH_TYPE_MAX 2
-
-/**
- * Request Manager : Sync Mode type
- * @CAM_REQ_MGR_SYNC_MODE_NO_SYNC: Req mgr will apply non-sync mode for this
- * request.
- * @CAM_REQ_MGR_SYNC_MODE_SYNC: Req mgr will apply sync mode for this request.
- */
-#define CAM_REQ_MGR_SYNC_MODE_NO_SYNC 0
-#define CAM_REQ_MGR_SYNC_MODE_SYNC 1
-
-/**
- * struct cam_req_mgr_event_data
- * @session_hdl: session handle
- * @link_hdl: link handle
- * @frame_id: frame id
- * @reserved: reserved for 64 bit aligngment
- * @req_id: request id
- * @tv_sec: timestamp in seconds
- * @tv_usec: timestamp in micro seconds
- */
-struct cam_req_mgr_event_data {
- int32_t session_hdl;
- int32_t link_hdl;
- int32_t frame_id;
- int32_t reserved;
- int64_t req_id;
- uint64_t tv_sec;
- uint64_t tv_usec;
-};
-
-/**
- * struct cam_req_mgr_session_info
- * @session_hdl: In/Output param - session_handle
- * @opcode1: CAM_REQ_MGR_CREATE_SESSION
- * @opcode2: CAM_REQ_MGR_DESTROY_SESSION
- */
-struct cam_req_mgr_session_info {
- int32_t session_hdl;
- int32_t reserved;
-};
-
-/**
- * struct cam_req_mgr_link_info
- * @session_hdl: Input param - Identifier for CSL session
- * @num_devices: Input Param - Num of devices to be linked
- * @dev_hdls: Input param - List of device handles to be linked
- * @link_hdl: Output Param -Identifier for link
- * @opcode: CAM_REQ_MGR_LINK
- */
-struct cam_req_mgr_link_info {
- int32_t session_hdl;
- uint32_t num_devices;
- int32_t dev_hdls[CAM_REQ_MGR_MAX_HANDLES];
- int32_t link_hdl;
-};
-
-/**
- * struct cam_req_mgr_unlink_info
- * @session_hdl: input param - session handle
- * @link_hdl: input param - link handle
- * @opcode: CAM_REQ_MGR_UNLINK
- */
-struct cam_req_mgr_unlink_info {
- int32_t session_hdl;
- int32_t link_hdl;
-};
-
-/**
- * struct cam_req_mgr_flush_info
- * @brief: User can tell drivers to flush a particular request id or
- * flush all requests from its pending processing queue. Flush is a
- * blocking call and driver shall ensure all requests are flushed
- * before returning.
- * @session_hdl: Input param - Identifier for CSL session
- * @link_hdl: Input Param -Identifier for link
- * @flush_type: User can cancel a particular req id or can flush
- * all requests in queue
- * @reserved: reserved for 64 bit aligngment
- * @req_id: field is valid only if flush type is cancel request
- * for flush all this field value is not considered.
- * @opcode: CAM_REQ_MGR_FLUSH_REQ
- */
-struct cam_req_mgr_flush_info {
- int32_t session_hdl;
- int32_t link_hdl;
- uint32_t flush_type;
- uint32_t reserved;
- int64_t req_id;
-};
-
-/** struct cam_req_mgr_sched_info
- * @session_hdl: Input param - Identifier for CSL session
- * @link_hdl: Input Param -Identifier for link
- * inluding itself.
- * @bubble_enable: Input Param - Cam req mgr will do bubble recovery if this
- * flag is set.
- * @sync_mode: Type of Sync mode for this request
- * @req_id: Input Param - Request Id from which all requests will be flushed
- */
-struct cam_req_mgr_sched_request {
- int32_t session_hdl;
- int32_t link_hdl;
- int32_t bubble_enable;
- int32_t sync_mode;
- int64_t req_id;
-};
-
-/**
- * struct cam_req_mgr_sync_mode
- * @session_hdl: Input param - Identifier for CSL session
- * @sync_mode: Input Param - Type of sync mode
- * @num_links: Input Param - Num of links in sync mode (Valid only
- * when sync_mode is one of SYNC enabled modes)
- * @link_hdls: Input Param - Array of link handles to be in sync mode
- * (Valid only when sync_mode is one of SYNC
- * enabled modes)
- * @master_link_hdl: Input Param - To dictate which link's SOF drives system
- * (Valid only when sync_mode is one of SYNC
- * enabled modes)
- *
- * @opcode: CAM_REQ_MGR_SYNC_MODE
- */
-struct cam_req_mgr_sync_mode {
- int32_t session_hdl;
- int32_t sync_mode;
- int32_t num_links;
- int32_t link_hdls[MAX_LINKS_PER_SESSION];
- int32_t master_link_hdl;
- int32_t reserved;
-};
-
-/**
- * struct cam_req_mgr_link_control
- * @ops: Link operations: activate/deactive
- * @session_hdl: Input param - Identifier for CSL session
- * @num_links: Input Param - Num of links
- * @reserved: reserved field
- * @link_hdls: Input Param - Links to be activated/deactivated
- *
- * @opcode: CAM_REQ_MGR_LINK_CONTROL
- */
-struct cam_req_mgr_link_control {
- int32_t ops;
- int32_t session_hdl;
- int32_t num_links;
- int32_t reserved;
- int32_t link_hdls[MAX_LINKS_PER_SESSION];
-};
-
-/**
- * cam_req_mgr specific opcode ids
- */
-#define CAM_REQ_MGR_CREATE_DEV_NODES (CAM_COMMON_OPCODE_MAX + 1)
-#define CAM_REQ_MGR_CREATE_SESSION (CAM_COMMON_OPCODE_MAX + 2)
-#define CAM_REQ_MGR_DESTROY_SESSION (CAM_COMMON_OPCODE_MAX + 3)
-#define CAM_REQ_MGR_LINK (CAM_COMMON_OPCODE_MAX + 4)
-#define CAM_REQ_MGR_UNLINK (CAM_COMMON_OPCODE_MAX + 5)
-#define CAM_REQ_MGR_SCHED_REQ (CAM_COMMON_OPCODE_MAX + 6)
-#define CAM_REQ_MGR_FLUSH_REQ (CAM_COMMON_OPCODE_MAX + 7)
-#define CAM_REQ_MGR_SYNC_MODE (CAM_COMMON_OPCODE_MAX + 8)
-#define CAM_REQ_MGR_ALLOC_BUF (CAM_COMMON_OPCODE_MAX + 9)
-#define CAM_REQ_MGR_MAP_BUF (CAM_COMMON_OPCODE_MAX + 10)
-#define CAM_REQ_MGR_RELEASE_BUF (CAM_COMMON_OPCODE_MAX + 11)
-#define CAM_REQ_MGR_CACHE_OPS (CAM_COMMON_OPCODE_MAX + 12)
-#define CAM_REQ_MGR_LINK_CONTROL (CAM_COMMON_OPCODE_MAX + 13)
-/* end of cam_req_mgr opcodes */
-
-#define CAM_MEM_FLAG_HW_READ_WRITE (1<<0)
-#define CAM_MEM_FLAG_HW_READ_ONLY (1<<1)
-#define CAM_MEM_FLAG_HW_WRITE_ONLY (1<<2)
-#define CAM_MEM_FLAG_KMD_ACCESS (1<<3)
-#define CAM_MEM_FLAG_UMD_ACCESS (1<<4)
-#define CAM_MEM_FLAG_PROTECTED_MODE (1<<5)
-#define CAM_MEM_FLAG_CMD_BUF_TYPE (1<<6)
-#define CAM_MEM_FLAG_PIXEL_BUF_TYPE (1<<7)
-#define CAM_MEM_FLAG_STATS_BUF_TYPE (1<<8)
-#define CAM_MEM_FLAG_PACKET_BUF_TYPE (1<<9)
-#define CAM_MEM_FLAG_CACHE (1<<10)
-#define CAM_MEM_FLAG_HW_SHARED_ACCESS (1<<11)
-
-#define CAM_MEM_MMU_MAX_HANDLE 16
-
-/* Maximum allowed buffers in existence */
-#define CAM_MEM_BUFQ_MAX 1024
-
-#define CAM_MEM_MGR_SECURE_BIT_POS 15
-#define CAM_MEM_MGR_HDL_IDX_SIZE 15
-#define CAM_MEM_MGR_HDL_FD_SIZE 16
-#define CAM_MEM_MGR_HDL_IDX_END_POS 16
-#define CAM_MEM_MGR_HDL_FD_END_POS 32
-
-#define CAM_MEM_MGR_HDL_IDX_MASK ((1 << CAM_MEM_MGR_HDL_IDX_SIZE) - 1)
-
-#define GET_MEM_HANDLE(idx, fd) \
- ((idx & CAM_MEM_MGR_HDL_IDX_MASK) | \
- (fd << (CAM_MEM_MGR_HDL_FD_END_POS - CAM_MEM_MGR_HDL_FD_SIZE))) \
-
-#define CAM_MEM_MGR_GET_HDL_IDX(hdl) (hdl & CAM_MEM_MGR_HDL_IDX_MASK)
-
-#define CAM_MEM_MGR_SET_SECURE_HDL(hdl, flag) \
- ((flag) ? (hdl |= (1 << CAM_MEM_MGR_SECURE_BIT_POS)) : \
- ((hdl) &= ~(1 << CAM_MEM_MGR_SECURE_BIT_POS)))
-
-#define CAM_MEM_MGR_IS_SECURE_HDL(hdl) \
- (((hdl) & \
- (1<<CAM_MEM_MGR_SECURE_BIT_POS)) >> CAM_MEM_MGR_SECURE_BIT_POS)
-
-/**
- * memory allocation type
- */
-#define CAM_MEM_DMA_NONE 0
-#define CAM_MEM_DMA_BIDIRECTIONAL 1
-#define CAM_MEM_DMA_TO_DEVICE 2
-#define CAM_MEM_DMA_FROM_DEVICE 3
-
-
-/**
- * memory cache operation
- */
-#define CAM_MEM_CLEAN_CACHE 1
-#define CAM_MEM_INV_CACHE 2
-#define CAM_MEM_CLEAN_INV_CACHE 3
-
-
-/**
- * struct cam_mem_alloc_out_params
- * @buf_handle: buffer handle
- * @fd: output buffer file descriptor
- * @vaddr: virtual address pointer
- */
-struct cam_mem_alloc_out_params {
- uint32_t buf_handle;
- int32_t fd;
- uint64_t vaddr;
-};
-
-/**
- * struct cam_mem_map_out_params
- * @buf_handle: buffer handle
- * @reserved: reserved for future
- * @vaddr: virtual address pointer
- */
-struct cam_mem_map_out_params {
- uint32_t buf_handle;
- uint32_t reserved;
- uint64_t vaddr;
-};
-
-/**
- * struct cam_mem_mgr_alloc_cmd
- * @len: size of buffer to allocate
- * @align: alignment of the buffer
- * @mmu_hdls: array of mmu handles
- * @num_hdl: number of handles
- * @flags: flags of the buffer
- * @out: out params
- */
-/* CAM_REQ_MGR_ALLOC_BUF */
-struct cam_mem_mgr_alloc_cmd {
- uint64_t len;
- uint64_t align;
- int32_t mmu_hdls[CAM_MEM_MMU_MAX_HANDLE];
- uint32_t num_hdl;
- uint32_t flags;
- struct cam_mem_alloc_out_params out;
-};
-
-/**
- * struct cam_mem_mgr_map_cmd
- * @mmu_hdls: array of mmu handles
- * @num_hdl: number of handles
- * @flags: flags of the buffer
- * @fd: output buffer file descriptor
- * @reserved: reserved field
- * @out: out params
- */
-
-/* CAM_REQ_MGR_MAP_BUF */
-struct cam_mem_mgr_map_cmd {
- int32_t mmu_hdls[CAM_MEM_MMU_MAX_HANDLE];
- uint32_t num_hdl;
- uint32_t flags;
- int32_t fd;
- uint32_t reserved;
- struct cam_mem_map_out_params out;
-};
-
-/**
- * struct cam_mem_mgr_map_cmd
- * @buf_handle: buffer handle
- * @reserved: reserved field
- */
-/* CAM_REQ_MGR_RELEASE_BUF */
-struct cam_mem_mgr_release_cmd {
- int32_t buf_handle;
- uint32_t reserved;
-};
-
-/**
- * struct cam_mem_mgr_map_cmd
- * @buf_handle: buffer handle
- * @ops: cache operations
- */
-/* CAM_REQ_MGR_CACHE_OPS */
-struct cam_mem_cache_ops_cmd {
- int32_t buf_handle;
- uint32_t mem_cache_ops;
-};
-
-/**
- * Request Manager : error message type
- * @CAM_REQ_MGR_ERROR_TYPE_DEVICE: Device error message, fatal to session
- * @CAM_REQ_MGR_ERROR_TYPE_REQUEST: Error on a single request, not fatal
- * @CAM_REQ_MGR_ERROR_TYPE_BUFFER: Buffer was not filled, not fatal
- */
-#define CAM_REQ_MGR_ERROR_TYPE_DEVICE 0
-#define CAM_REQ_MGR_ERROR_TYPE_REQUEST 1
-#define CAM_REQ_MGR_ERROR_TYPE_BUFFER 2
-
-/**
- * struct cam_req_mgr_error_msg
- * @error_type: type of error
- * @request_id: request id of frame
- * @device_hdl: device handle
- * @linke_hdl: link_hdl
- * @resource_size: size of the resource
- */
-struct cam_req_mgr_error_msg {
- uint32_t error_type;
- uint32_t request_id;
- int32_t device_hdl;
- int32_t link_hdl;
- uint64_t resource_size;
-};
-
-/**
- * struct cam_req_mgr_frame_msg
- * @request_id: request id of the frame
- * @frame_id: frame id of the frame
- * @timestamp: timestamp of the frame
- * @link_hdl: link handle associated with this message
- * @sof_status: sof status success or fail
- */
-struct cam_req_mgr_frame_msg {
- uint64_t request_id;
- uint64_t frame_id;
- uint64_t timestamp;
- int32_t link_hdl;
- uint32_t sof_status;
-};
-
-/**
- * struct cam_req_mgr_message
- * @session_hdl: session to which the frame belongs to
- * @reserved: reserved field
- * @u: union which can either be error or frame message
- */
-struct cam_req_mgr_message {
- int32_t session_hdl;
- int32_t reserved;
- union {
- struct cam_req_mgr_error_msg err_msg;
- struct cam_req_mgr_frame_msg frame_msg;
- } u;
-};
-#endif /* __UAPI_LINUX_CAM_REQ_MGR_H */
diff --git a/sdm710/original-kernel-headers/media/cam_sensor.h b/sdm710/original-kernel-headers/media/cam_sensor.h
deleted file mode 100644
index 2fcd6f53..00000000
--- a/sdm710/original-kernel-headers/media/cam_sensor.h
+++ /dev/null
@@ -1,526 +0,0 @@
-#ifndef __UAPI_CAM_SENSOR_H__
-#define __UAPI_CAM_SENSOR_H__
-
-#include <linux/types.h>
-#include <linux/ioctl.h>
-#include <media/cam_defs.h>
-
-#define CAM_SENSOR_PROBE_CMD (CAM_COMMON_OPCODE_MAX + 1)
-#define CAM_FLASH_MAX_LED_TRIGGERS 3
-#define MAX_OIS_NAME_SIZE 32
-#define CAM_CSIPHY_SECURE_MODE_ENABLED 1
-#define MAX_RAINBOW_CONFIG_SIZE 32
-
-enum rainbow_op_type {
- RAINBOW_SEQ_READ,
- RAINBOW_RANDOM_READ,
- RAINBOW_SEQ_WRITE,
- RAINBOW_RANDOM_WRITE
-};
-
-struct rainbow_config {
- enum rainbow_op_type operation;
- uint32_t size;
- uint32_t reg_addr[MAX_RAINBOW_CONFIG_SIZE];
- uint32_t reg_data[MAX_RAINBOW_CONFIG_SIZE];
-} __attribute__((packed));
-
-#define RAINBOW_CONFIG \
- _IOWR('R', 1, struct rainbow_config)
-
-/**
- * struct cam_sensor_query_cap - capabilities info for sensor
- *
- * @slot_info : Indicates about the slotId or cell Index
- * @secure_camera : Camera is in secure/Non-secure mode
- * @pos_pitch : Sensor position pitch
- * @pos_roll : Sensor position roll
- * @pos_yaw : Sensor position yaw
- * @actuator_slot_id : Actuator slot id which connected to sensor
- * @eeprom_slot_id : EEPROM slot id which connected to sensor
- * @ois_slot_id : OIS slot id which connected to sensor
- * @flash_slot_id : Flash slot id which connected to sensor
- * @csiphy_slot_id : CSIphy slot id which connected to sensor
- *
- */
-struct cam_sensor_query_cap {
- uint32_t slot_info;
- uint32_t secure_camera;
- uint32_t pos_pitch;
- uint32_t pos_roll;
- uint32_t pos_yaw;
- uint32_t actuator_slot_id;
- uint32_t eeprom_slot_id;
- uint32_t ois_slot_id;
- uint32_t flash_slot_id;
- uint32_t csiphy_slot_id;
-} __attribute__((packed));
-
-/**
- * struct cam_csiphy_query_cap - capabilities info for csiphy
- *
- * @slot_info : Indicates about the slotId or cell Index
- * @version : CSIphy version
- * @clk lane : Of the 5 lanes, informs lane configured
- * as clock lane
- * @reserved
- */
-struct cam_csiphy_query_cap {
- uint32_t slot_info;
- uint32_t version;
- uint32_t clk_lane;
- uint32_t reserved;
-} __attribute__((packed));
-
-/**
- * struct cam_actuator_query_cap - capabilities info for actuator
- *
- * @slot_info : Indicates about the slotId or cell Index
- * @reserved
- */
-struct cam_actuator_query_cap {
- uint32_t slot_info;
- uint32_t reserved;
-} __attribute__((packed));
-
-/**
- * struct cam_eeprom_query_cap_t - capabilities info for eeprom
- *
- * @slot_info : Indicates about the slotId or cell Index
- * @eeprom_kernel_probe : Indicates about the kernel or userspace probe
- */
-struct cam_eeprom_query_cap_t {
- uint32_t slot_info;
- uint16_t eeprom_kernel_probe;
- uint16_t reserved;
-} __attribute__((packed));
-
-/**
- * struct cam_ois_query_cap_t - capabilities info for ois
- *
- * @slot_info : Indicates about the slotId or cell Index
- */
-struct cam_ois_query_cap_t {
- uint32_t slot_info;
- uint16_t reserved;
-} __attribute__((packed));
-
-/**
- * struct cam_cmd_i2c_info - Contains slave I2C related info
- *
- * @slave_addr : Slave address
- * @i2c_freq_mode : 4 bits are used for I2c freq mode
- * @cmd_type : Explains type of command
- */
-struct cam_cmd_i2c_info {
- uint16_t slave_addr;
- uint8_t i2c_freq_mode;
- uint8_t cmd_type;
-} __attribute__((packed));
-
-/**
- * struct cam_cmd_get_ois_data - Contains OIS data read cmd
- *
- * @reg_addr : register addr to read data from
- * @reg_data : number of bytes to read
- * @query_size_handle : handle to user space query_size address
- * @query_data_handle : handle to user space query_data address
- */
-struct cam_cmd_get_ois_data {
- uint32_t reg_addr;
- uint32_t reg_data;
- uint64_t query_size_handle;
- uint64_t query_data_handle;
-} __attribute__((packed));
-
-/**
- * struct cam_ois_shift - Contains OIS shift data
- *
- * @ois_shift_x : shift in x dim
- * @ois_shift_y : shift in y dim
- * @time_readout : time that the shift is read out
- */
-struct cam_ois_shift {
- int16_t ois_shift_x;
- int16_t ois_shift_y;
- int64_t time_readout;
-} __attribute__((packed));
-
-/**
- * struct cam_ois_opcode - Contains OIS opcode
- *
- * @prog : OIS FW prog register address
- * @coeff : OIS FW coeff register address
- * @pheripheral : OIS pheripheral
- * @memory : OIS memory
- */
-struct cam_ois_opcode {
- uint32_t prog;
- uint32_t coeff;
- uint32_t pheripheral;
- uint32_t memory;
-} __attribute__((packed));
-
-/**
- * struct cam_cmd_ois_info - Contains OIS slave info
- *
- * @slave_addr : OIS i2c slave address
- * @i2c_freq_mode : i2c frequency mode
- * @cmd_type : Explains type of command
- * @ois_fw_flag : indicates if fw is present or not
- * @is_ois_calib : indicates the calibration data is available
- * @ois_name : OIS name
- * @opcode : opcode
- */
-struct cam_cmd_ois_info {
- uint16_t slave_addr;
- uint8_t i2c_freq_mode;
- uint8_t cmd_type;
- uint8_t ois_fw_flag;
- uint8_t is_ois_calib;
- char ois_name[MAX_OIS_NAME_SIZE];
- struct cam_ois_opcode opcode;
-} __attribute__((packed));
-
-/**
- * struct cam_cmd_probe - Contains sensor slave info
- *
- * @data_type : Slave register data type
- * @addr_type : Slave register address type
- * @op_code : Don't Care
- * @cmd_type : Explains type of command
- * @reg_addr : Slave register address
- * @expected_data : Data expected at slave register address
- * @data_mask : Data mask if only few bits are valid
- * @camera_id : Indicates the slot to which camera
- * needs to be probed
- * @fw_update_flag : Update OIS firmware
- * @reserved
- */
-struct cam_cmd_probe {
- uint8_t data_type;
- uint8_t addr_type;
- uint8_t op_code;
- uint8_t cmd_type;
- uint32_t reg_addr;
- uint32_t expected_data;
- uint32_t data_mask;
- uint16_t camera_id;
- uint8_t fw_update_flag;
- uint16_t reserved;
-} __attribute__((packed));
-
-/**
- * struct cam_power_settings - Contains sensor power setting info
- *
- * @power_seq_type : Type of power sequence
- * @reserved
- * @config_val_low : Lower 32 bit value configuration value
- * @config_val_high : Higher 32 bit value configuration value
- *
- */
-struct cam_power_settings {
- uint16_t power_seq_type;
- uint16_t reserved;
- uint32_t config_val_low;
- uint32_t config_val_high;
-} __attribute__((packed));
-
-/**
- * struct cam_cmd_power - Explains about the power settings
- *
- * @count : Number of power settings follows
- * @reserved
- * @cmd_type : Explains type of command
- * @power_settings : Contains power setting info
- */
-struct cam_cmd_power {
- uint16_t count;
- uint8_t reserved;
- uint8_t cmd_type;
- struct cam_power_settings power_settings[1];
-} __attribute__((packed));
-
-/**
- * struct i2c_rdwr_header - header of READ/WRITE I2C command
- *
- * @ count : Number of registers / data / reg-data pairs
- * @ op_code : Operation code
- * @ cmd_type : Command buffer type
- * @ data_type : I2C data type
- * @ addr_type : I2C address type
- * @ slave_addr : Slave address
- */
-struct i2c_rdwr_header {
- uint16_t count;
- uint8_t op_code;
- uint8_t cmd_type;
- uint8_t data_type;
- uint8_t addr_type;
- uint16_t slave_addr;
-} __attribute__((packed));
-
-/**
- * struct i2c_random_wr_payload - payload for I2C random write
- *
- * @ reg_addr : Register address
- * @ reg_data : Register data
- *
- */
-struct i2c_random_wr_payload {
- uint32_t reg_addr;
- uint32_t reg_data;
-} __attribute__((packed));
-
-/**
- * struct cam_cmd_i2c_random_wr - I2C random write command
- * @ header : header of READ/WRITE I2C command
- * @ random_wr_payload : payload for I2C random write
- */
-struct cam_cmd_i2c_random_wr {
- struct i2c_rdwr_header header;
- struct i2c_random_wr_payload random_wr_payload[1];
-} __attribute__((packed));
-
-/**
- * struct cam_cmd_read - I2C read command
- * @ reg_data : Register data
- * @ reserved
- */
-struct cam_cmd_read {
- uint32_t reg_data;
- uint32_t reserved;
-} __attribute__((packed));
-
-/**
- * struct cam_cmd_i2c_continuous_wr - I2C continuous write command
- * @ header : header of READ/WRITE I2C command
- * @ reg_addr : Register address
- * @ data_read : I2C read command
- */
-struct cam_cmd_i2c_continuous_wr {
- struct i2c_rdwr_header header;
- uint32_t reg_addr;
- struct cam_cmd_read data_read[1];
-} __attribute__((packed));
-
-/**
- * struct cam_cmd_i2c_random_rd - I2C random read command
- * @ header : header of READ/WRITE I2C command
- * @ data_read : I2C read command
- */
-struct cam_cmd_i2c_random_rd {
- struct i2c_rdwr_header header;
- struct cam_cmd_read data_read[1];
-} __attribute__((packed));
-
-/**
- * struct cam_cmd_i2c_continuous_rd - I2C continuous continuous read command
- * @ header : header of READ/WRITE I2C command
- * @ reg_addr : Register address
- *
- */
-struct cam_cmd_i2c_continuous_rd {
- struct i2c_rdwr_header header;
- uint32_t reg_addr;
-} __attribute__((packed));
-
-/**
- * struct cam_cmd_conditional_wait - Conditional wait command
- * @data_type : Data type
- * @addr_type : Address type
- * @op_code : Opcode
- * @cmd_type : Explains type of command
- * @timeout : Timeout for retries
- * @reserved
- * @reg_addr : Register Address
- * @reg_data : Register data
- * @data_mask : Data mask if only few bits are valid
- * @camera_id : Indicates the slot to which camera
- * needs to be probed
- *
- */
-struct cam_cmd_conditional_wait {
- uint8_t data_type;
- uint8_t addr_type;
- uint8_t op_code;
- uint8_t cmd_type;
- uint16_t timeout;
- uint16_t reserved;
- uint32_t reg_addr;
- uint32_t reg_data;
- uint32_t data_mask;
-} __attribute__((packed));
-
-/**
- * struct cam_cmd_unconditional_wait - Un-conditional wait command
- * @delay : Delay
- * @op_code : Opcode
- * @cmd_type : Explains type of command
- */
-struct cam_cmd_unconditional_wait {
- int16_t delay;
- uint8_t op_code;
- uint8_t cmd_type;
-} __attribute__((packed));
-
-/**
- * cam_csiphy_info: Provides cmdbuffer structre
- * @lane_mask : Lane mask details
- * @lane_assign : Lane sensor will be using
- * @csiphy_3phase : Total number of lanes
- * @combo_mode : Info regarding combo_mode is enable / disable
- * @lane_cnt : Total number of lanes
- * @secure_mode : Secure mode flag to enable / disable
- * @3phase : Details whether 3Phase / 2Phase operation
- * @settle_time : Settling time in ms
- * @data_rate : Data rate
- *
- */
-struct cam_csiphy_info {
- uint16_t lane_mask;
- uint16_t lane_assign;
- uint8_t csiphy_3phase;
- uint8_t combo_mode;
- uint8_t lane_cnt;
- uint8_t secure_mode;
- uint64_t settle_time;
- uint64_t data_rate;
-} __attribute__((packed));
-
-/**
- * cam_csiphy_acquire_dev_info : Information needed for
- * csiphy at the time of acquire
- * @combo_mode : Indicates the device mode of operation
- * @reserved
- *
- */
-struct cam_csiphy_acquire_dev_info {
- uint32_t combo_mode;
- uint32_t reserved;
-} __attribute__((packed));
-
-/**
- * cam_sensor_acquire_dev : Updates sensor acuire cmd
- * @device_handle : Updates device handle
- * @session_handle : Session handle for acquiring device
- * @handle_type : Resource handle type
- * @reserved
- * @info_handle : Handle to additional info
- * needed for sensor sub modules
- *
- */
-struct cam_sensor_acquire_dev {
- uint32_t session_handle;
- uint32_t device_handle;
- uint32_t handle_type;
- uint32_t reserved;
- uint64_t info_handle;
-} __attribute__((packed));
-
-/**
- * cam_sensor_streamon_dev : StreamOn command for the sensor
- * @session_handle : Session handle for acquiring device
- * @device_handle : Updates device handle
- * @handle_type : Resource handle type
- * @reserved
- * @info_handle : Information Needed at the time of streamOn
- *
- */
-struct cam_sensor_streamon_dev {
- uint32_t session_handle;
- uint32_t device_handle;
- uint32_t handle_type;
- uint32_t reserved;
- uint64_t info_handle;
-} __attribute__((packed));
-
-/**
- * struct cam_flash_init : Init command for the flash
- * @flash_type : flash hw type
- * @reserved
- * @cmd_type : command buffer type
- */
-struct cam_flash_init {
- uint8_t flash_type;
- uint16_t reserved;
- uint8_t cmd_type;
-} __attribute__((packed));
-
-/**
- * struct cam_flash_set_rer : RedEyeReduction command buffer
- *
- * @count : Number of flash leds
- * @opcode : Command buffer opcode
- * CAM_FLASH_FIRE_RER
- * @cmd_type : command buffer operation type
- * @num_iteration : Number of led turn on/off sequence
- * @reserved
- * @led_on_delay_ms : flash led turn on time in ms
- * @led_off_delay_ms : flash led turn off time in ms
- * @led_current_ma : flash led current in ma
- *
- */
-struct cam_flash_set_rer {
- uint16_t count;
- uint8_t opcode;
- uint8_t cmd_type;
- uint16_t num_iteration;
- uint16_t reserved;
- uint32_t led_on_delay_ms;
- uint32_t led_off_delay_ms;
- uint32_t led_current_ma[CAM_FLASH_MAX_LED_TRIGGERS];
-} __attribute__((packed));
-
-/**
- * struct cam_flash_set_on_off : led turn on/off command buffer
- *
- * @count : Number of Flash leds
- * @opcode : command buffer opcodes
- * CAM_FLASH_FIRE_LOW
- * CAM_FLASH_FIRE_HIGH
- * CAM_FLASH_OFF
- * @cmd_type : command buffer operation type
- * @led_current_ma : flash led current in ma
- *
- */
-struct cam_flash_set_on_off {
- uint16_t count;
- uint8_t opcode;
- uint8_t cmd_type;
- uint32_t led_current_ma[CAM_FLASH_MAX_LED_TRIGGERS];
-} __attribute__((packed));
-
-/**
- * struct cam_flash_query_curr : query current command buffer
- *
- * @reserved
- * @opcode : command buffer opcode
- * @cmd_type : command buffer operation type
- * @query_current_ma : battery current in ma
- *
- */
-struct cam_flash_query_curr {
- uint16_t reserved;
- uint8_t opcode;
- uint8_t cmd_type;
- uint32_t query_current_ma;
-} __attribute__ ((packed));
-
-/**
- * struct cam_flash_query_cap : capabilities info for flash
- *
- * @slot_info : Indicates about the slotId or cell Index
- * @max_current_flash : max supported current for flash
- * @max_duration_flash : max flash turn on duration
- * @max_current_torch : max supported current for torch
- *
- */
-struct cam_flash_query_cap_info {
- uint32_t slot_info;
- uint32_t max_current_flash[CAM_FLASH_MAX_LED_TRIGGERS];
- uint32_t max_duration_flash[CAM_FLASH_MAX_LED_TRIGGERS];
- uint32_t max_current_torch[CAM_FLASH_MAX_LED_TRIGGERS];
-} __attribute__ ((packed));
-
-#endif
diff --git a/sdm710/original-kernel-headers/media/cam_sync.h b/sdm710/original-kernel-headers/media/cam_sync.h
deleted file mode 100644
index 4a8781fc..00000000
--- a/sdm710/original-kernel-headers/media/cam_sync.h
+++ /dev/null
@@ -1,134 +0,0 @@
-#ifndef __UAPI_CAM_SYNC_H__
-#define __UAPI_CAM_SYNC_H__
-
-#include <linux/videodev2.h>
-#include <linux/types.h>
-#include <linux/ioctl.h>
-#include <linux/media.h>
-
-#define CAM_SYNC_DEVICE_NAME "cam_sync_device"
-
-/* V4L event which user space will subscribe to */
-#define CAM_SYNC_V4L_EVENT (V4L2_EVENT_PRIVATE_START + 0)
-
-/* Specific event ids to get notified in user space */
-#define CAM_SYNC_V4L_EVENT_ID_CB_TRIG 0
-
-/* Size of opaque payload sent to kernel for safekeeping until signal time */
-#define CAM_SYNC_USER_PAYLOAD_SIZE 2
-
-/* Device type for sync device needed for device discovery */
-#define CAM_SYNC_DEVICE_TYPE (MEDIA_ENT_F_OLD_BASE)
-
-#define CAM_SYNC_GET_PAYLOAD_PTR(ev, type) \
- (type *)((char *)ev.u.data + sizeof(struct cam_sync_ev_header))
-
-#define CAM_SYNC_GET_HEADER_PTR(ev) \
- ((struct cam_sync_ev_header *)ev.u.data)
-
-#define CAM_SYNC_STATE_INVALID 0
-#define CAM_SYNC_STATE_ACTIVE 1
-#define CAM_SYNC_STATE_SIGNALED_SUCCESS 2
-#define CAM_SYNC_STATE_SIGNALED_ERROR 3
-
-/**
- * struct cam_sync_ev_header - Event header for sync event notification
- *
- * @sync_obj: Sync object
- * @status: Status of the object
- */
-struct cam_sync_ev_header {
- int32_t sync_obj;
- int32_t status;
-};
-
-/**
- * struct cam_sync_info - Sync object creation information
- *
- * @name: Optional string representation of the sync object
- * @sync_obj: Sync object returned after creation in kernel
- */
-struct cam_sync_info {
- char name[64];
- int32_t sync_obj;
-};
-
-/**
- * struct cam_sync_signal - Sync object signaling struct
- *
- * @sync_obj: Sync object to be signaled
- * @sync_state: State of the sync object to which it should be signaled
- */
-struct cam_sync_signal {
- int32_t sync_obj;
- uint32_t sync_state;
-};
-
-/**
- * struct cam_sync_merge - Merge information for sync objects
- *
- * @sync_objs: Pointer to sync objects
- * @num_objs: Number of objects in the array
- * @merged: Merged sync object
- */
-struct cam_sync_merge {
- __u64 sync_objs;
- uint32_t num_objs;
- int32_t merged;
-};
-
-/**
- * struct cam_sync_userpayload_info - Payload info from user space
- *
- * @sync_obj: Sync object for which payload has to be registered for
- * @reserved: Reserved
- * @payload: Pointer to user payload
- */
-struct cam_sync_userpayload_info {
- int32_t sync_obj;
- uint32_t reserved;
- __u64 payload[CAM_SYNC_USER_PAYLOAD_SIZE];
-};
-
-/**
- * struct cam_sync_wait - Sync object wait information
- *
- * @sync_obj: Sync object to wait on
- * @reserved: Reserved
- * @timeout_ms: Timeout in milliseconds
- */
-struct cam_sync_wait {
- int32_t sync_obj;
- uint32_t reserved;
- uint64_t timeout_ms;
-};
-
-/**
- * struct cam_private_ioctl_arg - Sync driver ioctl argument
- *
- * @id: IOCTL command id
- * @size: Size of command payload
- * @result: Result of command execution
- * @reserved: Reserved
- * @ioctl_ptr: Pointer to user data
- */
-struct cam_private_ioctl_arg {
- __u32 id;
- __u32 size;
- __u32 result;
- __u32 reserved;
- __u64 ioctl_ptr;
-};
-
-#define CAM_PRIVATE_IOCTL_CMD \
- _IOWR('V', BASE_VIDIOC_PRIVATE, struct cam_private_ioctl_arg)
-
-#define CAM_SYNC_CREATE 0
-#define CAM_SYNC_DESTROY 1
-#define CAM_SYNC_SIGNAL 2
-#define CAM_SYNC_MERGE 3
-#define CAM_SYNC_REGISTER_PAYLOAD 4
-#define CAM_SYNC_DEREGISTER_PAYLOAD 5
-#define CAM_SYNC_WAIT 6
-
-#endif /* __UAPI_CAM_SYNC_H__ */
diff --git a/sdm710/original-kernel-headers/media/msm_cam_sensor.h b/sdm710/original-kernel-headers/media/msm_cam_sensor.h
deleted file mode 100644
index 56685f10..00000000
--- a/sdm710/original-kernel-headers/media/msm_cam_sensor.h
+++ /dev/null
@@ -1,635 +0,0 @@
-#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>
-
-#include <linux/types.h>
-#include <linux/i2c.h>
-
-#define I2C_SEQ_REG_SETTING_MAX 5
-
-#define MSM_SENSOR_MCLK_8HZ 8000000
-#define MSM_SENSOR_MCLK_16HZ 16000000
-#define MSM_SENSOR_MCLK_24HZ 24000000
-
-#define MAX_SENSOR_NAME 32
-#define MAX_ACTUATOR_AF_TOTAL_STEPS 1024
-
-#define MAX_OIS_MOD_NAME_SIZE 32
-#define MAX_OIS_NAME_SIZE 32
-#define MAX_OIS_REG_SETTINGS 800
-
-#define MOVE_NEAR 0
-#define MOVE_FAR 1
-
-#define MSM_ACTUATOR_MOVE_SIGNED_FAR -1
-#define MSM_ACTUATOR_MOVE_SIGNED_NEAR 1
-
-#define MAX_ACTUATOR_REGION 5
-
-#define MAX_EEPROM_NAME 32
-
-#define MAX_AF_ITERATIONS 3
-#define MAX_NUMBER_OF_STEPS 47
-#define MAX_REGULATOR 5
-
-/*msm_flash_query_data_t query types*/
-#define FLASH_QUERY_CURRENT 1
-
-#define MSM_V4L2_PIX_FMT_META v4l2_fourcc('M', 'E', 'T', 'A') /* META */
-#define MSM_V4L2_PIX_FMT_META10 v4l2_fourcc('M', 'E', '1', '0') /* META10 */
-#define MSM_V4L2_PIX_FMT_SBGGR14 v4l2_fourcc('B', 'G', '1', '4')
- /* 14 BGBG.. GRGR.. */
-#define MSM_V4L2_PIX_FMT_SGBRG14 v4l2_fourcc('G', 'B', '1', '4')
- /* 14 GBGB.. RGRG.. */
-#define MSM_V4L2_PIX_FMT_SGRBG14 v4l2_fourcc('B', 'A', '1', '4')
- /* 14 GRGR.. BGBG.. */
-#define MSM_V4L2_PIX_FMT_SRGGB14 v4l2_fourcc('R', 'G', '1', '4')
- /* 14 RGRG.. GBGB.. */
-
-enum flash_type {
- LED_FLASH = 1,
- STROBE_FLASH,
- GPIO_FLASH
-};
-
-enum msm_sensor_resolution_t {
- MSM_SENSOR_RES_FULL,
- MSM_SENSOR_RES_QTR,
- MSM_SENSOR_RES_2,
- MSM_SENSOR_RES_3,
- MSM_SENSOR_RES_4,
- MSM_SENSOR_RES_5,
- MSM_SENSOR_RES_6,
- MSM_SENSOR_RES_7,
- MSM_SENSOR_INVALID_RES,
-};
-
-enum msm_camera_stream_type_t {
- MSM_CAMERA_STREAM_PREVIEW,
- MSM_CAMERA_STREAM_SNAPSHOT,
- MSM_CAMERA_STREAM_VIDEO,
- MSM_CAMERA_STREAM_INVALID,
-};
-
-enum sensor_sub_module_t {
- SUB_MODULE_SENSOR,
- SUB_MODULE_CHROMATIX,
- SUB_MODULE_ACTUATOR,
- SUB_MODULE_EEPROM,
- SUB_MODULE_LED_FLASH,
- SUB_MODULE_STROBE_FLASH,
- SUB_MODULE_CSID,
- SUB_MODULE_CSID_3D,
- SUB_MODULE_CSIPHY,
- SUB_MODULE_CSIPHY_3D,
- SUB_MODULE_OIS,
- SUB_MODULE_EXT,
- SUB_MODULE_IR_LED,
- SUB_MODULE_IR_CUT,
- SUB_MODULE_LASER_LED,
- SUB_MODULE_MAX,
-};
-
-enum {
- MSM_CAMERA_EFFECT_MODE_OFF,
- MSM_CAMERA_EFFECT_MODE_MONO,
- MSM_CAMERA_EFFECT_MODE_NEGATIVE,
- MSM_CAMERA_EFFECT_MODE_SOLARIZE,
- MSM_CAMERA_EFFECT_MODE_SEPIA,
- MSM_CAMERA_EFFECT_MODE_POSTERIZE,
- MSM_CAMERA_EFFECT_MODE_WHITEBOARD,
- MSM_CAMERA_EFFECT_MODE_BLACKBOARD,
- MSM_CAMERA_EFFECT_MODE_AQUA,
- MSM_CAMERA_EFFECT_MODE_EMBOSS,
- MSM_CAMERA_EFFECT_MODE_SKETCH,
- MSM_CAMERA_EFFECT_MODE_NEON,
- MSM_CAMERA_EFFECT_MODE_MAX
-};
-
-enum {
- MSM_CAMERA_WB_MODE_AUTO,
- MSM_CAMERA_WB_MODE_CUSTOM,
- MSM_CAMERA_WB_MODE_INCANDESCENT,
- MSM_CAMERA_WB_MODE_FLUORESCENT,
- MSM_CAMERA_WB_MODE_WARM_FLUORESCENT,
- MSM_CAMERA_WB_MODE_DAYLIGHT,
- MSM_CAMERA_WB_MODE_CLOUDY_DAYLIGHT,
- MSM_CAMERA_WB_MODE_TWILIGHT,
- MSM_CAMERA_WB_MODE_SHADE,
- MSM_CAMERA_WB_MODE_OFF,
- MSM_CAMERA_WB_MODE_MAX
-};
-
-enum {
- MSM_CAMERA_SCENE_MODE_OFF,
- MSM_CAMERA_SCENE_MODE_AUTO,
- MSM_CAMERA_SCENE_MODE_LANDSCAPE,
- MSM_CAMERA_SCENE_MODE_SNOW,
- MSM_CAMERA_SCENE_MODE_BEACH,
- MSM_CAMERA_SCENE_MODE_SUNSET,
- MSM_CAMERA_SCENE_MODE_NIGHT,
- MSM_CAMERA_SCENE_MODE_PORTRAIT,
- MSM_CAMERA_SCENE_MODE_BACKLIGHT,
- MSM_CAMERA_SCENE_MODE_SPORTS,
- MSM_CAMERA_SCENE_MODE_ANTISHAKE,
- MSM_CAMERA_SCENE_MODE_FLOWERS,
- MSM_CAMERA_SCENE_MODE_CANDLELIGHT,
- MSM_CAMERA_SCENE_MODE_FIREWORKS,
- MSM_CAMERA_SCENE_MODE_PARTY,
- MSM_CAMERA_SCENE_MODE_NIGHT_PORTRAIT,
- MSM_CAMERA_SCENE_MODE_THEATRE,
- MSM_CAMERA_SCENE_MODE_ACTION,
- MSM_CAMERA_SCENE_MODE_AR,
- MSM_CAMERA_SCENE_MODE_FACE_PRIORITY,
- MSM_CAMERA_SCENE_MODE_BARCODE,
- MSM_CAMERA_SCENE_MODE_HDR,
- MSM_CAMERA_SCENE_MODE_MAX
-};
-
-enum csid_cfg_type_t {
- CSID_INIT,
- CSID_CFG,
- CSID_TESTMODE_CFG,
- CSID_RELEASE,
-};
-
-enum csiphy_cfg_type_t {
- CSIPHY_INIT,
- CSIPHY_CFG,
- CSIPHY_RELEASE,
-};
-
-enum camera_vreg_type {
- VREG_TYPE_DEFAULT,
- VREG_TYPE_CUSTOM,
-};
-
-enum sensor_af_t {
- SENSOR_AF_FOCUSSED,
- SENSOR_AF_NOT_FOCUSSED,
-};
-
-enum cci_i2c_master_t {
- MASTER_0,
- MASTER_1,
- MASTER_MAX,
-};
-
-struct msm_camera_i2c_array_write_config {
- struct msm_camera_i2c_reg_setting conf_array;
- uint16_t slave_addr;
-};
-
-struct msm_camera_i2c_read_config {
- 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;
- uint16_t data;
-};
-
-struct msm_camera_csi2_params {
- struct msm_camera_csid_params csid_params;
- struct msm_camera_csiphy_params csiphy_params;
- uint8_t csi_clk_scale_enable;
-};
-
-struct msm_camera_csi_lane_params {
- uint16_t csi_lane_assign;
- uint16_t csi_lane_mask;
-};
-
-struct csi_lane_params_t {
- uint16_t csi_lane_assign;
- uint8_t csi_lane_mask;
- uint8_t csi_if;
- int8_t csid_core[2];
- uint8_t csi_phy_sel;
-};
-
-struct msm_sensor_info_t {
- char sensor_name[MAX_SENSOR_NAME];
- uint32_t session_id;
- int32_t subdev_id[SUB_MODULE_MAX];
- int32_t subdev_intf[SUB_MODULE_MAX];
- uint8_t is_mount_angle_valid;
- uint32_t sensor_mount_angle;
- int modes_supported;
- enum camb_position_t position;
-};
-
-struct camera_vreg_t {
- const char *reg_name;
- int min_voltage;
- int max_voltage;
- int op_mode;
- uint32_t delay;
- const char *custom_vreg_name;
- enum camera_vreg_type type;
-};
-
-struct sensorb_cfg_data {
- int cfgtype;
- union {
- 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;
- } cfg;
-};
-
-struct csid_cfg_data {
- enum csid_cfg_type_t cfgtype;
- union {
- uint32_t csid_version;
- struct msm_camera_csid_params *csid_params;
- struct msm_camera_csid_testmode_parms *csid_testmode_params;
- } cfg;
-};
-
-struct csiphy_cfg_data {
- enum csiphy_cfg_type_t cfgtype;
- union {
- struct msm_camera_csiphy_params *csiphy_params;
- struct msm_camera_csi_lane_params *csi_lane_params;
- } cfg;
-};
-
-enum eeprom_cfg_type_t {
- CFG_EEPROM_GET_INFO,
- CFG_EEPROM_GET_CAL_DATA,
- CFG_EEPROM_READ_CAL_DATA,
- CFG_EEPROM_WRITE_DATA,
- CFG_EEPROM_GET_MM_INFO,
- CFG_EEPROM_INIT,
-};
-
-struct eeprom_get_t {
- uint32_t num_bytes;
-};
-
-struct eeprom_read_t {
- uint8_t *dbuffer;
- uint32_t num_bytes;
-};
-
-struct eeprom_write_t {
- uint8_t *dbuffer;
- uint32_t num_bytes;
-};
-
-struct eeprom_get_cmm_t {
- uint32_t cmm_support;
- uint32_t cmm_compression;
- uint32_t cmm_size;
-};
-
-struct msm_eeprom_info_t {
- struct msm_sensor_power_setting_array *power_setting_array;
- enum i2c_freq_mode_t i2c_freq_mode;
- struct msm_eeprom_memory_map_array *mem_map_array;
-};
-
-struct msm_ir_led_cfg_data_t {
- enum msm_ir_led_cfg_type_t cfg_type;
- int32_t pwm_duty_on_ns;
- int32_t pwm_period_ns;
-};
-
-struct msm_ir_cut_cfg_data_t {
- enum msm_ir_cut_cfg_type_t cfg_type;
-};
-
-struct msm_laser_led_cfg_data_t {
- enum msm_laser_led_cfg_type_t cfg_type;
- void *setting;
- void *debug_reg;
- uint32_t debug_reg_size;
- uint16_t i2c_addr;
- enum i2c_freq_mode_t i2c_freq_mode;
-};
-
-struct msm_eeprom_cfg_data {
- enum eeprom_cfg_type_t cfgtype;
- uint8_t is_supported;
- union {
- char eeprom_name[MAX_EEPROM_NAME];
- struct eeprom_get_t get_data;
- 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;
- } cfg;
-};
-
-enum msm_sensor_cfg_type_t {
- CFG_SET_SLAVE_INFO,
- CFG_SLAVE_READ_I2C,
- CFG_WRITE_I2C_ARRAY,
- CFG_SLAVE_WRITE_I2C_ARRAY,
- CFG_WRITE_I2C_SEQ_ARRAY,
- CFG_POWER_UP,
- CFG_POWER_DOWN,
- CFG_SET_STOP_STREAM_SETTING,
- CFG_GET_SENSOR_INFO,
- CFG_GET_SENSOR_INIT_PARAMS,
- CFG_SET_INIT_SETTING,
- CFG_SET_RESOLUTION,
- CFG_SET_STOP_STREAM,
- CFG_SET_START_STREAM,
- CFG_SET_SATURATION,
- CFG_SET_CONTRAST,
- CFG_SET_SHARPNESS,
- CFG_SET_ISO,
- CFG_SET_EXPOSURE_COMPENSATION,
- CFG_SET_ANTIBANDING,
- CFG_SET_BESTSHOT_MODE,
- CFG_SET_EFFECT,
- CFG_SET_WHITE_BALANCE,
- CFG_SET_AUTOFOCUS,
- CFG_CANCEL_AUTOFOCUS,
- CFG_SET_STREAM_TYPE,
- CFG_SET_I2C_SYNC_PARAM,
- CFG_WRITE_I2C_ARRAY_ASYNC,
- CFG_WRITE_I2C_ARRAY_SYNC,
- CFG_WRITE_I2C_ARRAY_SYNC_BLOCK,
-};
-
-enum msm_actuator_cfg_type_t {
- CFG_GET_ACTUATOR_INFO,
- CFG_SET_ACTUATOR_INFO,
- CFG_SET_DEFAULT_FOCUS,
- CFG_MOVE_FOCUS,
- CFG_SET_POSITION,
- CFG_ACTUATOR_POWERDOWN,
- CFG_ACTUATOR_POWERUP,
- CFG_ACTUATOR_INIT,
-};
-
-struct msm_ois_opcode {
- uint32_t prog;
- uint32_t coeff;
- uint32_t pheripheral;
- uint32_t memory;
-};
-
-enum msm_ois_cfg_type_t {
- CFG_OIS_INIT,
- CFG_OIS_POWERDOWN,
- CFG_OIS_POWERUP,
- CFG_OIS_CONTROL,
- CFG_OIS_I2C_WRITE_SEQ_TABLE,
-};
-
-enum msm_ois_cfg_download_type_t {
- CFG_OIS_DOWNLOAD,
- CFG_OIS_DATA_CONFIG,
-};
-
-enum msm_ois_i2c_operation {
- MSM_OIS_WRITE = 0,
- MSM_OIS_POLL,
- MSM_OIS_READ,
-};
-#define MSM_OIS_READ MSM_OIS_READ
-
-struct reg_settings_ois_t {
- uint16_t reg_addr;
- enum msm_camera_i2c_reg_addr_type addr_type;
- uint32_t reg_data;
- enum msm_camera_i2c_data_type data_type;
- enum msm_ois_i2c_operation i2c_operation;
- uint32_t delay;
-};
-
-struct msm_ois_params_t {
- uint16_t data_size;
- uint16_t setting_size;
- 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;
- struct reg_settings_ois_t *settings;
-};
-
-struct msm_ois_set_info_t {
- struct msm_ois_params_t ois_params;
-};
-
-struct msm_actuator_move_params_t {
- int8_t dir;
- int8_t sign_dir;
- int16_t dest_step_pos;
- int32_t num_steps;
- uint16_t curr_lens_pos;
- struct damping_params_t *ringing_params;
-};
-
-struct msm_actuator_tuning_params_t {
- int16_t initial_code;
- uint16_t pwd_step;
- uint16_t region_size;
- uint32_t total_steps;
- struct region_params_t *region_params;
-};
-
-struct park_lens_data_t {
- uint32_t damping_step;
- uint32_t damping_delay;
- uint32_t hw_params;
- uint32_t max_step;
-};
-
-struct msm_actuator_params_t {
- enum actuator_type act_type;
- uint8_t reg_tbl_size;
- uint16_t data_size;
- uint16_t init_setting_size;
- 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;
- struct msm_actuator_reg_params_t *reg_tbl_params;
- struct reg_settings_t *init_settings;
- struct park_lens_data_t park_lens;
-};
-
-struct msm_actuator_set_info_t {
- struct msm_actuator_params_t actuator_params;
- struct msm_actuator_tuning_params_t af_tuning_params;
-};
-
-struct msm_actuator_get_info_t {
- uint32_t focal_length_num;
- uint32_t focal_length_den;
- uint32_t f_number_num;
- uint32_t f_number_den;
- uint32_t f_pix_num;
- uint32_t f_pix_den;
- uint32_t total_f_dist_num;
- uint32_t total_f_dist_den;
- uint32_t hor_view_angle_num;
- uint32_t hor_view_angle_den;
- uint32_t ver_view_angle_num;
- uint32_t ver_view_angle_den;
-};
-
-enum af_camera_name {
- ACTUATOR_MAIN_CAM_0,
- ACTUATOR_MAIN_CAM_1,
- ACTUATOR_MAIN_CAM_2,
- ACTUATOR_MAIN_CAM_3,
- ACTUATOR_MAIN_CAM_4,
- ACTUATOR_MAIN_CAM_5,
- ACTUATOR_WEB_CAM_0,
- ACTUATOR_WEB_CAM_1,
- ACTUATOR_WEB_CAM_2,
-};
-
-struct msm_ois_slave_info {
- char ois_name[MAX_OIS_NAME_SIZE];
- uint32_t i2c_addr;
- struct msm_ois_opcode opcode;
-};
-struct msm_ois_cfg_data {
- int cfgtype;
- union {
- struct msm_ois_set_info_t set_info;
- struct msm_camera_i2c_seq_reg_setting *settings;
- } cfg;
-};
-
-struct msm_ois_cfg_download_data {
- int cfgtype;
- struct msm_ois_slave_info slave_info;
-};
-
-struct msm_actuator_set_position_t {
- uint16_t number_of_steps;
- uint32_t hw_params;
- uint16_t pos[MAX_NUMBER_OF_STEPS];
- uint16_t delay[MAX_NUMBER_OF_STEPS];
-};
-
-struct msm_actuator_cfg_data {
- int cfgtype;
- uint8_t is_af_supported;
- union {
- struct msm_actuator_move_params_t move;
- struct msm_actuator_set_info_t set_info;
- struct msm_actuator_get_info_t get_info;
- struct msm_actuator_set_position_t setpos;
- enum af_camera_name cam_name;
- } cfg;
-};
-
-enum msm_camera_led_config_t {
- MSM_CAMERA_LED_OFF,
- MSM_CAMERA_LED_LOW,
- MSM_CAMERA_LED_HIGH,
- MSM_CAMERA_LED_INIT,
- MSM_CAMERA_LED_RELEASE,
-};
-
-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];
- int32_t flash_duration[MAX_LED_TRIGGERS];
-};
-
-struct msm_flash_init_info_t {
- enum msm_flash_driver_type flash_driver_type;
- 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;
-};
-
-struct msm_flash_cfg_data_t {
- enum msm_flash_cfg_type_t cfg_type;
- int32_t flash_current[MAX_LED_TRIGGERS];
- 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;
- } cfg;
-};
-
-struct msm_flash_query_data_t {
- int32_t flags;
- int32_t query_type;
- int32_t max_avail_curr;
-};
-
-/* sensor init structures and enums */
-enum msm_sensor_init_cfg_type_t {
- CFG_SINIT_PROBE,
- CFG_SINIT_PROBE_DONE,
- CFG_SINIT_PROBE_WAIT_DONE,
-};
-
-struct sensor_init_cfg_data {
- enum msm_sensor_init_cfg_type_t cfgtype;
- struct msm_sensor_info_t probed_info;
- char entity_name[MAX_SENSOR_NAME];
- union {
- void *setting;
- } cfg;
-};
-
-#define VIDIOC_MSM_SENSOR_CFG \
- _IOWR('V', BASE_VIDIOC_PRIVATE + 1, struct sensorb_cfg_data)
-
-#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)
-
-#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)
-
-#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)
-
-#define VIDIOC_MSM_FLASH_QUERY_DATA \
- _IOWR('V', BASE_VIDIOC_PRIVATE + 15, struct msm_flash_query_data_t)
-
-#define VIDIOC_MSM_IR_LED_CFG \
- _IOWR('V', BASE_VIDIOC_PRIVATE + 15, struct msm_ir_led_cfg_data_t)
-
-#define VIDIOC_MSM_IR_CUT_CFG \
- _IOWR('V', BASE_VIDIOC_PRIVATE + 15, struct msm_ir_cut_cfg_data_t)
-
-#define VIDIOC_MSM_LASER_LED_CFG \
- _IOWR('V', BASE_VIDIOC_PRIVATE + 16, struct msm_laser_led_cfg_data_t)
-
-#endif
-
diff --git a/sdm710/original-kernel-headers/media/msm_camera.h b/sdm710/original-kernel-headers/media/msm_camera.h
deleted file mode 100644
index 67255403..00000000
--- a/sdm710/original-kernel-headers/media/msm_camera.h
+++ /dev/null
@@ -1,2232 +0,0 @@
-/* Copyright (c) 2009-2012, 2014-2016, 2018, 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 __UAPI_MSM_CAMERA_H
-#define __UAPI_MSM_CAMERA_H
-
-#define CAM_API_V1
-
-#include <linux/videodev2.h>
-#include <linux/types.h>
-#include <linux/ioctl.h>
-#include <linux/media.h>
-
-#include <linux/msm_ion.h>
-
-#define BIT(nr) (1UL << (nr))
-
-#define MSM_CAM_IOCTL_MAGIC 'm'
-
-#define MAX_SERVER_PAYLOAD_LENGTH 8192
-
-#define MSM_CAM_IOCTL_GET_SENSOR_INFO \
- _IOR(MSM_CAM_IOCTL_MAGIC, 1, struct msm_camsensor_info *)
-
-#define MSM_CAM_IOCTL_REGISTER_PMEM \
- _IOW(MSM_CAM_IOCTL_MAGIC, 2, struct msm_pmem_info *)
-
-#define MSM_CAM_IOCTL_UNREGISTER_PMEM \
- _IOW(MSM_CAM_IOCTL_MAGIC, 3, unsigned int)
-
-#define MSM_CAM_IOCTL_CTRL_COMMAND \
- _IOW(MSM_CAM_IOCTL_MAGIC, 4, struct msm_ctrl_cmd *)
-
-#define MSM_CAM_IOCTL_CONFIG_VFE \
- _IOW(MSM_CAM_IOCTL_MAGIC, 5, struct msm_camera_vfe_cfg_cmd *)
-
-#define MSM_CAM_IOCTL_GET_STATS \
- _IOR(MSM_CAM_IOCTL_MAGIC, 6, struct msm_camera_stats_event_ctrl *)
-
-#define MSM_CAM_IOCTL_GETFRAME \
- _IOR(MSM_CAM_IOCTL_MAGIC, 7, struct msm_camera_get_frame *)
-
-#define MSM_CAM_IOCTL_ENABLE_VFE \
- _IOW(MSM_CAM_IOCTL_MAGIC, 8, struct camera_enable_cmd *)
-
-#define MSM_CAM_IOCTL_CTRL_CMD_DONE \
- _IOW(MSM_CAM_IOCTL_MAGIC, 9, struct camera_cmd *)
-
-#define MSM_CAM_IOCTL_CONFIG_CMD \
- _IOW(MSM_CAM_IOCTL_MAGIC, 10, struct camera_cmd *)
-
-#define MSM_CAM_IOCTL_DISABLE_VFE \
- _IOW(MSM_CAM_IOCTL_MAGIC, 11, struct camera_enable_cmd *)
-
-#define MSM_CAM_IOCTL_PAD_REG_RESET2 \
- _IOW(MSM_CAM_IOCTL_MAGIC, 12, struct camera_enable_cmd *)
-
-#define MSM_CAM_IOCTL_VFE_APPS_RESET \
- _IOW(MSM_CAM_IOCTL_MAGIC, 13, struct camera_enable_cmd *)
-
-#define MSM_CAM_IOCTL_RELEASE_FRAME_BUFFER \
- _IOW(MSM_CAM_IOCTL_MAGIC, 14, struct camera_enable_cmd *)
-
-#define MSM_CAM_IOCTL_RELEASE_STATS_BUFFER \
- _IOW(MSM_CAM_IOCTL_MAGIC, 15, struct msm_stats_buf *)
-
-#define MSM_CAM_IOCTL_AXI_CONFIG \
- _IOW(MSM_CAM_IOCTL_MAGIC, 16, struct msm_camera_vfe_cfg_cmd *)
-
-#define MSM_CAM_IOCTL_GET_PICTURE \
- _IOW(MSM_CAM_IOCTL_MAGIC, 17, struct msm_frame *)
-
-#define MSM_CAM_IOCTL_SET_CROP \
- _IOW(MSM_CAM_IOCTL_MAGIC, 18, struct crop_info *)
-
-#define MSM_CAM_IOCTL_PICT_PP \
- _IOW(MSM_CAM_IOCTL_MAGIC, 19, uint8_t *)
-
-#define MSM_CAM_IOCTL_PICT_PP_DONE \
- _IOW(MSM_CAM_IOCTL_MAGIC, 20, struct msm_snapshot_pp_status *)
-
-#define MSM_CAM_IOCTL_SENSOR_IO_CFG \
- _IOW(MSM_CAM_IOCTL_MAGIC, 21, struct sensor_cfg_data *)
-
-#define MSM_CAM_IOCTL_FLASH_LED_CFG \
- _IOW(MSM_CAM_IOCTL_MAGIC, 22, unsigned int *)
-
-#define MSM_CAM_IOCTL_UNBLOCK_POLL_FRAME \
- _IO(MSM_CAM_IOCTL_MAGIC, 23)
-
-#define MSM_CAM_IOCTL_CTRL_COMMAND_2 \
- _IOW(MSM_CAM_IOCTL_MAGIC, 24, struct msm_ctrl_cmd *)
-
-#define MSM_CAM_IOCTL_AF_CTRL \
- _IOR(MSM_CAM_IOCTL_MAGIC, 25, struct msm_ctrl_cmt_t *)
-
-#define MSM_CAM_IOCTL_AF_CTRL_DONE \
- _IOW(MSM_CAM_IOCTL_MAGIC, 26, struct msm_ctrl_cmt_t *)
-
-#define MSM_CAM_IOCTL_CONFIG_VPE \
- _IOW(MSM_CAM_IOCTL_MAGIC, 27, struct msm_camera_vpe_cfg_cmd *)
-
-#define MSM_CAM_IOCTL_AXI_VPE_CONFIG \
- _IOW(MSM_CAM_IOCTL_MAGIC, 28, struct msm_camera_vpe_cfg_cmd *)
-
-#define MSM_CAM_IOCTL_STROBE_FLASH_CFG \
- _IOW(MSM_CAM_IOCTL_MAGIC, 29, uint32_t *)
-
-#define MSM_CAM_IOCTL_STROBE_FLASH_CHARGE \
- _IOW(MSM_CAM_IOCTL_MAGIC, 30, uint32_t *)
-
-#define MSM_CAM_IOCTL_STROBE_FLASH_RELEASE \
- _IO(MSM_CAM_IOCTL_MAGIC, 31)
-
-#define MSM_CAM_IOCTL_FLASH_CTRL \
- _IOW(MSM_CAM_IOCTL_MAGIC, 32, struct flash_ctrl_data *)
-
-#define MSM_CAM_IOCTL_ERROR_CONFIG \
- _IOW(MSM_CAM_IOCTL_MAGIC, 33, uint32_t *)
-
-#define MSM_CAM_IOCTL_ABORT_CAPTURE \
- _IO(MSM_CAM_IOCTL_MAGIC, 34)
-
-#define MSM_CAM_IOCTL_SET_FD_ROI \
- _IOW(MSM_CAM_IOCTL_MAGIC, 35, struct fd_roi_info *)
-
-#define MSM_CAM_IOCTL_GET_CAMERA_INFO \
- _IOR(MSM_CAM_IOCTL_MAGIC, 36, struct msm_camera_info *)
-
-#define MSM_CAM_IOCTL_UNBLOCK_POLL_PIC_FRAME \
- _IO(MSM_CAM_IOCTL_MAGIC, 37)
-
-#define MSM_CAM_IOCTL_RELEASE_PIC_BUFFER \
- _IOW(MSM_CAM_IOCTL_MAGIC, 38, struct camera_enable_cmd *)
-
-#define MSM_CAM_IOCTL_PUT_ST_FRAME \
- _IOW(MSM_CAM_IOCTL_MAGIC, 39, struct msm_camera_st_frame *)
-
-#define MSM_CAM_IOCTL_V4L2_EVT_NOTIFY \
- _IOW(MSM_CAM_IOCTL_MAGIC, 40, struct v4l2_event_and_payload)
-
-#define MSM_CAM_IOCTL_SET_MEM_MAP_INFO \
- _IOR(MSM_CAM_IOCTL_MAGIC, 41, struct msm_mem_map_info *)
-
-#define MSM_CAM_IOCTL_ACTUATOR_IO_CFG \
- _IOW(MSM_CAM_IOCTL_MAGIC, 42, struct msm_actuator_cfg_data *)
-
-#define MSM_CAM_IOCTL_MCTL_POST_PROC \
- _IOW(MSM_CAM_IOCTL_MAGIC, 43, struct msm_mctl_post_proc_cmd *)
-
-#define MSM_CAM_IOCTL_RESERVE_FREE_FRAME \
- _IOW(MSM_CAM_IOCTL_MAGIC, 44, struct msm_cam_evt_divert_frame *)
-
-#define MSM_CAM_IOCTL_RELEASE_FREE_FRAME \
- _IOR(MSM_CAM_IOCTL_MAGIC, 45, struct msm_cam_evt_divert_frame *)
-
-#define MSM_CAM_IOCTL_PICT_PP_DIVERT_DONE \
- _IOR(MSM_CAM_IOCTL_MAGIC, 46, struct msm_pp_frame *)
-
-#define MSM_CAM_IOCTL_SENSOR_V4l2_S_CTRL \
- _IOR(MSM_CAM_IOCTL_MAGIC, 47, struct v4l2_control)
-
-#define MSM_CAM_IOCTL_SENSOR_V4l2_QUERY_CTRL \
- _IOR(MSM_CAM_IOCTL_MAGIC, 48, struct v4l2_queryctrl)
-
-#define MSM_CAM_IOCTL_GET_KERNEL_SYSTEM_TIME \
- _IOW(MSM_CAM_IOCTL_MAGIC, 49, struct timeval *)
-
-#define MSM_CAM_IOCTL_SET_VFE_OUTPUT_TYPE \
- _IOW(MSM_CAM_IOCTL_MAGIC, 50, uint32_t *)
-
-#define MSM_CAM_IOCTL_MCTL_DIVERT_DONE \
- _IOR(MSM_CAM_IOCTL_MAGIC, 51, struct msm_cam_evt_divert_frame *)
-
-#define MSM_CAM_IOCTL_GET_ACTUATOR_INFO \
- _IOW(MSM_CAM_IOCTL_MAGIC, 52, struct msm_actuator_cfg_data *)
-
-#define MSM_CAM_IOCTL_EEPROM_IO_CFG \
- _IOW(MSM_CAM_IOCTL_MAGIC, 53, struct msm_eeprom_cfg_data *)
-
-#define MSM_CAM_IOCTL_ISPIF_IO_CFG \
- _IOR(MSM_CAM_IOCTL_MAGIC, 54, struct ispif_cfg_data *)
-
-#define MSM_CAM_IOCTL_STATS_REQBUF \
- _IOR(MSM_CAM_IOCTL_MAGIC, 55, struct msm_stats_reqbuf *)
-
-#define MSM_CAM_IOCTL_STATS_ENQUEUEBUF \
- _IOR(MSM_CAM_IOCTL_MAGIC, 56, struct msm_stats_buf_info *)
-
-#define MSM_CAM_IOCTL_STATS_FLUSH_BUFQ \
- _IOR(MSM_CAM_IOCTL_MAGIC, 57, struct msm_stats_flush_bufq *)
-
-#define MSM_CAM_IOCTL_SET_MCTL_SDEV \
- _IOW(MSM_CAM_IOCTL_MAGIC, 58, struct msm_mctl_set_sdev_data *)
-
-#define MSM_CAM_IOCTL_UNSET_MCTL_SDEV \
- _IOW(MSM_CAM_IOCTL_MAGIC, 59, struct msm_mctl_set_sdev_data *)
-
-#define MSM_CAM_IOCTL_GET_INST_HANDLE \
- _IOR(MSM_CAM_IOCTL_MAGIC, 60, uint32_t *)
-
-#define MSM_CAM_IOCTL_STATS_UNREG_BUF \
- _IOR(MSM_CAM_IOCTL_MAGIC, 61, struct msm_stats_flush_bufq *)
-
-#define MSM_CAM_IOCTL_CSIC_IO_CFG \
- _IOWR(MSM_CAM_IOCTL_MAGIC, 62, struct csic_cfg_data *)
-
-#define MSM_CAM_IOCTL_CSID_IO_CFG \
- _IOWR(MSM_CAM_IOCTL_MAGIC, 63, struct csid_cfg_data *)
-
-#define MSM_CAM_IOCTL_CSIPHY_IO_CFG \
- _IOR(MSM_CAM_IOCTL_MAGIC, 64, struct csiphy_cfg_data *)
-
-#define MSM_CAM_IOCTL_OEM \
- _IOW(MSM_CAM_IOCTL_MAGIC, 65, struct sensor_cfg_data *)
-
-#define MSM_CAM_IOCTL_AXI_INIT \
- _IOWR(MSM_CAM_IOCTL_MAGIC, 66, uint8_t *)
-
-#define MSM_CAM_IOCTL_AXI_RELEASE \
- _IO(MSM_CAM_IOCTL_MAGIC, 67)
-
-struct v4l2_event_and_payload {
- struct v4l2_event evt;
- uint32_t payload_length;
- uint32_t transaction_id;
- void *payload;
-};
-
-struct msm_stats_reqbuf {
- int num_buf; /* how many buffers requested */
- int stats_type; /* stats type */
-};
-
-struct msm_stats_flush_bufq {
- int stats_type; /* enum msm_stats_enum_type */
-};
-
-struct msm_mctl_pp_cmd {
- int32_t id;
- uint16_t length;
- void *value;
-};
-
-struct msm_mctl_post_proc_cmd {
- int32_t type;
- struct msm_mctl_pp_cmd cmd;
-};
-
-#define MSM_CAMERA_LED_OFF 0
-#define MSM_CAMERA_LED_LOW 1
-#define MSM_CAMERA_LED_HIGH 2
-#define MSM_CAMERA_LED_INIT 3
-#define MSM_CAMERA_LED_RELEASE 4
-
-#define MSM_CAMERA_STROBE_FLASH_NONE 0
-#define MSM_CAMERA_STROBE_FLASH_XENON 1
-
-#define MSM_MAX_CAMERA_SENSORS 5
-#define MAX_SENSOR_NAME 32
-#define MAX_CAM_NAME_SIZE 32
-#define MAX_ACT_MOD_NAME_SIZE 32
-#define MAX_ACT_NAME_SIZE 32
-#define NUM_ACTUATOR_DIR 2
-#define MAX_ACTUATOR_SCENARIO 8
-#define MAX_ACTUATOR_REGION 5
-#define MAX_ACTUATOR_INIT_SET 12
-#define MAX_ACTUATOR_TYPE_SIZE 32
-#define MAX_ACTUATOR_REG_TBL_SIZE 8
-
-
-#define MSM_MAX_CAMERA_CONFIGS 2
-
-#define PP_SNAP 0x01
-#define PP_RAW_SNAP ((0x01)<<1)
-#define PP_PREV ((0x01)<<2)
-#define PP_THUMB ((0x01)<<3)
-#define PP_MASK (PP_SNAP|PP_RAW_SNAP|PP_PREV|PP_THUMB)
-
-#define MSM_CAM_CTRL_CMD_DONE 0
-#define MSM_CAM_SENSOR_VFE_CMD 1
-
-/* Should be same as VIDEO_MAX_PLANES in videodev2.h */
-#define MAX_PLANES 8
-
-/*****************************************************
- * structure
- *****************************************************/
-
-/* define five type of structures for userspace <==> kernel
- * space communication:
- * command 1 - 2 are from userspace ==> kernel
- * command 3 - 4 are from kernel ==> userspace
- *
- * 1. control command: control command(from control thread),
- * control status (from config thread);
- */
-struct msm_ctrl_cmd {
- uint16_t type;
- uint16_t length;
- void *value;
- uint16_t status;
- uint32_t timeout_ms;
- int resp_fd; /* FIXME: to be used by the kernel, pass-through for now */
- int vnode_id; /* video dev id. Can we overload resp_fd? */
- int queue_idx;
- uint32_t evt_id;
- uint32_t stream_type; /* used to pass value to qcamera server */
- int config_ident; /*used as identifier for config node*/
-};
-
-struct msm_cam_evt_msg {
- unsigned short type; /* 1 == event (RPC), 0 == message (adsp) */
- unsigned short msg_id;
- unsigned int len; /* size in, number of bytes out */
- uint32_t frame_id;
- void *data;
- struct timespec timestamp;
-};
-
-struct msm_pp_frame_sp {
- /* phy addr of the buffer */
- unsigned long phy_addr;
- uint32_t y_off;
- uint32_t cbcr_off;
- /* buffer length */
- uint32_t length;
- int32_t fd;
- uint32_t addr_offset;
- /* mapped addr */
- unsigned long vaddr;
-};
-
-struct msm_pp_frame_mp {
- /* phy addr of the plane */
- unsigned long phy_addr;
- /* offset of plane data */
- uint32_t data_offset;
- /* plane length */
- uint32_t length;
- int32_t fd;
- uint32_t addr_offset;
- /* mapped addr */
- unsigned long vaddr;
-};
-
-struct msm_pp_frame {
- uint32_t handle; /* stores vb cookie */
- uint32_t frame_id;
- unsigned short buf_idx;
- int path;
- unsigned short image_type;
- unsigned short num_planes; /* 1 for sp */
- struct timeval timestamp;
- union {
- struct msm_pp_frame_sp sp;
- struct msm_pp_frame_mp mp[MAX_PLANES];
- };
- int node_type;
- uint32_t inst_handle;
-};
-
-struct msm_pp_crop {
- uint32_t src_x;
- uint32_t src_y;
- uint32_t src_w;
- uint32_t src_h;
- uint32_t dst_x;
- uint32_t dst_y;
- uint32_t dst_w;
- uint32_t dst_h;
- uint8_t update_flag;
-};
-
-struct msm_mctl_pp_frame_cmd {
- uint32_t cookie;
- uint8_t vpe_output_action;
- struct msm_pp_frame src_frame;
- struct msm_pp_frame dest_frame;
- struct msm_pp_crop crop;
- int path;
-};
-
-struct msm_cam_evt_divert_frame {
- unsigned short image_mode;
- unsigned short op_mode;
- unsigned short inst_idx;
- unsigned short node_idx;
- struct msm_pp_frame frame;
- int do_pp;
-};
-
-struct msm_mctl_pp_cmd_ack_event {
- uint32_t cmd; /* VPE_CMD_ZOOM? */
- int status; /* 0 done, < 0 err */
- uint32_t cookie; /* daemon's cookie */
-};
-
-struct msm_mctl_pp_event_info {
- int32_t event;
- union {
- struct msm_mctl_pp_cmd_ack_event ack;
- };
-};
-
-struct msm_isp_event_ctrl {
- unsigned short resptype;
- union {
- struct msm_cam_evt_msg isp_msg;
- struct msm_ctrl_cmd ctrl;
- struct msm_cam_evt_divert_frame div_frame;
- struct msm_mctl_pp_event_info pp_event_info;
- } isp_data;
-};
-
-#define MSM_CAM_RESP_CTRL 0
-#define MSM_CAM_RESP_STAT_EVT_MSG 1
-#define MSM_CAM_RESP_STEREO_OP_1 2
-#define MSM_CAM_RESP_STEREO_OP_2 3
-#define MSM_CAM_RESP_V4L2 4
-#define MSM_CAM_RESP_DIV_FRAME_EVT_MSG 5
-#define MSM_CAM_RESP_DONE_EVENT 6
-#define MSM_CAM_RESP_MCTL_PP_EVENT 7
-#define MSM_CAM_RESP_MAX 8
-
-#define MSM_CAM_APP_NOTIFY_EVENT 0
-#define MSM_CAM_APP_NOTIFY_ERROR_EVENT 1
-
-/* this one is used to send ctrl/status up to config thread */
-
-struct msm_stats_event_ctrl {
- /* 0 - ctrl_cmd from control thread,
- * 1 - stats/event kernel,
- * 2 - V4L control or read request
- */
- int resptype;
- int timeout_ms;
- struct msm_ctrl_cmd ctrl_cmd;
- /* struct vfe_event_t stats_event; */
- struct msm_cam_evt_msg stats_event;
-};
-
-/* 2. config command: config command(from config thread); */
-struct msm_camera_cfg_cmd {
- /* what to config:
- * 1 - sensor config, 2 - vfe config
- */
- uint16_t cfg_type;
-
- /* sensor config type */
- uint16_t cmd_type;
- uint16_t queue;
- uint16_t length;
- void *value;
-};
-
-#define CMD_GENERAL 0
-#define CMD_AXI_CFG_OUT1 1
-#define CMD_AXI_CFG_SNAP_O1_AND_O2 2
-#define CMD_AXI_CFG_OUT2 3
-#define CMD_PICT_T_AXI_CFG 4
-#define CMD_PICT_M_AXI_CFG 5
-#define CMD_RAW_PICT_AXI_CFG 6
-
-#define CMD_FRAME_BUF_RELEASE 7
-#define CMD_PREV_BUF_CFG 8
-#define CMD_SNAP_BUF_RELEASE 9
-#define CMD_SNAP_BUF_CFG 10
-#define CMD_STATS_DISABLE 11
-#define CMD_STATS_AEC_AWB_ENABLE 12
-#define CMD_STATS_AF_ENABLE 13
-#define CMD_STATS_AEC_ENABLE 14
-#define CMD_STATS_AWB_ENABLE 15
-#define CMD_STATS_ENABLE 16
-
-#define CMD_STATS_AXI_CFG 17
-#define CMD_STATS_AEC_AXI_CFG 18
-#define CMD_STATS_AF_AXI_CFG 19
-#define CMD_STATS_AWB_AXI_CFG 20
-#define CMD_STATS_RS_AXI_CFG 21
-#define CMD_STATS_CS_AXI_CFG 22
-#define CMD_STATS_IHIST_AXI_CFG 23
-#define CMD_STATS_SKIN_AXI_CFG 24
-
-#define CMD_STATS_BUF_RELEASE 25
-#define CMD_STATS_AEC_BUF_RELEASE 26
-#define CMD_STATS_AF_BUF_RELEASE 27
-#define CMD_STATS_AWB_BUF_RELEASE 28
-#define CMD_STATS_RS_BUF_RELEASE 29
-#define CMD_STATS_CS_BUF_RELEASE 30
-#define CMD_STATS_IHIST_BUF_RELEASE 31
-#define CMD_STATS_SKIN_BUF_RELEASE 32
-
-#define UPDATE_STATS_INVALID 33
-#define CMD_AXI_CFG_SNAP_GEMINI 34
-#define CMD_AXI_CFG_SNAP 35
-#define CMD_AXI_CFG_PREVIEW 36
-#define CMD_AXI_CFG_VIDEO 37
-
-#define CMD_STATS_IHIST_ENABLE 38
-#define CMD_STATS_RS_ENABLE 39
-#define CMD_STATS_CS_ENABLE 40
-#define CMD_VPE 41
-#define CMD_AXI_CFG_VPE 42
-#define CMD_AXI_CFG_ZSL 43
-#define CMD_AXI_CFG_SNAP_VPE 44
-#define CMD_AXI_CFG_SNAP_THUMB_VPE 45
-
-#define CMD_CONFIG_PING_ADDR 46
-#define CMD_CONFIG_PONG_ADDR 47
-#define CMD_CONFIG_FREE_BUF_ADDR 48
-#define CMD_AXI_CFG_ZSL_ALL_CHNLS 49
-#define CMD_AXI_CFG_VIDEO_ALL_CHNLS 50
-#define CMD_VFE_BUFFER_RELEASE 51
-#define CMD_VFE_PROCESS_IRQ 52
-#define CMD_STATS_BG_ENABLE 53
-#define CMD_STATS_BF_ENABLE 54
-#define CMD_STATS_BHIST_ENABLE 55
-#define CMD_STATS_BG_BUF_RELEASE 56
-#define CMD_STATS_BF_BUF_RELEASE 57
-#define CMD_STATS_BHIST_BUF_RELEASE 58
-#define CMD_VFE_PIX_SOF_COUNT_UPDATE 59
-#define CMD_VFE_COUNT_PIX_SOF_ENABLE 60
-#define CMD_STATS_BE_ENABLE 61
-#define CMD_STATS_BE_BUF_RELEASE 62
-
-#define CMD_AXI_CFG_PRIM BIT(8)
-#define CMD_AXI_CFG_PRIM_ALL_CHNLS BIT(9)
-#define CMD_AXI_CFG_SEC BIT(10)
-#define CMD_AXI_CFG_SEC_ALL_CHNLS BIT(11)
-#define CMD_AXI_CFG_TERT1 BIT(12)
-#define CMD_AXI_CFG_TERT2 BIT(13)
-
-#define CMD_AXI_START 0xE1
-#define CMD_AXI_STOP 0xE2
-#define CMD_AXI_RESET 0xE3
-#define CMD_AXI_ABORT 0xE4
-
-
-
-#define AXI_CMD_PREVIEW BIT(0)
-#define AXI_CMD_CAPTURE BIT(1)
-#define AXI_CMD_RECORD BIT(2)
-#define AXI_CMD_ZSL BIT(3)
-#define AXI_CMD_RAW_CAPTURE BIT(4)
-#define AXI_CMD_LIVESHOT BIT(5)
-
-/* vfe config command: config command(from config thread)*/
-struct msm_vfe_cfg_cmd {
- int cmd_type;
- uint16_t length;
- void *value;
-};
-
-struct msm_vpe_cfg_cmd {
- int cmd_type;
- uint16_t length;
- void *value;
-};
-
-#define MAX_CAMERA_ENABLE_NAME_LEN 32
-struct camera_enable_cmd {
- char name[MAX_CAMERA_ENABLE_NAME_LEN];
-};
-
-#define MSM_PMEM_OUTPUT1 0
-#define MSM_PMEM_OUTPUT2 1
-#define MSM_PMEM_OUTPUT1_OUTPUT2 2
-#define MSM_PMEM_THUMBNAIL 3
-#define MSM_PMEM_MAINIMG 4
-#define MSM_PMEM_RAW_MAINIMG 5
-#define MSM_PMEM_AEC_AWB 6
-#define MSM_PMEM_AF 7
-#define MSM_PMEM_AEC 8
-#define MSM_PMEM_AWB 9
-#define MSM_PMEM_RS 10
-#define MSM_PMEM_CS 11
-#define MSM_PMEM_IHIST 12
-#define MSM_PMEM_SKIN 13
-#define MSM_PMEM_VIDEO 14
-#define MSM_PMEM_PREVIEW 15
-#define MSM_PMEM_VIDEO_VPE 16
-#define MSM_PMEM_C2D 17
-#define MSM_PMEM_MAINIMG_VPE 18
-#define MSM_PMEM_THUMBNAIL_VPE 19
-#define MSM_PMEM_BAYER_GRID 20
-#define MSM_PMEM_BAYER_FOCUS 21
-#define MSM_PMEM_BAYER_HIST 22
-#define MSM_PMEM_BAYER_EXPOSURE 23
-#define MSM_PMEM_MAX 24
-
-#define STAT_AEAW 0
-#define STAT_AEC 1
-#define STAT_AF 2
-#define STAT_AWB 3
-#define STAT_RS 4
-#define STAT_CS 5
-#define STAT_IHIST 6
-#define STAT_SKIN 7
-#define STAT_BG 8
-#define STAT_BF 9
-#define STAT_BE 10
-#define STAT_BHIST 11
-#define STAT_MAX 12
-
-#define FRAME_PREVIEW_OUTPUT1 0
-#define FRAME_PREVIEW_OUTPUT2 1
-#define FRAME_SNAPSHOT 2
-#define FRAME_THUMBNAIL 3
-#define FRAME_RAW_SNAPSHOT 4
-#define FRAME_MAX 5
-
-enum msm_stats_enum_type {
- MSM_STATS_TYPE_AEC, /* legacy based AEC */
- MSM_STATS_TYPE_AF, /* legacy based AF */
- MSM_STATS_TYPE_AWB, /* legacy based AWB */
- MSM_STATS_TYPE_RS, /* legacy based RS */
- MSM_STATS_TYPE_CS, /* legacy based CS */
- MSM_STATS_TYPE_IHIST, /* legacy based HIST */
- MSM_STATS_TYPE_SKIN, /* legacy based SKIN */
- MSM_STATS_TYPE_BG, /* Bayer Grids */
- MSM_STATS_TYPE_BF, /* Bayer Focus */
- MSM_STATS_TYPE_BE, /* Bayer Exposure*/
- MSM_STATS_TYPE_BHIST, /* Bayer Hist */
- MSM_STATS_TYPE_AE_AW, /* legacy stats for vfe 2.x*/
- MSM_STATS_TYPE_COMP, /* Composite stats */
- MSM_STATS_TYPE_MAX /* MAX */
-};
-
-struct msm_stats_buf_info {
- int type; /* msm_stats_enum_type */
- int fd;
- void *vaddr;
- uint32_t offset;
- uint32_t len;
- uint32_t y_off;
- uint32_t cbcr_off;
- uint32_t planar0_off;
- uint32_t planar1_off;
- uint32_t planar2_off;
- uint8_t active;
- int buf_idx;
-};
-
-struct msm_pmem_info {
- int type;
- int fd;
- void *vaddr;
- uint32_t offset;
- uint32_t len;
- uint32_t y_off;
- uint32_t cbcr_off;
- uint32_t planar0_off;
- uint32_t planar1_off;
- uint32_t planar2_off;
- uint8_t active;
-};
-
-struct outputCfg {
- uint32_t height;
- uint32_t width;
-
- uint32_t window_height_firstline;
- uint32_t window_height_lastline;
-};
-
-#define VIDEO_NODE 0
-#define MCTL_NODE 1
-
-#define OUTPUT_1 0
-#define OUTPUT_2 1
-#define OUTPUT_1_AND_2 2 /* snapshot only */
-#define OUTPUT_1_AND_3 3 /* video */
-#define CAMIF_TO_AXI_VIA_OUTPUT_2 4
-#define OUTPUT_1_AND_CAMIF_TO_AXI_VIA_OUTPUT_2 5
-#define OUTPUT_2_AND_CAMIF_TO_AXI_VIA_OUTPUT_1 6
-#define OUTPUT_1_2_AND_3 7
-#define OUTPUT_ALL_CHNLS 8
-#define OUTPUT_VIDEO_ALL_CHNLS 9
-#define OUTPUT_ZSL_ALL_CHNLS 10
-#define LAST_AXI_OUTPUT_MODE_ENUM OUTPUT_ZSL_ALL_CHNLS
-
-#define OUTPUT_PRIM BIT(8)
-#define OUTPUT_PRIM_ALL_CHNLS BIT(9)
-#define OUTPUT_SEC BIT(10)
-#define OUTPUT_SEC_ALL_CHNLS BIT(11)
-#define OUTPUT_TERT1 BIT(12)
-#define OUTPUT_TERT2 BIT(13)
-
-
-
-#define MSM_FRAME_PREV_1 0
-#define MSM_FRAME_PREV_2 1
-#define MSM_FRAME_ENC 2
-
-#define OUTPUT_TYPE_P BIT(0)
-#define OUTPUT_TYPE_T BIT(1)
-#define OUTPUT_TYPE_S BIT(2)
-#define OUTPUT_TYPE_V BIT(3)
-#define OUTPUT_TYPE_L BIT(4)
-#define OUTPUT_TYPE_ST_L BIT(5)
-#define OUTPUT_TYPE_ST_R BIT(6)
-#define OUTPUT_TYPE_ST_D BIT(7)
-#define OUTPUT_TYPE_R BIT(8)
-#define OUTPUT_TYPE_R1 BIT(9)
-#define OUTPUT_TYPE_SAEC BIT(10)
-#define OUTPUT_TYPE_SAFC BIT(11)
-#define OUTPUT_TYPE_SAWB BIT(12)
-#define OUTPUT_TYPE_IHST BIT(13)
-#define OUTPUT_TYPE_CSTA BIT(14)
-
-struct fd_roi_info {
- void *info;
- int info_len;
-};
-
-struct msm_mem_map_info {
- uint32_t cookie;
- uint32_t length;
- uint32_t mem_type;
-};
-
-#define MSM_MEM_MMAP 0
-#define MSM_MEM_USERPTR 1
-#define MSM_PLANE_MAX 8
-#define MSM_PLANE_Y 0
-#define MSM_PLANE_UV 1
-
-struct msm_frame {
- struct timespec ts;
- int path;
- int type;
- unsigned long buffer;
- uint32_t phy_offset;
- uint32_t y_off;
- uint32_t cbcr_off;
- uint32_t planar0_off;
- uint32_t planar1_off;
- uint32_t planar2_off;
- int fd;
-
- void *cropinfo;
- int croplen;
- uint32_t error_code;
- struct fd_roi_info roi_info;
- uint32_t frame_id;
- int stcam_quality_ind;
- uint32_t stcam_conv_value;
-
- struct ion_allocation_data ion_alloc;
- struct ion_fd_data fd_data;
- int ion_dev_fd;
-};
-
-enum msm_st_frame_packing {
- SIDE_BY_SIDE_HALF,
- SIDE_BY_SIDE_FULL,
- TOP_DOWN_HALF,
- TOP_DOWN_FULL,
-};
-
-struct msm_st_crop {
- uint32_t in_w;
- uint32_t in_h;
- uint32_t out_w;
- uint32_t out_h;
-};
-
-struct msm_st_half {
- uint32_t buf_p0_off;
- uint32_t buf_p1_off;
- uint32_t buf_p0_stride;
- uint32_t buf_p1_stride;
- uint32_t pix_x_off;
- uint32_t pix_y_off;
- struct msm_st_crop stCropInfo;
-};
-
-struct msm_st_frame {
- struct msm_frame buf_info;
- int type;
- enum msm_st_frame_packing packing;
- struct msm_st_half L;
- struct msm_st_half R;
- int frame_id;
-};
-
-#define MSM_CAMERA_ERR_MASK (0xFFFFFFFF & 1)
-
-struct stats_buff {
- unsigned long buff;
- int fd;
-};
-
-struct msm_stats_buf {
- uint8_t awb_ymin;
- struct stats_buff aec;
- struct stats_buff awb;
- struct stats_buff af;
- struct stats_buff be;
- struct stats_buff ihist;
- struct stats_buff rs;
- struct stats_buff cs;
- struct stats_buff skin;
- int type;
- uint32_t status_bits;
- unsigned long buffer;
- int fd;
- int length;
- struct ion_handle *handle;
- uint32_t frame_id;
- int buf_idx;
-};
-#define MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT 0
-/* video capture mode in VIDIOC_S_PARM */
-#define MSM_V4L2_EXT_CAPTURE_MODE_PREVIEW \
- (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT+1)
-/* extendedmode for video recording in VIDIOC_S_PARM */
-#define MSM_V4L2_EXT_CAPTURE_MODE_VIDEO \
- (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT+2)
-/* extendedmode for the full size main image in VIDIOC_S_PARM */
-#define MSM_V4L2_EXT_CAPTURE_MODE_MAIN (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT+3)
-/* extendedmode for the thumb nail image in VIDIOC_S_PARM */
-#define MSM_V4L2_EXT_CAPTURE_MODE_THUMBNAIL \
- (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT+4)
-/* ISP_PIX_OUTPUT1: no pp, directly send output1 buf to user */
-#define MSM_V4L2_EXT_CAPTURE_MODE_ISP_PIX_OUTPUT1 \
- (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT+5)
-/* ISP_PIX_OUTPUT2: no pp, directly send output2 buf to user */
-#define MSM_V4L2_EXT_CAPTURE_MODE_ISP_PIX_OUTPUT2 \
- (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT+6)
-/* raw image type */
-#define MSM_V4L2_EXT_CAPTURE_MODE_RAW \
- (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT+7)
-/* RDI dump */
-#define MSM_V4L2_EXT_CAPTURE_MODE_RDI \
- (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT+8)
-/* RDI dump 1 */
-#define MSM_V4L2_EXT_CAPTURE_MODE_RDI1 \
- (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT+9)
-/* RDI dump 2 */
-#define MSM_V4L2_EXT_CAPTURE_MODE_RDI2 \
- (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT+10)
-#define MSM_V4L2_EXT_CAPTURE_MODE_AEC \
- (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT+11)
-#define MSM_V4L2_EXT_CAPTURE_MODE_AWB \
- (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT+12)
-#define MSM_V4L2_EXT_CAPTURE_MODE_AF \
- (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT+13)
-#define MSM_V4L2_EXT_CAPTURE_MODE_IHIST \
- (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT+14)
-#define MSM_V4L2_EXT_CAPTURE_MODE_CS \
- (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT+15)
-#define MSM_V4L2_EXT_CAPTURE_MODE_RS \
- (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT+16)
-#define MSM_V4L2_EXT_CAPTURE_MODE_CSTA \
- (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT+17)
-#define MSM_V4L2_EXT_CAPTURE_MODE_V2X_LIVESHOT \
- (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT+18)
-#define MSM_V4L2_EXT_CAPTURE_MODE_MAX (MSM_V4L2_EXT_CAPTURE_MODE_DEFAULT+19)
-
-
-#define MSM_V4L2_PID_MOTION_ISO V4L2_CID_PRIVATE_BASE
-#define MSM_V4L2_PID_EFFECT (V4L2_CID_PRIVATE_BASE+1)
-#define MSM_V4L2_PID_HJR (V4L2_CID_PRIVATE_BASE+2)
-#define MSM_V4L2_PID_LED_MODE (V4L2_CID_PRIVATE_BASE+3)
-#define MSM_V4L2_PID_PREP_SNAPSHOT (V4L2_CID_PRIVATE_BASE+4)
-#define MSM_V4L2_PID_EXP_METERING (V4L2_CID_PRIVATE_BASE+5)
-#define MSM_V4L2_PID_ISO (V4L2_CID_PRIVATE_BASE+6)
-#define MSM_V4L2_PID_CAM_MODE (V4L2_CID_PRIVATE_BASE+7)
-#define MSM_V4L2_PID_LUMA_ADAPTATION (V4L2_CID_PRIVATE_BASE+8)
-#define MSM_V4L2_PID_BEST_SHOT (V4L2_CID_PRIVATE_BASE+9)
-#define MSM_V4L2_PID_FOCUS_MODE (V4L2_CID_PRIVATE_BASE+10)
-#define MSM_V4L2_PID_BL_DETECTION (V4L2_CID_PRIVATE_BASE+11)
-#define MSM_V4L2_PID_SNOW_DETECTION (V4L2_CID_PRIVATE_BASE+12)
-#define MSM_V4L2_PID_CTRL_CMD (V4L2_CID_PRIVATE_BASE+13)
-#define MSM_V4L2_PID_EVT_SUB_INFO (V4L2_CID_PRIVATE_BASE+14)
-#define MSM_V4L2_PID_STROBE_FLASH (V4L2_CID_PRIVATE_BASE+15)
-#define MSM_V4L2_PID_INST_HANDLE (V4L2_CID_PRIVATE_BASE+16)
-#define MSM_V4L2_PID_MMAP_INST (V4L2_CID_PRIVATE_BASE+17)
-#define MSM_V4L2_PID_PP_PLANE_INFO (V4L2_CID_PRIVATE_BASE+18)
-#define MSM_V4L2_PID_MAX MSM_V4L2_PID_PP_PLANE_INFO
-
-/* camera operation mode for video recording - two frame output queues */
-#define MSM_V4L2_CAM_OP_DEFAULT 0
-/* camera operation mode for video recording - two frame output queues */
-#define MSM_V4L2_CAM_OP_PREVIEW (MSM_V4L2_CAM_OP_DEFAULT+1)
-/* camera operation mode for video recording - two frame output queues */
-#define MSM_V4L2_CAM_OP_VIDEO (MSM_V4L2_CAM_OP_DEFAULT+2)
-/* camera operation mode for standard shapshot - two frame output queues */
-#define MSM_V4L2_CAM_OP_CAPTURE (MSM_V4L2_CAM_OP_DEFAULT+3)
-/* camera operation mode for zsl shapshot - three output queues */
-#define MSM_V4L2_CAM_OP_ZSL (MSM_V4L2_CAM_OP_DEFAULT+4)
-/* camera operation mode for raw snapshot - one frame output queue */
-#define MSM_V4L2_CAM_OP_RAW (MSM_V4L2_CAM_OP_DEFAULT+5)
-/* camera operation mode for jpeg snapshot - one frame output queue */
-#define MSM_V4L2_CAM_OP_JPEG_CAPTURE (MSM_V4L2_CAM_OP_DEFAULT+6)
-
-
-#define MSM_V4L2_VID_CAP_TYPE 0
-#define MSM_V4L2_STREAM_ON 1
-#define MSM_V4L2_STREAM_OFF 2
-#define MSM_V4L2_SNAPSHOT 3
-#define MSM_V4L2_QUERY_CTRL 4
-#define MSM_V4L2_GET_CTRL 5
-#define MSM_V4L2_SET_CTRL 6
-#define MSM_V4L2_QUERY 7
-#define MSM_V4L2_GET_CROP 8
-#define MSM_V4L2_SET_CROP 9
-#define MSM_V4L2_OPEN 10
-#define MSM_V4L2_CLOSE 11
-#define MSM_V4L2_SET_CTRL_CMD 12
-#define MSM_V4L2_EVT_SUB_MASK 13
-#define MSM_V4L2_PRIVATE_CMD 14
-#define MSM_V4L2_MAX 15
-#define V4L2_CAMERA_EXIT 43
-
-struct crop_info {
- void *info;
- int len;
-};
-
-struct msm_postproc {
- int ftnum;
- struct msm_frame fthumnail;
- int fmnum;
- struct msm_frame fmain;
-};
-
-struct msm_snapshot_pp_status {
- void *status;
-};
-
-#define CFG_SET_MODE 0
-#define CFG_SET_EFFECT 1
-#define CFG_START 2
-#define CFG_PWR_UP 3
-#define CFG_PWR_DOWN 4
-#define CFG_WRITE_EXPOSURE_GAIN 5
-#define CFG_SET_DEFAULT_FOCUS 6
-#define CFG_MOVE_FOCUS 7
-#define CFG_REGISTER_TO_REAL_GAIN 8
-#define CFG_REAL_TO_REGISTER_GAIN 9
-#define CFG_SET_FPS 10
-#define CFG_SET_PICT_FPS 11
-#define CFG_SET_BRIGHTNESS 12
-#define CFG_SET_CONTRAST 13
-#define CFG_SET_ZOOM 14
-#define CFG_SET_EXPOSURE_MODE 15
-#define CFG_SET_WB 16
-#define CFG_SET_ANTIBANDING 17
-#define CFG_SET_EXP_GAIN 18
-#define CFG_SET_PICT_EXP_GAIN 19
-#define CFG_SET_LENS_SHADING 20
-#define CFG_GET_PICT_FPS 21
-#define CFG_GET_PREV_L_PF 22
-#define CFG_GET_PREV_P_PL 23
-#define CFG_GET_PICT_L_PF 24
-#define CFG_GET_PICT_P_PL 25
-#define CFG_GET_AF_MAX_STEPS 26
-#define CFG_GET_PICT_MAX_EXP_LC 27
-#define CFG_SEND_WB_INFO 28
-#define CFG_SENSOR_INIT 29
-#define CFG_GET_3D_CALI_DATA 30
-#define CFG_GET_CALIB_DATA 31
-#define CFG_GET_OUTPUT_INFO 32
-#define CFG_GET_EEPROM_INFO 33
-#define CFG_GET_EEPROM_DATA 34
-#define CFG_SET_ACTUATOR_INFO 35
-#define CFG_GET_ACTUATOR_INFO 36
-/* TBD: QRD */
-#define CFG_SET_SATURATION 37
-#define CFG_SET_SHARPNESS 38
-#define CFG_SET_TOUCHAEC 39
-#define CFG_SET_AUTO_FOCUS 40
-#define CFG_SET_AUTOFLASH 41
-#define CFG_SET_EXPOSURE_COMPENSATION 42
-#define CFG_SET_ISO 43
-#define CFG_START_STREAM 44
-#define CFG_STOP_STREAM 45
-#define CFG_GET_CSI_PARAMS 46
-#define CFG_POWER_UP 47
-#define CFG_POWER_DOWN 48
-#define CFG_WRITE_I2C_ARRAY 49
-#define CFG_READ_I2C_ARRAY 50
-#define CFG_PCLK_CHANGE 51
-#define CFG_CONFIG_VREG_ARRAY 52
-#define CFG_CONFIG_CLK_ARRAY 53
-#define CFG_GPIO_OP 54
-#define CFG_MAX 55
-
-
-#define MOVE_NEAR 0
-#define MOVE_FAR 1
-
-#define SENSOR_PREVIEW_MODE 0
-#define SENSOR_SNAPSHOT_MODE 1
-#define SENSOR_RAW_SNAPSHOT_MODE 2
-#define SENSOR_HFR_60FPS_MODE 3
-#define SENSOR_HFR_90FPS_MODE 4
-#define SENSOR_HFR_120FPS_MODE 5
-
-#define SENSOR_QTR_SIZE 0
-#define SENSOR_FULL_SIZE 1
-#define SENSOR_QVGA_SIZE 2
-#define SENSOR_INVALID_SIZE 3
-
-#define CAMERA_EFFECT_OFF 0
-#define CAMERA_EFFECT_MONO 1
-#define CAMERA_EFFECT_NEGATIVE 2
-#define CAMERA_EFFECT_SOLARIZE 3
-#define CAMERA_EFFECT_SEPIA 4
-#define CAMERA_EFFECT_POSTERIZE 5
-#define CAMERA_EFFECT_WHITEBOARD 6
-#define CAMERA_EFFECT_BLACKBOARD 7
-#define CAMERA_EFFECT_AQUA 8
-#define CAMERA_EFFECT_EMBOSS 9
-#define CAMERA_EFFECT_SKETCH 10
-#define CAMERA_EFFECT_NEON 11
-#define CAMERA_EFFECT_FADED 12
-#define CAMERA_EFFECT_VINTAGECOOL 13
-#define CAMERA_EFFECT_VINTAGEWARM 14
-#define CAMERA_EFFECT_ACCENT_BLUE 15
-#define CAMERA_EFFECT_ACCENT_GREEN 16
-#define CAMERA_EFFECT_ACCENT_ORANGE 17
-#define CAMERA_EFFECT_MAX 18
-
-/* QRD */
-#define CAMERA_EFFECT_BW 10
-#define CAMERA_EFFECT_BLUISH 12
-#define CAMERA_EFFECT_REDDISH 13
-#define CAMERA_EFFECT_GREENISH 14
-
-/* QRD */
-#define CAMERA_ANTIBANDING_OFF 0
-#define CAMERA_ANTIBANDING_50HZ 2
-#define CAMERA_ANTIBANDING_60HZ 1
-#define CAMERA_ANTIBANDING_AUTO 3
-
-#define CAMERA_CONTRAST_LV0 0
-#define CAMERA_CONTRAST_LV1 1
-#define CAMERA_CONTRAST_LV2 2
-#define CAMERA_CONTRAST_LV3 3
-#define CAMERA_CONTRAST_LV4 4
-#define CAMERA_CONTRAST_LV5 5
-#define CAMERA_CONTRAST_LV6 6
-#define CAMERA_CONTRAST_LV7 7
-#define CAMERA_CONTRAST_LV8 8
-#define CAMERA_CONTRAST_LV9 9
-
-#define CAMERA_BRIGHTNESS_LV0 0
-#define CAMERA_BRIGHTNESS_LV1 1
-#define CAMERA_BRIGHTNESS_LV2 2
-#define CAMERA_BRIGHTNESS_LV3 3
-#define CAMERA_BRIGHTNESS_LV4 4
-#define CAMERA_BRIGHTNESS_LV5 5
-#define CAMERA_BRIGHTNESS_LV6 6
-#define CAMERA_BRIGHTNESS_LV7 7
-#define CAMERA_BRIGHTNESS_LV8 8
-
-
-#define CAMERA_SATURATION_LV0 0
-#define CAMERA_SATURATION_LV1 1
-#define CAMERA_SATURATION_LV2 2
-#define CAMERA_SATURATION_LV3 3
-#define CAMERA_SATURATION_LV4 4
-#define CAMERA_SATURATION_LV5 5
-#define CAMERA_SATURATION_LV6 6
-#define CAMERA_SATURATION_LV7 7
-#define CAMERA_SATURATION_LV8 8
-
-#define CAMERA_SHARPNESS_LV0 0
-#define CAMERA_SHARPNESS_LV1 3
-#define CAMERA_SHARPNESS_LV2 6
-#define CAMERA_SHARPNESS_LV3 9
-#define CAMERA_SHARPNESS_LV4 12
-#define CAMERA_SHARPNESS_LV5 15
-#define CAMERA_SHARPNESS_LV6 18
-#define CAMERA_SHARPNESS_LV7 21
-#define CAMERA_SHARPNESS_LV8 24
-#define CAMERA_SHARPNESS_LV9 27
-#define CAMERA_SHARPNESS_LV10 30
-
-#define CAMERA_SETAE_AVERAGE 0
-#define CAMERA_SETAE_CENWEIGHT 1
-
-#define CAMERA_WB_AUTO 1 /* This list must match aeecamera.h */
-#define CAMERA_WB_CUSTOM 2
-#define CAMERA_WB_INCANDESCENT 3
-#define CAMERA_WB_FLUORESCENT 4
-#define CAMERA_WB_DAYLIGHT 5
-#define CAMERA_WB_CLOUDY_DAYLIGHT 6
-#define CAMERA_WB_TWILIGHT 7
-#define CAMERA_WB_SHADE 8
-
-#define CAMERA_EXPOSURE_COMPENSATION_LV0 12
-#define CAMERA_EXPOSURE_COMPENSATION_LV1 6
-#define CAMERA_EXPOSURE_COMPENSATION_LV2 0
-#define CAMERA_EXPOSURE_COMPENSATION_LV3 -6
-#define CAMERA_EXPOSURE_COMPENSATION_LV4 -12
-
-enum msm_v4l2_saturation_level {
- MSM_V4L2_SATURATION_L0,
- MSM_V4L2_SATURATION_L1,
- MSM_V4L2_SATURATION_L2,
- MSM_V4L2_SATURATION_L3,
- MSM_V4L2_SATURATION_L4,
- MSM_V4L2_SATURATION_L5,
- MSM_V4L2_SATURATION_L6,
- MSM_V4L2_SATURATION_L7,
- MSM_V4L2_SATURATION_L8,
- MSM_V4L2_SATURATION_L9,
- MSM_V4L2_SATURATION_L10,
-};
-
-enum msm_v4l2_contrast_level {
- MSM_V4L2_CONTRAST_L0,
- MSM_V4L2_CONTRAST_L1,
- MSM_V4L2_CONTRAST_L2,
- MSM_V4L2_CONTRAST_L3,
- MSM_V4L2_CONTRAST_L4,
- MSM_V4L2_CONTRAST_L5,
- MSM_V4L2_CONTRAST_L6,
- MSM_V4L2_CONTRAST_L7,
- MSM_V4L2_CONTRAST_L8,
- MSM_V4L2_CONTRAST_L9,
- MSM_V4L2_CONTRAST_L10,
-};
-
-
-enum msm_v4l2_exposure_level {
- MSM_V4L2_EXPOSURE_N2,
- MSM_V4L2_EXPOSURE_N1,
- MSM_V4L2_EXPOSURE_D,
- MSM_V4L2_EXPOSURE_P1,
- MSM_V4L2_EXPOSURE_P2,
-};
-
-enum msm_v4l2_sharpness_level {
- MSM_V4L2_SHARPNESS_L0,
- MSM_V4L2_SHARPNESS_L1,
- MSM_V4L2_SHARPNESS_L2,
- MSM_V4L2_SHARPNESS_L3,
- MSM_V4L2_SHARPNESS_L4,
- MSM_V4L2_SHARPNESS_L5,
- MSM_V4L2_SHARPNESS_L6,
-};
-
-enum msm_v4l2_expo_metering_mode {
- MSM_V4L2_EXP_FRAME_AVERAGE,
- MSM_V4L2_EXP_CENTER_WEIGHTED,
- MSM_V4L2_EXP_SPOT_METERING,
-};
-
-enum msm_v4l2_iso_mode {
- MSM_V4L2_ISO_AUTO = 0,
- MSM_V4L2_ISO_DEBLUR,
- MSM_V4L2_ISO_100,
- MSM_V4L2_ISO_200,
- MSM_V4L2_ISO_400,
- MSM_V4L2_ISO_800,
- MSM_V4L2_ISO_1600,
-};
-
-enum msm_v4l2_wb_mode {
- MSM_V4L2_WB_OFF,
- MSM_V4L2_WB_AUTO,
- MSM_V4L2_WB_CUSTOM,
- MSM_V4L2_WB_INCANDESCENT,
- MSM_V4L2_WB_FLUORESCENT,
- MSM_V4L2_WB_DAYLIGHT,
- MSM_V4L2_WB_CLOUDY_DAYLIGHT,
-};
-
-enum msm_v4l2_special_effect {
- MSM_V4L2_EFFECT_OFF,
- MSM_V4L2_EFFECT_MONO,
- MSM_V4L2_EFFECT_NEGATIVE,
- MSM_V4L2_EFFECT_SOLARIZE,
- MSM_V4L2_EFFECT_SEPIA,
- MSM_V4L2_EFFECT_POSTERAIZE,
- MSM_V4L2_EFFECT_WHITEBOARD,
- MSM_V4L2_EFFECT_BLACKBOARD,
- MSM_V4L2_EFFECT_AQUA,
- MSM_V4L2_EFFECT_EMBOSS,
- MSM_V4L2_EFFECT_SKETCH,
- MSM_V4L2_EFFECT_NEON,
- MSM_V4L2_EFFECT_MAX,
-};
-
-enum msm_v4l2_power_line_frequency {
- MSM_V4L2_POWER_LINE_OFF,
- MSM_V4L2_POWER_LINE_60HZ,
- MSM_V4L2_POWER_LINE_50HZ,
- MSM_V4L2_POWER_LINE_AUTO,
-};
-
-#define CAMERA_ISO_TYPE_AUTO 0
-#define CAMEAR_ISO_TYPE_HJR 1
-#define CAMEAR_ISO_TYPE_100 2
-#define CAMERA_ISO_TYPE_200 3
-#define CAMERA_ISO_TYPE_400 4
-#define CAMEAR_ISO_TYPE_800 5
-#define CAMERA_ISO_TYPE_1600 6
-
-struct sensor_pict_fps {
- uint16_t prevfps;
- uint16_t pictfps;
-};
-
-struct exp_gain_cfg {
- uint16_t gain;
- uint32_t line;
-};
-
-struct focus_cfg {
- int32_t steps;
- int dir;
-};
-
-struct fps_cfg {
- uint16_t f_mult;
- uint16_t fps_div;
- uint32_t pict_fps_div;
-};
-struct wb_info_cfg {
- uint16_t red_gain;
- uint16_t green_gain;
- uint16_t blue_gain;
-};
-struct sensor_3d_exp_cfg {
- uint16_t gain;
- uint32_t line;
- uint16_t r_gain;
- uint16_t b_gain;
- uint16_t gr_gain;
- uint16_t gb_gain;
- uint16_t gain_adjust;
-};
-struct sensor_3d_cali_data_t {
- unsigned char left_p_matrix[3][4][8];
- unsigned char right_p_matrix[3][4][8];
- unsigned char square_len[8];
- unsigned char focal_len[8];
- unsigned char pixel_pitch[8];
- uint16_t left_r;
- uint16_t left_b;
- uint16_t left_gb;
- uint16_t left_af_far;
- uint16_t left_af_mid;
- uint16_t left_af_short;
- uint16_t left_af_5um;
- uint16_t left_af_50up;
- uint16_t left_af_50down;
- uint16_t right_r;
- uint16_t right_b;
- uint16_t right_gb;
- uint16_t right_af_far;
- uint16_t right_af_mid;
- uint16_t right_af_short;
- uint16_t right_af_5um;
- uint16_t right_af_50up;
- uint16_t right_af_50down;
-};
-struct sensor_init_cfg {
- uint8_t prev_res;
- uint8_t pict_res;
-};
-
-struct sensor_calib_data {
- /* Color Related Measurements */
- uint16_t r_over_g;
- uint16_t b_over_g;
- uint16_t gr_over_gb;
-
- /* Lens Related Measurements */
- uint16_t macro_2_inf;
- uint16_t inf_2_macro;
- uint16_t stroke_amt;
- uint16_t af_pos_1m;
- uint16_t af_pos_inf;
-};
-
-enum msm_sensor_resolution_t {
- MSM_SENSOR_RES_FULL,
- MSM_SENSOR_RES_QTR,
- MSM_SENSOR_RES_2,
- MSM_SENSOR_RES_3,
- MSM_SENSOR_RES_4,
- MSM_SENSOR_RES_5,
- MSM_SENSOR_RES_6,
- MSM_SENSOR_RES_7,
- MSM_SENSOR_INVALID_RES,
-};
-
-struct msm_sensor_output_info_t {
- uint16_t x_output;
- uint16_t y_output;
- uint16_t line_length_pclk;
- uint16_t frame_length_lines;
- uint32_t vt_pixel_clk;
- uint32_t op_pixel_clk;
- uint16_t binning_factor;
-};
-
-struct sensor_output_info_t {
- struct msm_sensor_output_info_t *output_info;
- uint16_t num_info;
-};
-
-struct msm_sensor_exp_gain_info_t {
- uint16_t coarse_int_time_addr;
- uint16_t global_gain_addr;
- uint16_t vert_offset;
-};
-
-struct msm_sensor_output_reg_addr_t {
- uint16_t x_output;
- uint16_t y_output;
- uint16_t line_length_pclk;
- uint16_t frame_length_lines;
-};
-
-struct sensor_driver_params_type {
- struct msm_camera_i2c_reg_setting *init_settings;
- uint16_t init_settings_size;
- struct msm_camera_i2c_reg_setting *mode_settings;
- uint16_t mode_settings_size;
- struct msm_sensor_output_reg_addr_t *sensor_output_reg_addr;
- struct msm_camera_i2c_reg_setting *start_settings;
- struct msm_camera_i2c_reg_setting *stop_settings;
- struct msm_camera_i2c_reg_setting *groupon_settings;
- struct msm_camera_i2c_reg_setting *groupoff_settings;
- struct msm_sensor_exp_gain_info_t *sensor_exp_gain_info;
- struct msm_sensor_output_info_t *output_info;
-};
-
-struct mirror_flip {
- int32_t x_mirror;
- int32_t y_flip;
-};
-
-struct cord {
- uint32_t x;
- uint32_t y;
-};
-
-struct msm_eeprom_data_t {
- void *eeprom_data;
- uint16_t index;
-};
-
-struct msm_camera_csid_vc_cfg {
- uint8_t cid;
- uint8_t dt;
- uint8_t decode_format;
-};
-
-struct csi_lane_params_t {
- uint16_t csi_lane_assign;
- uint8_t csi_lane_mask;
- uint8_t csi_if;
- uint8_t csid_core[2];
- uint8_t csi_phy_sel;
-};
-
-struct msm_camera_csid_lut_params {
- uint8_t num_cid;
- struct msm_camera_csid_vc_cfg *vc_cfg;
-};
-
-struct msm_camera_csid_params {
- uint8_t lane_cnt;
- uint16_t lane_assign;
- uint8_t phy_sel;
- struct msm_camera_csid_lut_params lut_params;
-};
-
-struct msm_camera_csiphy_params {
- uint8_t lane_cnt;
- uint8_t settle_cnt;
- uint16_t lane_mask;
- uint8_t combo_mode;
- uint8_t csid_core;
- uint64_t data_rate;
-};
-
-struct msm_camera_csi2_params {
- struct msm_camera_csid_params csid_params;
- struct msm_camera_csiphy_params csiphy_params;
-};
-
-enum msm_camera_csi_data_format {
- CSI_8BIT,
- CSI_10BIT,
- CSI_12BIT,
-};
-
-struct msm_camera_csi_params {
- enum msm_camera_csi_data_format data_format;
- uint8_t lane_cnt;
- uint8_t lane_assign;
- uint8_t settle_cnt;
- uint8_t dpcm_scheme;
-};
-
-enum csic_cfg_type_t {
- CSIC_INIT,
- CSIC_CFG,
-};
-
-struct csic_cfg_data {
- enum csic_cfg_type_t cfgtype;
- struct msm_camera_csi_params *csic_params;
-};
-
-enum csid_cfg_type_t {
- CSID_INIT,
- CSID_CFG,
-};
-
-struct csid_cfg_data {
- enum csid_cfg_type_t cfgtype;
- union {
- uint32_t csid_version;
- struct msm_camera_csid_params *csid_params;
- } cfg;
-};
-
-enum csiphy_cfg_type_t {
- CSIPHY_INIT,
- CSIPHY_CFG,
-};
-
-struct csiphy_cfg_data {
- enum csiphy_cfg_type_t cfgtype;
- struct msm_camera_csiphy_params *csiphy_params;
-};
-
-#define CSI_EMBED_DATA 0x12
-#define CSI_RESERVED_DATA_0 0x13
-#define CSI_YUV422_8 0x1E
-#define CSI_RAW8 0x2A
-#define CSI_RAW10 0x2B
-#define CSI_RAW12 0x2C
-
-#define CSI_DECODE_6BIT 0
-#define CSI_DECODE_8BIT 1
-#define CSI_DECODE_10BIT 2
-#define CSI_DECODE_DPCM_10_8_10 5
-
-#define ISPIF_STREAM(intf, action, vfe) (((intf)<<ISPIF_S_STREAM_SHIFT)+\
- (action)+((vfe)<<ISPIF_VFE_INTF_SHIFT))
-#define ISPIF_ON_FRAME_BOUNDARY (0x01 << 0)
-#define ISPIF_OFF_FRAME_BOUNDARY (0x01 << 1)
-#define ISPIF_OFF_IMMEDIATELY (0x01 << 2)
-#define ISPIF_S_STREAM_SHIFT 4
-#define ISPIF_VFE_INTF_SHIFT 12
-
-#define PIX_0 (0x01 << 0)
-#define RDI_0 (0x01 << 1)
-#define PIX_1 (0x01 << 2)
-#define RDI_1 (0x01 << 3)
-#define RDI_2 (0x01 << 4)
-
-enum msm_ispif_vfe_intf {
- VFE0,
- VFE1,
- VFE_MAX,
-};
-
-enum msm_ispif_intftype {
- PIX0,
- RDI0,
- PIX1,
- RDI1,
- RDI2,
- INTF_MAX,
-};
-
-enum msm_ispif_vc {
- VC0,
- VC1,
- VC2,
- VC3,
-};
-
-enum msm_ispif_cid {
- CID0,
- CID1,
- CID2,
- CID3,
- CID4,
- CID5,
- CID6,
- CID7,
- CID8,
- CID9,
- CID10,
- CID11,
- CID12,
- CID13,
- CID14,
- CID15,
-};
-
-struct msm_ispif_params {
- uint8_t intftype;
- uint16_t cid_mask;
- uint8_t csid;
- uint8_t vfe_intf;
-};
-
-struct msm_ispif_params_list {
- uint32_t len;
- struct msm_ispif_params params[4];
-};
-
-enum ispif_cfg_type_t {
- ISPIF_INIT,
- ISPIF_SET_CFG,
- ISPIF_SET_ON_FRAME_BOUNDARY,
- ISPIF_SET_OFF_FRAME_BOUNDARY,
- ISPIF_SET_OFF_IMMEDIATELY,
- ISPIF_RELEASE,
-};
-
-struct ispif_cfg_data {
- enum ispif_cfg_type_t cfgtype;
- union {
- uint32_t csid_version;
- int cmd;
- struct msm_ispif_params_list ispif_params;
- } cfg;
-};
-
-enum msm_camera_i2c_reg_addr_type {
- MSM_CAMERA_I2C_BYTE_ADDR = 1,
- MSM_CAMERA_I2C_WORD_ADDR,
- MSM_CAMERA_I2C_3B_ADDR,
- MSM_CAMERA_I2C_DWORD_ADDR,
-};
-#define MSM_CAMERA_I2C_DWORD_ADDR MSM_CAMERA_I2C_DWORD_ADDR
-
-struct msm_camera_i2c_reg_array {
- uint16_t reg_addr;
- uint16_t reg_data;
-};
-
-enum msm_camera_i2c_data_type {
- MSM_CAMERA_I2C_BYTE_DATA = 1,
- MSM_CAMERA_I2C_WORD_DATA,
- MSM_CAMERA_I2C_SET_BYTE_MASK,
- 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,
-};
-
-struct msm_camera_i2c_reg_setting {
- struct msm_camera_i2c_reg_array *reg_setting;
- uint16_t size;
- enum msm_camera_i2c_reg_addr_type addr_type;
- enum msm_camera_i2c_data_type data_type;
- uint16_t delay;
-};
-
-enum oem_setting_type {
- I2C_READ = 1,
- I2C_WRITE,
- GPIO_OP,
- EEPROM_READ,
- VREG_SET,
- CLK_SET,
-};
-
-struct sensor_oem_setting {
- enum oem_setting_type type;
- void *data;
-};
-
-enum camera_vreg_type {
- REG_LDO,
- REG_VS,
- REG_GPIO,
-};
-
-enum msm_camera_vreg_name_t {
- CAM_VDIG,
- CAM_VIO,
- CAM_VANA,
- CAM_VAF,
- CAM_VREG_MAX,
-};
-
-struct msm_camera_csi_lane_params {
- uint16_t csi_lane_assign;
- uint16_t csi_lane_mask;
-};
-
-struct camera_vreg_t {
- const char *reg_name;
- int min_voltage;
- int max_voltage;
- int op_mode;
- uint32_t delay;
-};
-
-struct msm_camera_vreg_setting {
- struct camera_vreg_t *cam_vreg;
- uint16_t num_vreg;
- uint8_t enable;
-};
-
-struct msm_cam_clk_info {
- const char *clk_name;
- long clk_rate;
- uint32_t delay;
-};
-
-struct msm_cam_clk_setting {
- struct msm_cam_clk_info *clk_info;
- uint16_t num_clk_info;
- uint8_t enable;
-};
-
-struct sensor_cfg_data {
- int cfgtype;
- int mode;
- int rs;
- uint8_t max_steps;
-
- union {
- int8_t effect;
- uint8_t lens_shading;
- uint16_t prevl_pf;
- uint16_t prevp_pl;
- uint16_t pictl_pf;
- uint16_t pictp_pl;
- uint32_t pict_max_exp_lc;
- uint16_t p_fps;
- uint8_t iso_type;
- struct sensor_init_cfg init_info;
- struct sensor_pict_fps gfps;
- struct exp_gain_cfg exp_gain;
- struct focus_cfg focus;
- struct fps_cfg fps;
- struct wb_info_cfg wb_info;
- struct sensor_3d_exp_cfg sensor_3d_exp;
- struct sensor_calib_data calib_info;
- struct sensor_output_info_t output_info;
- struct msm_eeprom_data_t eeprom_data;
- struct csi_lane_params_t csi_lane_params;
- /* QRD */
- uint16_t antibanding;
- uint8_t contrast;
- uint8_t saturation;
- uint8_t sharpness;
- int8_t brightness;
- int ae_mode;
- uint8_t wb_val;
- int8_t exp_compensation;
- uint32_t pclk;
- struct cord aec_cord;
- int is_autoflash;
- struct mirror_flip mirror_flip;
- void *setting;
- } cfg;
-};
-
-enum gpio_operation_type {
- GPIO_REQUEST,
- GPIO_FREE,
- GPIO_SET_DIRECTION_OUTPUT,
- GPIO_SET_DIRECTION_INPUT,
- GPIO_GET_VALUE,
- GPIO_SET_VALUE,
-};
-
-struct msm_cam_gpio_operation {
- enum gpio_operation_type op_type;
- unsigned int address;
- int value;
- const char *tag;
-};
-
-struct damping_params_t {
- uint32_t damping_step;
- uint32_t damping_delay;
- uint32_t hw_params;
-};
-
-enum actuator_type {
- ACTUATOR_VCM,
- ACTUATOR_PIEZO,
- ACTUATOR_HVCM,
- ACTUATOR_BIVCM,
-};
-
-enum msm_actuator_data_type {
- MSM_ACTUATOR_BYTE_DATA = 1,
- MSM_ACTUATOR_WORD_DATA,
-};
-
-enum msm_actuator_addr_type {
- MSM_ACTUATOR_BYTE_ADDR = 1,
- MSM_ACTUATOR_WORD_ADDR,
-};
-
-enum msm_actuator_write_type {
- MSM_ACTUATOR_WRITE_HW_DAMP,
- MSM_ACTUATOR_WRITE_DAC,
- MSM_ACTUATOR_WRITE,
- MSM_ACTUATOR_WRITE_DIR_REG,
- MSM_ACTUATOR_POLL,
- MSM_ACTUATOR_READ_WRITE,
-};
-
-struct msm_actuator_reg_params_t {
- enum msm_actuator_write_type reg_write_type;
- uint32_t hw_mask;
- uint16_t reg_addr;
- uint16_t hw_shift;
- uint16_t data_type;
- uint16_t addr_type;
- uint16_t reg_data;
- uint16_t delay;
-};
-
-struct reg_settings_t {
- uint16_t reg_addr;
- uint16_t reg_data;
-};
-
-struct region_params_t {
- /* [0] = ForwardDirection Macro boundary
- * [1] = ReverseDirection Inf boundary
- */
- uint16_t step_bound[2];
- uint16_t code_per_step;
-};
-
-struct msm_actuator_move_params_t {
- int8_t dir;
- int8_t sign_dir;
- int16_t dest_step_pos;
- int32_t num_steps;
- struct damping_params_t *ringing_params;
-};
-
-struct msm_actuator_tuning_params_t {
- int16_t initial_code;
- uint16_t pwd_step;
- uint16_t region_size;
- uint32_t total_steps;
- struct region_params_t *region_params;
-};
-
-struct msm_actuator_params_t {
- enum actuator_type act_type;
- uint8_t reg_tbl_size;
- uint16_t data_size;
- uint16_t init_setting_size;
- uint32_t i2c_addr;
- enum msm_actuator_addr_type i2c_addr_type;
- enum msm_actuator_data_type i2c_data_type;
- struct msm_actuator_reg_params_t *reg_tbl_params;
- struct reg_settings_t *init_settings;
-};
-
-struct msm_actuator_set_info_t {
- struct msm_actuator_params_t actuator_params;
- struct msm_actuator_tuning_params_t af_tuning_params;
-};
-
-struct msm_actuator_get_info_t {
- uint32_t focal_length_num;
- uint32_t focal_length_den;
- uint32_t f_number_num;
- uint32_t f_number_den;
- uint32_t f_pix_num;
- uint32_t f_pix_den;
- uint32_t total_f_dist_num;
- uint32_t total_f_dist_den;
- uint32_t hor_view_angle_num;
- uint32_t hor_view_angle_den;
- uint32_t ver_view_angle_num;
- uint32_t ver_view_angle_den;
-};
-
-enum af_camera_name {
- ACTUATOR_MAIN_CAM_0,
- ACTUATOR_MAIN_CAM_1,
- ACTUATOR_MAIN_CAM_2,
- ACTUATOR_MAIN_CAM_3,
- ACTUATOR_MAIN_CAM_4,
- ACTUATOR_MAIN_CAM_5,
- ACTUATOR_WEB_CAM_0,
- ACTUATOR_WEB_CAM_1,
- ACTUATOR_WEB_CAM_2,
-};
-
-struct msm_actuator_cfg_data {
- int cfgtype;
- uint8_t is_af_supported;
- union {
- struct msm_actuator_move_params_t move;
- struct msm_actuator_set_info_t set_info;
- struct msm_actuator_get_info_t get_info;
- enum af_camera_name cam_name;
- } cfg;
-};
-
-struct msm_eeprom_support {
- uint16_t is_supported;
- uint16_t size;
- uint16_t index;
- uint16_t qvalue;
-};
-
-struct msm_calib_wb {
- uint16_t r_over_g;
- uint16_t b_over_g;
- uint16_t gr_over_gb;
-};
-
-struct msm_calib_af {
- uint16_t macro_dac;
- uint16_t inf_dac;
- uint16_t start_dac;
-};
-
-struct msm_calib_lsc {
- uint16_t r_gain[221];
- uint16_t b_gain[221];
- uint16_t gr_gain[221];
- uint16_t gb_gain[221];
-};
-
-struct pixel_t {
- int x;
- int y;
-};
-
-struct msm_calib_dpc {
- uint16_t validcount;
- struct pixel_t snapshot_coord[128];
- struct pixel_t preview_coord[128];
- struct pixel_t video_coord[128];
-};
-
-struct msm_calib_raw {
- uint8_t *data;
- uint32_t size;
-};
-
-struct msm_camera_eeprom_info_t {
- struct msm_eeprom_support af;
- struct msm_eeprom_support wb;
- struct msm_eeprom_support lsc;
- struct msm_eeprom_support dpc;
- struct msm_eeprom_support raw;
-};
-
-struct msm_eeprom_cfg_data {
- int cfgtype;
- uint8_t is_eeprom_supported;
- union {
- struct msm_eeprom_data_t get_data;
- struct msm_camera_eeprom_info_t get_info;
- } cfg;
-};
-
-struct sensor_large_data {
- int cfgtype;
- union {
- struct sensor_3d_cali_data_t sensor_3d_cali_data;
- } data;
-};
-
-enum sensor_type_t {
- BAYER,
- YUV,
- JPEG_SOC,
-};
-
-enum flash_type {
- LED_FLASH,
- STROBE_FLASH,
-};
-
-enum strobe_flash_ctrl_type {
- STROBE_FLASH_CTRL_INIT,
- STROBE_FLASH_CTRL_CHARGE,
- STROBE_FLASH_CTRL_RELEASE
-};
-
-struct strobe_flash_ctrl_data {
- enum strobe_flash_ctrl_type type;
- int charge_en;
-};
-
-struct msm_camera_info {
- int num_cameras;
- uint8_t has_3d_support[MSM_MAX_CAMERA_SENSORS];
- uint8_t is_internal_cam[MSM_MAX_CAMERA_SENSORS];
- uint32_t s_mount_angle[MSM_MAX_CAMERA_SENSORS];
- const char *video_dev_name[MSM_MAX_CAMERA_SENSORS];
- enum sensor_type_t sensor_type[MSM_MAX_CAMERA_SENSORS];
-};
-
-struct msm_cam_config_dev_info {
- int num_config_nodes;
- const char *config_dev_name[MSM_MAX_CAMERA_CONFIGS];
- int config_dev_id[MSM_MAX_CAMERA_CONFIGS];
-};
-
-struct msm_mctl_node_info {
- int num_mctl_nodes;
- const char *mctl_node_name[MSM_MAX_CAMERA_SENSORS];
-};
-
-struct flash_ctrl_data {
- int flashtype;
- union {
- int led_state;
- struct strobe_flash_ctrl_data strobe_ctrl;
- } ctrl_data;
-};
-
-#define GET_NAME 0
-#define GET_PREVIEW_LINE_PER_FRAME 1
-#define GET_PREVIEW_PIXELS_PER_LINE 2
-#define GET_SNAPSHOT_LINE_PER_FRAME 3
-#define GET_SNAPSHOT_PIXELS_PER_LINE 4
-#define GET_SNAPSHOT_FPS 5
-#define GET_SNAPSHOT_MAX_EP_LINE_CNT 6
-
-struct msm_camsensor_info {
- char name[MAX_SENSOR_NAME];
- uint8_t flash_enabled;
- uint8_t strobe_flash_enabled;
- uint8_t actuator_enabled;
- uint8_t ispif_supported;
- int8_t total_steps;
- uint8_t support_3d;
- enum flash_type flashtype;
- enum sensor_type_t sensor_type;
- uint32_t pxlcode; /* enum v4l2_mbus_pixelcode */
- uint32_t camera_type; /* msm_camera_type */
- int mount_angle;
- uint32_t max_width;
- uint32_t max_height;
-};
-
-#define V4L2_SINGLE_PLANE 0
-#define V4L2_MULTI_PLANE_Y 0
-#define V4L2_MULTI_PLANE_CBCR 1
-#define V4L2_MULTI_PLANE_CB 1
-#define V4L2_MULTI_PLANE_CR 2
-
-struct plane_data {
- int plane_id;
- uint32_t offset;
- unsigned long size;
-};
-
-struct img_plane_info {
- uint32_t width;
- uint32_t height;
- uint32_t pixelformat;
- uint8_t buffer_type; /*Single/Multi planar*/
- uint8_t output_port;
- uint32_t ext_mode;
- uint8_t num_planes;
- struct plane_data plane[MAX_PLANES];
- uint32_t sp_y_offset;
- uint32_t inst_handle;
-};
-
-#define QCAMERA_NAME "qcamera"
-#define QCAMERA_SERVER_NAME "qcamera_server"
-#define QCAMERA_VNODE_GROUP_ID MEDIA_ENT_F_IO_V4L
-
-enum msm_cam_subdev_type {
- CSIPHY_DEV,
- CSID_DEV,
- CSIC_DEV,
- ISPIF_DEV,
- VFE_DEV,
- AXI_DEV,
- VPE_DEV,
- SENSOR_DEV,
- ACTUATOR_DEV,
- EEPROM_DEV,
- GESTURE_DEV,
- IRQ_ROUTER_DEV,
- CPP_DEV,
- CCI_DEV,
- FLASH_DEV,
-};
-
-struct msm_mctl_set_sdev_data {
- uint32_t revision;
- enum msm_cam_subdev_type sdev_type;
-};
-
-#define MSM_CAM_V4L2_IOCTL_GET_CAMERA_INFO \
- _IOWR('V', BASE_VIDIOC_PRIVATE + 1, struct msm_camera_v4l2_ioctl_t)
-
-#define MSM_CAM_V4L2_IOCTL_GET_CONFIG_INFO \
- _IOWR('V', BASE_VIDIOC_PRIVATE + 2, struct msm_camera_v4l2_ioctl_t)
-
-#define MSM_CAM_V4L2_IOCTL_GET_MCTL_INFO \
- _IOWR('V', BASE_VIDIOC_PRIVATE + 3, struct msm_camera_v4l2_ioctl_t)
-
-#define MSM_CAM_V4L2_IOCTL_CTRL_CMD_DONE \
- _IOWR('V', BASE_VIDIOC_PRIVATE + 4, struct msm_camera_v4l2_ioctl_t)
-
-#define MSM_CAM_V4L2_IOCTL_GET_EVENT_PAYLOAD \
- _IOWR('V', BASE_VIDIOC_PRIVATE + 5, struct msm_camera_v4l2_ioctl_t)
-
-#define MSM_CAM_IOCTL_SEND_EVENT \
- _IOWR('V', BASE_VIDIOC_PRIVATE + 6, struct v4l2_event)
-
-#define MSM_CAM_V4L2_IOCTL_CFG_VPE \
- _IOWR('V', BASE_VIDIOC_PRIVATE + 7, struct msm_vpe_cfg_cmd)
-
-#define MSM_CAM_V4L2_IOCTL_PRIVATE_S_CTRL \
- _IOWR('V', BASE_VIDIOC_PRIVATE + 8, struct msm_camera_v4l2_ioctl_t)
-
-#define MSM_CAM_V4L2_IOCTL_PRIVATE_G_CTRL \
- _IOWR('V', BASE_VIDIOC_PRIVATE + 9, struct msm_camera_v4l2_ioctl_t)
-
-#define MSM_CAM_V4L2_IOCTL_PRIVATE_GENERAL \
- _IOW('V', BASE_VIDIOC_PRIVATE + 10, struct msm_camera_v4l2_ioctl_t)
-
-#define VIDIOC_MSM_VPE_INIT \
- _IO('V', BASE_VIDIOC_PRIVATE + 15)
-
-#define VIDIOC_MSM_VPE_RELEASE \
- _IO('V', BASE_VIDIOC_PRIVATE + 16)
-
-#define VIDIOC_MSM_VPE_CFG \
- _IOWR('V', BASE_VIDIOC_PRIVATE + 17, struct msm_mctl_pp_params *)
-
-#define VIDIOC_MSM_AXI_INIT \
- _IOWR('V', BASE_VIDIOC_PRIVATE + 18, uint8_t *)
-
-#define VIDIOC_MSM_AXI_RELEASE \
- _IO('V', BASE_VIDIOC_PRIVATE + 19)
-
-#define VIDIOC_MSM_AXI_CFG \
- _IOWR('V', BASE_VIDIOC_PRIVATE + 20, void *)
-
-#define VIDIOC_MSM_AXI_IRQ \
- _IOWR('V', BASE_VIDIOC_PRIVATE + 21, void *)
-
-#define VIDIOC_MSM_AXI_BUF_CFG \
- _IOWR('V', BASE_VIDIOC_PRIVATE + 22, void *)
-
-#define VIDIOC_MSM_AXI_RDI_COUNT_UPDATE \
- _IOWR('V', BASE_VIDIOC_PRIVATE + 23, void *)
-
-#define VIDIOC_MSM_VFE_INIT \
- _IO('V', BASE_VIDIOC_PRIVATE + 24)
-
-#define VIDIOC_MSM_VFE_RELEASE \
- _IO('V', BASE_VIDIOC_PRIVATE + 25)
-
-struct msm_camera_v4l2_ioctl_t {
- uint32_t id;
- uint32_t len;
- uint32_t trans_code;
- void *ioctl_ptr;
-};
-
-struct msm_camera_vfe_params_t {
- uint32_t operation_mode;
- uint32_t capture_count;
- uint8_t skip_reset;
- uint8_t stop_immediately;
- uint16_t port_info;
- uint32_t inst_handle;
- uint16_t cmd_type;
-};
-
-enum msm_camss_irq_idx {
- CAMERA_SS_IRQ_0,
- CAMERA_SS_IRQ_1,
- CAMERA_SS_IRQ_2,
- CAMERA_SS_IRQ_3,
- CAMERA_SS_IRQ_4,
- CAMERA_SS_IRQ_5,
- CAMERA_SS_IRQ_6,
- CAMERA_SS_IRQ_7,
- CAMERA_SS_IRQ_8,
- CAMERA_SS_IRQ_9,
- CAMERA_SS_IRQ_10,
- CAMERA_SS_IRQ_11,
- CAMERA_SS_IRQ_12,
- CAMERA_SS_IRQ_MAX
-};
-
-enum msm_cam_hw_idx {
- MSM_CAM_HW_MICRO,
- MSM_CAM_HW_CCI,
- MSM_CAM_HW_CSI0,
- MSM_CAM_HW_CSI1,
- MSM_CAM_HW_CSI2,
- MSM_CAM_HW_CSI3,
- MSM_CAM_HW_ISPIF,
- MSM_CAM_HW_CPP,
- MSM_CAM_HW_VFE0,
- MSM_CAM_HW_VFE1,
- MSM_CAM_HW_JPEG0,
- MSM_CAM_HW_JPEG1,
- MSM_CAM_HW_JPEG2,
- MSM_CAM_HW_MAX
-};
-
-struct msm_camera_irq_cfg {
- /* Bit mask of all the camera hardwares that needs to
- * be composited into a single IRQ to the MSM.
- * Current usage: (may be updated based on hw changes)
- * Bits 31:13 - Reserved.
- * Bits 12:0
- * 12 - MSM_CAM_HW_JPEG2
- * 11 - MSM_CAM_HW_JPEG1
- * 10 - MSM_CAM_HW_JPEG0
- * 9 - MSM_CAM_HW_VFE1
- * 8 - MSM_CAM_HW_VFE0
- * 7 - MSM_CAM_HW_CPP
- * 6 - MSM_CAM_HW_ISPIF
- * 5 - MSM_CAM_HW_CSI3
- * 4 - MSM_CAM_HW_CSI2
- * 3 - MSM_CAM_HW_CSI1
- * 2 - MSM_CAM_HW_CSI0
- * 1 - MSM_CAM_HW_CCI
- * 0 - MSM_CAM_HW_MICRO
- */
- uint32_t cam_hw_mask;
- uint8_t irq_idx;
- uint8_t num_hwcore;
-};
-
-#define MSM_IRQROUTER_CFG_COMPIRQ \
- _IOWR('V', BASE_VIDIOC_PRIVATE, void *)
-
-#define MAX_NUM_CPP_STRIPS 8
-
-enum msm_cpp_frame_type {
- MSM_CPP_OFFLINE_FRAME,
- MSM_CPP_REALTIME_FRAME,
-};
-
-struct msm_cpp_frame_info_t {
- int32_t frame_id;
- uint32_t inst_id;
- uint32_t client_id;
- enum msm_cpp_frame_type frame_type;
- uint32_t num_strips;
-};
-
-struct msm_ver_num_info {
- uint32_t main;
- uint32_t minor;
- uint32_t rev;
-};
-
-#define VIDIOC_MSM_CPP_CFG \
- _IOWR('V', BASE_VIDIOC_PRIVATE, struct msm_camera_v4l2_ioctl_t)
-
-#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 V4L2_EVENT_CPP_FRAME_DONE (V4L2_EVENT_PRIVATE_START + 0)
-
-/* Instance Handle - inst_handle
- * Data bundle containing the information about where
- * to get a buffer for a particular camera instance.
- * This is a bitmask containing the following data:
- * Buffer Handle Bitmask:
- * ------------------------------------
- * Bits : Purpose
- * ------------------------------------
- * 31 : is Dev ID valid?
- * 30 - 24 : Dev ID.
- * 23 : is Image mode valid?
- * 22 - 16 : Image mode.
- * 15 : is MCTL PP inst idx valid?
- * 14 - 8 : MCTL PP inst idx.
- * 7 : is Video inst idx valid?
- * 6 - 0 : Video inst idx.
- */
-#define CLR_DEVID_MODE(handle) (handle &= 0x00FFFFFF)
-#define SET_DEVID_MODE(handle, data) \
- (handle |= ((0x1 << 31) | ((data & 0x7F) << 24)))
-#define GET_DEVID_MODE(handle) \
- ((handle & 0x80000000) ? ((handle & 0x7F000000) >> 24) : 0xFF)
-
-#define CLR_IMG_MODE(handle) (handle &= 0xFF00FFFF)
-#define SET_IMG_MODE(handle, data) \
- (handle |= ((0x1 << 23) | ((data & 0x7F) << 16)))
-#define GET_IMG_MODE(handle) \
- ((handle & 0x800000) ? ((handle & 0x7F0000) >> 16) : 0xFF)
-
-#define CLR_MCTLPP_INST_IDX(handle) (handle &= 0xFFFF00FF)
-#define SET_MCTLPP_INST_IDX(handle, data) \
- (handle |= ((0x1 << 15) | ((data & 0x7F) << 8)))
-#define GET_MCTLPP_INST_IDX(handle) \
- ((handle & 0x8000) ? ((handle & 0x7F00) >> 8) : 0xFF)
-
-#define CLR_VIDEO_INST_IDX(handle) (handle &= 0xFFFFFF00)
-#define GET_VIDEO_INST_IDX(handle) \
- ((handle & 0x80) ? (handle & 0x7F) : 0xFF)
-#define SET_VIDEO_INST_IDX(handle, data) \
- (handle |= (0x1 << 7) | (data & 0x7F))
-#endif
diff --git a/sdm710/original-kernel-headers/media/msm_camsensor_sdk.h b/sdm710/original-kernel-headers/media/msm_camsensor_sdk.h
deleted file mode 100644
index 6d25967d..00000000
--- a/sdm710/original-kernel-headers/media/msm_camsensor_sdk.h
+++ /dev/null
@@ -1,432 +0,0 @@
-#ifndef __UAPI_LINUX_MSM_CAMSENSOR_SDK_H
-#define __UAPI_LINUX_MSM_CAMSENSOR_SDK_H
-
-#include <linux/videodev2.h>
-
-#define KVERSION 0x1
-
-#define MAX_POWER_CONFIG 12
-#define GPIO_OUT_LOW (0 << 1)
-#define GPIO_OUT_HIGH (1 << 1)
-#define CSI_EMBED_DATA 0x12
-#define CSI_RESERVED_DATA_0 0x13
-#define CSI_YUV422_8 0x1E
-#define CSI_RAW8 0x2A
-#define CSI_RAW10 0x2B
-#define CSI_RAW12 0x2C
-#define CSI_DECODE_6BIT 0
-#define CSI_DECODE_8BIT 1
-#define CSI_DECODE_10BIT 2
-#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
-#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') /* META */
-#define MSM_V4L2_PIX_FMT_SBGGR14 v4l2_fourcc('B', 'G', '1', '4')
- /* 14 BGBG.. GRGR.. */
-#define MSM_V4L2_PIX_FMT_SGBRG14 v4l2_fourcc('G', 'B', '1', '4')
- /* 14 GBGB.. RGRG.. */
-#define MSM_V4L2_PIX_FMT_SGRBG14 v4l2_fourcc('B', 'A', '1', '4')
- /* 14 GRGR.. BGBG.. */
-#define MSM_V4L2_PIX_FMT_SRGGB14 v4l2_fourcc('R', 'G', '1', '4')
- /* 14 RGRG.. GBGB.. */
-
-#define MAX_ACTUATOR_REG_TBL_SIZE 8
-#define MAX_ACTUATOR_REGION 5
-#define NUM_ACTUATOR_DIR 2
-#define MAX_ACTUATOR_SCENARIO 8
-#define MAX_ACT_MOD_NAME_SIZE 32
-#define MAX_ACT_NAME_SIZE 32
-#define MAX_ACTUATOR_INIT_SET 120
-#define MAX_I2C_REG_SET 12
-
-#define MAX_LED_TRIGGERS 3
-
-#define MSM_EEPROM_MEMORY_MAP_MAX_SIZE 80
-#define MSM_EEPROM_MAX_MEM_MAP_CNT 8
-
-#define MSM_SENSOR_BYPASS_VIDEO_NODE 1
-
-enum msm_sensor_camera_id_t {
- CAMERA_0,
- CAMERA_1,
- CAMERA_2,
- CAMERA_3,
- MAX_CAMERAS,
-};
-
-enum i2c_freq_mode_t {
- I2C_STANDARD_MODE,
- I2C_FAST_MODE,
- I2C_CUSTOM_MODE,
- I2C_FAST_PLUS_MODE,
- I2C_MAX_MODES,
-};
-
-enum camb_position_t {
- BACK_CAMERA_B,
- FRONT_CAMERA_B,
- AUX_CAMERA_B = 0x100,
- INVALID_CAMERA_B,
-};
-
-enum msm_sensor_power_seq_type_t {
- SENSOR_CLK,
- SENSOR_GPIO,
- SENSOR_VREG,
- SENSOR_I2C_MUX,
- SENSOR_I2C,
-};
-
-enum msm_camera_i2c_reg_addr_type {
- MSM_CAMERA_I2C_BYTE_ADDR = 1,
- MSM_CAMERA_I2C_WORD_ADDR,
- MSM_CAMERA_I2C_3B_ADDR,
- MSM_CAMERA_I2C_DWORD_ADDR,
- MSM_CAMERA_I2C_ADDR_TYPE_MAX,
-};
-#define MSM_CAMERA_I2C_DWORD_ADDR MSM_CAMERA_I2C_DWORD_ADDR
-
-enum msm_camera_i2c_data_type {
- MSM_CAMERA_I2C_BYTE_DATA = 1,
- MSM_CAMERA_I2C_WORD_DATA,
- MSM_CAMERA_I2C_DWORD_DATA,
- MSM_CAMERA_I2C_SET_BYTE_MASK,
- 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,
- MSM_CAMERA_I2C_DATA_TYPE_MAX,
-};
-
-enum msm_sensor_power_seq_gpio_t {
- SENSOR_GPIO_RESET,
- SENSOR_GPIO_STANDBY,
- SENSOR_GPIO_AF_PWDM,
- SENSOR_GPIO_VIO,
- SENSOR_GPIO_VANA,
- SENSOR_GPIO_VDIG,
- SENSOR_GPIO_VAF,
- SENSOR_GPIO_FL_EN,
- SENSOR_GPIO_FL_NOW,
- SENSOR_GPIO_FL_RESET,
- SENSOR_GPIO_CUSTOM1,
- SENSOR_GPIO_CUSTOM2,
- SENSOR_GPIO_CUSTOM3,
- SENSOR_GPIO_MAX,
-};
-#define SENSOR_GPIO_CUSTOM3 SENSOR_GPIO_CUSTOM3
-
-enum msm_ir_cut_filter_gpio_t {
- IR_CUT_FILTER_GPIO_P = 0,
- IR_CUT_FILTER_GPIO_M,
- IR_CUT_FILTER_GPIO_MAX,
-};
-#define IR_CUT_FILTER_GPIO_P IR_CUT_FILTER_GPIO_P
-#define IR_CUT_FILTER_GPIO_M IR_CUT_FILTER_GPIO_M
-#define R_CUT_FILTER_GPIO_MAX IR_CUT_FILTER_GPIO_MAX
-
-enum msm_camera_vreg_name_t {
- CAM_VDIG,
- CAM_VIO,
- CAM_VANA,
- CAM_VAF,
- CAM_V_CUSTOM1,
- CAM_V_CUSTOM2,
- CAM_VREG_MAX,
-};
-
-enum msm_sensor_clk_type_t {
- SENSOR_CAM_MCLK,
- SENSOR_CAM_CLK,
- SENSOR_CAM_CLK_MAX,
-};
-
-enum camerab_mode_t {
- CAMERA_MODE_2D_B = (1<<0),
- CAMERA_MODE_3D_B = (1<<1),
- CAMERA_MODE_INVALID = (1<<2),
-};
-
-enum msm_actuator_data_type {
- MSM_ACTUATOR_BYTE_DATA = 1,
- MSM_ACTUATOR_WORD_DATA,
-};
-
-enum msm_actuator_addr_type {
- MSM_ACTUATOR_BYTE_ADDR = 1,
- MSM_ACTUATOR_WORD_ADDR,
-};
-
-enum msm_actuator_write_type {
- MSM_ACTUATOR_WRITE_HW_DAMP,
- MSM_ACTUATOR_WRITE_DAC,
- MSM_ACTUATOR_WRITE,
- MSM_ACTUATOR_WRITE_DIR_REG,
- MSM_ACTUATOR_POLL,
- MSM_ACTUATOR_READ_WRITE,
-};
-
-enum msm_actuator_i2c_operation {
- MSM_ACT_WRITE = 0,
- MSM_ACT_POLL,
-};
-
-enum actuator_type {
- ACTUATOR_VCM,
- ACTUATOR_PIEZO,
- ACTUATOR_HVCM,
- ACTUATOR_BIVCM,
-};
-
-enum msm_flash_driver_type {
- FLASH_DRIVER_PMIC,
- FLASH_DRIVER_I2C,
- FLASH_DRIVER_GPIO,
- FLASH_DRIVER_DEFAULT
-};
-
-enum msm_flash_cfg_type_t {
- CFG_FLASH_INIT,
- CFG_FLASH_RELEASE,
- CFG_FLASH_OFF,
- CFG_FLASH_LOW,
- CFG_FLASH_HIGH,
-};
-
-enum msm_ir_led_cfg_type_t {
- CFG_IR_LED_INIT = 0,
- CFG_IR_LED_RELEASE,
- CFG_IR_LED_OFF,
- CFG_IR_LED_ON,
-};
-#define CFG_IR_LED_INIT CFG_IR_LED_INIT
-#define CFG_IR_LED_RELEASE CFG_IR_LED_RELEASE
-#define CFG_IR_LED_OFF CFG_IR_LED_OFF
-#define CFG_IR_LED_ON CFG_IR_LED_ON
-
-enum msm_laser_led_cfg_type_t {
- CFG_LASER_LED_INIT,
- CFG_LASER_LED_CONTROL,
-};
-#define CFG_LASER_LED_INIT CFG_LASER_LED_INIT
-#define CFG_LASER_LED_CONTROL CFG_LASER_LED_CONTROL
-
-enum msm_ir_cut_cfg_type_t {
- CFG_IR_CUT_INIT = 0,
- CFG_IR_CUT_RELEASE,
- CFG_IR_CUT_OFF,
- CFG_IR_CUT_ON,
-};
-#define CFG_IR_CUT_INIT CFG_IR_CUT_INIT
-#define CFG_IR_CUT_RELEASE CFG_IR_CUT_RELEASE
-#define CFG_IR_CUT_OFF CFG_IR_CUT_OFF
-#define CFG_IR_CUT_ON CFG_IR_CUT_ON
-
-enum msm_sensor_output_format_t {
- MSM_SENSOR_BAYER,
- MSM_SENSOR_YCBCR,
- MSM_SENSOR_META,
-};
-
-struct msm_sensor_power_setting {
- enum msm_sensor_power_seq_type_t seq_type;
- unsigned short seq_val;
- long config_val;
- unsigned short delay;
- void *data[10];
-};
-
-struct msm_sensor_power_setting_array {
- 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];
- struct msm_sensor_power_setting *power_down_setting;
- unsigned short size_down;
-};
-
-enum msm_camera_i2c_operation {
- MSM_CAM_WRITE = 0,
- MSM_CAM_POLL,
- MSM_CAM_READ,
-};
-
-struct msm_sensor_i2c_sync_params {
- unsigned int cid;
- int csid;
- unsigned short line;
- unsigned short delay;
-};
-
-struct msm_camera_reg_settings_t {
- uint16_t reg_addr;
- 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;
- uint16_t delay;
-};
-
-struct msm_eeprom_mem_map_t {
- int slave_addr;
- struct msm_camera_reg_settings_t
- mem_settings[MSM_EEPROM_MEMORY_MAP_MAX_SIZE];
- int memory_map_size;
-};
-
-struct msm_eeprom_memory_map_array {
- 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 {
- /* mask of modes supported: 2D, 3D */
- int modes_supported;
- /* sensor position: front, back */
- enum camb_position_t position;
- /* sensor mount angle */
- unsigned int sensor_mount_angle;
-};
-
-struct msm_sensor_id_info_t {
- unsigned short sensor_id_reg_addr;
- unsigned short sensor_id;
- unsigned short sensor_id_mask;
-};
-
-struct msm_camera_sensor_slave_info {
- char sensor_name[32];
- char eeprom_name[32];
- char actuator_name[32];
- char ois_name[32];
- char flash_name[32];
- enum msm_sensor_camera_id_t camera_id;
- 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;
- 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;
- uint8_t bypass_video_node_creation;
-};
-
-struct msm_camera_i2c_reg_array {
- unsigned short reg_addr;
- unsigned short reg_data;
- unsigned int delay;
-};
-
-struct msm_camera_i2c_reg_setting {
- struct msm_camera_i2c_reg_array *reg_setting;
- unsigned short size;
- enum msm_camera_i2c_reg_addr_type addr_type;
- enum msm_camera_i2c_data_type data_type;
- unsigned short delay;
-};
-
-struct msm_camera_csid_vc_cfg {
- unsigned char cid;
- unsigned char dt;
- unsigned char decode_format;
-};
-
-struct msm_camera_csid_lut_params {
- unsigned char num_cid;
- 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 {
- unsigned char lane_cnt;
- unsigned short lane_assign;
- unsigned char phy_sel;
- unsigned int csi_clk;
- struct msm_camera_csid_lut_params lut_params;
- unsigned char csi_3p_sel;
-};
-
-struct msm_camera_csid_testmode_parms {
- unsigned int num_bytes_per_line;
- unsigned int num_lines;
- unsigned int h_blanking_count;
- unsigned int v_blanking_count;
- unsigned int payload_mode;
-};
-
-struct msm_camera_csiphy_params {
- unsigned char lane_cnt;
- unsigned char settle_cnt;
- unsigned short lane_mask;
- unsigned char combo_mode;
- unsigned char csid_core;
- unsigned int csiphy_clk;
- unsigned char csi_3phase;
- uint64_t data_rate;
-};
-
-struct msm_camera_i2c_seq_reg_array {
- unsigned short reg_addr;
- unsigned char reg_data[I2C_SEQ_REG_DATA_MAX];
- unsigned short reg_data_size;
-};
-
-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;
- unsigned short delay;
-};
-
-struct msm_actuator_reg_params_t {
- enum msm_actuator_write_type reg_write_type;
- unsigned int hw_mask;
- unsigned short reg_addr;
- unsigned short hw_shift;
- unsigned short data_shift;
- unsigned short data_type;
- unsigned short addr_type;
- unsigned short reg_data;
- unsigned short delay;
-};
-
-
-struct damping_params_t {
- unsigned int damping_step;
- unsigned int damping_delay;
- unsigned int hw_params;
-};
-
-struct region_params_t {
- /* [0] = ForwardDirection Macro boundary
- * [1] = ReverseDirection Inf boundary
- */
- unsigned short step_bound[2];
- unsigned short code_per_step;
- /* qvalue for converting float type numbers to integer format */
- unsigned int qvalue;
-};
-
-struct reg_settings_t {
- 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;
- enum msm_actuator_i2c_operation i2c_operation;
- unsigned int delay;
-};
-
-struct msm_camera_i2c_reg_setting_array {
- 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;
- unsigned short delay;
-};
-
-#endif
diff --git a/sdm710/original-kernel-headers/media/msm_fd.h b/sdm710/original-kernel-headers/media/msm_fd.h
deleted file mode 100644
index 8afc1363..00000000
--- a/sdm710/original-kernel-headers/media/msm_fd.h
+++ /dev/null
@@ -1,76 +0,0 @@
-#ifndef __UAPI_MSM_FD__
-#define __UAPI_MSM_FD__
-
-#include <linux/videodev2.h>
-#include <linux/types.h>
-
-/*
- * struct msm_fd_event - Structure contain event info.
- * @buf_index: Buffer index.
- * @frame_id: Frame id.
- * @face_cnt: Detected faces.
- */
-struct msm_fd_event {
- __u32 buf_index;
- __u32 frame_id;
- __u32 face_cnt;
-};
-
-/*
- * enum msm_fd_pose - Face pose.
- */
-enum msm_fd_pose {
- MSM_FD_POSE_FRONT,
- MSM_FD_POSE_RIGHT_DIAGONAL,
- MSM_FD_POSE_RIGHT,
- MSM_FD_POSE_LEFT_DIAGONAL,
- MSM_FD_POSE_LEFT,
-};
-
-/*
- * struct msm_fd_face_data - Structure contain detected face data.
- * @pose: refer to enum msm_fd_pose.
- * @angle: Face angle
- * @confidence: Face confidence level.
- * @reserved: Reserved data for future use.
- * @face: Face rectangle.
- */
-struct msm_fd_face_data {
- __u32 pose;
- __u32 angle;
- __u32 confidence;
- __u32 reserved;
- struct v4l2_rect face;
-};
-
-/*
- * struct msm_fd_result - Structure contain detected faces result.
- * @frame_id: Frame id of requested result.
- * @face_cnt: Number of result faces, driver can modify this value (to smaller)
- * @face_data: Pointer to array of face data structures.
- * Array size should not be smaller then face_cnt.
- */
-struct msm_fd_result {
- __u32 frame_id;
- __u32 face_cnt;
- struct msm_fd_face_data *face_data;
-};
-
-/* MSM FD private ioctl ID */
-#define VIDIOC_MSM_FD_GET_RESULT \
- _IOWR('V', BASE_VIDIOC_PRIVATE, struct msm_fd_result)
-
-/* MSM FD event ID */
-#define MSM_EVENT_FD (V4L2_EVENT_PRIVATE_START)
-
-/* MSM FD control ID's */
-#define V4L2_CID_FD_SPEED (V4L2_CID_PRIVATE_BASE)
-#define V4L2_CID_FD_FACE_ANGLE (V4L2_CID_PRIVATE_BASE + 1)
-#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)
-#define V4L2_CID_FD_WORK_MEMORY_FD (V4L2_CID_PRIVATE_BASE + 6)
-
-#endif
-
diff --git a/sdm710/original-kernel-headers/media/msm_gemini.h b/sdm710/original-kernel-headers/media/msm_gemini.h
deleted file mode 100644
index 0b41b384..00000000
--- a/sdm710/original-kernel-headers/media/msm_gemini.h
+++ /dev/null
@@ -1,123 +0,0 @@
-#ifndef __UAPI_MSM_GEMINI_H
-#define __UAPI_MSM_GEMINI_H
-
-#include <linux/types.h>
-#include <linux/ioctl.h>
-
-#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 *)
-
-#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)
-
-#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 *)
-
-#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)
-
-#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
-#define MSM_GEMINI_MODE_OFFLINE_ROTATION 3
-
-enum msm_gmn_out_mode {
- MSM_GMN_OUTMODE_FRAGMENTED,
- MSM_GMN_OUTMODE_SINGLE
-};
-
-struct msm_gemini_ctrl_cmd {
- uint32_t type;
- uint32_t len;
- void *value;
-};
-
-#define MSM_GEMINI_EVT_RESET 0
-#define MSM_GEMINI_EVT_FRAMEDONE 1
-#define MSM_GEMINI_EVT_ERR 2
-
-struct msm_gemini_buf {
- uint32_t type;
- int fd;
-
- void *vaddr;
-
- uint32_t y_off;
- uint32_t y_len;
- uint32_t framedone_len;
-
- uint32_t cbcr_off;
- uint32_t cbcr_len;
-
- uint32_t num_of_mcu_rows;
- uint32_t offset;
-};
-
-#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
-#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
-struct msm_gemini_hw_cmd {
-
- uint32_t type:4;
-
- /* n microseconds of timeout for WAIT */
- /* n microseconds of time for DELAY */
- /* repeat n times for READ/WRITE */
- /* max is 0xFFF, 4095 */
- uint32_t n:12;
- uint32_t offset:16;
- uint32_t mask;
- union {
- uint32_t data; /* for single READ/WRITE/WAIT, n = 1 */
- uint32_t *pdata; /* for multiple READ/WRITE/WAIT, n > 1 */
- };
-};
-
-struct msm_gemini_hw_cmds {
- uint32_t m; /* number of elements in the hw_cmd array */
- struct msm_gemini_hw_cmd hw_cmd[1];
-};
-
-#endif /* __UAPI_MSM_GEMINI_H */
diff --git a/sdm710/original-kernel-headers/media/msm_gestures.h b/sdm710/original-kernel-headers/media/msm_gestures.h
deleted file mode 100644
index 2d6d8f2e..00000000
--- a/sdm710/original-kernel-headers/media/msm_gestures.h
+++ /dev/null
@@ -1,54 +0,0 @@
-#ifndef __UAPI_MSM_GESTURES_H
-#define __UAPI_MSM_GESTURES_H
-
-#include <linux/types.h>
-#include <linux/ioctl.h>
-#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)
-
-#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
-
-
-#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)
-#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)
-#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 {
- int type;
- void *value;
- int len;
- int fd;
- uint32_t cookie;
-};
-
-struct msm_ges_evt {
- void *evt_data;
- int evt_len;
-};
-
-#endif /*__UAPI_MSM_GESTURES_H*/
diff --git a/sdm710/original-kernel-headers/media/msm_isp.h b/sdm710/original-kernel-headers/media/msm_isp.h
deleted file mode 100644
index 90d87c24..00000000
--- a/sdm710/original-kernel-headers/media/msm_isp.h
+++ /dev/null
@@ -1,344 +0,0 @@
-#ifndef __UAPI_MSM_ISP_H__
-#define __UAPI_MSM_ISP_H__
-
-#define BIT(nr) (1UL << (nr))
-
-/* ISP message IDs */
-#define MSG_ID_RESET_ACK 0
-#define MSG_ID_START_ACK 1
-#define MSG_ID_STOP_ACK 2
-#define MSG_ID_UPDATE_ACK 3
-#define MSG_ID_OUTPUT_P 4
-#define MSG_ID_OUTPUT_T 5
-#define MSG_ID_OUTPUT_S 6
-#define MSG_ID_OUTPUT_V 7
-#define MSG_ID_SNAPSHOT_DONE 8
-#define MSG_ID_STATS_AEC 9
-#define MSG_ID_STATS_AF 10
-#define MSG_ID_STATS_AWB 11
-#define MSG_ID_STATS_RS 12
-#define MSG_ID_STATS_CS 13
-#define MSG_ID_STATS_IHIST 14
-#define MSG_ID_STATS_SKIN 15
-#define MSG_ID_EPOCH1 16
-#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
-#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
-#define MSG_ID_AE_OVERFLOW 25
-#define MSG_ID_AF_OVERFLOW 26
-#define MSG_ID_AWB_OVERFLOW 27
-#define MSG_ID_RS_OVERFLOW 28
-#define MSG_ID_CS_OVERFLOW 29
-#define MSG_ID_IHIST_OVERFLOW 30
-#define MSG_ID_SKIN_OVERFLOW 31
-#define MSG_ID_AXI_ERROR 32
-#define MSG_ID_CAMIF_OVERFLOW 33
-#define MSG_ID_VIOLATION 34
-#define MSG_ID_CAMIF_ERROR 35
-#define MSG_ID_BUS_OVERFLOW 36
-#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
-#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
-#define MSG_ID_OUTPUT_TERTIARY2 45
-#define MSG_ID_STATS_BG 46
-#define MSG_ID_STATS_BF 47
-#define MSG_ID_STATS_BHIST 48
-#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
-#define MSG_ID_PREV_STOP_ACK 53
-#define MSG_ID_STATS_BE 54
-
-
-/* ISP command IDs */
-#define VFE_CMD_DUMMY_0 0
-#define VFE_CMD_SET_CLK 1
-#define VFE_CMD_RESET 2
-#define VFE_CMD_START 3
-#define VFE_CMD_TEST_GEN_START 4
-#define VFE_CMD_OPERATION_CFG 5
-#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
-#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
-#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
-#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
-#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
-#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
-#define VFE_CMD_DUMMY_3 30
-#define VFE_CMD_UPDATE 31
-#define VFE_CMD_BL_LVL_UPDATE 32
-#define VFE_CMD_DEMUX_UPDATE 33
-#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
-#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
-#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
-#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
-#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
-#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
-#define VFE_CMD_EPOCH2_ACK 58
-#define VFE_CMD_START_RECORDING 59
-#define VFE_CMD_STOP_RECORDING 60
-#define VFE_CMD_DUMMY_5 61
-#define VFE_CMD_DUMMY_6 62
-#define VFE_CMD_CAPTURE 63
-#define VFE_CMD_DUMMY_7 64
-#define VFE_CMD_STOP 65
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#define VFE_CMD_LA_SETUP 102
-#define VFE_CMD_LINEARIZATION_CFG 103
-#define VFE_CMD_DEMOSAICV3 104
-#define VFE_CMD_DEMOSAICV3_ABCC_CFG 105
-#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
-#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
-#define VFE_CMD_ZSL 114
-#define VFE_CMD_LINEARIZATION_UPDATE 115
-#define VFE_CMD_DEMOSAICV3_ABF_UPDATE 116
-#define VFE_CMD_CLF_CFG 117
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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 {
- int32_t id;
- uint16_t length;
- void *value;
-};
-
-#define VPE_CMD_DUMMY_0 0
-#define VPE_CMD_INIT 1
-#define VPE_CMD_DEINIT 2
-#define VPE_CMD_ENABLE 3
-#define VPE_CMD_DISABLE 4
-#define VPE_CMD_RESET 5
-#define VPE_CMD_FLUSH 6
-#define VPE_CMD_OPERATION_MODE_CFG 7
-#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
-#define VPE_CMD_ZOOM 13
-#define VPE_CMD_MAX 14
-
-#define MSM_PP_CMD_TYPE_NOT_USED 0 /* not used */
-#define MSM_PP_CMD_TYPE_VPE 1 /* VPE cmd */
-#define MSM_PP_CMD_TYPE_MCTL 2 /* MCTL cmd */
-
-#define MCTL_CMD_DUMMY_0 0 /* not used */
-#define MCTL_CMD_GET_FRAME_BUFFER 1 /* reserve a free frame buffer */
-#define MCTL_CMD_PUT_FRAME_BUFFER 2 /* return the free frame buffer */
-#define MCTL_CMD_DIVERT_FRAME_PP_PATH 3 /* divert frame for pp */
-
-/* event typese sending to MCTL PP module */
-#define MCTL_PP_EVENT_NOTUSED 0
-#define MCTL_PP_EVENT_CMD_ACK 1
-
-#define VPE_OPERATION_MODE_CFG_LEN 4
-#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
-#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)
-
-#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)
-
-
-struct msm_vpe_op_mode_cfg {
- uint8_t op_mode_cfg[VPE_OPERATION_MODE_CFG_LEN];
-};
-
-struct msm_vpe_input_plane_cfg {
- 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];
-};
-
-struct msm_vpe_input_plane_update_cfg {
- uint8_t input_plane_update_cfg[VPE_INPUT_PLANE_UPDATE_LEN];
-};
-
-struct msm_vpe_scaler_cfg {
- uint8_t scaler_cfg[VPE_SCALER_CONFIG_LEN];
-};
-
-struct msm_vpe_flush_frame_buffer {
- uint32_t src_buf_handle;
- uint32_t dest_buf_handle;
- int path;
-};
-
-struct msm_mctl_pp_frame_buffer {
- uint32_t buf_handle;
- int path;
-};
-struct msm_mctl_pp_divert_pp {
- int path;
- int enable;
-};
-struct msm_vpe_clock_rate {
- uint32_t rate;
-};
-
-#define MSM_MCTL_PP_VPE_FRAME_ACK (1<<0)
-#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)
-#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)
-#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)
-#define VFE_OUTPUTS_RDI0 BIT(11)
-#define VFE_OUTPUTS_RDI1 BIT(12)
-
-struct msm_frame_info {
- uint32_t inst_handle;
- uint32_t path;
-};
-
-#endif /*__UAPI_MSM_ISP_H__*/
-
diff --git a/sdm710/original-kernel-headers/media/msm_jpeg.h b/sdm710/original-kernel-headers/media/msm_jpeg.h
deleted file mode 100644
index 897a1808..00000000
--- a/sdm710/original-kernel-headers/media/msm_jpeg.h
+++ /dev/null
@@ -1,125 +0,0 @@
-#ifndef __UAPI_LINUX_MSM_JPEG_H
-#define __UAPI_LINUX_MSM_JPEG_H
-
-#include <linux/types.h>
-#include <linux/ioctl.h>
-
-#define OUTPUT_H2V1 0
-#define OUTPUT_H2V2 1
-#define OUTPUT_BYTE 6
-
-#define MSM_JPEG_IOCTL_MAGIC 'g'
-
-#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)
-
-#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)
-
-#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)
-
-#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)
-
-#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
-
-struct msm_jpeg_ctrl_cmd {
- uint32_t type;
- uint32_t len;
- void *value;
-};
-
-#define MSM_JPEG_EVT_RESET 0
-#define MSM_JPEG_EVT_SESSION_DONE 1
-#define MSM_JPEG_EVT_ERR 2
-
-struct msm_jpeg_buf {
- uint32_t type;
- int fd;
-
- void *vaddr;
-
- uint32_t y_off;
- uint32_t y_len;
- uint32_t framedone_len;
-
- uint32_t cbcr_off;
- uint32_t cbcr_len;
-
- uint32_t num_of_mcu_rows;
- uint32_t offset;
- uint32_t pln2_off;
- uint32_t pln2_len;
-};
-
-#define MSM_JPEG_HW_CMD_TYPE_READ 0
-#define MSM_JPEG_HW_CMD_TYPE_WRITE 1
-#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
-#define MSM_JPEG_HW_CMD_TYPE_UDELAY 6
-struct msm_jpeg_hw_cmd {
-
- uint32_t type:4;
-
- /* n microseconds of timeout for WAIT */
- /* n microseconds of time for DELAY */
- /* repeat n times for READ/WRITE */
- /* max is 0xFFF, 4095 */
- uint32_t n:12;
- uint32_t offset:16;
- uint32_t mask;
- union {
- uint32_t data; /* for single READ/WRITE/WAIT, n = 1 */
- uint32_t *pdata; /* for multiple READ/WRITE/WAIT, n > 1 */
- };
-};
-
-struct msm_jpeg_hw_cmds {
- uint32_t m; /* number of elements in the hw_cmd array */
- struct msm_jpeg_hw_cmd hw_cmd[1];
-};
-
-#endif
-
diff --git a/sdm710/original-kernel-headers/media/msm_jpeg_dma.h b/sdm710/original-kernel-headers/media/msm_jpeg_dma.h
deleted file mode 100644
index a3eab9fb..00000000
--- a/sdm710/original-kernel-headers/media/msm_jpeg_dma.h
+++ /dev/null
@@ -1,28 +0,0 @@
-/* Copyright (c) 2015-2016, 2018, 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 __UAPI_MSM_JPEG_DMA__
-#define __UAPI_MSM_JPEG_DMA__
-
-#include <linux/videodev2.h>
-
-/* msm jpeg dma control ID's */
-#define V4L2_CID_JPEG_DMA_SPEED (V4L2_CID_PRIVATE_BASE)
-#define V4L2_CID_JPEG_DMA_MAX_DOWN_SCALE (V4L2_CID_PRIVATE_BASE + 1)
-
-/* msm_jpeg_dma_buf */
-struct msm_jpeg_dma_buff {
- int32_t fd;
- uint32_t offset;
-};
-
-#endif /* __UAPI_MSM_JPEG_DMA__ */
diff --git a/sdm710/original-kernel-headers/media/msm_media_info.h b/sdm710/original-kernel-headers/media/msm_media_info.h
deleted file mode 100644
index 0f4d7f75..00000000
--- a/sdm710/original-kernel-headers/media/msm_media_info.h
+++ /dev/null
@@ -1,1398 +0,0 @@
-#ifndef __MEDIA_INFO_H__
-#define __MEDIA_INFO_H__
-
-#ifndef MSM_MEDIA_ALIGN
-#define MSM_MEDIA_ALIGN(__sz, __align) (((__align) & ((__align) - 1)) ?\
- ((((__sz) + (__align) - 1) / (__align)) * (__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,
- /*
- * The buffer can be of 2 types:
- * (1) Venus NV12 UBWC Progressive
- * (2) Venus NV12 UBWC Interlaced
- *
- * (1) Venus NV12 UBWC Progressive Buffer Format:
- * 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)
- *
- *
- * (2) Venus NV12 UBWC Interlaced Buffer Format:
- * Compressed Macro-tile format for NV12 interlaced.
- * Contains 8 planes in the following order -
- * (A) Y_Meta_Top_Field_Plane
- * (B) Y_UBWC_Top_Field_Plane
- * (C) UV_Meta_Top_Field_Plane
- * (D) UV_UBWC_Top_Field_Plane
- * (E) Y_Meta_Bottom_Field_Plane
- * (F) Y_UBWC_Bottom_Field_Plane
- * (G) UV_Meta_Bottom_Field_Plane
- * (H) UV_UBWC_Bottom_Field_Plane
- * Y_Meta_Top_Field_Plane consists of meta information to decode
- * compressed tile data for Y_UBWC_Top_Field_Plane.
- * Y_UBWC_Top_Field_Plane consists of Y data in compressed macro-tile
- * format for top field of an interlaced frame.
- * UBWC decoder block will use the Y_Meta_Top_Field_Plane data together
- * with Y_UBWC_Top_Field_Plane data to produce loss-less uncompressed
- * 8 bit Y samples for top field of an interlaced frame.
- *
- * UV_Meta_Top_Field_Plane consists of meta information to decode
- * compressed tile data in UV_UBWC_Top_Field_Plane.
- * UV_UBWC_Top_Field_Plane consists of UV data in compressed macro-tile
- * format for top field of an interlaced frame.
- * UBWC decoder block will use UV_Meta_Top_Field_Plane data together
- * with UV_UBWC_Top_Field_Plane data to produce loss-less uncompressed
- * 8 bit subsampled color difference samples for top field of an
- * interlaced frame.
- *
- * Each tile in Y_UBWC_Top_Field_Plane/UV_UBWC_Top_Field_Plane is
- * independently decodable and randomly accessible. There is no
- * dependency between tiles.
- *
- * Y_Meta_Bottom_Field_Plane consists of meta information to decode
- * compressed tile data for Y_UBWC_Bottom_Field_Plane.
- * Y_UBWC_Bottom_Field_Plane consists of Y data in compressed macro-tile
- * format for bottom field of an interlaced frame.
- * UBWC decoder block will use the Y_Meta_Bottom_Field_Plane data
- * together with Y_UBWC_Bottom_Field_Plane data to produce loss-less
- * uncompressed 8 bit Y samples for bottom field of an interlaced frame.
- *
- * UV_Meta_Bottom_Field_Plane consists of meta information to decode
- * compressed tile data in UV_UBWC_Bottom_Field_Plane.
- * UV_UBWC_Bottom_Field_Plane consists of UV data in compressed
- * macro-tile format for bottom field of an interlaced frame.
- * UBWC decoder block will use UV_Meta_Bottom_Field_Plane data together
- * with UV_UBWC_Bottom_Field_Plane data to produce loss-less
- * uncompressed 8 bit subsampled color difference samples for bottom
- * field of an interlaced frame.
- *
- * Each tile in Y_UBWC_Bottom_Field_Plane/UV_UBWC_Bottom_Field_Plane is
- * independently decodable and randomly accessible. There is no
- * dependency between tiles.
- *
- * <-----Y_TF_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 . . Half_height |
- * M M M M M M M M M M M M . . | Meta_Y_TF_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_TF 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* . . . . Half_height |
- * Y* Y* Y* Y* Y* Y* Y* Y* . . . . | Macro_tile_Y_TF_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_TF_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_TF_Scanlines
- * . . . . . . . . . . . . . . |
- * . . . . . . . . . . . . . . V
- * . . . . . . . . . . . . . . -------> Buffer size aligned to 4k
- * <-Compressed tile UV_TF 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_TF_Scanlines
- * . . . . . . . . . . . . . . . . |
- * . . . . . . . . . . . . . . . . V
- * . . . . . . . . . . . . . . . . -------> Buffer size aligned to 4k
- * <-----Y_BF_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 . . Half_height |
- * M M M M M M M M M M M M . . | Meta_Y_BF_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_BF 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* . . . . Half_height |
- * Y* Y* Y* Y* Y* Y* Y* Y* . . . . | Macro_tile_Y_BF_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_BF_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_BF_Scanlines
- * . . . . . . . . . . . . . . |
- * . . . . . . . . . . . . . . V
- * . . . . . . . . . . . . . . -------> Buffer size aligned to 4k
- * <-Compressed tile UV_BF 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_BF_Scanlines
- * . . . . . . . . . . . . . . . . |
- * . . . . . . . . . . . . . . . . V
- * . . . . . . . . . . . . . . . . -------> Buffer size aligned to 4k
- *
- * Half_height = (Height+1)>>1
- * Y_TF_Stride = align(Width, 128)
- * UV_TF_Stride = align(Width, 128)
- * Y_TF_Scanlines = align(Half_height, 32)
- * UV_TF_Scanlines = align((Half_height+1)/2, 32)
- * Y_UBWC_TF_Plane_size = align(Y_TF_Stride * Y_TF_Scanlines, 4096)
- * UV_UBWC_TF_Plane_size = align(UV_TF_Stride * UV_TF_Scanlines, 4096)
- * Y_TF_Meta_Stride = align(roundup(Width, Y_TileWidth), 64)
- * Y_TF_Meta_Scanlines = align(roundup(Half_height, Y_TileHeight), 16)
- * Y_TF_Meta_Plane_size =
- * align(Y_TF_Meta_Stride * Y_TF_Meta_Scanlines, 4096)
- * UV_TF_Meta_Stride = align(roundup(Width, UV_TileWidth), 64)
- * UV_TF_Meta_Scanlines = align(roundup(Half_height, UV_TileHeight), 16)
- * UV_TF_Meta_Plane_size =
- * align(UV_TF_Meta_Stride * UV_TF_Meta_Scanlines, 4096)
- * Y_BF_Stride = align(Width, 128)
- * UV_BF_Stride = align(Width, 128)
- * Y_BF_Scanlines = align(Half_height, 32)
- * UV_BF_Scanlines = align((Half_height+1)/2, 32)
- * Y_UBWC_BF_Plane_size = align(Y_BF_Stride * Y_BF_Scanlines, 4096)
- * UV_UBWC_BF_Plane_size = align(UV_BF_Stride * UV_BF_Scanlines, 4096)
- * Y_BF_Meta_Stride = align(roundup(Width, Y_TileWidth), 64)
- * Y_BF_Meta_Scanlines = align(roundup(Half_height, Y_TileHeight), 16)
- * Y_BF_Meta_Plane_size =
- * align(Y_BF_Meta_Stride * Y_BF_Meta_Scanlines, 4096)
- * UV_BF_Meta_Stride = align(roundup(Width, UV_TileWidth), 64)
- * UV_BF_Meta_Scanlines = align(roundup(Half_height, UV_TileHeight), 16)
- * UV_BF_Meta_Plane_size =
- * align(UV_BF_Meta_Stride * UV_BF_Meta_Scanlines, 4096)
- * Extradata = 8k
- *
- * Total size = align( Y_UBWC_TF_Plane_size + UV_UBWC_TF_Plane_size +
- * Y_TF_Meta_Plane_size + UV_TF_Meta_Plane_size +
- * Y_UBWC_BF_Plane_size + UV_UBWC_BF_Plane_size +
- * Y_BF_Meta_Plane_size + UV_BF_Meta_Plane_size +
- * + max(Extradata, Y_TF_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,
- /* Venus RGBA1010102 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, 256)
- * RGB_Scanlines = align(Height, 16)
- * 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_RGBA1010102_UBWC,
- /* Venus RGB565 UBWC format:
- * Contains 2 planes in the following order -
- * (A) Meta plane
- * (B) RGB 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 * 2, 128)
- * RGB_Scanlines = align(Height, 16)
- * 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_RGB565_UBWC,
- /* P010 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 * 2, 256)
- * UV_Stride = align(Width * 2, 256)
- * Y_Scanlines = align(Height, 16)
- * 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_P010_UBWC,
- /* Venus P010:
- * YUV 4:2:0 image with a plane of 10 bit Y samples followed
- * by an interleaved U/V plane containing 10 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 * 2 aligned to 128
- * UV_Stride : Width * 2 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_P010,
-};
-
-#define COLOR_FMT_RGBA1010102_UBWC COLOR_FMT_RGBA1010102_UBWC
-#define COLOR_FMT_RGB565_UBWC COLOR_FMT_RGB565_UBWC
-#define COLOR_FMT_P010_UBWC COLOR_FMT_P010_UBWC
-#define COLOR_FMT_P010 COLOR_FMT_P010
-
-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;
-}
-
-/*
- * Function arguments:
- * @color_fmt
- * @width
- * Progressive: width
- * Interlaced: width
- */
-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;
- case COLOR_FMT_P010_UBWC:
- alignment = 256;
- stride = MSM_MEDIA_ALIGN(width * 2, alignment);
- break;
- case COLOR_FMT_P010:
- alignment = 128;
- stride = MSM_MEDIA_ALIGN(width*2, alignment);
- break;
- default:
- break;
- }
-invalid_input:
- return stride;
-}
-
-/*
- * Function arguments:
- * @color_fmt
- * @width
- * Progressive: width
- * Interlaced: width
- */
-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;
- case COLOR_FMT_P010_UBWC:
- alignment = 256;
- stride = MSM_MEDIA_ALIGN(width * 2, alignment);
- break;
- case COLOR_FMT_P010:
- alignment = 128;
- stride = MSM_MEDIA_ALIGN(width*2, alignment);
- break;
- default:
- break;
- }
-invalid_input:
- return stride;
-}
-
-/*
- * Function arguments:
- * @color_fmt
- * @height
- * Progressive: height
- * Interlaced: (height+1)>>1
- */
-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:
- case COLOR_FMT_P010:
- alignment = 32;
- break;
- case COLOR_FMT_NV12_BPP10_UBWC:
- case COLOR_FMT_P010_UBWC:
- alignment = 16;
- break;
- default:
- return 0;
- }
- sclines = MSM_MEDIA_ALIGN(height, alignment);
-invalid_input:
- return sclines;
-}
-
-/*
- * Function arguments:
- * @color_fmt
- * @height
- * Progressive: height
- * Interlaced: (height+1)>>1
- */
-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:
- case COLOR_FMT_P010_UBWC:
- case COLOR_FMT_P010:
- alignment = 16;
- break;
- case COLOR_FMT_NV12_UBWC:
- alignment = 32;
- break;
- default:
- goto invalid_input;
- }
-
- sclines = MSM_MEDIA_ALIGN((height+1)>>1, alignment);
-
-invalid_input:
- return sclines;
-}
-
-/*
- * Function arguments:
- * @color_fmt
- * @width
- * Progressive: width
- * Interlaced: width
- */
-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:
- case COLOR_FMT_P010_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;
-}
-
-/*
- * Function arguments:
- * @color_fmt
- * @height
- * Progressive: height
- * Interlaced: (height+1)>>1
- */
-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:
- case COLOR_FMT_P010_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;
-}
-
-/*
- * Function arguments:
- * @color_fmt
- * @width
- * Progressive: width
- * Interlaced: width
- */
-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:
- case COLOR_FMT_P010_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+1)>>1, uv_tile_width);
- uv_meta_stride = MSM_MEDIA_ALIGN(uv_meta_stride, 64);
-
-invalid_input:
- return uv_meta_stride;
-}
-
-/*
- * Function arguments:
- * @color_fmt
- * @height
- * Progressive: height
- * Interlaced: (height+1)>>1
- */
-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:
- case COLOR_FMT_P010_UBWC:
- uv_tile_height = 4;
- break;
- default:
- goto invalid_input;
- }
-
- uv_meta_scanlines = MSM_MEDIA_ROUNDUP((height+1)>>1, 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, bpp = 4;
-
- if (!width)
- goto invalid_input;
-
- switch (color_fmt) {
- case COLOR_FMT_RGBA8888:
- alignment = 128;
- break;
- case COLOR_FMT_RGB565_UBWC:
- alignment = 256;
- bpp = 2;
- break;
- case COLOR_FMT_RGBA8888_UBWC:
- case COLOR_FMT_RGBA1010102_UBWC:
- alignment = 256;
- break;
- default:
- goto invalid_input;
- }
-
- stride = MSM_MEDIA_ALIGN(width * bpp, 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:
- case COLOR_FMT_RGBA1010102_UBWC:
- case COLOR_FMT_RGB565_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:
- case COLOR_FMT_RGBA1010102_UBWC:
- case COLOR_FMT_RGB565_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:
- case COLOR_FMT_RGBA1010102_UBWC:
- case COLOR_FMT_RGB565_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;
-}
-
-/*
- * Function arguments:
- * @color_fmt
- * @width
- * Progressive: width
- * Interlaced: width
- * @height
- * Progressive: height
- * Interlaced: height
- */
-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 w_alignment = 512;
- 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);
-
- /* Additional size to cover last row of non-aligned frame */
- if (width >= 2400 && height >= 2400) {
- size += MSM_MEDIA_ALIGN(width, w_alignment) *
- w_alignment;
- size = MSM_MEDIA_ALIGN(size, 4096);
- }
- break;
- case COLOR_FMT_P010:
- 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:
- y_sclines = VENUS_Y_SCANLINES(color_fmt, (height+1)>>1);
- y_ubwc_plane = MSM_MEDIA_ALIGN(y_stride * y_sclines, 4096);
- uv_sclines = VENUS_UV_SCANLINES(color_fmt, (height+1)>>1);
- 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+1)>>1);
- 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+1)>>1);
- 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)*2 +
- MSM_MEDIA_MAX(extra_size + 8192, 48 * y_stride);
- size = MSM_MEDIA_ALIGN(size, 4096);
-
- /* Additional size to cover last row of non-aligned frame */
- if (width >= 2400 && height >= 2400) {
- size += MSM_MEDIA_ALIGN(width, w_alignment) *
- w_alignment;
- size = MSM_MEDIA_ALIGN(size, 4096);
- }
- break;
- 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_P010_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;
- 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:
- case COLOR_FMT_RGBA1010102_UBWC:
- case COLOR_FMT_RGB565_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
diff --git a/sdm710/original-kernel-headers/media/msm_mercury.h b/sdm710/original-kernel-headers/media/msm_mercury.h
deleted file mode 100644
index 607a8c8d..00000000
--- a/sdm710/original-kernel-headers/media/msm_mercury.h
+++ /dev/null
@@ -1,119 +0,0 @@
-#ifndef __UAPI_MSM_MERCURY_H
-#define __UAPI_MSM_MERCURY_H
-
-#include <linux/types.h>
-#include <linux/ioctl.h>
-
-#define MSM_MERCURY_HW_VERSION_REG 0x0004/* this offset does not exist in HW*/
-
-#define OUTPUT_H2V1 0
-#define OUTPUT_H2V2 1
-#define OUTPUT_BYTE 6
-
-#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
-
-#define MSM_MERCURY_EVT_RESET 1
-#define MSM_MERCURY_EVT_FRAMEDONE 2
-#define MSM_MERCURY_EVT_ERR 3
-#define MSM_MERCURY_EVT_UNBLOCK 4
-
-#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
-#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'
-
-#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 *)
-
-#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 *)
-
-#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)
-
-#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 {
- uint32_t type;
- uint32_t len;
- void *value;
-};
-
-struct msm_mercury_buf {
- uint32_t type;
- int fd;
- void *vaddr;
- uint32_t y_off;
- uint32_t y_len;
- uint32_t framedone_len;
- uint32_t cbcr_off;
- uint32_t cbcr_len;
- uint32_t num_of_mcu_rows;
- uint32_t offset;
-};
-
-struct msm_mercury_hw_cmd {
-
- uint32_t type:4;
- /* n microseconds of timeout for WAIT */
- /* n microseconds of time for DELAY */
- /* repeat n times for READ/WRITE */
- /* max is 0xFFF, 4095 */
- uint32_t n:12;
- uint32_t offset:16;
- uint32_t mask;
- union {
- /* for single READ/WRITE/WAIT, n = 1 */
- uint32_t data;
- uint32_t *pdata;/* for multiple READ/WRITE/WAIT, n > 1 */
- };
-};
-
-struct msm_mercury_hw_cmds {
- uint32_t m; /* number of elements in the hw_cmd array */
- struct msm_mercury_hw_cmd hw_cmd[1];
-};
-
-#endif /* __UAPI_MSM_MERCURY_H */
diff --git a/sdm710/original-kernel-headers/media/msm_sde_rotator.h b/sdm710/original-kernel-headers/media/msm_sde_rotator.h
deleted file mode 100644
index dcdbb85b..00000000
--- a/sdm710/original-kernel-headers/media/msm_sde_rotator.h
+++ /dev/null
@@ -1,117 +0,0 @@
-#ifndef __UAPI_MSM_SDE_ROTATOR_H__
-#define __UAPI_MSM_SDE_ROTATOR_H__
-
-#include <linux/videodev2.h>
-#include <linux/types.h>
-#include <linux/ioctl.h>
-
-/* SDE Rotator pixel format definitions */
-#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_PIX_FMT_SDE_ABGR_8888
-#define SDE_PIX_FMT_RGBA_8888 V4L2_PIX_FMT_SDE_RGBA_8888
-#define SDE_PIX_FMT_BGRA_8888 V4L2_PIX_FMT_ARGB32
-#define SDE_PIX_FMT_RGBX_8888 V4L2_PIX_FMT_SDE_RGBX_8888
-#define SDE_PIX_FMT_BGRX_8888 V4L2_PIX_FMT_XRGB32
-#define SDE_PIX_FMT_XBGR_8888 V4L2_PIX_FMT_SDE_XBGR_8888
-#define SDE_PIX_FMT_RGBA_5551 V4L2_PIX_FMT_SDE_RGBA_5551
-#define SDE_PIX_FMT_ARGB_1555 V4L2_PIX_FMT_ARGB555
-#define SDE_PIX_FMT_ABGR_1555 V4L2_PIX_FMT_SDE_ABGR_1555
-#define SDE_PIX_FMT_BGRA_5551 V4L2_PIX_FMT_SDE_BGRA_5551
-#define SDE_PIX_FMT_BGRX_5551 V4L2_PIX_FMT_SDE_BGRX_5551
-#define SDE_PIX_FMT_RGBX_5551 V4L2_PIX_FMT_SDE_RGBX_5551
-#define SDE_PIX_FMT_XBGR_1555 V4L2_PIX_FMT_SDE_XBGR_1555
-#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_PIX_FMT_SDE_RGBA_4444
-#define SDE_PIX_FMT_BGRA_4444 V4L2_PIX_FMT_SDE_BGRA_4444
-#define SDE_PIX_FMT_ABGR_4444 V4L2_PIX_FMT_SDE_ABGR_4444
-#define SDE_PIX_FMT_RGBX_4444 V4L2_PIX_FMT_SDE_RGBX_4444
-#define SDE_PIX_FMT_XRGB_4444 V4L2_PIX_FMT_XRGB444
-#define SDE_PIX_FMT_BGRX_4444 V4L2_PIX_FMT_SDE_BGRX_4444
-#define SDE_PIX_FMT_XBGR_4444 V4L2_PIX_FMT_SDE_XBGR_4444
-#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
-#define SDE_PIX_FMT_BGR_565 V4L2_PIX_FMT_SDE_BGR_565
-#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_PIX_FMT_SDE_Y_CR_CB_GH2V2
-#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_PIX_FMT_SDE_Y_CBCR_H1V2
-#define SDE_PIX_FMT_Y_CRCB_H1V2 V4L2_PIX_FMT_SDE_Y_CRCB_H1V2
-#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_PIX_FMT_SDE_Y_CBCR_H2V2_VENUS
-#define SDE_PIX_FMT_Y_CRCB_H2V2_VENUS V4L2_PIX_FMT_SDE_Y_CRCB_H2V2_VENUS
-#define SDE_PIX_FMT_RGBA_8888_UBWC V4L2_PIX_FMT_RGBA8888_UBWC
-#define SDE_PIX_FMT_RGBX_8888_UBWC V4L2_PIX_FMT_SDE_RGBX_8888_UBWC
-#define SDE_PIX_FMT_RGB_565_UBWC V4L2_PIX_FMT_SDE_RGB_565_UBWC
-#define SDE_PIX_FMT_Y_CBCR_H2V2_UBWC V4L2_PIX_FMT_NV12_UBWC
-#define SDE_PIX_FMT_RGBA_1010102 V4L2_PIX_FMT_SDE_RGBA_1010102
-#define SDE_PIX_FMT_RGBX_1010102 V4L2_PIX_FMT_SDE_RGBX_1010102
-#define SDE_PIX_FMT_ARGB_2101010 V4L2_PIX_FMT_SDE_ARGB_2101010
-#define SDE_PIX_FMT_XRGB_2101010 V4L2_PIX_FMT_SDE_XRGB_2101010
-#define SDE_PIX_FMT_BGRA_1010102 V4L2_PIX_FMT_SDE_BGRA_1010102
-#define SDE_PIX_FMT_BGRX_1010102 V4L2_PIX_FMT_SDE_BGRX_1010102
-#define SDE_PIX_FMT_ABGR_2101010 V4L2_PIX_FMT_SDE_ABGR_2101010
-#define SDE_PIX_FMT_XBGR_2101010 V4L2_PIX_FMT_SDE_XBGR_2101010
-#define SDE_PIX_FMT_RGBA_1010102_UBWC V4L2_PIX_FMT_SDE_RGBA_1010102_UBWC
-#define SDE_PIX_FMT_RGBX_1010102_UBWC V4L2_PIX_FMT_SDE_RGBX_1010102_UBWC
-#define SDE_PIX_FMT_Y_CBCR_H2V2_P010 V4L2_PIX_FMT_SDE_Y_CBCR_H2V2_P010
-#define SDE_PIX_FMT_Y_CBCR_H2V2_P010_VENUS \
- V4L2_PIX_FMT_SDE_Y_CBCR_H2V2_P010_VENUS
-#define SDE_PIX_FMT_Y_CBCR_H2V2_TP10 V4L2_PIX_FMT_SDE_Y_CBCR_H2V2_TP10
-#define SDE_PIX_FMT_Y_CBCR_H2V2_TP10_UBWC V4L2_PIX_FMT_NV12_TP10_UBWC
-#define SDE_PIX_FMT_Y_CBCR_H2V2_P010_UBWC V4L2_PIX_FMT_NV12_P010_UBWC
-
-/*
- * struct msm_sde_rotator_fence - v4l2 buffer fence info
- * @index: id number of the buffer
- * @type: enum v4l2_buf_type; buffer type
- * @fd: file descriptor of the fence associated with this buffer
- */
-struct msm_sde_rotator_fence {
- __u32 index;
- __u32 type;
- __s32 fd;
- __u32 reserved[5];
-};
-
-/*
- * struct msm_sde_rotator_comp_ratio - v4l2 buffer compression ratio
- * @index: id number of the buffer
- * @type: enum v4l2_buf_type; buffer type
- * @numer: numerator of the ratio
- * @denom: denominator of the ratio
- */
-struct msm_sde_rotator_comp_ratio {
- __u32 index;
- __u32 type;
- __u32 numer;
- __u32 denom;
- __u32 reserved[4];
-};
-
-/* SDE Rotator private ioctl ID */
-#define VIDIOC_G_SDE_ROTATOR_FENCE \
- _IOWR('V', BASE_VIDIOC_PRIVATE + 10, struct msm_sde_rotator_fence)
-#define VIDIOC_S_SDE_ROTATOR_FENCE \
- _IOWR('V', BASE_VIDIOC_PRIVATE + 11, struct msm_sde_rotator_fence)
-#define VIDIOC_G_SDE_ROTATOR_COMP_RATIO \
- _IOWR('V', BASE_VIDIOC_PRIVATE + 12, struct msm_sde_rotator_comp_ratio)
-#define VIDIOC_S_SDE_ROTATOR_COMP_RATIO \
- _IOWR('V', BASE_VIDIOC_PRIVATE + 13, struct msm_sde_rotator_comp_ratio)
-
-/* SDE Rotator private control ID's */
-#define V4L2_CID_SDE_ROTATOR_SECURE (V4L2_CID_USER_BASE + 0x1000)
-
-/*
- * This control Id indicates this context is associated with the
- * secure camera.
- */
-#define V4L2_CID_SDE_ROTATOR_SECURE_CAMERA (V4L2_CID_USER_BASE + 0x2000)
-
-#endif /* __UAPI_MSM_SDE_ROTATOR_H__ */
diff --git a/sdm710/original-kernel-headers/media/msm_vidc.h b/sdm710/original-kernel-headers/media/msm_vidc.h
deleted file mode 100644
index cac2b326..00000000
--- a/sdm710/original-kernel-headers/media/msm_vidc.h
+++ /dev/null
@@ -1,423 +0,0 @@
-#ifndef __MSM_VIDC_H__
-#define __MSM_VIDC_H__
-
-#include <linux/types.h>
-
-#define MSM_VIDC_HAL_INTERLACE_COLOR_FORMAT_NV12 0x2
-#define MSM_VIDC_HAL_INTERLACE_COLOR_FORMAT_NV12_UBWC 0x8002
-#define MSM_VIDC_4x_1 0x1
-#define MSM_VIDC_EXTRADATA_FRAME_QP_ADV 0x1
-
-struct msm_vidc_extradata_header {
- unsigned int size;
- unsigned int:32; /** Keeping binary compatibility */
- unsigned int:32; /* with firmware and OpenMAX IL **/
- unsigned int type; /* msm_vidc_extradata_type */
- unsigned int data_size;
- unsigned char data[1];
-};
-
-struct msm_vidc_interlace_payload {
- unsigned int format;
- unsigned int color_format;
-};
-
-struct msm_vidc_framerate_payload {
- unsigned int frame_rate;
-};
-
-struct msm_vidc_ts_payload {
- unsigned int timestamp_lo;
- unsigned int timestamp_hi;
-};
-
-struct msm_vidc_concealmb_payload {
- unsigned int num_mbs;
-};
-
-struct msm_vidc_recoverysei_payload {
- unsigned int flags;
-};
-
-struct msm_vidc_aspect_ratio_payload {
- unsigned int size;
- unsigned int version;
- unsigned int port_index;
- unsigned int aspect_width;
- unsigned int aspect_height;
-};
-
-struct msm_vidc_mpeg2_seqdisp_payload {
- unsigned int video_format;
- unsigned int color_descp;
- unsigned int color_primaries;
- unsigned int transfer_char;
- unsigned int matrix_coeffs;
- unsigned int disp_width;
- unsigned int disp_height;
-};
-
-struct msm_vidc_vc1_seqdisp_payload {
- unsigned int prog_seg_format;
- unsigned int uv_sampl_fmt;
- unsigned int color_format;
- unsigned int color_primaries;
- unsigned int transfer_char;
- unsigned int matrix_coeffs;
- unsigned int aspect_ratio;
- unsigned int aspect_horiz;
- unsigned int aspect_vert;
-};
-
-struct msm_vidc_input_crop_payload {
- unsigned int size;
- unsigned int version;
- unsigned int port_index;
- unsigned int left;
- unsigned int top;
- unsigned int width;
- unsigned int height;
-};
-
-struct msm_vidc_misr_info {
- unsigned int misr_dpb_luma;
- unsigned int misr_dpb_chroma;
- unsigned int misr_opb_luma;
- unsigned int misr_opb_chroma;
-};
-struct msm_vidc_output_crop_payload {
- unsigned int size;
- unsigned int version;
- unsigned int port_index;
- unsigned int left;
- unsigned int top;
- unsigned int display_width;
- unsigned int display_height;
- unsigned int width;
- unsigned int height;
- unsigned int frame_num;
- unsigned int bit_depth_y;
- unsigned int bit_depth_c;
- struct msm_vidc_misr_info misr_info[2];
-};
-
-
-struct msm_vidc_digital_zoom_payload {
- unsigned int size;
- unsigned int version;
- unsigned int port_index;
- unsigned int zoom_width;
- unsigned int zoom_height;
-};
-
-struct msm_vidc_extradata_index {
- unsigned int type;
- union {
- struct msm_vidc_input_crop_payload input_crop;
- struct msm_vidc_digital_zoom_payload digital_zoom;
- struct msm_vidc_aspect_ratio_payload aspect_ratio;
- };
-};
-
-struct msm_vidc_panscan_window {
- unsigned int panscan_height_offset;
- unsigned int panscan_width_offset;
- unsigned int panscan_window_width;
- unsigned int panscan_window_height;
-};
-
-struct msm_vidc_panscan_window_payload {
- unsigned int num_panscan_windows;
- struct msm_vidc_panscan_window wnd[1];
-};
-
-struct msm_vidc_stream_userdata_payload {
- unsigned int type;
- unsigned int data[1];
-};
-
-struct msm_vidc_frame_qp_payload {
- unsigned int frame_qp;
- unsigned int qp_sum;
- unsigned int skip_qp_sum;
- unsigned int skip_num_blocks;
- unsigned int total_num_blocks;
-};
-
-struct msm_vidc_frame_bits_info_payload {
- unsigned int frame_bits;
- unsigned int header_bits;
-};
-
-struct msm_vidc_s3d_frame_packing_payload {
- unsigned int fpa_id;
- unsigned int cancel_flag;
- unsigned int fpa_type;
- unsigned int quin_cunx_flag;
- unsigned int content_interprtation_type;
- unsigned int spatial_flipping_flag;
- unsigned int frame0_flipped_flag;
- unsigned int field_views_flag;
- unsigned int current_frame_is_frame0_flag;
- unsigned int frame0_self_contained_flag;
- unsigned int frame1_self_contained_flag;
- unsigned int frame0_graid_pos_x;
- unsigned int frame0_graid_pos_y;
- unsigned int frame1_graid_pos_x;
- unsigned int frame1_graid_pos_y;
- unsigned int fpa_reserved_byte;
- unsigned int fpa_repetition_period;
- unsigned int fpa_extension_flag;
-};
-
-struct msm_vidc_vqzip_sei_payload {
- unsigned int size;
- unsigned int data[1];
-};
-
-struct msm_vidc_ubwc_cr_stats_info {
- unsigned int stats_tile_32;
- unsigned int stats_tile_64;
- unsigned int stats_tile_96;
- unsigned int stats_tile_128;
- unsigned int stats_tile_160;
- unsigned int stats_tile_192;
- unsigned int stats_tile_256;
-};
-
-struct msm_vidc_yuv_stats_payload {
- unsigned int frame_qp;
- unsigned int texture;
- unsigned int luma_in_q16;
- unsigned int frame_difference;
-};
-
-struct msm_vidc_vpx_colorspace_payload {
- unsigned int color_space;
- unsigned int yuv_range_flag;
- unsigned int sumsampling_x;
- unsigned int sumsampling_y;
-};
-
-struct msm_vidc_roi_qp_payload {
- int upper_qp_offset;
- int lower_qp_offset;
- unsigned int b_roi_info;
- int mbi_info_size;
- unsigned int data[1];
-};
-
-struct msm_vidc_mastering_display_colour_sei_payload {
- unsigned int nDisplayPrimariesX[3];
- unsigned int nDisplayPrimariesY[3];
- unsigned int nWhitePointX;
- unsigned int nWhitePointY;
- unsigned int nMaxDisplayMasteringLuminance;
- unsigned int nMinDisplayMasteringLuminance;
-};
-
-struct msm_vidc_content_light_level_sei_payload {
- unsigned int nMaxContentLight;
- unsigned int nMaxPicAverageLight;
-};
-
-struct msm_vidc_vui_display_info_payload {
- unsigned int video_signal_present_flag;
- unsigned int video_format;
- unsigned int bit_depth_y;
- unsigned int bit_depth_c;
- unsigned int video_full_range_flag;
- unsigned int color_description_present_flag;
- unsigned int color_primaries;
- unsigned int transfer_characteristics;
- unsigned int matrix_coefficients;
- unsigned int chroma_location_info_present_flag;
- unsigned int chroma_format_idc;
- unsigned int separate_color_plane_flag;
- unsigned int chroma_sample_loc_type_top_field;
- unsigned int chroma_sample_loc_type_bottom_field;
-};
-
-enum msm_vidc_extradata_type {
- MSM_VIDC_EXTRADATA_NONE = 0x00000000,
- MSM_VIDC_EXTRADATA_MB_QUANTIZATION = 0x00000001,
- MSM_VIDC_EXTRADATA_INTERLACE_VIDEO = 0x00000002,
- MSM_VIDC_EXTRADATA_VC1_FRAMEDISP = 0x00000003,
- MSM_VIDC_EXTRADATA_VC1_SEQDISP = 0x00000004,
- MSM_VIDC_EXTRADATA_TIMESTAMP = 0x00000005,
- MSM_VIDC_EXTRADATA_S3D_FRAME_PACKING = 0x00000006,
- MSM_VIDC_EXTRADATA_FRAME_RATE = 0x00000007,
- 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,
- 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,
-#define MSM_VIDC_EXTRADATA_VPX_COLORSPACE_INFO \
- MSM_VIDC_EXTRADATA_VPX_COLORSPACE_INFO
- MSM_VIDC_EXTRADATA_VPX_COLORSPACE_INFO = 0x00000014,
-#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,
-#define MSM_VIDC_EXTRADATA_PQ_INFO \
- MSM_VIDC_EXTRADATA_PQ_INFO
- MSM_VIDC_EXTRADATA_PQ_INFO = 0x00000017,
-#define MSM_VIDC_EXTRADATA_COLOUR_REMAPPING_INFO_SEI \
- MSM_VIDC_EXTRADATA_COLOUR_REMAPPING_INFO_SEI
- MSM_VIDC_EXTRADATA_COLOUR_REMAPPING_INFO_SEI = 0x00000018,
-#define MSM_VIDC_EXTRADATA_UBWC_CR_STAT_INFO \
- MSM_VIDC_EXTRADATA_UBWC_CR_STAT_INFO
- MSM_VIDC_EXTRADATA_UBWC_CR_STAT_INFO = 0x00000019,
- 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,
- MSM_VIDC_EXTRADATA_MULTISLICE_INFO = 0x7F100000,
- MSM_VIDC_EXTRADATA_NUM_CONCEALED_MB = 0x7F100001,
- MSM_VIDC_EXTRADATA_INDEX = 0x7F100002,
- MSM_VIDC_EXTRADATA_ASPECT_RATIO = 0x7F100003,
- MSM_VIDC_EXTRADATA_METADATA_LTR = 0x7F100004,
- MSM_VIDC_EXTRADATA_METADATA_FILLER = 0x7FE00002,
- MSM_VIDC_EXTRADATA_METADATA_MBI = 0x7F100005,
-#define MSM_VIDC_EXTRADATA_VUI_DISPLAY_INFO \
- MSM_VIDC_EXTRADATA_VUI_DISPLAY_INFO
- MSM_VIDC_EXTRADATA_VUI_DISPLAY_INFO = 0x7F100006,
- MSM_VIDC_EXTRADATA_YUVSTATS_INFO = 0x7F100007,
-};
-enum msm_vidc_interlace_type {
- MSM_VIDC_INTERLACE_FRAME_PROGRESSIVE = 0x01,
- MSM_VIDC_INTERLACE_INTERLEAVE_FRAME_TOPFIELDFIRST = 0x02,
- MSM_VIDC_INTERLACE_INTERLEAVE_FRAME_BOTTOMFIELDFIRST = 0x04,
- MSM_VIDC_INTERLACE_FRAME_TOPFIELDFIRST = 0x08,
- MSM_VIDC_INTERLACE_FRAME_BOTTOMFIELDFIRST = 0x10,
-#define MSM_VIDC_INTERLACE_FRAME_MBAFF \
- MSM_VIDC_INTERLACE_FRAME_MBAFF
- MSM_VIDC_INTERLACE_FRAME_MBAFF = 0x20,
-};
-
-/* enum msm_vidc_framepack_type */
-#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
-#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,
- MSM_VIDC_FRAME_RECONSTRUCTION_CORRECT = 0x01,
- MSM_VIDC_FRAME_RECONSTRUCTION_APPROXIMATELY_CORRECT = 0x02,
-};
-enum msm_vidc_userdata_type {
- MSM_VIDC_USERDATA_TYPE_FRAME = 0x1,
- MSM_VIDC_USERDATA_TYPE_TOP_FIELD = 0x2,
- MSM_VIDC_USERDATA_TYPE_BOTTOM_FIELD = 0x3,
-};
-
-/* See colour_primaries of ISO/IEC 14496 for significance */
-enum msm_vidc_h264_color_primaries_values {
- MSM_VIDC_RESERVED_1 = 0,
- MSM_VIDC_BT709_5 = 1,
- MSM_VIDC_UNSPECIFIED = 2,
- MSM_VIDC_RESERVED_2 = 3,
- MSM_VIDC_BT470_6_M = 4,
- MSM_VIDC_BT601_6_625 = 5,
- MSM_VIDC_BT470_6_BG = MSM_VIDC_BT601_6_625,
- MSM_VIDC_BT601_6_525 = 6,
- MSM_VIDC_SMPTE_240M = 7,
- MSM_VIDC_GENERIC_FILM = 8,
- MSM_VIDC_BT2020 = 9,
-};
-
-enum msm_vidc_vp9_color_primaries_values {
- MSM_VIDC_CS_UNKNOWN,
- MSM_VIDC_CS_BT_601,
- MSM_VIDC_CS_BT_709,
- MSM_VIDC_CS_SMPTE_170,
- MSM_VIDC_CS_SMPTE_240,
- MSM_VIDC_CS_BT_2020,
- MSM_VIDC_CS_RESERVED,
- MSM_VIDC_CS_RGB,
-};
-
-enum msm_vidc_h264_matrix_coeff_values {
- MSM_VIDC_MATRIX_RGB = 0,
- MSM_VIDC_MATRIX_BT_709_5 = 1,
- MSM_VIDC_MATRIX_UNSPECIFIED = 2,
- MSM_VIDC_MATRIX_RESERVED = 3,
- MSM_VIDC_MATRIX_FCC_47 = 4,
- MSM_VIDC_MATRIX_601_6_625 = 5,
- MSM_VIDC_MATRIX_BT470_BG = MSM_VIDC_MATRIX_601_6_625,
- MSM_VIDC_MATRIX_601_6_525 = 6,
- MSM_VIDC_MATRIX_SMPTE_170M = MSM_VIDC_MATRIX_601_6_525,
- MSM_VIDC_MATRIX_SMPTE_240M = 7,
- MSM_VIDC_MATRIX_Y_CG_CO = 8,
- MSM_VIDC_MATRIX_BT_2020 = 9,
- MSM_VIDC_MATRIX_BT_2020_CONST = 10,
-};
-
-enum msm_vidc_h264_transfer_chars_values {
- MSM_VIDC_TRANSFER_RESERVED_1 = 0,
- MSM_VIDC_TRANSFER_BT709_5 = 1,
- MSM_VIDC_TRANSFER_UNSPECIFIED = 2,
- MSM_VIDC_TRANSFER_RESERVED_2 = 3,
- MSM_VIDC_TRANSFER_BT_470_6_M = 4,
- MSM_VIDC_TRANSFER_BT_470_6_BG = 5,
- MSM_VIDC_TRANSFER_601_6_625 = 6,
- MSM_VIDC_TRANSFER_601_6_525 = MSM_VIDC_TRANSFER_601_6_625,
- MSM_VIDC_TRANSFER_SMPTE_240M = 7,
- MSM_VIDC_TRANSFER_LINEAR = 8,
- MSM_VIDC_TRANSFER_LOG_100_1 = 9,
- MSM_VIDC_TRANSFER_LOG_100_SQRT10_1 = 10,
- MSM_VIDC_TRANSFER_IEC_61966 = 11,
- MSM_VIDC_TRANSFER_BT_1361 = 12,
- MSM_VIDC_TRANSFER_SRGB = 13,
- MSM_VIDC_TRANSFER_BT_2020_10 = 14,
- MSM_VIDC_TRANSFER_BT_2020_12 = 15,
-#define MSM_VIDC_TRANSFER_SMPTE_ST2084 \
- MSM_VIDC_TRANSFER_SMPTE_ST2084
- MSM_VIDC_TRANSFER_SMPTE_ST2084 = 16,
-#define MSM_VIDC_TRANSFER_SMPTE_ST428_1 \
- MSM_VIDC_TRANSFER_SMPTE_ST428_1
- MSM_VIDC_TRANSFER_SMPTE_ST428_1 = 17,
-#define MSM_VIDC_TRANSFER_HLG \
- MSM_VIDC_TRANSFER_HLG
- MSM_VIDC_TRANSFER_HLG = 18,
-};
-
-enum msm_vidc_pixel_depth {
- MSM_VIDC_BIT_DEPTH_8,
- MSM_VIDC_BIT_DEPTH_10,
- MSM_VIDC_BIT_DEPTH_UNSUPPORTED = 0XFFFFFFFF,
-};
-
-enum msm_vidc_video_format {
- MSM_VIDC_COMPONENT,
- MSM_VIDC_PAL,
- MSM_VIDC_NTSC,
- MSM_VIDC_SECAM,
- MSM_VIDC_MAC,
- MSM_VIDC_UNSPECIFIED_FORMAT,
- MSM_VIDC_RESERVED_1_FORMAT,
- MSM_VIDC_RESERVED_2_FORMAT,
-};
-
-enum msm_vidc_color_desc_flag {
- MSM_VIDC_COLOR_DESC_NOT_PRESENT,
- MSM_VIDC_COLOR_DESC_PRESENT,
-};
-
-/*enum msm_vidc_pic_struct */
-#define MSM_VIDC_PIC_STRUCT_MAYBE_INTERLACED 0x0
-#define MSM_VIDC_PIC_STRUCT_PROGRESSIVE 0x1
-#define MSM_VIDC_PIC_STRUCT_UNKNOWN 0XFFFFFFFF
-/*default when layer ID isn't specified*/
-#define MSM_VIDC_ALL_LAYER_ID 0xFF
-
-#endif
diff --git a/sdm710/original-kernel-headers/media/msm_vpu.h b/sdm710/original-kernel-headers/media/msm_vpu.h
deleted file mode 100644
index b7733050..00000000
--- a/sdm710/original-kernel-headers/media/msm_vpu.h
+++ /dev/null
@@ -1,475 +0,0 @@
-#ifndef _H_MSM_VPU_H_
-#define _H_MSM_VPU_H_
-
-#include <linux/videodev2.h>
-
-/*
- * V 4 L 2 E X T E N S I O N S B Y V P U
- */
-
-/*
- * v4l2_buffer:
- *
- * VPU uses standard V4L2 buffer flags, and defines some custom
- * flags (used in v4l2_buffer.flags field):
- * V4L2_QCOM_BUF_FLAG_EOS: buffer flag indicating end of stream
- * V4L2_BUF_FLAG_CDS_ENABLE: buffer flag to enable chroma down-sampling
- */
-#define V4L2_BUF_FLAG_CDS_ENABLE 0x10000000
-
-/*
- * VPU uses multi-plane v4l2_buffer in the following manner:
- * each plane can be a separate ION buffer, or all planes are from the
- * same ION buffer (under this case all planes have the same fd, but different
- * offset).
- *
- * For struct v4l2_plane
- * fd: ION fd representing the ION buffer this plane is from
- * reserved[0]: offset of this plane from the start of the ION buffer in
- * bytes. Needed when all planes are from the same ION buffer.
- */
-#define V4L2_PLANE_MEM_OFFSET 0
-
-/*
- * struct v4l2_format:
- * always use v4l2_pix_format_mplane, even when there is only one plane
- *
- * v4l2_pix_format_mplane:
- *
- * VPU uses v4l2_pix_format_mplane for pixel format configuration
- * The following members of this structure is either extended or changed:
- * pixelformat: extended, a few more private formats added
- * colorspace: possible values are enum vpu_colorspace
- * field: when it is V4L2_FIELD_ALTERNATE, flags from vpu format extension
- * specifies which field first.
- * reserved[]: VPU format extension. struct v4l2_format_vpu_extension
- */
-enum vpu_colorspace {
- VPU_CS_MIN = 0,
- /* RGB with full range*/
- VPU_CS_RGB_FULL = 1,
- /* RGB with limited range*/
- VPU_CS_RGB_LIMITED = 2,
- /* REC 601 with full range */
- VPU_CS_REC601_FULL = 3,
- /* REC 601 with limited range */
- VPU_CS_REC601_LIMITED = 4,
- /* REC 709 with full range */
- VPU_CS_REC709_FULL = 5,
- /* REC 709 with limited range */
- VPU_CS_REC709_LIMITED = 6,
- /* SMPTE 240 with full range */
- VPU_CS_SMPTE240_FULL = 7,
- /* SMPTE 240 with limited range */
- VPU_CS_SMPTE240_LIMITED = 8,
- VPU_CS_MAX = 9,
-};
-
-
-#define VPU_FMT_EXT_FLAG_BT 1 /* bottom field first */
-#define VPU_FMT_EXT_FLAG_TB 2 /* top field first */
-#define VPU_FMT_EXT_FLAG_3D 4 /* 3D format */
-struct v4l2_format_vpu_extension {
- __u8 flag;
- __u8 gap_in_lines;
-};
-
-/*
- * Supported pixel formats:
- *
- * VPU supported pixel format fourcc codes (use in s_fmt pixelformat field).
- * Can be enumerated using VIDIOC_ENUM_FMT
- *
- * Standard V4L2 formats, defined in videodev2.h :
- *
- * V4L2_PIX_FMT_RGB24 24 bit RGB-8-8-8
- * V4L2_PIX_FMT_RGB32 32 bit XRGB-8-8-8-8
- * V4L2_PIX_FMT_BGR24 24 bit BGR-8-8-8
- * V4L2_PIX_FMT_BGR32 32 bit BGRX-8-8-8-8
- *
- * V4L2_PIX_FMT_NV12 12 bit YUV 4:2:0 semi-planar NV12
- * V4L2_PIX_FMT_NV21 12 bit YUV 4:2:0 semi-planar NV21
- * V4L2_PIX_FMT_YUYV 16 bit YUYV 4:2:2 interleaved
- * V4L2_PIX_FMT_YVYU 16 bit YVYU 4:2:2 interleaved
- * V4L2_PIX_FMT_UYVY 16 bit UYVY 4:2:2 interleaved
- * V4L2_PIX_FMT_VYUY 16 bit VYUY 4:2:2 interleaved
- *
- *
- * Private VPU formats, defined here :
- *
- * V4L2_PIX_FMT_XRGB2 32 bit XRGB-2-10-10-10
- * V4L2_PIX_FMT_XBGR2 32 bit XBGR-2-10-10-10
- *
- * V4L2_PIX_FMT_YUYV10 24 bit YUYV 4:2:2 10 bit per component loose
- * V4L2_PIX_FMT_YUV8 24 bit YUV 4:4:4 8 bit per component
- * V4L2_PIX_FMT_YUV10 32 bit YUV 4:4:4 10 bit per component loose
- * V4L2_PIX_FMT_YUYV10BWC 10 bit YUYV 4:2:2 compressed, for output only
- */
-#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')
-#define V4L2_PIX_FMT_YUV10 v4l2_fourcc('Y', 'U', 'V', 'L')
-#define V4L2_PIX_FMT_YUYV10BWC v4l2_fourcc('Y', 'B', 'W', 'C')
-
-/*
- * VIDIOC_S_INPUT/VIDIOC_S_OUTPUT
- *
- * The single integer passed by these commands specifies port type in the
- * lower 16 bits, and pipe bit mask in the higher 16 bits.
- */
-/* input / output types */
-#define VPU_INPUT_TYPE_HOST 0
-#define VPU_INPUT_TYPE_VCAP 1
-#define VPU_OUTPUT_TYPE_HOST 0
-#define VPU_OUTPUT_TYPE_DISPLAY 1
-
-/* input / output pipe bit fields */
-#define VPU_PIPE_VCAP0 (1 << 16)
-#define VPU_PIPE_VCAP1 (1 << 17)
-#define VPU_PIPE_DISPLAY0 (1 << 18)
-#define VPU_PIPE_DISPLAY1 (1 << 19)
-#define VPU_PIPE_DISPLAY2 (1 << 20)
-#define VPU_PIPE_DISPLAY3 (1 << 21)
-
-/*
- * V P U E V E N T S : I D s A N D D A T A P A Y L O A D S
- */
-
-/*
- * Event ID: set in type field of struct v4l2_event
- * payload: returned in u.data array of struct v4l2_event
- *
- *
- * VPU_EVENT_FLUSH_DONE: Done flushing buffers after VPU_FLUSH_BUFS ioctl
- * payload data: enum v4l2_buf_type (buffer type of flushed port)
- *
- * VPU_EVENT_ACTIVE_REGION_CHANGED: New Active Region Detected
- * payload data: struct v4l2_rect (new active region rectangle)
- *
- * VPU_EVENT_SESSION_TIMESTAMP: New Session timestamp
- * payload data: vpu_frame_timestamp_info
- *
- * VPU_EVENT_SESSION_CREATED: New session has been created
- * payload data: int (number of the attached session)
- *
- * VPU_EVENT_SESSION_FREED: Session is detached and free
- * payload data: int (number of the detached session)
- *
- * VPU_EVENT_SESSION_CLIENT_EXITED: Indicates that clients of current
- * session have exited.
- * payload data: int (number of all remaining clients for this session)
- *
- * VPU_EVENT_HW_ERROR: a hardware error occurred in VPU
- * payload data: NULL
- *
- * VPU_EVENT_INVALID_CONFIG: invalid VPU session configuration
- * payload data: NULL
- *
- * VPU_EVENT_FAILED_SESSION_STREAMING: Failed to stream session
- * payload data: NULL
- */
-#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,
- 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,
- 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,
-
- VPU_EVENT_END
-};
-
-
-/*
- * V P U CO N T R O L S : S T R U C T S A N D I D s
- *
- * Controls are video processing parameters
- */
-
-/*
- * Standard VPU Controls
- */
-struct vpu_ctrl_standard {
- __u32 enable; /* boolean: 0=disable, else=enable */
- __s32 value;
-};
-
-struct vpu_ctrl_auto_manual {
- __u32 enable; /* boolean: 0=disable, else=enable */
- __u32 auto_mode; /* boolean: 0=manual, else=automatic */
- __s32 value;
-};
-
-struct vpu_ctrl_range_mapping {
- __u32 enable; /* boolean: 0=disable, else=enable */
- __u32 y_range; /* the range mapping set for Y [0, 7] */
- __u32 uv_range; /* the range mapping set for UV [0, 7] */
-};
-
-#define VPU_ACTIVE_REGION_N_EXCLUSIONS 1
-struct vpu_ctrl_active_region_param {
- __u32 enable; /* boolean: 0=disable, else=enable */
- /* number of exclusion regions */
- __u32 num_exclusions;
- /* roi where active region detection is applied */
- struct v4l2_rect detection_region;
- /* roi(s) excluded from active region detection*/
- struct v4l2_rect excluded_regions[VPU_ACTIVE_REGION_N_EXCLUSIONS];
-};
-
-struct vpu_ctrl_deinterlacing_mode {
- __u32 field_polarity;
- __u32 mvp_mode;
-};
-
-struct vpu_ctrl_hqv {
- __u32 enable;
- /* strength control of all sharpening features [0, 100] */
- __u32 sharpen_strength;
- /* strength control of Auto NR feature [0, 100] */
- __u32 auto_nr_strength;
-};
-
-struct vpu_info_frame_timestamp {
- /* presentation timestamp of the frame */
- __u32 pts_low;
- __u32 pts_high;
- /* qtimer snapshot */
- __u32 qtime_low;
- __u32 qtime_high;
-};
-
-struct vpu_control {
- __u32 control_id;
- union control_data {
- __s32 value;
- struct vpu_ctrl_standard standard;
- struct vpu_ctrl_auto_manual auto_manual;
- 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;
- struct vpu_ctrl_hqv hqv;
- struct vpu_info_frame_timestamp timestamp;
- __u8 reserved[124];
- } data;
-};
-
-/*
- * IDs for standard controls (use in control_id field of struct vpu_control)
- *
- * VPU_CTRL_NOISE_REDUCTION: noise reduction level, data: auto_manual,
- * value: [0, 100] (step in increments of 25).
- *
- * VPU_CTRL_IMAGE_ENHANCEMENT: image enhancement level, data: auto_manual,
- * value: [-100, 100] (step in increments of 1).
- *
- * VPU_CTRL_ANAMORPHIC_SCALING: anamorphic scaling config, data: standard,
- * value: [0, 100] (step in increments of 1).
- *
- * VPU_CTRL_DIRECTIONAL_INTERPOLATION: directional interpolation config
- * data: standard, value: [0, 100] (step in increments of 1).
- *
- * VPU_CTRL_BACKGROUND_COLOR: , data: value,
- * value: red[0:7] green[8:15] blue[16:23] alpha[24:31]
- *
- * VPU_CTRL_RANGE_MAPPING: Y/UV range mapping, data: range_mapping,
- * y_range: [0, 7], uv_range: [0, 7] (step in increments of 1).
- *
- * VPU_CTRL_DEINTERLACING_MODE: deinterlacing mode, data: deinterlacing_mode,
- * field_polarity: [0, 2], mvp_mode: [0, 2] (step in increments of 1).
- *
- * VPU_CTRL_ACTIVE_REGION_PARAM: active region detection parameters (set only)
- * data: active_region_param,
- *
- * VPU_CTRL_ACTIVE_REGION_RESULT: detected active region roi (get only)
- * data: active_region_result
- *
- * VPU_CTRL_PRIORITY: Session priority, data: value,
- * value: high 100, normal 50
- *
- * VPU_CTRL_CONTENT_PROTECTION: input content protection status, data: value,
- * value: secure 1, non-secure 0
- *
- * VPU_CTRL_DISPLAY_REFRESH_RATE: display refresh rate (set only)
- * data: value (set to __u32 16.16 format)
- *
- * VPU_CTRL_HQV: hqv block config, data: hqv,
- * sharpen_strength: [0, 100] (step in increments of 25),
- * auto_nr_strength: [0, 100] (step in increments of 1).
- *
- * VPU_CTRL_HQV_SHARPEN: , data: value,
- * sharpen_strength: [0, 100] (step in increments of 1).
- *
- * VPU_CTRL_HQV_AUTONR: , data: value,
- * auto_nr_strength: [0, 100] (step in increments of 1).
- *
- * VPU_CTRL_ACE: , data: value
- *
- * VPU_CTRL_ACE_BRIGHTNESS: , data: value,
- * value: [-100, 100] (step in increments of 1).
- *
- * VPU_CTRL_ACE_CONTRAST: , data: value,
- * value: [-100, 100] (step in increments of 1).
- *
- * VPU_CTRL_2D3D: , data: value,
- * value: 1 enabled, 0 disabled
- *
- * VPU_CTRL_2D3D_DEPTH: , data: value,
- * value: [0, 100] (step in increments of 1).
- *
- * VPU_CTRL_TIMESTAMP_INFO_MODE: timestamp reporting mode,
- * data: value specifying how frequent a timestamp reporting info, value
- * is in frames
- *
- * VPU_INFO_TIMESTAMP: timestamp information (get only)
- * data: struct vpu_frame_timestamp_info
- *
- * VPU_CTRL_FRC: enable/disable FRC, data: value,
- * value: 1 enable, 0 disable
- *
- * VPU_CTRL_FRC_MOTION_SMOOTHNESS: , data: value,
- * value: [0, 100] (step in increments of 1).
- *
- * VPU_CTRL_FRC_MOTION_CLEAR: , data: value,
- * value: [0, 100] (step in increments of 1).
- *
- * VPU_CTRL_LATENCY: session latency, data: value in us
- *
- * VPU_CTRL_LATENCY_MODE: data: value (ultra low, low, etc.)
- *
- * VPU_INFO_STATISTICS: frames dropped, etc (get only),
- * data: reserved
- */
-#define VPU_CTRL_ID_MIN 0
-
-#define VPU_CTRL_NOISE_REDUCTION 1
-#define VPU_CTRL_IMAGE_ENHANCEMENT 2
-#define VPU_CTRL_ANAMORPHIC_SCALING 3
-#define VPU_CTRL_DIRECTIONAL_INTERPOLATION 4
-#define VPU_CTRL_BACKGROUND_COLOR 5
-#define VPU_CTRL_RANGE_MAPPING 6
-#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
-#define VPU_CTRL_CONTENT_PROTECTION 11
-#define VPU_CTRL_DISPLAY_REFRESH_RATE 12
-
-#define VPU_CTRL_HQV 20
-#define VPU_CTRL_HQV_SHARPEN 21
-#define VPU_CTRL_HQV_AUTONR 22
-#define VPU_CTRL_ACE 23
-#define VPU_CTRL_ACE_BRIGHTNESS 24
-#define VPU_CTRL_ACE_CONTRAST 25
-#define VPU_CTRL_2D3D 26
-#define VPU_CTRL_2D3D_DEPTH 27
-#define VPU_CTRL_FRC 28
-#define VPU_CTRL_FRC_MOTION_SMOOTHNESS 29
-#define VPU_CTRL_FRC_MOTION_CLEAR 30
-
-#define VPU_INFO_TIMESTAMP 35
-#define VPU_CTRL_TIMESTAMP_INFO_MODE 36
-#define VPU_INFO_STATISTICS 37
-#define VPU_CTRL_LATENCY 38
-#define VPU_CTRL_LATENCY_MODE 39
-
-#define VPU_CTRL_ID_MAX 40
-
-
-/*
- * Extended VPU Controls (large data payloads)
- */
-#define VPU_MAX_EXT_DATA_SIZE 720
-struct vpu_control_extended {
- /*
- * extended control type
- * 0: system
- * 1: session
- */
- __u32 type;
-
- /*
- * size and ptr of the data to send
- * maximum VPU_MAX_EXT_DATA_SIZE bytes
- */
- __u32 data_len;
- void *data_ptr;
-
- /*
- * size and ptr of the buffer to recv data
- * maximum VPU_MAX_EXT_DATA_SIZE bytes
- */
- __u32 buf_size;
- void *buf_ptr;
-};
-
-/*
- * Port specific controls
- */
-struct vpu_control_port {
- __u32 control_id;
- __u32 port; /* 0: INPUT, 1: OUTPUT */
- union control_port_data {
- __u32 framerate;
- } data;
-};
-
-/*
- * IDs for port controls (use in control_id field of struct vpu_control_port)
- *
- * VPU_CTRL_FPS: set frame rate, data: __u32, 16.16 format
- */
-#define VPU_CTRL_FPS 1000
-
-
-/*
- * V P U D E V I C E P R I V A T E I O C T L C O D E S
- */
-
-/* VPU Session ioctls (deprecated) */
-#define VPU_ATTACH_TO_SESSION _IOW('V', (BASE_VIDIOC_PRIVATE + 1), int)
-
-/* VPU Session ioctls */
-#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)
-
-/* Enable second VPU output port and use with current client */
-#define VPU_CREATE_OUTPUT2 _IO('V', (BASE_VIDIOC_PRIVATE + 5))
-
-/* Explicit commit of session configuration */
-#define VPU_COMMIT_CONFIGURATION _IO('V', (BASE_VIDIOC_PRIVATE + 10))
-
-/* Flush all buffers of given type (port) */
-#define VPU_FLUSH_BUFS _IOW('V', (BASE_VIDIOC_PRIVATE + 15), \
- enum v4l2_buf_type)
-
-/* VPU controls get/set ioctls (for most controls with small data) */
-#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)
-
-/* extended control set/get ioctls (large data payloads) */
-#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)
-
-/* VPU port (input/output) specific controls get/set ioctls */
-#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)
-
-#endif /* _H_MSM_VPU_H_ */
-
diff --git a/sdm710/original-kernel-headers/media/msmb_camera.h b/sdm710/original-kernel-headers/media/msmb_camera.h
deleted file mode 100644
index 8bb2f8c4..00000000
--- a/sdm710/original-kernel-headers/media/msmb_camera.h
+++ /dev/null
@@ -1,234 +0,0 @@
-#ifndef __UAPI_LINUX_MSMB_CAMERA_H
-#define __UAPI_LINUX_MSMB_CAMERA_H
-
-#include <linux/videodev2.h>
-#include <linux/types.h>
-#include <linux/ioctl.h>
-#include <linux/media.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)
-
-#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)
-
-#define MSM_CAM_V4L2_IOCTL_DAEMON_DISABLED \
- _IOW('V', BASE_VIDIOC_PRIVATE + 35, struct msm_v4l2_event_data)
-
-#define QCAMERA_VNODE_GROUP_ID MEDIA_ENT_F_IO_V4L
-#define MSM_CAMERA_NAME "msm_camera"
-#define MSM_CONFIGURATION_NAME "msm_config"
-
-//#define MSM_CAMERA_SUBDEV_BASE (MEDIA_ENT_F_OLD_SUBDEV_BASE + 1)
-#define MSM_CAMERA_SUBDEV_BASE (MEDIA_ENT_F_OLD_BASE + 0xF00)
-#define MSM_CAMERA_SUBDEV_CSIPHY (MSM_CAMERA_SUBDEV_BASE + 0)
-//#define MSM_CAMERA_SUBDEV_CSID (MSM_CAMERA_SUBDEV_BASE + 1)
-#define MSM_CAMERA_SUBDEV_CSID (MSM_CAMERA_SUBDEV_BASE + 13)
-#define MSM_CAMERA_SUBDEV_ISPIF (MSM_CAMERA_SUBDEV_BASE + 2)
-#define MSM_CAMERA_SUBDEV_VFE (MSM_CAMERA_SUBDEV_BASE + 3)
-#define MSM_CAMERA_SUBDEV_AXI (MSM_CAMERA_SUBDEV_BASE + 4)
-#define MSM_CAMERA_SUBDEV_VPE (MSM_CAMERA_SUBDEV_BASE + 5)
-#define MSM_CAMERA_SUBDEV_SENSOR (MSM_CAMERA_SUBDEV_BASE + 6)
-#define MSM_CAMERA_SUBDEV_ACTUATOR (MSM_CAMERA_SUBDEV_BASE + 7)
-#define MSM_CAMERA_SUBDEV_EEPROM (MSM_CAMERA_SUBDEV_BASE + 8)
-#define MSM_CAMERA_SUBDEV_CPP (MSM_CAMERA_SUBDEV_BASE + 9)
-#define MSM_CAMERA_SUBDEV_CCI (MSM_CAMERA_SUBDEV_BASE + 10)
-#define MSM_CAMERA_SUBDEV_LED_FLASH (MSM_CAMERA_SUBDEV_BASE + 11)
-#define MSM_CAMERA_SUBDEV_STROBE_FLASH (MSM_CAMERA_SUBDEV_BASE + 12)
-#define MSM_CAMERA_SUBDEV_BUF_MNGR (MSM_CAMERA_SUBDEV_BASE + 1)
-//#define MSM_CAMERA_SUBDEV_BUF_MNGR (MSM_CAMERA_SUBDEV_BASE + 13)
-#define MSM_CAMERA_SUBDEV_SENSOR_INIT (MSM_CAMERA_SUBDEV_BASE + 14)
-#define MSM_CAMERA_SUBDEV_OIS (MSM_CAMERA_SUBDEV_BASE + 15)
-#define MSM_CAMERA_SUBDEV_FLASH (MSM_CAMERA_SUBDEV_BASE + 16)
-#define MSM_CAMERA_SUBDEV_IR_LED (MSM_CAMERA_SUBDEV_BASE + 17)
-#define MSM_CAMERA_SUBDEV_IR_CUT (MSM_CAMERA_SUBDEV_BASE + 18)
-#define MSM_CAMERA_SUBDEV_EXT (MSM_CAMERA_SUBDEV_BASE + 19)
-#define MSM_CAMERA_SUBDEV_TOF (MSM_CAMERA_SUBDEV_BASE + 20)
-#define MSM_CAMERA_SUBDEV_LASER_LED (MSM_CAMERA_SUBDEV_BASE + 21)
-#define MSM_MAX_CAMERA_SENSORS 5
-
-/* The below macro is defined to put an upper limit on maximum
- * number of buffer requested per stream. In case of extremely
- * large value for number of buffer due to data structure corruption
- * we return error to avoid integer overflow. Group processing
- * can have max of 9 groups of 8 bufs each. This value may be
- * configured in future
- */
-#define MSM_CAMERA_MAX_STREAM_BUF 72
-
-/* Max batch size of processing */
-#define MSM_CAMERA_MAX_USER_BUFF_CNT 16
-
-/* featur base */
-#define MSM_CAMERA_FEATURE_BASE 0x00010000
-#define MSM_CAMERA_FEATURE_SHUTDOWN (MSM_CAMERA_FEATURE_BASE + 1)
-
-#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)
-
-/* event type */
-#define MSM_CAMERA_V4L2_EVENT_TYPE (V4L2_EVENT_PRIVATE_START + 0x00002000)
-
-/* event id */
-#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)
-#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)
-#define MSM_CAMERA_EVENT_MAX (MSM_CAMERA_EVENT_MIN + 8)
-
-/* data.command */
-#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)
-#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)
-#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)
-#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
-
-/* data.status - success */
-#define MSM_CAMERA_CMD_SUCCESS 0x00000001
-#define MSM_CAMERA_BUF_MAP_SUCCESS 0x00000002
-
-/* data.status - error */
-#define MSM_CAMERA_ERR_EVT_BASE 0x00010000
-#define MSM_CAMERA_ERR_CMD_FAIL (MSM_CAMERA_ERR_EVT_BASE + 1)
-#define MSM_CAMERA_ERR_MAPPING (MSM_CAMERA_ERR_EVT_BASE + 2)
-#define MSM_CAMERA_ERR_DEVICE_BUSY (MSM_CAMERA_ERR_EVT_BASE + 3)
-
-/* The msm_v4l2_event_data structure should match the
- * v4l2_event.u.data field.
- * should not exceed 16 elements
- */
-struct msm_v4l2_event_data {
- /*word 0*/
- unsigned int command;
- /*word 1*/
- unsigned int status;
- /*word 2*/
- unsigned int session_id;
- /*word 3*/
- unsigned int stream_id;
- /*word 4*/
- unsigned int map_op;
- /*word 5*/
- unsigned int map_buf_idx;
- /*word 6*/
- unsigned int notify;
- /*word 7*/
- unsigned int arg_value;
- /*word 8*/
- unsigned int ret_value;
- /*word 9*/
- unsigned int v4l2_event_type;
- /*word 10*/
- unsigned int v4l2_event_id;
- /*word 11*/
- unsigned int handle;
- /*word 12*/
- unsigned int nop6;
- /*word 13*/
- unsigned int nop7;
- /*word 14*/
- unsigned int nop8;
- /*word 15*/
- unsigned int nop9;
-};
-
-/* map to v4l2_format.fmt.raw_data */
-struct msm_v4l2_format_data {
- enum v4l2_buf_type type;
- unsigned int width;
- unsigned int height;
- unsigned int pixelformat; /* FOURCC */
- unsigned char num_planes;
- unsigned int plane_sizes[VIDEO_MAX_PLANES];
-};
-
-/* MSM Four-character-code (FOURCC) */
-#define msm_v4l2_fourcc(a, b, c, d)\
- ((__u32)(a) | ((__u32)(b) << 8) | ((__u32)(c) << 16) |\
- ((__u32)(d) << 24))
-
-/* Composite stats */
-#define MSM_V4L2_PIX_FMT_STATS_COMB v4l2_fourcc('S', 'T', 'C', 'M')
-/* AEC stats */
-#define MSM_V4L2_PIX_FMT_STATS_AE v4l2_fourcc('S', 'T', 'A', 'E')
-/* AF stats */
-#define MSM_V4L2_PIX_FMT_STATS_AF v4l2_fourcc('S', 'T', 'A', 'F')
-/* AWB stats */
-#define MSM_V4L2_PIX_FMT_STATS_AWB v4l2_fourcc('S', 'T', 'W', 'B')
-/* IHIST stats */
-#define MSM_V4L2_PIX_FMT_STATS_IHST v4l2_fourcc('I', 'H', 'S', 'T')
-/* Column count stats */
-#define MSM_V4L2_PIX_FMT_STATS_CS v4l2_fourcc('S', 'T', 'C', 'S')
-/* Row count stats */
-#define MSM_V4L2_PIX_FMT_STATS_RS v4l2_fourcc('S', 'T', 'R', 'S')
-/* Bayer Grid stats */
-#define MSM_V4L2_PIX_FMT_STATS_BG v4l2_fourcc('S', 'T', 'B', 'G')
-/* Bayer focus stats */
-#define MSM_V4L2_PIX_FMT_STATS_BF v4l2_fourcc('S', 'T', 'B', 'F')
-/* Bayer hist stats */
-#define MSM_V4L2_PIX_FMT_STATS_BHST v4l2_fourcc('B', 'H', 'S', 'T')
-
-enum smmu_attach_mode {
- NON_SECURE_MODE = 0x01,
- SECURE_MODE = 0x02,
- MAX_PROTECTION_MODE = 0x03,
-};
-
-struct msm_camera_smmu_attach_type {
- enum smmu_attach_mode attach;
-};
-
-struct msm_camera_user_buf_cont_t {
- unsigned int buf_cnt;
- unsigned int buf_idx[MSM_CAMERA_MAX_USER_BUFF_CNT];
-};
-
-struct msm_camera_return_buf {
- __u32 index;
- __u32 reserved;
-};
-
-#define MSM_CAMERA_PRIV_IOCTL_ID_BASE 0
-#define MSM_CAMERA_PRIV_IOCTL_ID_RETURN_BUF 1
-
-struct msm_camera_private_ioctl_arg {
- __u32 id;
- __u32 size;
- __u32 result;
- __u32 reserved;
- __u64 ioctl_ptr;
-};
-
-#define VIDIOC_MSM_CAMERA_PRIVATE_IOCTL_CMD \
- _IOWR('V', BASE_VIDIOC_PRIVATE, struct msm_camera_private_ioctl_arg)
-
-#endif
-
diff --git a/sdm710/original-kernel-headers/media/msmb_generic_buf_mgr.h b/sdm710/original-kernel-headers/media/msmb_generic_buf_mgr.h
deleted file mode 100644
index 8dad9ae9..00000000
--- a/sdm710/original-kernel-headers/media/msmb_generic_buf_mgr.h
+++ /dev/null
@@ -1,68 +0,0 @@
-#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 {
- MSM_CAMERA_BUF_MNGR_CONT_MAP,
- MSM_CAMERA_BUF_MNGR_CONT_UNMAP,
- MSM_CAMERA_BUF_MNGR_CONT_MAX,
-};
-
-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,
-};
-
-struct msm_buf_mngr_info {
- uint32_t session_id;
- uint32_t stream_id;
- uint32_t frame_id;
- struct timeval timestamp;
- uint32_t index;
- uint32_t reserved;
- enum msm_camera_buf_mngr_buf_type type;
- struct msm_camera_user_buf_cont_t user_buf;
-};
-
-struct msm_buf_mngr_main_cont_info {
- uint32_t session_id;
- uint32_t stream_id;
- enum msm_camera_buf_mngr_cmd cmd;
- uint32_t cnt;
- 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
-
-#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)
-
-#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)
-
-#define VIDIOC_MSM_BUF_MNGR_BUF_ERROR \
- _IOWR('V', BASE_VIDIOC_PRIVATE + 41, struct msm_buf_mngr_info)
-#endif
-
diff --git a/sdm710/original-kernel-headers/media/msmb_isp.h b/sdm710/original-kernel-headers/media/msmb_isp.h
deleted file mode 100644
index 0ec0e696..00000000
--- a/sdm710/original-kernel-headers/media/msmb_isp.h
+++ /dev/null
@@ -1,1046 +0,0 @@
-#ifndef __UAPI_MSMB_ISP__
-#define __UAPI_MSMB_ISP__
-
-#include <linux/videodev2.h>
-#include <media/msmb_camera.h>
-
-#define MAX_PLANES_PER_STREAM 3
-#define MAX_NUM_STREAM 7
-
-#define ISP_VERSION_48 48
-#define ISP_VERSION_47 47
-#define ISP_VERSION_46 46
-#define ISP_VERSION_44 44
-#define ISP_VERSION_40 40
-#define ISP_VERSION_32 32
-#define ISP_NATIVE_BUF_BIT (0x10000 << 0)
-#define ISP0_BIT (0x10000 << 1)
-#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)
-#define ISP_SVHDR_IN_BIT (0x10000 << 6) /* RDI hw stream for SVHDR */
-#define ISP_SVHDR_OUT_BIT (0x10000 << 7) /* SVHDR output bufq stream*/
-
-#define ISP_STATS_STREAM_BIT 0x80000000
-
-#define VFE_HW_LIMIT 1
-
-struct msm_vfe_cfg_cmd_list;
-
-enum ISP_START_PIXEL_PATTERN {
- ISP_BAYER_RGRGRG,
- ISP_BAYER_GRGRGR,
- ISP_BAYER_BGBGBG,
- ISP_BAYER_GBGBGB,
- ISP_YUV_YCbYCr,
- ISP_YUV_YCrYCb,
- ISP_YUV_CbYCrY,
- ISP_YUV_CrYCbY,
- ISP_PIX_PATTERN_MAX
-};
-
-enum msm_vfe_plane_fmt {
- Y_PLANE,
- CB_PLANE,
- CR_PLANE,
- CRCB_PLANE,
- CBCR_PLANE,
- VFE_PLANE_FMT_MAX
-};
-
-enum msm_vfe_input_src {
- VFE_PIX_0,
- VFE_RAW_0,
- VFE_RAW_1,
- VFE_RAW_2,
- VFE_SRC_MAX,
-};
-
-enum msm_vfe_axi_stream_src {
- PIX_ENCODER,
- PIX_VIEWFINDER,
- PIX_VIDEO,
- CAMIF_RAW,
- IDEAL_RAW,
- RDI_INTF_0,
- RDI_INTF_1,
- RDI_INTF_2,
- VFE_AXI_SRC_MAX
-};
-
-enum msm_vfe_frame_skip_pattern {
- NO_SKIP,
- EVERY_2FRAME,
- EVERY_3FRAME,
- EVERY_4FRAME,
- EVERY_5FRAME,
- EVERY_6FRAME,
- EVERY_7FRAME,
- EVERY_8FRAME,
- EVERY_16FRAME,
- EVERY_32FRAME,
- SKIP_ALL,
- SKIP_RANGE,
- MAX_SKIP,
-};
-
-/*
- * Define an unused period. When this period is set it means that the stream is
- * stopped(i.e the pattern is 0). We don't track the current pattern, just the
- * period defines what the pattern is, if period is this then pattern is 0 else
- * pattern is 1
- */
-#define MSM_VFE_STREAM_STOP_PERIOD 15
-
-enum msm_isp_stats_type {
- MSM_ISP_STATS_AEC, /* legacy based AEC */
- MSM_ISP_STATS_AF, /* legacy based AF */
- MSM_ISP_STATS_AWB, /* legacy based AWB */
- MSM_ISP_STATS_RS, /* legacy based RS */
- MSM_ISP_STATS_CS, /* legacy based CS */
- MSM_ISP_STATS_IHIST, /* legacy based HIST */
- MSM_ISP_STATS_SKIN, /* legacy based SKIN */
- MSM_ISP_STATS_BG, /* Bayer Grids */
- MSM_ISP_STATS_BF, /* Bayer Focus */
- MSM_ISP_STATS_BE, /* Bayer Exposure*/
- MSM_ISP_STATS_BHIST, /* Bayer Hist */
- MSM_ISP_STATS_BF_SCALE, /* Bayer Focus scale */
- MSM_ISP_STATS_HDR_BE, /* HDR Bayer Exposure */
- MSM_ISP_STATS_HDR_BHIST, /* HDR Bayer Hist */
- MSM_ISP_STATS_AEC_BG, /* AEC BG */
- MSM_ISP_STATS_MAX /* MAX */
-};
-
-/*
- * @stats_type_mask: Stats type mask (enum msm_isp_stats_type).
- * @stream_src_mask: Stream src mask (enum msm_vfe_axi_stream_src)
- * @skip_mode: skip pattern, if skip mode is range only then min/max is used
- * @min_frame_id: minimum frame id (valid only if skip_mode = RANGE)
- * @max_frame_id: maximum frame id (valid only if skip_mode = RANGE)
- */
-struct msm_isp_sw_framskip {
- uint32_t stats_type_mask;
- uint32_t stream_src_mask;
- enum msm_vfe_frame_skip_pattern skip_mode;
- uint32_t min_frame_id;
- uint32_t max_frame_id;
-};
-
-enum msm_vfe_testgen_color_pattern {
- COLOR_BAR_8_COLOR,
- UNICOLOR_WHITE,
- UNICOLOR_YELLOW,
- UNICOLOR_CYAN,
- UNICOLOR_GREEN,
- UNICOLOR_MAGENTA,
- UNICOLOR_RED,
- UNICOLOR_BLUE,
- UNICOLOR_BLACK,
- MAX_COLOR,
-};
-
-enum msm_vfe_camif_input {
- CAMIF_DISABLED,
- CAMIF_PAD_REG_INPUT,
- CAMIF_MIDDI_INPUT,
- CAMIF_MIPI_INPUT,
-};
-
-struct msm_vfe_fetch_engine_cfg {
- uint32_t input_format;
- uint32_t buf_width;
- uint32_t buf_height;
- uint32_t fetch_width;
- uint32_t fetch_height;
- uint32_t x_offset;
- uint32_t y_offset;
- uint32_t buf_stride;
-};
-
-enum msm_vfe_camif_output_format {
- CAMIF_QCOM_RAW,
- CAMIF_MIPI_RAW,
- CAMIF_PLAIN_8,
- CAMIF_PLAIN_16,
- CAMIF_MAX_FORMAT,
-};
-
-/*
- * Camif output general configuration
- */
-struct msm_vfe_camif_subsample_cfg {
- uint32_t irq_subsample_period;
- uint32_t irq_subsample_pattern;
- uint32_t sof_counter_step;
- uint32_t pixel_skip;
- uint32_t line_skip;
- uint32_t first_line;
- uint32_t last_line;
- uint32_t first_pixel;
- uint32_t last_pixel;
- enum msm_vfe_camif_output_format output_format;
-};
-
-/*
- * Camif frame and window configuration
- */
-struct msm_vfe_camif_cfg {
- uint32_t lines_per_frame;
- uint32_t pixels_per_line;
- uint32_t first_pixel;
- uint32_t last_pixel;
- uint32_t first_line;
- uint32_t last_line;
- uint32_t epoch_line0;
- uint32_t epoch_line1;
- uint32_t is_split;
- enum msm_vfe_camif_input camif_input;
- struct msm_vfe_camif_subsample_cfg subsample_cfg;
-};
-
-struct msm_vfe_testgen_cfg {
- uint32_t lines_per_frame;
- uint32_t pixels_per_line;
- uint32_t v_blank;
- 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;
- uint32_t burst_num_frame;
-};
-
-enum msm_vfe_inputmux {
- CAMIF,
- TESTGEN,
- EXTERNAL_READ,
-};
-
-enum msm_vfe_stats_composite_group {
- STATS_COMPOSITE_GRP_NONE,
- STATS_COMPOSITE_GRP_1,
- STATS_COMPOSITE_GRP_2,
- STATS_COMPOSITE_GRP_MAX,
-};
-
-enum msm_vfe_hvx_streaming_cmd {
- HVX_DISABLE,
- HVX_ONE_WAY,
- HVX_ROUND_TRIP
-};
-
-struct msm_vfe_pix_cfg {
- struct msm_vfe_camif_cfg camif_cfg;
- 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;
- uint32_t input_format;
- enum msm_vfe_hvx_streaming_cmd hvx_cmd;
- uint32_t is_split;
-};
-
-struct msm_vfe_rdi_cfg {
- uint8_t cid;
- uint8_t frame_based;
-};
-
-struct msm_vfe_input_cfg {
- union {
- struct msm_vfe_pix_cfg pix_cfg;
- struct msm_vfe_rdi_cfg rdi_cfg;
- } d;
- enum msm_vfe_input_src input_src;
- uint32_t input_pix_clk;
-};
-
-struct msm_vfe_fetch_eng_start {
- uint32_t session_id;
- uint32_t stream_id;
- uint32_t buf_idx;
- uint8_t offline_mode;
- uint32_t fd;
- uint32_t buf_addr;
- uint32_t frame_id;
-};
-
-enum msm_vfe_fetch_eng_pass {
- OFFLINE_FIRST_PASS,
- OFFLINE_SECOND_PASS,
- OFFLINE_MAX_PASS,
-};
-
-struct msm_vfe_fetch_eng_multi_pass_start {
- uint32_t session_id;
- uint32_t stream_id;
- uint32_t buf_idx;
- uint8_t offline_mode;
- uint32_t fd;
- uint32_t buf_addr;
- uint32_t frame_id;
- uint32_t output_buf_idx;
- uint32_t input_buf_offset;
- enum msm_vfe_fetch_eng_pass offline_pass;
- uint32_t output_stream_id;
-};
-
-struct msm_vfe_axi_plane_cfg {
- uint32_t output_width; /*Include padding*/
- uint32_t output_height;
- uint32_t output_stride;
- uint32_t output_scan_lines;
- uint32_t output_plane_format; /*Y/Cb/Cr/CbCr*/
- uint32_t plane_addr_offset;
- uint8_t csid_src; /*RDI 0-2*/
- uint8_t rdi_cid;/*CID 1-16*/
-};
-
-enum msm_stream_rdi_input_type {
- MSM_CAMERA_RDI_MIN,
- MSM_CAMERA_RDI_PDAF,
- MSM_CAMERA_RDI_MAX,
-};
-
-struct msm_vfe_axi_stream_request_cmd {
- uint32_t session_id;
- uint32_t stream_id;
- uint32_t vt_enable;
- uint32_t output_format;/*Planar/RAW/Misc*/
- enum msm_vfe_axi_stream_src stream_src; /*CAMIF/IDEAL/RDIs*/
- struct msm_vfe_axi_plane_cfg plane_cfg[MAX_PLANES_PER_STREAM];
-
- uint32_t burst_count;
- uint32_t hfr_mode;
- uint8_t frame_base;
-
- uint32_t init_frame_drop; /*MAX 31 Frames*/
- enum msm_vfe_frame_skip_pattern frame_skip_pattern;
- uint8_t buf_divert; /* if TRUE no vb2 buf done. */
- /*Return values*/
- uint32_t axi_stream_handle;
- uint32_t controllable_output;
- uint32_t burst_len;
- /* Flag indicating memory input stream */
- enum msm_stream_rdi_input_type rdi_input_type;
-};
-
-struct msm_vfe_axi_stream_release_cmd {
- uint32_t stream_handle;
-};
-
-enum msm_vfe_axi_stream_cmd {
- STOP_STREAM,
- START_STREAM,
- STOP_IMMEDIATELY,
-};
-
-struct msm_vfe_axi_stream_cfg_cmd {
- uint8_t num_streams;
- uint32_t stream_handle[VFE_AXI_SRC_MAX];
- enum msm_vfe_axi_stream_cmd cmd;
- uint8_t sync_frame_id_src;
-};
-
-enum msm_vfe_axi_stream_update_type {
- ENABLE_STREAM_BUF_DIVERT,
- DISABLE_STREAM_BUF_DIVERT,
- UPDATE_STREAM_FRAMEDROP_PATTERN,
- UPDATE_STREAM_STATS_FRAMEDROP_PATTERN,
- UPDATE_STREAM_AXI_CONFIG,
- UPDATE_STREAM_REQUEST_FRAMES,
- UPDATE_STREAM_ADD_BUFQ,
- UPDATE_STREAM_REMOVE_BUFQ,
- UPDATE_STREAM_SW_FRAME_DROP,
- UPDATE_STREAM_REQUEST_FRAMES_VER2,
- UPDATE_STREAM_OFFLINE_AXI_CONFIG,
-};
-#define UPDATE_STREAM_REQUEST_FRAMES_VER2 UPDATE_STREAM_REQUEST_FRAMES_VER2
-
-enum msm_vfe_iommu_type {
- IOMMU_ATTACH,
- IOMMU_DETACH,
-};
-
-enum msm_vfe_buff_queue_id {
- VFE_BUF_QUEUE_DEFAULT,
- VFE_BUF_QUEUE_SHARED,
- VFE_BUF_QUEUE_MAX,
-};
-
-struct msm_vfe_axi_stream_cfg_update_info {
- uint32_t stream_handle;
- uint32_t output_format;
- uint32_t user_stream_id;
- uint32_t frame_id;
- 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;
-};
-
-struct msm_vfe_axi_stream_cfg_update_info_req_frm {
- uint32_t stream_handle;
- uint32_t user_stream_id;
- uint32_t frame_id;
- uint32_t buf_index;
-};
-
-struct msm_vfe_axi_halt_cmd {
- uint32_t stop_camif;
- uint32_t overflow_detected;
- uint32_t blocking_halt;
-};
-
-struct msm_vfe_axi_reset_cmd {
- uint32_t blocking;
- uint32_t frame_id;
-};
-
-struct msm_vfe_axi_restart_cmd {
- uint32_t enable_camif;
-};
-
-struct msm_vfe_axi_stream_update_cmd {
- uint32_t num_streams;
- enum msm_vfe_axi_stream_update_type update_type;
- /*
- * For backward compatibility, ensure 1st member of any struct
- * in union below is uint32_t stream_handle.
- */
- union {
- struct msm_vfe_axi_stream_cfg_update_info
- update_info[MSM_ISP_STATS_MAX];
- struct msm_vfe_axi_stream_cfg_update_info_req_frm req_frm_ver2;
- };
-};
-
-struct msm_vfe_smmu_attach_cmd {
- uint32_t security_mode;
- uint32_t iommu_attach_mode;
-};
-
-struct msm_vfe_stats_stream_request_cmd {
- uint32_t session_id;
- uint32_t stream_id;
- enum msm_isp_stats_type stats_type;
- uint32_t composite_flag;
- uint32_t framedrop_pattern;
- uint32_t init_frame_drop; /*MAX 31 Frames*/
- uint32_t irq_subsample_pattern;
- uint32_t buffer_offset;
- uint32_t stream_handle;
-};
-
-struct msm_vfe_stats_stream_release_cmd {
- uint32_t stream_handle;
-};
-struct msm_vfe_stats_stream_cfg_cmd {
- uint8_t num_streams;
- uint32_t stream_handle[MSM_ISP_STATS_MAX];
- uint8_t enable;
- uint32_t stats_burst_len;
-};
-
-enum msm_vfe_reg_cfg_type {
- VFE_WRITE,
- VFE_WRITE_MB,
- VFE_READ,
- VFE_CFG_MASK,
- VFE_WRITE_DMI_16BIT,
- VFE_WRITE_DMI_32BIT,
- VFE_WRITE_DMI_64BIT,
- VFE_READ_DMI_16BIT,
- VFE_READ_DMI_32BIT,
- VFE_READ_DMI_64BIT,
- GET_MAX_CLK_RATE,
- GET_CLK_RATES,
- GET_ISP_ID,
- VFE_HW_UPDATE_LOCK,
- VFE_HW_UPDATE_UNLOCK,
- SET_WM_UB_SIZE,
- SET_UB_POLICY,
- GET_VFE_HW_LIMIT,
-};
-
-struct msm_vfe_cfg_cmd2 {
- uint16_t num_cfg;
- uint16_t cmd_len;
- void *cfg_data;
- void *cfg_cmd;
-};
-
-struct msm_vfe_cfg_cmd_list {
- struct msm_vfe_cfg_cmd2 cfg_cmd;
- struct msm_vfe_cfg_cmd_list *next;
- uint32_t next_size;
-};
-
-struct msm_vfe_reg_rw_info {
- uint32_t reg_offset;
- uint32_t cmd_data_offset;
- uint32_t len;
-};
-
-struct msm_vfe_reg_mask_info {
- uint32_t reg_offset;
- uint32_t mask;
- uint32_t val;
-};
-
-struct msm_vfe_reg_dmi_info {
- uint32_t hi_tbl_offset; /*Optional*/
- uint32_t lo_tbl_offset; /*Required*/
- uint32_t len;
-};
-
-struct msm_vfe_reg_cfg_cmd {
- union {
- 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;
-
- enum msm_vfe_reg_cfg_type cmd_type;
-};
-
-enum vfe_sd_type {
- VFE_SD_0 = 0,
- VFE_SD_1,
- VFE_SD_COMMON,
- VFE_SD_MAX,
-};
-
-/* When you change the value below, check for the sof event_data size.
- * V4l2 limits payload to 64 bytes
- */
-#define MS_NUM_SLAVE_MAX 1
-
-/* Usecases when 2 HW need to be related or synced */
-enum msm_vfe_dual_hw_type {
- DUAL_NONE = 0,
- DUAL_HW_VFE_SPLIT = 1,
- DUAL_HW_MASTER_SLAVE = 2,
-};
-
-/* Type for 2 INTF when used in Master-Slave mode */
-enum msm_vfe_dual_hw_ms_type {
- MS_TYPE_NONE,
- MS_TYPE_MASTER,
- MS_TYPE_SLAVE,
-};
-
-struct msm_isp_set_dual_hw_ms_cmd {
- uint8_t num_src;
- /* Each session can be only one type but multiple intf if YUV cam */
- enum msm_vfe_dual_hw_ms_type dual_hw_ms_type;
- /* Primary intf is mostly associated with preview.
- * This primary intf SOF frame_id and timestamp is tracked
- * and used to calculate delta
- */
- enum msm_vfe_input_src primary_intf;
- /* input_src array indicates other input INTF that may be Master/Slave.
- * For these additional intf, frame_id and timestamp are not saved.
- * However, if these are slaves then they will still get their
- * frame_id from Master
- */
- enum msm_vfe_input_src input_src[VFE_SRC_MAX];
- uint32_t sof_delta_threshold; /* In milliseconds. Sent for Master */
-};
-
-enum msm_isp_buf_type {
- ISP_PRIVATE_BUF,
- ISP_SHARE_BUF,
- MAX_ISP_BUF_TYPE,
-};
-
-struct msm_isp_unmap_buf_req {
- uint32_t fd;
-};
-
-struct msm_isp_buf_request {
- uint32_t session_id;
- uint32_t stream_id;
- uint8_t num_buf;
- uint32_t handle;
- enum msm_isp_buf_type buf_type;
-};
-
-struct msm_isp_buf_request_ver2 {
- uint32_t session_id;
- uint32_t stream_id;
- uint8_t num_buf;
- uint32_t handle;
- enum msm_isp_buf_type buf_type;
- enum smmu_attach_mode security_mode;
- uint32_t reserved[4];
-};
-
-struct msm_isp_qbuf_plane {
- uint32_t addr;
- uint32_t offset;
- uint32_t length;
-};
-
-struct msm_isp_qbuf_buffer {
- struct msm_isp_qbuf_plane planes[MAX_PLANES_PER_STREAM];
- uint32_t num_planes;
-};
-
-struct msm_isp_qbuf_info {
- uint32_t handle;
- int32_t buf_idx;
- /*Only used for prepare buffer*/
- struct msm_isp_qbuf_buffer buffer;
- /*Only used for diverted buffer*/
- uint32_t dirty_buf;
-};
-
-struct msm_isp_clk_rates {
- uint32_t svs_rate;
- uint32_t nominal_rate;
- uint32_t high_rate;
-};
-
-struct msm_vfe_axi_src_state {
- enum msm_vfe_input_src input_src;
- uint32_t src_active;
- uint32_t src_frame_id;
-};
-
-enum msm_isp_event_mask_index {
- ISP_EVENT_MASK_INDEX_STATS_NOTIFY = 0,
- 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,
- 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,
- 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,
-};
-
-
-#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)
-
-#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)
-
-#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)
-
-#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 {
- ISP_REG_UPDATE = 0,
- ISP_EPOCH_0 = 1,
- ISP_EPOCH_1 = 2,
- ISP_START_ACK = 3,
- ISP_STOP_ACK = 4,
- ISP_IRQ_VIOLATION = 5,
- ISP_STATS_OVERFLOW = 6,
- ISP_BUF_DONE = 7,
- ISP_FE_RD_DONE = 8,
- ISP_IOMMU_P_FAULT = 9,
- ISP_ERROR = 10,
- ISP_HW_FATAL_ERROR = 11,
- ISP_PING_PONG_MISMATCH = 12,
- ISP_REG_UPDATE_MISSING = 13,
- ISP_BUF_FATAL_ERROR = 14,
- ISP_EVENT_MAX = 15
-};
-
-#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))
-#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)
-#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)
-#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)
-#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)
-#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)
-#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)
-
-/* The msm_v4l2_event_data structure should match the
- * v4l2_event.u.data field.
- * should not exceed 64 bytes
- */
-
-struct msm_isp_buf_event {
- uint32_t session_id;
- uint32_t stream_id;
- uint32_t handle;
- uint32_t output_format;
- int8_t buf_idx;
-};
-struct msm_isp_fetch_eng_event {
- uint32_t session_id;
- uint32_t stream_id;
- uint32_t handle;
- uint32_t fd;
- int8_t buf_idx;
- int8_t offline_mode;
-};
-struct msm_isp_stats_event {
- uint32_t stats_mask; /* 4 bytes */
- uint8_t stats_buf_idxs[MSM_ISP_STATS_MAX]; /* 11 bytes */
- uint8_t pd_stats_idx;
-};
-
-struct msm_isp_stream_ack {
- uint32_t session_id;
- uint32_t stream_id;
- uint32_t handle;
-};
-
-enum msm_vfe_error_type {
- ISP_ERROR_NONE,
- ISP_ERROR_CAMIF,
- ISP_ERROR_BUS_OVERFLOW,
- ISP_ERROR_RETURN_EMPTY_BUFFER,
- ISP_ERROR_FRAME_ID_MISMATCH,
- ISP_ERROR_MAX,
-};
-
-struct msm_isp_error_info {
- enum msm_vfe_error_type err_type;
- uint32_t session_id;
- uint32_t stream_id;
- uint32_t stream_id_mask;
-};
-
-/* This structure reports delta between master and slave */
-struct msm_isp_ms_delta_info {
- uint8_t num_delta_info;
- uint32_t delta[MS_NUM_SLAVE_MAX];
-};
-
-/* This is sent in EPOCH irq */
-struct msm_isp_output_info {
- uint8_t regs_not_updated;
- /* mask with bufq_handle for regs not updated or return empty */
- uint16_t output_err_mask;
- /* mask with stream_idx for get_buf failed */
- uint8_t stream_framedrop_mask;
- /* mask with stats stream_idx for get_buf failed */
- uint16_t stats_framedrop_mask;
- /* delta between master and slave */
-};
-
-/* This structure is piggybacked with SOF event */
-struct msm_isp_sof_info {
- uint8_t regs_not_updated;
- /* mask with bufq_handle for regs not updated */
- uint16_t reg_update_fail_mask;
- /* mask with bufq_handle for get_buf failed */
- uint32_t stream_get_buf_fail_mask;
- /* mask with stats stream_idx for get_buf failed */
- uint16_t stats_get_buf_fail_mask;
- /* delta between master and slave */
- struct msm_isp_ms_delta_info ms_delta_info;
- /*
- * mask with AXI_SRC in paused state. In PAUSED
- * state there is no Buffer output. So this mask is used
- * to report drop.
- */
- uint16_t axi_updating_mask;
- /* extended mask with bufq_handle for regs not updated */
- uint32_t reg_update_fail_mask_ext;
-};
-#define AXI_UPDATING_MASK 1
-#define REG_UPDATE_FAIL_MASK_EXT 1
-
-struct msm_isp_event_data {
- /*Wall clock except for buffer divert events
- *which use monotonic clock
- */
- struct timeval timestamp;
- /* Monotonic timestamp since bootup */
- struct timeval mono_timestamp;
- uint32_t frame_id;
- union {
- /* Sent for Stats_Done event */
- struct msm_isp_stats_event stats;
- /* Sent for Buf_Divert event */
- struct msm_isp_buf_event buf_done;
- /* Sent for offline fetch done event */
- struct msm_isp_fetch_eng_event fetch_done;
- /* Sent for Error_Event */
- struct msm_isp_error_info error_info;
- /*
- * This struct needs to be removed once
- * userspace switches to sof_info
- */
- struct msm_isp_output_info output_info;
- /* Sent for SOF event */
- struct msm_isp_sof_info sof_info;
- } u; /* union can have max 52 bytes */
-};
-
-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,
- MSM_ISP_CAMERA_AHB_SUSPEND_VOTE = 4,
-};
-
-struct msm_isp_ahb_clk_cfg {
- uint32_t vote;
- uint32_t reserved[2];
-};
-
-enum msm_vfe_dual_cam_sync_mode {
- MSM_ISP_DUAL_CAM_ASYNC,
- MSM_ISP_DUAL_CAM_SYNC,
-};
-
-struct msm_isp_dual_hw_master_slave_sync {
- uint32_t sync_mode;
- uint32_t reserved[2];
-};
-
-struct msm_vfe_dual_lpm_mode {
- enum msm_vfe_axi_stream_src stream_src[VFE_AXI_SRC_MAX];
- uint32_t num_src;
- uint32_t lpm_mode;
-};
-#define V4L2_PIX_FMT_QBGGR8 v4l2_fourcc('Q', 'B', 'G', '8')
-#define V4L2_PIX_FMT_QGBRG8 v4l2_fourcc('Q', 'G', 'B', '8')
-#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')
-#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')
-#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')
-#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')
-#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_P16BGGR12 v4l2_fourcc('P', 'B', 'G', '2')
-#define V4L2_PIX_FMT_P16GBRG12 v4l2_fourcc('P', 'G', 'B', '2')
-#define V4L2_PIX_FMT_P16GRBG12 v4l2_fourcc('P', 'G', 'R', '2')
-#define V4L2_PIX_FMT_P16RGGB12 v4l2_fourcc('P', 'R', 'G', '2')
-#define V4L2_PIX_FMT_NV14 v4l2_fourcc('N', 'V', '1', '4')
-#define V4L2_PIX_FMT_NV41 v4l2_fourcc('N', 'V', '4', '1')
-#define V4L2_PIX_FMT_META v4l2_fourcc('Q', 'M', 'E', 'T')
-#define V4L2_PIX_FMT_META10 v4l2_fourcc('Q', 'M', '1', '0')
-#define V4L2_PIX_FMT_SBGGR14 v4l2_fourcc('B', 'G', '1', '4') /* 14 BGBG.GRGR.*/
-#define V4L2_PIX_FMT_SGBRG14 v4l2_fourcc('G', 'B', '1', '4') /* 14 GBGB.RGRG.*/
-#define V4L2_PIX_FMT_SGRBG14 v4l2_fourcc('B', 'A', '1', '4') /* 14 GRGR.BGBG.*/
-#define V4L2_PIX_FMT_SRGGB14 v4l2_fourcc('R', 'G', '1', '4') /* 14 RGRG.GBGB.*/
-
-enum msm_isp_ioctl_cmd_code {
- MSM_VFE_REG_CFG = BASE_VIDIOC_PRIVATE,
- MSM_ISP_REQUEST_BUF,
- MSM_ISP_ENQUEUE_BUF,
- MSM_ISP_RELEASE_BUF,
- MSM_ISP_REQUEST_STREAM,
- MSM_ISP_CFG_STREAM,
- MSM_ISP_RELEASE_STREAM,
- MSM_ISP_INPUT_CFG,
- MSM_ISP_SET_SRC_STATE,
- MSM_ISP_REQUEST_STATS_STREAM,
- MSM_ISP_CFG_STATS_STREAM,
- MSM_ISP_RELEASE_STATS_STREAM,
- MSM_ISP_REG_UPDATE_CMD,
- MSM_ISP_UPDATE_STREAM,
- MSM_VFE_REG_LIST_CFG,
- MSM_ISP_SMMU_ATTACH,
- MSM_ISP_UPDATE_STATS_STREAM,
- MSM_ISP_AXI_HALT,
- MSM_ISP_AXI_RESET,
- MSM_ISP_AXI_RESTART,
- MSM_ISP_FETCH_ENG_START,
- MSM_ISP_DEQUEUE_BUF,
- MSM_ISP_SET_DUAL_HW_MASTER_SLAVE,
- MSM_ISP_MAP_BUF_START_FE,
- MSM_ISP_UNMAP_BUF,
- MSM_ISP_AHB_CLK_CFG,
- MSM_ISP_DUAL_HW_MASTER_SLAVE_SYNC,
- MSM_ISP_FETCH_ENG_MULTI_PASS_START,
- MSM_ISP_MAP_BUF_START_MULTI_PASS_FE,
- MSM_ISP_REQUEST_BUF_VER2,
- MSM_ISP_DUAL_HW_LPM_MODE,
-};
-
-#define VIDIOC_MSM_VFE_REG_CFG \
- _IOWR('V', MSM_VFE_REG_CFG, \
- struct msm_vfe_cfg_cmd2)
-
-#define VIDIOC_MSM_ISP_REQUEST_BUF \
- _IOWR('V', MSM_ISP_REQUEST_BUF, \
- struct msm_isp_buf_request)
-
-#define VIDIOC_MSM_ISP_ENQUEUE_BUF \
- _IOWR('V', MSM_ISP_ENQUEUE_BUF, \
- struct msm_isp_qbuf_info)
-
-#define VIDIOC_MSM_ISP_RELEASE_BUF \
- _IOWR('V', MSM_ISP_RELEASE_BUF, \
- struct msm_isp_buf_request)
-
-#define VIDIOC_MSM_ISP_REQUEST_STREAM \
- _IOWR('V', MSM_ISP_REQUEST_STREAM, \
- struct msm_vfe_axi_stream_request_cmd)
-
-#define VIDIOC_MSM_ISP_CFG_STREAM \
- _IOWR('V', MSM_ISP_CFG_STREAM, \
- struct msm_vfe_axi_stream_cfg_cmd)
-
-#define VIDIOC_MSM_ISP_RELEASE_STREAM \
- _IOWR('V', MSM_ISP_RELEASE_STREAM, \
- struct msm_vfe_axi_stream_release_cmd)
-
-#define VIDIOC_MSM_ISP_INPUT_CFG \
- _IOWR('V', MSM_ISP_INPUT_CFG, \
- struct msm_vfe_input_cfg)
-
-#define VIDIOC_MSM_ISP_SET_SRC_STATE \
- _IOWR('V', MSM_ISP_SET_SRC_STATE, \
- struct msm_vfe_axi_src_state)
-
-#define VIDIOC_MSM_ISP_REQUEST_STATS_STREAM \
- _IOWR('V', MSM_ISP_REQUEST_STATS_STREAM, \
- struct msm_vfe_stats_stream_request_cmd)
-
-#define VIDIOC_MSM_ISP_CFG_STATS_STREAM \
- _IOWR('V', MSM_ISP_CFG_STATS_STREAM, \
- struct msm_vfe_stats_stream_cfg_cmd)
-
-#define VIDIOC_MSM_ISP_RELEASE_STATS_STREAM \
- _IOWR('V', MSM_ISP_RELEASE_STATS_STREAM, \
- struct msm_vfe_stats_stream_release_cmd)
-
-#define VIDIOC_MSM_ISP_REG_UPDATE_CMD \
- _IOWR('V', MSM_ISP_REG_UPDATE_CMD, \
- enum msm_vfe_input_src)
-
-#define VIDIOC_MSM_ISP_UPDATE_STREAM \
- _IOWR('V', MSM_ISP_UPDATE_STREAM, \
- struct msm_vfe_axi_stream_update_cmd)
-
-#define VIDIOC_MSM_VFE_REG_LIST_CFG \
- _IOWR('V', MSM_VFE_REG_LIST_CFG, \
- struct msm_vfe_cfg_cmd_list)
-
-#define VIDIOC_MSM_ISP_SMMU_ATTACH \
- _IOWR('V', MSM_ISP_SMMU_ATTACH, \
- struct msm_vfe_smmu_attach_cmd)
-
-#define VIDIOC_MSM_ISP_UPDATE_STATS_STREAM \
- _IOWR('V', MSM_ISP_UPDATE_STATS_STREAM, \
- struct msm_vfe_axi_stream_update_cmd)
-
-#define VIDIOC_MSM_ISP_AXI_HALT \
- _IOWR('V', MSM_ISP_AXI_HALT, \
- struct msm_vfe_axi_halt_cmd)
-
-#define VIDIOC_MSM_ISP_AXI_RESET \
- _IOWR('V', MSM_ISP_AXI_RESET, \
- struct msm_vfe_axi_reset_cmd)
-
-#define VIDIOC_MSM_ISP_AXI_RESTART \
- _IOWR('V', MSM_ISP_AXI_RESTART, \
- struct msm_vfe_axi_restart_cmd)
-
-#define VIDIOC_MSM_ISP_FETCH_ENG_START \
- _IOWR('V', MSM_ISP_FETCH_ENG_START, \
- struct msm_vfe_fetch_eng_start)
-
-#define VIDIOC_MSM_ISP_DEQUEUE_BUF \
- _IOWR('V', MSM_ISP_DEQUEUE_BUF, \
- struct msm_isp_qbuf_info)
-
-#define VIDIOC_MSM_ISP_SET_DUAL_HW_MASTER_SLAVE \
- _IOWR('V', MSM_ISP_SET_DUAL_HW_MASTER_SLAVE, \
- struct msm_isp_set_dual_hw_ms_cmd)
-
-#define VIDIOC_MSM_ISP_MAP_BUF_START_FE \
- _IOWR('V', MSM_ISP_MAP_BUF_START_FE, \
- struct msm_vfe_fetch_eng_start)
-
-#define VIDIOC_MSM_ISP_UNMAP_BUF \
- _IOWR('V', MSM_ISP_UNMAP_BUF, \
- struct msm_isp_unmap_buf_req)
-
-#define VIDIOC_MSM_ISP_AHB_CLK_CFG \
- _IOWR('V', MSM_ISP_AHB_CLK_CFG, struct msm_isp_ahb_clk_cfg)
-
-#define VIDIOC_MSM_ISP_DUAL_HW_MASTER_SLAVE_SYNC \
- _IOWR('V', MSM_ISP_DUAL_HW_MASTER_SLAVE_SYNC, \
- struct msm_isp_dual_hw_master_slave_sync)
-
-#define VIDIOC_MSM_ISP_FETCH_ENG_MULTI_PASS_START \
- _IOWR('V', MSM_ISP_FETCH_ENG_MULTI_PASS_START, \
- struct msm_vfe_fetch_eng_multi_pass_start)
-
-#define VIDIOC_MSM_ISP_MAP_BUF_START_MULTI_PASS_FE \
- _IOWR('V', MSM_ISP_MAP_BUF_START_MULTI_PASS_FE, \
- struct msm_vfe_fetch_eng_multi_pass_start)
-
-#define VIDIOC_MSM_ISP_REQUEST_BUF_VER2 \
- _IOWR('V', MSM_ISP_REQUEST_BUF_VER2, struct msm_isp_buf_request_ver2)
-
-#define VIDIOC_MSM_ISP_DUAL_HW_LPM_MODE \
- _IOWR('V', MSM_ISP_DUAL_HW_LPM_MODE, \
- struct msm_vfe_dual_lpm_mode)
-
-#endif /* __MSMB_ISP__ */
diff --git a/sdm710/original-kernel-headers/media/msmb_ispif.h b/sdm710/original-kernel-headers/media/msmb_ispif.h
deleted file mode 100644
index 4d85ba52..00000000
--- a/sdm710/original-kernel-headers/media/msmb_ispif.h
+++ /dev/null
@@ -1,179 +0,0 @@
-#ifndef UAPI_MSMB_ISPIF_H
-#define UAPI_MSMB_ISPIF_H
-
-#include <linux/types.h>
-#include <linux/ioctl.h>
-#include <linux/videodev2.h>
-
-#define CSID_VERSION_V20 0x02000011
-#define CSID_VERSION_V22 0x02001000
-#define CSID_VERSION_V30 0x30000000
-#define CSID_VERSION_V3 0x30000000
-
-enum msm_ispif_vfe_intf {
- VFE0,
- VFE1,
- VFE_MAX
-};
-#define VFE0_MASK (1 << VFE0)
-#define VFE1_MASK (1 << VFE1)
-
-enum msm_ispif_intftype {
- PIX0,
- RDI0,
- PIX1,
- RDI1,
- RDI2,
- INTF_MAX
-};
-#define MAX_PARAM_ENTRIES (INTF_MAX * 2)
-#define MAX_CID_CH 8
-#define MAX_CID_CH_PARAM_ENTRY 3
-
-#define PIX0_MASK (1 << PIX0)
-#define PIX1_MASK (1 << PIX1)
-#define RDI0_MASK (1 << RDI0)
-#define RDI1_MASK (1 << RDI1)
-#define RDI2_MASK (1 << RDI2)
-
-enum msm_ispif_vc {
- VC0,
- VC1,
- VC2,
- VC3,
- VC_MAX
-};
-
-enum msm_ispif_cid {
- CID0,
- CID1,
- CID2,
- CID3,
- CID4,
- CID5,
- CID6,
- CID7,
- CID8,
- CID9,
- CID10,
- CID11,
- CID12,
- CID13,
- CID14,
- CID15,
- CID_MAX
-};
-
-enum msm_ispif_csid {
- CSID0,
- CSID1,
- CSID2,
- CSID3,
- CSID_MAX
-};
-
-enum msm_ispif_pixel_odd_even {
- PIX_EVEN,
- PIX_ODD
-};
-
-enum msm_ispif_pixel_pack_mode {
- PACK_BYTE,
- PACK_PLAIN_PACK,
- PACK_NV_P8,
- PACK_NV_P16
-};
-
-struct msm_ispif_pack_cfg {
- int pixel_swap_en;
- enum msm_ispif_pixel_odd_even even_odd_sel;
- enum msm_ispif_pixel_pack_mode pack_mode;
-};
-
-struct msm_ispif_params_entry {
- enum msm_ispif_vfe_intf vfe_intf;
- enum msm_ispif_intftype intftype;
- int num_cids;
- enum msm_ispif_cid cids[MAX_CID_CH_PARAM_ENTRY];
- enum msm_ispif_csid csid;
- int crop_enable;
- uint16_t crop_start_pixel;
- uint16_t crop_end_pixel;
-};
-
-struct msm_ispif_right_param_entry {
- enum msm_ispif_cid cids[MAX_CID_CH_PARAM_ENTRY];
- enum msm_ispif_csid csid;
-};
-
-struct msm_ispif_param_data_ext {
- uint32_t num;
- struct msm_ispif_params_entry entries[MAX_PARAM_ENTRIES];
- struct msm_ispif_pack_cfg pack_cfg[CID_MAX];
- struct msm_ispif_right_param_entry right_entries[MAX_PARAM_ENTRIES];
- uint32_t stereo_enable;
- uint16_t line_width[VFE_MAX];
-};
-
-struct msm_ispif_param_data {
- uint32_t num;
- struct msm_ispif_params_entry entries[MAX_PARAM_ENTRIES];
-};
-
-struct msm_isp_info {
- uint32_t max_resolution;
- uint32_t id;
- uint32_t ver;
-};
-
-struct msm_ispif_vfe_info {
- int num_vfe;
- struct msm_isp_info info[VFE_MAX];
-};
-
-enum ispif_cfg_type_t {
- ISPIF_CLK_ENABLE,
- ISPIF_CLK_DISABLE,
- ISPIF_INIT,
- ISPIF_CFG,
- ISPIF_START_FRAME_BOUNDARY,
- ISPIF_RESTART_FRAME_BOUNDARY,
- ISPIF_STOP_FRAME_BOUNDARY,
- ISPIF_STOP_IMMEDIATELY,
- ISPIF_RELEASE,
- ISPIF_ENABLE_REG_DUMP,
- ISPIF_SET_VFE_INFO,
- ISPIF_CFG2,
- ISPIF_CFG_STEREO,
-};
-
-struct ispif_cfg_data {
- enum ispif_cfg_type_t cfg_type;
- union {
- int reg_dump; /* ISPIF_ENABLE_REG_DUMP */
- uint32_t csid_version; /* ISPIF_INIT */
- struct msm_ispif_vfe_info vfe_info; /* ISPIF_SET_VFE_INFO */
- struct msm_ispif_param_data params; /* CFG, START, STOP */
- };
-};
-
-struct ispif_cfg_data_ext {
- enum ispif_cfg_type_t cfg_type;
- void *data;
- uint32_t size;
-};
-
-#define ISPIF_RDI_PACK_MODE_SUPPORT 1
-
-#define ISPIF_3D_SUPPORT 1
-
-#define ISPIF_LINE_WIDTH_SUPPORT 1
-
-#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
-
diff --git a/sdm710/original-kernel-headers/media/msmb_pproc.h b/sdm710/original-kernel-headers/media/msmb_pproc.h
deleted file mode 100644
index 4ee9aba7..00000000
--- a/sdm710/original-kernel-headers/media/msmb_pproc.h
+++ /dev/null
@@ -1,255 +0,0 @@
-#ifndef __UAPI_MSMB_PPROC_H
-#define __UAPI_MSMB_PPROC_H
-
-#include <linux/videodev2.h>
-#include <linux/types.h>
-#include <media/msmb_generic_buf_mgr.h>
-
-/* Should be same as VIDEO_MAX_PLANES in videodev2.h */
-#define MAX_PLANES VIDEO_MAX_PLANES
-/* PARTIAL_FRAME_STRIPE_COUNT must be even */
-#define PARTIAL_FRAME_STRIPE_COUNT 4
-
-#define MAX_NUM_CPP_STRIPS 8
-#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
-#define MAX_FREQ_TBL 10
-#define MSM_OUTPUT_BUF_CNT 8
-
-enum msm_cpp_frame_type {
- MSM_CPP_OFFLINE_FRAME,
- MSM_CPP_REALTIME_FRAME,
-};
-
-enum msm_vpe_frame_type {
- MSM_VPE_OFFLINE_FRAME,
- MSM_VPE_REALTIME_FRAME,
-};
-
-struct msm_cpp_buffer_info_t {
- int32_t fd;
- uint32_t index;
- uint32_t offset;
- uint8_t native_buff;
- uint8_t processed_divert;
- uint32_t identity;
-};
-
-struct msm_cpp_stream_buff_info_t {
- uint32_t identity;
- uint32_t num_buffs;
- struct msm_cpp_buffer_info_t *buffer_info;
-};
-
-enum msm_cpp_batch_mode_t {
- BATCH_MODE_NONE,
- BATCH_MODE_VIDEO,
- BATCH_MODE_PREVIEW
-};
-
-struct msm_cpp_batch_info_t {
- enum msm_cpp_batch_mode_t batch_mode;
- uint32_t batch_size;
- uint32_t intra_plane_offset[MAX_PLANES];
- uint32_t pick_preview_idx;
- uint32_t cont_idx;
-};
-
-struct msm_cpp_frame_info_t {
- int32_t frame_id;
- struct timeval timestamp;
- uint32_t inst_id;
- uint32_t identity;
- uint32_t client_id;
- enum msm_cpp_frame_type frame_type;
- uint32_t num_strips;
- uint32_t msg_len;
- uint32_t *cpp_cmd_msg;
- int src_fd;
- int dst_fd;
- struct timeval in_time, out_time;
- void *cookie;
- int32_t *status;
- int32_t duplicate_output;
- uint32_t duplicate_identity;
- uint32_t feature_mask;
- uint8_t we_disable;
- struct msm_cpp_buffer_info_t input_buffer_info;
- struct msm_cpp_buffer_info_t output_buffer_info[MSM_OUTPUT_BUF_CNT];
- struct msm_cpp_buffer_info_t duplicate_buffer_info;
- struct msm_cpp_buffer_info_t tnr_scratch_buffer_info[2];
- uint32_t reserved;
- uint8_t partial_frame_indicator;
- /* the followings are used only for partial_frame type
- * and is only used for offline frame processing and
- * only if payload big enough and need to be split into partial_frame
- * if first_payload, kernel acquires output buffer
- * first payload must have the last stripe
- * buffer addresses from 0 to last_stripe_index are updated.
- * kernel updates payload with msg_len and stripe_info
- * kernel sends top level, plane level, then only stripes
- * starting with first_stripe_index and
- * ends with last_stripe_index
- * kernel then sends trailing flag at frame done,
- * if last payload, kernel queues the output buffer to HAL
- */
- uint8_t first_payload;
- uint8_t last_payload;
- uint32_t first_stripe_index;
- uint32_t last_stripe_index;
- uint32_t stripe_info_offset;
- uint32_t stripe_info;
- struct msm_cpp_batch_info_t batch_info;
-};
-
-struct msm_cpp_pop_stream_info_t {
- int32_t frame_id;
- uint32_t identity;
-};
-
-struct cpp_hw_info {
- uint32_t cpp_hw_version;
- uint32_t cpp_hw_caps;
- unsigned long freq_tbl[MAX_FREQ_TBL];
- uint32_t freq_tbl_count;
-};
-
-struct msm_vpe_frame_strip_info {
- uint32_t src_w;
- uint32_t src_h;
- uint32_t dst_w;
- uint32_t dst_h;
- uint32_t src_x;
- uint32_t src_y;
- uint32_t phase_step_x;
- uint32_t phase_step_y;
- uint32_t phase_init_x;
- uint32_t phase_init_y;
-};
-
-struct msm_vpe_buffer_info_t {
- int32_t fd;
- uint32_t index;
- uint32_t offset;
- uint8_t native_buff;
- uint8_t processed_divert;
-};
-
-struct msm_vpe_stream_buff_info_t {
- uint32_t identity;
- uint32_t num_buffs;
- struct msm_vpe_buffer_info_t *buffer_info;
-};
-
-struct msm_vpe_frame_info_t {
- int32_t frame_id;
- struct timeval timestamp;
- uint32_t inst_id;
- uint32_t identity;
- uint32_t client_id;
- enum msm_vpe_frame_type frame_type;
- struct msm_vpe_frame_strip_info strip_info;
- unsigned long src_fd;
- unsigned long dst_fd;
- struct ion_handle *src_ion_handle;
- struct ion_handle *dest_ion_handle;
- unsigned long src_phyaddr;
- unsigned long dest_phyaddr;
- unsigned long src_chroma_plane_offset;
- unsigned long dest_chroma_plane_offset;
- struct timeval in_time, out_time;
- void *cookie;
-
- struct msm_vpe_buffer_info_t input_buffer_info;
- struct msm_vpe_buffer_info_t output_buffer_info;
-};
-
-struct msm_pproc_queue_buf_info {
- struct msm_buf_mngr_info buff_mgr_info;
- uint8_t is_buf_dirty;
-};
-
-struct msm_cpp_clock_settings_t {
- unsigned long clock_rate;
- uint64_t avg;
- uint64_t inst;
-};
-
-#define VIDIOC_MSM_CPP_CFG \
- _IOWR('V', BASE_VIDIOC_PRIVATE, struct msm_camera_v4l2_ioctl_t)
-
-#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)
-
-#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)
-
-#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)
-
-#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)
-
-#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)
-
-
-#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;
- size_t len;
- int32_t trans_code;
- void *ioctl_ptr;
-};
-
-#endif
-
diff --git a/sdm710/original-kernel-headers/scsi/ufs/ioctl.h b/sdm710/original-kernel-headers/scsi/ufs/ioctl.h
deleted file mode 100644
index 56b2f461..00000000
--- a/sdm710/original-kernel-headers/scsi/ufs/ioctl.h
+++ /dev/null
@@ -1,57 +0,0 @@
-#ifndef UAPI_UFS_IOCTL_H_
-#define UAPI_UFS_IOCTL_H_
-
-#include <linux/types.h>
-
-/*
- * IOCTL opcode for ufs queries has the following opcode after
- * SCSI_IOCTL_GET_PCI
- */
-#define UFS_IOCTL_QUERY 0x5388
-
-/**
- * struct ufs_ioctl_query_data - used to transfer data to and from user via ioctl
- * @opcode: type of data to query (descriptor/attribute/flag)
- * @idn: id of the data structure
- * @buf_size: number of allocated bytes/data size on return
- * @buffer: data location
- *
- * Received: buffer and buf_size (available space for transfered data)
- * Submitted: opcode, idn, length, buf_size
- */
-struct ufs_ioctl_query_data {
- /*
- * User should select one of the opcode defined in "enum query_opcode".
- * Please check include/uapi/scsi/ufs/ufs.h for the definition of it.
- * Note that only UPIU_QUERY_OPCODE_READ_DESC,
- * UPIU_QUERY_OPCODE_READ_ATTR & UPIU_QUERY_OPCODE_READ_FLAG are
- * supported as of now. All other query_opcode would be considered
- * invalid.
- * As of now only read query operations are supported.
- */
- __u32 opcode;
- /*
- * User should select one of the idn from "enum flag_idn" or "enum
- * attr_idn" or "enum desc_idn" based on whether opcode above is
- * attribute, flag or descriptor.
- * Please check include/uapi/scsi/ufs/ufs.h for the definition of it.
- */
- __u8 idn;
- /*
- * User should specify the size of the buffer (buffer[0] below) where
- * it wants to read the query data (attribute/flag/descriptor).
- * As we might end up reading less data then what is specified in
- * buf_size. So we are updating buf_size to what exactly we have read.
- */
- __u16 buf_size;
- /*
- * placeholder for the start of the data buffer where kernel will copy
- * the query data (attribute/flag/descriptor) read from the UFS device
- * Note:
- * For Read/Write Attribute you will have to allocate 4 bytes
- * For Read/Write Flag you will have to allocate 1 byte
- */
- __u8 buffer[0];
-};
-
-#endif /* UAPI_UFS_IOCTL_H_ */
diff --git a/sdm710/original-kernel-headers/scsi/ufs/ufs.h b/sdm710/original-kernel-headers/scsi/ufs/ufs.h
deleted file mode 100644
index 6d8ef803..00000000
--- a/sdm710/original-kernel-headers/scsi/ufs/ufs.h
+++ /dev/null
@@ -1,85 +0,0 @@
-#ifndef UAPI_UFS_H_
-#define UAPI_UFS_H_
-
-#define MAX_QUERY_IDN 0x18
-
-/* Flag idn for Query Requests*/
-enum flag_idn {
- QUERY_FLAG_IDN_FDEVICEINIT = 0x01,
- QUERY_FLAG_IDN_PERMANENT_WPE = 0x02,
- QUERY_FLAG_IDN_PWR_ON_WPE = 0x03,
- QUERY_FLAG_IDN_BKOPS_EN = 0x04,
- QUERY_FLAG_IDN_RESERVED1 = 0x05,
- QUERY_FLAG_IDN_PURGE_ENABLE = 0x06,
- QUERY_FLAG_IDN_RESERVED2 = 0x07,
- QUERY_FLAG_IDN_FPHYRESOURCEREMOVAL = 0x08,
- QUERY_FLAG_IDN_BUSY_RTC = 0x09,
- /* use one reserved bit */
- QUERY_FLAG_IDN_MANUAL_GC_CONT = 0x0E,
-};
-
-/* Attribute idn for Query requests */
-enum attr_idn {
- QUERY_ATTR_IDN_BOOT_LU_EN = 0x00,
- QUERY_ATTR_IDN_RESERVED = 0x01,
- QUERY_ATTR_IDN_POWER_MODE = 0x02,
- QUERY_ATTR_IDN_ACTIVE_ICC_LVL = 0x03,
- QUERY_ATTR_IDN_OOO_DATA_EN = 0x04,
- QUERY_ATTR_IDN_BKOPS_STATUS = 0x05,
- QUERY_ATTR_IDN_PURGE_STATUS = 0x06,
- QUERY_ATTR_IDN_MAX_DATA_IN = 0x07,
- QUERY_ATTR_IDN_MAX_DATA_OUT = 0x08,
- QUERY_ATTR_IDN_DYN_CAP_NEEDED = 0x09,
- QUERY_ATTR_IDN_REF_CLK_FREQ = 0x0A,
- QUERY_ATTR_IDN_CONF_DESC_LOCK = 0x0B,
- QUERY_ATTR_IDN_MAX_NUM_OF_RTT = 0x0C,
- QUERY_ATTR_IDN_EE_CONTROL = 0x0D,
- QUERY_ATTR_IDN_EE_STATUS = 0x0E,
- QUERY_ATTR_IDN_SECONDS_PASSED = 0x0F,
- QUERY_ATTR_IDN_CNTX_CONF = 0x10,
- QUERY_ATTR_IDN_CORR_PRG_BLK_NUM = 0x11,
- /* use one reserved bit */
- QUERY_ATTR_IDN_MANUAL_GC_STATUS = 0x17,
-};
-
-#define QUERY_ATTR_IDN_BOOT_LU_EN_MAX 0x02
-
-/* Descriptor idn for Query requests */
-enum desc_idn {
- QUERY_DESC_IDN_DEVICE = 0x0,
- QUERY_DESC_IDN_CONFIGURAION = 0x1,
- QUERY_DESC_IDN_UNIT = 0x2,
- QUERY_DESC_IDN_RFU_0 = 0x3,
- QUERY_DESC_IDN_INTERCONNECT = 0x4,
- QUERY_DESC_IDN_STRING = 0x5,
- QUERY_DESC_IDN_RFU_1 = 0x6,
- QUERY_DESC_IDN_GEOMETRY = 0x7,
- QUERY_DESC_IDN_POWER = 0x8,
- QUERY_DESC_IDN_HEALTH = 0x9,
- QUERY_DESC_IDN_RFU_2 = 0xA,
- QUERY_DESC_IDN_MAX,
-};
-
-/* UTP QUERY Transaction Specific Fields OpCode */
-enum query_opcode {
- UPIU_QUERY_OPCODE_NOP = 0x0,
- UPIU_QUERY_OPCODE_READ_DESC = 0x1,
- UPIU_QUERY_OPCODE_WRITE_DESC = 0x2,
- UPIU_QUERY_OPCODE_READ_ATTR = 0x3,
- UPIU_QUERY_OPCODE_WRITE_ATTR = 0x4,
- UPIU_QUERY_OPCODE_READ_FLAG = 0x5,
- UPIU_QUERY_OPCODE_SET_FLAG = 0x6,
- UPIU_QUERY_OPCODE_CLEAR_FLAG = 0x7,
- UPIU_QUERY_OPCODE_TOGGLE_FLAG = 0x8,
- UPIU_QUERY_OPCODE_MAX,
-};
-
-/*
- * high 16 bits for HPB. E.g.,
- * opcode = (UFS_IOCTL_QUERY_OPCODE << 16) | UPIU_QUERY_OPCODE_READ_DESC
- */
-#define UPIU_QUERY_OPCODE_HIGH_HPB 0x5500
-#define UPIU_QUERY_OPCODE_HIGH(opcode) ((opcode) >> 16)
-#define UPIU_QUERY_OPCODE_LOW(opcode) ((opcode) & 0xffff)
-
-#endif /* UAPI_UFS_H_ */
diff --git a/sdm710/original-kernel-headers/sound/asound.h b/sdm710/original-kernel-headers/sound/asound.h
deleted file mode 100644
index 9c85bf7d..00000000
--- a/sdm710/original-kernel-headers/sound/asound.h
+++ /dev/null
@@ -1,1022 +0,0 @@
-/*
- * Advanced Linux Sound Architecture - ALSA - Driver
- * Copyright (c) 1994-2003 by Jaroslav Kysela <perex@perex.cz>,
- * Abramo Bagnara <abramo@alsa-project.org>
- *
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * 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.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- *
- */
-
-#ifndef __SOUND_ASOUND_H
-#define __SOUND_ASOUND_H
-
-#if defined(__KERNEL__) || defined(__linux__)
-#include <linux/types.h>
-#else
-#include <sys/ioctl.h>
-#endif
-
-#include <stdlib.h>
-
-/*
- * protocol version
- */
-
-#define SNDRV_PROTOCOL_VERSION(major, minor, subminor) (((major)<<16)|((minor)<<8)|(subminor))
-#define SNDRV_PROTOCOL_MAJOR(version) (((version)>>16)&0xffff)
-#define SNDRV_PROTOCOL_MINOR(version) (((version)>>8)&0xff)
-#define SNDRV_PROTOCOL_MICRO(version) ((version)&0xff)
-#define SNDRV_PROTOCOL_INCOMPATIBLE(kversion, uversion) \
- (SNDRV_PROTOCOL_MAJOR(kversion) != SNDRV_PROTOCOL_MAJOR(uversion) || \
- (SNDRV_PROTOCOL_MAJOR(kversion) == SNDRV_PROTOCOL_MAJOR(uversion) && \
- SNDRV_PROTOCOL_MINOR(kversion) != SNDRV_PROTOCOL_MINOR(uversion)))
-
-/****************************************************************************
- * *
- * Digital audio interface *
- * *
- ****************************************************************************/
-
-struct snd_aes_iec958 {
- unsigned char status[24]; /* AES/IEC958 channel status bits */
- unsigned char subcode[147]; /* AES/IEC958 subcode bits */
- unsigned char pad; /* nothing */
- unsigned char dig_subframe[4]; /* AES/IEC958 subframe bits */
-};
-
-/****************************************************************************
- * *
- * CEA-861 Audio InfoFrame. Used in HDMI and DisplayPort *
- * *
- ****************************************************************************/
-
-struct snd_cea_861_aud_if {
- unsigned char db1_ct_cc; /* coding type and channel count */
- unsigned char db2_sf_ss; /* sample frequency and size */
- unsigned char db3; /* not used, all zeros */
- unsigned char db4_ca; /* channel allocation code */
- unsigned char db5_dminh_lsv; /* downmix inhibit & level-shit values */
-};
-
-/****************************************************************************
- * *
- * Section for driver hardware dependent interface - /dev/snd/hw? *
- * *
- ****************************************************************************/
-
-#define SNDRV_HWDEP_VERSION SNDRV_PROTOCOL_VERSION(1, 0, 1)
-
-enum {
- SNDRV_HWDEP_IFACE_OPL2 = 0,
- SNDRV_HWDEP_IFACE_OPL3,
- SNDRV_HWDEP_IFACE_OPL4,
- SNDRV_HWDEP_IFACE_SB16CSP, /* Creative Signal Processor */
- SNDRV_HWDEP_IFACE_EMU10K1, /* FX8010 processor in EMU10K1 chip */
- SNDRV_HWDEP_IFACE_YSS225, /* Yamaha FX processor */
- SNDRV_HWDEP_IFACE_ICS2115, /* Wavetable synth */
- SNDRV_HWDEP_IFACE_SSCAPE, /* Ensoniq SoundScape ISA card (MC68EC000) */
- SNDRV_HWDEP_IFACE_VX, /* Digigram VX cards */
- SNDRV_HWDEP_IFACE_MIXART, /* Digigram miXart cards */
- SNDRV_HWDEP_IFACE_USX2Y, /* Tascam US122, US224 & US428 usb */
- SNDRV_HWDEP_IFACE_EMUX_WAVETABLE, /* EmuX wavetable */
- SNDRV_HWDEP_IFACE_BLUETOOTH, /* Bluetooth audio */
- SNDRV_HWDEP_IFACE_USX2Y_PCM, /* Tascam US122, US224 & US428 rawusb pcm */
- SNDRV_HWDEP_IFACE_PCXHR, /* Digigram PCXHR */
- SNDRV_HWDEP_IFACE_SB_RC, /* SB Extigy/Audigy2NX remote control */
- SNDRV_HWDEP_IFACE_HDA, /* HD-audio */
- SNDRV_HWDEP_IFACE_USB_STREAM, /* direct access to usb stream */
- SNDRV_HWDEP_IFACE_FW_DICE, /* TC DICE FireWire device */
- SNDRV_HWDEP_IFACE_FW_FIREWORKS, /* Echo Audio Fireworks based device */
- SNDRV_HWDEP_IFACE_FW_BEBOB, /* BridgeCo BeBoB based device */
- SNDRV_HWDEP_IFACE_FW_OXFW, /* Oxford OXFW970/971 based device */
- SNDRV_HWDEP_IFACE_FW_DIGI00X, /* Digidesign Digi 002/003 family */
- SNDRV_HWDEP_IFACE_FW_TASCAM, /* TASCAM FireWire series */
- SNDRV_HWDEP_IFACE_LINE6, /* Line6 USB processors */
- SNDRV_HWDEP_IFACE_AUDIO_BE, /* Backend Audio Control */
- SNDRV_HWDEP_IFACE_AUDIO_CODEC, /* codec Audio Control */
-
- /* Don't forget to change the following: */
- SNDRV_HWDEP_IFACE_LAST = SNDRV_HWDEP_IFACE_AUDIO_CODEC
-};
-
-struct snd_hwdep_info {
- unsigned int device; /* WR: device number */
- int card; /* R: card number */
- unsigned char id[64]; /* ID (user selectable) */
- unsigned char name[80]; /* hwdep name */
- int iface; /* hwdep interface */
- unsigned char reserved[64]; /* reserved for future */
-};
-
-/* generic DSP loader */
-struct snd_hwdep_dsp_status {
- unsigned int version; /* R: driver-specific version */
- unsigned char id[32]; /* R: driver-specific ID string */
- unsigned int num_dsps; /* R: number of DSP images to transfer */
- unsigned int dsp_loaded; /* R: bit flags indicating the loaded DSPs */
- unsigned int chip_ready; /* R: 1 = initialization finished */
- unsigned char reserved[16]; /* reserved for future use */
-};
-
-struct snd_hwdep_dsp_image {
- unsigned int index; /* W: DSP index */
- unsigned char name[64]; /* W: ID (e.g. file name) */
- unsigned char *image; /* W: binary image */
- size_t length; /* W: size of image in bytes */
- unsigned long driver_data; /* W: driver-specific data */
-};
-
-#define SNDRV_HWDEP_IOCTL_PVERSION _IOR ('H', 0x00, int)
-#define SNDRV_HWDEP_IOCTL_INFO _IOR ('H', 0x01, struct snd_hwdep_info)
-#define SNDRV_HWDEP_IOCTL_DSP_STATUS _IOR('H', 0x02, struct snd_hwdep_dsp_status)
-#define SNDRV_HWDEP_IOCTL_DSP_LOAD _IOW('H', 0x03, struct snd_hwdep_dsp_image)
-
-/*****************************************************************************
- * *
- * Digital Audio (PCM) interface - /dev/snd/pcm?? *
- * *
- *****************************************************************************/
-
-#define SNDRV_PCM_VERSION SNDRV_PROTOCOL_VERSION(2, 0, 13)
-
-typedef unsigned long snd_pcm_uframes_t;
-typedef signed long snd_pcm_sframes_t;
-
-enum {
- SNDRV_PCM_CLASS_GENERIC = 0, /* standard mono or stereo device */
- SNDRV_PCM_CLASS_MULTI, /* multichannel device */
- SNDRV_PCM_CLASS_MODEM, /* software modem class */
- SNDRV_PCM_CLASS_DIGITIZER, /* digitizer class */
- /* Don't forget to change the following: */
- SNDRV_PCM_CLASS_LAST = SNDRV_PCM_CLASS_DIGITIZER,
-};
-
-enum {
- SNDRV_PCM_SUBCLASS_GENERIC_MIX = 0, /* mono or stereo subdevices are mixed together */
- SNDRV_PCM_SUBCLASS_MULTI_MIX, /* multichannel subdevices are mixed together */
- /* Don't forget to change the following: */
- SNDRV_PCM_SUBCLASS_LAST = SNDRV_PCM_SUBCLASS_MULTI_MIX,
-};
-
-enum {
- SNDRV_PCM_STREAM_PLAYBACK = 0,
- SNDRV_PCM_STREAM_CAPTURE,
- SNDRV_PCM_STREAM_LAST = SNDRV_PCM_STREAM_CAPTURE,
-};
-
-typedef int __bitwise snd_pcm_access_t;
-#define SNDRV_PCM_ACCESS_MMAP_INTERLEAVED ((snd_pcm_access_t) 0) /* interleaved mmap */
-#define SNDRV_PCM_ACCESS_MMAP_NONINTERLEAVED ((snd_pcm_access_t) 1) /* noninterleaved mmap */
-#define SNDRV_PCM_ACCESS_MMAP_COMPLEX ((snd_pcm_access_t) 2) /* complex mmap */
-#define SNDRV_PCM_ACCESS_RW_INTERLEAVED ((snd_pcm_access_t) 3) /* readi/writei */
-#define SNDRV_PCM_ACCESS_RW_NONINTERLEAVED ((snd_pcm_access_t) 4) /* readn/writen */
-#define SNDRV_PCM_ACCESS_LAST SNDRV_PCM_ACCESS_RW_NONINTERLEAVED
-
-typedef int __bitwise snd_pcm_format_t;
-#define SNDRV_PCM_FORMAT_S8 ((snd_pcm_format_t) 0)
-#define SNDRV_PCM_FORMAT_U8 ((snd_pcm_format_t) 1)
-#define SNDRV_PCM_FORMAT_S16_LE ((snd_pcm_format_t) 2)
-#define SNDRV_PCM_FORMAT_S16_BE ((snd_pcm_format_t) 3)
-#define SNDRV_PCM_FORMAT_U16_LE ((snd_pcm_format_t) 4)
-#define SNDRV_PCM_FORMAT_U16_BE ((snd_pcm_format_t) 5)
-#define SNDRV_PCM_FORMAT_S24_LE ((snd_pcm_format_t) 6) /* low three bytes */
-#define SNDRV_PCM_FORMAT_S24_BE ((snd_pcm_format_t) 7) /* low three bytes */
-#define SNDRV_PCM_FORMAT_U24_LE ((snd_pcm_format_t) 8) /* low three bytes */
-#define SNDRV_PCM_FORMAT_U24_BE ((snd_pcm_format_t) 9) /* low three bytes */
-#define SNDRV_PCM_FORMAT_S32_LE ((snd_pcm_format_t) 10)
-#define SNDRV_PCM_FORMAT_S32_BE ((snd_pcm_format_t) 11)
-#define SNDRV_PCM_FORMAT_U32_LE ((snd_pcm_format_t) 12)
-#define SNDRV_PCM_FORMAT_U32_BE ((snd_pcm_format_t) 13)
-#define SNDRV_PCM_FORMAT_FLOAT_LE ((snd_pcm_format_t) 14) /* 4-byte float, IEEE-754 32-bit, range -1.0 to 1.0 */
-#define SNDRV_PCM_FORMAT_FLOAT_BE ((snd_pcm_format_t) 15) /* 4-byte float, IEEE-754 32-bit, range -1.0 to 1.0 */
-#define SNDRV_PCM_FORMAT_FLOAT64_LE ((snd_pcm_format_t) 16) /* 8-byte float, IEEE-754 64-bit, range -1.0 to 1.0 */
-#define SNDRV_PCM_FORMAT_FLOAT64_BE ((snd_pcm_format_t) 17) /* 8-byte float, IEEE-754 64-bit, range -1.0 to 1.0 */
-#define SNDRV_PCM_FORMAT_IEC958_SUBFRAME_LE ((snd_pcm_format_t) 18) /* IEC-958 subframe, Little Endian */
-#define SNDRV_PCM_FORMAT_IEC958_SUBFRAME_BE ((snd_pcm_format_t) 19) /* IEC-958 subframe, Big Endian */
-#define SNDRV_PCM_FORMAT_MU_LAW ((snd_pcm_format_t) 20)
-#define SNDRV_PCM_FORMAT_A_LAW ((snd_pcm_format_t) 21)
-#define SNDRV_PCM_FORMAT_IMA_ADPCM ((snd_pcm_format_t) 22)
-#define SNDRV_PCM_FORMAT_MPEG ((snd_pcm_format_t) 23)
-#define SNDRV_PCM_FORMAT_GSM ((snd_pcm_format_t) 24)
-#define SNDRV_PCM_FORMAT_SPECIAL ((snd_pcm_format_t) 31)
-#define SNDRV_PCM_FORMAT_S24_3LE ((snd_pcm_format_t) 32) /* in three bytes */
-#define SNDRV_PCM_FORMAT_S24_3BE ((snd_pcm_format_t) 33) /* in three bytes */
-#define SNDRV_PCM_FORMAT_U24_3LE ((snd_pcm_format_t) 34) /* in three bytes */
-#define SNDRV_PCM_FORMAT_U24_3BE ((snd_pcm_format_t) 35) /* in three bytes */
-#define SNDRV_PCM_FORMAT_S20_3LE ((snd_pcm_format_t) 36) /* in three bytes */
-#define SNDRV_PCM_FORMAT_S20_3BE ((snd_pcm_format_t) 37) /* in three bytes */
-#define SNDRV_PCM_FORMAT_U20_3LE ((snd_pcm_format_t) 38) /* in three bytes */
-#define SNDRV_PCM_FORMAT_U20_3BE ((snd_pcm_format_t) 39) /* in three bytes */
-#define SNDRV_PCM_FORMAT_S18_3LE ((snd_pcm_format_t) 40) /* in three bytes */
-#define SNDRV_PCM_FORMAT_S18_3BE ((snd_pcm_format_t) 41) /* in three bytes */
-#define SNDRV_PCM_FORMAT_U18_3LE ((snd_pcm_format_t) 42) /* in three bytes */
-#define SNDRV_PCM_FORMAT_U18_3BE ((snd_pcm_format_t) 43) /* in three bytes */
-#define SNDRV_PCM_FORMAT_G723_24 ((snd_pcm_format_t) 44) /* 8 samples in 3 bytes */
-#define SNDRV_PCM_FORMAT_G723_24_1B ((snd_pcm_format_t) 45) /* 1 sample in 1 byte */
-#define SNDRV_PCM_FORMAT_G723_40 ((snd_pcm_format_t) 46) /* 8 Samples in 5 bytes */
-#define SNDRV_PCM_FORMAT_G723_40_1B ((snd_pcm_format_t) 47) /* 1 sample in 1 byte */
-#define SNDRV_PCM_FORMAT_DSD_U8 ((snd_pcm_format_t) 48) /* DSD, 1-byte samples DSD (x8) */
-#define SNDRV_PCM_FORMAT_DSD_U16_LE ((snd_pcm_format_t) 49) /* DSD, 2-byte samples DSD (x16), little endian */
-#define SNDRV_PCM_FORMAT_DSD_U32_LE ((snd_pcm_format_t) 50) /* DSD, 4-byte samples DSD (x32), little endian */
-#define SNDRV_PCM_FORMAT_DSD_U16_BE ((snd_pcm_format_t) 51) /* DSD, 2-byte samples DSD (x16), big endian */
-#define SNDRV_PCM_FORMAT_DSD_U32_BE ((snd_pcm_format_t) 52) /* DSD, 4-byte samples DSD (x32), big endian */
-#define SNDRV_PCM_FORMAT_LAST SNDRV_PCM_FORMAT_DSD_U32_BE
-
-#ifdef SNDRV_LITTLE_ENDIAN
-#define SNDRV_PCM_FORMAT_S16 SNDRV_PCM_FORMAT_S16_LE
-#define SNDRV_PCM_FORMAT_U16 SNDRV_PCM_FORMAT_U16_LE
-#define SNDRV_PCM_FORMAT_S24 SNDRV_PCM_FORMAT_S24_LE
-#define SNDRV_PCM_FORMAT_U24 SNDRV_PCM_FORMAT_U24_LE
-#define SNDRV_PCM_FORMAT_S32 SNDRV_PCM_FORMAT_S32_LE
-#define SNDRV_PCM_FORMAT_U32 SNDRV_PCM_FORMAT_U32_LE
-#define SNDRV_PCM_FORMAT_FLOAT SNDRV_PCM_FORMAT_FLOAT_LE
-#define SNDRV_PCM_FORMAT_FLOAT64 SNDRV_PCM_FORMAT_FLOAT64_LE
-#define SNDRV_PCM_FORMAT_IEC958_SUBFRAME SNDRV_PCM_FORMAT_IEC958_SUBFRAME_LE
-#endif
-#ifdef SNDRV_BIG_ENDIAN
-#define SNDRV_PCM_FORMAT_S16 SNDRV_PCM_FORMAT_S16_BE
-#define SNDRV_PCM_FORMAT_U16 SNDRV_PCM_FORMAT_U16_BE
-#define SNDRV_PCM_FORMAT_S24 SNDRV_PCM_FORMAT_S24_BE
-#define SNDRV_PCM_FORMAT_U24 SNDRV_PCM_FORMAT_U24_BE
-#define SNDRV_PCM_FORMAT_S32 SNDRV_PCM_FORMAT_S32_BE
-#define SNDRV_PCM_FORMAT_U32 SNDRV_PCM_FORMAT_U32_BE
-#define SNDRV_PCM_FORMAT_FLOAT SNDRV_PCM_FORMAT_FLOAT_BE
-#define SNDRV_PCM_FORMAT_FLOAT64 SNDRV_PCM_FORMAT_FLOAT64_BE
-#define SNDRV_PCM_FORMAT_IEC958_SUBFRAME SNDRV_PCM_FORMAT_IEC958_SUBFRAME_BE
-#endif
-
-typedef int __bitwise snd_pcm_subformat_t;
-#define SNDRV_PCM_SUBFORMAT_STD ((snd_pcm_subformat_t) 0)
-#define SNDRV_PCM_SUBFORMAT_LAST SNDRV_PCM_SUBFORMAT_STD
-
-#define SNDRV_PCM_INFO_MMAP 0x00000001 /* hardware supports mmap */
-#define SNDRV_PCM_INFO_MMAP_VALID 0x00000002 /* period data are valid during transfer */
-#define SNDRV_PCM_INFO_DOUBLE 0x00000004 /* Double buffering needed for PCM start/stop */
-#define SNDRV_PCM_INFO_BATCH 0x00000010 /* double buffering */
-#define SNDRV_PCM_INFO_INTERLEAVED 0x00000100 /* channels are interleaved */
-#define SNDRV_PCM_INFO_NONINTERLEAVED 0x00000200 /* channels are not interleaved */
-#define SNDRV_PCM_INFO_COMPLEX 0x00000400 /* complex frame organization (mmap only) */
-#define SNDRV_PCM_INFO_BLOCK_TRANSFER 0x00010000 /* hardware transfer block of samples */
-#define SNDRV_PCM_INFO_OVERRANGE 0x00020000 /* hardware supports ADC (capture) overrange detection */
-#define SNDRV_PCM_INFO_RESUME 0x00040000 /* hardware supports stream resume after suspend */
-#define SNDRV_PCM_INFO_PAUSE 0x00080000 /* pause ioctl is supported */
-#define SNDRV_PCM_INFO_HALF_DUPLEX 0x00100000 /* only half duplex */
-#define SNDRV_PCM_INFO_JOINT_DUPLEX 0x00200000 /* playback and capture stream are somewhat correlated */
-#define SNDRV_PCM_INFO_SYNC_START 0x00400000 /* pcm support some kind of sync go */
-#define SNDRV_PCM_INFO_NO_PERIOD_WAKEUP 0x00800000 /* period wakeup can be disabled */
-#define SNDRV_PCM_INFO_HAS_WALL_CLOCK 0x01000000 /* (Deprecated)has audio wall clock for audio/system time sync */
-#define SNDRV_PCM_INFO_HAS_LINK_ATIME 0x01000000 /* report hardware link audio time, reset on startup */
-#define SNDRV_PCM_INFO_HAS_LINK_ABSOLUTE_ATIME 0x02000000 /* report absolute hardware link audio time, not reset on startup */
-#define SNDRV_PCM_INFO_HAS_LINK_ESTIMATED_ATIME 0x04000000 /* report estimated link audio time */
-#define SNDRV_PCM_INFO_HAS_LINK_SYNCHRONIZED_ATIME 0x08000000 /* report synchronized audio/system time */
-
-#define SNDRV_PCM_INFO_DRAIN_TRIGGER 0x40000000 /* internal kernel flag - trigger in drain */
-#define SNDRV_PCM_INFO_FIFO_IN_FRAMES 0x80000000 /* internal kernel flag - FIFO size is in frames */
-
-
-
-typedef int __bitwise snd_pcm_state_t;
-#define SNDRV_PCM_STATE_OPEN ((snd_pcm_state_t) 0) /* stream is open */
-#define SNDRV_PCM_STATE_SETUP ((snd_pcm_state_t) 1) /* stream has a setup */
-#define SNDRV_PCM_STATE_PREPARED ((snd_pcm_state_t) 2) /* stream is ready to start */
-#define SNDRV_PCM_STATE_RUNNING ((snd_pcm_state_t) 3) /* stream is running */
-#define SNDRV_PCM_STATE_XRUN ((snd_pcm_state_t) 4) /* stream reached an xrun */
-#define SNDRV_PCM_STATE_DRAINING ((snd_pcm_state_t) 5) /* stream is draining */
-#define SNDRV_PCM_STATE_PAUSED ((snd_pcm_state_t) 6) /* stream is paused */
-#define SNDRV_PCM_STATE_SUSPENDED ((snd_pcm_state_t) 7) /* hardware is suspended */
-#define SNDRV_PCM_STATE_DISCONNECTED ((snd_pcm_state_t) 8) /* hardware is disconnected */
-#define SNDRV_PCM_STATE_LAST SNDRV_PCM_STATE_DISCONNECTED
-
-enum {
- SNDRV_PCM_MMAP_OFFSET_DATA = 0x00000000,
- SNDRV_PCM_MMAP_OFFSET_STATUS = 0x80000000,
- SNDRV_PCM_MMAP_OFFSET_CONTROL = 0x81000000,
-};
-
-union snd_pcm_sync_id {
- unsigned char id[16];
- unsigned short id16[8];
- unsigned int id32[4];
-};
-
-struct snd_pcm_info {
- unsigned int device; /* RO/WR (control): device number */
- unsigned int subdevice; /* RO/WR (control): subdevice number */
- int stream; /* RO/WR (control): stream direction */
- int card; /* R: card number */
- unsigned char id[64]; /* ID (user selectable) */
- unsigned char name[80]; /* name of this device */
- unsigned char subname[32]; /* subdevice name */
- int dev_class; /* SNDRV_PCM_CLASS_* */
- int dev_subclass; /* SNDRV_PCM_SUBCLASS_* */
- unsigned int subdevices_count;
- unsigned int subdevices_avail;
- union snd_pcm_sync_id sync; /* hardware synchronization ID */
- unsigned char reserved[64]; /* reserved for future... */
-};
-
-typedef int snd_pcm_hw_param_t;
-#define SNDRV_PCM_HW_PARAM_ACCESS 0 /* Access type */
-#define SNDRV_PCM_HW_PARAM_FORMAT 1 /* Format */
-#define SNDRV_PCM_HW_PARAM_SUBFORMAT 2 /* Subformat */
-#define SNDRV_PCM_HW_PARAM_FIRST_MASK SNDRV_PCM_HW_PARAM_ACCESS
-#define SNDRV_PCM_HW_PARAM_LAST_MASK SNDRV_PCM_HW_PARAM_SUBFORMAT
-
-#define SNDRV_PCM_HW_PARAM_SAMPLE_BITS 8 /* Bits per sample */
-#define SNDRV_PCM_HW_PARAM_FRAME_BITS 9 /* Bits per frame */
-#define SNDRV_PCM_HW_PARAM_CHANNELS 10 /* Channels */
-#define SNDRV_PCM_HW_PARAM_RATE 11 /* Approx rate */
-#define SNDRV_PCM_HW_PARAM_PERIOD_TIME 12 /* Approx distance between
- * interrupts in us
- */
-#define SNDRV_PCM_HW_PARAM_PERIOD_SIZE 13 /* Approx frames between
- * interrupts
- */
-#define SNDRV_PCM_HW_PARAM_PERIOD_BYTES 14 /* Approx bytes between
- * interrupts
- */
-#define SNDRV_PCM_HW_PARAM_PERIODS 15 /* Approx interrupts per
- * buffer
- */
-#define SNDRV_PCM_HW_PARAM_BUFFER_TIME 16 /* Approx duration of buffer
- * in us
- */
-#define SNDRV_PCM_HW_PARAM_BUFFER_SIZE 17 /* Size of buffer in frames */
-#define SNDRV_PCM_HW_PARAM_BUFFER_BYTES 18 /* Size of buffer in bytes */
-#define SNDRV_PCM_HW_PARAM_TICK_TIME 19 /* Approx tick duration in us */
-#define SNDRV_PCM_HW_PARAM_FIRST_INTERVAL SNDRV_PCM_HW_PARAM_SAMPLE_BITS
-#define SNDRV_PCM_HW_PARAM_LAST_INTERVAL SNDRV_PCM_HW_PARAM_TICK_TIME
-
-#define SNDRV_PCM_HW_PARAMS_NORESAMPLE (1<<0) /* avoid rate resampling */
-#define SNDRV_PCM_HW_PARAMS_EXPORT_BUFFER (1<<1) /* export buffer */
-#define SNDRV_PCM_HW_PARAMS_NO_PERIOD_WAKEUP (1<<2) /* disable period wakeups */
-
-struct snd_interval {
- unsigned int min, max;
- unsigned int openmin:1,
- openmax:1,
- integer:1,
- empty:1;
-};
-
-#define SNDRV_MASK_MAX 256
-
-struct snd_mask {
- __u32 bits[(SNDRV_MASK_MAX+31)/32];
-};
-
-struct snd_pcm_hw_params {
- unsigned int flags;
- struct snd_mask masks[SNDRV_PCM_HW_PARAM_LAST_MASK -
- SNDRV_PCM_HW_PARAM_FIRST_MASK + 1];
- struct snd_mask mres[5]; /* reserved masks */
- struct snd_interval intervals[SNDRV_PCM_HW_PARAM_LAST_INTERVAL -
- SNDRV_PCM_HW_PARAM_FIRST_INTERVAL + 1];
- struct snd_interval ires[9]; /* reserved intervals */
- unsigned int rmask; /* W: requested masks */
- unsigned int cmask; /* R: changed masks */
- unsigned int info; /* R: Info flags for returned setup */
- unsigned int msbits; /* R: used most significant bits */
- unsigned int rate_num; /* R: rate numerator */
- unsigned int rate_den; /* R: rate denominator */
- snd_pcm_uframes_t fifo_size; /* R: chip FIFO size in frames */
- unsigned char reserved[64]; /* reserved for future */
-};
-
-enum {
- SNDRV_PCM_TSTAMP_NONE = 0,
- SNDRV_PCM_TSTAMP_ENABLE,
- SNDRV_PCM_TSTAMP_LAST = SNDRV_PCM_TSTAMP_ENABLE,
-};
-
-struct snd_pcm_sw_params {
- int tstamp_mode; /* timestamp mode */
- unsigned int period_step;
- unsigned int sleep_min; /* min ticks to sleep */
- snd_pcm_uframes_t avail_min; /* min avail frames for wakeup */
- snd_pcm_uframes_t xfer_align; /* obsolete: xfer size need to be a multiple */
- snd_pcm_uframes_t start_threshold; /* min hw_avail frames for automatic start */
- snd_pcm_uframes_t stop_threshold; /* min avail frames for automatic stop */
- snd_pcm_uframes_t silence_threshold; /* min distance from noise for silence filling */
- snd_pcm_uframes_t silence_size; /* silence block size */
- snd_pcm_uframes_t boundary; /* pointers wrap point */
- unsigned int proto; /* protocol version */
- unsigned int tstamp_type; /* timestamp type (req. proto >= 2.0.12) */
- unsigned char reserved[56]; /* reserved for future */
-};
-
-struct snd_pcm_channel_info {
- unsigned int channel;
- __kernel_off_t offset; /* mmap offset */
- unsigned int first; /* offset to first sample in bits */
- unsigned int step; /* samples distance in bits */
-};
-
-enum {
- /*
- * first definition for backwards compatibility only,
- * maps to wallclock/link time for HDAudio playback and DEFAULT/DMA time for everything else
- */
- SNDRV_PCM_AUDIO_TSTAMP_TYPE_COMPAT = 0,
-
- /* timestamp definitions */
- SNDRV_PCM_AUDIO_TSTAMP_TYPE_DEFAULT = 1, /* DMA time, reported as per hw_ptr */
- SNDRV_PCM_AUDIO_TSTAMP_TYPE_LINK = 2, /* link time reported by sample or wallclock counter, reset on startup */
- SNDRV_PCM_AUDIO_TSTAMP_TYPE_LINK_ABSOLUTE = 3, /* link time reported by sample or wallclock counter, not reset on startup */
- SNDRV_PCM_AUDIO_TSTAMP_TYPE_LINK_ESTIMATED = 4, /* link time estimated indirectly */
- SNDRV_PCM_AUDIO_TSTAMP_TYPE_LINK_SYNCHRONIZED = 5, /* link time synchronized with system time */
- SNDRV_PCM_AUDIO_TSTAMP_TYPE_LAST = SNDRV_PCM_AUDIO_TSTAMP_TYPE_LINK_SYNCHRONIZED
-};
-
-struct snd_pcm_status {
- snd_pcm_state_t state; /* stream state */
- struct timespec trigger_tstamp; /* time when stream was started/stopped/paused */
- struct timespec tstamp; /* reference timestamp */
- snd_pcm_uframes_t appl_ptr; /* appl ptr */
- snd_pcm_uframes_t hw_ptr; /* hw ptr */
- snd_pcm_sframes_t delay; /* current delay in frames */
- snd_pcm_uframes_t avail; /* number of frames available */
- snd_pcm_uframes_t avail_max; /* max frames available on hw since last status */
- snd_pcm_uframes_t overrange; /* count of ADC (capture) overrange detections from last status */
- snd_pcm_state_t suspended_state; /* suspended stream state */
- __u32 audio_tstamp_data; /* needed for 64-bit alignment, used for configs/report to/from userspace */
- struct timespec audio_tstamp; /* sample counter, wall clock, PHC or on-demand sync'ed */
- struct timespec driver_tstamp; /* useful in case reference system tstamp is reported with delay */
- __u32 audio_tstamp_accuracy; /* in ns units, only valid if indicated in audio_tstamp_data */
- unsigned char reserved[52-2*sizeof(struct timespec)]; /* must be filled with zero */
-};
-
-struct snd_pcm_mmap_status {
- snd_pcm_state_t state; /* RO: state - SNDRV_PCM_STATE_XXXX */
- int pad1; /* Needed for 64 bit alignment */
- snd_pcm_uframes_t hw_ptr; /* RO: hw ptr (0...boundary-1) */
- struct timespec tstamp; /* Timestamp */
- snd_pcm_state_t suspended_state; /* RO: suspended stream state */
- struct timespec audio_tstamp; /* from sample counter or wall clock */
-};
-
-struct snd_pcm_mmap_control {
- snd_pcm_uframes_t appl_ptr; /* RW: appl ptr (0...boundary-1) */
- snd_pcm_uframes_t avail_min; /* RW: min available frames for wakeup */
-};
-
-#define SNDRV_PCM_SYNC_PTR_HWSYNC (1<<0) /* execute hwsync */
-#define SNDRV_PCM_SYNC_PTR_APPL (1<<1) /* get appl_ptr from driver (r/w op) */
-#define SNDRV_PCM_SYNC_PTR_AVAIL_MIN (1<<2) /* get avail_min from driver */
-
-struct snd_pcm_sync_ptr {
- unsigned int flags;
- union {
- struct snd_pcm_mmap_status status;
- unsigned char reserved[64];
- } s;
- union {
- struct snd_pcm_mmap_control control;
- unsigned char reserved[64];
- } c;
-};
-
-struct snd_xferi {
- snd_pcm_sframes_t result;
- void *buf;
- snd_pcm_uframes_t frames;
-};
-
-struct snd_xfern {
- snd_pcm_sframes_t result;
- void * *bufs;
- snd_pcm_uframes_t frames;
-};
-
-enum {
- SNDRV_PCM_TSTAMP_TYPE_GETTIMEOFDAY = 0, /* gettimeofday equivalent */
- SNDRV_PCM_TSTAMP_TYPE_MONOTONIC, /* posix_clock_monotonic equivalent */
- SNDRV_PCM_TSTAMP_TYPE_MONOTONIC_RAW, /* monotonic_raw (no NTP) */
- SNDRV_PCM_TSTAMP_TYPE_LAST = SNDRV_PCM_TSTAMP_TYPE_MONOTONIC_RAW,
-};
-
-/* channel positions */
-enum {
- SNDRV_CHMAP_UNKNOWN = 0,
- SNDRV_CHMAP_NA, /* N/A, silent */
- SNDRV_CHMAP_MONO, /* mono stream */
- /* this follows the alsa-lib mixer channel value + 3 */
- SNDRV_CHMAP_FL, /* front left */
- SNDRV_CHMAP_FR, /* front right */
- SNDRV_CHMAP_RL, /* rear left */
- SNDRV_CHMAP_RR, /* rear right */
- SNDRV_CHMAP_FC, /* front center */
- SNDRV_CHMAP_LFE, /* LFE */
- SNDRV_CHMAP_SL, /* side left */
- SNDRV_CHMAP_SR, /* side right */
- SNDRV_CHMAP_RC, /* rear center */
- /* new definitions */
- SNDRV_CHMAP_FLC, /* front left center */
- SNDRV_CHMAP_FRC, /* front right center */
- SNDRV_CHMAP_RLC, /* rear left center */
- SNDRV_CHMAP_RRC, /* rear right center */
- SNDRV_CHMAP_FLW, /* front left wide */
- SNDRV_CHMAP_FRW, /* front right wide */
- SNDRV_CHMAP_FLH, /* front left high */
- SNDRV_CHMAP_FCH, /* front center high */
- SNDRV_CHMAP_FRH, /* front right high */
- SNDRV_CHMAP_TC, /* top center */
- SNDRV_CHMAP_TFL, /* top front left */
- SNDRV_CHMAP_TFR, /* top front right */
- SNDRV_CHMAP_TFC, /* top front center */
- SNDRV_CHMAP_TRL, /* top rear left */
- SNDRV_CHMAP_TRR, /* top rear right */
- SNDRV_CHMAP_TRC, /* top rear center */
- /* new definitions for UAC2 */
- SNDRV_CHMAP_TFLC, /* top front left center */
- SNDRV_CHMAP_TFRC, /* top front right center */
- SNDRV_CHMAP_TSL, /* top side left */
- SNDRV_CHMAP_TSR, /* top side right */
- SNDRV_CHMAP_LLFE, /* left LFE */
- SNDRV_CHMAP_RLFE, /* right LFE */
- SNDRV_CHMAP_BC, /* bottom center */
- SNDRV_CHMAP_BLC, /* bottom left center */
- SNDRV_CHMAP_BRC, /* bottom right center */
- SNDRV_CHMAP_LAST = SNDRV_CHMAP_BRC,
-};
-
-#define SNDRV_CHMAP_POSITION_MASK 0xffff
-#define SNDRV_CHMAP_PHASE_INVERSE (0x01 << 16)
-#define SNDRV_CHMAP_DRIVER_SPEC (0x02 << 16)
-
-#define SNDRV_PCM_IOCTL_PVERSION _IOR('A', 0x00, int)
-#define SNDRV_PCM_IOCTL_INFO _IOR('A', 0x01, struct snd_pcm_info)
-#define SNDRV_PCM_IOCTL_TSTAMP _IOW('A', 0x02, int)
-#define SNDRV_PCM_IOCTL_TTSTAMP _IOW('A', 0x03, int)
-#define SNDRV_PCM_IOCTL_HW_REFINE _IOWR('A', 0x10, struct snd_pcm_hw_params)
-#define SNDRV_PCM_IOCTL_HW_PARAMS _IOWR('A', 0x11, struct snd_pcm_hw_params)
-#define SNDRV_PCM_IOCTL_HW_FREE _IO('A', 0x12)
-#define SNDRV_PCM_IOCTL_SW_PARAMS _IOWR('A', 0x13, struct snd_pcm_sw_params)
-#define SNDRV_PCM_IOCTL_STATUS _IOR('A', 0x20, struct snd_pcm_status)
-#define SNDRV_PCM_IOCTL_DELAY _IOR('A', 0x21, snd_pcm_sframes_t)
-#define SNDRV_PCM_IOCTL_HWSYNC _IO('A', 0x22)
-#define SNDRV_PCM_IOCTL_SYNC_PTR _IOWR('A', 0x23, struct snd_pcm_sync_ptr)
-#define SNDRV_PCM_IOCTL_STATUS_EXT _IOWR('A', 0x24, struct snd_pcm_status)
-#define SNDRV_PCM_IOCTL_CHANNEL_INFO _IOR('A', 0x32, struct snd_pcm_channel_info)
-#define SNDRV_PCM_IOCTL_PREPARE _IO('A', 0x40)
-#define SNDRV_PCM_IOCTL_RESET _IO('A', 0x41)
-#define SNDRV_PCM_IOCTL_START _IO('A', 0x42)
-#define SNDRV_PCM_IOCTL_DROP _IO('A', 0x43)
-#define SNDRV_PCM_IOCTL_DRAIN _IO('A', 0x44)
-#define SNDRV_PCM_IOCTL_PAUSE _IOW('A', 0x45, int)
-#define SNDRV_PCM_IOCTL_REWIND _IOW('A', 0x46, snd_pcm_uframes_t)
-#define SNDRV_PCM_IOCTL_RESUME _IO('A', 0x47)
-#define SNDRV_PCM_IOCTL_XRUN _IO('A', 0x48)
-#define SNDRV_PCM_IOCTL_FORWARD _IOW('A', 0x49, snd_pcm_uframes_t)
-#define SNDRV_PCM_IOCTL_WRITEI_FRAMES _IOW('A', 0x50, struct snd_xferi)
-#define SNDRV_PCM_IOCTL_READI_FRAMES _IOR('A', 0x51, struct snd_xferi)
-#define SNDRV_PCM_IOCTL_WRITEN_FRAMES _IOW('A', 0x52, struct snd_xfern)
-#define SNDRV_PCM_IOCTL_READN_FRAMES _IOR('A', 0x53, struct snd_xfern)
-#define SNDRV_PCM_IOCTL_LINK _IOW('A', 0x60, int)
-#define SNDRV_PCM_IOCTL_UNLINK _IO('A', 0x61)
-
-/*****************************************************************************
- * *
- * MIDI v1.0 interface *
- * *
- *****************************************************************************/
-
-/*
- * Raw MIDI section - /dev/snd/midi??
- */
-
-#define SNDRV_RAWMIDI_VERSION SNDRV_PROTOCOL_VERSION(2, 0, 0)
-
-enum {
- SNDRV_RAWMIDI_STREAM_OUTPUT = 0,
- SNDRV_RAWMIDI_STREAM_INPUT,
- SNDRV_RAWMIDI_STREAM_LAST = SNDRV_RAWMIDI_STREAM_INPUT,
-};
-
-#define SNDRV_RAWMIDI_INFO_OUTPUT 0x00000001
-#define SNDRV_RAWMIDI_INFO_INPUT 0x00000002
-#define SNDRV_RAWMIDI_INFO_DUPLEX 0x00000004
-
-struct snd_rawmidi_info {
- unsigned int device; /* RO/WR (control): device number */
- unsigned int subdevice; /* RO/WR (control): subdevice number */
- int stream; /* WR: stream */
- int card; /* R: card number */
- unsigned int flags; /* SNDRV_RAWMIDI_INFO_XXXX */
- unsigned char id[64]; /* ID (user selectable) */
- unsigned char name[80]; /* name of device */
- unsigned char subname[32]; /* name of active or selected subdevice */
- unsigned int subdevices_count;
- unsigned int subdevices_avail;
- unsigned char reserved[64]; /* reserved for future use */
-};
-
-struct snd_rawmidi_params {
- int stream;
- size_t buffer_size; /* queue size in bytes */
- size_t avail_min; /* minimum avail bytes for wakeup */
- unsigned int no_active_sensing: 1; /* do not send active sensing byte in close() */
- unsigned char reserved[16]; /* reserved for future use */
-};
-
-struct snd_rawmidi_status {
- int stream;
- struct timespec tstamp; /* Timestamp */
- size_t avail; /* available bytes */
- size_t xruns; /* count of overruns since last status (in bytes) */
- unsigned char reserved[16]; /* reserved for future use */
-};
-
-#define SNDRV_RAWMIDI_IOCTL_PVERSION _IOR('W', 0x00, int)
-#define SNDRV_RAWMIDI_IOCTL_INFO _IOR('W', 0x01, struct snd_rawmidi_info)
-#define SNDRV_RAWMIDI_IOCTL_PARAMS _IOWR('W', 0x10, struct snd_rawmidi_params)
-#define SNDRV_RAWMIDI_IOCTL_STATUS _IOWR('W', 0x20, struct snd_rawmidi_status)
-#define SNDRV_RAWMIDI_IOCTL_DROP _IOW('W', 0x30, int)
-#define SNDRV_RAWMIDI_IOCTL_DRAIN _IOW('W', 0x31, int)
-
-/*
- * Timer section - /dev/snd/timer
- */
-
-#define SNDRV_TIMER_VERSION SNDRV_PROTOCOL_VERSION(2, 0, 6)
-
-enum {
- SNDRV_TIMER_CLASS_NONE = -1,
- SNDRV_TIMER_CLASS_SLAVE = 0,
- SNDRV_TIMER_CLASS_GLOBAL,
- SNDRV_TIMER_CLASS_CARD,
- SNDRV_TIMER_CLASS_PCM,
- SNDRV_TIMER_CLASS_LAST = SNDRV_TIMER_CLASS_PCM,
-};
-
-/* slave timer classes */
-enum {
- SNDRV_TIMER_SCLASS_NONE = 0,
- SNDRV_TIMER_SCLASS_APPLICATION,
- SNDRV_TIMER_SCLASS_SEQUENCER, /* alias */
- SNDRV_TIMER_SCLASS_OSS_SEQUENCER, /* alias */
- SNDRV_TIMER_SCLASS_LAST = SNDRV_TIMER_SCLASS_OSS_SEQUENCER,
-};
-
-/* global timers (device member) */
-#define SNDRV_TIMER_GLOBAL_SYSTEM 0
-#define SNDRV_TIMER_GLOBAL_RTC 1 /* unused */
-#define SNDRV_TIMER_GLOBAL_HPET 2
-#define SNDRV_TIMER_GLOBAL_HRTIMER 3
-
-/* info flags */
-#define SNDRV_TIMER_FLG_SLAVE (1<<0) /* cannot be controlled */
-
-struct snd_timer_id {
- int dev_class;
- int dev_sclass;
- int card;
- int device;
- int subdevice;
-};
-
-struct snd_timer_ginfo {
- struct snd_timer_id tid; /* requested timer ID */
- unsigned int flags; /* timer flags - SNDRV_TIMER_FLG_* */
- int card; /* card number */
- unsigned char id[64]; /* timer identification */
- unsigned char name[80]; /* timer name */
- unsigned long reserved0; /* reserved for future use */
- unsigned long resolution; /* average period resolution in ns */
- unsigned long resolution_min; /* minimal period resolution in ns */
- unsigned long resolution_max; /* maximal period resolution in ns */
- unsigned int clients; /* active timer clients */
- unsigned char reserved[32];
-};
-
-struct snd_timer_gparams {
- struct snd_timer_id tid; /* requested timer ID */
- unsigned long period_num; /* requested precise period duration (in seconds) - numerator */
- unsigned long period_den; /* requested precise period duration (in seconds) - denominator */
- unsigned char reserved[32];
-};
-
-struct snd_timer_gstatus {
- struct snd_timer_id tid; /* requested timer ID */
- unsigned long resolution; /* current period resolution in ns */
- unsigned long resolution_num; /* precise current period resolution (in seconds) - numerator */
- unsigned long resolution_den; /* precise current period resolution (in seconds) - denominator */
- unsigned char reserved[32];
-};
-
-struct snd_timer_select {
- struct snd_timer_id id; /* bind to timer ID */
- unsigned char reserved[32]; /* reserved */
-};
-
-struct snd_timer_info {
- unsigned int flags; /* timer flags - SNDRV_TIMER_FLG_* */
- int card; /* card number */
- unsigned char id[64]; /* timer identificator */
- unsigned char name[80]; /* timer name */
- unsigned long reserved0; /* reserved for future use */
- unsigned long resolution; /* average period resolution in ns */
- unsigned char reserved[64]; /* reserved */
-};
-
-#define SNDRV_TIMER_PSFLG_AUTO (1<<0) /* auto start, otherwise one-shot */
-#define SNDRV_TIMER_PSFLG_EXCLUSIVE (1<<1) /* exclusive use, precise start/stop/pause/continue */
-#define SNDRV_TIMER_PSFLG_EARLY_EVENT (1<<2) /* write early event to the poll queue */
-
-struct snd_timer_params {
- unsigned int flags; /* flags - SNDRV_MIXER_PSFLG_* */
- unsigned int ticks; /* requested resolution in ticks */
- unsigned int queue_size; /* total size of queue (32-1024) */
- unsigned int reserved0; /* reserved, was: failure locations */
- unsigned int filter; /* event filter (bitmask of SNDRV_TIMER_EVENT_*) */
- unsigned char reserved[60]; /* reserved */
-};
-
-struct snd_timer_status {
- struct timespec tstamp; /* Timestamp - last update */
- unsigned int resolution; /* current period resolution in ns */
- unsigned int lost; /* counter of master tick lost */
- unsigned int overrun; /* count of read queue overruns */
- unsigned int queue; /* used queue size */
- unsigned char reserved[64]; /* reserved */
-};
-
-#define SNDRV_TIMER_IOCTL_PVERSION _IOR('T', 0x00, int)
-#define SNDRV_TIMER_IOCTL_NEXT_DEVICE _IOWR('T', 0x01, struct snd_timer_id)
-#define SNDRV_TIMER_IOCTL_TREAD _IOW('T', 0x02, int)
-#define SNDRV_TIMER_IOCTL_GINFO _IOWR('T', 0x03, struct snd_timer_ginfo)
-#define SNDRV_TIMER_IOCTL_GPARAMS _IOW('T', 0x04, struct snd_timer_gparams)
-#define SNDRV_TIMER_IOCTL_GSTATUS _IOWR('T', 0x05, struct snd_timer_gstatus)
-#define SNDRV_TIMER_IOCTL_SELECT _IOW('T', 0x10, struct snd_timer_select)
-#define SNDRV_TIMER_IOCTL_INFO _IOR('T', 0x11, struct snd_timer_info)
-#define SNDRV_TIMER_IOCTL_PARAMS _IOW('T', 0x12, struct snd_timer_params)
-#define SNDRV_TIMER_IOCTL_STATUS _IOR('T', 0x14, struct snd_timer_status)
-/* The following four ioctls are changed since 1.0.9 due to confliction */
-#define SNDRV_TIMER_IOCTL_START _IO('T', 0xa0)
-#define SNDRV_TIMER_IOCTL_STOP _IO('T', 0xa1)
-#define SNDRV_TIMER_IOCTL_CONTINUE _IO('T', 0xa2)
-#define SNDRV_TIMER_IOCTL_PAUSE _IO('T', 0xa3)
-
-struct snd_timer_read {
- unsigned int resolution;
- unsigned int ticks;
-};
-
-enum {
- SNDRV_TIMER_EVENT_RESOLUTION = 0, /* val = resolution in ns */
- SNDRV_TIMER_EVENT_TICK, /* val = ticks */
- SNDRV_TIMER_EVENT_START, /* val = resolution in ns */
- SNDRV_TIMER_EVENT_STOP, /* val = 0 */
- SNDRV_TIMER_EVENT_CONTINUE, /* val = resolution in ns */
- SNDRV_TIMER_EVENT_PAUSE, /* val = 0 */
- SNDRV_TIMER_EVENT_EARLY, /* val = 0, early event */
- SNDRV_TIMER_EVENT_SUSPEND, /* val = 0 */
- SNDRV_TIMER_EVENT_RESUME, /* val = resolution in ns */
- /* master timer events for slave timer instances */
- SNDRV_TIMER_EVENT_MSTART = SNDRV_TIMER_EVENT_START + 10,
- SNDRV_TIMER_EVENT_MSTOP = SNDRV_TIMER_EVENT_STOP + 10,
- SNDRV_TIMER_EVENT_MCONTINUE = SNDRV_TIMER_EVENT_CONTINUE + 10,
- SNDRV_TIMER_EVENT_MPAUSE = SNDRV_TIMER_EVENT_PAUSE + 10,
- SNDRV_TIMER_EVENT_MSUSPEND = SNDRV_TIMER_EVENT_SUSPEND + 10,
- SNDRV_TIMER_EVENT_MRESUME = SNDRV_TIMER_EVENT_RESUME + 10,
-};
-
-struct snd_timer_tread {
- int event;
- struct timespec tstamp;
- unsigned int val;
-};
-
-/****************************************************************************
- * *
- * Section for driver control interface - /dev/snd/control? *
- * *
- ****************************************************************************/
-
-#define SNDRV_CTL_VERSION SNDRV_PROTOCOL_VERSION(2, 0, 7)
-
-struct snd_ctl_card_info {
- int card; /* card number */
- int pad; /* reserved for future (was type) */
- unsigned char id[16]; /* ID of card (user selectable) */
- unsigned char driver[16]; /* Driver name */
- unsigned char name[32]; /* Short name of soundcard */
- unsigned char longname[80]; /* name + info text about soundcard */
- unsigned char reserved_[16]; /* reserved for future (was ID of mixer) */
- unsigned char mixername[80]; /* visual mixer identification */
- unsigned char components[128]; /* card components / fine identification, delimited with one space (AC97 etc..) */
-};
-
-typedef int __bitwise snd_ctl_elem_type_t;
-#define SNDRV_CTL_ELEM_TYPE_NONE ((snd_ctl_elem_type_t) 0) /* invalid */
-#define SNDRV_CTL_ELEM_TYPE_BOOLEAN ((snd_ctl_elem_type_t) 1) /* boolean type */
-#define SNDRV_CTL_ELEM_TYPE_INTEGER ((snd_ctl_elem_type_t) 2) /* integer type */
-#define SNDRV_CTL_ELEM_TYPE_ENUMERATED ((snd_ctl_elem_type_t) 3) /* enumerated type */
-#define SNDRV_CTL_ELEM_TYPE_BYTES ((snd_ctl_elem_type_t) 4) /* byte array */
-#define SNDRV_CTL_ELEM_TYPE_IEC958 ((snd_ctl_elem_type_t) 5) /* IEC958 (S/PDIF) setup */
-#define SNDRV_CTL_ELEM_TYPE_INTEGER64 ((snd_ctl_elem_type_t) 6) /* 64-bit integer type */
-#define SNDRV_CTL_ELEM_TYPE_LAST SNDRV_CTL_ELEM_TYPE_INTEGER64
-
-typedef int __bitwise snd_ctl_elem_iface_t;
-#define SNDRV_CTL_ELEM_IFACE_CARD ((snd_ctl_elem_iface_t) 0) /* global control */
-#define SNDRV_CTL_ELEM_IFACE_HWDEP ((snd_ctl_elem_iface_t) 1) /* hardware dependent device */
-#define SNDRV_CTL_ELEM_IFACE_MIXER ((snd_ctl_elem_iface_t) 2) /* virtual mixer device */
-#define SNDRV_CTL_ELEM_IFACE_PCM ((snd_ctl_elem_iface_t) 3) /* PCM device */
-#define SNDRV_CTL_ELEM_IFACE_RAWMIDI ((snd_ctl_elem_iface_t) 4) /* RawMidi device */
-#define SNDRV_CTL_ELEM_IFACE_TIMER ((snd_ctl_elem_iface_t) 5) /* timer device */
-#define SNDRV_CTL_ELEM_IFACE_SEQUENCER ((snd_ctl_elem_iface_t) 6) /* sequencer client */
-#define SNDRV_CTL_ELEM_IFACE_LAST SNDRV_CTL_ELEM_IFACE_SEQUENCER
-
-#define SNDRV_CTL_ELEM_ACCESS_READ (1<<0)
-#define SNDRV_CTL_ELEM_ACCESS_WRITE (1<<1)
-#define SNDRV_CTL_ELEM_ACCESS_READWRITE (SNDRV_CTL_ELEM_ACCESS_READ|SNDRV_CTL_ELEM_ACCESS_WRITE)
-#define SNDRV_CTL_ELEM_ACCESS_VOLATILE (1<<2) /* control value may be changed without a notification */
-#define SNDRV_CTL_ELEM_ACCESS_TIMESTAMP (1<<3) /* when was control changed */
-#define SNDRV_CTL_ELEM_ACCESS_TLV_READ (1<<4) /* TLV read is possible */
-#define SNDRV_CTL_ELEM_ACCESS_TLV_WRITE (1<<5) /* TLV write is possible */
-#define SNDRV_CTL_ELEM_ACCESS_TLV_READWRITE (SNDRV_CTL_ELEM_ACCESS_TLV_READ|SNDRV_CTL_ELEM_ACCESS_TLV_WRITE)
-#define SNDRV_CTL_ELEM_ACCESS_TLV_COMMAND (1<<6) /* TLV command is possible */
-#define SNDRV_CTL_ELEM_ACCESS_INACTIVE (1<<8) /* control does actually nothing, but may be updated */
-#define SNDRV_CTL_ELEM_ACCESS_LOCK (1<<9) /* write lock */
-#define SNDRV_CTL_ELEM_ACCESS_OWNER (1<<10) /* write lock owner */
-#define SNDRV_CTL_ELEM_ACCESS_TLV_CALLBACK (1<<28) /* kernel use a TLV callback */
-#define SNDRV_CTL_ELEM_ACCESS_USER (1<<29) /* user space element */
-/* bits 30 and 31 are obsoleted (for indirect access) */
-
-/* for further details see the ACPI and PCI power management specification */
-#define SNDRV_CTL_POWER_D0 0x0000 /* full On */
-#define SNDRV_CTL_POWER_D1 0x0100 /* partial On */
-#define SNDRV_CTL_POWER_D2 0x0200 /* partial On */
-#define SNDRV_CTL_POWER_D3 0x0300 /* Off */
-#define SNDRV_CTL_POWER_D3hot (SNDRV_CTL_POWER_D3|0x0000) /* Off, with power */
-#define SNDRV_CTL_POWER_D3cold (SNDRV_CTL_POWER_D3|0x0001) /* Off, without power */
-
-#define SNDRV_CTL_ELEM_ID_NAME_MAXLEN 44
-
-struct snd_ctl_elem_id {
- unsigned int numid; /* numeric identifier, zero = invalid */
- snd_ctl_elem_iface_t iface; /* interface identifier */
- unsigned int device; /* device/client number */
- unsigned int subdevice; /* subdevice (substream) number */
- unsigned char name[SNDRV_CTL_ELEM_ID_NAME_MAXLEN]; /* ASCII name of item */
- unsigned int index; /* index of item */
-};
-
-struct snd_ctl_elem_list {
- unsigned int offset; /* W: first element ID to get */
- unsigned int space; /* W: count of element IDs to get */
- unsigned int used; /* R: count of element IDs set */
- unsigned int count; /* R: count of all elements */
- struct snd_ctl_elem_id *pids; /* R: IDs */
- unsigned char reserved[50];
-};
-
-struct snd_ctl_elem_info {
- struct snd_ctl_elem_id id; /* W: element ID */
- snd_ctl_elem_type_t type; /* R: value type - SNDRV_CTL_ELEM_TYPE_* */
- unsigned int access; /* R: value access (bitmask) - SNDRV_CTL_ELEM_ACCESS_* */
- unsigned int count; /* count of values */
- __kernel_pid_t owner; /* owner's PID of this control */
- union {
- struct {
- long min; /* R: minimum value */
- long max; /* R: maximum value */
- long step; /* R: step (0 variable) */
- } integer;
- struct {
- long long min; /* R: minimum value */
- long long max; /* R: maximum value */
- long long step; /* R: step (0 variable) */
- } integer64;
- struct {
- unsigned int items; /* R: number of items */
- unsigned int item; /* W: item number */
- char name[64]; /* R: value name */
- __u64 names_ptr; /* W: names list (ELEM_ADD only) */
- unsigned int names_length;
- } enumerated;
- unsigned char reserved[128];
- } value;
- union {
- unsigned short d[4]; /* dimensions */
- unsigned short *d_ptr; /* indirect - obsoleted */
- } dimen;
- unsigned char reserved[64-4*sizeof(unsigned short)];
-};
-
-struct snd_ctl_elem_value {
- struct snd_ctl_elem_id id; /* W: element ID */
- unsigned int indirect: 1; /* W: indirect access - obsoleted */
- union {
- union {
- long value[128];
- long *value_ptr; /* obsoleted */
- } integer;
- union {
- long long value[64];
- long long *value_ptr; /* obsoleted */
- } integer64;
- union {
- unsigned int item[128];
- unsigned int *item_ptr; /* obsoleted */
- } enumerated;
- union {
- unsigned char data[512];
- unsigned char *data_ptr; /* obsoleted */
- } bytes;
- struct snd_aes_iec958 iec958;
- } value; /* RO */
- struct timespec tstamp;
- unsigned char reserved[128-sizeof(struct timespec)];
-};
-
-struct snd_ctl_tlv {
- unsigned int numid; /* control element numeric identification */
- unsigned int length; /* in bytes aligned to 4 */
- unsigned int tlv[0]; /* first TLV */
-};
-
-#define SNDRV_CTL_IOCTL_PVERSION _IOR('U', 0x00, int)
-#define SNDRV_CTL_IOCTL_CARD_INFO _IOR('U', 0x01, struct snd_ctl_card_info)
-#define SNDRV_CTL_IOCTL_ELEM_LIST _IOWR('U', 0x10, struct snd_ctl_elem_list)
-#define SNDRV_CTL_IOCTL_ELEM_INFO _IOWR('U', 0x11, struct snd_ctl_elem_info)
-#define SNDRV_CTL_IOCTL_ELEM_READ _IOWR('U', 0x12, struct snd_ctl_elem_value)
-#define SNDRV_CTL_IOCTL_ELEM_WRITE _IOWR('U', 0x13, struct snd_ctl_elem_value)
-#define SNDRV_CTL_IOCTL_ELEM_LOCK _IOW('U', 0x14, struct snd_ctl_elem_id)
-#define SNDRV_CTL_IOCTL_ELEM_UNLOCK _IOW('U', 0x15, struct snd_ctl_elem_id)
-#define SNDRV_CTL_IOCTL_SUBSCRIBE_EVENTS _IOWR('U', 0x16, int)
-#define SNDRV_CTL_IOCTL_ELEM_ADD _IOWR('U', 0x17, struct snd_ctl_elem_info)
-#define SNDRV_CTL_IOCTL_ELEM_REPLACE _IOWR('U', 0x18, struct snd_ctl_elem_info)
-#define SNDRV_CTL_IOCTL_ELEM_REMOVE _IOWR('U', 0x19, struct snd_ctl_elem_id)
-#define SNDRV_CTL_IOCTL_TLV_READ _IOWR('U', 0x1a, struct snd_ctl_tlv)
-#define SNDRV_CTL_IOCTL_TLV_WRITE _IOWR('U', 0x1b, struct snd_ctl_tlv)
-#define SNDRV_CTL_IOCTL_TLV_COMMAND _IOWR('U', 0x1c, struct snd_ctl_tlv)
-#define SNDRV_CTL_IOCTL_HWDEP_NEXT_DEVICE _IOWR('U', 0x20, int)
-#define SNDRV_CTL_IOCTL_HWDEP_INFO _IOR('U', 0x21, struct snd_hwdep_info)
-#define SNDRV_CTL_IOCTL_PCM_NEXT_DEVICE _IOR('U', 0x30, int)
-#define SNDRV_CTL_IOCTL_PCM_INFO _IOWR('U', 0x31, struct snd_pcm_info)
-#define SNDRV_CTL_IOCTL_PCM_PREFER_SUBDEVICE _IOW('U', 0x32, int)
-#define SNDRV_CTL_IOCTL_RAWMIDI_NEXT_DEVICE _IOWR('U', 0x40, int)
-#define SNDRV_CTL_IOCTL_RAWMIDI_INFO _IOWR('U', 0x41, struct snd_rawmidi_info)
-#define SNDRV_CTL_IOCTL_RAWMIDI_PREFER_SUBDEVICE _IOW('U', 0x42, int)
-#define SNDRV_CTL_IOCTL_POWER _IOWR('U', 0xd0, int)
-#define SNDRV_CTL_IOCTL_POWER_STATE _IOR('U', 0xd1, int)
-
-/*
- * Read interface.
- */
-
-enum sndrv_ctl_event_type {
- SNDRV_CTL_EVENT_ELEM = 0,
- SNDRV_CTL_EVENT_LAST = SNDRV_CTL_EVENT_ELEM,
-};
-
-#define SNDRV_CTL_EVENT_MASK_VALUE (1<<0) /* element value was changed */
-#define SNDRV_CTL_EVENT_MASK_INFO (1<<1) /* element info was changed */
-#define SNDRV_CTL_EVENT_MASK_ADD (1<<2) /* element was added */
-#define SNDRV_CTL_EVENT_MASK_TLV (1<<3) /* element TLV tree was changed */
-#define SNDRV_CTL_EVENT_MASK_REMOVE (~0U) /* element was removed */
-
-struct snd_ctl_event {
- int type; /* event type - SNDRV_CTL_EVENT_* */
- union {
- struct {
- unsigned int mask;
- struct snd_ctl_elem_id id;
- } elem;
- unsigned char data8[60];
- } data;
-};
-
-/*
- * Control names
- */
-
-#define SNDRV_CTL_NAME_NONE ""
-#define SNDRV_CTL_NAME_PLAYBACK "Playback "
-#define SNDRV_CTL_NAME_CAPTURE "Capture "
-
-#define SNDRV_CTL_NAME_IEC958_NONE ""
-#define SNDRV_CTL_NAME_IEC958_SWITCH "Switch"
-#define SNDRV_CTL_NAME_IEC958_VOLUME "Volume"
-#define SNDRV_CTL_NAME_IEC958_DEFAULT "Default"
-#define SNDRV_CTL_NAME_IEC958_MASK "Mask"
-#define SNDRV_CTL_NAME_IEC958_CON_MASK "Con Mask"
-#define SNDRV_CTL_NAME_IEC958_PRO_MASK "Pro Mask"
-#define SNDRV_CTL_NAME_IEC958_PCM_STREAM "PCM Stream"
-#define SNDRV_CTL_NAME_IEC958(expl,direction,what) "IEC958 " expl SNDRV_CTL_NAME_##direction SNDRV_CTL_NAME_IEC958_##what
-
-#endif /* __SOUND_ASOUND_H */
diff --git a/sdm710/original-kernel-headers/sound/audio_effects.h b/sdm710/original-kernel-headers/sound/audio_effects.h
deleted file mode 100644
index 0ac887cd..00000000
--- a/sdm710/original-kernel-headers/sound/audio_effects.h
+++ /dev/null
@@ -1,361 +0,0 @@
-#ifndef _AUDIO_EFFECTS_H
-#define _AUDIO_EFFECTS_H
-
-/** AUDIO EFFECTS **/
-
-
-/* CONFIG GET/SET */
-#define CONFIG_CACHE 0
-#define CONFIG_SET 1
-#define CONFIG_GET 2
-
-/* CONFIG HEADER */
-/*
- * MODULE_ID,
- * DEVICE,
- * NUM_COMMANDS,
- * COMMAND_ID_1,
- * CONFIG_CACHE/SET/GET,
- * OFFSET_1,
- * LENGTH_1,
- * VALUES_1,
- * ...,
- * ...,
- * COMMAND_ID_2,
- * CONFIG_CACHE/SET/GET,
- * OFFSET_2,
- * LENGTH_2,
- * VALUES_2,
- * ...,
- * ...,
- * COMMAND_ID_3,
- * ...
- */
-
-
-/* CONFIG PARAM IDs */
-#define VIRTUALIZER_MODULE 0x00001000
-#define VIRTUALIZER_ENABLE 0x00001001
-#define VIRTUALIZER_STRENGTH 0x00001002
-#define VIRTUALIZER_OUT_TYPE 0x00001003
-#define VIRTUALIZER_GAIN_ADJUST 0x00001004
-#define VIRTUALIZER_ENABLE_PARAM_LEN 1
-#define VIRTUALIZER_STRENGTH_PARAM_LEN 1
-#define VIRTUALIZER_OUT_TYPE_PARAM_LEN 1
-#define VIRTUALIZER_GAIN_ADJUST_PARAM_LEN 1
-
-#define REVERB_MODULE 0x00002000
-#define REVERB_ENABLE 0x00002001
-#define REVERB_MODE 0x00002002
-#define REVERB_PRESET 0x00002003
-#define REVERB_WET_MIX 0x00002004
-#define REVERB_GAIN_ADJUST 0x00002005
-#define REVERB_ROOM_LEVEL 0x00002006
-#define REVERB_ROOM_HF_LEVEL 0x00002007
-#define REVERB_DECAY_TIME 0x00002008
-#define REVERB_DECAY_HF_RATIO 0x00002009
-#define REVERB_REFLECTIONS_LEVEL 0x0000200a
-#define REVERB_REFLECTIONS_DELAY 0x0000200b
-#define REVERB_LEVEL 0x0000200c
-#define REVERB_DELAY 0x0000200d
-#define REVERB_DIFFUSION 0x0000200e
-#define REVERB_DENSITY 0x0000200f
-#define REVERB_ENABLE_PARAM_LEN 1
-#define REVERB_MODE_PARAM_LEN 1
-#define REVERB_PRESET_PARAM_LEN 1
-#define REVERB_WET_MIX_PARAM_LEN 1
-#define REVERB_GAIN_ADJUST_PARAM_LEN 1
-#define REVERB_ROOM_LEVEL_PARAM_LEN 1
-#define REVERB_ROOM_HF_LEVEL_PARAM_LEN 1
-#define REVERB_DECAY_TIME_PARAM_LEN 1
-#define REVERB_DECAY_HF_RATIO_PARAM_LEN 1
-#define REVERB_REFLECTIONS_LEVEL_PARAM_LEN 1
-#define REVERB_REFLECTIONS_DELAY_PARAM_LEN 1
-#define REVERB_LEVEL_PARAM_LEN 1
-#define REVERB_DELAY_PARAM_LEN 1
-#define REVERB_DIFFUSION_PARAM_LEN 1
-#define REVERB_DENSITY_PARAM_LEN 1
-
-#define BASS_BOOST_MODULE 0x00003000
-#define BASS_BOOST_ENABLE 0x00003001
-#define BASS_BOOST_MODE 0x00003002
-#define BASS_BOOST_STRENGTH 0x00003003
-#define BASS_BOOST_ENABLE_PARAM_LEN 1
-#define BASS_BOOST_MODE_PARAM_LEN 1
-#define BASS_BOOST_STRENGTH_PARAM_LEN 1
-
-#define EQ_MODULE 0x00004000
-#define EQ_ENABLE 0x00004001
-#define EQ_CONFIG 0x00004002
-#define EQ_NUM_BANDS 0x00004003
-#define EQ_BAND_LEVELS 0x00004004
-#define EQ_BAND_LEVEL_RANGE 0x00004005
-#define EQ_BAND_FREQS 0x00004006
-#define EQ_SINGLE_BAND_FREQ_RANGE 0x00004007
-#define EQ_SINGLE_BAND_FREQ 0x00004008
-#define EQ_BAND_INDEX 0x00004009
-#define EQ_PRESET_ID 0x0000400a
-#define EQ_NUM_PRESETS 0x0000400b
-#define EQ_PRESET_NAME 0x0000400c
-#define EQ_ENABLE_PARAM_LEN 1
-#define EQ_CONFIG_PARAM_LEN 3
-#define EQ_CONFIG_PER_BAND_PARAM_LEN 5
-#define EQ_NUM_BANDS_PARAM_LEN 1
-#define EQ_BAND_LEVELS_PARAM_LEN 13
-#define EQ_BAND_LEVEL_RANGE_PARAM_LEN 2
-#define EQ_BAND_FREQS_PARAM_LEN 13
-#define EQ_SINGLE_BAND_FREQ_RANGE_PARAM_LEN 2
-#define EQ_SINGLE_BAND_FREQ_PARAM_LEN 1
-#define EQ_BAND_INDEX_PARAM_LEN 1
-#define EQ_PRESET_ID_PARAM_LEN 1
-#define EQ_NUM_PRESETS_PARAM_LEN 1
-#define EQ_PRESET_NAME_PARAM_LEN 32
-
-#define EQ_TYPE_NONE 0
-#define EQ_BASS_BOOST 1
-#define EQ_BASS_CUT 2
-#define EQ_TREBLE_BOOST 3
-#define EQ_TREBLE_CUT 4
-#define EQ_BAND_BOOST 5
-#define EQ_BAND_CUT 6
-
-#define SOFT_VOLUME_MODULE 0x00006000
-#define SOFT_VOLUME_ENABLE 0x00006001
-#define SOFT_VOLUME_GAIN_2CH 0x00006002
-#define SOFT_VOLUME_GAIN_MASTER 0x00006003
-#define SOFT_VOLUME_ENABLE_PARAM_LEN 1
-#define SOFT_VOLUME_GAIN_2CH_PARAM_LEN 2
-#define SOFT_VOLUME_GAIN_MASTER_PARAM_LEN 1
-
-#define SOFT_VOLUME2_MODULE 0x00007000
-#define SOFT_VOLUME2_ENABLE 0x00007001
-#define SOFT_VOLUME2_GAIN_2CH 0x00007002
-#define SOFT_VOLUME2_GAIN_MASTER 0x00007003
-#define SOFT_VOLUME2_ENABLE_PARAM_LEN SOFT_VOLUME_ENABLE_PARAM_LEN
-#define SOFT_VOLUME2_GAIN_2CH_PARAM_LEN SOFT_VOLUME_GAIN_2CH_PARAM_LEN
-#define SOFT_VOLUME2_GAIN_MASTER_PARAM_LEN \
- SOFT_VOLUME_GAIN_MASTER_PARAM_LEN
-
-#define PBE_CONF_MODULE_ID 0x00010C2A
-#define PBE_CONF_PARAM_ID 0x00010C49
-
-#define PBE_MODULE 0x00008000
-#define PBE_ENABLE 0x00008001
-#define PBE_CONFIG 0x00008002
-#define PBE_ENABLE_PARAM_LEN 1
-#define PBE_CONFIG_PARAM_LEN 28
-
-#define COMMAND_PAYLOAD_LEN 3
-#define COMMAND_PAYLOAD_SZ (COMMAND_PAYLOAD_LEN * sizeof(uint32_t))
-#define MAX_INBAND_PARAM_SZ 4096
-#define Q27_UNITY (1 << 27)
-#define Q8_UNITY (1 << 8)
-#define CUSTOM_OPENSL_PRESET 18
-
-#define VIRTUALIZER_ENABLE_PARAM_SZ \
- (VIRTUALIZER_ENABLE_PARAM_LEN*sizeof(uint32_t))
-#define VIRTUALIZER_STRENGTH_PARAM_SZ \
- (VIRTUALIZER_STRENGTH_PARAM_LEN*sizeof(uint32_t))
-#define VIRTUALIZER_OUT_TYPE_PARAM_SZ \
- (VIRTUALIZER_OUT_TYPE_PARAM_LEN*sizeof(uint32_t))
-#define VIRTUALIZER_GAIN_ADJUST_PARAM_SZ \
- (VIRTUALIZER_GAIN_ADJUST_PARAM_LEN*sizeof(uint32_t))
-struct virtualizer_params {
- uint32_t device;
- uint32_t enable_flag;
- uint32_t strength;
- uint32_t out_type;
- int32_t gain_adjust;
-};
-
-#define NUM_OSL_REVERB_PRESETS_SUPPORTED 6
-#define REVERB_ENABLE_PARAM_SZ \
- (REVERB_ENABLE_PARAM_LEN*sizeof(uint32_t))
-#define REVERB_MODE_PARAM_SZ \
- (REVERB_MODE_PARAM_LEN*sizeof(uint32_t))
-#define REVERB_PRESET_PARAM_SZ \
- (REVERB_PRESET_PARAM_LEN*sizeof(uint32_t))
-#define REVERB_WET_MIX_PARAM_SZ \
- (REVERB_WET_MIX_PARAM_LEN*sizeof(uint32_t))
-#define REVERB_GAIN_ADJUST_PARAM_SZ \
- (REVERB_GAIN_ADJUST_PARAM_LEN*sizeof(uint32_t))
-#define REVERB_ROOM_LEVEL_PARAM_SZ \
- (REVERB_ROOM_LEVEL_PARAM_LEN*sizeof(uint32_t))
-#define REVERB_ROOM_HF_LEVEL_PARAM_SZ \
- (REVERB_ROOM_HF_LEVEL_PARAM_LEN*sizeof(uint32_t))
-#define REVERB_DECAY_TIME_PARAM_SZ \
- (REVERB_DECAY_TIME_PARAM_LEN*sizeof(uint32_t))
-#define REVERB_DECAY_HF_RATIO_PARAM_SZ \
- (REVERB_DECAY_HF_RATIO_PARAM_LEN*sizeof(uint32_t))
-#define REVERB_REFLECTIONS_LEVEL_PARAM_SZ \
- (REVERB_REFLECTIONS_LEVEL_PARAM_LEN*sizeof(uint32_t))
-#define REVERB_REFLECTIONS_DELAY_PARAM_SZ \
- (REVERB_REFLECTIONS_DELAY_PARAM_LEN*sizeof(uint32_t))
-#define REVERB_LEVEL_PARAM_SZ \
- (REVERB_LEVEL_PARAM_LEN*sizeof(uint32_t))
-#define REVERB_DELAY_PARAM_SZ \
- (REVERB_DELAY_PARAM_LEN*sizeof(uint32_t))
-#define REVERB_DIFFUSION_PARAM_SZ \
- (REVERB_DIFFUSION_PARAM_LEN*sizeof(uint32_t))
-#define REVERB_DENSITY_PARAM_SZ \
- (REVERB_DENSITY_PARAM_LEN*sizeof(uint32_t))
-struct reverb_params {
- uint32_t device;
- uint32_t enable_flag;
- uint32_t mode;
- uint32_t preset;
- uint32_t wet_mix;
- int32_t gain_adjust;
- int32_t room_level;
- int32_t room_hf_level;
- uint32_t decay_time;
- uint32_t decay_hf_ratio;
- int32_t reflections_level;
- uint32_t reflections_delay;
- int32_t level;
- uint32_t delay;
- uint32_t diffusion;
- uint32_t density;
-};
-
-#define BASS_BOOST_ENABLE_PARAM_SZ \
- (BASS_BOOST_ENABLE_PARAM_LEN*sizeof(uint32_t))
-#define BASS_BOOST_MODE_PARAM_SZ \
- (BASS_BOOST_MODE_PARAM_LEN*sizeof(uint32_t))
-#define BASS_BOOST_STRENGTH_PARAM_SZ \
- (BASS_BOOST_STRENGTH_PARAM_LEN*sizeof(uint32_t))
-struct bass_boost_params {
- uint32_t device;
- uint32_t enable_flag;
- uint32_t mode;
- uint32_t strength;
-};
-
-
-#define MAX_EQ_BANDS 12
-#define MAX_OSL_EQ_BANDS 5
-#define EQ_ENABLE_PARAM_SZ \
- (EQ_ENABLE_PARAM_LEN*sizeof(uint32_t))
-#define EQ_CONFIG_PARAM_SZ \
- (EQ_CONFIG_PARAM_LEN*sizeof(uint32_t))
-#define EQ_CONFIG_PER_BAND_PARAM_SZ \
- (EQ_CONFIG_PER_BAND_PARAM_LEN*sizeof(uint32_t))
-#define EQ_CONFIG_PARAM_MAX_LEN (EQ_CONFIG_PARAM_LEN+\
- MAX_EQ_BANDS*EQ_CONFIG_PER_BAND_PARAM_LEN)
-#define EQ_CONFIG_PARAM_MAX_SZ \
- (EQ_CONFIG_PARAM_MAX_LEN*sizeof(uint32_t))
-#define EQ_NUM_BANDS_PARAM_SZ \
- (EQ_NUM_BANDS_PARAM_LEN*sizeof(uint32_t))
-#define EQ_BAND_LEVELS_PARAM_SZ \
- (EQ_BAND_LEVELS_PARAM_LEN*sizeof(uint32_t))
-#define EQ_BAND_LEVEL_RANGE_PARAM_SZ \
- (EQ_BAND_LEVEL_RANGE_PARAM_LEN*sizeof(uint32_t))
-#define EQ_BAND_FREQS_PARAM_SZ \
- (EQ_BAND_FREQS_PARAM_LEN*sizeof(uint32_t))
-#define EQ_SINGLE_BAND_FREQ_RANGE_PARAM_SZ \
- (EQ_SINGLE_BAND_FREQ_RANGE_PARAM_LEN*sizeof(uint32_t))
-#define EQ_SINGLE_BAND_FREQ_PARAM_SZ \
- (EQ_SINGLE_BAND_FREQ_PARAM_LEN*sizeof(uint32_t))
-#define EQ_BAND_INDEX_PARAM_SZ \
- (EQ_BAND_INDEX_PARAM_LEN*sizeof(uint32_t))
-#define EQ_PRESET_ID_PARAM_SZ \
- (EQ_PRESET_ID_PARAM_LEN*sizeof(uint32_t))
-#define EQ_NUM_PRESETS_PARAM_SZ \
- (EQ_NUM_PRESETS_PARAM_LEN*sizeof(uint8_t))
-struct eq_config_t {
- int32_t eq_pregain;
- int32_t preset_id;
- uint32_t num_bands;
-};
-struct eq_per_band_config_t {
- int32_t band_idx;
- uint32_t filter_type;
- uint32_t freq_millihertz;
- int32_t gain_millibels;
- uint32_t quality_factor;
-};
-struct eq_per_band_freq_range_t {
- uint32_t band_index;
- uint32_t min_freq_millihertz;
- uint32_t max_freq_millihertz;
-};
-
-struct eq_params {
- uint32_t device;
- uint32_t enable_flag;
- struct eq_config_t config;
- struct eq_per_band_config_t per_band_cfg[MAX_EQ_BANDS];
- struct eq_per_band_freq_range_t per_band_freq_range[MAX_EQ_BANDS];
- uint32_t band_index;
- uint32_t freq_millihertz;
-};
-
-#define PBE_ENABLE_PARAM_SZ \
- (PBE_ENABLE_PARAM_LEN*sizeof(uint32_t))
-#define PBE_CONFIG_PARAM_SZ \
- (PBE_CONFIG_PARAM_LEN*sizeof(uint16_t))
-struct pbe_config_t {
- int16_t real_bass_mix;
- int16_t bass_color_control;
- uint16_t main_chain_delay;
- uint16_t xover_filter_order;
- uint16_t bandpass_filter_order;
- int16_t drc_delay;
- uint16_t rms_tav;
- int16_t exp_threshold;
- uint16_t exp_slope;
- int16_t comp_threshold;
- uint16_t comp_slope;
- uint16_t makeup_gain;
- uint32_t comp_attack;
- uint32_t comp_release;
- uint32_t exp_attack;
- uint32_t exp_release;
- int16_t limiter_bass_threshold;
- int16_t limiter_high_threshold;
- int16_t limiter_bass_makeup_gain;
- int16_t limiter_high_makeup_gain;
- int16_t limiter_bass_gc;
- int16_t limiter_high_gc;
- int16_t limiter_delay;
- uint16_t reserved;
- /* place holder for filter coeffs to be followed */
- int32_t p1LowPassCoeffs[5*2];
- int32_t p1HighPassCoeffs[5*2];
- int32_t p1BandPassCoeffs[5*3];
- int32_t p1BassShelfCoeffs[5];
- int32_t p1TrebleShelfCoeffs[5];
-} __attribute__((packed));
-
-struct pbe_params {
- uint32_t device;
- uint32_t enable_flag;
- uint32_t cfg_len;
- struct pbe_config_t config;
-};
-
-#define SOFT_VOLUME_ENABLE_PARAM_SZ \
- (SOFT_VOLUME_ENABLE_PARAM_LEN*sizeof(uint32_t))
-#define SOFT_VOLUME_GAIN_MASTER_PARAM_SZ \
- (SOFT_VOLUME_GAIN_MASTER_PARAM_LEN*sizeof(uint32_t))
-#define SOFT_VOLUME_GAIN_2CH_PARAM_SZ \
- (SOFT_VOLUME_GAIN_2CH_PARAM_LEN*sizeof(uint16_t))
-struct soft_volume_params {
- uint32_t device;
- uint32_t enable_flag;
- uint32_t master_gain;
- uint32_t left_gain;
- uint32_t right_gain;
-};
-
-struct msm_nt_eff_all_config {
- struct bass_boost_params bass_boost;
- struct pbe_params pbe;
- struct virtualizer_params virtualizer;
- struct reverb_params reverb;
- struct eq_params equalizer;
- struct soft_volume_params saplus_vol;
- struct soft_volume_params topo_switch_vol;
-};
-
-#endif /*_MSM_AUDIO_EFFECTS_H*/
diff --git a/sdm710/original-kernel-headers/sound/compress_offload.h b/sdm710/original-kernel-headers/sound/compress_offload.h
deleted file mode 100644
index 866ec3d2..00000000
--- a/sdm710/original-kernel-headers/sound/compress_offload.h
+++ /dev/null
@@ -1,237 +0,0 @@
-/*
- * compress_offload.h - compress offload header definations
- *
- * Copyright (C) 2011 Intel Corporation
- * Authors: Vinod Koul <vinod.koul@linux.intel.com>
- * Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
- * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; version 2 of the License.
- *
- * 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.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program; if not, write to the Free Software Foundation, Inc.,
- * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
- *
- * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- *
- */
-#ifndef __COMPRESS_OFFLOAD_H
-#define __COMPRESS_OFFLOAD_H
-
-#include <linux/types.h>
-#include <sound/asound.h>
-#include <sound/compress_params.h>
-
-
-#define SNDRV_COMPRESS_VERSION SNDRV_PROTOCOL_VERSION(0, 1, 2)
-/**
- * struct snd_compressed_buffer - compressed buffer
- * @fragment_size: size of buffer fragment in bytes
- * @fragments: number of such fragments
- */
-struct snd_compressed_buffer {
- __u32 fragment_size;
- __u32 fragments;
-} __attribute__((packed, aligned(4)));
-
-/**
- * struct snd_compr_params - compressed stream params
- * @buffer: buffer description
- * @codec: codec parameters
- * @no_wake_mode: dont wake on fragment elapsed
- */
-struct snd_compr_params {
- struct snd_compressed_buffer buffer;
- struct snd_codec codec;
- __u8 no_wake_mode;
-} __attribute__((packed, aligned(4)));
-
-/**
- * struct snd_compr_tstamp - timestamp descriptor
- * @byte_offset: Byte offset in ring buffer to DSP
- * @copied_total: Total number of bytes copied from/to ring buffer to/by DSP
- * @pcm_frames: Frames decoded or encoded by DSP. This field will evolve by
- * large steps and should only be used to monitor encoding/decoding
- * progress. It shall not be used for timing estimates.
- * @pcm_io_frames: Frames rendered or received by DSP into a mixer or an audio
- * output/input. This field should be used for A/V sync or time estimates.
- * @sampling_rate: sampling rate of audio
- */
-struct snd_compr_tstamp {
- __u32 byte_offset;
- __u64 copied_total;
- __u32 pcm_frames;
- __u32 pcm_io_frames;
- __u32 sampling_rate;
- __u64 timestamp;
-} __attribute__((packed, aligned(4)));
-
-/**
- * struct snd_compr_avail - avail descriptor
- * @avail: Number of bytes available in ring buffer for writing/reading
- * @tstamp: timestamp information
- */
-struct snd_compr_avail {
- __u64 avail;
- struct snd_compr_tstamp tstamp;
-} __attribute__((packed, aligned(4)));
-
-enum snd_compr_direction {
- SND_COMPRESS_PLAYBACK = 0,
- SND_COMPRESS_CAPTURE
-};
-
-/**
- * struct snd_compr_caps - caps descriptor
- * @codecs: pointer to array of codecs
- * @direction: direction supported. Of type snd_compr_direction
- * @min_fragment_size: minimum fragment supported by DSP
- * @max_fragment_size: maximum fragment supported by DSP
- * @min_fragments: min fragments supported by DSP
- * @max_fragments: max fragments supported by DSP
- * @num_codecs: number of codecs supported
- * @reserved: reserved field
- */
-struct snd_compr_caps {
- __u32 num_codecs;
- __u32 direction;
- __u32 min_fragment_size;
- __u32 max_fragment_size;
- __u32 min_fragments;
- __u32 max_fragments;
- __u32 codecs[MAX_NUM_CODECS];
- __u32 reserved[11];
-} __attribute__((packed, aligned(4)));
-
-/**
- * struct snd_compr_codec_caps - query capability of codec
- * @codec: codec for which capability is queried
- * @num_descriptors: number of codec descriptors
- * @descriptor: array of codec capability descriptor
- */
-struct snd_compr_codec_caps {
- __u32 codec;
- __u32 num_descriptors;
- struct snd_codec_desc descriptor[MAX_NUM_CODEC_DESCRIPTORS];
-} __attribute__((packed, aligned(4)));
-
-/**
- * struct snd_compr_audio_info: compressed input audio information
- * @frame_size: legth of the encoded frame with valid data
- * @reserved: reserved for furture use
- */
-struct snd_compr_audio_info {
- __u32 frame_size;
- __u32 reserved[15];
-} __attribute__((packed, aligned(4)));
-
-#define SNDRV_COMPRESS_RENDER_MODE_AUDIO_MASTER 0
-#define SNDRV_COMPRESS_RENDER_MODE_STC_MASTER 1
-
-#define SNDRV_COMPRESS_CLK_REC_MODE_NONE 0
-#define SNDRV_COMPRESS_CLK_REC_MODE_AUTO 1
-
-/**
- * enum sndrv_compress_encoder
- * @SNDRV_COMPRESS_ENCODER_PADDING: no of samples appended by the encoder at the
- * end of the track
- * @SNDRV_COMPRESS_ENCODER_DELAY: no of samples inserted by the encoder at the
- * beginning of the track
- * @SNDRV_COMPRESS_PATH_DELAY: dsp path delay in microseconds
- * @SNDRV_COMPRESS_RENDER_MODE: dsp render mode (audio master or stc)
- * @SNDRV_COMPRESS_CLK_REC_MODE: clock recovery mode ( none or auto)
- * @SNDRV_COMPRESS_RENDER_WINDOW: render window
- * @SNDRV_COMPRESS_START_DELAY: start delay
- * @SNDRV_COMPRESS_ENABLE_ADJUST_SESSION_CLOCK: enable dsp drift correction
- * @SNDRV_COMPRESS_ADJUST_SESSION_CLOCK: set drift correction value
- */
-enum sndrv_compress_encoder {
- SNDRV_COMPRESS_ENCODER_PADDING = 1,
- SNDRV_COMPRESS_ENCODER_DELAY = 2,
- SNDRV_COMPRESS_MIN_BLK_SIZE = 3,
- SNDRV_COMPRESS_MAX_BLK_SIZE = 4,
- SNDRV_COMPRESS_PATH_DELAY = 5,
- SNDRV_COMPRESS_RENDER_MODE = 6,
- SNDRV_COMPRESS_CLK_REC_MODE = 7,
- SNDRV_COMPRESS_RENDER_WINDOW = 8,
- SNDRV_COMPRESS_START_DELAY = 9,
- SNDRV_COMPRESS_ENABLE_ADJUST_SESSION_CLOCK = 10,
- SNDRV_COMPRESS_ADJUST_SESSION_CLOCK = 11,
-};
-
-#define SNDRV_COMPRESS_PATH_DELAY SNDRV_COMPRESS_PATH_DELAY
-#define SNDRV_COMPRESS_RENDER_MODE SNDRV_COMPRESS_RENDER_MODE
-#define SNDRV_COMPRESS_CLK_REC_MODE SNDRV_COMPRESS_CLK_REC_MODE
-#define SNDRV_COMPRESS_RENDER_WINDOW SNDRV_COMPRESS_RENDER_WINDOW
-#define SNDRV_COMPRESS_START_DELAY SNDRV_COMPRESS_START_DELAY
-#define SNDRV_COMPRESS_ENABLE_ADJUST_SESSION_CLOCK \
- SNDRV_COMPRESS_ENABLE_ADJUST_SESSION_CLOCK
-#define SNDRV_COMPRESS_ADJUST_SESSION_CLOCK SNDRV_COMPRESS_ADJUST_SESSION_CLOCK
-
-/**
- * struct snd_compr_metadata - compressed stream metadata
- * @key: key id
- * @value: key value
- */
-struct snd_compr_metadata {
- __u32 key;
- __u32 value[8];
-} __attribute__((packed, aligned(4)));
-
-/**
- * compress path ioctl definitions
- * SNDRV_COMPRESS_GET_CAPS: Query capability of DSP
- * SNDRV_COMPRESS_GET_CODEC_CAPS: Query capability of a codec
- * SNDRV_COMPRESS_SET_PARAMS: Set codec and stream parameters
- * Note: only codec params can be changed runtime and stream params cant be
- * SNDRV_COMPRESS_GET_PARAMS: Query codec params
- * SNDRV_COMPRESS_TSTAMP: get the current timestamp value
- * SNDRV_COMPRESS_AVAIL: get the current buffer avail value.
- * This also queries the tstamp properties
- * SNDRV_COMPRESS_PAUSE: Pause the running stream
- * SNDRV_COMPRESS_RESUME: resume a paused stream
- * SNDRV_COMPRESS_START: Start a stream
- * SNDRV_COMPRESS_STOP: stop a running stream, discarding ring buffer content
- * and the buffers currently with DSP
- * SNDRV_COMPRESS_DRAIN: Play till end of buffers and stop after that
- * SNDRV_COMPRESS_SET_NEXT_TRACK_PARAM: send codec specific data for the next
- * track in gapless
- * SNDRV_COMPRESS_IOCTL_VERSION: Query the API version
- */
-#define SNDRV_COMPRESS_IOCTL_VERSION _IOR('C', 0x00, int)
-#define SNDRV_COMPRESS_GET_CAPS _IOWR('C', 0x10, struct snd_compr_caps)
-#define SNDRV_COMPRESS_GET_CODEC_CAPS _IOWR('C', 0x11,\
- struct snd_compr_codec_caps)
-#define SNDRV_COMPRESS_SET_PARAMS _IOW('C', 0x12, struct snd_compr_params)
-#define SNDRV_COMPRESS_GET_PARAMS _IOR('C', 0x13, struct snd_codec)
-#define SNDRV_COMPRESS_SET_METADATA _IOW('C', 0x14,\
- struct snd_compr_metadata)
-#define SNDRV_COMPRESS_GET_METADATA _IOWR('C', 0x15,\
- struct snd_compr_metadata)
-#define SNDRV_COMPRESS_TSTAMP _IOR('C', 0x20, struct snd_compr_tstamp)
-#define SNDRV_COMPRESS_AVAIL _IOR('C', 0x21, struct snd_compr_avail)
-#define SNDRV_COMPRESS_PAUSE _IO('C', 0x30)
-#define SNDRV_COMPRESS_RESUME _IO('C', 0x31)
-#define SNDRV_COMPRESS_START _IO('C', 0x32)
-#define SNDRV_COMPRESS_STOP _IO('C', 0x33)
-#define SNDRV_COMPRESS_DRAIN _IO('C', 0x34)
-#define SNDRV_COMPRESS_NEXT_TRACK _IO('C', 0x35)
-#define SNDRV_COMPRESS_PARTIAL_DRAIN _IO('C', 0x36)
-#define SNDRV_COMPRESS_SET_NEXT_TRACK_PARAM\
- _IOW('C', 0x80, union snd_codec_options)
-/*
- * TODO
- * 1. add mmap support
- *
- */
-#define SND_COMPR_TRIGGER_DRAIN 7 /*FIXME move this to pcm.h */
-#define SND_COMPR_TRIGGER_NEXT_TRACK 8
-#define SND_COMPR_TRIGGER_PARTIAL_DRAIN 9
-#endif
diff --git a/sdm710/original-kernel-headers/sound/compress_params.h b/sdm710/original-kernel-headers/sound/compress_params.h
deleted file mode 100644
index 278bf12b..00000000
--- a/sdm710/original-kernel-headers/sound/compress_params.h
+++ /dev/null
@@ -1,524 +0,0 @@
-/*
- * compress_params.h - codec types and parameters for compressed data
- * streaming interface
- *
- * Copyright (C) 2011 Intel Corporation
- * Authors: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
- * Vinod Koul <vinod.koul@linux.intel.com>
- *
- * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; version 2 of the License.
- *
- * 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.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program; if not, write to the Free Software Foundation, Inc.,
- * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
- *
- * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- *
- * The definitions in this file are derived from the OpenMAX AL version 1.1
- * and OpenMAX IL v 1.1.2 header files which contain the copyright notice below.
- *
- * Copyright (c) 2007-2010 The Khronos Group Inc.
- *
- * Permission is hereby granted, free of charge, to any person obtaining
- * a copy of this software and/or associated documentation files (the
- * "Materials "), to deal in the Materials without restriction, including
- * without limitation the rights to use, copy, modify, merge, publish,
- * distribute, sublicense, and/or sell copies of the Materials, and to
- * permit persons to whom the Materials are furnished to do so, subject to
- * the following conditions:
- *
- * The above copyright notice and this permission notice shall be included
- * in all copies or substantial portions of the Materials.
- *
- * THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
- * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
- * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
- * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
- * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
- * MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
- *
- */
-#ifndef __SND_COMPRESS_PARAMS_H
-#define __SND_COMPRESS_PARAMS_H
-
-#include <linux/types.h>
-
-#define SND_DEC_DDP_MAX_PARAMS 18
-
-/* AUDIO CODECS SUPPORTED */
-#define MAX_NUM_CODECS 32
-#define MAX_NUM_CODEC_DESCRIPTORS 32
-#define MAX_NUM_BITRATES 32
-#define MAX_NUM_SAMPLE_RATES 32
-
-/* compressed TX */
-#define MAX_NUM_FRAMES_PER_BUFFER 1
-#define COMPRESSED_META_DATA_MODE 0x10
-#define META_DATA_LEN_BYTES 36
-#define Q6_AC3_DECODER 0x00010BF6
-#define Q6_EAC3_DECODER 0x00010C3C
-#define Q6_DTS 0x00010D88
-#define Q6_DTS_LBR 0x00010DBB
-
-/* Timestamp flsg */
-/* Bit-0 - 1 : Enable Timestamp mode */
-/* Bit-0 - 0 : Disable Timestamp mode */
-#define COMPRESSED_TIMESTAMP_FLAG 0x0001
-
-/* Codecs are listed linearly to allow for extensibility */
-#define SND_AUDIOCODEC_PCM ((__u32) 0x00000001)
-#define SND_AUDIOCODEC_MP3 ((__u32) 0x00000002)
-#define SND_AUDIOCODEC_AMR ((__u32) 0x00000003)
-#define SND_AUDIOCODEC_AMRWB ((__u32) 0x00000004)
-#define SND_AUDIOCODEC_AMRWBPLUS ((__u32) 0x00000005)
-#define SND_AUDIOCODEC_AAC ((__u32) 0x00000006)
-#define SND_AUDIOCODEC_WMA ((__u32) 0x00000007)
-#define SND_AUDIOCODEC_REAL ((__u32) 0x00000008)
-#define SND_AUDIOCODEC_VORBIS ((__u32) 0x00000009)
-#define SND_AUDIOCODEC_FLAC ((__u32) 0x0000000A)
-#define SND_AUDIOCODEC_IEC61937 ((__u32) 0x0000000B)
-#define SND_AUDIOCODEC_G723_1 ((__u32) 0x0000000C)
-#define SND_AUDIOCODEC_G729 ((__u32) 0x0000000D)
-#define SND_AUDIOCODEC_BESPOKE ((__u32) 0x0000000E)
-#define SND_AUDIOCODEC_DTS_PASS_THROUGH ((__u32) 0x0000000F)
-#define SND_AUDIOCODEC_DTS_LBR ((__u32) 0x00000010)
-#define SND_AUDIOCODEC_DTS_TRANSCODE_LOOPBACK ((__u32) 0x00000011)
-#define SND_AUDIOCODEC_PASS_THROUGH ((__u32) 0x00000012)
-#define SND_AUDIOCODEC_MP2 ((__u32) 0x00000013)
-#define SND_AUDIOCODEC_DTS_LBR_PASS_THROUGH ((__u32) 0x00000014)
-#define SND_AUDIOCODEC_AC3 ((__u32) 0x00000015)
-#define SND_AUDIOCODEC_AC3_PASS_THROUGH ((__u32) 0x00000016)
-#define SND_AUDIOCODEC_WMA_PRO ((__u32) 0x00000017)
-#define SND_AUDIOCODEC_DTS ((__u32) 0x00000018)
-#define SND_AUDIOCODEC_EAC3 ((__u32) 0x00000019)
-#define SND_AUDIOCODEC_ALAC ((__u32) 0x00000020)
-#define SND_AUDIOCODEC_APE ((__u32) 0x00000021)
-#define SND_AUDIOCODEC_DSD ((__u32) 0x00000022)
-#define SND_AUDIOCODEC_APTX ((__u32) 0x00000023)
-#define SND_AUDIOCODEC_TRUEHD ((__u32) 0x00000024)
-#define SND_AUDIOCODEC_MAX SND_AUDIOCODEC_TRUEHD
-
-/*
- * Profile and modes are listed with bit masks. This allows for a
- * more compact representation of fields that will not evolve
- * (in contrast to the list of codecs)
- */
-
-#define SND_AUDIOPROFILE_PCM ((__u32) 0x00000001)
-
-/* MP3 modes are only useful for encoders */
-#define SND_AUDIOCHANMODE_MP3_MONO ((__u32) 0x00000001)
-#define SND_AUDIOCHANMODE_MP3_STEREO ((__u32) 0x00000002)
-#define SND_AUDIOCHANMODE_MP3_JOINTSTEREO ((__u32) 0x00000004)
-#define SND_AUDIOCHANMODE_MP3_DUAL ((__u32) 0x00000008)
-
-#define SND_AUDIOPROFILE_AMR ((__u32) 0x00000001)
-
-/* AMR modes are only useful for encoders */
-#define SND_AUDIOMODE_AMR_DTX_OFF ((__u32) 0x00000001)
-#define SND_AUDIOMODE_AMR_VAD1 ((__u32) 0x00000002)
-#define SND_AUDIOMODE_AMR_VAD2 ((__u32) 0x00000004)
-
-#define SND_AUDIOSTREAMFORMAT_UNDEFINED ((__u32) 0x00000000)
-#define SND_AUDIOSTREAMFORMAT_CONFORMANCE ((__u32) 0x00000001)
-#define SND_AUDIOSTREAMFORMAT_IF1 ((__u32) 0x00000002)
-#define SND_AUDIOSTREAMFORMAT_IF2 ((__u32) 0x00000004)
-#define SND_AUDIOSTREAMFORMAT_FSF ((__u32) 0x00000008)
-#define SND_AUDIOSTREAMFORMAT_RTPPAYLOAD ((__u32) 0x00000010)
-#define SND_AUDIOSTREAMFORMAT_ITU ((__u32) 0x00000020)
-
-#define SND_AUDIOPROFILE_AMRWB ((__u32) 0x00000001)
-
-/* AMRWB modes are only useful for encoders */
-#define SND_AUDIOMODE_AMRWB_DTX_OFF ((__u32) 0x00000001)
-#define SND_AUDIOMODE_AMRWB_VAD1 ((__u32) 0x00000002)
-#define SND_AUDIOMODE_AMRWB_VAD2 ((__u32) 0x00000004)
-
-#define SND_AUDIOPROFILE_AMRWBPLUS ((__u32) 0x00000001)
-
-#define SND_AUDIOPROFILE_AAC ((__u32) 0x00000001)
-
-/* AAC modes are required for encoders and decoders */
-#define SND_AUDIOMODE_AAC_MAIN ((__u32) 0x00000001)
-#define SND_AUDIOMODE_AAC_LC ((__u32) 0x00000002)
-#define SND_AUDIOMODE_AAC_SSR ((__u32) 0x00000004)
-#define SND_AUDIOMODE_AAC_LTP ((__u32) 0x00000008)
-#define SND_AUDIOMODE_AAC_HE ((__u32) 0x00000010)
-#define SND_AUDIOMODE_AAC_SCALABLE ((__u32) 0x00000020)
-#define SND_AUDIOMODE_AAC_ERLC ((__u32) 0x00000040)
-#define SND_AUDIOMODE_AAC_LD ((__u32) 0x00000080)
-#define SND_AUDIOMODE_AAC_HE_PS ((__u32) 0x00000100)
-#define SND_AUDIOMODE_AAC_HE_MPS ((__u32) 0x00000200)
-
-/* AAC formats are required for encoders and decoders */
-#define SND_AUDIOSTREAMFORMAT_MP2ADTS ((__u32) 0x00000001)
-#define SND_AUDIOSTREAMFORMAT_MP4ADTS ((__u32) 0x00000002)
-#define SND_AUDIOSTREAMFORMAT_MP4LOAS ((__u32) 0x00000004)
-#define SND_AUDIOSTREAMFORMAT_MP4LATM ((__u32) 0x00000008)
-#define SND_AUDIOSTREAMFORMAT_ADIF ((__u32) 0x00000010)
-#define SND_AUDIOSTREAMFORMAT_MP4FF ((__u32) 0x00000020)
-#define SND_AUDIOSTREAMFORMAT_RAW ((__u32) 0x00000040)
-
-#define SND_AUDIOPROFILE_WMA7 ((__u32) 0x00000001)
-#define SND_AUDIOPROFILE_WMA8 ((__u32) 0x00000002)
-#define SND_AUDIOPROFILE_WMA9 ((__u32) 0x00000004)
-#define SND_AUDIOPROFILE_WMA10 ((__u32) 0x00000008)
-
-#define SND_AUDIOMODE_WMA_LEVEL1 ((__u32) 0x00000001)
-#define SND_AUDIOMODE_WMA_LEVEL2 ((__u32) 0x00000002)
-#define SND_AUDIOMODE_WMA_LEVEL3 ((__u32) 0x00000004)
-#define SND_AUDIOMODE_WMA_LEVEL4 ((__u32) 0x00000008)
-#define SND_AUDIOMODE_WMAPRO_LEVELM0 ((__u32) 0x00000010)
-#define SND_AUDIOMODE_WMAPRO_LEVELM1 ((__u32) 0x00000020)
-#define SND_AUDIOMODE_WMAPRO_LEVELM2 ((__u32) 0x00000040)
-#define SND_AUDIOMODE_WMAPRO_LEVELM3 ((__u32) 0x00000080)
-
-#define SND_AUDIOSTREAMFORMAT_WMA_ASF ((__u32) 0x00000001)
-/*
- * Some implementations strip the ASF header and only send ASF packets
- * to the DSP
- */
-#define SND_AUDIOSTREAMFORMAT_WMA_NOASF_HDR ((__u32) 0x00000002)
-
-#define SND_AUDIOPROFILE_REALAUDIO ((__u32) 0x00000001)
-
-#define SND_AUDIOMODE_REALAUDIO_G2 ((__u32) 0x00000001)
-#define SND_AUDIOMODE_REALAUDIO_8 ((__u32) 0x00000002)
-#define SND_AUDIOMODE_REALAUDIO_10 ((__u32) 0x00000004)
-#define SND_AUDIOMODE_REALAUDIO_SURROUND ((__u32) 0x00000008)
-
-#define SND_AUDIOPROFILE_VORBIS ((__u32) 0x00000001)
-
-#define SND_AUDIOMODE_VORBIS ((__u32) 0x00000001)
-
-#define SND_AUDIOPROFILE_FLAC ((__u32) 0x00000001)
-
-/*
- * Define quality levels for FLAC encoders, from LEVEL0 (fast)
- * to LEVEL8 (best)
- */
-#define SND_AUDIOMODE_FLAC_LEVEL0 ((__u32) 0x00000001)
-#define SND_AUDIOMODE_FLAC_LEVEL1 ((__u32) 0x00000002)
-#define SND_AUDIOMODE_FLAC_LEVEL2 ((__u32) 0x00000004)
-#define SND_AUDIOMODE_FLAC_LEVEL3 ((__u32) 0x00000008)
-#define SND_AUDIOMODE_FLAC_LEVEL4 ((__u32) 0x00000010)
-#define SND_AUDIOMODE_FLAC_LEVEL5 ((__u32) 0x00000020)
-#define SND_AUDIOMODE_FLAC_LEVEL6 ((__u32) 0x00000040)
-#define SND_AUDIOMODE_FLAC_LEVEL7 ((__u32) 0x00000080)
-#define SND_AUDIOMODE_FLAC_LEVEL8 ((__u32) 0x00000100)
-
-#define SND_AUDIOSTREAMFORMAT_FLAC ((__u32) 0x00000001)
-#define SND_AUDIOSTREAMFORMAT_FLAC_OGG ((__u32) 0x00000002)
-
-/* IEC61937 payloads without CUVP and preambles */
-#define SND_AUDIOPROFILE_IEC61937 ((__u32) 0x00000001)
-/* IEC61937 with S/PDIF preambles+CUVP bits in 32-bit containers */
-#define SND_AUDIOPROFILE_IEC61937_SPDIF ((__u32) 0x00000002)
-
-/*
- * IEC modes are mandatory for decoders. Format autodetection
- * will only happen on the DSP side with mode 0. The PCM mode should
- * not be used, the PCM codec should be used instead.
- */
-#define SND_AUDIOMODE_IEC_REF_STREAM_HEADER ((__u32) 0x00000000)
-#define SND_AUDIOMODE_IEC_LPCM ((__u32) 0x00000001)
-#define SND_AUDIOMODE_IEC_AC3 ((__u32) 0x00000002)
-#define SND_AUDIOMODE_IEC_MPEG1 ((__u32) 0x00000004)
-#define SND_AUDIOMODE_IEC_MP3 ((__u32) 0x00000008)
-#define SND_AUDIOMODE_IEC_MPEG2 ((__u32) 0x00000010)
-#define SND_AUDIOMODE_IEC_AACLC ((__u32) 0x00000020)
-#define SND_AUDIOMODE_IEC_DTS ((__u32) 0x00000040)
-#define SND_AUDIOMODE_IEC_ATRAC ((__u32) 0x00000080)
-#define SND_AUDIOMODE_IEC_SACD ((__u32) 0x00000100)
-#define SND_AUDIOMODE_IEC_EAC3 ((__u32) 0x00000200)
-#define SND_AUDIOMODE_IEC_DTS_HD ((__u32) 0x00000400)
-#define SND_AUDIOMODE_IEC_MLP ((__u32) 0x00000800)
-#define SND_AUDIOMODE_IEC_DST ((__u32) 0x00001000)
-#define SND_AUDIOMODE_IEC_WMAPRO ((__u32) 0x00002000)
-#define SND_AUDIOMODE_IEC_REF_CXT ((__u32) 0x00004000)
-#define SND_AUDIOMODE_IEC_HE_AAC ((__u32) 0x00008000)
-#define SND_AUDIOMODE_IEC_HE_AAC2 ((__u32) 0x00010000)
-#define SND_AUDIOMODE_IEC_MPEG_SURROUND ((__u32) 0x00020000)
-
-#define SND_AUDIOPROFILE_G723_1 ((__u32) 0x00000001)
-
-#define SND_AUDIOMODE_G723_1_ANNEX_A ((__u32) 0x00000001)
-#define SND_AUDIOMODE_G723_1_ANNEX_B ((__u32) 0x00000002)
-#define SND_AUDIOMODE_G723_1_ANNEX_C ((__u32) 0x00000004)
-
-#define SND_AUDIOPROFILE_G729 ((__u32) 0x00000001)
-
-#define SND_AUDIOMODE_G729_ANNEX_A ((__u32) 0x00000001)
-#define SND_AUDIOMODE_G729_ANNEX_B ((__u32) 0x00000002)
-
-/* <FIXME: multichannel encoders aren't supported for now. Would need
- an additional definition of channel arrangement> */
-
-/* VBR/CBR definitions */
-#define SND_RATECONTROLMODE_CONSTANTBITRATE ((__u32) 0x00000001)
-#define SND_RATECONTROLMODE_VARIABLEBITRATE ((__u32) 0x00000002)
-
-/* Encoder options */
-
-struct snd_enc_wma {
- __u32 super_block_align; /* WMA Type-specific data */
- __u32 bits_per_sample;
- __u32 channelmask;
- __u32 encodeopt;
- __u32 encodeopt1;
- __u32 encodeopt2;
- __u32 avg_bit_rate;
-};
-
-
-/**
- * struct snd_enc_vorbis
- * @quality: Sets encoding quality to n, between -1 (low) and 10 (high).
- * In the default mode of operation, the quality level is 3.
- * Normal quality range is 0 - 10.
- * @managed: Boolean. Set bitrate management mode. This turns off the
- * normal VBR encoding, but allows hard or soft bitrate constraints to be
- * enforced by the encoder. This mode can be slower, and may also be
- * lower quality. It is primarily useful for streaming.
- * @max_bit_rate: Enabled only if managed is TRUE
- * @min_bit_rate: Enabled only if managed is TRUE
- * @downmix: Boolean. Downmix input from stereo to mono (has no effect on
- * non-stereo streams). Useful for lower-bitrate encoding.
- *
- * These options were extracted from the OpenMAX IL spec and Gstreamer vorbisenc
- * properties
- *
- * For best quality users should specify VBR mode and set quality levels.
- */
-
-struct snd_enc_vorbis {
- __s32 quality;
- __u32 managed;
- __u32 max_bit_rate;
- __u32 min_bit_rate;
- __u32 downmix;
-} __attribute__((packed, aligned(4)));
-
-
-/**
- * struct snd_enc_real
- * @quant_bits: number of coupling quantization bits in the stream
- * @start_region: coupling start region in the stream
- * @num_regions: number of regions value
- *
- * These options were extracted from the OpenMAX IL spec
- */
-
-struct snd_enc_real {
- __u32 quant_bits;
- __u32 start_region;
- __u32 num_regions;
-} __attribute__((packed, aligned(4)));
-
-/**
- * struct snd_enc_flac
- * @num: serial number, valid only for OGG formats
- * needs to be set by application
- * @gain: Add replay gain tags
- *
- * These options were extracted from the FLAC online documentation
- * at http://flac.sourceforge.net/documentation_tools_flac.html
- *
- * To make the API simpler, it is assumed that the user will select quality
- * profiles. Additional options that affect encoding quality and speed can
- * be added at a later stage if needed.
- *
- * By default the Subset format is used by encoders.
- *
- * TAGS such as pictures, etc, cannot be handled by an offloaded encoder and are
- * not supported in this API.
- */
-
-struct snd_enc_flac {
- __u32 num;
- __u32 gain;
-} __attribute__((packed, aligned(4)));
-
-struct snd_enc_generic {
- __u32 bw; /* encoder bandwidth */
- __s32 reserved[15]; /* Can be used for SND_AUDIOCODEC_BESPOKE */
-} __attribute__((packed, aligned(4)));
-
-struct snd_dec_ddp {
- __u32 params_length;
- __u32 params_id[SND_DEC_DDP_MAX_PARAMS];
- __u32 params_value[SND_DEC_DDP_MAX_PARAMS];
-} __attribute__((packed, aligned(4)));
-
-struct snd_dec_flac {
- __u16 sample_size;
- __u16 min_blk_size;
- __u16 max_blk_size;
- __u16 min_frame_size;
- __u16 max_frame_size;
-} __attribute__((packed, aligned(4)));
-
-struct snd_dec_vorbis {
- __u32 bit_stream_fmt;
-};
-
-struct snd_dec_alac {
- __u32 frame_length;
- __u8 compatible_version;
- __u8 bit_depth;
- __u8 pb;
- __u8 mb;
- __u8 kb;
- __u8 num_channels;
- __u16 max_run;
- __u32 max_frame_bytes;
- __u32 avg_bit_rate;
- __u32 sample_rate;
- __u32 channel_layout_tag;
-};
-
-struct snd_dec_ape {
- __u16 compatible_version;
- __u16 compression_level;
- __u32 format_flags;
- __u32 blocks_per_frame;
- __u32 final_frame_blocks;
- __u32 total_frames;
- __u16 bits_per_sample;
- __u16 num_channels;
- __u32 sample_rate;
- __u32 seek_table_present;
-};
-
-struct snd_dec_aptx {
- __u32 lap;
- __u32 uap;
- __u32 nap;
-};
-
-struct snd_dec_amrwb_plus {
- __u32 bit_stream_fmt;
-};
-
-union snd_codec_options {
- struct snd_enc_wma wma;
- struct snd_enc_vorbis vorbis;
- struct snd_enc_real real;
- struct snd_enc_flac flac;
- struct snd_enc_generic generic;
- struct snd_dec_ddp ddp;
- struct snd_dec_flac flac_dec;
- struct snd_dec_vorbis vorbis_dec;
- struct snd_dec_alac alac;
- struct snd_dec_ape ape;
- struct snd_dec_aptx aptx_dec;
- struct snd_dec_amrwb_plus amrwbplus;
-};
-
-/** struct snd_codec_desc - description of codec capabilities
- * @max_ch: Maximum number of audio channels
- * @sample_rates: Sampling rates in Hz, use values like 48000 for this
- * @num_sample_rates: Number of valid values in sample_rates array
- * @bit_rate: Indexed array containing supported bit rates
- * @num_bitrates: Number of valid values in bit_rate array
- * @rate_control: value is specified by SND_RATECONTROLMODE defines.
- * @profiles: Supported profiles. See SND_AUDIOPROFILE defines.
- * @modes: Supported modes. See SND_AUDIOMODE defines
- * @formats: Supported formats. See SND_AUDIOSTREAMFORMAT defines
- * @min_buffer: Minimum buffer size handled by codec implementation
- * @reserved: reserved for future use
- *
- * This structure provides a scalar value for profiles, modes and stream
- * format fields.
- * If an implementation supports multiple combinations, they will be listed as
- * codecs with different descriptors, for example there would be 2 descriptors
- * for AAC-RAW and AAC-ADTS.
- * This entails some redundancy but makes it easier to avoid invalid
- * configurations.
- *
- */
-
-struct snd_codec_desc {
- __u32 max_ch;
- __u32 sample_rates[MAX_NUM_SAMPLE_RATES];
- __u32 num_sample_rates;
- __u32 bit_rate[MAX_NUM_BITRATES];
- __u32 num_bitrates;
- __u32 rate_control;
- __u32 profiles;
- __u32 modes;
- __u32 formats;
- __u32 min_buffer;
- __u32 reserved[15];
-} __attribute__((packed, aligned(4)));
-
-/** struct snd_codec
- * @id: Identifies the supported audio encoder/decoder.
- * See SND_AUDIOCODEC macros.
- * @ch_in: Number of input audio channels
- * @ch_out: Number of output channels. In case of contradiction between
- * this field and the channelMode field, the channelMode field
- * overrides.
- * @sample_rate: Audio sample rate of input data in Hz, use values like 48000
- * for this.
- * @bit_rate: Bitrate of encoded data. May be ignored by decoders
- * @rate_control: Encoding rate control. See SND_RATECONTROLMODE defines.
- * Encoders may rely on profiles for quality levels.
- * May be ignored by decoders.
- * @profile: Mandatory for encoders, can be mandatory for specific
- * decoders as well. See SND_AUDIOPROFILE defines.
- * @level: Supported level (Only used by WMA at the moment)
- * @ch_mode: Channel mode for encoder. See SND_AUDIOCHANMODE defines
- * @format: Format of encoded bistream. Mandatory when defined.
- * See SND_AUDIOSTREAMFORMAT defines.
- * @align: Block alignment in bytes of an audio sample.
- * Only required for PCM or IEC formats.
- * @options: encoder-specific settings
- * @reserved: reserved for future use
- */
-
-struct snd_codec {
- __u32 id;
- __u32 ch_in;
- __u32 ch_out;
- __u32 sample_rate;
- __u32 bit_rate;
- __u32 rate_control;
- __u32 profile;
- __u32 level;
- __u32 ch_mode;
- __u32 format;
- __u32 align;
- __u32 compr_passthr;
- union snd_codec_options options;
- __u32 flags;
- __u32 reserved[2];
-} __attribute__((packed, aligned(4)));
-
-
-/** struct snd_codec_metadata
- * @length: Length of the encoded buffer.
- * @offset: Offset from the buffer address to the first byte of the first
- * encoded frame. All encoded frames are consecutive starting
- * from this offset.
- * @timestamp: Session time in microseconds of the first sample in the buffer.
- * @reserved: Reserved for future use.
- */
-struct snd_codec_metadata {
- __u32 length;
- __u32 offset;
- __u64 timestamp;
- __u32 reserved[4];
-};
-
-#endif
diff --git a/sdm710/original-kernel-headers/sound/devdep_params.h b/sdm710/original-kernel-headers/sound/devdep_params.h
deleted file mode 100644
index b4a185f7..00000000
--- a/sdm710/original-kernel-headers/sound/devdep_params.h
+++ /dev/null
@@ -1,66 +0,0 @@
-#ifndef _DEV_DEP_H
-#define _DEV_DEP_H
-
-struct dolby_param_data {
- int32_t version;
- int32_t device_id;
- int32_t be_id;
- int32_t param_id;
- int32_t length;
- int32_t *data;
-};
-
-struct dolby_param_license {
- int32_t dmid;
- int32_t license_key;
-};
-
-#define SNDRV_DEVDEP_DAP_IOCTL_SET_PARAM\
- _IOWR('U', 0x10, struct dolby_param_data)
-#define SNDRV_DEVDEP_DAP_IOCTL_GET_PARAM\
- _IOR('U', 0x11, struct dolby_param_data)
-#define SNDRV_DEVDEP_DAP_IOCTL_DAP_COMMAND\
- _IOWR('U', 0x13, struct dolby_param_data)
-#define SNDRV_DEVDEP_DAP_IOCTL_DAP_LICENSE\
- _IOWR('U', 0x14, struct dolby_param_license)
-#define SNDRV_DEVDEP_DAP_IOCTL_GET_VISUALIZER\
- _IOR('U', 0x15, struct dolby_param_data)
-
-#define DTS_EAGLE_MODULE 0x00005000
-#define DTS_EAGLE_MODULE_ENABLE 0x00005001
-#define EAGLE_DRIVER_ID 0xF2
-#define DTS_EAGLE_IOCTL_GET_CACHE_SIZE _IOR(EAGLE_DRIVER_ID, 0, int)
-#define DTS_EAGLE_IOCTL_SET_CACHE_SIZE _IOW(EAGLE_DRIVER_ID, 1, int)
-#define DTS_EAGLE_IOCTL_GET_PARAM _IOR(EAGLE_DRIVER_ID, 2, void*)
-#define DTS_EAGLE_IOCTL_SET_PARAM _IOW(EAGLE_DRIVER_ID, 3, void*)
-#define DTS_EAGLE_IOCTL_SET_CACHE_BLOCK _IOW(EAGLE_DRIVER_ID, 4, void*)
-#define DTS_EAGLE_IOCTL_SET_ACTIVE_DEVICE _IOW(EAGLE_DRIVER_ID, 5, void*)
-#define DTS_EAGLE_IOCTL_GET_LICENSE _IOR(EAGLE_DRIVER_ID, 6, void*)
-#define DTS_EAGLE_IOCTL_SET_LICENSE _IOW(EAGLE_DRIVER_ID, 7, void*)
-#define DTS_EAGLE_IOCTL_SEND_LICENSE _IOW(EAGLE_DRIVER_ID, 8, int)
-#define DTS_EAGLE_IOCTL_SET_VOLUME_COMMANDS _IOW(EAGLE_DRIVER_ID, 9, void*)
-#define DTS_EAGLE_FLAG_IOCTL_PRE (1<<30)
-#define DTS_EAGLE_FLAG_IOCTL_JUSTSETCACHE (1<<31)
-#define DTS_EAGLE_FLAG_IOCTL_GETFROMCORE DTS_EAGLE_FLAG_IOCTL_JUSTSETCACHE
-#define DTS_EAGLE_FLAG_IOCTL_MASK (~(DTS_EAGLE_FLAG_IOCTL_PRE | \
- DTS_EAGLE_FLAG_IOCTL_JUSTSETCACHE))
-#define DTS_EAGLE_FLAG_ALSA_GET (1<<31)
-
-struct dts_eagle_param_desc {
- uint32_t id;
- uint32_t size;
- int32_t offset;
- uint32_t device;
-} __attribute__((packed));
-
-#define HWDEP_FE_BASE 3000 /*unique base for FE hw dep nodes*/
-struct snd_pcm_mmap_fd {
- int32_t dir;
- int32_t fd;
- int32_t size;
- int32_t actual_size;
-};
-
-#define SNDRV_PCM_IOCTL_MMAP_DATA_FD _IOWR('U', 0xd2, struct snd_pcm_mmap_fd)
-
-#endif
diff --git a/sdm710/original-kernel-headers/sound/lsm_params.h b/sdm710/original-kernel-headers/sound/lsm_params.h
deleted file mode 100644
index 50ec97a0..00000000
--- a/sdm710/original-kernel-headers/sound/lsm_params.h
+++ /dev/null
@@ -1,200 +0,0 @@
-#ifndef _LSM_PARAMS_H__
-#define _LSM_PARAMS_H__
-
-#define LSM_POLLING_ENABLE_SUPPORT
-#define LSM_EVENT_TIMESTAMP_MODE_SUPPORT
-
-#include <linux/types.h>
-#include <sound/asound.h>
-
-#define SNDRV_LSM_VERSION SNDRV_PROTOCOL_VERSION(0, 1, 0)
-
-#define LSM_OUT_FORMAT_PCM (0)
-#define LSM_OUT_FORMAT_ADPCM (1 << 0)
-
-#define LSM_OUT_DATA_RAW (0)
-#define LSM_OUT_DATA_PACKED (1)
-
-#define LSM_OUT_DATA_EVENTS_DISABLED (0)
-#define LSM_OUT_DATA_EVENTS_ENABLED (1)
-
-#define LSM_OUT_TRANSFER_MODE_RT (0)
-#define LSM_OUT_TRANSFER_MODE_FTRT (1)
-
-#define LSM_ENDPOINT_DETECT_THRESHOLD (0)
-#define LSM_OPERATION_MODE (1)
-#define LSM_GAIN (2)
-#define LSM_MIN_CONFIDENCE_LEVELS (3)
-#define LSM_REG_SND_MODEL (4)
-#define LSM_DEREG_SND_MODEL (5)
-#define LSM_CUSTOM_PARAMS (6)
-#define LSM_POLLING_ENABLE (7)
-#define LSM_PARAMS_MAX (LSM_POLLING_ENABLE + 1)
-
-#define LSM_EVENT_NON_TIME_STAMP_MODE (0)
-#define LSM_EVENT_TIME_STAMP_MODE (1)
-
-enum lsm_app_id {
- LSM_VOICE_WAKEUP_APP_ID = 1,
- LSM_VOICE_WAKEUP_APP_ID_V2 = 2,
-};
-
-enum lsm_detection_mode {
- LSM_MODE_KEYWORD_ONLY_DETECTION = 1,
- LSM_MODE_USER_KEYWORD_DETECTION
-};
-
-enum lsm_vw_status {
- LSM_VOICE_WAKEUP_STATUS_RUNNING = 1,
- LSM_VOICE_WAKEUP_STATUS_DETECTED,
- LSM_VOICE_WAKEUP_STATUS_END_SPEECH,
- LSM_VOICE_WAKEUP_STATUS_REJECTED
-};
-
-/*
- * Data for LSM_ENDPOINT_DETECT_THRESHOLD param_type
- * @epd_begin: Begin threshold
- * @epd_end: End threshold
- */
-struct snd_lsm_ep_det_thres {
- __u32 epd_begin;
- __u32 epd_end;
-};
-
-/*
- * Data for LSM_OPERATION_MODE param_type
- * @mode: The detection mode to be used
- * @detect_failure: Setting to enable failure detections.
- */
-struct snd_lsm_detect_mode {
- enum lsm_detection_mode mode;
- bool detect_failure;
-};
-
-/*
- * Data for LSM_GAIN param_type
- * @gain: The gain to be applied on LSM
- */
-struct snd_lsm_gain {
- __u16 gain;
-};
-
-/*
- * Data for LSM_POLLING_ENABLE param_type
- * @poll_en: Polling enable or disable
- */
-struct snd_lsm_poll_enable {
- bool poll_en;
-};
-
-
-struct snd_lsm_sound_model_v2 {
- __u8 *data;
- __u8 *confidence_level;
- __u32 data_size;
- enum lsm_detection_mode detection_mode;
- __u8 num_confidence_levels;
- bool detect_failure;
-};
-
-struct snd_lsm_session_data {
- enum lsm_app_id app_id;
-};
-
-struct snd_lsm_event_status {
- __u16 status;
- __u16 payload_size;
- __u8 payload[0];
-};
-
-struct snd_lsm_event_status_v3 {
- __u32 timestamp_lsw;
- __u32 timestamp_msw;
- __u16 status;
- __u16 payload_size;
- __u8 payload[0];
-};
-
-struct snd_lsm_detection_params {
- __u8 *conf_level;
- enum lsm_detection_mode detect_mode;
- __u8 num_confidence_levels;
- bool detect_failure;
- bool poll_enable;
-};
-
-/*
- * Param info for each parameter type
- * @module_id: Module to which parameter is to be set
- * @param_id: Parameter that is to be set
- * @param_size: size (in number of bytes) for the data
- * in param_data.
- * For confidence levels, this is num_conf_levels
- * For REG_SND_MODEL, this is size of sound model
- * For CUSTOM_PARAMS, this is size of the entire blob of data
- * @param_data: Data for the parameter.
- * For some param_types this is a structure defined, ex: LSM_GAIN
- * For CONFIDENCE_LEVELS, this is array of confidence levels
- * For REG_SND_MODEL, this is the sound model data
- * For CUSTOM_PARAMS, this is the blob of custom data.
- */
-struct lsm_params_info {
- __u32 module_id;
- __u32 param_id;
- __u32 param_size;
- __u8 *param_data;
- uint32_t param_type;
-};
-
-/*
- * Data passed to the SET_PARAM_V2 IOCTL
- * @num_params: Number of params that are to be set
- * should not be greater than LSM_PARAMS_MAX
- * @params: Points to an array of lsm_params_info
- * Each entry points to one parameter to set
- * @data_size: size (in bytes) for params
- * should be equal to
- * num_params * sizeof(struct lsm_parms_info)
- */
-struct snd_lsm_module_params {
- __u8 *params;
- __u32 num_params;
- __u32 data_size;
-};
-
-/*
- * Data passed to LSM_OUT_FORMAT_CFG IOCTL
- * @format: The media format enum
- * @packing: indicates the packing method used for data path
- * @events: indicates whether data path events need to be enabled
- * @transfer_mode: indicates whether FTRT mode or RT mode.
- */
-struct snd_lsm_output_format_cfg {
- __u8 format;
- __u8 packing;
- __u8 events;
- __u8 mode;
-};
-
-#define SNDRV_LSM_DEREG_SND_MODEL _IOW('U', 0x01, int)
-#define SNDRV_LSM_EVENT_STATUS _IOW('U', 0x02, struct snd_lsm_event_status)
-#define SNDRV_LSM_ABORT_EVENT _IOW('U', 0x03, int)
-#define SNDRV_LSM_START _IOW('U', 0x04, int)
-#define SNDRV_LSM_STOP _IOW('U', 0x05, int)
-#define SNDRV_LSM_SET_SESSION_DATA _IOW('U', 0x06, struct snd_lsm_session_data)
-#define SNDRV_LSM_REG_SND_MODEL_V2 _IOW('U', 0x07,\
- struct snd_lsm_sound_model_v2)
-#define SNDRV_LSM_LAB_CONTROL _IOW('U', 0x08, uint32_t)
-#define SNDRV_LSM_STOP_LAB _IO('U', 0x09)
-#define SNDRV_LSM_SET_PARAMS _IOW('U', 0x0A, \
- struct snd_lsm_detection_params)
-#define SNDRV_LSM_SET_MODULE_PARAMS _IOW('U', 0x0B, \
- struct snd_lsm_module_params)
-#define SNDRV_LSM_OUT_FORMAT_CFG _IOW('U', 0x0C, \
- struct snd_lsm_output_format_cfg)
-#define SNDRV_LSM_SET_PORT _IO('U', 0x0D)
-#define SNDRV_LSM_SET_FWK_MODE_CONFIG _IOW('U', 0x0E, uint32_t)
-#define SNDRV_LSM_EVENT_STATUS_V3 _IOW('U', 0x0F, \
- struct snd_lsm_event_status_v3)
-
-#endif
diff --git a/sdm710/original-kernel-headers/sound/msmcal-hwdep.h b/sdm710/original-kernel-headers/sound/msmcal-hwdep.h
deleted file mode 100644
index abb66106..00000000
--- a/sdm710/original-kernel-headers/sound/msmcal-hwdep.h
+++ /dev/null
@@ -1,23 +0,0 @@
-#ifndef _CALIB_HWDEP_H
-#define _CALIB_HWDEP_H
-
-#define WCD9XXX_CODEC_HWDEP_NODE 1000
-enum wcd_cal_type {
- WCD9XXX_MIN_CAL,
- WCD9XXX_ANC_CAL = WCD9XXX_MIN_CAL,
- WCD9XXX_MAD_CAL,
- WCD9XXX_MBHC_CAL,
- WCD9XXX_VBAT_CAL,
- WCD9XXX_MAX_CAL,
-};
-
-struct wcdcal_ioctl_buffer {
- __u32 size;
- __u8 *buffer;
- enum wcd_cal_type cal_type;
-};
-
-#define SNDRV_CTL_IOCTL_HWDEP_CAL_TYPE \
- _IOW('U', 0x1, struct wcdcal_ioctl_buffer)
-
-#endif /*_CALIB_HWDEP_H*/
diff --git a/sdm710/original-kernel-headers/sound/voice_params.h b/sdm710/original-kernel-headers/sound/voice_params.h
deleted file mode 100644
index 43e3b9d0..00000000
--- a/sdm710/original-kernel-headers/sound/voice_params.h
+++ /dev/null
@@ -1,14 +0,0 @@
-#ifndef __VOICE_PARAMS_H__
-#define __VOICE_PARAMS_H__
-
-#include <linux/types.h>
-#include <sound/asound.h>
-
-enum voice_lch_mode {
- VOICE_LCH_START = 1,
- VOICE_LCH_STOP
-};
-
-#define SNDRV_VOICE_IOCTL_LCH _IOW('U', 0x00, enum voice_lch_mode)
-
-#endif
diff --git a/sdm710/original-kernel-headers/sound/voice_svc.h b/sdm710/original-kernel-headers/sound/voice_svc.h
deleted file mode 100644
index 035053f0..00000000
--- a/sdm710/original-kernel-headers/sound/voice_svc.h
+++ /dev/null
@@ -1,47 +0,0 @@
-#ifndef __VOICE_SVC_H__
-#define __VOICE_SVC_H__
-
-#include <linux/types.h>
-#include <linux/ioctl.h>
-
-#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
-
-#define MSG_REGISTER 0x1
-#define MSG_REQUEST 0x2
-#define MSG_RESPONSE 0x3
-
-struct voice_svc_write_msg {
- __u32 msg_type;
- __u8 payload[0];
-};
-
-struct voice_svc_register {
- char svc_name[MAX_APR_SERVICE_NAME_LEN];
- __u32 src_port;
- __u8 reg_flag;
-};
-
-struct voice_svc_cmd_response {
- __u32 src_port;
- __u32 dest_port;
- __u32 token;
- __u32 opcode;
- __u32 payload_size;
- __u8 payload[0];
-};
-
-struct voice_svc_cmd_request {
- char svc_name[MAX_APR_SERVICE_NAME_LEN];
- __u32 src_port;
- __u32 dest_port;
- __u32 token;
- __u32 opcode;
- __u32 payload_size;
- __u8 payload[0];
-};
-
-#endif
diff --git a/sdm710/original-kernel-headers/sound/wcd-dsp-glink.h b/sdm710/original-kernel-headers/sound/wcd-dsp-glink.h
deleted file mode 100644
index 39d128d3..00000000
--- a/sdm710/original-kernel-headers/sound/wcd-dsp-glink.h
+++ /dev/null
@@ -1,60 +0,0 @@
-#ifndef _WCD_DSP_GLINK_H
-#define _WCD_DSP_GLINK_H
-
-#include <linux/types.h>
-
-#define WDSP_CH_NAME_MAX_LEN 50
-
-enum {
- WDSP_REG_PKT = 1,
- WDSP_CMD_PKT,
- WDSP_READY_PKT,
-};
-#define WDSP_READY_PKT WDSP_READY_PKT
-
-/*
- * struct wdsp_reg_pkt - Glink channel information structure format
- * @no_of_channels: Number of glink channels to open
- * @payload[0]: Dynamic array contains all the glink channels information
- */
-struct wdsp_reg_pkt {
- __u8 no_of_channels;
- __u8 payload[0];
-};
-
-/*
- * struct wdsp_cmd_pkt - WDSP command packet format
- * @ch_name: Name of the glink channel
- * @payload_size: Size of the payload
- * @payload[0]: Actual data payload
- */
-struct wdsp_cmd_pkt {
- char ch_name[WDSP_CH_NAME_MAX_LEN];
- __u32 payload_size;
- __u8 payload[0];
-};
-
-/*
- * struct wdsp_write_pkt - Format that userspace send the data to driver.
- * @pkt_type: Type of the packet(REG or CMD PKT)
- * @payload[0]: Payload is either cmd or reg pkt structure based on pkt type
- */
-struct wdsp_write_pkt {
- __u8 pkt_type;
- __u8 payload[0];
-};
-
-/*
- * struct wdsp_glink_ch_cfg - Defines the glink channel configuration.
- * @ch_name: Name of the glink channel
- * @latency_in_us: Latency specified in micro seconds for QOS
- * @no_of_intents: Number of intents prequeued
- * @intents_size[0]: Dynamic array to specify size of each intent
- */
-struct wdsp_glink_ch_cfg {
- char name[WDSP_CH_NAME_MAX_LEN];
- __u32 latency_in_us;
- __u32 no_of_intents;
- __u32 intents_size[0];
-};
-#endif /* _WCD_DSP_GLINK_H */
diff --git a/sdm710/original-kernel-headers/video/msm_hdmi_modes.h b/sdm710/original-kernel-headers/video/msm_hdmi_modes.h
deleted file mode 100644
index 7b2d6986..00000000
--- a/sdm710/original-kernel-headers/video/msm_hdmi_modes.h
+++ /dev/null
@@ -1,559 +0,0 @@
-#ifndef _MSM_HDMI_MODES_H__
-#define _MSM_HDMI_MODES_H__
-#include <linux/types.h>
-#include <linux/errno.h>
-
-#define MSM_HDMI_RGB_888_24BPP_FORMAT (1 << 0)
-#define MSM_HDMI_YUV_420_12BPP_FORMAT (1 << 1)
-
-enum aspect_ratio {
- HDMI_RES_AR_INVALID,
- HDMI_RES_AR_4_3,
- HDMI_RES_AR_5_4,
- HDMI_RES_AR_16_9,
- HDMI_RES_AR_16_10,
- HDMI_RES_AR_64_27,
- HDMI_RES_AR_256_135,
- HDMI_RES_AR_MAX,
-};
-
-enum msm_hdmi_s3d_mode {
- HDMI_S3D_NONE,
- HDMI_S3D_SIDE_BY_SIDE,
- HDMI_S3D_TOP_AND_BOTTOM,
- HDMI_S3D_FRAME_PACKING,
- HDMI_S3D_MAX,
-};
-
-struct msm_hdmi_mode_timing_info {
- uint32_t video_format;
- uint32_t active_h;
- uint32_t front_porch_h;
- uint32_t pulse_width_h;
- uint32_t back_porch_h;
- uint32_t active_low_h;
- uint32_t active_v;
- uint32_t front_porch_v;
- uint32_t pulse_width_v;
- uint32_t back_porch_v;
- uint32_t active_low_v;
- /* Must divide by 1000 to get the actual frequency in MHZ */
- uint32_t pixel_freq;
- /* Must divide by 1000 to get the actual frequency in HZ */
- uint32_t refresh_rate;
- uint32_t interlaced;
- uint32_t supported;
- enum aspect_ratio ar;
- /* Flags indicating support for specific pixel formats */
- uint32_t pixel_formats;
-};
-
-#define MSM_HDMI_INIT_RES_PAGE 1
-
-#define MSM_HDMI_MODES_CEA (1 << 0)
-#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)
-
-/* all video formats defined by CEA 861D */
-#define HDMI_VFRMT_UNKNOWN 0
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#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
-#define HDMI_VFRMT_3840x2160p30_64_27 105
-#define HDMI_VFRMT_3840x2160p50_64_27 106
-#define HDMI_VFRMT_3840x2160p60_64_27 107
-
-/* Video Identification Codes from 107-127 are reserved for the future */
-#define HDMI_VFRMT_END 127
-
-#define EVFRMT_OFF(x) (HDMI_VFRMT_END + x)
-
-/* extended video formats */
-#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)
-#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)
-
-/* WQXGA */
-#define HDMI_VFRMT_2560x1600p60_16_9 WQXGA_OFF(1)
-#define HDMI_WQXGAFRMT_END HDMI_VFRMT_2560x1600p60_16_9
-
-#define WXGA_OFF(x) (HDMI_WQXGAFRMT_END + x)
-
-/* WXGA */
-#define HDMI_VFRMT_1280x800p60_16_10 WXGA_OFF(1)
-#define HDMI_VFRMT_1366x768p60_16_10 WXGA_OFF(2)
-#define HDMI_WXGAFRMT_END HDMI_VFRMT_1366x768p60_16_10
-
-#define ETI_OFF(x) (HDMI_WXGAFRMT_END + x)
-
-/* ESTABLISHED TIMINGS I */
-#define HDMI_VFRMT_800x600p60_4_3 ETI_OFF(1)
-#define ETI_VFRMT_END HDMI_VFRMT_800x600p60_4_3
-
-#define ETII_OFF(x) (ETI_VFRMT_END + x)
-
-/* ESTABLISHED TIMINGS II */
-#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
-
-#define ETIII_OFF(x) (ETII_VFRMT_END + x)
-
-/* ESTABLISHED TIMINGS III */
-#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)
-#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)
-#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)
-#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)
-#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
-
-#define HDMI_VFRMT_MAX (RESERVE_VFRMT_END + 1)
-
-/* Timing information for supported modes */
-#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}
-#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}
-#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}
-#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}
-#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}
-#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}
-#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}
-#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}
-#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}
-#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}
-#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}
-#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}
-#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}
-
-#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)
-
-#endif /* _MSM_HDMI_MODES_H__ */