# 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-audio-send-cal
/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/hw/sensors.msm8960.so
/system/lib/libacdbloader.so
/system/lib/libAKM.so
/system/lib/libaudcal.so
/system/lib/libaudioalsa.so
/system/lib/libaudioparsers.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/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_api_v02.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/libOmxAacDec.so
/system/lib/libOmxWmaDec.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/lib/lib_dlb_msd.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
