# 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/irsc_util
/system/bin/ks
/system/bin/mm-audio-send-cal
/system/bin/mm-pp-daemon
/system/bin/mm-qcamera-app
/system/bin/mm-qcamera-daemon
/system/bin/mm-qjpeg-enc-test
/system/bin/mm-qomx-ienc-test
/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/etc/DxHDCP.cfg
/system/etc/firmware/tzapps.b00
/system/etc/firmware/tzapps.b01
/system/etc/firmware/tzapps.b02
/system/etc/firmware/tzapps.b03
/system/etc/firmware/tzapps.mdt
/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/vidcfw.elf
/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/camera.flo.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/libaudioparsers.so
/system/lib/libC2D2.so
/system/lib/libc2d2_a3xx.so
/system/lib/libchromatix_ov5693_common.so
/system/lib/libchromatix_ov5693_default_video.so
/system/lib/libchromatix_ov5693_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/libgeofence.so
/system/lib/libgps.utils.so
/system/lib/libgsl.so
/system/lib/libI420colorconvert.so
/system/lib/libidl.so
/system/lib/libllvm-a3xx.so
/system/lib/libloc_adapter.so
/system/lib/libloc_api_v02.so
/system/lib/libloc_eng.so
/system/lib/libmm-abl-oem.so
/system/lib/libmm-abl.so
/system/lib/libmm-color-convertor.so
/system/lib/libmmcamera2_stats_algorithm.so
/system/lib/libmmcamera_image_stab.so
/system/lib/libmmcamera_interface.so
/system/lib/libmmcamera_mi1040.so
/system/lib/libmmcamera_ov5693.so
/system/lib/libmmjpeg_interface.so
/system/lib/libnetmgr.so
/system/lib/liboemcrypto.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/libqomx_core.so
/system/lib/libQSEEComAPI.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-b5_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/dsps.b00
/system/vendor/firmware/dsps.b01
/system/vendor/firmware/dsps.b02
/system/vendor/firmware/dsps.b03
/system/vendor/firmware/dsps.b04
/system/vendor/firmware/dsps.b05
/system/vendor/firmware/dsps.mdt
/system/vendor/firmware/gss.b00
/system/vendor/firmware/gss.b01
/system/vendor/firmware/gss.b02
/system/vendor/firmware/gss.b03
/system/vendor/firmware/gss.b04
/system/vendor/firmware/gss.b05
/system/vendor/firmware/gss.b06
/system/vendor/firmware/gss.b07
/system/vendor/firmware/gss.b08
/system/vendor/firmware/gss.b09
/system/vendor/firmware/gss.b10
/system/vendor/firmware/gss.b11
/system/vendor/firmware/gss.mdt
/system/vendor/firmware/q6.b00
/system/vendor/firmware/q6.b01
/system/vendor/firmware/q6.b03
/system/vendor/firmware/q6.b04
/system/vendor/firmware/q6.b05
/system/vendor/firmware/q6.b06
/system/vendor/firmware/q6.mdt
/system/vendor/firmware/tzapps.b00
/system/vendor/firmware/tzapps.b01
/system/vendor/firmware/tzapps.b02
/system/vendor/firmware/tzapps.b03
/system/vendor/firmware/tzapps.mdt
/system/vendor/firmware/wcnss.b00
/system/vendor/firmware/wcnss.b01
/system/vendor/firmware/wcnss.b02
/system/vendor/firmware/wcnss.b04
/system/vendor/firmware/wcnss.b05
/system/vendor/firmware/wcnss.mdt
/system/vendor/lib/libdrmdecrypt.so
/system/vendor/lib/libgemini.so
/system/vendor/lib/libimage-jpeg-enc-omx-comp.so
/system/vendor/lib/libimage-omx-common.so
/system/vendor/lib/libmmcamera2_c2d_module.so
/system/vendor/lib/libmmcamera2_cpp_module.so
/system/vendor/lib/libmmcamera2_iface_modules.so
/system/vendor/lib/libmmcamera2_imglib_modules.so
/system/vendor/lib/libmmcamera2_isp_modules.so
/system/vendor/lib/libmmcamera2_pproc_modules.so
/system/vendor/lib/libmmcamera2_sensor_modules.so
/system/vendor/lib/libmmcamera2_stats_modules.so
/system/vendor/lib/libmmcamera2_vpe_module.so
/system/vendor/lib/libmmcamera2_wnr_module.so
/system/vendor/lib/libmmcamera_faceproc.so
/system/vendor/lib/libmmcamera_imglib.so
/system/vendor/lib/libmmipl.so
/system/vendor/lib/libmmjpeg.so
/system/vendor/lib/libmmqjpeg_codec.so
/system/vendor/lib/libmmstillomx.so
/system/vendor/lib/liboemcamera.so
/system/vendor/lib/libqomx_jpegenc.so
