- subscribe for dpb list property in combined
mode on output port.
- copy dpb list property payload from fw to
static array.
- using this array, mark read_only list buffers
as non-reference if not part of array. if count
of such buffers is greater than output min count,
send to fw for release.
- once fw returns them, destroy these buffers.
- unmap stale output mappings due to lazy unmap feature.
- unify release internal functions into common function.
Change-Id: Id32f04efb19eecaff453cc4383ee8296a0246263
Signed-off-by: Darshana Patil <darshana@codeaurora.org>
Set metadata delivery/subscribe commands to fw even when
delivery/subcribe metadata list is empty to ensure disabling
of needless metadata.
Change-Id: Ifbc8cfbe8911bf3318c6f85f0f6823243f7c6e67
Signed-off-by: Akshata Sahukar <asahukar@codeaurora.org>
- Account for V4L2_CID_MPEG_MFC51_VIDEO_DECODER_H264_DISPLAY_DELAY
ctrl value to decide HFI_PROP_DECODE_ORDER_OUTPUT property value.
- Set encoder run time properties on raw port
- Some logging changes.
Change-Id: I5eef81b484e81b69031854a3a8665de4be7f98f9
Signed-off-by: Akshata Sahukar <asahukar@codeaurora.org>
Handled below items as part of this change.
- print buffer_name instead of hex value.
- enable dcvs only for realtime sessions.
- enhanced max_input_data_size handling at
msm_vidc_scale_power.
Change-Id: If5ac810f4e020bee54364161596c5547af94161a
Signed-off-by: Govindaraj Rajagopal <grajagop@codeaurora.org>
Add support to deliver HFI_PROP_BUFFER_TAG via FTB metadata buffer
to receive HFI_PROP_DPB_TAG_LIST from fw via FBD metadata buffer.
Change-Id: Id9eeee26135379975f55923505d9c91905fa0b9e
Signed-off-by: Akshata Sahukar <asahukar@codeaurora.org>
Following changes are added with this:
1. Handle and adjust session priority.
2. Session addmission based on priority.
3. Power (clock and bus) scaling based on priority.
4. Handle s_parm influence on priority.
Change-Id: I12dec5fb03d733f07b0b0a24b4d74d1ccd4bf791
Signed-off-by: Vikash Garodia <vgarodia@codeaurora.org>
remove release of dpb buffers as part of start
of output port.
handle watchdog interrupt incase of page fault
Change-Id: Idaccbcaa92d4835dea2da3d8b6f645114baa338a
Signed-off-by: Darshana Patil <darshana@codeaurora.org>
Initialize subscribe params for colorspace using OUTPUT
port params and use right mapper function
Change-Id: Ie6be50c1de20e351bad0fc4b015bcc4d72d1711b
Signed-off-by: Akshata Sahukar <asahukar@codeaurora.org>
read input width and height and update
output resolution based on client set
color format.
Change-Id: I5605eb875ca679c671d083ca691b046769279ce5
Signed-off-by: Darshana Patil <darshana@codeaurora.org>
subscribe for picture type property on output
port for decoder.
Change-Id: I4354f47777ca51a257f8ab85e9cb85faddad0099
Signed-off-by: Darshana Patil <darshana@codeaurora.org>
- add DPB tag list capability in database
- subscribe in metadata mode for the dpb tag list
property if enabled
Change-Id: Id4b9b7392b7b26cccf0860d578b8a0cb8d798d04
Signed-off-by: Darshana Patil <darshana@codeaurora.org>
Add support to set default fps to video fw.
Change-Id: I5074b5379c8bca273e098a3375f2c949b0656ae8
Signed-off-by: Akshata Sahukar <asahukar@codeaurora.org>
Initialize subscribe parameters before input port settings
change event from firmware to avoid uninitialized subscribe
params usage in video driver.
Change-Id: I39a1e6646a845836a406193ace7a5fb71edee192
Depends-On: I07c7c8b4faaccc896249b2da84148ec05c2047da
Signed-off-by: Maheshwar Ajja <majja@codeaurora.org>
As per HFI_PROP_CODED_FRAMES details, 0x0 is field interlace,
0x1 is progressive and 0x2 is adaptive frame field bitstream.
Treat 0x1 as progressive and both 0x0 and 0x2 as interlace in
driver.
Change-Id: I07c7c8b4faaccc896249b2da84148ec05c2047da
Signed-off-by: Maheshwar Ajja <majja@codeaurora.org>
v4l2 enums for color space info are not one to one
mappings with hevc spec values. Hence, introduce and
use corresponding mapper functions.
Change-Id: I37a79a9b34b66184ece9a284ae98c9fa4efd248f
Signed-off-by: Akshata Sahukar <asahukar@codeaurora.org>
Instead of formulating session_id, codec_type, domain at
each log print, used pre-formatted char array to print
the vidc logs.
Change-Id: If7a93ecb25a7b1b98ebca6f39e3990079c00b5dd
Signed-off-by: Govindaraj Rajagopal <grajagop@codeaurora.org>
- introduce STRIDE_BYTES and STRIDE_PIX to
calculate size is bytes and pxls respectively.
- DEPRECATE VENUS_BUFFER_SIZE and introduce
VIDEO_RAW_BUFFER_SIZE. All buffer sizes are
calculated by using STRIDE_BYTES.
- For s_fmt, use STRIDE_PIX to calculate size.
- For v4l2 bytesperline, use STRIDE_IN_BYTES to
calculates size in bytes
Change-Id: I3db4d843d1834b25c6160ebc318572ac67e22806
Signed-off-by: Darshana Patil <darshana@codeaurora.org>
set default header property once per session for decoder.
Change-Id: I5ca9088b8bed09907f2c9f829acec3db23e65a7c
Signed-off-by: Darshana Patil <darshana@codeaurora.org>
modify decoder subscribe psc list according
to supported codecs.
Change-Id: Id54ea26bac07491b80877ef88ab7888c08750335
Signed-off-by: Darshana Patil <darshana@codeaurora.org>
- Set enc colorspace info to firmware via
HFI_PROP_SIGNAL_COLOR_INFO property.
- Fix dec colorspace payload packaging.
Change-Id: Ib7ef2395a4f98f6497bbb200770a8612410eb8f5
Signed-off-by: Akshata Sahukar <asahukar@codeaurora.org>
HFI_CMD_RESUME should be sent for following cases:
Decoder(V4L2_DEC_CMD_START)
input port: ipsc & drain
output port: opsc
Encoder(V4L2_ENC_CMD_START)
input port: drain
output port: no usage
Change-Id: I77b29c2da542a3d91f7ba96fb36291303d6af3f9
Signed-off-by: Govindaraj Rajagopal <grajagop@codeaurora.org>
-queue persist buffer as session buffer at the start
of the session for decoder
-fix hfi buffer packet parsing when payload is none.
Change-Id: I5da2472d00bf85dd328bbdfcbd35074a46522d25
Signed-off-by: Darshana Patil <darshana@codeaurora.org>
For decoder FW should not assume any default sequence header.
Decodering should start only after FW receives first sequence
header. Also, decoding starts only after discovery of random
access point frame. RAP frame means IDR for AVC, IDR/CRA/BLA
for HEVC, I frame for VP9 and MPEG2.
Change-Id: Ie12b8140f6b63e57c52a9c96cb1250f4958a42c6
Signed-off-by: Darshana Patil <darshana@codeaurora.org>
Add support to set HFI_PROP_LINEAR_STRIDE_SCANLINE
property to video fw.
Change-Id: I0ce3549a472388a5d2471bf4c8978a5a5f524a34
Signed-off-by: Akshata Sahukar <asahukar@codeaurora.org>
- do not ignore last flag buffer in last flag not allowed
case also
- ignore stop command if input port is not streaming
instead of returning -EBUSY error.
- defer input port settings change in few states instead of
ignoring it.
Change-Id: I705f0c8ae2da899a5d262f6246aa65de5591ac26
Signed-off-by: Maheshwar Ajja <majja@codeaurora.org>
fixes for nv12 format and dpb buffers. modified
PIX_FMTS and corresponding driver color format
structure, therby fixing enum_fmts.
Change-Id: I955b76dd4938e96fe259311e107a0cdca39425bc
Signed-off-by: Darshana Patil <darshana@codeaurora.org>
- destroy enc internal buffers when firmware returns these
buffers after its usage.
- fix some incorrect log masks that result in false error
logs.
Change-Id: I4707e915b725769bbbaa0a2c4c4e0d9cd10805a4
Signed-off-by: Akshata Sahukar <asahukar@codeaurora.org>
- Set correct metadata buffer sizes/counts in initialization.
- Update metadata buffer sizes/count when a metadata control is set.
Change-Id: Ib695b267efac26caa5858cdcdec1868d85182b90
Signed-off-by: Mihir Ganu <mganu@codeaurora.org>
Add below support
- kill session in case of errors
- core deinit in case of timeout errors
- flush buffers in streamoff
- decide supported colorformats based on
bitdepth and interlace info
- print level based logs
Change-Id: I45b9b0eae4220a818de23308da8802a9e12ae255
Signed-off-by: Maheshwar Ajja <majja@quicinc.com>
move msm_midia_info from uapi to core video
driver folder.
Change-Id: Ibe7eb898fd40958577a8b1afa46c46ea3c6a2ddf
Signed-off-by: Darshana Patil <darshana@codeaurora.org>
Avoid sending subscribe or delivery comannds to firmware
when no metadata is enabled by client.
Change-Id: I379aa018b676ebc9b7e327757213371dbf089d53
Signed-off-by: Mihir Ganu <mganu@codeaurora.org>