All of lore.kernel.org
 help / color / mirror / Atom feed
From: YoungJun Cho <yj44.cho@samsung.com>
To: Sachin Kamat <sachin.kamat@linaro.org>
Cc: Mark Rutland <mark.rutland@arm.com>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
	linux-samsung-soc <linux-samsung-soc@vger.kernel.org>,
	Pawel Moll <pawel.moll@arm.com>,
	Ian Campbell <ijc+devicetree@hellion.org.uk>,
	Seung-Woo Kim <sw0312.kim@samsung.com>,
	"dri-devel@lists.freedesktop.org"
	<dri-devel@lists.freedesktop.org>,
	Andrzej Hajda <a.hajda@samsung.com>,
	Kyungmin Park <kyungmin.park@samsung.com>,
	"robh+dt@kernel.org" <robh+dt@kernel.org>,
	Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
	Kumar Gala <galak@codeaurora.org>,
	Kukjin Kim <kgene.kim@samsung.com>
Subject: Re: [RFC v3 PATCH v2 10/16] drm/exynos: dsi: add driver data to support Exynos5420
Date: Wed, 30 Apr 2014 09:36:51 +0900	[thread overview]
Message-ID: <536045A3.5020604@samsung.com> (raw)
In-Reply-To: <CAK9yfHwY85FuMvTQo-HUKocyXkjjK9=5-oXVd9CL8hS7B5++=A@mail.gmail.com>

Hi Sachin,

Thank you for comment.

I'll fix.

Thank you.
Best regards YJ

