# system.prop for msm8916
#

# KSM and ZRAM
ro.config.ksm=false
ro.config.zram=false

# Evolution RIL (8xxx)
rild.libpath=/system/lib/libsec-ril.so
rild.libargs=-d /dev/smd0
ril.subscription.types=NV,RUIM
DEVICE_PROVISIONED=1

debug.sf.hw=1
debug.egl.hw=1
debug.composition.type=c2d
persist.hwc.mdpcomp.enable=true
debug.mdpcomp.logs=0
dalvik.vm.heapsize=36m
dev.pm.dyn_samplingrate=1
persist.demo.hdmirotationlock=false

#ro.hdmi.enable=true
#tunnel.decode=true
#tunnel.audiovideo.decode=true
#lpa.decode=false
#lpa.use-stagefright=true
#persist.speaker.prot.enable=false

#
# system props for the cne module
#
persist.cne.feature=0
persist.cne.dpm=0
persist.dpm.feature=0

#system props for the MM modules
media.stagefright.enable-player=true
media.stagefright.enable-http=true
media.stagefright.enable-aac=true
media.stagefright.enable-qcp=true
media.stagefright.enable-fma2dp=true
media.stagefright.enable-scan=true
media.swhevccodectype=0
mmp.enable.3g2=true
media.aac_51_output_enabled=true
#codecs: DivX DivXHD AVI AC3 ASF AAC QCP DTS 3G2 MP2TS
mm.enable.qcom_parser=3183219

#
ro.data.large_tcp_window_size=true
# Default to AwesomePlayer
media.stagefright.use-awesome=true


#
# system prop for opengles version
#
# 196608 is decimal for 0x30000 to report version 3
ro.opengles.version=196608

# System property for cabl
ro.qualcomm.cabl=0

#
# System props for bluetooth
# System prop to turn on hfp client
bluetooth.hfp.client=1

#Simulate sdcard on /data/media
#
persist.fuse_sdcard=true

#
#snapdragon value add features
#
ro.qc.sdk.audio.ssr=false
##fluencetype can be "fluence" or "fluencepro" or "none"
ro.qc.sdk.audio.fluencetype=none
persist.audio.fluence.voicecall=true
persist.audio.fluence.voicerec=false
persist.audio.fluence.speaker=true
#Set for msm8916
tunnel.audio.encode = false
ro.config.low_ram=false
#Buffer size in kbytes for compress offload playback
audio.offload.buffer.size.kb=32
#use VERY_HIGH_QUALITY for audio resampler
#af.resampler.quality=4
#Enable offload audio video playback by default
av.offload.enable=false
#enable voice path for PCM VoIP by default
use.voice.path.for.pcm.voip=true
#
#System property for FM transmitter
#
ro.fm.transmitter=false
#enable dsp gapless mode by default
audio.offload.gapless.enabled=true

#Audio voice concurrency related flags
voice.playback.conc.disabled=true
voice.record.conc.disabled=true
voice.voip.conc.disabled=true

# set lcd density
ro.sf.lcd_density=240

#property to enable user to access Google WFD settings
persist.debug.wfd.enable=1
#propery to enable VDS WFD solution
persist.hwc.enable_vds=1

# Enable time services daemon
persist.timed.enable=true

# Data modules (For evolution RIL model)
ro.use_data_netmgrd=false
persist.data.netmgrd.qos.enable=false
ro.vendor.extension_library=libqti-perfd-client.so
