This adds bi-directional (host->device, device->host)
volume/mute support to the f_uac1 driver by adding
Feature Units and interrupt endpoint.
Currently only master channel is supported.
Volume and mute are configurable through configfs,
by default volume has -100..0 dB range with 1 dB step.
Similar to existing flexible endpoints configuration,
Feature Unit won't be added to the topology if both
mute and volume are not enabled, also interrupt endpoint
isn't added to the device if no feature unit is present
Change-Id: I9454a92291d5055286db4ef73a0038e30420fd24
Signed-off-by: Ruslan Bilovol <ruslan.bilovol@gmail.com>
Signed-off-by: Pavel Hofman <pavel.hofman@ivitera.com>
Link: https://lore.kernel.org/r/20210712125529.76070-5-pavel.hofman@ivitera.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: William Wu <william.wu@rock-chips.com>
(cherry picked from commit 0356e6283c)
This adds bi-directional (host->device, device->host)
volume/mute support to the f_uac2 driver by adding
Feature Units and interrupt endpoint.
Currently only master channel is supported.
Volume and mute are configurable through configfs,
by default volume has -100..0 dB range with 1 dB step.
Similar to existing flexible endpoints configuration,
Feature Unit won't be added to the topology if both
mute and volume are not enabled, also interrupt endpoint
isn't added to the device if no feature unit is present
Change-Id: I6666075ac963745c450fb5eeb81ff058572fad66
Signed-off-by: Ruslan Bilovol <ruslan.bilovol@gmail.com>
Signed-off-by: Pavel Hofman <pavel.hofman@ivitera.com>
Link: https://lore.kernel.org/r/20210712125529.76070-4-pavel.hofman@ivitera.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: William Wu <william.wu@rock-chips.com>
(cherry picked from commit eaf6cbe099)
USB Audio Class 1/2 have ability to change device's
volume and mute by USB Host through class-specific control
requests. Device also can notify Host about volume/mute
change on its side through optional interrupt endpoint.
This patch adds Volume and Mute ALSA controls which can be
used by user to send and receive notifications to/from
the USB Host about Volume and Mute change.
These params come from f_uac* so volume and mute controls
will be created only if the function support and enable
each explicitly
Change-Id: I5ac616d8b37b31a6be7c3114e407c17cd4b87369
Signed-off-by: Ruslan Bilovol <ruslan.bilovol@gmail.com>
Signed-off-by: Pavel Hofman <pavel.hofman@ivitera.com>
Link: https://lore.kernel.org/r/20210712125529.76070-3-pavel.hofman@ivitera.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: William Wu <william.wu@rock-chips.com>
(cherry picked from commit 02de698ca8)
User can configure f_uac1 function via p_chmask/c_chmask
whether uac1 shall support playback and/or capture,
but it has only effect on the created ALSA device,
but not on the USB descriptor.
This patch adds playback/capture descriptors
dependent on that parameter. It is similar to
the same conversion done earlier for f_uac2
Change-Id: Ie25ef738a2dbc4a781a874bd7f1f015afda33b1b
Signed-off-by: Ruslan Bilovol <ruslan.bilovol@gmail.com>
Link: https://lore.kernel.org/r/1614599375-8803-6-git-send-email-ruslan.bilovol@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: William Wu <william.wu@rock-chips.com>
(cherry picked from commit 254cb1e0d7)
Because partition 'envparam' has been removed, so, fix it.
OTOH, uboot will also override this if 'sys_bootargs' specified
in env partition.
e.g. env_emmc
blkdevparts=mmcblk0:32K(env),512K@32K(idblock),4M(uboot),32M(boot),2G(rootfs),1G(oem),2G(userdata),-(media)
sys_bootargs=root=/dev/mmcblk0p5 rootfstype=ext4
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
Change-Id: I7917dee2e642cc18c926e99eae623083453c4693
Enable hdmirx_ctrler and reserve cma memory for hdmi-in application
Signed-off-by: Addy Ke <addy.ke@rock-chips.com>
Change-Id: Ie3f3deeeb24f549c82649029ed683a2aa6956068
The hdmirx allocates memory through videobuf2 and call the
vb2_dma_contig_ops, but the hdmirx not select the VIDEOBUF2_DMA_CONTIG
itself, but the ISP will select it instead.
When a patch for ISP may not select VIDEOBUF2_DMA_CONTIG, the hdmirx
will fail to compile since not defined videobuf2_dma_contig_ops.
So select VIDEOBUF2_DMA_CONTIG by hdmirx indeed.
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
Change-Id: Ibcf45da96053cb280e208b160ba24b2c1614a7b6
Currently videobuf2 supports videobuf2-dma-sg, videobuf2-dma-contig and
videobuf2-vmalloc.
- vb2_dma_sg_memops
created by videobuf2-dma-sg driver,
allocates memory through 'alloc_pages' and manager them with scatter
gather list (sgt).
- vb2_dma_contig_memops
created by videobuf2-dma-contig driver,
allocates memory through dma_alloc_attrs, may result in many kinds of
memory, including 'cma_alloc'.
- vb2_vmalloc_memops
created by videobuf2-vmalloc driver,
allocates memory through vmalloc_user.
In some case device requires allocate memory through cma_alloc and manager
them by sgt, the new driver is named videobuf2-cma-sg.
- vb2_cma_sg_memops
created by videobuf2-cma-sg driver,
allocates memory through 'cma_alloc' and manager them with sgt.
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
Change-Id: Ic974dd41aa3dcf9588311ad8ed6c166f3064d6fd
Signed-off-by: Cai YiWei <cyw@rock-chips.com>
Some registers is read only, write these registers will cause crash.
Signed-off-by: Chen Shunqing <csq@rock-chips.com>
Change-Id: If4bde6f21d525c2fc6fe3c56d54fce58d4900762
If FRAME_SEND_CLR_P was set, cec packets may be sent incomplete.
Signed-off-by: Algea Cao <algea.cao@rock-chips.com>
Change-Id: Ic67518ea0c794fe6f997c87e45dedbfd6fb1fde3
1. Add rkvenc2 pagefault handler to dump memory region used in task.
2. Move rkvenc2_patch_dchs before write hardware register.
3. Add more dchs status log with DEBUG_CORE flag.
Signed-off-by: Herman Chen <herman.chen@rock-chips.com>
Change-Id: I3fd5e14a3a5dd347373e3bc4e21d41db8c05fd21
CONFIG_ROCKCHIP_PERFORMANCE_LEVEL=0 for low performance, low power consumption
CONFIG_ROCKCHIP_PERFORMANCE_LEVEL=1 for normal performance
CONFIG_ROCKCHIP_PERFORMANCE_LEVEL=2 for high performance, high power consumption
Change-Id: I7a88f1a2e43513f647a860b427d8344e34165fa6
Signed-off-by: Liang Chen <cl@rock-chips.com>
Asynchronous mode is disabled when CONFIG_SYNC_FILE is disabled.
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com>
Change-Id: I91da6cdb0221d6c99f61e41e34d0770f049d1d57
This reverts commit e5cb1f01cd.
This function is not stable.
u-boot should also revert this commit:
0b728e80d451 ("drm/rockchip: vop2: disabled aclk of video port when unused")
Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
Change-Id: I8f3b1180c29a670433a12993f18b33716bef288f