23 Feb, 2021

4 commits


19 Feb, 2021

2 commits


07 Feb, 2021

1 commit

  • - M865SW-664: VSI V4L2 Engineer release package 20210205
    M865SW-511: [VPU/V4L2] decoder: add extr v4l2 event to report 'PIC_CONSUMED' buffer
    M865SW-554: [VPU/V4L2] decoder: decoder return wrong timestamp because of wrong consumed length
    M865SW-595: [VPU/V4L2] report hdr10 metadata to userspace
    M865SW-608: [VPU/V4L2] decoder: enumerate CAPTURE formats according to the currently established coded format
    M865SW-648: [VPU/V4L2] encoder: streamoff failed in VSI_STATUS_INIT state
    M865SW-654: [VPU/V4L2] Extend maximum h265 level to 5_2
    M865SW-655: [VPU/V4l2] Refine assert reference for Android build
    M865SW-659: [VPU/V4L2] Android meet dead waiting in open video device if rootfs does exists vsidaemon
    M865SW-523: [VPU/V4L2] decoder: correctly handle stream file that contained codec data only
    M865SW-572: [VPU/V4L2] decoder/encoder: one frame stream can't receive EOS
    M865SW-644: [VPU/V4L2] decoder: can't recover to capture on state if stop cmd comes earlier than capture on cmd

    Signed-off-by: Zhou Peng
    Change-Id: I3de0c8a409e2cd9f7334369442c8d037da2471b2

    Zhou Peng
     

05 Feb, 2021

1 commit


03 Feb, 2021

1 commit


01 Feb, 2021

5 commits

  • - VSI v1.4.1 20210129 formal release
    Change List (compare with v1.4):
    Regenerating code to make modules' boundary clearer.
    Adjust license declaration to meet NXP requirement. Passed NPX's license check.
    Remove unused code from project or release.
    Clean up code style to get conformant to kernel spec(driver) or google (daemon).
    Better support of AVS and RV format in unit test.
    Better support of 10-bit decoding.
    Save bandwidth by reducing data transfer number.
    Add extra event for communication between driver and application.
    Resolve some potential sync problem.
    Better support of crop feature in decoding.
    Resolve several CTS cases.
    Re-organize imx-vpu.h in conformance to standard kernel driver API's framework.
    JIRA ticket 503, 523, 528, 546, 554, 557, 589, 597, 608, 626, 627, 628, 633, 640 are resolved in this release

    Signed-off-by: Zhou Peng
    Change-Id: I4e2779b8e878f633f4e6f002e05d927cf750ccec

    Zhou Peng
     
  • add vpu_v4l2 device node for 8mm/8mq/8mp

    Signed-off-by: Zhou Peng
    Change-Id: If41af5aafa79764a3d208d6888f4b2a0eca7361b

    Zhou Peng
     
  • Define variables for daemon and logpath in android

    Signed-off-by: xiahong.bao
    Reviewed-by: Zhou Peng
    Change-Id: Ide5102a03ea394f0d6c2f2fcd888770f10c55dbe

    Zhou Peng
     
  • Add vpu v4l2 driver 'drivers/mxc/hantro_v4l2/'
    Source are based on VSI 20210121 release

    Signed-off-by: Zhou Peng
    Change-Id: Ic879d0a19c75336349803c2e7115e64ce93b71bf

    Zhou Peng
     
  • Change-Id: Ief0d6fac10385c5f7d99ab7a9ac3932a7a637913

    zhang sanshan
     

30 Jan, 2021

