All of lore.kernel.org
 help / color / mirror / Atom feed
From: Nathan Lu <nathan.lu@mediatek.com>
To: CK Hu <ck.hu@mediatek.com>, Rob Herring <robh+dt@kernel.org>,
	"Krzysztof Kozlowski" <krzysztof.kozlowski+dt@linaro.org>,
	Chun-Kuang Hu <chunkuang.hu@kernel.org>,
	Philipp Zabel <p.zabel@pengutronix.de>,
	"David Airlie" <airlied@linux.ie>,
	Daniel Vetter <daniel@ffwll.ch>,
	Maxime Coquelin <mcoquelin.stm32@gmail.com>,
	Alexandre Torgue <alexandre.torgue@foss.st.com>,
	Matthias Brugger <matthias.bgg@gmail.com>
Cc: "jason-jh . lin" <jason-jh.lin@mediatek.com>,
	AngeloGioacchino Del Regno 
	<angelogioacchino.delregno@collabora.com>,
	Rex-BC Chen <rex-bc.chen@mediatek.com>,
	Enric Balletbo i Serra <enric.balletbo@collabora.com>,
	Moudy Ho <moudy.ho@mediatek.com>, <devicetree@vger.kernel.org>,
	<linux-kernel@vger.kernel.org>, <dri-devel@lists.freedesktop.org>,
	<linux-mediatek@lists.infradead.org>,
	<linux-stm32@st-md-mailman.stormreply.com>,
	<linux-arm-kernel@lists.infradead.org>,
	<srv_heupstream@mediatek.com>, <wsd_upstream@mediatek.com>,
	<lancelot.wu@mediatek.com>, amy zhang <Amy.Zhang@mediatek.com>
Subject: Re: [PATCH v1 4/4] drm/mediatek: add mediatek-drm of vdosys0 support for mt8188
Date: Tue, 6 Sep 2022 10:39:06 +0800	[thread overview]
Message-ID: <d2f89e0b4929c6c37f5effe002cdc15b7475e500.camel@mediatek.com> (raw)
In-Reply-To: <805b7dd82e86e6c2297a5ffbd23be2c568ca29b3.camel@mediatek.com>

Hi CK,

Thanks for your review, and appreciate for all comments and sugestions.
I'll remove io_start variable at next version.
It will be upstream with vdosys1 patch later.

