# Copyright (C) 2011 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

# This file is generated by device/common/generate-blob-lists.sh - DO NOT EDIT

/system/bin/ATFWD-daemon
/system/bin/bridgemgrd
/system/bin/btnvtool
/system/bin/diag_klog
/system/bin/diag_mdlog
/system/bin/ds_fmc_appd
/system/bin/efsks
/system/bin/hci_qcomm_init
/system/bin/ks
/system/bin/mm-qcamera-daemon
/system/bin/mpdecision
/system/bin/netmgrd
/system/bin/nl_listener
/system/bin/port-bridge
/system/bin/qcks
/system/bin/qmuxd
/system/bin/qseecomd
/system/bin/radish
/system/bin/rmt_storage
/system/bin/sensors.qcom
/system/bin/thermald
/system/bin/usbhub
/system/bin/usbhub_init
/system/bin/v4l2-qcamera-app
/system/etc/DxHDCP.cfg
/system/etc/firmware/vidc.b00
/system/etc/firmware/vidc.b01
/system/etc/firmware/vidc.b02
/system/etc/firmware/vidc.b03
/system/etc/firmware/vidc.mdt
/system/etc/firmware/vidc_1080p.fw
/system/etc/firmware/wcd9310/wcd9310_anc.bin
/system/etc/firmware/wcd9310/wcd9310_mbhc.bin
/system/lib/egl/eglsubAndroid.so
/system/lib/egl/libEGL_adreno200.so
/system/lib/egl/libGLESv1_CM_adreno200.so
/system/lib/egl/libGLESv2_adreno200.so
/system/lib/egl/libq3dtools_adreno200.so
/system/lib/hw/gps.msm8960.so
/system/lib/hw/sensors.msm8960.so
/system/lib/libacdbdata.so
/system/lib/libacdbloader.so
/system/lib/libAKM.so
/system/lib/libaudcal.so
/system/lib/libaudioalsa.so
/system/lib/libC2D2.so
/system/lib/libc2d2_a3xx.so
/system/lib/libcamera_fast_af.so
/system/lib/libchromatix_imx111_default_video.so
/system/lib/libchromatix_imx111_preview.so
/system/lib/libchromatix_imx111_zsl.so
/system/lib/libchromatix_imx119_default_video.so
/system/lib/libchromatix_imx119_preview.so
/system/lib/libchromatix_mt9e013_default_video.so
/system/lib/libchromatix_mt9e013_preview.so
/system/lib/libchromatix_mt9e013_video_hfr.so
/system/lib/libchromatix_ov5647_default_video.so
/system/lib/libchromatix_ov5647_preview.so
/system/lib/libchromatix_ov5647_video_hfr.so
/system/lib/libchromatix_ov8825_default_video.so
/system/lib/libchromatix_ov8825_preview.so
/system/lib/libchromatix_ov9726_default_video.so
/system/lib/libchromatix_ov9726_preview.so
/system/lib/libchromatix_s5k4e1_default_video.so
/system/lib/libchromatix_s5k4e1_preview.so
/system/lib/libchromatix_vx6953_default_video.so
/system/lib/libchromatix_vx6953_preview.so
/system/lib/libCommandSvc.so
/system/lib/libconfigdb.so
/system/lib/libcsd-client.so
/system/lib/libdiag.so
/system/lib/libdrmdiag.so
/system/lib/libdrmfs.so
/system/lib/libdrmtime.so
/system/lib/libdsi_netctrl.so
/system/lib/libdsprofile.so
/system/lib/libdss.so
/system/lib/libdsucsd.so
/system/lib/libdsutils.so
/system/lib/libDxHdcp.so
/system/lib/libgemini.so
/system/lib/libgeofence.so
/system/lib/libgps.utils.so
/system/lib/libgsl.so
/system/lib/libI420colorconvert.so
/system/lib/libidl.so
/system/lib/libimage-jpeg-dec-omx-comp.so
/system/lib/libimage-jpeg-enc-omx-comp.so
/system/lib/libimage-omx-common.so
/system/lib/libllvm-a3xx.so
/system/lib/libloc_adapter.so
/system/lib/libloc_api_v02.so
/system/lib/libloc_eng.so
/system/lib/libmercury.so
/system/lib/libmm-color-convertor.so
/system/lib/libmmcamera_faceproc.so
/system/lib/libmmcamera_frameproc.so
/system/lib/libmmcamera_hdr_lib.so
/system/lib/libmmcamera_image_stab.so
/system/lib/libmmcamera_statsproc31.so
/system/lib/libmmcamera_wavelet_lib.so
/system/lib/libmmipl.so
/system/lib/libmmjpeg.so
/system/lib/libmmjps.so
/system/lib/libmmmpo.so
/system/lib/libmmmpod.so
/system/lib/libmmstillomx.so
/system/lib/libmorpho_noise_reduction.so
/system/lib/libnetmgr.so
/system/lib/liboemcamera.so
/system/lib/liboemcrypto.so
/system/lib/libqcci_legacy.so
/system/lib/libqdi.so
/system/lib/libqdp.so
/system/lib/libqmi.so
/system/lib/libqmiservices.so
/system/lib/libqmi_cci.so
/system/lib/libqmi_client_qmux.so
/system/lib/libqmi_common_so.so
/system/lib/libqmi_csi.so
/system/lib/libqmi_csvt_srvc.so
/system/lib/libqmi_encdec.so
/system/lib/libQSEEComAPI.so
/system/lib/libril-qc-qmi-1.so
/system/lib/libril-qcril-hook-oem.so
/system/lib/libsc-a3xx.so
/system/lib/libsensor1.so
/system/lib/libsensor_reg.so
/system/lib/libsensor_user_cal.so
/system/lib/libstagefright_hdcp.so
/system/lib/libxml.so
/system/vendor/firmware/a300_pfp.fw
/system/vendor/firmware/a300_pm4.fw
/system/vendor/firmware/bcm2079x_firmware.ncd
/system/vendor/firmware/bcm2079x_pre_firmware.ncd
/system/vendor/firmware/discretix/dxhdcp2.b00
/system/vendor/firmware/discretix/dxhdcp2.b01
/system/vendor/firmware/discretix/dxhdcp2.b02
/system/vendor/firmware/discretix/dxhdcp2.b03
/system/vendor/firmware/discretix/dxhdcp2.mdt
/system/vendor/firmware/keymaster/keymaster.b00
/system/vendor/firmware/keymaster/keymaster.b01
/system/vendor/firmware/keymaster/keymaster.b02
/system/vendor/firmware/keymaster/keymaster.b03
/system/vendor/firmware/keymaster/keymaster.mdt
/system/vendor/lib/libdrmdecrypt.so
