The AGC may bring non-linear ADC processing, that makes it
difficult for back-end audio algorithms to use NLP, so we
usually turn them off.
In addition, it seems too many controls and easy to confuse,
let's remove them.
Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
Change-Id: If17387b0db055942acf1d7e9a5b8b6b9057f1c78
And clean up the brackets of macro variables.
The DAC_DIG_CON04 is conflict with RK3308BS and RK3308/RK3308B,
let's fix it.
Using large driver strength for HPOUT and LINEOUT for RK3308BS Codec.
keep DAC mclk enabled for RK3308BS codec version.
Since the new process version optimizes the design of the clock,
part, we need to enable DAC mclk during codec detect headphone.
Signed-off-by: Xing Zheng <zhengxing@rock-chips.com>
Change-Id: I0617049c9ed494ba17c1d548413e49355c9bf01f
rk3308_platform_probe() should call device_unregister() in error path.
Otherwise, the memory of dev will free without unregister. Kernel will
panic when reboot.
kobject: '(null)' (ffffffc01e94a830): is not initialized,
yet kobject_get() is being called.
[<ffffff80081e8f6c>] kobject_get+0x30/0x80
[<ffffff800829c110>] get_device+0x14/0x24
[<ffffff800829e044>] device_shutdown+0x84/0x1a8
[<ffffff80080b265c>] kernel_restart_prepare+0x34/0x3c
[<ffffff80080b274c>] kernel_restart+0x14/0x5c
[<ffffff80080b2a9c>] SyS_reboot+0x1a0/0x1bc
[<ffffff8008082f30>] el0_svc_naked+0x24/0x28
Change-Id: I8eb838deb3b540792f63124365bf821f7ee15649
Signed-off-by: Tao Huang <huangtao@rock-chips.com>
This configuration is required for Gen1 l1ss support.
Change-Id: I921d1551dbbb4e85f823ce9ce0abbb96198d2ccf
Signed-off-by: Jon Lin <jon.lin@rock-chips.com>
The application logic is ready to have reference clock removed through
either L1 PM Sub-states or L1 CPM.
Change-Id: I1622416fcff716b2b342746fb3f93f61d4092101
Signed-off-by: Jon Lin <jon.lin@rock-chips.com>
Descripted in drm_gem_object structure description:
* Reference count of this object
*
* Please use drm_gem_object_get() to acquire and drm_gem_object_put_locked()
* or drm_gem_object_put() to release a reference to a GEM
* buffer object.
*/
struct kref refcount;
It's better to release object by drm_gem_object_put.
About the refcount for object of drm device,
rockchip_gem_create_object -> refcount = 1
drm->driver->gem_prime_export -> refcount = 2
This patch will decrease a refcount from export, and decrease another
one in rockchip_drm_direct_show_free_buffer:
drm_gem_dmabuf_release -> refcount = 1
rockchip_drm_direct_show_free_buffer -> refcount = 0
Tested by rockchip_drm_self_test.c.
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
Change-Id: I812770ed832d71121aab5212d62b96815cbe2d68
Decrease the iommu iova alignment to 4 (means 64 KiB), to fix the
fragment in the video stress test.
Signed-off-by: Jianqun Xu <jay.xu@rock-chips.com>
Change-Id: Ifdd9da0110a6ac14ad0d962394ab3e0a0cc5ff65
The "struct device *dev" in sd_resume is for the hard disk, and
the correct device needs to be initialized for pm_stay_awake.
Fixes: da1c2c4a2c ("scsi: sata: re enter sleep is prohibited during wake-up")
Signed-off-by: Yifeng Zhao <yifeng.zhao@rock-chips.com>
Change-Id: Ic6c4a340672605ac64fc0778f6938898dee1b8eb
"struct pt_regs" is big data structure, so pass a "struct pt_regs *"
parameter is a better choice.
Change-Id: I2bef0f2cf4332c61bc6a5a0717de66db221b836d
Signed-off-by: XiaoDong Huang <derrick.huang@rock-chips.com>
"fiq_pt_regs" is a big data structures, so it'll save
lots of stack space if define "fiq_pt_regs" as a global
variable instead of a local variable.
Change-Id: Id447c41009fc4454bc821c194e9d50ec00087754
Signed-off-by: XiaoDong Huang <derrick.huang@rock-chips.com>
The MAX96745 convert DP1.4 and eDP1.4a to single or dual GMSL2 serial.
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
Change-Id: I63951d28b4f8e6be6d1671650cee208ff0760e95
The MAX96745 and MAX96747 convert DP1.4 and
eDP1.4a to single or dual GMSL2 serial. They also send
and receive control channel and peripheral control data,
enabling bidirectional transmission of video and data over
cables in excess of 15 meters in length.
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
Change-Id: I59a338b0ef092bde1d1a444600acd92348cc9443
The MAX96752F deserializers convert a single- or
dual-link GMSL2 serial input to single or dual OLDI.
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
Change-Id: Ic0582fa9ce077e0af79ecd0d63af38b23feb7265
The MAX96752F/MAX96754F deserializers convert a
single- or dual-link GMSL2 serial input to single or dual
OLDI. They also send and receive side-channel and
peripheral control data, enabling full-duplex, single wire,
bidirectional transmission of video and data over 15
meter cables.
Signed-off-by: Wyon Bi <bivvy.bi@rock-chips.com>
Change-Id: Ibac9f881bd832e96a8606b9f6492e80f8d2494c6
The dvbm does not work, so there is no need to poweron.
Signed-off-by: Yandong Lin <yandong.lin@rock-chips.com>
Change-Id: I5405e884ddec28da2796e7ce1a5bb0f96d663f11