mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-08 11:50:43 +09:00
media: rockchip: ispp: fix gain and sharp config
Increase gain size. Disable sharp dma output if no using. Change-Id: I0f5bd581bf39b88051b947a34f4ba90cdb789019 Signed-off-by: Cai YiWei <cyw@rock-chips.com>
This commit is contained in:
@@ -253,6 +253,8 @@ static int rkispp_sd_s_power(struct v4l2_subdev *sd, int on)
|
||||
}
|
||||
atomic_set(&ispp_sdev->frm_sync_seq, 0);
|
||||
writel(0xfffffff, ispp_dev->base_addr + RKISPP_CTRL_INT_MSK);
|
||||
writel(SW_SHP_DMA_DIS,
|
||||
ispp_dev->base_addr + RKISPP_SHARP_CORE_CTRL);
|
||||
if (ispp_dev->inp == INP_ISP) {
|
||||
struct v4l2_subdev_format *fmt = &ispp_sdev->in_fmt;
|
||||
|
||||
|
||||
@@ -387,7 +387,7 @@ static int config_tnr(struct rkispp_device *dev)
|
||||
if (fmt & FMT_FBC)
|
||||
pic_size += w * h >> 4;
|
||||
|
||||
gain_size = ALIGN(width, 64) * ALIGN(height, 128) >> 5;
|
||||
gain_size = ALIGN(width, 64) * ALIGN(height, 128) >> 4;
|
||||
kg_size = gain_size * 4;
|
||||
if (fmt & FMT_YUYV)
|
||||
mult = 2;
|
||||
@@ -562,7 +562,7 @@ static int config_nr_shp(struct rkispp_device *dev)
|
||||
if (fmt & FMT_FBC)
|
||||
pic_size += w * h >> 4;
|
||||
|
||||
gain_size = ALIGN(width, 64) * ALIGN(height, 128) >> 5;
|
||||
gain_size = ALIGN(width, 64) * ALIGN(height, 128) >> 4;
|
||||
if (fmt & FMT_YUYV)
|
||||
mult = 2;
|
||||
|
||||
@@ -881,7 +881,8 @@ static void stop_mb(struct rkispp_stream *stream)
|
||||
case ISPP_MODULE_NR:
|
||||
case ISPP_MODULE_SHP:
|
||||
rkispp_clear_bits(base + RKISPP_NR_UVNR_CTRL_PARA, SW_NR_EN);
|
||||
rkispp_clear_bits(base + RKISPP_SHARP_CORE_CTRL, SW_SHP_EN);
|
||||
rkispp_set_bits(base + RKISPP_SHARP_CORE_CTRL,
|
||||
SW_SHP_DMA_DIS | SW_SHP_EN, SW_SHP_DMA_DIS);
|
||||
break;
|
||||
default:
|
||||
rkispp_clear_bits(base + RKISPP_FEC_CORE_CTRL, SW_FEC_EN);
|
||||
@@ -903,8 +904,6 @@ static int is_stopped_mb(struct rkispp_stream *stream)
|
||||
case ISPP_MODULE_SHP:
|
||||
en = SW_SHP_EN;
|
||||
val = readl(base + RKISPP_SHARP_CORE_CTRL);
|
||||
rkispp_set_bits(base + RKISPP_SHARP_CORE_CTRL,
|
||||
0, SW_SHP_DMA_DIS);
|
||||
break;
|
||||
default:
|
||||
en = SW_FEC_EN_SHD;
|
||||
|
||||
Reference in New Issue
Block a user