All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jyri Sarha <jsarha@ti.com>
To: alsa-devel@alsa-project.org, devicetree@vger.kernel.org
Cc: linux-omap@vger.kernel.org, broonie@kernel.org,
	mark.rutland@arm.com, joelf@ti.com, Jyri Sarha <jsarha@ti.com>
Subject: [PATCH v4 00/10] Fix AM335x-evm analog audio support
Date: Tue, 8 Oct 2013 22:36:31 +0300	[thread overview]
Message-ID: <cover.1381259962.git.jsarha@ti.com> (raw)
In-Reply-To: <cover.1379409268.git.jsarha@ti.com>

The v3 version of patches can be found here:
http://mailman.alsa-project.org/pipermail/alsa-devel/2013-September/066728.html
The v2 version of patches can be found here:
http://mailman.alsa-project.org/pipermail/alsa-devel/2013-September/066379.html
The RFC version of patches can been found here:
http://mailman.alsa-project.org/pipermail/alsa-devel/2013-September/066178.html

Changes since v3
  - Rebased on top of v3.12-rc4
  - Drop already applied patches:
    - [PATCH v2 01/11] ASoC: davinci-evm: Move sysclk logic away from evm_hw_params
    - [PATCH v2 06/11] ASoC: davinci: Add support for AM33xx SoC Audio
    - [PATCH v2 07/11] ASoC: tlv320aic3x: Add regulators to DT bindings document
    - [PATCH v2 08/11] ASoC: tlv320aic3x: Add codec pins to DT bindings document
  - Add: ASoC: davinci: Fix AM33xx SoC Audio support
    - Contains the fixes from Peter:
      http://mailman.alsa-project.org/pipermail/alsa-devel/2013-September/066448.html
    - Contents of this patch were squashed to "[PATCH v3 06/11] ASoC:
      davinci: Add support for AM33xx SoC Audio", but since the patch v2 was
      already applied the changes are here as a separate patch.
  - Add: ASoC: davinci-mcasp: Remove redundant num-serializer DT parameter
  - Change: ASoC: davinci-mcasp: Add DMA register locations to DT
    to: ASoC: davinci-mcasp: Add location for data port registers to DT
    - Use more accurate name for data port register location
    - Improve commit message
  - Change: ASoC: davinci-mcasp: Interrupts property to optional and add interrupt-names
    to: ASoC: davinci-mcasp: Improve DT bindings document
    - Remove #address-cells and #size-cells
    - Bracket named interrupts tuples
    - Add missing "for" to serial-dir description
    - Improve tdm-slots description
    - Improve op-mode description
    - Add pinctrl-names and pinctrl-0 descriptions
  - Change: ARM/dts: am335x-evm: Add audio support for am335x-evm.dts
    - Use board specific name 'AM335x-EVM' for the soundcard.
    - Use the board specific tlv320aic3106 codec. Use this name instead of generic
      tlv320aic3x.
    - Remove num-serializer property from mcasp node
    - Remove blank lines
  - Change: ARM/dts: am33xx: Add mcasp0 and mcasp1 device tree entries
    - Bracket all named property tuples
  - Add: ARM/dts: am335x-evmsk: Audio support
  - The other patches in the set not mentioned here are identical to their
    earlier version

Changes since v2
  [PATCH v2 01/11] ASoC: davinci-evm: Move sysclk logic away from evm_hw_params
   - no change
  [PATCH v2 02/11] ASoC: davinci-evm: Add device tree binding
   - no change
  [PATCH v2 03/11] ASoC: davinci-mcasp: Add DMA register locations to DT
   - no change
  [PATCH v2 04/11] ASoC: davinci-mcasp: Extract DMA channels directly from DT
   - no change
  [PATCH v2 05/11] ASoC: davinci-mcasp: Remove interrupt property from DT bindin
   - restore binding but make it optional and add interrupt-names property
  [PATCH v2 06/11] ASoC: davinci: Add support for AM33xx SoC Audio
   - SND_DAVINCI_SOC help "Machine driver for ..." -> "Platform driver for ..."
   - SND_AM33XX_SOC_EVM depends on SND_DAVINCI_SOC && SOC_AM33XX 
   - SND_AM33XX_SOC_EVM does not selcet SND_DAVINCI_SOC
  [PATCH v2 07/11] ASoC: tlv320aic3x: Add regulators to DT bindings document
   - no change
  [PATCH v2 08/11] ASoC: tlv320aic3x: Add codec pins to DT bindings document
   - no change
  [PATCH v2 09/11] ARM/dts: am33xx: Add mcasp0 and mcasp1 device tree entries
   - restore interrupt property and add interrupt-names property
  [PATCH v2 10/11] ARM/dts: am33xx: mcasp: Add new dma register location to reg-property
   - no change
  [PATCH v2 11/11] ARM/dts: am335x-evm: Add audio support for am335x-evm.dts
   - no change

