From: claudiu beznea <claudiu.beznea@tuxon.dev> To: Varshini.Rajendran@microchip.com, robh+dt@kernel.org, krzysztof.kozlowski+dt@linaro.org, conor+dt@kernel.org, tglx@linutronix.de, Nicolas.Ferre@microchip.com, alexandre.belloni@bootlin.com, andre.przywara@arm.com, mani@kernel.org, shawnguo@kernel.org, Durai.ManickamKR@microchip.com, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org Subject: Re: [PATCH v4 29/39] irqchip/atmel-aic5: Add support to get nirqs from DT for sam9x60 & sam9x7 Date: Sat, 9 Mar 2024 15:13:11 +0200 [thread overview] Message-ID: <fe9a8936-3b7f-4460-8dba-85cc811d1253@tuxon.dev> (raw) In-Reply-To: <ba7a59ae-d377-4514-89e7-86991420507c@microchip.com> On 08.03.2024 10:50, Varshini.Rajendran@microchip.com wrote: > On 03/03/24 5:51 pm, claudiu beznea wrote: >> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe >> >> On 23.02.2024 19:29, Varshini Rajendran wrote: >>> Add support to get number of IRQs from the respective DT node for sam9x60 >>> and sam9x7 devices. Since only this factor differs between the two SoCs, >>> this patch adds support for the same. Adapt the sam9x60 dtsi >>> accordingly. >>> >>> Signed-off-by: Varshini Rajendran <varshini.rajendran@microchip.com> >>> --- >>> Changes in v4: >>> - Changed the implementation to fetch the NIRQs from DT as per the >>> comment to avoid introducing a new compatible when this is the only >>> difference between the SoCs related to this IP. >>> --- >>> arch/arm/boot/dts/microchip/sam9x60.dtsi | 1 + >>> drivers/irqchip/irq-atmel-aic5.c | 11 ++++++++--- >>> 2 files changed, 9 insertions(+), 3 deletions(-) >>> >>> diff --git a/arch/arm/boot/dts/microchip/sam9x60.dtsi b/arch/arm/boot/dts/microchip/sam9x60.dtsi >>> index 73d570a17269..e405f68c9f54 100644 >>> --- a/arch/arm/boot/dts/microchip/sam9x60.dtsi >>> +++ b/arch/arm/boot/dts/microchip/sam9x60.dtsi >>> @@ -1201,6 +1201,7 @@ aic: interrupt-controller@fffff100 { >>> interrupt-controller; >>> reg = <0xfffff100 0x100>; >>> atmel,external-irqs = <31>; >>> + microchip,nr-irqs = <50>; >>> }; >>> >>> dbgu: serial@fffff200 { >>> diff --git a/drivers/irqchip/irq-atmel-aic5.c b/drivers/irqchip/irq-atmel-aic5.c >>> index 145535bd7560..5d96ad8860d3 100644 >>> --- a/drivers/irqchip/irq-atmel-aic5.c >>> +++ b/drivers/irqchip/irq-atmel-aic5.c >>> @@ -398,11 +398,16 @@ static int __init sama5d4_aic5_of_init(struct device_node *node, >>> } >>> IRQCHIP_DECLARE(sama5d4_aic5, "atmel,sama5d4-aic", sama5d4_aic5_of_init); >>> >>> -#define NR_SAM9X60_IRQS 50 >>> - >>> static int __init sam9x60_aic5_of_init(struct device_node *node, >>> struct device_node *parent) >>> { >>> - return aic5_of_init(node, parent, NR_SAM9X60_IRQS); >>> + int ret, nr_irqs; >>> + >>> + ret = of_property_read_u32(node, "microchip,nr-irqs", &nr_irqs); >>> + if (ret) { >>> + pr_err("Not found microchip,nr-irqs property\n"); >> >> This breaks the ABI. You should ensure old device trees are still working >> with this patch. > > The only older device that uses this API is sam9x60 and the newly added > sam9x7. This change has been tested to be working fine in both the > devices. As Conor explained, the code in this patch should work with device trees from previous kernel releases (thus not having microchip,nr-irqs DT binding). > If you still want me to use the macros as a fallback in the > failure case I can do it. But this change was proposed to avoid adding > macros in the first place. I can remove the error check just like they > do while getting other device tree properties. Or if this is just a > concern of the old devices working with the new change, then sam9x60 > works. Please let me know how to proceed. >> >>> + return ret; >>> + } >>> + return aic5_of_init(node, parent, nr_irqs); >>> } >>> IRQCHIP_DECLARE(sam9x60_aic5, "microchip,sam9x60-aic", sam9x60_aic5_of_init); >
WARNING: multiple messages have this Message-ID (diff)
From: claudiu beznea <claudiu.beznea@tuxon.dev> To: Varshini.Rajendran@microchip.com, robh+dt@kernel.org, krzysztof.kozlowski+dt@linaro.org, conor+dt@kernel.org, tglx@linutronix.de, Nicolas.Ferre@microchip.com, alexandre.belloni@bootlin.com, andre.przywara@arm.com, mani@kernel.org, shawnguo@kernel.org, Durai.ManickamKR@microchip.com, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org Subject: Re: [PATCH v4 29/39] irqchip/atmel-aic5: Add support to get nirqs from DT for sam9x60 & sam9x7 Date: Sat, 9 Mar 2024 15:13:11 +0200 [thread overview] Message-ID: <fe9a8936-3b7f-4460-8dba-85cc811d1253@tuxon.dev> (raw) In-Reply-To: <ba7a59ae-d377-4514-89e7-86991420507c@microchip.com> On 08.03.2024 10:50, Varshini.Rajendran@microchip.com wrote: > On 03/03/24 5:51 pm, claudiu beznea wrote: >> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe >> >> On 23.02.2024 19:29, Varshini Rajendran wrote: >>> Add support to get number of IRQs from the respective DT node for sam9x60 >>> and sam9x7 devices. Since only this factor differs between the two SoCs, >>> this patch adds support for the same. Adapt the sam9x60 dtsi >>> accordingly. >>> >>> Signed-off-by: Varshini Rajendran <varshini.rajendran@microchip.com> >>> --- >>> Changes in v4: >>> - Changed the implementation to fetch the NIRQs from DT as per the >>> comment to avoid introducing a new compatible when this is the only >>> difference between the SoCs related to this IP. >>> --- >>> arch/arm/boot/dts/microchip/sam9x60.dtsi | 1 + >>> drivers/irqchip/irq-atmel-aic5.c | 11 ++++++++--- >>> 2 files changed, 9 insertions(+), 3 deletions(-) >>> >>> diff --git a/arch/arm/boot/dts/microchip/sam9x60.dtsi b/arch/arm/boot/dts/microchip/sam9x60.dtsi >>> index 73d570a17269..e405f68c9f54 100644 >>> --- a/arch/arm/boot/dts/microchip/sam9x60.dtsi >>> +++ b/arch/arm/boot/dts/microchip/sam9x60.dtsi >>> @@ -1201,6 +1201,7 @@ aic: interrupt-controller@fffff100 { >>> interrupt-controller; >>> reg = <0xfffff100 0x100>; >>> atmel,external-irqs = <31>; >>> + microchip,nr-irqs = <50>; >>> }; >>> >>> dbgu: serial@fffff200 { >>> diff --git a/drivers/irqchip/irq-atmel-aic5.c b/drivers/irqchip/irq-atmel-aic5.c >>> index 145535bd7560..5d96ad8860d3 100644 >>> --- a/drivers/irqchip/irq-atmel-aic5.c >>> +++ b/drivers/irqchip/irq-atmel-aic5.c >>> @@ -398,11 +398,16 @@ static int __init sama5d4_aic5_of_init(struct device_node *node, >>> } >>> IRQCHIP_DECLARE(sama5d4_aic5, "atmel,sama5d4-aic", sama5d4_aic5_of_init); >>> >>> -#define NR_SAM9X60_IRQS 50 >>> - >>> static int __init sam9x60_aic5_of_init(struct device_node *node, >>> struct device_node *parent) >>> { >>> - return aic5_of_init(node, parent, NR_SAM9X60_IRQS); >>> + int ret, nr_irqs; >>> + >>> + ret = of_property_read_u32(node, "microchip,nr-irqs", &nr_irqs); >>> + if (ret) { >>> + pr_err("Not found microchip,nr-irqs property\n"); >> >> This breaks the ABI. You should ensure old device trees are still working >> with this patch. > > The only older device that uses this API is sam9x60 and the newly added > sam9x7. This change has been tested to be working fine in both the > devices. As Conor explained, the code in this patch should work with device trees from previous kernel releases (thus not having microchip,nr-irqs DT binding). > If you still want me to use the macros as a fallback in the > failure case I can do it. But this change was proposed to avoid adding > macros in the first place. I can remove the error check just like they > do while getting other device tree properties. Or if this is just a > concern of the old devices working with the new change, then sam9x60 > works. Please let me know how to proceed. >> >>> + return ret; >>> + } >>> + return aic5_of_init(node, parent, nr_irqs); >>> } >>> IRQCHIP_DECLARE(sam9x60_aic5, "microchip,sam9x60-aic", sam9x60_aic5_of_init); > _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2024-03-09 13:13 UTC|newest] Thread overview: 179+ messages / expand[flat|nested] mbox.gz Atom feed top 2024-02-23 17:13 [PATCH v4 00/39] Add support for sam9x7 SoC family Varshini Rajendran 2024-02-23 17:13 ` Varshini Rajendran 2024-02-23 17:22 ` [PATCH v4 01/39] dt-bindings: net: cdns,macb: add sam9x7 ethernet interface Varshini Rajendran 2024-02-23 17:22 ` [PATCH v4 02/39] dt-bindings: atmel-sysreg: add sam9x7 Varshini Rajendran 2024-02-23 17:22 ` Varshini Rajendran 2024-02-23 17:23 ` [PATCH v4 03/39] dt-bindings: crypto: add sam9x7 in Atmel AES Varshini Rajendran 2024-02-23 17:23 ` Varshini Rajendran 2024-02-26 9:18 ` Tudor Ambarus 2024-02-26 9:18 ` Tudor Ambarus 2024-02-23 17:23 ` [PATCH v4 04/39] dt-bindings: crypto: add sam9x7 in Atmel SHA Varshini Rajendran 2024-02-23 17:23 ` Varshini Rajendran 2024-02-26 9:23 ` Tudor Ambarus 2024-02-26 9:23 ` Tudor Ambarus 2024-02-23 17:24 ` [PATCH v4 05/39] dt-bindings: crypto: add sam9x7 in Atmel TDES Varshini Rajendran 2024-02-23 17:24 ` Varshini Rajendran 2024-02-24 19:50 ` Conor Dooley 2024-02-24 19:50 ` Conor Dooley 2024-02-26 9:24 ` Tudor Ambarus 2024-02-26 9:24 ` Tudor Ambarus 2024-02-23 17:24 ` [PATCH v4 06/39] dt-bindings: i2c: at91: Add sam9x7 compatible string Varshini Rajendran 2024-02-23 17:24 ` Varshini Rajendran 2024-02-24 19:49 ` Conor Dooley 2024-02-24 19:49 ` Conor Dooley 2024-02-23 17:25 ` [PATCH v4 07/39] dt-bindings: atmel-ssc: add microchip,sam9x7-ssc Varshini Rajendran 2024-02-23 17:25 ` Varshini Rajendran 2024-02-23 17:25 ` [PATCH v4 08/39] dt-bindings: atmel-nand: add microchip,sam9x7-pmecc Varshini Rajendran 2024-02-23 17:25 ` Varshini Rajendran 2024-02-23 17:25 ` Varshini Rajendran 2024-02-24 19:50 ` Conor Dooley 2024-02-24 19:50 ` Conor Dooley 2024-02-24 19:50 ` Conor Dooley 2024-02-26 10:43 ` Miquel Raynal 2024-02-26 10:43 ` Miquel Raynal 2024-02-26 10:43 ` Miquel Raynal 2024-02-23 17:25 ` [PATCH v4 09/39] dt-bindings: pinctrl: at91: add sam9x7 Varshini Rajendran 2024-02-23 17:25 ` Varshini Rajendran 2024-02-29 13:41 ` Linus Walleij 2024-02-29 13:41 ` Linus Walleij 2024-02-23 17:25 ` [PATCH v4 10/39] dt-bindings: rng: atmel,at91-trng: add sam9x7 TRNG Varshini Rajendran 2024-02-23 17:25 ` Varshini Rajendran 2024-02-23 17:25 ` [PATCH v4 11/39] dt-bindings: rtt: at91rm9260: add sam9x7 compatible Varshini Rajendran 2024-02-23 17:25 ` Varshini Rajendran 2024-02-24 19:51 ` Conor Dooley 2024-02-24 19:51 ` Conor Dooley 2024-02-29 21:27 ` (subset) " Alexandre Belloni 2024-02-29 21:27 ` Alexandre Belloni 2024-02-23 17:25 ` [PATCH v4 12/39] dt-bindings: serial: atmel,at91-usart: add compatible for sam9x7 Varshini Rajendran 2024-02-23 17:25 ` Varshini Rajendran 2024-02-24 20:02 ` Conor Dooley 2024-02-24 20:02 ` Conor Dooley 2024-02-28 7:03 ` Varshini.Rajendran 2024-02-28 7:03 ` Varshini.Rajendran 2024-02-28 11:49 ` Conor Dooley 2024-02-28 11:49 ` Conor Dooley 2024-02-29 8:55 ` Varshini.Rajendran 2024-02-29 8:55 ` Varshini.Rajendran 2024-02-29 18:26 ` Conor Dooley 2024-02-29 18:26 ` Conor Dooley 2024-02-23 17:26 ` [PATCH v4 13/39] ASoC: dt-bindings: atmel-classd: add sam9x7 compatible Varshini Rajendran 2024-02-23 17:26 ` Varshini Rajendran 2024-02-24 19:48 ` Conor Dooley 2024-02-24 19:48 ` Conor Dooley 2024-02-23 17:26 ` [PATCH v4 14/39] dt-bindings: pwm: at91: Add sam9x7 compatible strings list Varshini Rajendran 2024-02-23 17:26 ` Varshini Rajendran 2024-02-24 20:03 ` Conor Dooley 2024-02-24 20:03 ` Conor Dooley [not found] ` <igmm3npqcnjuhhncfd22pjhjuzbtsl25jfzbpcsyx5bu2xbbto@ynp7psnpldxr> 2024-03-18 8:55 ` Uwe Kleine-König 2024-03-18 8:55 ` Uwe Kleine-König 2024-02-23 17:26 ` [PATCH v4 15/39] dt-bindings: watchdog: sama5d4-wdt: add compatible for sam9x7-wdt Varshini Rajendran 2024-02-23 17:26 ` Varshini Rajendran 2024-02-24 20:04 ` Conor Dooley 2024-02-24 20:04 ` Conor Dooley 2024-02-23 17:26 ` [PATCH v4 16/39] spi: dt-bindings: atmel,at91rm9200-spi: remove 9x60 compatible from list Varshini Rajendran 2024-02-23 17:26 ` Varshini Rajendran 2024-02-26 9:09 ` Tudor Ambarus 2024-02-26 9:09 ` Tudor Ambarus 2024-02-28 9:28 ` Varshini.Rajendran 2024-02-28 9:28 ` Varshini.Rajendran 2024-02-28 9:38 ` Tudor Ambarus 2024-02-28 9:38 ` Tudor Ambarus 2024-02-23 17:26 ` [PATCH v4 17/39] ASoC: dt-bindings: microchip: add sam9x7 Varshini Rajendran 2024-02-23 17:27 ` [PATCH v4 18/39] ARM: at91: pm: add support for sam9x7 SoC family Varshini Rajendran 2024-02-23 17:27 ` Varshini Rajendran 2024-03-03 12:20 ` claudiu beznea 2024-03-03 12:20 ` claudiu beznea 2024-02-23 17:27 ` [PATCH v4 19/39] ARM: at91: pm: add sam9x7 SoC init config Varshini Rajendran 2024-02-23 17:27 ` Varshini Rajendran 2024-03-03 12:20 ` claudiu beznea 2024-03-03 12:20 ` claudiu beznea 2024-02-23 17:27 ` [PATCH v4 20/39] ARM: at91: add support in SoC driver for new sam9x7 Varshini Rajendran 2024-02-23 17:27 ` Varshini Rajendran 2024-02-26 17:01 ` Nicolas Ferre 2024-02-26 17:01 ` Nicolas Ferre 2024-03-03 12:21 ` claudiu beznea 2024-03-03 12:21 ` claudiu beznea 2024-02-23 17:27 ` [PATCH v4 21/39] dt-bindings: clk: at91: add sam9x7 Varshini Rajendran 2024-02-23 17:27 ` Varshini Rajendran 2024-02-24 20:05 ` Conor Dooley 2024-02-24 20:05 ` Conor Dooley 2024-03-11 5:32 ` claudiu beznea 2024-03-11 5:32 ` claudiu beznea 2024-02-23 17:27 ` [PATCH v4 22/39] dt-bindings: clk: at91: add sam9x7 clock controller Varshini Rajendran 2024-02-23 17:27 ` Varshini Rajendran 2024-02-24 20:06 ` Conor Dooley 2024-02-24 20:06 ` Conor Dooley 2024-03-11 5:33 ` claudiu beznea 2024-03-11 5:33 ` claudiu beznea 2024-02-23 17:27 ` [PATCH v4 23/39] clk: at91: clk-sam9x60-pll: re-factor to support individual core freq outputs Varshini Rajendran 2024-02-23 17:27 ` Varshini Rajendran 2024-02-23 17:27 ` [PATCH v4 24/39] clk: at91: sam9x7: add support for HW PLL freq dividers Varshini Rajendran 2024-02-23 17:27 ` Varshini Rajendran 2024-03-11 5:34 ` claudiu beznea 2024-03-11 5:34 ` claudiu beznea 2024-02-23 17:28 ` [PATCH v4 25/39] clk: at91: sama7g5: move mux table macros to header file Varshini Rajendran 2024-02-23 17:28 ` Varshini Rajendran 2024-02-23 17:28 ` [PATCH v4 26/39] dt-bindings: clock: at91: Allow PLLs to be exported and referenced in DT Varshini Rajendran 2024-02-23 17:28 ` Varshini Rajendran 2024-03-01 21:26 ` Rob Herring 2024-03-01 21:26 ` Rob Herring 2024-02-23 17:28 ` [PATCH v4 27/39] clk: at91: sam9x7: add sam9x7 pmc driver Varshini Rajendran 2024-02-23 17:28 ` Varshini Rajendran 2024-03-11 5:58 ` claudiu beznea 2024-03-11 5:58 ` claudiu beznea 2024-03-18 9:25 ` Varshini.Rajendran 2024-03-18 9:25 ` Varshini.Rajendran 2024-03-18 20:17 ` claudiu beznea 2024-03-18 20:17 ` claudiu beznea 2024-02-23 17:28 ` [PATCH v4 28/39] dt-bindings: irqchip/atmel-aic5: Add support for sam9x7 aic Varshini Rajendran 2024-02-23 17:28 ` Varshini Rajendran 2024-02-23 17:29 ` [PATCH v4 29/39] irqchip/atmel-aic5: Add support to get nirqs from DT for sam9x60 & sam9x7 Varshini Rajendran 2024-02-23 17:29 ` Varshini Rajendran 2024-03-03 12:21 ` claudiu beznea 2024-03-03 12:21 ` claudiu beznea 2024-03-08 8:50 ` Varshini.Rajendran 2024-03-08 8:50 ` Varshini.Rajendran 2024-03-08 10:15 ` Conor Dooley 2024-03-08 10:15 ` Conor Dooley 2024-03-09 13:13 ` claudiu beznea [this message] 2024-03-09 13:13 ` claudiu beznea 2024-02-23 17:29 ` [PATCH v4 30/39] power: reset: at91-poweroff: lookup for proper pmc dt node for sam9x7 Varshini Rajendran 2024-02-23 17:29 ` Varshini Rajendran 2024-03-03 12:22 ` claudiu beznea 2024-03-03 12:22 ` claudiu beznea 2024-02-23 17:29 ` [PATCH v4 31/39] power: reset: at91-reset: add reset support for sam9x7 SoC Varshini Rajendran 2024-02-23 17:30 ` [PATCH v4 32/39] power: reset: at91-reset: add sdhwc " Varshini Rajendran 2024-02-23 17:30 ` [PATCH v4 33/39] dt-bindings: reset: atmel,at91sam9260-reset: add sam9x7 Varshini Rajendran 2024-02-23 17:30 ` Varshini Rajendran 2024-02-23 17:30 ` [PATCH v4 34/39] dt-bindings: power: reset: atmel,sama5d2-shdwc: " Varshini Rajendran 2024-02-23 17:30 ` Varshini Rajendran 2024-02-23 17:30 ` [PATCH v4 35/39] ARM: at91: Kconfig: add config flag for SAM9X7 SoC Varshini Rajendran 2024-02-23 17:30 ` Varshini Rajendran 2024-03-03 12:22 ` claudiu beznea 2024-03-03 12:22 ` claudiu beznea 2024-02-23 17:30 ` [PATCH v4 36/39] ARM: configs: at91: enable config flags for sam9x7 SoC family Varshini Rajendran 2024-02-23 17:30 ` Varshini Rajendran 2024-02-23 17:30 ` [PATCH v4 37/39] ARM: dts: at91: sam9x7: add device tree for SoC Varshini Rajendran 2024-03-03 12:24 ` claudiu beznea 2024-03-04 16:33 ` Varshini.Rajendran 2024-03-06 8:38 ` claudiu beznea 2024-02-23 17:31 ` [PATCH v4 38/39] dt-bindings: arm: add sam9x75 curiosity board Varshini Rajendran 2024-02-23 17:31 ` Varshini Rajendran 2024-03-01 21:26 ` Rob Herring 2024-03-01 21:26 ` Rob Herring 2024-02-23 17:31 ` [PATCH v4 39/39] ARM: dts: at91: sam9x75_curiosity: " Varshini Rajendran 2024-02-23 17:31 ` Varshini Rajendran 2024-03-03 12:19 ` claudiu beznea 2024-03-03 12:19 ` claudiu beznea 2024-03-08 9:48 ` Varshini.Rajendran 2024-03-08 9:48 ` Varshini.Rajendran 2024-02-24 1:18 ` (subset) [PATCH v4 00/39] Add support for sam9x7 SoC family Mark Brown 2024-02-24 1:18 ` Mark Brown 2024-02-27 1:21 ` Andi Shyti 2024-02-27 1:21 ` Andi Shyti 2024-02-27 3:20 ` patchwork-bot+netdevbpf 2024-02-27 3:20 ` patchwork-bot+netdevbpf 2024-02-28 15:53 ` (subset) " Mark Brown 2024-02-28 15:53 ` Mark Brown 2024-03-01 10:51 ` Herbert Xu 2024-03-01 10:51 ` Herbert Xu
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=fe9a8936-3b7f-4460-8dba-85cc811d1253@tuxon.dev \ --to=claudiu.beznea@tuxon.dev \ --cc=Durai.ManickamKR@microchip.com \ --cc=Nicolas.Ferre@microchip.com \ --cc=Varshini.Rajendran@microchip.com \ --cc=alexandre.belloni@bootlin.com \ --cc=andre.przywara@arm.com \ --cc=conor+dt@kernel.org \ --cc=devicetree@vger.kernel.org \ --cc=krzysztof.kozlowski+dt@linaro.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=mani@kernel.org \ --cc=robh+dt@kernel.org \ --cc=shawnguo@kernel.org \ --cc=tglx@linutronix.de \ /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: linkBe 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.