On Mon, 2022-08-22 at 13:50 +0800, CK Hu wrote:
> Hi, Nathan:
> 
> On Mon, 2022-08-22 at 11:32 +0800, nathan.lu wrote:
> > From: Nathan Lu <nathan.lu@mediatek.com>
> > 
> > add driver data of mt8188 vdosys0 to mediatek-drm and the sub
> > driver.
> > 
> > Signed-off-by: amy zhang <Amy.Zhang@mediatek.com>
> > Signed-off-by: Nathan Lu <nathan.lu@mediatek.com>
> > ---
> >  drivers/gpu/drm/mediatek/mtk_drm_drv.c | 30
> > ++++++++++++++++++++++++++
> >  1 file changed, 30 insertions(+)
> > 
> > diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> > b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> > index d72263c8a621..260514006093 100644
> > --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> > +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> > @@ -178,6 +178,18 @@ static const unsigned int mt8186_mtk_ddp_ext[]
> > =
> > {
> >  	DDP_COMPONENT_DPI0,
> >  };
> >  
> > +static const unsigned int mt8188_mtk_ddp_main[] = {
> > +	DDP_COMPONENT_OVL0,
> > +	DDP_COMPONENT_RDMA0,
> > +	DDP_COMPONENT_COLOR0,
> > +	DDP_COMPONENT_CCORR,
> > +	DDP_COMPONENT_AAL0,
> > +	DDP_COMPONENT_GAMMA,
> > +	DDP_COMPONENT_POSTMASK0,
> > +	DDP_COMPONENT_DITHER0,
> > +	DDP_COMPONENT_DP_INTF0,
> > +};
> > +
> >  static const unsigned int mt8192_mtk_ddp_main[] = {
> >  	DDP_COMPONENT_OVL0,
> >  	DDP_COMPONENT_OVL_2L0,
> > @@ -323,6 +335,20 @@ static const struct mtk_mmsys_match_data
> > mt8186_mmsys_match_data = {
> >  	},
> >  };
> >  
> > +static const struct mtk_mmsys_driver_data
> > mt8188_vdosys0_driver_data
> > = {
> > +	.io_start = 0x1c01d000,
> 
> For only one mmsys, it's not necessary to set io_start.
> 
> Regards,
> CK
> 
> > +	.main_path = mt8188_mtk_ddp_main,
> > +	.main_len = ARRAY_SIZE(mt8188_mtk_ddp_main),
> > +	.mmsys_dev_num = 1,
> > +};
> > +
> > +static const struct mtk_mmsys_match_data mt8188_mmsys_match_data =
> > {
> > +	.num_drv_data = 1,
> > +	.drv_data = {
> > +		&mt8188_vdosys0_driver_data,
> > +	},
> > +};
> > +
> >  static const struct mtk_mmsys_driver_data mt8192_mmsys_driver_data
> > =
> > {
> >  	.main_path = mt8192_mtk_ddp_main,
> >  	.main_len = ARRAY_SIZE(mt8192_mtk_ddp_main),
> > @@ -376,6 +402,8 @@ static const struct of_device_id
> > mtk_drm_of_ids[]
> > = {
> >  	  .data = &mt8183_mmsys_match_data},
> >  	{ .compatible = "mediatek,mt8186-mmsys",
> >  	  .data = &mt8186_mmsys_match_data},
> > +	{ .compatible = "mediatek,mt8188-mmsys",
> > +	  .data = &mt8188_mmsys_match_data},
> >  	{ .compatible = "mediatek,mt8192-mmsys",
> >  	  .data = &mt8192_mmsys_match_data},
> >  	{ .compatible = "mediatek,mt8195-mmsys",
> > @@ -734,6 +762,8 @@ static const struct of_device_id
> > mtk_ddp_comp_dt_ids[] = {
> >  	  .data = (void *)MTK_DISP_MUTEX },
> >  	{ .compatible = "mediatek,mt8186-disp-mutex",
> >  	  .data = (void *)MTK_DISP_MUTEX },
> > +	{ .compatible = "mediatek,mt8188-disp-mutex",
> > +	  .data = (void *)MTK_DISP_MUTEX },
> >  	{ .compatible = "mediatek,mt8192-disp-mutex",
> >  	  .data = (void *)MTK_DISP_MUTEX },
> >  	{ .compatible = "mediatek,mt8195-disp-mutex",
> 
> 


WARNING: multiple messages have this Message-ID (diff)
From: Nathan Lu <nathan.lu@mediatek.com>
To: CK Hu <ck.hu@mediatek.com>, Rob Herring <robh+dt@kernel.org>,
	"Krzysztof Kozlowski" <krzysztof.kozlowski+dt@linaro.org>,
	Chun-Kuang Hu <chunkuang.hu@kernel.org>,
	Philipp Zabel <p.zabel@pengutronix.de>,
	"David Airlie" <airlied@linux.ie>,
	Daniel Vetter <daniel@ffwll.ch>,
	Maxime Coquelin <mcoquelin.stm32@gmail.com>,
	Alexandre Torgue <alexandre.torgue@foss.st.com>,
	Matthias Brugger <matthias.bgg@gmail.com>
Cc: "jason-jh . lin" <jason-jh.lin@mediatek.com>,
	AngeloGioacchino Del Regno
	<angelogioacchino.delregno@collabora.com>,
	Rex-BC Chen <rex-bc.chen@mediatek.com>,
	Enric Balletbo i Serra <enric.balletbo@collabora.com>,
	Moudy Ho <moudy.ho@mediatek.com>, <devicetree@vger.kernel.org>,
	<linux-kernel@vger.kernel.org>, <dri-devel@lists.freedesktop.org>,
	<linux-mediatek@lists.infradead.org>,
	<linux-stm32@st-md-mailman.stormreply.com>,
	<linux-arm-kernel@lists.infradead.org>,
	<srv_heupstream@mediatek.com>, <wsd_upstream@mediatek.com>,
	<lancelot.wu@mediatek.com>, amy zhang <Amy.Zhang@mediatek.com>
Subject: Re: [PATCH v1 4/4] drm/mediatek: add mediatek-drm of vdosys0 support for mt8188
Date: Tue, 6 Sep 2022 10:39:06 +0800	[thread overview]
Message-ID: <d2f89e0b4929c6c37f5effe002cdc15b7475e500.camel@mediatek.com> (raw)
In-Reply-To: <805b7dd82e86e6c2297a5ffbd23be2c568ca29b3.camel@mediatek.com>

Hi CK,

Thanks for your review, and appreciate for all comments and sugestions.
I'll remove io_start variable at next version.
It will be upstream with vdosys1 patch later.

On Mon, 2022-08-22 at 13:50 +0800, CK Hu wrote:
> Hi, Nathan:
> 
> On Mon, 2022-08-22 at 11:32 +0800, nathan.lu wrote:
> > From: Nathan Lu <nathan.lu@mediatek.com>
> > 
> > add driver data of mt8188 vdosys0 to mediatek-drm and the sub
> > driver.
> > 
> > Signed-off-by: amy zhang <Amy.Zhang@mediatek.com>
> > Signed-off-by: Nathan Lu <nathan.lu@mediatek.com>
> > ---
> >  drivers/gpu/drm/mediatek/mtk_drm_drv.c | 30
> > ++++++++++++++++++++++++++
> >  1 file changed, 30 insertions(+)
> > 
> > diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> > b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> > index d72263c8a621..260514006093 100644
> > --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> > +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> > @@ -178,6 +178,18 @@ static const unsigned int mt8186_mtk_ddp_ext[]
> > =
> > {
> >  	DDP_COMPONENT_DPI0,
> >  };
> >  
> > +static const unsigned int mt8188_mtk_ddp_main[] = {
> > +	DDP_COMPONENT_OVL0,
> > +	DDP_COMPONENT_RDMA0,
> > +	DDP_COMPONENT_COLOR0,
> > +	DDP_COMPONENT_CCORR,
> > +	DDP_COMPONENT_AAL0,
> > +	DDP_COMPONENT_GAMMA,
> > +	DDP_COMPONENT_POSTMASK0,
> > +	DDP_COMPONENT_DITHER0,
> > +	DDP_COMPONENT_DP_INTF0,
> > +};
> > +
> >  static const unsigned int mt8192_mtk_ddp_main[] = {
> >  	DDP_COMPONENT_OVL0,
> >  	DDP_COMPONENT_OVL_2L0,
> > @@ -323,6 +335,20 @@ static const struct mtk_mmsys_match_data
> > mt8186_mmsys_match_data = {
> >  	},
> >  };
> >  
> > +static const struct mtk_mmsys_driver_data
> > mt8188_vdosys0_driver_data
> > = {
> > +	.io_start = 0x1c01d000,
> 
> For only one mmsys, it's not necessary to set io_start.
> 
> Regards,
> CK
> 
> > +	.main_path = mt8188_mtk_ddp_main,
> > +	.main_len = ARRAY_SIZE(mt8188_mtk_ddp_main),
> > +	.mmsys_dev_num = 1,
> > +};
> > +
> > +static const struct mtk_mmsys_match_data mt8188_mmsys_match_data =
> > {
> > +	.num_drv_data = 1,
> > +	.drv_data = {
> > +		&mt8188_vdosys0_driver_data,
> > +	},
> > +};
> > +
> >  static const struct mtk_mmsys_driver_data mt8192_mmsys_driver_data
> > =
> > {
> >  	.main_path = mt8192_mtk_ddp_main,
> >  	.main_len = ARRAY_SIZE(mt8192_mtk_ddp_main),
> > @@ -376,6 +402,8 @@ static const struct of_device_id
> > mtk_drm_of_ids[]
> > = {
> >  	  .data = &mt8183_mmsys_match_data},
> >  	{ .compatible = "mediatek,mt8186-mmsys",
> >  	  .data = &mt8186_mmsys_match_data},
> > +	{ .compatible = "mediatek,mt8188-mmsys",
> > +	  .data = &mt8188_mmsys_match_data},
> >  	{ .compatible = "mediatek,mt8192-mmsys",
> >  	  .data = &mt8192_mmsys_match_data},
> >  	{ .compatible = "mediatek,mt8195-mmsys",
> > @@ -734,6 +762,8 @@ static const struct of_device_id
> > mtk_ddp_comp_dt_ids[] = {
> >  	  .data = (void *)MTK_DISP_MUTEX },
> >  	{ .compatible = "mediatek,mt8186-disp-mutex",
> >  	  .data = (void *)MTK_DISP_MUTEX },
> > +	{ .compatible = "mediatek,mt8188-disp-mutex",
> > +	  .data = (void *)MTK_DISP_MUTEX },
> >  	{ .compatible = "mediatek,mt8192-disp-mutex",
> >  	  .data = (void *)MTK_DISP_MUTEX },
> >  	{ .compatible = "mediatek,mt8195-disp-mutex",
> 
> 


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

WARNING: multiple messages have this Message-ID (diff)
From: Nathan Lu <nathan.lu@mediatek.com>
To: CK Hu <ck.hu@mediatek.com>, Rob Herring <robh+dt@kernel.org>,
	"Krzysztof Kozlowski" <krzysztof.kozlowski+dt@linaro.org>,
	Chun-Kuang Hu <chunkuang.hu@kernel.org>,
	Philipp Zabel <p.zabel@pengutronix.de>,
	"David Airlie" <airlied@linux.ie>,
	Daniel Vetter <daniel@ffwll.ch>,
	Maxime Coquelin <mcoquelin.stm32@gmail.com>,
	Alexandre Torgue <alexandre.torgue@foss.st.com>,
	 Matthias Brugger <matthias.bgg@gmail.com>
Cc: devicetree@vger.kernel.org, wsd_upstream@mediatek.com,
	srv_heupstream@mediatek.com,
	"jason-jh . lin" <jason-jh.lin@mediatek.com>,
	linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org,
	Enric Balletbo i Serra <enric.balletbo@collabora.com>,
	Moudy Ho <moudy.ho@mediatek.com>,
	linux-mediatek@lists.infradead.org,
	Rex-BC Chen <rex-bc.chen@mediatek.com>,
	lancelot.wu@mediatek.com, amy zhang <Amy.Zhang@mediatek.com>,
	linux-stm32@st-md-mailman.stormreply.com,
	linux-arm-kernel@lists.infradead.org,
	AngeloGioacchino Del Regno
	<angelogioacchino.delregno@collabora.com>
Subject: Re: [PATCH v1 4/4] drm/mediatek: add mediatek-drm of vdosys0 support for mt8188
Date: Tue, 6 Sep 2022 10:39:06 +0800	[thread overview]
Message-ID: <d2f89e0b4929c6c37f5effe002cdc15b7475e500.camel@mediatek.com> (raw)
In-Reply-To: <805b7dd82e86e6c2297a5ffbd23be2c568ca29b3.camel@mediatek.com>

Hi CK,

Thanks for your review, and appreciate for all comments and sugestions.
I'll remove io_start variable at next version.
It will be upstream with vdosys1 patch later.

On Mon, 2022-08-22 at 13:50 +0800, CK Hu wrote:
> Hi, Nathan:
> 
> On Mon, 2022-08-22 at 11:32 +0800, nathan.lu wrote:
> > From: Nathan Lu <nathan.lu@mediatek.com>
> > 
> > add driver data of mt8188 vdosys0 to mediatek-drm and the sub
> > driver.
> > 
> > Signed-off-by: amy zhang <Amy.Zhang@mediatek.com>
> > Signed-off-by: Nathan Lu <nathan.lu@mediatek.com>
> > ---
> >  drivers/gpu/drm/mediatek/mtk_drm_drv.c | 30
> > ++++++++++++++++++++++++++
> >  1 file changed, 30 insertions(+)
> > 
> > diff --git a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> > b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> > index d72263c8a621..260514006093 100644
> > --- a/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> > +++ b/drivers/gpu/drm/mediatek/mtk_drm_drv.c
> > @@ -178,6 +178,18 @@ static const unsigned int mt8186_mtk_ddp_ext[]
> > =
> > {
> >  	DDP_COMPONENT_DPI0,
> >  };
> >  
> > +static const unsigned int mt8188_mtk_ddp_main[] = {
> > +	DDP_COMPONENT_OVL0,
> > +	DDP_COMPONENT_RDMA0,
> > +	DDP_COMPONENT_COLOR0,
> > +	DDP_COMPONENT_CCORR,
> > +	DDP_COMPONENT_AAL0,
> > +	DDP_COMPONENT_GAMMA,
> > +	DDP_COMPONENT_POSTMASK0,
> > +	DDP_COMPONENT_DITHER0,
> > +	DDP_COMPONENT_DP_INTF0,
> > +};
> > +
> >  static const unsigned int mt8192_mtk_ddp_main[] = {
> >  	DDP_COMPONENT_OVL0,
> >  	DDP_COMPONENT_OVL_2L0,
> > @@ -323,6 +335,20 @@ static const struct mtk_mmsys_match_data
> > mt8186_mmsys_match_data = {
> >  	},
> >  };
> >  
> > +static const struct mtk_mmsys_driver_data
> > mt8188_vdosys0_driver_data
> > = {
> > +	.io_start = 0x1c01d000,
> 
> For only one mmsys, it's not necessary to set io_start.
> 
> Regards,
> CK
> 
> > +	.main_path = mt8188_mtk_ddp_main,
> > +	.main_len = ARRAY_SIZE(mt8188_mtk_ddp_main),
> > +	.mmsys_dev_num = 1,
> > +};
> > +
> > +static const struct mtk_mmsys_match_data mt8188_mmsys_match_data =
> > {
> > +	.num_drv_data = 1,
> > +	.drv_data = {
> > +		&mt8188_vdosys0_driver_data,
> > +	},
> > +};
> > +
> >  static const struct mtk_mmsys_driver_data mt8192_mmsys_driver_data
> > =
> > {
> >  	.main_path = mt8192_mtk_ddp_main,
> >  	.main_len = ARRAY_SIZE(mt8192_mtk_ddp_main),
> > @@ -376,6 +402,8 @@ static const struct of_device_id
> > mtk_drm_of_ids[]
> > = {
> >  	  .data = &mt8183_mmsys_match_data},
> >  	{ .compatible = "mediatek,mt8186-mmsys",
> >  	  .data = &mt8186_mmsys_match_data},
> > +	{ .compatible = "mediatek,mt8188-mmsys",
> > +	  .data = &mt8188_mmsys_match_data},
> >  	{ .compatible = "mediatek,mt8192-mmsys",
> >  	  .data = &mt8192_mmsys_match_data},
> >  	{ .compatible = "mediatek,mt8195-mmsys",
> > @@ -734,6 +762,8 @@ static const struct of_device_id
> > mtk_ddp_comp_dt_ids[] = {
> >  	  .data = (void *)MTK_DISP_MUTEX },
> >  	{ .compatible = "mediatek,mt8186-disp-mutex",
> >  	  .data = (void *)MTK_DISP_MUTEX },
> > +	{ .compatible = "mediatek,mt8188-disp-mutex",
> > +	  .data = (void *)MTK_DISP_MUTEX },
> >  	{ .compatible = "mediatek,mt8192-disp-mutex",
> >  	  .data = (void *)MTK_DISP_MUTEX },
> >  	{ .compatible = "mediatek,mt8195-disp-mutex",
> 
> 


  reply	other threads:[~2022-09-06  2:39 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-08-22  3:32 [PATCH v1 0/4] Add first version mt8188 vdosys0 driver nathan.lu
2022-08-22  3:32 ` nathan.lu
2022-08-22  3:32 ` nathan.lu
2022-08-22  3:32 ` [PATCH v1 1/4] dt-bindings: mediatek: modify VDOSYS0 device tree Documentations for MT8188 nathan.lu
2022-08-22  3:32   ` nathan.lu
2022-08-22  3:32   ` nathan.lu
2022-08-22  5:36   ` CK Hu
2022-08-22  5:36     ` CK Hu
2022-08-22  5:36     ` CK Hu
2022-09-06  2:28     ` Nathan Lu
2022-09-06  2:28       ` Nathan Lu
2022-09-06  2:28       ` Nathan Lu
2022-08-23 12:51   ` Krzysztof Kozlowski
2022-08-23 12:51     ` Krzysztof Kozlowski
2022-08-23 12:51     ` Krzysztof Kozlowski
2022-09-06  2:32     ` Nathan Lu
2022-09-06  2:32       ` Nathan Lu
2022-09-06  2:32       ` Nathan Lu
2022-08-22  3:32 ` [PATCH v1 2/4] soc: mediatek: add mtk-mmsys support for mt8188 vdosys0 nathan.lu
2022-08-22  3:32   ` nathan.lu
2022-08-22  3:32   ` nathan.lu
2022-08-22  3:32 ` [PATCH v1 3/4] soc: mediatek: add mtk-mutex " nathan.lu
2022-08-22  3:32   ` nathan.lu
2022-08-22  3:32   ` nathan.lu
2022-08-22  3:32 ` [PATCH v1 4/4] drm/mediatek: add mediatek-drm of vdosys0 support for mt8188 nathan.lu
2022-08-22  3:32   ` nathan.lu
2022-08-22  3:32   ` nathan.lu
2022-08-22  5:50   ` CK Hu
2022-08-22  5:50     ` CK Hu
2022-08-22  5:50     ` CK Hu
2022-09-06  2:39     ` Nathan Lu [this message]
2022-09-06  2:39       ` Nathan Lu
2022-09-06  2:39       ` Nathan Lu

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=d2f89e0b4929c6c37f5effe002cdc15b7475e500.camel@mediatek.com \
    --to=nathan.lu@mediatek.com \
    --cc=Amy.Zhang@mediatek.com \
    --cc=airlied@linux.ie \
    --cc=alexandre.torgue@foss.st.com \
    --cc=angelogioacchino.delregno@collabora.com \
    --cc=chunkuang.hu@kernel.org \
    --cc=ck.hu@mediatek.com \
    --cc=daniel@ffwll.ch \
    --cc=devicetree@vger.kernel.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=enric.balletbo@collabora.com \
    --cc=jason-jh.lin@mediatek.com \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=lancelot.wu@mediatek.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mediatek@lists.infradead.org \
    --cc=linux-stm32@st-md-mailman.stormreply.com \
    --cc=matthias.bgg@gmail.com \
    --cc=mcoquelin.stm32@gmail.com \
    --cc=moudy.ho@mediatek.com \
    --cc=p.zabel@pengutronix.de \
    --cc=rex-bc.chen@mediatek.com \
    --cc=robh+dt@kernel.org \
    --cc=srv_heupstream@mediatek.com \
    --cc=wsd_upstream@mediatek.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.