Changes from RFC to v2
 - Dropped out "ASoC: davinci-mcasp: Add pinctrl support" since
   driver core is taking care of this now.
 - Cleanup am33xx audio build
 - Add regulators to tlv320aic3x DT binding document
 - Remove dm365-voice-codec-audio DT support as it has never
   been tested an probably does not work
 - Add output pins and Line In connector to davinci-evm-audio DT binding doc
 - Remove asp_chan_q and ram_chan_q properties from mcasp DT node
   in DT mode mcasp is hardcoded to event queue 0 (highest priority)
 - Add pins to tlv320aic3x DT bindings document. If I misunderstood
   Marks comment and this patch is not needed, then just leave it out
 Changes based on TI internal discussions
 - Move system clock rate logic away from from evm_hw_params soc-op
 - Remove unnecesary #if defined(CONFIG_OF) from davinci-evm.c
 - Make dma property DT binding document more exact
 - Add only "dma" reg location instead of separate "dma-tx" and "dma-rx"
 - Primarily look for "mpu" reg property, but fall back to index 0 if not found
 - Remove interrupt property from mcasp DT node as it is not used
 - Remove #address-cells and #size-cells mcasp properties as they are not needed

The patch set depends on following patches:

[PATCH v11 4/8] ARM: dts: add AM33XX EDMA support 
     https://lkml.org/lkml/2013/6/18/49

[PATCH v11 5/8] ARM: dts: add AM33XX SPI DMA support
     https://lkml.org/lkml/2013/6/18/55

[PATCH v2 01/11] ASoC: davinci-evm: Move sysclk logic away from evm_hw_params 
     http://mailman.alsa-project.org/pipermail/alsa-devel/2013-September/066381.html

[PATCH v2 06/11] ASoC: davinci: Add support for AM33xx SoC Audio 
     http://mailman.alsa-project.org/pipermail/alsa-devel/2013-September/066385.html

This set of patches fixes the basic audio support for am335x-evm and
am335x-evmsk. It should be relatively simple to add the necessary
nodes to relevant dts files to get BeagleBone + AudioCape working too.

I have tried my best not to break the existing support for older
davinci boards, but since I do not have those boards I can not be
sure.

Some commit comments refer to a dmaengine based davinci audio
implementation which is planned for but nothing has been done yet.

Best regards,
Jyri

Darren Etheridge (1):
  ARM/dts: am335x-evm: Add audio support for am335x-evm.dts

Hebbar, Gururaja (1):
  ASoC: davinci-evm: Add device tree binding

Jyri Sarha (5):
  ASoC: davinci: Fix AM33xx SoC Audio support
  ASoC: davinci-mcasp: Add location for data port registers to DT
  ASoC: davinci-mcasp: Extract DMA channels directly from DT
  ASoC: davinci-mcasp: Improve DT bindings document
  ARM/dts: am33xx: mcasp: Add location for data port registers to
    reg-property

Pantelis Antoniou (1):
  ARM/dts: am33xx: Add mcasp0 and mcasp1 device tree entries