On 04/30/2014 12:26 AM, Sachin Kamat wrote:
> On 27 April 2014 07:20, YoungJun Cho <yj44.cho@samsung.com> wrote:
>> The offset of register DSIM_PLLTMR_REG in Exynos5420 is different
>> from the one in Exynos4 SoC.
>>
>> In case of Exynos5420 SoC, there is no frequency band bit in DSIM_PLLCTRL_REG,
>> and it uses DSIM_PHYCTRL_REG and DSIM_PHYTIMING*_REG instead.
>> So this patch adds driver data to distinguish it.
>>
>> Changelog v2:
>> - Moves exynos_dsi_enable_clocks() after exynos_dsi_reset()
>>    (commented by Andrzej Hajda)
>> - Splits D-PHY control setting routines from PLL setting one
>>    (commented by Andrzej Hajda)
>>
>> Signed-off-by: YoungJun Cho <yj44.cho@samsung.com>
>> Acked-by: Inki Dae <inki.dae@samsung.com>
>> Acked-by: Kyungmin Park <kyungmin.park@samsung.com>
>> ---
>>   drivers/gpu/drm/exynos/exynos_drm_dsi.c |  154 ++++++++++++++++++++++++++-----
>>   1 file changed, 132 insertions(+), 22 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/exynos/exynos_drm_dsi.c b/drivers/gpu/drm/exynos/exynos_drm_dsi.c
>> index 4a918ec..c18dba3 100644
>> --- a/drivers/gpu/drm/exynos/exynos_drm_dsi.c
>> +++ b/drivers/gpu/drm/exynos/exynos_drm_dsi.c
>> @@ -17,6 +17,7 @@
>>
>>   #include <linux/clk.h>
>>   #include <linux/irq.h>
>> +#include <linux/of_device.h>
>>   #include <linux/phy/phy.h>
>>   #include <linux/regulator/consumer.h>
>>
>> @@ -54,9 +55,12 @@
>>
>>   /* FIFO memory AC characteristic register */
>>   #define DSIM_PLLCTRL_REG       0x4c    /* PLL control register */
>> -#define DSIM_PLLTMR_REG                0x50    /* PLL timer register */
>>   #define DSIM_PHYACCHR_REG      0x54    /* D-PHY AC characteristic register */
>>   #define DSIM_PHYACCHR1_REG     0x58    /* D-PHY AC characteristic register1 */
>> +#define DSIM_PHYCTRL_REG       0x5c
>> +#define DSIM_PHYTIMING_REG     0x64
>> +#define DSIM_PHYTIMING1_REG    0x68
>> +#define DSIM_PHYTIMING2_REG    0x6c
>>
>>   /* DSIM_STATUS */
>>   #define DSIM_STOP_STATE_DAT(x)         (((x) & 0xf) << 0)
>> @@ -200,6 +204,21 @@
>>   #define DSIM_PLL_M(x)                  ((x) << 4)
>>   #define DSIM_PLL_S(x)                  ((x) << 1)
>>
>> +/* DSIM_PHYTIMING */
>> +#define DSIM_PHYTIMING_LPX(x)          ((x) << 8)
>> +#define DSIM_PHYTIMING_HS_EXIT(x)      ((x) << 0)
>> +
>> +/* DSIM_PHYTIMING1 */
>> +#define DSIM_PHYTIMING1_CLK_PREPARE(x) ((x) << 24)
>> +#define DSIM_PHYTIMING1_CLK_ZERO(x)    ((x) << 16)
>> +#define DSIM_PHYTIMING1_CLK_POST(x)    ((x) << 8)
>> +#define DSIM_PHYTIMING1_CLK_TRAIL(x)   ((x) << 0)
>> +
>> +/* DSIM_PHYTIMING2 */
>> +#define DSIM_PHYTIMING2_HS_PREPARE(x)  ((x) << 16)
>> +#define DSIM_PHYTIMING2_HS_ZERO(x)     ((x) << 8)
>> +#define DSIM_PHYTIMING2_HS_TRAIL(x)    ((x) << 0)
>> +
>>   #define DSI_MAX_BUS_WIDTH              4
>>   #define DSI_NUM_VIRTUAL_CHANNELS       4
>>   #define DSI_TX_FIFO_SIZE               2048
>> @@ -233,6 +252,12 @@ struct exynos_dsi_transfer {
>>   #define DSIM_STATE_INITIALIZED         BIT(1)
>>   #define DSIM_STATE_CMD_LPM             BIT(2)
>>
>> +struct exynos_dsi_driver_data {
>
> Shouldn't this be static?
>
>> +       unsigned int plltmr_reg;
>> +
>
> nit: stray blank line
>
>> +       unsigned int has_freqband:1;
>> +};
>> +
>
> <snip>
>
>> +static void exynos_dsi_set_phy_ctrl(struct exynos_dsi *dsi)
>> +{
>> +       struct exynos_dsi_driver_data *driver_data = dsi->driver_data;
>> +       u32 reg;
>> +
>> +       if (driver_data->has_freqband)
>> +               return;
>> +
>> +       /* B D-PHY */
>> +       reg = 0x0af & 0x1ff;
>
> Please use macros instead of magic numbers.
>

  reply	other threads:[~2014-04-30  0:36 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-04-27  1:49 [RFC v3 PATCH 00/16] drm/exynos: support MIPI DSI command mode display YoungJun Cho
2014-04-27  1:49 ` [RFC v3 PATCH 01/16] drm/exynos: dsi: move the Eot packets configuration point YoungJun Cho
2014-04-27  1:49 ` [RFC v3 PATCH 02/16] drm/exynos: use wait_event_timeout() for safety usage YoungJun Cho
2014-04-27  1:49 ` [RFC v3 PATCH v2 03/16] ARM: dts: sysreg: add exynos5 compatible to DT bindings YoungJun Cho
2014-04-27  1:50 ` [RFC v3 PATCH v3 04/16] ARM: dts: samsung-fimd: add I80 specific properties YoungJun Cho
2014-04-27  1:50 ` [RFC v3 PATCH 05/16] drm/panel: add CPU mode timings structure YoungJun Cho
2014-04-27  1:50 ` [RFC v3 PATCH 06/16] drm/exynos: add TE handler to support MIPI DSI command mode interface YoungJun Cho
2014-04-27  1:50 ` [RFC v3 PATCH 07/16] drm/exynos: dsi: add TE handler to support " YoungJun Cho
2014-04-27  1:50 ` [RFC v3 PATCH 08/16] drm/exynos: fimd: support I80 interface YoungJun Cho
2014-04-29 15:35   ` Sachin Kamat
2014-04-30  0:36     ` YoungJun Cho
2014-04-27  1:50 ` [RFC v3 PATCH v2 09/16] ARM: dts: exynos_dsim: add exynos5420 compatible to DT bindings YoungJun Cho
2014-04-27  1:50 ` [RFC v3 PATCH v2 10/16] drm/exynos: dsi: add driver data to support Exynos5420 YoungJun Cho
2014-04-29 15:26   ` Sachin Kamat
2014-04-30  0:36     ` YoungJun Cho [this message]
     [not found]   ` <1398563412-21781-11-git-send-email-yj44.cho-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>
2014-05-05 11:27     ` Andrzej Hajda
2014-05-07  0:48       ` YoungJun Cho
2014-04-27  1:50 ` [RFC v3 PATCH v6 11/16] ARM: dts: s6e3fa0: add DT bindings YoungJun Cho
2014-05-05 10:35   ` Andrzej Hajda
2014-05-07  1:05     ` YoungJun Cho
2014-05-07 16:00       ` Laurent Pinchart
2014-05-08  0:20         ` YoungJun Cho
2014-04-27  1:50 ` [RFC v3 PATCH v4 12/16] drm/panel: add S6E3FA0 driver YoungJun Cho
2014-04-27  1:50 ` [RFC v3 PATCH 13/16] ARM: dts: exynos4: add system register node YoungJun Cho
2014-04-27  1:50 ` [RFC v3 PATCH 14/16] ARM: dts: exynos5: add system register support YoungJun Cho
2014-04-27  1:50 ` [RFC v3 PATCH 15/16] ARM: dts: exynos5420: add mipi-phy node YoungJun Cho
2014-04-27  1:50 ` [RFC v3 PATCH 16/16] ARM: dts: exynos5420: add dsi node YoungJun Cho

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=536045A3.5020604@samsung.com \
    --to=yj44.cho@samsung.com \
    --cc=a.hajda@samsung.com \
    --cc=devicetree@vger.kernel.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=galak@codeaurora.org \
    --cc=ijc+devicetree@hellion.org.uk \
    --cc=kgene.kim@samsung.com \
    --cc=kyungmin.park@samsung.com \
    --cc=laurent.pinchart@ideasonboard.com \
    --cc=linux-samsung-soc@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=pawel.moll@arm.com \
    --cc=robh+dt@kernel.org \
    --cc=sachin.kamat@linaro.org \
    --cc=sw0312.kim@samsung.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.