* [U-Boot] [PATCH v4] armv8: Add workaround for USB erratum A-050106
@ 2019-11-13 5:50 Ran Wang
2019-11-21 5:26 ` Priyanka Jain
0 siblings, 1 reply; 5+ messages in thread
From: Ran Wang @ 2019-11-13 5:50 UTC (permalink / raw)
To: u-boot
USB3.0 Receiver needs to enable fixed equalization
for each of PHY instances in an SOC. This is similar
to erratum A-009007, but this one is for LX2160A,
and the register value is different.
Signed-off-by: Ran Wang <ran.wang_1@nxp.com>
---
Change in v4:
- Include defines of USB_PHY_RX_EQ_VAL_3 and USB_PHY_RX_EQ_VAL_4 for
LS1028A to fix compile failure.
Change in v3:
- Rebase patch for latest U-Boot (v2019.10)
Change in v2:
- Move function erratum_a050106() under the scope of
CONFIG_FSL_LSCH3 to avoid compilation warning of
'defined but not used'.
arch/arm/cpu/armv8/fsl-layerscape/Kconfig | 4 ++++
arch/arm/cpu/armv8/fsl-layerscape/soc.c | 12 +++++++++++-
arch/arm/include/asm/arch-fsl-layerscape/immap_lsch3.h | 6 ++++++
3 files changed, 21 insertions(+), 1 deletion(-)
diff --git a/arch/arm/cpu/armv8/fsl-layerscape/Kconfig b/arch/arm/cpu/armv8/fsl-layerscape/Kconfig
index f1578b1..c7f28b6 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/Kconfig
+++ b/arch/arm/cpu/armv8/fsl-layerscape/Kconfig
@@ -219,6 +219,7 @@ config ARCH_LX2160A
select SYS_FSL_DDR_VER_50
select SYS_FSL_EC1
select SYS_FSL_EC2
+ select SYS_FSL_ERRATUM_A050106
select SYS_FSL_HAS_RGMII
select SYS_FSL_HAS_SEC
select SYS_FSL_HAS_CCN508
@@ -348,6 +349,9 @@ config SYS_FSL_ERRATUM_A009008
config SYS_FSL_ERRATUM_A009798
bool "Workaround for USB PHY erratum A009798"
+config SYS_FSL_ERRATUM_A050106
+ bool "Workaround for USB PHY erratum A050106"
+
config SYS_FSL_ERRATUM_A010315
bool "Workaround for PCIe erratum A010315"
diff --git a/arch/arm/cpu/armv8/fsl-layerscape/soc.c b/arch/arm/cpu/armv8/fsl-layerscape/soc.c
index f0df88c..909df5c 100644
--- a/arch/arm/cpu/armv8/fsl-layerscape/soc.c
+++ b/arch/arm/cpu/armv8/fsl-layerscape/soc.c
@@ -146,7 +146,7 @@ static void erratum_a008997(void)
out_be16((phy) + SCFG_USB_PHY_RX_OVRD_IN_HI, USB_PHY_RX_EQ_VAL_4)
#elif defined(CONFIG_ARCH_LS2080A) || defined(CONFIG_ARCH_LS1088A) || \
- defined(CONFIG_ARCH_LS1028A)
+ defined(CONFIG_ARCH_LS1028A) || defined(CONFIG_ARCH_LX2160A)
#define PROGRAM_USB_PHY_RX_OVRD_IN_HI(phy) \
out_le16((phy) + DCSR_USB_PHY_RX_OVRD_IN_HI, USB_PHY_RX_EQ_VAL_1); \
@@ -180,6 +180,15 @@ static void erratum_a009007(void)
}
#if defined(CONFIG_FSL_LSCH3)
+static void erratum_a050106(void)
+{
+#if defined(CONFIG_ARCH_LX2160A)
+ void __iomem *dcsr = (void __iomem *)DCSR_BASE;
+
+ PROGRAM_USB_PHY_RX_OVRD_IN_HI(dcsr + DCSR_USB_PHY1);
+ PROGRAM_USB_PHY_RX_OVRD_IN_HI(dcsr + DCSR_USB_PHY2);
+#endif
+}
/*
* This erratum requires setting a value to eddrtqcr1 to
* optimal the DDR performance.
@@ -331,6 +340,7 @@ void fsl_lsch3_early_init_f(void)
erratum_a009798();
erratum_a008997();
erratum_a009007();
+ erratum_a050106();
#ifdef CONFIG_CHAIN_OF_TRUST
/* In case of Secure Boot, the IBR configures the SMMU
* to allow only Secure transactions.
diff --git a/arch/arm/include/asm/arch-fsl-layerscape/immap_lsch3.h b/arch/arm/include/asm/arch-fsl-layerscape/immap_lsch3.h
index d46477d..7670b56 100644
--- a/arch/arm/include/asm/arch-fsl-layerscape/immap_lsch3.h
+++ b/arch/arm/include/asm/arch-fsl-layerscape/immap_lsch3.h
@@ -252,8 +252,14 @@
#define DCSR_USB_PHY_RX_OVRD_IN_HI 0x200C
#define USB_PHY_RX_EQ_VAL_1 0x0000
#define USB_PHY_RX_EQ_VAL_2 0x0080
+#if defined(CONFIG_ARCH_LS2080A) || defined(CONFIG_ARCH_LS1088A) || \
+ defined(CONFIG_ARCH_LS1028A)
#define USB_PHY_RX_EQ_VAL_3 0x0380
#define USB_PHY_RX_EQ_VAL_4 0x0b80
+#elif defined(CONFIG_ARCH_LX2160A)
+#define USB_PHY_RX_EQ_VAL_3 0x0080
+#define USB_PHY_RX_EQ_VAL_4 0x0880
+#endif
#define DCSR_USB_IOCR1 0x108004
#define DCSR_USB_PCSTXSWINGFULL 0x71
--
2.7.4
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [U-Boot] [PATCH v4] armv8: Add workaround for USB erratum A-050106
2019-11-13 5:50 [U-Boot] [PATCH v4] armv8: Add workaround for USB erratum A-050106 Ran Wang
@ 2019-11-21 5:26 ` Priyanka Jain
2019-11-21 6:55 ` Ran Wang
0 siblings, 1 reply; 5+ messages in thread
From: Priyanka Jain @ 2019-11-21 5:26 UTC (permalink / raw)
To: u-boot
>-----Original Message-----
>From: Ran Wang <ran.wang_1@nxp.com>
>Sent: Wednesday, November 13, 2019 11:20 AM
>To: Priyanka Jain <priyanka.jain@nxp.com>; Albert Aribaud
><albert.u.boot@aribaud.net>
>Cc: u-boot at lists.denx.de; Ran Wang <ran.wang_1@nxp.com>
>Subject: [PATCH v4] armv8: Add workaround for USB erratum A-050106
>
>USB3.0 Receiver needs to enable fixed equalization for each of PHY instances in
>an SOC. This is similar to erratum A-009007, but this one is for LX2160A, and the
>register value is different.
>
>Signed-off-by: Ran Wang <ran.wang_1@nxp.com>
>---
>Change in v4:
> - Include defines of USB_PHY_RX_EQ_VAL_3 and
>USB_PHY_RX_EQ_VAL_4 for
> LS1028A to fix compile failure.
>
>Change in v3:
> - Rebase patch for latest U-Boot (v2019.10)
>
>Change in v2:
> - Move function erratum_a050106() under the scope of
> CONFIG_FSL_LSCH3 to avoid compilation warning of
> 'defined but not used'.
>
> arch/arm/cpu/armv8/fsl-layerscape/Kconfig | 4 ++++
> arch/arm/cpu/armv8/fsl-layerscape/soc.c | 12 +++++++++++-
> arch/arm/include/asm/arch-fsl-layerscape/immap_lsch3.h | 6 ++++++
> 3 files changed, 21 insertions(+), 1 deletion(-)
>
>diff --git a/arch/arm/cpu/armv8/fsl-layerscape/Kconfig
>b/arch/arm/cpu/armv8/fsl-layerscape/Kconfig
>index f1578b1..c7f28b6 100644
>--- a/arch/arm/cpu/armv8/fsl-layerscape/Kconfig
>+++ b/arch/arm/cpu/armv8/fsl-layerscape/Kconfig
>@@ -219,6 +219,7 @@ config ARCH_LX2160A
> select SYS_FSL_DDR_VER_50
> select SYS_FSL_EC1
> select SYS_FSL_EC2
>+ select SYS_FSL_ERRATUM_A050106
> select SYS_FSL_HAS_RGMII
> select SYS_FSL_HAS_SEC
> select SYS_FSL_HAS_CCN508
>@@ -348,6 +349,9 @@ config SYS_FSL_ERRATUM_A009008 config
>SYS_FSL_ERRATUM_A009798
> bool "Workaround for USB PHY erratum A009798"
>
>+config SYS_FSL_ERRATUM_A050106
>+ bool "Workaround for USB PHY erratum A050106"
>+
Please fix checkpatch warning
WARNING: please write a paragraph that describes the config symbol fully
#35: FILE: arch/arm/cpu/armv8/fsl-layerscape/Kconfig:352:
+config SYS_FSL_ERRATUM_A050106
total: 0 errors, 1 warnings, 0 checks, 60 lines checked
-priyankajain
<snip>
^ permalink raw reply [flat|nested] 5+ messages in thread
* [U-Boot] [PATCH v4] armv8: Add workaround for USB erratum A-050106
2019-11-21 5:26 ` Priyanka Jain
@ 2019-11-21 6:55 ` Ran Wang
2019-11-25 3:54 ` Priyanka Jain
0 siblings, 1 reply; 5+ messages in thread
From: Ran Wang @ 2019-11-21 6:55 UTC (permalink / raw)
To: u-boot
Hi Priyanka,
On Thursday, November 21, 2019 13:26, Priyanka Jain wrote:
>
>
>
> >-----Original Message-----
> >From: Ran Wang <ran.wang_1@nxp.com>
> >Sent: Wednesday, November 13, 2019 11:20 AM
> >To: Priyanka Jain <priyanka.jain@nxp.com>; Albert Aribaud
> ><albert.u.boot@aribaud.net>
> >Cc: u-boot at lists.denx.de; Ran Wang <ran.wang_1@nxp.com>
> >Subject: [PATCH v4] armv8: Add workaround for USB erratum A-050106
> >
> >USB3.0 Receiver needs to enable fixed equalization for each of PHY
> >instances in an SOC. This is similar to erratum A-009007, but this one
> >is for LX2160A, and the register value is different.
> >
> >Signed-off-by: Ran Wang <ran.wang_1@nxp.com>
> >---
> >Change in v4:
> > - Include defines of USB_PHY_RX_EQ_VAL_3 and
> >USB_PHY_RX_EQ_VAL_4 for
> > LS1028A to fix compile failure.
> >
> >Change in v3:
> > - Rebase patch for latest U-Boot (v2019.10)
> >
> >Change in v2:
> > - Move function erratum_a050106() under the scope of
> > CONFIG_FSL_LSCH3 to avoid compilation warning of
> > 'defined but not used'.
> >
> > arch/arm/cpu/armv8/fsl-layerscape/Kconfig | 4 ++++
> > arch/arm/cpu/armv8/fsl-layerscape/soc.c | 12 +++++++++++-
> > arch/arm/include/asm/arch-fsl-layerscape/immap_lsch3.h | 6 ++++++
> > 3 files changed, 21 insertions(+), 1 deletion(-)
> >
> >diff --git a/arch/arm/cpu/armv8/fsl-layerscape/Kconfig
> >b/arch/arm/cpu/armv8/fsl-layerscape/Kconfig
> >index f1578b1..c7f28b6 100644
> >--- a/arch/arm/cpu/armv8/fsl-layerscape/Kconfig
> >+++ b/arch/arm/cpu/armv8/fsl-layerscape/Kconfig
> >@@ -219,6 +219,7 @@ config ARCH_LX2160A
> > select SYS_FSL_DDR_VER_50
> > select SYS_FSL_EC1
> > select SYS_FSL_EC2
> >+ select SYS_FSL_ERRATUM_A050106
> > select SYS_FSL_HAS_RGMII
> > select SYS_FSL_HAS_SEC
> > select SYS_FSL_HAS_CCN508
> >@@ -348,6 +349,9 @@ config SYS_FSL_ERRATUM_A009008 config
> >SYS_FSL_ERRATUM_A009798
> > bool "Workaround for USB PHY erratum A009798"
> >
> >+config SYS_FSL_ERRATUM_A050106
> >+ bool "Workaround for USB PHY erratum A050106"
> >+
> Please fix checkpatch warning
> WARNING: please write a paragraph that describes the config symbol fully
> #35: FILE: arch/arm/cpu/armv8/fsl-layerscape/Kconfig:352:
> +config SYS_FSL_ERRATUM_A050106
>
> total: 0 errors, 1 warnings, 0 checks, 60 lines checked
Actually I followed the history erratum workaround patches to do this.
And it seems to be OK to ignore that warning,
Please check:
http://patchwork.ozlabs.org/patch/809597/
http://patchwork.ozlabs.org/patch/809598/
http://patchwork.ozlabs.org/patch/809603/
http://patchwork.ozlabs.org/patch/809599/
http://patchwork.ozlabs.org/patch/809604/
http://patchwork.ozlabs.org/patch/809600/
http://patchwork.ozlabs.org/patch/809601/
http://patchwork.ozlabs.org/patch/809602/
http://patchwork.ozlabs.org/patch/817358/
http://patchwork.ozlabs.org/patch/1098612/
Thanks & Regards,
Ran
^ permalink raw reply [flat|nested] 5+ messages in thread
* [U-Boot] [PATCH v4] armv8: Add workaround for USB erratum A-050106
2019-11-21 6:55 ` Ran Wang
@ 2019-11-25 3:54 ` Priyanka Jain
2019-11-25 10:58 ` Ran Wang
0 siblings, 1 reply; 5+ messages in thread
From: Priyanka Jain @ 2019-11-25 3:54 UTC (permalink / raw)
To: u-boot
>-----Original Message-----
>From: Ran Wang <ran.wang_1@nxp.com>
>Sent: Thursday, November 21, 2019 12:26 PM
>To: Priyanka Jain <priyanka.jain@nxp.com>
>Cc: u-boot at lists.denx.de; Albert Aribaud <albert.u.boot@aribaud.net>
>Subject: RE: [PATCH v4] armv8: Add workaround for USB erratum A-050106
>
>Hi Priyanka,
>
>On Thursday, November 21, 2019 13:26, Priyanka Jain wrote:
>>
>>
>>
>> >-----Original Message-----
>> >From: Ran Wang <ran.wang_1@nxp.com>
>> >Sent: Wednesday, November 13, 2019 11:20 AM
>> >To: Priyanka Jain <priyanka.jain@nxp.com>; Albert Aribaud
>> ><albert.u.boot@aribaud.net>
>> >Cc: u-boot at lists.denx.de; Ran Wang <ran.wang_1@nxp.com>
>> >Subject: [PATCH v4] armv8: Add workaround for USB erratum A-050106
>> >
>> >USB3.0 Receiver needs to enable fixed equalization for each of PHY
>> >instances in an SOC. This is similar to erratum A-009007, but this
>> >one is for LX2160A, and the register value is different.
>> >
>> >Signed-off-by: Ran Wang <ran.wang_1@nxp.com>
>> >---
>> >Change in v4:
>> > - Include defines of USB_PHY_RX_EQ_VAL_3 and
>> >USB_PHY_RX_EQ_VAL_4 for
>> > LS1028A to fix compile failure.
>> >
>> >Change in v3:
>> > - Rebase patch for latest U-Boot (v2019.10)
>> >
>> >Change in v2:
>> > - Move function erratum_a050106() under the scope of
>> > CONFIG_FSL_LSCH3 to avoid compilation warning of
>> > 'defined but not used'.
>> >
>> > arch/arm/cpu/armv8/fsl-layerscape/Kconfig | 4 ++++
>> > arch/arm/cpu/armv8/fsl-layerscape/soc.c | 12 +++++++++++-
>> > arch/arm/include/asm/arch-fsl-layerscape/immap_lsch3.h | 6 ++++++
>> > 3 files changed, 21 insertions(+), 1 deletion(-)
>> >
>> >diff --git a/arch/arm/cpu/armv8/fsl-layerscape/Kconfig
>> >b/arch/arm/cpu/armv8/fsl-layerscape/Kconfig
>> >index f1578b1..c7f28b6 100644
>> >--- a/arch/arm/cpu/armv8/fsl-layerscape/Kconfig
>> >+++ b/arch/arm/cpu/armv8/fsl-layerscape/Kconfig
>> >@@ -219,6 +219,7 @@ config ARCH_LX2160A
>> > select SYS_FSL_DDR_VER_50
>> > select SYS_FSL_EC1
>> > select SYS_FSL_EC2
>> >+ select SYS_FSL_ERRATUM_A050106
>> > select SYS_FSL_HAS_RGMII
>> > select SYS_FSL_HAS_SEC
>> > select SYS_FSL_HAS_CCN508
>> >@@ -348,6 +349,9 @@ config SYS_FSL_ERRATUM_A009008 config
>> >SYS_FSL_ERRATUM_A009798
>> > bool "Workaround for USB PHY erratum A009798"
>> >
>> >+config SYS_FSL_ERRATUM_A050106
>> >+ bool "Workaround for USB PHY erratum A050106"
>> >+
>> Please fix checkpatch warning
>> WARNING: please write a paragraph that describes the config symbol
>> fully
>> #35: FILE: arch/arm/cpu/armv8/fsl-layerscape/Kconfig:352:
>> +config SYS_FSL_ERRATUM_A050106
>>
>> total: 0 errors, 1 warnings, 0 checks, 60 lines checked
>
>Actually I followed the history erratum workaround patches to do this.
>And it seems to be OK to ignore that warning,
>
>Please check:
>http://patchwork.ozlabs.org/patch/809597/
>http://patchwork.ozlabs.org/patch/809598/
>http://patchwork.ozlabs.org/patch/809603/
>http://patchwork.ozlabs.org/patch/809599/
>http://patchwork.ozlabs.org/patch/809604/
>http://patchwork.ozlabs.org/patch/809600/
>http://patchwork.ozlabs.org/patch/809601/
>http://patchwork.ozlabs.org/patch/809602/
>http://patchwork.ozlabs.org/patch/817358/
>http://patchwork.ozlabs.org/patch/1098612/
>
>Thanks & Regards,
>Ran
Even though in past , this warning might not have exist or we have ignore this,
But such details help in better code readability.
-priyankajain
^ permalink raw reply [flat|nested] 5+ messages in thread
* [U-Boot] [PATCH v4] armv8: Add workaround for USB erratum A-050106
2019-11-25 3:54 ` Priyanka Jain
@ 2019-11-25 10:58 ` Ran Wang
0 siblings, 0 replies; 5+ messages in thread
From: Ran Wang @ 2019-11-25 10:58 UTC (permalink / raw)
To: u-boot
Hi Priyanka,
> -----Original Message-----
> From: Priyanka Jain <priyanka.jain@nxp.com>
> Sent: Monday, November 25, 2019 11:54
> To: Ran Wang <ran.wang_1@nxp.com>
> Cc: u-boot at lists.denx.de; Albert Aribaud <albert.u.boot@aribaud.net>
> Subject: RE: [PATCH v4] armv8: Add workaround for USB erratum A-050106
>
>
>
> >-----Original Message-----
> >From: Ran Wang <ran.wang_1@nxp.com>
> >Sent: Thursday, November 21, 2019 12:26 PM
> >To: Priyanka Jain <priyanka.jain@nxp.com>
> >Cc: u-boot at lists.denx.de; Albert Aribaud <albert.u.boot@aribaud.net>
> >Subject: RE: [PATCH v4] armv8: Add workaround for USB erratum A-050106
> >
> >Hi Priyanka,
> >
> >On Thursday, November 21, 2019 13:26, Priyanka Jain wrote:
> >>
> >>
> >>
> >> >-----Original Message-----
> >> >From: Ran Wang <ran.wang_1@nxp.com>
> >> >Sent: Wednesday, November 13, 2019 11:20 AM
> >> >To: Priyanka Jain <priyanka.jain@nxp.com>; Albert Aribaud
> >> ><albert.u.boot@aribaud.net>
> >> >Cc: u-boot at lists.denx.de; Ran Wang <ran.wang_1@nxp.com>
> >> >Subject: [PATCH v4] armv8: Add workaround for USB erratum A-050106
> >> >
> >> >USB3.0 Receiver needs to enable fixed equalization for each of PHY
> >> >instances in an SOC. This is similar to erratum A-009007, but this
> >> >one is for LX2160A, and the register value is different.
> >> >
> >> >Signed-off-by: Ran Wang <ran.wang_1@nxp.com>
> >> >---
> >> >Change in v4:
> >> > - Include defines of USB_PHY_RX_EQ_VAL_3 and
> >> >USB_PHY_RX_EQ_VAL_4 for
> >> > LS1028A to fix compile failure.
> >> >
> >> >Change in v3:
> >> > - Rebase patch for latest U-Boot (v2019.10)
> >> >
> >> >Change in v2:
> >> > - Move function erratum_a050106() under the scope of
> >> > CONFIG_FSL_LSCH3 to avoid compilation warning of
> >> > 'defined but not used'.
> >> >
> >> > arch/arm/cpu/armv8/fsl-layerscape/Kconfig | 4 ++++
> >> > arch/arm/cpu/armv8/fsl-layerscape/soc.c | 12 +++++++++++-
> >> > arch/arm/include/asm/arch-fsl-layerscape/immap_lsch3.h | 6 ++++++
> >> > 3 files changed, 21 insertions(+), 1 deletion(-)
> >> >
> >> >diff --git a/arch/arm/cpu/armv8/fsl-layerscape/Kconfig
> >> >b/arch/arm/cpu/armv8/fsl-layerscape/Kconfig
> >> >index f1578b1..c7f28b6 100644
> >> >--- a/arch/arm/cpu/armv8/fsl-layerscape/Kconfig
> >> >+++ b/arch/arm/cpu/armv8/fsl-layerscape/Kconfig
> >> >@@ -219,6 +219,7 @@ config ARCH_LX2160A
> >> > select SYS_FSL_DDR_VER_50
> >> > select SYS_FSL_EC1
> >> > select SYS_FSL_EC2
> >> >+ select SYS_FSL_ERRATUM_A050106
> >> > select SYS_FSL_HAS_RGMII
> >> > select SYS_FSL_HAS_SEC
> >> > select SYS_FSL_HAS_CCN508
> >> >@@ -348,6 +349,9 @@ config SYS_FSL_ERRATUM_A009008 config
> >> >SYS_FSL_ERRATUM_A009798
> >> > bool "Workaround for USB PHY erratum A009798"
> >> >
> >> >+config SYS_FSL_ERRATUM_A050106
> >> >+ bool "Workaround for USB PHY erratum A050106"
> >> >+
> >> Please fix checkpatch warning
> >> WARNING: please write a paragraph that describes the config symbol
> >> fully
> >> #35: FILE: arch/arm/cpu/armv8/fsl-layerscape/Kconfig:352:
> >> +config SYS_FSL_ERRATUM_A050106
> >>
> >> total: 0 errors, 1 warnings, 0 checks, 60 lines checked
> >
> >Actually I followed the history erratum workaround patches to do this.
> >And it seems to be OK to ignore that warning,
> >
> >Please check:
> >http://patchwork.ozlabs.org/patch/809597/
> >http://patchwork.ozlabs.org/patch/809598/
> >http://patchwork.ozlabs.org/patch/809603/
> >http://patchwork.ozlabs.org/patch/809599/
> >http://patchwork.ozlabs.org/patch/809604/
> >http://patchwork.ozlabs.org/patch/809600/
> >http://patchwork.ozlabs.org/patch/809601/
> >http://patchwork.ozlabs.org/patch/809602/
> >http://patchwork.ozlabs.org/patch/817358/
> >http://patchwork.ozlabs.org/patch/1098612/
> >
> >Thanks & Regards,
> >Ran
> Even though in past , this warning might not have exist or we have ignore
> this, But such details help in better code readability.
OK, let me add more details in next version.
Thanks & Regards,
Ran
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2019-11-25 10:58 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-11-13 5:50 [U-Boot] [PATCH v4] armv8: Add workaround for USB erratum A-050106 Ran Wang
2019-11-21 5:26 ` Priyanka Jain
2019-11-21 6:55 ` Ran Wang
2019-11-25 3:54 ` Priyanka Jain
2019-11-25 10:58 ` Ran Wang
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.