Peter Ujfalusi (2):
  ASoC: davinci-mcasp: Remove redundant num-serializer DT parameter
  ARM/dts: am335x-evmsk: Audio support

 .../bindings/sound/davinci-evm-audio.txt           |   58 +++++++++
 .../bindings/sound/davinci-mcasp-audio.txt         |   38 ++++--
 arch/arm/boot/dts/am335x-evm.dts                   |   54 +++++++++
 arch/arm/boot/dts/am335x-evmsk.dts                 |   51 ++++++++
 arch/arm/boot/dts/am33xx.dtsi                      |   29 +++++
 include/linux/platform_data/davinci_asp.h          |    2 +
 sound/soc/davinci/Kconfig                          |    4 +-
 sound/soc/davinci/davinci-evm.c                    |  120 +++++++++++++++++-
 sound/soc/davinci/davinci-mcasp.c                  |  128 ++++++++++++--------
 9 files changed, 417 insertions(+), 67 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/sound/davinci-evm-audio.txt

-- 
1.7.9.5


  parent reply	other threads:[~2013-10-08 19:36 UTC|newest]

Thread overview: 131+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-09-17  9:25 [PATCH v2 00/11] Fix AM335x-evm analog audio support jsarha-l0cyMroinI0
     [not found] ` <cover.1379409268.git.jsarha-l0cyMroinI0@public.gmane.org>
2013-09-17  9:26   ` [PATCH v2 01/11] ASoC: davinci-evm: Move sysclk logic away from evm_hw_params jsarha-l0cyMroinI0
2013-09-18  9:53     ` Mark Brown
2013-09-17  9:26   ` [PATCH v2 02/11] ASoC: davinci-evm: Add device tree binding jsarha-l0cyMroinI0
     [not found]     ` <b94659fe6bb26dd457c6c6d542db912896f327b0.1379409268.git.jsarha-l0cyMroinI0@public.gmane.org>
2013-09-18 14:38       ` [alsa-devel] " Mark Brown
2013-09-17  9:26   ` [PATCH v2 03/11] ASoC: davinci-mcasp: Add DMA register locations to DT jsarha-l0cyMroinI0
2013-09-18 14:39     ` Mark Brown
2013-09-17  9:26   ` [PATCH v2 04/11] ASoC: davinci-mcasp: Extract DMA channels directly from DT jsarha-l0cyMroinI0
     [not found]     ` <dc7012e1c2ae59c35eedd9328139f1060048b395.1379409268.git.jsarha-l0cyMroinI0@public.gmane.org>
2013-09-18 14:51       ` [alsa-devel] " Mark Brown
2013-09-17  9:26   ` [PATCH v2 05/11] ASoC: davinci-mcasp: Remove interrupt property from DT bindings doc jsarha-l0cyMroinI0
     [not found]     ` <1b47734e397bfac8846dcfc194fd1ab63f320d1a.1379409268.git.jsarha-l0cyMroinI0@public.gmane.org>
2013-09-18  5:50       ` Gururaja Hebbar
2013-09-18  7:40         ` Jyri Sarha
2013-09-18 14:46       ` [alsa-devel] " Mark Brown
     [not found]         ` <20130918144635.GT21013-GFdadSzt00ze9xe1eoZjHA@public.gmane.org>
2013-09-18 14:48           ` Nishanth Menon
     [not found]             ` <5239BD42.2060903-l0cyMroinI0@public.gmane.org>
2013-09-18 15:07               ` Mark Brown
2013-09-19 11:46       ` Peter Ujfalusi
2013-09-17  9:26   ` [PATCH v2 06/11] ASoC: davinci: Add support for AM33xx SoC Audio jsarha-l0cyMroinI0
     [not found]     ` <c59efc1524b19f50dc37606bfa246dde9c20d312.1379409268.git.jsarha-l0cyMroinI0@public.gmane.org>
2013-09-18 14:47       ` [alsa-devel] " Mark Brown
2013-09-18 18:09         ` Mark Brown
     [not found]           ` <20130918180946.GF21013-GFdadSzt00ze9xe1eoZjHA@public.gmane.org>
2013-09-19  9:31             ` [alsa-devel] " Jyri Sarha
2013-09-19  9:31       ` Peter Ujfalusi
2013-09-17  9:26   ` [PATCH v2 07/11] ASoC: tlv320aic3x: Add regulators to DT bindings document jsarha-l0cyMroinI0
     [not found]     ` <5281fbfa7e5a2090a2949c7b3941debbbc5ac397.1379409268.git.jsarha-l0cyMroinI0@public.gmane.org>
