All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jani Nikula <jani.nikula@intel.com>
To: Madhav Chauhan <madhav.chauhan@intel.com>,
	intel-gfx@lists.freedesktop.org
Cc: paulo.r.zanoni@intel.com, rodrigo.vivi@intel.com
Subject: Re: [PATCH 05/20] drm/i915/icl: Define PORT_CL_DW_10 register
Date: Fri, 29 Jun 2018 16:53:44 +0300	[thread overview]
Message-ID: <8736x5snpz.fsf@intel.com> (raw)
In-Reply-To: <1529058084-31777-6-git-send-email-madhav.chauhan@intel.com>

On Fri, 15 Jun 2018, Madhav Chauhan <madhav.chauhan@intel.com> wrote:
> This register used to power down individual lanes for
> DDI/DSI ports. Bitfields to power up/down various
> combinations of lanes are also added in this patch.
>
> Signed-off-by: Madhav Chauhan <madhav.chauhan@intel.com>
> ---
>  drivers/gpu/drm/i915/i915_reg.h | 19 +++++++++++++++++++
>  1 file changed, 19 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
> index 0d268d1..1b91e73 100644
> --- a/drivers/gpu/drm/i915/i915_reg.h
> +++ b/drivers/gpu/drm/i915/i915_reg.h
> @@ -1666,6 +1666,25 @@ enum i915_power_well_id {
>  #define ICL_PORT_CL_DW5(port)	_MMIO_PORT(port, _ICL_PORT_CL_DW5_A, \
>  						 _ICL_PORT_CL_DW5_B)
>  
> +#define _CNL_PORT_CL_DW10_A		0x162028
> +#define _ICL_PORT_CL_DW10_B		0x6c028
> +#define ICL_PORT_CL_DW10(port)		_MMIO_PORT(port,	\
> +						   _CNL_PORT_CL_DW10_A, \
> +						   _ICL_PORT_CL_DW10_B)
> +#define  PG_SEQ_DELAY_OVRRIDE		(3 << 25)

_OVERRIDE_MASK?

> +#define  PG_SEQ_DELAY_OVRRIDE_ENABLE	(1 << 24)

OVERRIDE

> +#define  PWR_UP_ALL_LANES		0x0
> +#define  PWR_DOWN_LN_3_2_1		0xe
> +#define  PWR_DOWN_LN_3_2		0xc
> +#define  PWR_DOWN_LN_3			0x8
> +#define  PWR_DOWN_LN_2_1_0		0x7
> +#define  PWR_DOWN_LN_1_0		0x3
> +#define  PWR_DOWN_LN_1			0x2
> +#define  PWR_DOWN_LN_3_1		0xa
> +#define  PWR_DOWN_LN_3_1_0		0xb

We define the values of fields shifted to position, so they can be
directly OR'd in place.

Effectively you could do this:

#define   PWR_UP_LANES(x)		(GENMASK(3, x) << 4)
#define   PWR_UP_LANES_REVERSE(x)	(GENMASK(3 - (x), 0) << 4)

and use them like PWR_UP_LANES(intel_dsi->lane_count), saving tens of
lines of code.

BR,
Jani.

> +#define  PWR_DOWN_LN_MASK		0xf0
> +#define  PWR_DOWN_LN_SHIFT		4
> +
>  #define _PORT_CL1CM_DW9_A		0x162024
>  #define _PORT_CL1CM_DW9_BC		0x6C024
>  #define   IREF0RC_OFFSET_SHIFT		8

-- 
Jani Nikula, Intel Open Source Graphics Center
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

  reply	other threads:[~2018-06-29 13:53 UTC|newest]