4 commits

  • Add a new member jpeg_parse_error in mxc_jpeg_src_buf, to indicate
    an error while parsing the input jpeg stream.
    Do not run the decoder when the source buffer is marked with
    jpeg_parse_error, instead mark both the source and destination
    buffer with VB2_BUF_STATE_ERROR. This will prevent an application
    getting stuck waiting to dequeue the destination buffer.

    Signed-off-by: Mirela Rabulea

    Mirela Rabulea
     
  • End of buffer was not properly detected in case of an invalid
    buffer stream, such as a stream of null bytes, for example.
    This was leading to a kernel oups.
    Let get_byte return type be int, so it can return an error for
    reaching end of stream.

    While at it, replace 0 with NULL, for null pointer initialization.

    Fixes: 36649dec0eb7 ("mxc-jpeg: Fix result independent of operands")
    Signed-off-by: Mirela Rabulea

    Mirela Rabulea
     
  • Clocks are always on when DSP PD is on. Use dummy clocks
    for minimal code impact for now.

    This is similar with the approach on i.MX8QM.

    Signed-off-by: Daniel Baluta

    Daniel Baluta
     
  • This is similar with the refactor for i.MX8MP added in commit
    ba2d283f5d9 ("LF-3026-2 ASoC: SOF: imx8m: Remove internal
    priv->suspended variable").

    Because SOF state machine assumes that even if the DSP wasn't previously
    active at a System resume, will re-load the firmware we need to make sure
    that all needed resources are active.

    Kernel core will take care of enabling the PD, we need to make sure that
    we request the MU channels.

    Signed-off-by: Daniel Baluta

    Daniel Baluta
     

29 Jan, 2021

11 commits

  • Skip registering the root slice of gate ops, if M4 is enabled.The gate in
    the root slice of the clock related to GPU, VPU, MEDIA and ML etc is always
    open by default.This causes VDD_SOC to increase by 25mW when M7 is in STOP MODE.

    This patch only makes "audio_ahb", "i2c3", "sai3", "uart4", "gic",
    "gpt1" and "pwm4" related to LPA clock skips registering the root slice
    of gate ops, if M4 is enabled.After this change, VDD_SOC increases by 5mW
    when M7 is in STOP MODE.This change saves 20mw.

    Change-Id: I7779c8e9ed6864db5f218c287341ab57a90b6a7b
    Signed-off-by: zhipeng.wang

    zhipeng.wang
     
  • Enable LPA in powersave mode.
    This is achieved by adding imx8mp-evk-powersave-rpmsg.dts

    Change-Id: I70213808f7a509e25c778c2b831f7fb95941b667
    Signed-off-by: zhipeng.wang

    zhipeng.wang
     
  • remove HDMI module on imx8mp.
    it will save 10mw for vdd_soc

    Change-Id: I3b6222d0dac4f77f52fb45213c5dc28498f6616f

    zhipeng.wang
     
  • Disable ldb, it will save 20mw on imx8mp board.

    the power domain mediamix will on after lcd off, because ldb@32ec005c
    is not support runtime pm. Linux bsp will send one formal patch to enable
    lvds run time pm, before that I disable ldb.

    cat sys/kernel/debug/pm_genpd/pm_genpd_summary
    mediamix on ispdwp, mipi_phy1,mipi_phy2
    /devices/...../32c00000.bus/32c00000.bus:phy@32ec0128 suspended
    /devices/...../32c00000.bus/32c00000.bus:ldb@32ec005c unsupported
    /devices/...../32c00000.bus/32e80000.lcd-controller suspended

    power domain mediamix will been off after apply this patch when lcd off
    cat sys/kernel/debug/pm_genpd/pm_genpd_summary
    mediamix off-0 ispdwp, mipi_phy1,mipi_phy2
    /devices/.../32c00000.bus/32c00000.bus:phy@32ec0128 suspended
    /devices/.../32c00000.bus/32c00000.bus:ldb@32ec005c suspended
    /devices/.../32c00000.bus/32e80000.lcd-controller suspended
    /devices/.../32c00000.bus/32e90000.lcd-controller suspended

    Change-Id: I9b2c3a7f544707e3380ece64d30b987d42ec94c1
    Signed-off-by: zhipeng.wang

    zhipeng.wang
     
  • Under normal circumstances, use BT,
    the system will request high. In order to test the
    MP3 to BT in the case of low audio bus, remove it.

    Change-Id: I00fd9986e559ce39a8d0af18540ee55e60357a98
    Signed-off-by: zhipeng.wang

    zhipeng.wang
     
  • disable fec on imx8mp board.

    Change-Id: I70ebc6d47895059b4abef8fb04c1a56e3cfd6dd7
    Signed-off-by: zhipeng.wang

    zhipeng.wang
     
  • disable system regulator to high bus freq for emmc.
    system will change to high bus freq when open lcd
    through imx_lcdifv3_runtime_resume.

    Change-Id: Iaa65e56c5efdd7cb236a21f41d70834070065293
    Signed-off-by: zhang sanshan

    zhang sanshan
     
  • enable runtime setting gic clk(500M → 100M)

    Change-Id: I79e07ffcf645ee7f26ec1fc701d44f3e7502cb62
    Signed-off-by: zhipeng.wang

    zhipeng.wang
     
  • Under normal circumstances, the ddr frequencies of audio_bus_mode and
    low_bus_mode are both 100mts. Now in order to meet Sony’s requirements,
    both audio_bus_mode and low_bus_mode are changed to 400mts.

    Change-Id: I68f878a52069136f4b8ff84b06a55b8ea1eae99d

    zhang sanshan
     
  • For normal case, userspace should call streamon/streamoff balance, but
    for some special case, the process will be killed or terminated and the
    streamoff ioctl will be ignored. So driver need to handle the case.

    Signed-off-by: Guoniu.zhou
    Reviewed-by: Robby Cai

    Guoniu.zhou
     
  • For some tough multi channels test, the default priority of channel0 may
    not be scheduled in 500us so that channel context can't be loaded as the
    below warning, hence sdma channel transfer will be failed. So raise up
    channel0 to the highest one since context load is important to all
    channels. Besides, enlarge 500us to 5ms for safe since many highest channel
    also may run at the same time like asrc/easrc tough test(8 channel run).

    "imx-sdma 30e10000.dma-controller: Timeout waiting for CH0 ready"

    Signed-off-by: Robin Gong
    Reviewed-by: Peng Zhang

    Robin Gong
     

28 Jan, 2021

11 commits

  • …t to a hotspot and run MM automation test, 4/4

    it meet rcu issue within 2 hours when do Apollo stress test(fetch mm streams and play/pause/accelerate play/seek/.. streams)

    below is the condition when meet issue:
    1. thread A enter the logic which is protected by RCU lock.
    2. thread A is schedule out.
    3. thread B(it means worker quene xf_proxy_process here) or irq callback funtion call MU_SendMessage
    4. MU_SendMessage hang in "while" loop
    5. thread A can't been schedule in CONFIG_RCU_CPU_STALL_TIMEOUT seconds(the nice of Thread A is not high than thread B). it cause rcu issue.

    This patch add 50ms for while logic so that it will not hang in MU_SendMessage.

    -------- beginning of crash
    04-27 00:36:32.408 F/libc ( 353): crash_dump helper failed to exec
    [ 1186.326364] init: Untracked pid 6333 received signal 14
    04-27 00:36:37.133 F/libc ( 1389): crash_dump helper failed to exec
    [ 1188.676005] rcu: INFO: rcu_preempt self-detected stall on CPU
    [ 1188.681753] rcu: 1-....: (99605 ticks this GP) idle=c76/1/0x4000000000000002 softirq=35006/35006 fqs=49746
    [ 1188.691575] (t=99768 jiffies g=119805 q=26095)
    [ 1188.696103] Task dump for CPU 1:
    [ 1188.699325] kworker/1:0 R running task 0 3467 2 0x0000002a
    [ 1188.706381] Workqueue: events xf_proxy_process
    [ 1188.710817] Call trace:
    [ 1188.713262] dump_backtrace+0x0/0x134
    [ 1188.716917] show_stack+0x14/0x1c
    [ 1188.720227] sched_show_task+0xf8/0x104
    [ 1188.724057] dump_cpu_task+0x40/0x4c
    [ 1188.727629] rcu_dump_cpu_stacks+0xa0/0xf4
    [ 1188.731721] rcu_sched_clock_irq+0x53c/0x98c
    [ 1188.735988] update_process_times+0x6c/0x94
    [ 1188.740174] tick_sched_timer+0x90/0xf8
    [ 1188.744004] __hrtimer_run_queues+0x118/0x1bc
    [ 1188.748356] hrtimer_interrupt+0xf4/0x338
    [ 1188.752362] arch_timer_handler_phys+0x34/0x40

    Change-Id: I9d49f0d1f9675129511a1bfc74b2369d99f2d4b9
    Signed-off-by: zhang sanshan <pete.zhang@nxp.com>

    zhang sanshan
     
  • add isi and ov5640 dts setting into imx8qm-mek-hdmi.dts.
    imx8qm-mek-hdmi.dts is included by md dts.
    camera is also is needed by hdmi dts.

    Change-Id: I51d31bc21a1d1b8af90a0cf0c5b51137773d3c12
    Signed-off-by: zhang sanshan

    zhang sanshan
     
  • if clk is build as module, reset-dispmix is set as Y by default.
    reset-dispmix will fail when probe, because it is depended on clk which is still not ready.
    display driver will failed if reset-dispmix failed.

    Change-Id: Ib86f71256dcf41924e063e73f94eac4494e41e89
    Signed-off-by: zhang sanshan

    zhang sanshan
     
  • below is the scene when meet issue running module CtsCameraTestCases.
    1. It will operate list(like list_del) in cap_vb2_stop_streaming.
    2. Althrough the list is protected by spin_lock_irqsave step 1 which disable interrupt.
    It will also operate list in mxc_isi_cap_frame_write_done, it's in context of interrupt(mxc_isi_irq_handler)
    this interrupt is from different cpu compared with step1.

    this patch use spin_lock_irqsave/spin_unlock_irqrestore in interrupt context to protect the shared
    data (out_pending/out_discard/out_pending).

    Change-Id: I19bab22f9c7c91d791bc5c983ecc8cc6afdeaddc
    Signed-off-by: zhang sanshan

    zhang sanshan
     
  • mx6s_capture use vb2_dma_contig_memops as default me_ops.
    select VIDEOBUF2_DMA_CONTIG by default.

    VIDEOBUF2_DMA_CONTIG have no hardware involved, and mx6s_capture.c need
    compile as module according gki requirement. so need set VIDEOBUF2_DMA_CONTIG
    as y in defconfig, it require add menu item string here for VIDEOBUF2_DMA_CONTIG

    Change-Id: Ie91093c52af199146b8aae29ea13fa7558e24649
    Signed-off-by: zhang sanshan

    zhang sanshan
     
  • This reverts commit 1dee40a806ab5764d2d5b250525a278b53b51b82.

    Change-Id: I7bc925ca02fd64b4f79b4d25844374b4d918432b

    zhang sanshan
     
  • The latest batch of RM67191 panels have an issue that the panel display
    will get blurred and have no response to later display actions when read
    data from panel through DSI interface.

    And decrease the pixel clock rate to 121MHz which means decrease the
    panel's frame rate from 60.02Hz to 55.02Hz can solve this issue, so
    do this change to make RM67191 display more stable.

    Signed-off-by: Fancy Fang
    Reviewed-by: Robby Cai

    Fancy Fang
     
  • According to the .transfer function definition in mipi_dsi_host_ops,
    on success it shall return the number of bytes transmitted for write
    packets or the number of bytes received for read packets. So correct
    the return value in sec_mipi_dsim_host_transfer() implementation.

    Signed-off-by: Fancy Fang
    Reviewed-by: Robby Cai

    Fancy Fang
     
  • Build nxp mxmwifi driver out of kernel tree on L5.10

    Revert "MA-18497 Add initial nxp mxmwifidriver on L5.10"
    This reverts commit b5cad372dfbd3f3f72656ba57bb71ac1f4b837d5.

    Change-Id: I9c7cfe2c8ffbe74defc26570a9222170a76a61bc
    Signed-off-by: yang.tian

    yang.tian
     
  • Build nxp mxmwifi driver out of kernel tree on L5.10

    Revert "MA-18230-2 Enable nxp wifi 88w8997 with mxmdriver"
    This reverts commit eb2ca694eb279fa32acf8368120b34b385ba469b.

    Change-Id: I73da9fc2396a4a16cf7a91de9b2ac2c9f641fe0d
    Signed-off-by: yang.tian

    yang.tian
     
  • Fix a Coverity issue in fm: extra argument to printf format specifier for dma_max_watchdog

    Signed-off-by: Florinel Iordache

    Florinel Iordache