2013-09-18 14:48       ` [alsa-devel] " Mark Brown
2013-09-17  9:26   ` [PATCH v2 08/11] ASoC: tlv320aic3x: Add codec pins " jsarha-l0cyMroinI0
2013-09-18 14:50     ` Mark Brown
2013-09-17  9:26   ` [PATCH v2 09/11] ARM/dts: am33xx: Add mcasp0 and mcasp1 device tree entries jsarha-l0cyMroinI0
2013-09-17  9:26   ` [PATCH v2 10/11] ARM/dts: am33xx: mcasp: Add new dma register location to reg-property jsarha-l0cyMroinI0
2013-09-17  9:26   ` [PATCH v2 11/11] ARM/dts: am335x-evm: Add audio support for am335x-evm.dts jsarha-l0cyMroinI0
2013-09-18  9:42   ` [alsa-devel] [PATCH v2 00/11] Fix AM335x-evm analog audio support Mark Brown
2013-09-18  9:56     ` Jyri Sarha
2013-09-18 10:18       ` Mark Brown
2013-09-18 10:27         ` Jyri Sarha
2013-09-18 10:40           ` Mark Brown
2013-09-18 11:09             ` Jyri Sarha
2013-09-19 11:29   ` [PATCH v3 " Jyri Sarha
     [not found]     ` <cover.1379590035.git.jsarha-l0cyMroinI0@public.gmane.org>