Thread overview: 47+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-06-15 10:21 [PATCH 00/20] ICELAKE DSI DRIVER Madhav Chauhan
2018-06-15 10:21 ` [PATCH 01/20] drm/i915/icl: Define register for DSI PLL Madhav Chauhan
2018-06-29 11:43   ` Jani Nikula
2018-06-29 13:31     ` Chauhan, Madhav
2018-06-29 14:18       ` Jani Nikula
2018-06-15 10:21 ` [PATCH 02/20] drm/i915/icl: Program DSI Escape clock Divider Madhav Chauhan
2018-06-15 17:30   ` Paulo Zanoni
2018-06-15 18:00     ` Chauhan, Madhav
2018-06-15 18:11       ` Paulo Zanoni
2018-06-20  8:14         ` Chauhan, Madhav
2018-06-15 10:21 ` [PATCH 03/20] drm/i915/icl: Define DSI mode ctl register Madhav Chauhan
2018-06-29 11:51   ` Jani Nikula
2018-06-29 13:59     ` Chauhan, Madhav
2018-06-29 14:18       ` Jani Nikula
2018-06-15 10:21 ` [PATCH 04/20] drm/i915/icl: Enable DSI IO power Madhav Chauhan
2018-07-02  9:56   ` Jani Nikula
2018-07-02 10:03     ` Chauhan, Madhav
2018-07-02 10:22       ` Jani Nikula
2018-07-02 10:26         ` Chauhan, Madhav
2018-06-15 10:21 ` [PATCH 05/20] drm/i915/icl: Define PORT_CL_DW_10 register Madhav Chauhan
2018-06-29 13:53   ` Jani Nikula [this message]
2018-07-02  8:22     ` Chauhan, Madhav
2018-07-02 10:12       ` Jani Nikula
2018-07-02 10:17         ` Chauhan, Madhav
2018-06-15 10:21 ` [PATCH 06/20] drm/i915/icl: Power down unused DSI lanes Madhav Chauhan
2018-06-29 13:57   ` Jani Nikula
2018-07-02 12:42   ` Jani Nikula
2018-07-02 12:43     ` Chauhan, Madhav
2018-06-15 10:21 ` [PATCH 07/20] drm/i915/icl: Define AUX lane registers for Port A/B Madhav Chauhan
2018-06-15 10:21 ` [PATCH 08/20] drm/i915/icl: Configure lane sequencing of combo phy transmitter Madhav Chauhan
2018-06-15 10:21 ` [PATCH 09/20] drm/i915/icl: DSI vswing programming sequence Madhav Chauhan
2018-06-15 10:21 ` [PATCH 10/20] drm/i915/icl: Enable DDI Buffer Madhav Chauhan
2018-06-15 10:21 ` [PATCH 11/20] drm/i915/icl: Define T_INIT_MASTER registers Madhav Chauhan
2018-06-15 10:21 ` [PATCH 12/20] drm/i915/icl: Program " Madhav Chauhan
2018-06-15 10:21 ` [PATCH 13/20] drm/i915/icl: Define data/clock lanes dphy timing registers Madhav Chauhan
2018-06-15 10:21 ` [PATCH 14/20] drm/i915/icl: Program DSI clock and data lane timing params Madhav Chauhan
2018-06-15 10:21 ` [PATCH 15/20] drm/i915/icl: Define TA_TIMING_PARAM registers Madhav Chauhan
2018-06-15 10:21 ` [PATCH 16/20] drm/i915/icl: Program " Madhav Chauhan
2018-06-15 10:21 ` [PATCH 17/20] drm/i915/icl: Get DSI transcoder for a given port Madhav Chauhan
2018-06-15 10:21 ` [PATCH 18/20] drm/i915/icl: Add macros for MMIO of DSI transcoder registers Madhav Chauhan
2018-06-15 10:21 ` [PATCH 19/20] drm/i915/icl: Define TRANS_DSI_FUNC_CONF register Madhav Chauhan
2018-06-15 10:21 ` [PATCH 20/20] drm/i915/icl: Configure DSI transcoders Madhav Chauhan
2018-06-15 11:06 ` ✗ Fi.CI.CHECKPATCH: warning for ICELAKE DSI DRIVER Patchwork
2018-06-15 11:12 ` ✗ Fi.CI.SPARSE: " Patchwork
2018-06-15 11:21 ` ✓ Fi.CI.BAT: success " Patchwork
2018-06-15 18:14 ` ✓ Fi.CI.IGT: " Patchwork
2018-06-27  6:32 ` [PATCH 00/20] " Chauhan, Madhav

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=8736x5snpz.fsf@intel.com \
    --to=jani.nikula@intel.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=madhav.chauhan@intel.com \
    --cc=paulo.r.zanoni@intel.com \
    --cc=rodrigo.vivi@intel.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.