[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <3a8f02db-93f3-1414-fea9-007dee55ec54@gmail.com>
Date: Tue, 21 Jul 2020 04:46:45 +0200
From: Alex Bee <knaerzche@...il.com>
To: Andy Yan <andy.yan@...k-chips.com>,
Sandy Huang <hjc@...k-chips.com>,
Heiko Stübner <heiko@...ech.de>
Cc: David Airlie <airlied@...ux.ie>, dri-devel@...ts.freedesktop.org,
linux-kernel@...r.kernel.org, linux-rockchip@...ts.infradead.org,
Daniel Vetter <daniel@...ll.ch>,
linux-arm-kernel@...ts.infradead.org
Subject: Re: [PATCH 2/5] drm: rockchip: add missing registers for RK3188【请注意,邮件由linux-rockchip-bounces+andy.yan=rock-chips.com@...ts.infradead.org代发】
Hi Andy,
Am 21.07.20 um 03:17 schrieb Andy Yan:
> Hi Alex:
>
> On 7/20/20 10:46 PM, Alex Bee wrote:
>> Hi Andy,
>>
>> Am 20.07.20 um 10:22 schrieb Andy Yan:
>>> Hi Alex:
>>>
>>> On 7/19/20 4:03 AM, Alex Bee wrote:
>>>> This patch adds dither_up, dsp_lut_en, data_blank and dsp_data_swap
>>>> registers to enable their respective functionality for RK3188's VOP.
>>>>
>>>> Signed-off-by: Alex Bee <knaerzche@...il.com>
>>>> ---
>>>> drivers/gpu/drm/rockchip/rockchip_vop_reg.c | 4 ++++
>>>> 1 file changed, 4 insertions(+)
>>>>
>>>> diff --git a/drivers/gpu/drm/rockchip/rockchip_vop_reg.c
>>>> b/drivers/gpu/drm/rockchip/rockchip_vop_reg.c
>>>> index b046910129fb..971a6bda7458 100644
>>>> --- a/drivers/gpu/drm/rockchip/rockchip_vop_reg.c
>>>> +++ b/drivers/gpu/drm/rockchip/rockchip_vop_reg.c
>>>> @@ -512,6 +512,10 @@ static const struct vop_common rk3188_common = {
>>>> .dither_down_en = VOP_REG(RK3188_DSP_CTRL0, 0x1, 11),
>>>> .dither_down_mode = VOP_REG(RK3188_DSP_CTRL0, 0x1, 10),
>>>> .dsp_blank = VOP_REG(RK3188_DSP_CTRL1, 0x3, 24),
>>>> + .dither_up = VOP_REG(RK3188_DSP_CTRL0, 0x1, 9),
>>>> + .dsp_lut_en = VOP_REG(RK3188_SYS_CTRL, 0x1, 28),
>>>> + .data_blank = VOP_REG(RK3188_DSP_CTRL1, 0x1, 25),
>>>> + .dsp_data_swap = VOP_REG(RK3188_DSP_CTRL1, 0x1f, 26),
>>>
>>>
>>>
>>> I can't find the definition of dsp_data_swap, or I missed something?
>>>
>> Note that .dsp_data_swap is not defined with that name in TRM (as it
>> is not in RK3288/RK3328), since potentially more the one bit would
>> have to be set for this (currently only RB_SWAP (0x2) is implemented
>> in the VOP driver).
>>
>
> I mean I didn't find the definition of dsp_data_swap in struct
> vop_comm, I even search drm-misc-next tree.
>
Sorry, misunderstanding. You're right: I had something which isn't
upstreamed/merged yet in my tree. I'll remove this reg in V2.
>
>> To be some kind of future proof (if BG_SWAP, RG_SWAP, DELTA_SWAP or
>> DUMMY_SWAP ever get implemented) it should be aligned with what is
>> defined for RK3288/RK3328 now to automatically benefit from that
>> additions. And it would, since RK3288_DSP_CTRL0 BIT12, BIT13, BIT14,
>> BIT15, BIT16 exactly matches with RK3188_DSP_CTRL1 BIT26, BIT27,
>> BIT28, BIT29, BIT30.
>>
>> Current implementation sets BIT13 for RK3288 and with this patch
>> BIT27 for RK3188 to enable RB_SWAP.
>>
>>>
>>>
>>>> };
>>>> static const struct vop_win_data rk3188_vop_win_data[] = {
>>>
>>>
>> Regards,
>>
>> Alex
>>
>>
>>
>
>
Powered by blists - more mailing lists