2013-09-19 11:29       ` [PATCH v3 01/11] ASoC: davinci-evm: Move sysclk logic away from evm_hw_params Jyri Sarha
2013-09-19 13:23         ` Mark Brown
2013-09-19 13:43           ` Sarha, Jyri
2013-09-26 19:36         ` [RESEND PATCH " Mark Brown
2013-09-19 11:29       ` [PATCH v3 02/11] ASoC: davinci-evm: Add device tree binding Jyri Sarha
2013-09-19 11:29       ` [PATCH v3 03/11] ASoC: davinci-mcasp: Add DMA register locations to DT Jyri Sarha
2013-10-07 21:47         ` [RESEND PATCH " Mark Rutland
2013-10-08  0:46           ` Mark Brown
2013-10-10 16:59             ` Mark Rutland
2013-10-10 17:29               ` Peter Ujfalusi
2013-10-16 15:04                 ` Mark Rutland
2013-10-16 16:53                   ` Jyri Sarha
2013-10-08  9:13           ` Jyri Sarha
2013-10-08 10:07             ` Peter Ujfalusi
2013-09-19 11:29       ` [PATCH v3 05/11] ASoC: davinci-mcasp: Interrupts property to optional and add interrupt-names Jyri Sarha
2013-10-07 21:56         ` [RESEND PATCH " Mark Rutland
2013-10-08 10:38           ` Jyri Sarha
2013-09-19 11:29       ` [PATCH v3 08/11] ASoC: tlv320aic3x: Add codec pins to DT bindings document Jyri Sarha
2013-09-19 11:29       ` [PATCH v3 10/11] ARM/dts: am33xx: mcasp: Add new dma register location to reg-property Jyri Sarha
2013-10-07 22:00         ` [RESEND PATCH " Mark Rutland
2013-10-08 11:35           ` Jyri Sarha
2013-09-19 11:29       ` [PATCH v3 11/11] ARM/dts: am335x-evm: Add audio support for am335x-evm.dts Jyri Sarha
2013-10-07 22:02         ` [RESEND PATCH " Mark Rutland
2013-10-08 11:37           ` Jyri Sarha
2013-09-19 11:29     ` [PATCH v3 04/11] ASoC: davinci-mcasp: Extract DMA channels directly from DT Jyri Sarha
2013-10-07 21:53       ` [RESEND PATCH " Mark Rutland
2013-10-08  7:05         ` Jyri Sarha
2013-09-19 11:29     ` [PATCH v3 06/11] ASoC: davinci: Add support for AM33xx SoC Audio Jyri Sarha
2013-09-19 11:29     ` [PATCH v3 07/11] ASoC: tlv320aic3x: Add regulators to DT bindings document Jyri Sarha
     [not found]       ` <1b88bfa3793d807ff6e325df1bbff6cb4eb976e6.1379590036.git.jsarha-l0cyMroinI0@public.gmane.org>
2013-09-19 13:29         ` Mark Brown
     [not found]           ` <20130919132955.GS21013-GFdadSzt00ze9xe1eoZjHA@public.gmane.org>
2013-09-19 13:45             ` Sarha, Jyri
2013-09-19 11:29     ` [PATCH v3 09/11] ARM/dts: am33xx: Add mcasp0 and mcasp1 device tree entries Jyri Sarha
2013-09-19 13:31     ` [PATCH v3 00/11] Fix AM335x-evm analog audio support Mark Brown
2013-10-08 19:36 ` Jyri Sarha [this message]
2013-10-08 19:36   ` [PATCH v4 01/10] ASoC: davinci: Fix AM33xx SoC Audio support Jyri Sarha
2013-10-08 19:36   ` [PATCH v4 02/10] ASoC: davinci-evm: Add device tree binding Jyri Sarha
2013-10-08 19:36   ` [PATCH v4 03/10] ASoC: davinci-mcasp: Add location for data port registers to DT Jyri Sarha
2013-10-08 19:36   ` [PATCH v4 05/10] ASoC: davinci-mcasp: Improve DT bindings document Jyri Sarha
     [not found]   ` <cover.1381259962.git.jsarha-l0cyMroinI0@public.gmane.org>
2013-10-08 19:36     ` [PATCH v4 04/10] ASoC: davinci-mcasp: Extract DMA channels directly from DT Jyri Sarha
2013-10-08 19:36     ` [PATCH v4 06/10] ASoC: davinci-mcasp: Remove redundant num-serializer DT parameter Jyri Sarha
2013-10-08 19:36   ` [PATCH v4 07/10] ARM/dts: am33xx: Add mcasp0 and mcasp1 device tree entries Jyri Sarha
2013-10-08 19:36   ` [PATCH v4 08/10] ARM/dts: am33xx: mcasp: Add location for data port registers to reg-property Jyri Sarha
2013-10-09  8:29     ` Peter Ujfalusi
2013-10-09 12:44       ` [PATCH v4.1 " y
2013-10-09 12:44       ` [alsa-devel] " y
     [not found]       ` <525513F8.1040103-l0cyMroinI0@public.gmane.org>
2013-10-09 12:44         ` y
2013-10-09 12:44       ` y
2013-10-09 12:44       ` y
2013-10-08 19:36   ` [PATCH v4 09/10] ARM/dts: am335x-evm: Add audio support for am335x-evm.dts Jyri Sarha
2013-10-09  8:12     ` Peter Ujfalusi
2013-10-09 12:45       ` [PATCH v4.1 " Jyri Sarha
2013-10-09 14:32         ` [PATCH v4.2 " Jyri Sarha
2013-10-18 15:37       ` [PATCH v5 00/12] Fix AM335x-evm analog audio support Jyri Sarha
2013-10-18 15:37         ` [PATCH v5 01/12] ASoC: davinci: Fix AM33xx SoC Audio support Jyri Sarha
2013-10-22 12:24           ` Mark Brown
2013-10-22 13:02             ` Jyri Sarha
     [not found]         ` <cover.1382110089.git.jsarha-l0cyMroinI0@public.gmane.org>
2013-10-18 15:37           ` [PATCH v5 02/12] ASoC: davinci-evm: Add device tree binding Jyri Sarha
2013-10-22 11:01             ` Mark Brown
2013-10-22 12:26               ` Jyri Sarha
2013-10-22 12:39                 ` Mark Brown
2013-10-22 16:41                   ` Jyri Sarha
2013-10-18 15:37           ` [PATCH v5 04/12] ASoC: davinci-mcasp: Extract DMA channels directly from DT Jyri Sarha
2013-10-22 12:10             ` Mark Brown
2013-10-18 15:37         ` [PATCH v5 03/12] ASoC: davinci-mcasp: Add location for data port registers to DT Jyri Sarha
2013-10-22 11:04           ` Mark Brown
2013-10-18 15:37         ` [PATCH v5 05/12] ASoC: davinci-mcasp: Change compatible property model to more accurate Jyri Sarha
2013-10-22 12:14           ` Mark Brown
2013-10-18 15:37         ` [PATCH v5 06/12] ASoC: davinci-mcasp: Improve DT bindings document Jyri Sarha
2013-10-23 11:15           ` Mark Brown
2013-10-18 15:37         ` [PATCH v5 07/12] ASoC: davinci-mcasp: Remove redundant num-serializer DT parameter Jyri Sarha
2013-10-23 11:15           ` Mark Brown
2013-10-18 15:37         ` [PATCH v5 08/12] ARM/dts: am33xx: Add mcasp0 and mcasp1 device tree entries Jyri Sarha
2013-10-18 15:37         ` [PATCH v5 09/12] ARM/dts: am33xx: mcasp: Add location for data port registers to reg-property Jyri Sarha
2013-10-18 15:37         ` [PATCH v5 10/12] ARM/dts: am335x-evm: Add audio support for am335x-evm.dts Jyri Sarha
2013-10-18 15:37         ` [PATCH v5 11/12] ARM/dts: am335x-evmsk: Audio support Jyri Sarha
2013-10-18 15:37         ` [PATCH v5 12/12] arm: omap2plus_defconfig: enable AM33xx SOC EVM audio Jyri Sarha
2013-10-18 16:06         ` [PATCH v5 00/12] Fix AM335x-evm analog audio support Benoit Cousson
2013-10-20 17:04           ` [PATCH v5 DTS 0/4] " Jyri Sarha
2013-10-20 17:04             ` [PATCH v5 DTS 1/4] ARM/dts: am33xx: Add mcasp0 and mcasp1 device tree entries Jyri Sarha
2013-10-20 17:04             ` [PATCH v5 DTS 2/4] ARM/dts: am33xx: mcasp: Add location for data port registers to reg-property Jyri Sarha
2013-10-20 17:04             ` [PATCH v5 DTS 3/4] ARM/dts: am335x-evm: Add audio support for am335x-evm.dts Jyri Sarha
2013-10-20 17:04             ` [PATCH v5 DTS 4/4] ARM/dts: am335x-evmsk: Audio support Jyri Sarha
2013-10-20 17:14             ` [PATCH v5 DTS 0/4] Fix AM335x-evm analog audio support Benoit Cousson
2013-10-08 19:36   ` [PATCH v4 10/10] ARM/dts: am335x-evmsk: Audio support Jyri Sarha
2013-10-09 15:58     ` [PATCH v4.2 " Jyri Sarha
2013-10-23 12:30 ` [PATCH v6 0/4] Fix AM335x-evm analog audio support Jyri Sarha
2013-10-23 12:30   ` [PATCH v6 1/4] ASoC: davinci: Add support for AM33xx SoC Audio Jyri Sarha
2013-10-23 15:40     ` Mark Brown
2013-10-23 12:30   ` [PATCH v6 2/4] ASoC: davinci-evm: Add device tree binding Jyri Sarha
2013-10-23 15:43     ` Mark Brown
2013-10-23 12:30   ` [PATCH v6 3/4] ASoC: davinci-mcasp: Remove last reference to num-serializer in DT doc Jyri Sarha
2013-10-23 15:40     ` Mark Brown
2013-10-23 12:30   ` [PATCH v6 4/4] arm: omap2plus_defconfig: enable AM33xx SOC EVM audio Jyri Sarha
2013-11-05  8:42     ` [PATCH RESEND] " Jyri Sarha
2013-11-05  8:42       ` Jyri Sarha
2014-01-08 19:18         ` Tony Lindgren

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=cover.1381259962.git.jsarha@ti.com \
    --to=jsarha@ti.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=broonie@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=joelf@ti.com \
    --cc=linux-omap@vger.kernel.org \
    --cc=mark.rutland@arm.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.