All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/12] mtd: nand: davinci: stop using pdev->id as chipselect
@ 2018-04-30  8:24 ` Bartosz Golaszewski
  0 siblings, 0 replies; 52+ messages in thread
From: Bartosz Golaszewski @ 2018-04-30  8:24 UTC (permalink / raw)
  To: Sekhar Nori, Kevin Hilman, Russell King, Boris Brezillon,
	Richard Weinberger, David Woodhouse, Brian Norris, Marek Vasut,
	Tony Lindgren, Krzysztof Kozlowski
  Cc: linux-arm-kernel, linux-kernel, linux-mtd, Bartosz Golaszewski

From: Bartosz Golaszewski <bgolaszewski@baylibre.com>

We have the 'ti,davinci-chipselect' property in the device tree, but
when using platform data the driver silently uses the id field of
struct platform_device as the chipselect. This is confusing and we
almost broke the nand support again recently after converting the
platform to common clock framework (which changed the device id in the
clock lookup - the problem is gone now that we no longer acquire the
clock in the nand driver.

This series adds a new field to davinci-nand platform data, then makes
all board use it and finally modifies the two drivers that make use of
it.

Bartosz Golaszewski (12):
  mtd: nand: davinci: store the core chipselect number in platform data
  ARM: davinci: da830-evm: specify the chipselect in davinci_nand_pdata
  ARM: davinci: da850-evm: specify the chipselect in davinci_nand_pdata
  ARM: davinci: dm355-evm: specify the chipselect in davinci_nand_pdata
  ARM: davinci: dm355-leopard: specify the chipselect in
    davinci_nand_pdata
  ARM: davinci: dm365-evm: specify the chipselect in davinci_nand_pdata
  ARM: davinci: dm644x-evm: specify the chipselect in davinci_nand_pdata
  ARM: davinci: mityomapl138: specify the chipselect in
    davinci_nand_pdata
  ARM: davinci: dm646x-evm: specify the chipselect in davinci_nand_pdata
  ARM: davinci: neuros-osd2: specify the chipselect in
    davinci_nand_pdata
  mtd: nand: davinci: stop using pdev->id as chipselect
  ARM: davinci: aemif: stop using pdev->id as nand chipselect

 arch/arm/mach-davinci/aemif.c               | 8 ++++----
 arch/arm/mach-davinci/board-da830-evm.c     | 1 +
 arch/arm/mach-davinci/board-da850-evm.c     | 1 +
 arch/arm/mach-davinci/board-dm355-evm.c     | 1 +
 arch/arm/mach-davinci/board-dm355-leopard.c | 1 +
 arch/arm/mach-davinci/board-dm365-evm.c     | 1 +
 arch/arm/mach-davinci/board-dm644x-evm.c    | 1 +
 arch/arm/mach-davinci/board-dm646x-evm.c    | 1 +
 arch/arm/mach-davinci/board-mityomapl138.c  | 1 +
 arch/arm/mach-davinci/board-neuros-osd2.c   | 1 +
 drivers/mtd/nand/raw/davinci_nand.c         | 6 +++---
 include/linux/platform_data/mtd-davinci.h   | 2 ++
 12 files changed, 18 insertions(+), 7 deletions(-)

-- 
2.17.0

^ permalink raw reply	[flat|nested] 52+ messages in thread

* [PATCH 00/12] mtd: nand: davinci: stop using pdev->id as chipselect
@ 2018-04-30  8:24 ` Bartosz Golaszewski
  0 siblings, 0 replies; 52+ messages in thread
From: Bartosz Golaszewski @ 2018-04-30  8:24 UTC (permalink / raw)
  To: linux-arm-kernel

From: Bartosz Golaszewski <bgolaszewski@baylibre.com>

We have the 'ti,davinci-chipselect' property in the device tree, but
when using platform data the driver silently uses the id field of
struct platform_device as the chipselect. This is confusing and we
almost broke the nand support again recently after converting the
platform to common clock framework (which changed the device id in the
clock lookup - the problem is gone now that we no longer acquire the
clock in the nand driver.

This series adds a new field to davinci-nand platform data, then makes
all board use it and finally modifies the two drivers that make use of
it.

Bartosz Golaszewski (12):
  mtd: nand: davinci: store the core chipselect number in platform data
  ARM: davinci: da830-evm: specify the chipselect in davinci_nand_pdata
  ARM: davinci: da850-evm: specify the chipselect in davinci_nand_pdata
  ARM: davinci: dm355-evm: specify the chipselect in davinci_nand_pdata
  ARM: davinci: dm355-leopard: specify the chipselect in
    davinci_nand_pdata
  ARM: davinci: dm365-evm: specify the chipselect in davinci_nand_pdata
  ARM: davinci: dm644x-evm: specify the chipselect in davinci_nand_pdata
  ARM: davinci: mityomapl138: specify the chipselect in
    davinci_nand_pdata
  ARM: davinci: dm646x-evm: specify the chipselect in davinci_nand_pdata
  ARM: davinci: neuros-osd2: specify the chipselect in
    davinci_nand_pdata
  mtd: nand: davinci: stop using pdev->id as chipselect
  ARM: davinci: aemif: stop using pdev->id as nand chipselect

 arch/arm/mach-davinci/aemif.c               | 8 ++++----
 arch/arm/mach-davinci/board-da830-evm.c     | 1 +
 arch/arm/mach-davinci/board-da850-evm.c     | 1 +
 arch/arm/mach-davinci/board-dm355-evm.c     | 1 +
 arch/arm/mach-davinci/board-dm355-leopard.c | 1 +
 arch/arm/mach-davinci/board-dm365-evm.c     | 1 +
 arch/arm/mach-davinci/board-dm644x-evm.c    | 1 +
 arch/arm/mach-davinci/board-dm646x-evm.c    | 1 +
 arch/arm/mach-davinci/board-mityomapl138.c  | 1 +
 arch/arm/mach-davinci/board-neuros-osd2.c   | 1 +
 drivers/mtd/nand/raw/davinci_nand.c         | 6 +++---
 include/linux/platform_data/mtd-davinci.h   | 2 ++
 12 files changed, 18 insertions(+), 7 deletions(-)

-- 
2.17.0

^ permalink raw reply	[flat|nested] 52+ messages in thread

* [PATCH 01/12] mtd: nand: davinci: store the core chipselect number in platform data
  2018-04-30  8:24 ` Bartosz Golaszewski
@ 2018-04-30  8:24   ` Bartosz Golaszewski
  -1 siblings, 0 replies; 52+ messages in thread
From: Bartosz Golaszewski @ 2018-04-30  8:24 UTC (permalink / raw)
  To: Sekhar Nori, Kevin Hilman, Russell King, Boris Brezillon,
	Richard Weinberger, David Woodhouse, Brian Norris, Marek Vasut,
	Tony Lindgren, Krzysztof Kozlowski
  Cc: linux-arm-kernel, linux-kernel, linux-mtd, Bartosz Golaszewski

From: Bartosz Golaszewski <bgolaszewski@baylibre.com>

We have the 'ti,davinci-chipselect' property in the device tree, but
when using platform data the driver silently uses the id field of
struct platform_device as the chipselect. This is confusing and we
almost broke the nand support again recently after converting the
platform to common clock framework (which changed the device id in the
clock lookup - the problem is gone now that we no longer acquire the
clock in the nand driver.

This patch adds a new filed - core_chipsel - to the platform_data.
Subsequent patches will convert the platforms to using this new field.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
---
 include/linux/platform_data/mtd-davinci.h | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/include/linux/platform_data/mtd-davinci.h b/include/linux/platform_data/mtd-davinci.h
index f1a2cf655bdb..879a59f97dac 100644
--- a/include/linux/platform_data/mtd-davinci.h
+++ b/include/linux/platform_data/mtd-davinci.h
@@ -56,6 +56,8 @@ struct davinci_nand_pdata {		/* platform_data */
 	uint32_t		mask_ale;
 	uint32_t		mask_cle;
 
+	uint32_t		core_chipsel;
+
 	/* for packages using two chipselects */
 	uint32_t		mask_chipsel;
 
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 52+ messages in thread

* [PATCH 01/12] mtd: nand: davinci: store the core chipselect number in platform data
@ 2018-04-30  8:24   ` Bartosz Golaszewski
  0 siblings, 0 replies; 52+ messages in thread
From: Bartosz Golaszewski @ 2018-04-30  8:24 UTC (permalink / raw)
  To: linux-arm-kernel

From: Bartosz Golaszewski <bgolaszewski@baylibre.com>

We have the 'ti,davinci-chipselect' property in the device tree, but
when using platform data the driver silently uses the id field of
struct platform_device as the chipselect. This is confusing and we
almost broke the nand support again recently after converting the
platform to common clock framework (which changed the device id in the
clock lookup - the problem is gone now that we no longer acquire the
clock in the nand driver.

This patch adds a new filed - core_chipsel - to the platform_data.
Subsequent patches will convert the platforms to using this new field.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
---
 include/linux/platform_data/mtd-davinci.h | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/include/linux/platform_data/mtd-davinci.h b/include/linux/platform_data/mtd-davinci.h
index f1a2cf655bdb..879a59f97dac 100644
--- a/include/linux/platform_data/mtd-davinci.h
+++ b/include/linux/platform_data/mtd-davinci.h
@@ -56,6 +56,8 @@ struct davinci_nand_pdata {		/* platform_data */
 	uint32_t		mask_ale;
 	uint32_t		mask_cle;
 
+	uint32_t		core_chipsel;
+
 	/* for packages using two chipselects */
 	uint32_t		mask_chipsel;
 
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 52+ messages in thread

* [PATCH 02/12] ARM: davinci: da830-evm: specify the chipselect in davinci_nand_pdata
  2018-04-30  8:24 ` Bartosz Golaszewski
@ 2018-04-30  8:24   ` Bartosz Golaszewski
  -1 siblings, 0 replies; 52+ messages in thread
From: Bartosz Golaszewski @ 2018-04-30  8:24 UTC (permalink / raw)
  To: Sekhar Nori, Kevin Hilman, Russell King, Boris Brezillon,
	Richard Weinberger, David Woodhouse, Brian Norris, Marek Vasut,
	Tony Lindgren, Krzysztof Kozlowski
  Cc: linux-arm-kernel, linux-kernel, linux-mtd, Bartosz Golaszewski

From: Bartosz Golaszewski <bgolaszewski@baylibre.com>

We now have the core_chipsel field in davinci_nand_pdata. Use it
instead of the platform_device id number.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
---
 arch/arm/mach-davinci/board-da830-evm.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/mach-davinci/board-da830-evm.c b/arch/arm/mach-davinci/board-da830-evm.c
index d283faefaf97..7cfb6f7e39e7 100644
--- a/arch/arm/mach-davinci/board-da830-evm.c
+++ b/arch/arm/mach-davinci/board-da830-evm.c
@@ -304,6 +304,7 @@ static struct davinci_aemif_timing da830_evm_nandflash_timing = {
 };
 
 static struct davinci_nand_pdata da830_evm_nand_pdata = {
+	.core_chipsel	= 1,
 	.parts		= da830_evm_nand_partitions,
 	.nr_parts	= ARRAY_SIZE(da830_evm_nand_partitions),
 	.ecc_mode	= NAND_ECC_HW,
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 52+ messages in thread

* [PATCH 02/12] ARM: davinci: da830-evm: specify the chipselect in davinci_nand_pdata
@ 2018-04-30  8:24   ` Bartosz Golaszewski
  0 siblings, 0 replies; 52+ messages in thread
From: Bartosz Golaszewski @ 2018-04-30  8:24 UTC (permalink / raw)
  To: linux-arm-kernel

From: Bartosz Golaszewski <bgolaszewski@baylibre.com>

We now have the core_chipsel field in davinci_nand_pdata. Use it
instead of the platform_device id number.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
---
 arch/arm/mach-davinci/board-da830-evm.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/mach-davinci/board-da830-evm.c b/arch/arm/mach-davinci/board-da830-evm.c
index d283faefaf97..7cfb6f7e39e7 100644
--- a/arch/arm/mach-davinci/board-da830-evm.c
+++ b/arch/arm/mach-davinci/board-da830-evm.c
@@ -304,6 +304,7 @@ static struct davinci_aemif_timing da830_evm_nandflash_timing = {
 };
 
 static struct davinci_nand_pdata da830_evm_nand_pdata = {
+	.core_chipsel	= 1,
 	.parts		= da830_evm_nand_partitions,
 	.nr_parts	= ARRAY_SIZE(da830_evm_nand_partitions),
 	.ecc_mode	= NAND_ECC_HW,
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 52+ messages in thread

* [PATCH 03/12] ARM: davinci: da850-evm: specify the chipselect in davinci_nand_pdata
  2018-04-30  8:24 ` Bartosz Golaszewski
@ 2018-04-30  8:24   ` Bartosz Golaszewski
  -1 siblings, 0 replies; 52+ messages in thread
From: Bartosz Golaszewski @ 2018-04-30  8:24 UTC (permalink / raw)
  To: Sekhar Nori, Kevin Hilman, Russell King, Boris Brezillon,
	Richard Weinberger, David Woodhouse, Brian Norris, Marek Vasut,
	Tony Lindgren, Krzysztof Kozlowski
  Cc: linux-arm-kernel, linux-kernel, linux-mtd, Bartosz Golaszewski

From: Bartosz Golaszewski <bgolaszewski@baylibre.com>

We now have the core_chipsel field in davinci_nand_pdata. Use it
instead of the platform_device id number.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
---
 arch/arm/mach-davinci/board-da850-evm.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/mach-davinci/board-da850-evm.c b/arch/arm/mach-davinci/board-da850-evm.c
index 78a670aafea0..9f8041a0cf67 100644
--- a/arch/arm/mach-davinci/board-da850-evm.c
+++ b/arch/arm/mach-davinci/board-da850-evm.c
@@ -244,6 +244,7 @@ static struct davinci_aemif_timing da850_evm_nandflash_timing = {
 };
 
 static struct davinci_nand_pdata da850_evm_nandflash_data = {
+	.core_chipsel	= 1,
 	.parts		= da850_evm_nandflash_partition,
 	.nr_parts	= ARRAY_SIZE(da850_evm_nandflash_partition),
 	.ecc_mode	= NAND_ECC_HW,
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 52+ messages in thread

* [PATCH 03/12] ARM: davinci: da850-evm: specify the chipselect in davinci_nand_pdata
@ 2018-04-30  8:24   ` Bartosz Golaszewski
  0 siblings, 0 replies; 52+ messages in thread
From: Bartosz Golaszewski @ 2018-04-30  8:24 UTC (permalink / raw)
  To: linux-arm-kernel

From: Bartosz Golaszewski <bgolaszewski@baylibre.com>

We now have the core_chipsel field in davinci_nand_pdata. Use it
instead of the platform_device id number.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
---
 arch/arm/mach-davinci/board-da850-evm.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/mach-davinci/board-da850-evm.c b/arch/arm/mach-davinci/board-da850-evm.c
index 78a670aafea0..9f8041a0cf67 100644
--- a/arch/arm/mach-davinci/board-da850-evm.c
+++ b/arch/arm/mach-davinci/board-da850-evm.c
@@ -244,6 +244,7 @@ static struct davinci_aemif_timing da850_evm_nandflash_timing = {
 };
 
 static struct davinci_nand_pdata da850_evm_nandflash_data = {
+	.core_chipsel	= 1,
 	.parts		= da850_evm_nandflash_partition,
 	.nr_parts	= ARRAY_SIZE(da850_evm_nandflash_partition),
 	.ecc_mode	= NAND_ECC_HW,
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 52+ messages in thread

* [PATCH 04/12] ARM: davinci: dm355-evm: specify the chipselect in davinci_nand_pdata
  2018-04-30  8:24 ` Bartosz Golaszewski
@ 2018-04-30  8:24   ` Bartosz Golaszewski
  -1 siblings, 0 replies; 52+ messages in thread
From: Bartosz Golaszewski @ 2018-04-30  8:24 UTC (permalink / raw)
  To: Sekhar Nori, Kevin Hilman, Russell King, Boris Brezillon,
	Richard Weinberger, David Woodhouse, Brian Norris, Marek Vasut,
	Tony Lindgren, Krzysztof Kozlowski
  Cc: linux-arm-kernel, linux-kernel, linux-mtd, Bartosz Golaszewski

From: Bartosz Golaszewski <bgolaszewski@baylibre.com>

We now have the core_chipsel field in davinci_nand_pdata. Use it
instead of the platform_device id number.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
---
 arch/arm/mach-davinci/board-dm355-evm.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/mach-davinci/board-dm355-evm.c b/arch/arm/mach-davinci/board-dm355-evm.c
index ea03ddcd35f5..ecd67a978aad 100644
--- a/arch/arm/mach-davinci/board-dm355-evm.c
+++ b/arch/arm/mach-davinci/board-dm355-evm.c
@@ -77,6 +77,7 @@ static struct mtd_partition davinci_nand_partitions[] = {
 };
 
 static struct davinci_nand_pdata davinci_nand_data = {
+	.core_chipsel		= 0,
 	.mask_chipsel		= BIT(14),
 	.parts			= davinci_nand_partitions,
 	.nr_parts		= ARRAY_SIZE(davinci_nand_partitions),
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 52+ messages in thread

* [PATCH 04/12] ARM: davinci: dm355-evm: specify the chipselect in davinci_nand_pdata
@ 2018-04-30  8:24   ` Bartosz Golaszewski
  0 siblings, 0 replies; 52+ messages in thread
From: Bartosz Golaszewski @ 2018-04-30  8:24 UTC (permalink / raw)
  To: linux-arm-kernel

From: Bartosz Golaszewski <bgolaszewski@baylibre.com>

We now have the core_chipsel field in davinci_nand_pdata. Use it
instead of the platform_device id number.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
---
 arch/arm/mach-davinci/board-dm355-evm.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/mach-davinci/board-dm355-evm.c b/arch/arm/mach-davinci/board-dm355-evm.c
index ea03ddcd35f5..ecd67a978aad 100644
--- a/arch/arm/mach-davinci/board-dm355-evm.c
+++ b/arch/arm/mach-davinci/board-dm355-evm.c
@@ -77,6 +77,7 @@ static struct mtd_partition davinci_nand_partitions[] = {
 };
 
 static struct davinci_nand_pdata davinci_nand_data = {
+	.core_chipsel		= 0,
 	.mask_chipsel		= BIT(14),
 	.parts			= davinci_nand_partitions,
 	.nr_parts		= ARRAY_SIZE(davinci_nand_partitions),
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 52+ messages in thread

* [PATCH 05/12] ARM: davinci: dm355-leopard: specify the chipselect in davinci_nand_pdata
  2018-04-30  8:24 ` Bartosz Golaszewski
@ 2018-04-30  8:24   ` Bartosz Golaszewski
  -1 siblings, 0 replies; 52+ messages in thread
From: Bartosz Golaszewski @ 2018-04-30  8:24 UTC (permalink / raw)
  To: Sekhar Nori, Kevin Hilman, Russell King, Boris Brezillon,
	Richard Weinberger, David Woodhouse, Brian Norris, Marek Vasut,
	Tony Lindgren, Krzysztof Kozlowski
  Cc: linux-arm-kernel, linux-kernel, linux-mtd, Bartosz Golaszewski

From: Bartosz Golaszewski <bgolaszewski@baylibre.com>

We now have the core_chipsel field in davinci_nand_pdata. Use it
instead of the platform_device id number.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
---
 arch/arm/mach-davinci/board-dm355-leopard.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/mach-davinci/board-dm355-leopard.c b/arch/arm/mach-davinci/board-dm355-leopard.c
index 09f82160bbed..0fdf1d03eb11 100644
--- a/arch/arm/mach-davinci/board-dm355-leopard.c
+++ b/arch/arm/mach-davinci/board-dm355-leopard.c
@@ -72,6 +72,7 @@ static struct mtd_partition davinci_nand_partitions[] = {
 };
 
 static struct davinci_nand_pdata davinci_nand_data = {
+	.core_chipsel		= 0,
 	.mask_chipsel		= BIT(14),
 	.parts			= davinci_nand_partitions,
 	.nr_parts		= ARRAY_SIZE(davinci_nand_partitions),
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 52+ messages in thread

* [PATCH 05/12] ARM: davinci: dm355-leopard: specify the chipselect in davinci_nand_pdata
@ 2018-04-30  8:24   ` Bartosz Golaszewski
  0 siblings, 0 replies; 52+ messages in thread
From: Bartosz Golaszewski @ 2018-04-30  8:24 UTC (permalink / raw)
  To: linux-arm-kernel

From: Bartosz Golaszewski <bgolaszewski@baylibre.com>

We now have the core_chipsel field in davinci_nand_pdata. Use it
instead of the platform_device id number.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
---
 arch/arm/mach-davinci/board-dm355-leopard.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/mach-davinci/board-dm355-leopard.c b/arch/arm/mach-davinci/board-dm355-leopard.c
index 09f82160bbed..0fdf1d03eb11 100644
--- a/arch/arm/mach-davinci/board-dm355-leopard.c
+++ b/arch/arm/mach-davinci/board-dm355-leopard.c
@@ -72,6 +72,7 @@ static struct mtd_partition davinci_nand_partitions[] = {
 };
 
 static struct davinci_nand_pdata davinci_nand_data = {
+	.core_chipsel		= 0,
 	.mask_chipsel		= BIT(14),
 	.parts			= davinci_nand_partitions,
 	.nr_parts		= ARRAY_SIZE(davinci_nand_partitions),
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 52+ messages in thread

* [PATCH 06/12] ARM: davinci: dm365-evm: specify the chipselect in davinci_nand_pdata
  2018-04-30  8:24 ` Bartosz Golaszewski
@ 2018-04-30  8:24   ` Bartosz Golaszewski
  -1 siblings, 0 replies; 52+ messages in thread
From: Bartosz Golaszewski @ 2018-04-30  8:24 UTC (permalink / raw)
  To: Sekhar Nori, Kevin Hilman, Russell King, Boris Brezillon,
	Richard Weinberger, David Woodhouse, Brian Norris, Marek Vasut,
	Tony Lindgren, Krzysztof Kozlowski
  Cc: linux-arm-kernel, linux-kernel, linux-mtd, Bartosz Golaszewski

From: Bartosz Golaszewski <bgolaszewski@baylibre.com>

We now have the core_chipsel field in davinci_nand_pdata. Use it
instead of the platform_device id number.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
---
 arch/arm/mach-davinci/board-dm365-evm.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/mach-davinci/board-dm365-evm.c b/arch/arm/mach-davinci/board-dm365-evm.c
index 36b69a131cfa..307e88d99dd3 100644
--- a/arch/arm/mach-davinci/board-dm365-evm.c
+++ b/arch/arm/mach-davinci/board-dm365-evm.c
@@ -138,6 +138,7 @@ static struct mtd_partition davinci_nand_partitions[] = {
 };
 
 static struct davinci_nand_pdata davinci_nand_data = {
+	.core_chipsel		= 0,
 	.mask_chipsel		= BIT(14),
 	.parts			= davinci_nand_partitions,
 	.nr_parts		= ARRAY_SIZE(davinci_nand_partitions),
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 52+ messages in thread

* [PATCH 06/12] ARM: davinci: dm365-evm: specify the chipselect in davinci_nand_pdata
@ 2018-04-30  8:24   ` Bartosz Golaszewski
  0 siblings, 0 replies; 52+ messages in thread
From: Bartosz Golaszewski @ 2018-04-30  8:24 UTC (permalink / raw)
  To: linux-arm-kernel

From: Bartosz Golaszewski <bgolaszewski@baylibre.com>

We now have the core_chipsel field in davinci_nand_pdata. Use it
instead of the platform_device id number.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
---
 arch/arm/mach-davinci/board-dm365-evm.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/mach-davinci/board-dm365-evm.c b/arch/arm/mach-davinci/board-dm365-evm.c
index 36b69a131cfa..307e88d99dd3 100644
--- a/arch/arm/mach-davinci/board-dm365-evm.c
+++ b/arch/arm/mach-davinci/board-dm365-evm.c
@@ -138,6 +138,7 @@ static struct mtd_partition davinci_nand_partitions[] = {
 };
 
 static struct davinci_nand_pdata davinci_nand_data = {
+	.core_chipsel		= 0,
 	.mask_chipsel		= BIT(14),
 	.parts			= davinci_nand_partitions,
 	.nr_parts		= ARRAY_SIZE(davinci_nand_partitions),
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 52+ messages in thread

* [PATCH 07/12] ARM: davinci: dm644x-evm: specify the chipselect in davinci_nand_pdata
  2018-04-30  8:24 ` Bartosz Golaszewski
@ 2018-04-30  8:24   ` Bartosz Golaszewski
  -1 siblings, 0 replies; 52+ messages in thread
From: Bartosz Golaszewski @ 2018-04-30  8:24 UTC (permalink / raw)
  To: Sekhar Nori, Kevin Hilman, Russell King, Boris Brezillon,
	Richard Weinberger, David Woodhouse, Brian Norris, Marek Vasut,
	Tony Lindgren, Krzysztof Kozlowski
  Cc: linux-arm-kernel, linux-kernel, linux-mtd, Bartosz Golaszewski

From: Bartosz Golaszewski <bgolaszewski@baylibre.com>

We now have the core_chipsel field in davinci_nand_pdata. Use it
instead of the platform_device id number.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
---
 arch/arm/mach-davinci/board-dm644x-evm.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/mach-davinci/board-dm644x-evm.c b/arch/arm/mach-davinci/board-dm644x-evm.c
index 190a28cc91bd..f76e22069e4b 100644
--- a/arch/arm/mach-davinci/board-dm644x-evm.c
+++ b/arch/arm/mach-davinci/board-dm644x-evm.c
@@ -152,6 +152,7 @@ static struct davinci_aemif_timing davinci_evm_nandflash_timing = {
 };
 
 static struct davinci_nand_pdata davinci_evm_nandflash_data = {
+	.core_chipsel	= 0,
 	.parts		= davinci_evm_nandflash_partition,
 	.nr_parts	= ARRAY_SIZE(davinci_evm_nandflash_partition),
 	.ecc_mode	= NAND_ECC_HW,
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 52+ messages in thread

* [PATCH 07/12] ARM: davinci: dm644x-evm: specify the chipselect in davinci_nand_pdata
@ 2018-04-30  8:24   ` Bartosz Golaszewski
  0 siblings, 0 replies; 52+ messages in thread
From: Bartosz Golaszewski @ 2018-04-30  8:24 UTC (permalink / raw)
  To: linux-arm-kernel

From: Bartosz Golaszewski <bgolaszewski@baylibre.com>

We now have the core_chipsel field in davinci_nand_pdata. Use it
instead of the platform_device id number.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
---
 arch/arm/mach-davinci/board-dm644x-evm.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/mach-davinci/board-dm644x-evm.c b/arch/arm/mach-davinci/board-dm644x-evm.c
index 190a28cc91bd..f76e22069e4b 100644
--- a/arch/arm/mach-davinci/board-dm644x-evm.c
+++ b/arch/arm/mach-davinci/board-dm644x-evm.c
@@ -152,6 +152,7 @@ static struct davinci_aemif_timing davinci_evm_nandflash_timing = {
 };
 
 static struct davinci_nand_pdata davinci_evm_nandflash_data = {
+	.core_chipsel	= 0,
 	.parts		= davinci_evm_nandflash_partition,
 	.nr_parts	= ARRAY_SIZE(davinci_evm_nandflash_partition),
 	.ecc_mode	= NAND_ECC_HW,
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 52+ messages in thread

* [PATCH 08/12] ARM: davinci: mityomapl138: specify the chipselect in davinci_nand_pdata
  2018-04-30  8:24 ` Bartosz Golaszewski
@ 2018-04-30  8:24   ` Bartosz Golaszewski
  -1 siblings, 0 replies; 52+ messages in thread
From: Bartosz Golaszewski @ 2018-04-30  8:24 UTC (permalink / raw)
  To: Sekhar Nori, Kevin Hilman, Russell King, Boris Brezillon,
	Richard Weinberger, David Woodhouse, Brian Norris, Marek Vasut,
	Tony Lindgren, Krzysztof Kozlowski
  Cc: linux-arm-kernel, linux-kernel, linux-mtd, Bartosz Golaszewski

From: Bartosz Golaszewski <bgolaszewski@baylibre.com>

We now have the core_chipsel field in davinci_nand_pdata. Use it
instead of the platform_device id number.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
---
 arch/arm/mach-davinci/board-mityomapl138.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/mach-davinci/board-mityomapl138.c b/arch/arm/mach-davinci/board-mityomapl138.c
index f442784eded3..2cce0d7d2f2a 100644
--- a/arch/arm/mach-davinci/board-mityomapl138.c
+++ b/arch/arm/mach-davinci/board-mityomapl138.c
@@ -400,6 +400,7 @@ static struct mtd_partition mityomapl138_nandflash_partition[] = {
 };
 
 static struct davinci_nand_pdata mityomapl138_nandflash_data = {
+	.core_chipsel	= 1,
 	.parts		= mityomapl138_nandflash_partition,
 	.nr_parts	= ARRAY_SIZE(mityomapl138_nandflash_partition),
 	.ecc_mode	= NAND_ECC_HW,
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 52+ messages in thread

* [PATCH 08/12] ARM: davinci: mityomapl138: specify the chipselect in davinci_nand_pdata
@ 2018-04-30  8:24   ` Bartosz Golaszewski
  0 siblings, 0 replies; 52+ messages in thread
From: Bartosz Golaszewski @ 2018-04-30  8:24 UTC (permalink / raw)
  To: linux-arm-kernel

From: Bartosz Golaszewski <bgolaszewski@baylibre.com>

We now have the core_chipsel field in davinci_nand_pdata. Use it
instead of the platform_device id number.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
---
 arch/arm/mach-davinci/board-mityomapl138.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/mach-davinci/board-mityomapl138.c b/arch/arm/mach-davinci/board-mityomapl138.c
index f442784eded3..2cce0d7d2f2a 100644
--- a/arch/arm/mach-davinci/board-mityomapl138.c
+++ b/arch/arm/mach-davinci/board-mityomapl138.c
@@ -400,6 +400,7 @@ static struct mtd_partition mityomapl138_nandflash_partition[] = {
 };
 
 static struct davinci_nand_pdata mityomapl138_nandflash_data = {
+	.core_chipsel	= 1,
 	.parts		= mityomapl138_nandflash_partition,
 	.nr_parts	= ARRAY_SIZE(mityomapl138_nandflash_partition),
 	.ecc_mode	= NAND_ECC_HW,
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 52+ messages in thread

* [PATCH 09/12] ARM: davinci: dm646x-evm: specify the chipselect in davinci_nand_pdata
  2018-04-30  8:24 ` Bartosz Golaszewski
@ 2018-04-30  8:24   ` Bartosz Golaszewski
  -1 siblings, 0 replies; 52+ messages in thread
From: Bartosz Golaszewski @ 2018-04-30  8:24 UTC (permalink / raw)
  To: Sekhar Nori, Kevin Hilman, Russell King, Boris Brezillon,
	Richard Weinberger, David Woodhouse, Brian Norris, Marek Vasut,
	Tony Lindgren, Krzysztof Kozlowski
  Cc: linux-arm-kernel, linux-kernel, linux-mtd, Bartosz Golaszewski

From: Bartosz Golaszewski <bgolaszewski@baylibre.com>

We now have the core_chipsel field in davinci_nand_pdata. Use it
instead of the platform_device id number.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
---
 arch/arm/mach-davinci/board-dm646x-evm.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/mach-davinci/board-dm646x-evm.c b/arch/arm/mach-davinci/board-dm646x-evm.c
index d672804df817..37c9e0ee4dcc 100644
--- a/arch/arm/mach-davinci/board-dm646x-evm.c
+++ b/arch/arm/mach-davinci/board-dm646x-evm.c
@@ -84,6 +84,7 @@ static struct davinci_aemif_timing dm6467tevm_nandflash_timing = {
 };
 
 static struct davinci_nand_pdata davinci_nand_data = {
+	.core_chipsel		= 0,
 	.mask_cle 		= 0x80000,
 	.mask_ale 		= 0x40000,
 	.parts			= davinci_nand_partitions,
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 52+ messages in thread

* [PATCH 09/12] ARM: davinci: dm646x-evm: specify the chipselect in davinci_nand_pdata
@ 2018-04-30  8:24   ` Bartosz Golaszewski
  0 siblings, 0 replies; 52+ messages in thread
From: Bartosz Golaszewski @ 2018-04-30  8:24 UTC (permalink / raw)
  To: linux-arm-kernel

From: Bartosz Golaszewski <bgolaszewski@baylibre.com>

We now have the core_chipsel field in davinci_nand_pdata. Use it
instead of the platform_device id number.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
---
 arch/arm/mach-davinci/board-dm646x-evm.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/mach-davinci/board-dm646x-evm.c b/arch/arm/mach-davinci/board-dm646x-evm.c
index d672804df817..37c9e0ee4dcc 100644
--- a/arch/arm/mach-davinci/board-dm646x-evm.c
+++ b/arch/arm/mach-davinci/board-dm646x-evm.c
@@ -84,6 +84,7 @@ static struct davinci_aemif_timing dm6467tevm_nandflash_timing = {
 };
 
 static struct davinci_nand_pdata davinci_nand_data = {
+	.core_chipsel		= 0,
 	.mask_cle 		= 0x80000,
 	.mask_ale 		= 0x40000,
 	.parts			= davinci_nand_partitions,
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 52+ messages in thread

* [PATCH 10/12] ARM: davinci: neuros-osd2: specify the chipselect in davinci_nand_pdata
  2018-04-30  8:24 ` Bartosz Golaszewski
@ 2018-04-30  8:24   ` Bartosz Golaszewski
  -1 siblings, 0 replies; 52+ messages in thread
From: Bartosz Golaszewski @ 2018-04-30  8:24 UTC (permalink / raw)
  To: Sekhar Nori, Kevin Hilman, Russell King, Boris Brezillon,
	Richard Weinberger, David Woodhouse, Brian Norris, Marek Vasut,
	Tony Lindgren, Krzysztof Kozlowski
  Cc: linux-arm-kernel, linux-kernel, linux-mtd, Bartosz Golaszewski

From: Bartosz Golaszewski <bgolaszewski@baylibre.com>

We now have the core_chipsel field in davinci_nand_pdata. Use it
instead of the platform_device id number.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
---
 arch/arm/mach-davinci/board-neuros-osd2.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/mach-davinci/board-neuros-osd2.c b/arch/arm/mach-davinci/board-neuros-osd2.c
index 06e7f592b62b..353f9e5a1454 100644
--- a/arch/arm/mach-davinci/board-neuros-osd2.c
+++ b/arch/arm/mach-davinci/board-neuros-osd2.c
@@ -87,6 +87,7 @@ static struct mtd_partition davinci_ntosd2_nandflash_partition[] = {
 };
 
 static struct davinci_nand_pdata davinci_ntosd2_nandflash_data = {
+	.core_chipsel	= 0,
 	.parts		= davinci_ntosd2_nandflash_partition,
 	.nr_parts	= ARRAY_SIZE(davinci_ntosd2_nandflash_partition),
 	.ecc_mode	= NAND_ECC_HW,
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 52+ messages in thread

* [PATCH 10/12] ARM: davinci: neuros-osd2: specify the chipselect in davinci_nand_pdata
@ 2018-04-30  8:24   ` Bartosz Golaszewski
  0 siblings, 0 replies; 52+ messages in thread
From: Bartosz Golaszewski @ 2018-04-30  8:24 UTC (permalink / raw)
  To: linux-arm-kernel

From: Bartosz Golaszewski <bgolaszewski@baylibre.com>

We now have the core_chipsel field in davinci_nand_pdata. Use it
instead of the platform_device id number.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
---
 arch/arm/mach-davinci/board-neuros-osd2.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/mach-davinci/board-neuros-osd2.c b/arch/arm/mach-davinci/board-neuros-osd2.c
index 06e7f592b62b..353f9e5a1454 100644
--- a/arch/arm/mach-davinci/board-neuros-osd2.c
+++ b/arch/arm/mach-davinci/board-neuros-osd2.c
@@ -87,6 +87,7 @@ static struct mtd_partition davinci_ntosd2_nandflash_partition[] = {
 };
 
 static struct davinci_nand_pdata davinci_ntosd2_nandflash_data = {
+	.core_chipsel	= 0,
 	.parts		= davinci_ntosd2_nandflash_partition,
 	.nr_parts	= ARRAY_SIZE(davinci_ntosd2_nandflash_partition),
 	.ecc_mode	= NAND_ECC_HW,
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 52+ messages in thread

* [PATCH 11/12] mtd: nand: davinci: stop using pdev->id as chipselect
  2018-04-30  8:24 ` Bartosz Golaszewski
@ 2018-04-30  8:24   ` Bartosz Golaszewski
  -1 siblings, 0 replies; 52+ messages in thread
From: Bartosz Golaszewski @ 2018-04-30  8:24 UTC (permalink / raw)
  To: Sekhar Nori, Kevin Hilman, Russell King, Boris Brezillon,
	Richard Weinberger, David Woodhouse, Brian Norris, Marek Vasut,
	Tony Lindgren, Krzysztof Kozlowski
  Cc: linux-arm-kernel, linux-kernel, linux-mtd, Bartosz Golaszewski

From: Bartosz Golaszewski <bgolaszewski@baylibre.com>

All platform now use the core_chipsel field in platform data. Stop
using pdev->id in the driver.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
---
 drivers/mtd/nand/raw/davinci_nand.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/mtd/nand/raw/davinci_nand.c b/drivers/mtd/nand/raw/davinci_nand.c
index 7255a0d94374..cd12e5abafde 100644
--- a/drivers/mtd/nand/raw/davinci_nand.c
+++ b/drivers/mtd/nand/raw/davinci_nand.c
@@ -545,7 +545,7 @@ static struct davinci_nand_pdata
 			return ERR_PTR(-ENOMEM);
 		if (!of_property_read_u32(pdev->dev.of_node,
 			"ti,davinci-chipselect", &prop))
-			pdev->id = prop;
+			pdata->core_chipsel = prop;
 		else
 			return ERR_PTR(-EINVAL);
 
@@ -627,7 +627,7 @@ static int nand_davinci_probe(struct platform_device *pdev)
 		return -ENODEV;
 
 	/* which external chipselect will we be managing? */
-	if (pdev->id < 0 || pdev->id > 3)
+	if (pdata->core_chipsel < 0 || pdata->core_chipsel > 3)
 		return -ENODEV;
 
 	info = devm_kzalloc(&pdev->dev, sizeof(*info), GFP_KERNEL);
@@ -683,7 +683,7 @@ static int nand_davinci_probe(struct platform_device *pdev)
 	info->ioaddr		= (uint32_t __force) vaddr;
 
 	info->current_cs	= info->ioaddr;
-	info->core_chipsel	= pdev->id;
+	info->core_chipsel	= pdata->core_chipsel;
 	info->mask_chipsel	= pdata->mask_chipsel;
 
 	/* use nandboot-capable ALE/CLE masks by default */
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 52+ messages in thread

* [PATCH 11/12] mtd: nand: davinci: stop using pdev->id as chipselect
@ 2018-04-30  8:24   ` Bartosz Golaszewski
  0 siblings, 0 replies; 52+ messages in thread
From: Bartosz Golaszewski @ 2018-04-30  8:24 UTC (permalink / raw)
  To: linux-arm-kernel

From: Bartosz Golaszewski <bgolaszewski@baylibre.com>

All platform now use the core_chipsel field in platform data. Stop
using pdev->id in the driver.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
---
 drivers/mtd/nand/raw/davinci_nand.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/mtd/nand/raw/davinci_nand.c b/drivers/mtd/nand/raw/davinci_nand.c
index 7255a0d94374..cd12e5abafde 100644
--- a/drivers/mtd/nand/raw/davinci_nand.c
+++ b/drivers/mtd/nand/raw/davinci_nand.c
@@ -545,7 +545,7 @@ static struct davinci_nand_pdata
 			return ERR_PTR(-ENOMEM);
 		if (!of_property_read_u32(pdev->dev.of_node,
 			"ti,davinci-chipselect", &prop))
-			pdev->id = prop;
+			pdata->core_chipsel = prop;
 		else
 			return ERR_PTR(-EINVAL);
 
@@ -627,7 +627,7 @@ static int nand_davinci_probe(struct platform_device *pdev)
 		return -ENODEV;
 
 	/* which external chipselect will we be managing? */
-	if (pdev->id < 0 || pdev->id > 3)
+	if (pdata->core_chipsel < 0 || pdata->core_chipsel > 3)
 		return -ENODEV;
 
 	info = devm_kzalloc(&pdev->dev, sizeof(*info), GFP_KERNEL);
@@ -683,7 +683,7 @@ static int nand_davinci_probe(struct platform_device *pdev)
 	info->ioaddr		= (uint32_t __force) vaddr;
 
 	info->current_cs	= info->ioaddr;
-	info->core_chipsel	= pdev->id;
+	info->core_chipsel	= pdata->core_chipsel;
 	info->mask_chipsel	= pdata->mask_chipsel;
 
 	/* use nandboot-capable ALE/CLE masks by default */
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 52+ messages in thread

* [PATCH 12/12] ARM: davinci: aemif: stop using pdev->id as nand chipselect
  2018-04-30  8:24 ` Bartosz Golaszewski
@ 2018-04-30  8:24   ` Bartosz Golaszewski
  -1 siblings, 0 replies; 52+ messages in thread
From: Bartosz Golaszewski @ 2018-04-30  8:24 UTC (permalink / raw)
  To: Sekhar Nori, Kevin Hilman, Russell King, Boris Brezillon,
	Richard Weinberger, David Woodhouse, Brian Norris, Marek Vasut,
	Tony Lindgren, Krzysztof Kozlowski
  Cc: linux-arm-kernel, linux-kernel, linux-mtd, Bartosz Golaszewski

From: Bartosz Golaszewski <bgolaszewski@baylibre.com>

All platforms now use the core_chipsel field in platform_data. Stop
using pdev->id in the aemif code.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
---
 arch/arm/mach-davinci/aemif.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/arch/arm/mach-davinci/aemif.c b/arch/arm/mach-davinci/aemif.c
index ff8b7e76b6e9..e4ab3f3a2a1f 100644
--- a/arch/arm/mach-davinci/aemif.c
+++ b/arch/arm/mach-davinci/aemif.c
@@ -189,7 +189,7 @@ int davinci_aemif_setup(struct platform_device *pdev)
 	 * Setup Async configuration register in case we did not boot
 	 * from NAND and so bootloader did not bother to set it up.
 	 */
-	val = davinci_aemif_readl(base, A1CR_OFFSET + pdev->id * 4);
+	val = davinci_aemif_readl(base, A1CR_OFFSET + pdata->core_chipsel * 4);
 	/*
 	 * Extended Wait is not valid and Select Strobe mode is not
 	 * used
@@ -198,13 +198,13 @@ int davinci_aemif_setup(struct platform_device *pdev)
 	if (pdata->options & NAND_BUSWIDTH_16)
 		val |= 0x1;
 
-	davinci_aemif_writel(base, A1CR_OFFSET + pdev->id * 4, val);
+	davinci_aemif_writel(base, A1CR_OFFSET + pdata->core_chipsel * 4, val);
 
 	clkrate = clk_get_rate(clk);
 
 	if (pdata->timing)
-		ret = davinci_aemif_setup_timing(pdata->timing, base, pdev->id,
-						 clkrate);
+		ret = davinci_aemif_setup_timing(pdata->timing, base,
+						 pdata->core_chipsel, clkrate);
 
 	if (ret < 0)
 		dev_dbg(&pdev->dev, "NAND timing values setup fail\n");
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 52+ messages in thread

* [PATCH 12/12] ARM: davinci: aemif: stop using pdev->id as nand chipselect
@ 2018-04-30  8:24   ` Bartosz Golaszewski
  0 siblings, 0 replies; 52+ messages in thread
From: Bartosz Golaszewski @ 2018-04-30  8:24 UTC (permalink / raw)
  To: linux-arm-kernel

From: Bartosz Golaszewski <bgolaszewski@baylibre.com>

All platforms now use the core_chipsel field in platform_data. Stop
using pdev->id in the aemif code.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
---
 arch/arm/mach-davinci/aemif.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/arch/arm/mach-davinci/aemif.c b/arch/arm/mach-davinci/aemif.c
index ff8b7e76b6e9..e4ab3f3a2a1f 100644
--- a/arch/arm/mach-davinci/aemif.c
+++ b/arch/arm/mach-davinci/aemif.c
@@ -189,7 +189,7 @@ int davinci_aemif_setup(struct platform_device *pdev)
 	 * Setup Async configuration register in case we did not boot
 	 * from NAND and so bootloader did not bother to set it up.
 	 */
-	val = davinci_aemif_readl(base, A1CR_OFFSET + pdev->id * 4);
+	val = davinci_aemif_readl(base, A1CR_OFFSET + pdata->core_chipsel * 4);
 	/*
 	 * Extended Wait is not valid and Select Strobe mode is not
 	 * used
@@ -198,13 +198,13 @@ int davinci_aemif_setup(struct platform_device *pdev)
 	if (pdata->options & NAND_BUSWIDTH_16)
 		val |= 0x1;
 
-	davinci_aemif_writel(base, A1CR_OFFSET + pdev->id * 4, val);
+	davinci_aemif_writel(base, A1CR_OFFSET + pdata->core_chipsel * 4, val);
 
 	clkrate = clk_get_rate(clk);
 
 	if (pdata->timing)
-		ret = davinci_aemif_setup_timing(pdata->timing, base, pdev->id,
-						 clkrate);
+		ret = davinci_aemif_setup_timing(pdata->timing, base,
+						 pdata->core_chipsel, clkrate);
 
 	if (ret < 0)
 		dev_dbg(&pdev->dev, "NAND timing values setup fail\n");
-- 
2.17.0

^ permalink raw reply related	[flat|nested] 52+ messages in thread

* Re: [PATCH 00/12] mtd: nand: davinci: stop using pdev->id as chipselect
  2018-04-30  8:24 ` Bartosz Golaszewski
@ 2018-04-30 10:09   ` Boris Brezillon
  -1 siblings, 0 replies; 52+ messages in thread
From: Boris Brezillon @ 2018-04-30 10:09 UTC (permalink / raw)
  To: Bartosz Golaszewski
  Cc: Sekhar Nori, Kevin Hilman, Russell King, Richard Weinberger,
	David Woodhouse, Brian Norris, Marek Vasut, Tony Lindgren,
	Krzysztof Kozlowski, Bartosz Golaszewski, linux-mtd,
	linux-kernel, linux-arm-kernel

Hi Bartosz,

On Mon, 30 Apr 2018 10:24:41 +0200
Bartosz Golaszewski <brgl@bgdev.pl> wrote:

> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
> 
> We have the 'ti,davinci-chipselect' property in the device tree, but
> when using platform data the driver silently uses the id field of
> struct platform_device as the chipselect. This is confusing and we
> almost broke the nand support again recently after converting the
> platform to common clock framework (which changed the device id in the
> clock lookup - the problem is gone now that we no longer acquire the
> clock in the nand driver.
> 
> This series adds a new field to davinci-nand platform data, then makes
> all board use it and finally modifies the two drivers that make use of
> it.
> 
> Bartosz Golaszewski (12):
>   mtd: nand: davinci: store the core chipselect number in platform data

Raw NAND related patches (that is, everything that is not onenand or
SPI NAND) should use the "mtd: rawnand: " prefix now. Other than that,
I'm fine with the patch series, just let me know how you want to have it
merged (through the MTD tree or the davinci tree).

Thanks,

Boris

^ permalink raw reply	[flat|nested] 52+ messages in thread

* [PATCH 00/12] mtd: nand: davinci: stop using pdev->id as chipselect
@ 2018-04-30 10:09   ` Boris Brezillon
  0 siblings, 0 replies; 52+ messages in thread
From: Boris Brezillon @ 2018-04-30 10:09 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Bartosz,

On Mon, 30 Apr 2018 10:24:41 +0200
Bartosz Golaszewski <brgl@bgdev.pl> wrote:

> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
> 
> We have the 'ti,davinci-chipselect' property in the device tree, but
> when using platform data the driver silently uses the id field of
> struct platform_device as the chipselect. This is confusing and we
> almost broke the nand support again recently after converting the
> platform to common clock framework (which changed the device id in the
> clock lookup - the problem is gone now that we no longer acquire the
> clock in the nand driver.
> 
> This series adds a new field to davinci-nand platform data, then makes
> all board use it and finally modifies the two drivers that make use of
> it.
> 
> Bartosz Golaszewski (12):
>   mtd: nand: davinci: store the core chipselect number in platform data

Raw NAND related patches (that is, everything that is not onenand or
SPI NAND) should use the "mtd: rawnand: " prefix now. Other than that,
I'm fine with the patch series, just let me know how you want to have it
merged (through the MTD tree or the davinci tree).

Thanks,

Boris

^ permalink raw reply	[flat|nested] 52+ messages in thread

* Re: [PATCH 00/12] mtd: nand: davinci: stop using pdev->id as chipselect
  2018-04-30 10:09   ` Boris Brezillon
@ 2018-04-30 16:45     ` Bartosz Golaszewski
  -1 siblings, 0 replies; 52+ messages in thread
From: Bartosz Golaszewski @ 2018-04-30 16:45 UTC (permalink / raw)
  To: Boris Brezillon
  Cc: Sekhar Nori, Kevin Hilman, Russell King, Richard Weinberger,
	David Woodhouse, Brian Norris, Marek Vasut, Tony Lindgren,
	Krzysztof Kozlowski, Bartosz Golaszewski, linux-mtd,
	Linux Kernel Mailing List, Linux ARM

2018-04-30 12:09 GMT+02:00 Boris Brezillon <boris.brezillon@bootlin.com>:
> Hi Bartosz,
>
> On Mon, 30 Apr 2018 10:24:41 +0200
> Bartosz Golaszewski <brgl@bgdev.pl> wrote:
>
>> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
>>
>> We have the 'ti,davinci-chipselect' property in the device tree, but
>> when using platform data the driver silently uses the id field of
>> struct platform_device as the chipselect. This is confusing and we
>> almost broke the nand support again recently after converting the
>> platform to common clock framework (which changed the device id in the
>> clock lookup - the problem is gone now that we no longer acquire the
>> clock in the nand driver.
>>
>> This series adds a new field to davinci-nand platform data, then makes
>> all board use it and finally modifies the two drivers that make use of
>> it.
>>
>> Bartosz Golaszewski (12):
>>   mtd: nand: davinci: store the core chipselect number in platform data
>
> Raw NAND related patches (that is, everything that is not onenand or
> SPI NAND) should use the "mtd: rawnand: " prefix now. Other than that,
> I'm fine with the patch series, just let me know how you want to have it
> merged (through the MTD tree or the davinci tree).
>
> Thanks,
>
> Boris

I think Sekhar could pick all those patches up for 4.18.

Sekhar - do you want me to resend the series with the commit message
changed as requested by Boris, or can you fix it when applying the
series?

Best regards,
Bartosz Golaszewski

^ permalink raw reply	[flat|nested] 52+ messages in thread

* [PATCH 00/12] mtd: nand: davinci: stop using pdev->id as chipselect
@ 2018-04-30 16:45     ` Bartosz Golaszewski
  0 siblings, 0 replies; 52+ messages in thread
From: Bartosz Golaszewski @ 2018-04-30 16:45 UTC (permalink / raw)
  To: linux-arm-kernel

2018-04-30 12:09 GMT+02:00 Boris Brezillon <boris.brezillon@bootlin.com>:
> Hi Bartosz,
>
> On Mon, 30 Apr 2018 10:24:41 +0200
> Bartosz Golaszewski <brgl@bgdev.pl> wrote:
>
>> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
>>
>> We have the 'ti,davinci-chipselect' property in the device tree, but
>> when using platform data the driver silently uses the id field of
>> struct platform_device as the chipselect. This is confusing and we
>> almost broke the nand support again recently after converting the
>> platform to common clock framework (which changed the device id in the
>> clock lookup - the problem is gone now that we no longer acquire the
>> clock in the nand driver.
>>
>> This series adds a new field to davinci-nand platform data, then makes
>> all board use it and finally modifies the two drivers that make use of
>> it.
>>
>> Bartosz Golaszewski (12):
>>   mtd: nand: davinci: store the core chipselect number in platform data
>
> Raw NAND related patches (that is, everything that is not onenand or
> SPI NAND) should use the "mtd: rawnand: " prefix now. Other than that,
> I'm fine with the patch series, just let me know how you want to have it
> merged (through the MTD tree or the davinci tree).
>
> Thanks,
>
> Boris

I think Sekhar could pick all those patches up for 4.18.

Sekhar - do you want me to resend the series with the commit message
changed as requested by Boris, or can you fix it when applying the
series?

Best regards,
Bartosz Golaszewski

^ permalink raw reply	[flat|nested] 52+ messages in thread

* Re: [PATCH 00/12] mtd: nand: davinci: stop using pdev->id as chipselect
  2018-04-30 16:45     ` Bartosz Golaszewski
@ 2018-04-30 16:47       ` Boris Brezillon
  -1 siblings, 0 replies; 52+ messages in thread
From: Boris Brezillon @ 2018-04-30 16:47 UTC (permalink / raw)
  To: Bartosz Golaszewski
  Cc: Sekhar Nori, Kevin Hilman, Russell King, Richard Weinberger,
	David Woodhouse, Brian Norris, Marek Vasut, Tony Lindgren,
	Krzysztof Kozlowski, Bartosz Golaszewski, linux-mtd,
	Linux Kernel Mailing List, Linux ARM

On Mon, 30 Apr 2018 18:45:06 +0200
Bartosz Golaszewski <brgl@bgdev.pl> wrote:

> 2018-04-30 12:09 GMT+02:00 Boris Brezillon <boris.brezillon@bootlin.com>:
> > Hi Bartosz,
> >
> > On Mon, 30 Apr 2018 10:24:41 +0200
> > Bartosz Golaszewski <brgl@bgdev.pl> wrote:
> >
> >> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
> >>
> >> We have the 'ti,davinci-chipselect' property in the device tree, but
> >> when using platform data the driver silently uses the id field of
> >> struct platform_device as the chipselect. This is confusing and we
> >> almost broke the nand support again recently after converting the
> >> platform to common clock framework (which changed the device id in the
> >> clock lookup - the problem is gone now that we no longer acquire the
> >> clock in the nand driver.
> >>
> >> This series adds a new field to davinci-nand platform data, then makes
> >> all board use it and finally modifies the two drivers that make use of
> >> it.
> >>
> >> Bartosz Golaszewski (12):
> >>   mtd: nand: davinci: store the core chipselect number in platform data
> >
> > Raw NAND related patches (that is, everything that is not onenand or
> > SPI NAND) should use the "mtd: rawnand: " prefix now. Other than that,
> > I'm fine with the patch series, just let me know how you want to have it
> > merged (through the MTD tree or the davinci tree).
> >
> > Thanks,
> >
> > Boris
> 
> I think Sekhar could pick all those patches up for 4.18.

Okay, then I'd need an immutable branch containing these changes.

> 
> Sekhar - do you want me to resend the series with the commit message
> changed as requested by Boris, or can you fix it when applying the
> series?
> 
> Best regards,
> Bartosz Golaszewski

^ permalink raw reply	[flat|nested] 52+ messages in thread

* [PATCH 00/12] mtd: nand: davinci: stop using pdev->id as chipselect
@ 2018-04-30 16:47       ` Boris Brezillon
  0 siblings, 0 replies; 52+ messages in thread
From: Boris Brezillon @ 2018-04-30 16:47 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, 30 Apr 2018 18:45:06 +0200
Bartosz Golaszewski <brgl@bgdev.pl> wrote:

> 2018-04-30 12:09 GMT+02:00 Boris Brezillon <boris.brezillon@bootlin.com>:
> > Hi Bartosz,
> >
> > On Mon, 30 Apr 2018 10:24:41 +0200
> > Bartosz Golaszewski <brgl@bgdev.pl> wrote:
> >
> >> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
> >>
> >> We have the 'ti,davinci-chipselect' property in the device tree, but
> >> when using platform data the driver silently uses the id field of
> >> struct platform_device as the chipselect. This is confusing and we
> >> almost broke the nand support again recently after converting the
> >> platform to common clock framework (which changed the device id in the
> >> clock lookup - the problem is gone now that we no longer acquire the
> >> clock in the nand driver.
> >>
> >> This series adds a new field to davinci-nand platform data, then makes
> >> all board use it and finally modifies the two drivers that make use of
> >> it.
> >>
> >> Bartosz Golaszewski (12):
> >>   mtd: nand: davinci: store the core chipselect number in platform data
> >
> > Raw NAND related patches (that is, everything that is not onenand or
> > SPI NAND) should use the "mtd: rawnand: " prefix now. Other than that,
> > I'm fine with the patch series, just let me know how you want to have it
> > merged (through the MTD tree or the davinci tree).
> >
> > Thanks,
> >
> > Boris
> 
> I think Sekhar could pick all those patches up for 4.18.

Okay, then I'd need an immutable branch containing these changes.

> 
> Sekhar - do you want me to resend the series with the commit message
> changed as requested by Boris, or can you fix it when applying the
> series?
> 
> Best regards,
> Bartosz Golaszewski

^ permalink raw reply	[flat|nested] 52+ messages in thread

* Re: [PATCH 01/12] mtd: nand: davinci: store the core chipselect number in platform data
  2018-04-30  8:24   ` Bartosz Golaszewski
@ 2018-05-01  9:25     ` Sekhar Nori
  -1 siblings, 0 replies; 52+ messages in thread
From: Sekhar Nori @ 2018-05-01  9:25 UTC (permalink / raw)
  To: Bartosz Golaszewski, Kevin Hilman, Russell King, Boris Brezillon,
	Richard Weinberger, David Woodhouse, Brian Norris, Marek Vasut,
	Tony Lindgren, Krzysztof Kozlowski
  Cc: linux-arm-kernel, linux-kernel, linux-mtd, Bartosz Golaszewski

On Monday 30 April 2018 01:54 PM, Bartosz Golaszewski wrote:
> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
> 
> We have the 'ti,davinci-chipselect' property in the device tree, but
> when using platform data the driver silently uses the id field of
> struct platform_device as the chipselect. This is confusing and we
> almost broke the nand support again recently after converting the
> platform to common clock framework (which changed the device id in the
> clock lookup - the problem is gone now that we no longer acquire the
> clock in the nand driver.
> 
> This patch adds a new filed - core_chipsel - to the platform_data.

s/filed/field

> Subsequent patches will convert the platforms to using this new field.

Can you add a comment for this new field too, like how we have for most
other fields?

Curious on what 'core' in core_chipsel means. Something to do with
chip-select offset we have on DA850?

> 
> Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>

Thanks,
Sekhar

^ permalink raw reply	[flat|nested] 52+ messages in thread

* [PATCH 01/12] mtd: nand: davinci: store the core chipselect number in platform data
@ 2018-05-01  9:25     ` Sekhar Nori
  0 siblings, 0 replies; 52+ messages in thread
From: Sekhar Nori @ 2018-05-01  9:25 UTC (permalink / raw)
  To: linux-arm-kernel

On Monday 30 April 2018 01:54 PM, Bartosz Golaszewski wrote:
> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
> 
> We have the 'ti,davinci-chipselect' property in the device tree, but
> when using platform data the driver silently uses the id field of
> struct platform_device as the chipselect. This is confusing and we
> almost broke the nand support again recently after converting the
> platform to common clock framework (which changed the device id in the
> clock lookup - the problem is gone now that we no longer acquire the
> clock in the nand driver.
> 
> This patch adds a new filed - core_chipsel - to the platform_data.

s/filed/field

> Subsequent patches will convert the platforms to using this new field.

Can you add a comment for this new field too, like how we have for most
other fields?

Curious on what 'core' in core_chipsel means. Something to do with
chip-select offset we have on DA850?

> 
> Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>

Thanks,
Sekhar

^ permalink raw reply	[flat|nested] 52+ messages in thread

* Re: [PATCH 01/12] mtd: nand: davinci: store the core chipselect number in platform data
  2018-05-01  9:25     ` Sekhar Nori
@ 2018-05-01  9:53       ` Sekhar Nori
  -1 siblings, 0 replies; 52+ messages in thread
From: Sekhar Nori @ 2018-05-01  9:53 UTC (permalink / raw)
  To: Bartosz Golaszewski, Kevin Hilman, Russell King, Boris Brezillon,
	Richard Weinberger, David Woodhouse, Brian Norris, Marek Vasut,
	Tony Lindgren, Krzysztof Kozlowski
  Cc: linux-arm-kernel, linux-kernel, linux-mtd, Bartosz Golaszewski

On Tuesday 01 May 2018 02:55 PM, Sekhar Nori wrote:
> On Monday 30 April 2018 01:54 PM, Bartosz Golaszewski wrote:
>> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
>>
>> We have the 'ti,davinci-chipselect' property in the device tree, but
>> when using platform data the driver silently uses the id field of
>> struct platform_device as the chipselect. This is confusing and we
>> almost broke the nand support again recently after converting the
>> platform to common clock framework (which changed the device id in the
>> clock lookup - the problem is gone now that we no longer acquire the
>> clock in the nand driver.
>>
>> This patch adds a new filed - core_chipsel - to the platform_data.
> 
> s/filed/field
> 
>> Subsequent patches will convert the platforms to using this new field.
> 
> Can you add a comment for this new field too, like how we have for most
> other fields?
> 
> Curious on what 'core' in core_chipsel means. Something to do with
> chip-select offset we have on DA850?

Looks like you may have just picked the terminology from DaVinci NAND
driver (introduced back in 2009). But in this context, it means the
0-indexed chip-select number that of the asynchronous memory interface
to which the NAND device is connected.

So, may be a comment here will suffice.

Thanks,
Sekhar

^ permalink raw reply	[flat|nested] 52+ messages in thread

* [PATCH 01/12] mtd: nand: davinci: store the core chipselect number in platform data
@ 2018-05-01  9:53       ` Sekhar Nori
  0 siblings, 0 replies; 52+ messages in thread
From: Sekhar Nori @ 2018-05-01  9:53 UTC (permalink / raw)
  To: linux-arm-kernel

On Tuesday 01 May 2018 02:55 PM, Sekhar Nori wrote:
> On Monday 30 April 2018 01:54 PM, Bartosz Golaszewski wrote:
>> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
>>
>> We have the 'ti,davinci-chipselect' property in the device tree, but
>> when using platform data the driver silently uses the id field of
>> struct platform_device as the chipselect. This is confusing and we
>> almost broke the nand support again recently after converting the
>> platform to common clock framework (which changed the device id in the
>> clock lookup - the problem is gone now that we no longer acquire the
>> clock in the nand driver.
>>
>> This patch adds a new filed - core_chipsel - to the platform_data.
> 
> s/filed/field
> 
>> Subsequent patches will convert the platforms to using this new field.
> 
> Can you add a comment for this new field too, like how we have for most
> other fields?
> 
> Curious on what 'core' in core_chipsel means. Something to do with
> chip-select offset we have on DA850?

Looks like you may have just picked the terminology from DaVinci NAND
driver (introduced back in 2009). But in this context, it means the
0-indexed chip-select number that of the asynchronous memory interface
to which the NAND device is connected.

So, may be a comment here will suffice.

Thanks,
Sekhar

^ permalink raw reply	[flat|nested] 52+ messages in thread

* Re: [PATCH 00/12] mtd: nand: davinci: stop using pdev->id as chipselect
  2018-04-30 16:47       ` Boris Brezillon
@ 2018-05-01 10:12         ` Sekhar Nori
  -1 siblings, 0 replies; 52+ messages in thread
From: Sekhar Nori @ 2018-05-01 10:12 UTC (permalink / raw)
  To: Boris Brezillon, Bartosz Golaszewski
  Cc: Kevin Hilman, Russell King, Richard Weinberger, David Woodhouse,
	Brian Norris, Marek Vasut, Tony Lindgren, Krzysztof Kozlowski,
	Bartosz Golaszewski, linux-mtd, Linux Kernel Mailing List,
	Linux ARM

On Monday 30 April 2018 10:17 PM, Boris Brezillon wrote:
> On Mon, 30 Apr 2018 18:45:06 +0200
> Bartosz Golaszewski <brgl@bgdev.pl> wrote:
> 
>> 2018-04-30 12:09 GMT+02:00 Boris Brezillon <boris.brezillon@bootlin.com>:
>>> Hi Bartosz,
>>>
>>> On Mon, 30 Apr 2018 10:24:41 +0200
>>> Bartosz Golaszewski <brgl@bgdev.pl> wrote:
>>>
>>>> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
>>>>
>>>> We have the 'ti,davinci-chipselect' property in the device tree, but
>>>> when using platform data the driver silently uses the id field of
>>>> struct platform_device as the chipselect. This is confusing and we
>>>> almost broke the nand support again recently after converting the
>>>> platform to common clock framework (which changed the device id in the
>>>> clock lookup - the problem is gone now that we no longer acquire the
>>>> clock in the nand driver.
>>>>
>>>> This series adds a new field to davinci-nand platform data, then makes
>>>> all board use it and finally modifies the two drivers that make use of
>>>> it.
>>>>
>>>> Bartosz Golaszewski (12):
>>>>   mtd: nand: davinci: store the core chipselect number in platform data
>>>
>>> Raw NAND related patches (that is, everything that is not onenand or
>>> SPI NAND) should use the "mtd: rawnand: " prefix now. Other than that,
>>> I'm fine with the patch series, just let me know how you want to have it
>>> merged (through the MTD tree or the davinci tree).
>>>
>>> Thanks,
>>>
>>> Boris
>>
>> I think Sekhar could pick all those patches up for 4.18.
> 
> Okay, then I'd need an immutable branch containing these changes.

Boris, sure!

> 
>>
>> Sekhar - do you want me to resend the series with the commit message
>> changed as requested by Boris, or can you fix it when applying the
>> series?

Bartosz, No need to resend. I also wanted couple of changes on 1/12
which I can do locally too.

Thanks,
Sekhar

^ permalink raw reply	[flat|nested] 52+ messages in thread

* [PATCH 00/12] mtd: nand: davinci: stop using pdev->id as chipselect
@ 2018-05-01 10:12         ` Sekhar Nori
  0 siblings, 0 replies; 52+ messages in thread
From: Sekhar Nori @ 2018-05-01 10:12 UTC (permalink / raw)
  To: linux-arm-kernel

On Monday 30 April 2018 10:17 PM, Boris Brezillon wrote:
> On Mon, 30 Apr 2018 18:45:06 +0200
> Bartosz Golaszewski <brgl@bgdev.pl> wrote:
> 
>> 2018-04-30 12:09 GMT+02:00 Boris Brezillon <boris.brezillon@bootlin.com>:
>>> Hi Bartosz,
>>>
>>> On Mon, 30 Apr 2018 10:24:41 +0200
>>> Bartosz Golaszewski <brgl@bgdev.pl> wrote:
>>>
>>>> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
>>>>
>>>> We have the 'ti,davinci-chipselect' property in the device tree, but
>>>> when using platform data the driver silently uses the id field of
>>>> struct platform_device as the chipselect. This is confusing and we
>>>> almost broke the nand support again recently after converting the
>>>> platform to common clock framework (which changed the device id in the
>>>> clock lookup - the problem is gone now that we no longer acquire the
>>>> clock in the nand driver.
>>>>
>>>> This series adds a new field to davinci-nand platform data, then makes
>>>> all board use it and finally modifies the two drivers that make use of
>>>> it.
>>>>
>>>> Bartosz Golaszewski (12):
>>>>   mtd: nand: davinci: store the core chipselect number in platform data
>>>
>>> Raw NAND related patches (that is, everything that is not onenand or
>>> SPI NAND) should use the "mtd: rawnand: " prefix now. Other than that,
>>> I'm fine with the patch series, just let me know how you want to have it
>>> merged (through the MTD tree or the davinci tree).
>>>
>>> Thanks,
>>>
>>> Boris
>>
>> I think Sekhar could pick all those patches up for 4.18.
> 
> Okay, then I'd need an immutable branch containing these changes.

Boris, sure!

> 
>>
>> Sekhar - do you want me to resend the series with the commit message
>> changed as requested by Boris, or can you fix it when applying the
>> series?

Bartosz, No need to resend. I also wanted couple of changes on 1/12
which I can do locally too.

Thanks,
Sekhar

^ permalink raw reply	[flat|nested] 52+ messages in thread

* Re: [PATCH 01/12] mtd: nand: davinci: store the core chipselect number in platform data
  2018-05-01  9:53       ` Sekhar Nori
@ 2018-05-01 10:29         ` Sekhar Nori
  -1 siblings, 0 replies; 52+ messages in thread
From: Sekhar Nori @ 2018-05-01 10:29 UTC (permalink / raw)
  To: Bartosz Golaszewski, Kevin Hilman, Russell King, Boris Brezillon,
	Richard Weinberger, David Woodhouse, Brian Norris, Marek Vasut,
	Tony Lindgren, Krzysztof Kozlowski
  Cc: linux-arm-kernel, linux-kernel, linux-mtd, Bartosz Golaszewski

On Tuesday 01 May 2018 03:23 PM, Sekhar Nori wrote:
> On Tuesday 01 May 2018 02:55 PM, Sekhar Nori wrote:
>> On Monday 30 April 2018 01:54 PM, Bartosz Golaszewski wrote:
>>> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
>>>
>>> We have the 'ti,davinci-chipselect' property in the device tree, but
>>> when using platform data the driver silently uses the id field of
>>> struct platform_device as the chipselect. This is confusing and we
>>> almost broke the nand support again recently after converting the
>>> platform to common clock framework (which changed the device id in the
>>> clock lookup - the problem is gone now that we no longer acquire the
>>> clock in the nand driver.
>>>
>>> This patch adds a new filed - core_chipsel - to the platform_data.
>>
>> s/filed/field
>>
>>> Subsequent patches will convert the platforms to using this new field.
>>
>> Can you add a comment for this new field too, like how we have for most
>> other fields?
>>
>> Curious on what 'core' in core_chipsel means. Something to do with
>> chip-select offset we have on DA850?
> 
> Looks like you may have just picked the terminology from DaVinci NAND
> driver (introduced back in 2009). But in this context, it means the
> 0-indexed chip-select number that of the asynchronous memory interface
> to which the NAND device is connected.
> 
> So, may be a comment here will suffice.

This is what I committed:

--8<--
commit 533d93703fa717fdf74c4fb711c868c4fdc8b475 (HEAD -> refs/heads/v4.18/nand-cs-simplification)
Author:     Bartosz Golaszewski <bgolaszewski@baylibre.com>
AuthorDate: Mon Apr 30 10:24:42 2018 +0200
Commit:     Sekhar Nori <nsekhar@ti.com>
CommitDate: Tue May 1 15:57:47 2018 +0530

    mtd: nand: davinci: store the core chipselect number in platform data
    
    We have the 'ti,davinci-chipselect' property in the device tree, but
    when using platform data the driver silently uses the id field of
    struct platform_device as the chipselect. This is confusing and we
    almost broke the nand support again recently after converting the
    platform to common clock framework (which changed the device id in the
    clock lookup - the problem is gone now that we no longer acquire the
    clock in the nand driver.
    
    This patch adds a new field - core_chipsel - to the platform_data.
    Subsequent patches will convert the platforms to using this new field.
    
    Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
    Signed-off-by: Sekhar Nori <nsekhar@ti.com>

diff --git a/include/linux/platform_data/mtd-davinci.h b/include/linux/platform_data/mtd-davinci.h
index f1a2cf655bdb..1bbfa27cccb4 100644
--- a/include/linux/platform_data/mtd-davinci.h
+++ b/include/linux/platform_data/mtd-davinci.h
@@ -56,6 +56,16 @@ struct davinci_nand_pdata {		/* platform_data */
 	uint32_t		mask_ale;
 	uint32_t		mask_cle;
 
+	/*
+	 * 0-indexed chip-select number of the asynchronous
+	 * interface to which the NAND device has been connected.
+	 *
+	 * So, if you have NAND connected to CS3 of DA850, you
+	 * will pass '1' here. Since the asynchronous interface
+	 * on DA850 starts from CS2.
+	 */
+	uint32_t		core_chipsel;
+
 	/* for packages using two chipselects */
 	uint32_t		mask_chipsel;
 

^ permalink raw reply related	[flat|nested] 52+ messages in thread

* [PATCH 01/12] mtd: nand: davinci: store the core chipselect number in platform data
@ 2018-05-01 10:29         ` Sekhar Nori
  0 siblings, 0 replies; 52+ messages in thread
From: Sekhar Nori @ 2018-05-01 10:29 UTC (permalink / raw)
  To: linux-arm-kernel

On Tuesday 01 May 2018 03:23 PM, Sekhar Nori wrote:
> On Tuesday 01 May 2018 02:55 PM, Sekhar Nori wrote:
>> On Monday 30 April 2018 01:54 PM, Bartosz Golaszewski wrote:
>>> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
>>>
>>> We have the 'ti,davinci-chipselect' property in the device tree, but
>>> when using platform data the driver silently uses the id field of
>>> struct platform_device as the chipselect. This is confusing and we
>>> almost broke the nand support again recently after converting the
>>> platform to common clock framework (which changed the device id in the
>>> clock lookup - the problem is gone now that we no longer acquire the
>>> clock in the nand driver.
>>>
>>> This patch adds a new filed - core_chipsel - to the platform_data.
>>
>> s/filed/field
>>
>>> Subsequent patches will convert the platforms to using this new field.
>>
>> Can you add a comment for this new field too, like how we have for most
>> other fields?
>>
>> Curious on what 'core' in core_chipsel means. Something to do with
>> chip-select offset we have on DA850?
> 
> Looks like you may have just picked the terminology from DaVinci NAND
> driver (introduced back in 2009). But in this context, it means the
> 0-indexed chip-select number that of the asynchronous memory interface
> to which the NAND device is connected.
> 
> So, may be a comment here will suffice.

This is what I committed:

--8<--
commit 533d93703fa717fdf74c4fb711c868c4fdc8b475 (HEAD -> refs/heads/v4.18/nand-cs-simplification)
Author:     Bartosz Golaszewski <bgolaszewski@baylibre.com>
AuthorDate: Mon Apr 30 10:24:42 2018 +0200
Commit:     Sekhar Nori <nsekhar@ti.com>
CommitDate: Tue May 1 15:57:47 2018 +0530

    mtd: nand: davinci: store the core chipselect number in platform data
    
    We have the 'ti,davinci-chipselect' property in the device tree, but
    when using platform data the driver silently uses the id field of
    struct platform_device as the chipselect. This is confusing and we
    almost broke the nand support again recently after converting the
    platform to common clock framework (which changed the device id in the
    clock lookup - the problem is gone now that we no longer acquire the
    clock in the nand driver.
    
    This patch adds a new field - core_chipsel - to the platform_data.
    Subsequent patches will convert the platforms to using this new field.
    
    Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
    Signed-off-by: Sekhar Nori <nsekhar@ti.com>

diff --git a/include/linux/platform_data/mtd-davinci.h b/include/linux/platform_data/mtd-davinci.h
index f1a2cf655bdb..1bbfa27cccb4 100644
--- a/include/linux/platform_data/mtd-davinci.h
+++ b/include/linux/platform_data/mtd-davinci.h
@@ -56,6 +56,16 @@ struct davinci_nand_pdata {		/* platform_data */
 	uint32_t		mask_ale;
 	uint32_t		mask_cle;
 
+	/*
+	 * 0-indexed chip-select number of the asynchronous
+	 * interface to which the NAND device has been connected.
+	 *
+	 * So, if you have NAND connected to CS3 of DA850, you
+	 * will pass '1' here. Since the asynchronous interface
+	 * on DA850 starts from CS2.
+	 */
+	uint32_t		core_chipsel;
+
 	/* for packages using two chipselects */
 	uint32_t		mask_chipsel;
 

^ permalink raw reply related	[flat|nested] 52+ messages in thread

* Re: [PATCH 00/12] mtd: nand: davinci: stop using pdev->id as chipselect
  2018-04-30 10:09   ` Boris Brezillon
@ 2018-05-01 10:31     ` Sekhar Nori
  -1 siblings, 0 replies; 52+ messages in thread
From: Sekhar Nori @ 2018-05-01 10:31 UTC (permalink / raw)
  To: Boris Brezillon, Bartosz Golaszewski
  Cc: Kevin Hilman, Russell King, Richard Weinberger, David Woodhouse,
	Brian Norris, Marek Vasut, Tony Lindgren, Krzysztof Kozlowski,
	Bartosz Golaszewski, linux-mtd, linux-kernel, linux-arm-kernel

On Monday 30 April 2018 03:39 PM, Boris Brezillon wrote:
> Hi Bartosz,
> 
> On Mon, 30 Apr 2018 10:24:41 +0200
> Bartosz Golaszewski <brgl@bgdev.pl> wrote:
> 
>> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
>>
>> We have the 'ti,davinci-chipselect' property in the device tree, but
>> when using platform data the driver silently uses the id field of
>> struct platform_device as the chipselect. This is confusing and we
>> almost broke the nand support again recently after converting the
>> platform to common clock framework (which changed the device id in the
>> clock lookup - the problem is gone now that we no longer acquire the
>> clock in the nand driver.
>>
>> This series adds a new field to davinci-nand platform data, then makes
>> all board use it and finally modifies the two drivers that make use of
>> it.
>>
>> Bartosz Golaszewski (12):
>>   mtd: nand: davinci: store the core chipselect number in platform data
> 
> Raw NAND related patches (that is, everything that is not onenand or
> SPI NAND) should use the "mtd: rawnand: " prefix now. Other than that,
> I'm fine with the patch series, just let me know how you want to have it

Hi Boris, should I convert the "I'm fine" to some sort of formal tag? If
yes, what is the tag and for which patches?

Thanks,
Sekhar

^ permalink raw reply	[flat|nested] 52+ messages in thread

* [PATCH 00/12] mtd: nand: davinci: stop using pdev->id as chipselect
@ 2018-05-01 10:31     ` Sekhar Nori
  0 siblings, 0 replies; 52+ messages in thread
From: Sekhar Nori @ 2018-05-01 10:31 UTC (permalink / raw)
  To: linux-arm-kernel

On Monday 30 April 2018 03:39 PM, Boris Brezillon wrote:
> Hi Bartosz,
> 
> On Mon, 30 Apr 2018 10:24:41 +0200
> Bartosz Golaszewski <brgl@bgdev.pl> wrote:
> 
>> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
>>
>> We have the 'ti,davinci-chipselect' property in the device tree, but
>> when using platform data the driver silently uses the id field of
>> struct platform_device as the chipselect. This is confusing and we
>> almost broke the nand support again recently after converting the
>> platform to common clock framework (which changed the device id in the
>> clock lookup - the problem is gone now that we no longer acquire the
>> clock in the nand driver.
>>
>> This series adds a new field to davinci-nand platform data, then makes
>> all board use it and finally modifies the two drivers that make use of
>> it.
>>
>> Bartosz Golaszewski (12):
>>   mtd: nand: davinci: store the core chipselect number in platform data
> 
> Raw NAND related patches (that is, everything that is not onenand or
> SPI NAND) should use the "mtd: rawnand: " prefix now. Other than that,
> I'm fine with the patch series, just let me know how you want to have it

Hi Boris, should I convert the "I'm fine" to some sort of formal tag? If
yes, what is the tag and for which patches?

Thanks,
Sekhar

^ permalink raw reply	[flat|nested] 52+ messages in thread

* Re: [PATCH 01/12] mtd: nand: davinci: store the core chipselect number in platform data
  2018-05-01 10:29         ` Sekhar Nori
@ 2018-05-01 10:39           ` Sekhar Nori
  -1 siblings, 0 replies; 52+ messages in thread
From: Sekhar Nori @ 2018-05-01 10:39 UTC (permalink / raw)
  To: Bartosz Golaszewski, Kevin Hilman, Russell King, Boris Brezillon,
	Richard Weinberger, David Woodhouse, Brian Norris, Marek Vasut,
	Tony Lindgren, Krzysztof Kozlowski
  Cc: linux-arm-kernel, linux-kernel, linux-mtd, Bartosz Golaszewski

On Tuesday 01 May 2018 03:59 PM, Sekhar Nori wrote:
> On Tuesday 01 May 2018 03:23 PM, Sekhar Nori wrote:
>> On Tuesday 01 May 2018 02:55 PM, Sekhar Nori wrote:
>>> On Monday 30 April 2018 01:54 PM, Bartosz Golaszewski wrote:
>>>> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
>>>>
>>>> We have the 'ti,davinci-chipselect' property in the device tree, but
>>>> when using platform data the driver silently uses the id field of
>>>> struct platform_device as the chipselect. This is confusing and we
>>>> almost broke the nand support again recently after converting the
>>>> platform to common clock framework (which changed the device id in the
>>>> clock lookup - the problem is gone now that we no longer acquire the
>>>> clock in the nand driver.
>>>>
>>>> This patch adds a new filed - core_chipsel - to the platform_data.
>>>
>>> s/filed/field
>>>
>>>> Subsequent patches will convert the platforms to using this new field.
>>>
>>> Can you add a comment for this new field too, like how we have for most
>>> other fields?
>>>
>>> Curious on what 'core' in core_chipsel means. Something to do with
>>> chip-select offset we have on DA850?
>>
>> Looks like you may have just picked the terminology from DaVinci NAND
>> driver (introduced back in 2009). But in this context, it means the
>> 0-indexed chip-select number that of the asynchronous memory interface
>> to which the NAND device is connected.
>>
>> So, may be a comment here will suffice.
> 
> This is what I committed:
> 
> --8<--
> commit 533d93703fa717fdf74c4fb711c868c4fdc8b475 (HEAD -> refs/heads/v4.18/nand-cs-simplification)
> Author:     Bartosz Golaszewski <bgolaszewski@baylibre.com>
> AuthorDate: Mon Apr 30 10:24:42 2018 +0200
> Commit:     Sekhar Nori <nsekhar@ti.com>
> CommitDate: Tue May 1 15:57:47 2018 +0530
> 
>     mtd: nand: davinci: store the core chipselect number in platform data

Missed the rawnand prefix here. Sigh. Here is the fixed headline.

mtd: rawnand: davinci: store the core chipselect number in platform data

Thanks,
Sekhar

^ permalink raw reply	[flat|nested] 52+ messages in thread

* [PATCH 01/12] mtd: nand: davinci: store the core chipselect number in platform data
@ 2018-05-01 10:39           ` Sekhar Nori
  0 siblings, 0 replies; 52+ messages in thread
From: Sekhar Nori @ 2018-05-01 10:39 UTC (permalink / raw)
  To: linux-arm-kernel

On Tuesday 01 May 2018 03:59 PM, Sekhar Nori wrote:
> On Tuesday 01 May 2018 03:23 PM, Sekhar Nori wrote:
>> On Tuesday 01 May 2018 02:55 PM, Sekhar Nori wrote:
>>> On Monday 30 April 2018 01:54 PM, Bartosz Golaszewski wrote:
>>>> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
>>>>
>>>> We have the 'ti,davinci-chipselect' property in the device tree, but
>>>> when using platform data the driver silently uses the id field of
>>>> struct platform_device as the chipselect. This is confusing and we
>>>> almost broke the nand support again recently after converting the
>>>> platform to common clock framework (which changed the device id in the
>>>> clock lookup - the problem is gone now that we no longer acquire the
>>>> clock in the nand driver.
>>>>
>>>> This patch adds a new filed - core_chipsel - to the platform_data.
>>>
>>> s/filed/field
>>>
>>>> Subsequent patches will convert the platforms to using this new field.
>>>
>>> Can you add a comment for this new field too, like how we have for most
>>> other fields?
>>>
>>> Curious on what 'core' in core_chipsel means. Something to do with
>>> chip-select offset we have on DA850?
>>
>> Looks like you may have just picked the terminology from DaVinci NAND
>> driver (introduced back in 2009). But in this context, it means the
>> 0-indexed chip-select number that of the asynchronous memory interface
>> to which the NAND device is connected.
>>
>> So, may be a comment here will suffice.
> 
> This is what I committed:
> 
> --8<--
> commit 533d93703fa717fdf74c4fb711c868c4fdc8b475 (HEAD -> refs/heads/v4.18/nand-cs-simplification)
> Author:     Bartosz Golaszewski <bgolaszewski@baylibre.com>
> AuthorDate: Mon Apr 30 10:24:42 2018 +0200
> Commit:     Sekhar Nori <nsekhar@ti.com>
> CommitDate: Tue May 1 15:57:47 2018 +0530
> 
>     mtd: nand: davinci: store the core chipselect number in platform data

Missed the rawnand prefix here. Sigh. Here is the fixed headline.

mtd: rawnand: davinci: store the core chipselect number in platform data

Thanks,
Sekhar

^ permalink raw reply	[flat|nested] 52+ messages in thread

* Re: [PATCH 00/12] mtd: nand: davinci: stop using pdev->id as chipselect
  2018-05-01 10:31     ` Sekhar Nori
@ 2018-05-01 15:02       ` Boris Brezillon
  -1 siblings, 0 replies; 52+ messages in thread
From: Boris Brezillon @ 2018-05-01 15:02 UTC (permalink / raw)
  To: Sekhar Nori
  Cc: Bartosz Golaszewski, Kevin Hilman, Russell King,
	Richard Weinberger, David Woodhouse, Brian Norris, Marek Vasut,
	Tony Lindgren, Krzysztof Kozlowski, Bartosz Golaszewski,
	linux-mtd, linux-kernel, linux-arm-kernel

On Tue, 1 May 2018 16:01:42 +0530
Sekhar Nori <nsekhar@ti.com> wrote:

> On Monday 30 April 2018 03:39 PM, Boris Brezillon wrote:
> > Hi Bartosz,
> > 
> > On Mon, 30 Apr 2018 10:24:41 +0200
> > Bartosz Golaszewski <brgl@bgdev.pl> wrote:
> >   
> >> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
> >>
> >> We have the 'ti,davinci-chipselect' property in the device tree, but
> >> when using platform data the driver silently uses the id field of
> >> struct platform_device as the chipselect. This is confusing and we
> >> almost broke the nand support again recently after converting the
> >> platform to common clock framework (which changed the device id in the
> >> clock lookup - the problem is gone now that we no longer acquire the
> >> clock in the nand driver.
> >>
> >> This series adds a new field to davinci-nand platform data, then makes
> >> all board use it and finally modifies the two drivers that make use of
> >> it.
> >>
> >> Bartosz Golaszewski (12):
> >>   mtd: nand: davinci: store the core chipselect number in platform data  
> > 
> > Raw NAND related patches (that is, everything that is not onenand or
> > SPI NAND) should use the "mtd: rawnand: " prefix now. Other than that,
> > I'm fine with the patch series, just let me know how you want to have it  
> 
> Hi Boris, should I convert the "I'm fine" to some sort of formal tag? If
> yes, what is the tag and for which patches?

Yep, you can add

Acked-by: Boris Brezillon <boris.brezillon@bootlin.com>

on patches 1 and 11.

Thanks,

Boris

^ permalink raw reply	[flat|nested] 52+ messages in thread

* [PATCH 00/12] mtd: nand: davinci: stop using pdev->id as chipselect
@ 2018-05-01 15:02       ` Boris Brezillon
  0 siblings, 0 replies; 52+ messages in thread
From: Boris Brezillon @ 2018-05-01 15:02 UTC (permalink / raw)
  To: linux-arm-kernel

On Tue, 1 May 2018 16:01:42 +0530
Sekhar Nori <nsekhar@ti.com> wrote:

> On Monday 30 April 2018 03:39 PM, Boris Brezillon wrote:
> > Hi Bartosz,
> > 
> > On Mon, 30 Apr 2018 10:24:41 +0200
> > Bartosz Golaszewski <brgl@bgdev.pl> wrote:
> >   
> >> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
> >>
> >> We have the 'ti,davinci-chipselect' property in the device tree, but
> >> when using platform data the driver silently uses the id field of
> >> struct platform_device as the chipselect. This is confusing and we
> >> almost broke the nand support again recently after converting the
> >> platform to common clock framework (which changed the device id in the
> >> clock lookup - the problem is gone now that we no longer acquire the
> >> clock in the nand driver.
> >>
> >> This series adds a new field to davinci-nand platform data, then makes
> >> all board use it and finally modifies the two drivers that make use of
> >> it.
> >>
> >> Bartosz Golaszewski (12):
> >>   mtd: nand: davinci: store the core chipselect number in platform data  
> > 
> > Raw NAND related patches (that is, everything that is not onenand or
> > SPI NAND) should use the "mtd: rawnand: " prefix now. Other than that,
> > I'm fine with the patch series, just let me know how you want to have it  
> 
> Hi Boris, should I convert the "I'm fine" to some sort of formal tag? If
> yes, what is the tag and for which patches?

Yep, you can add

Acked-by: Boris Brezillon <boris.brezillon@bootlin.com>

on patches 1 and 11.

Thanks,

Boris

^ permalink raw reply	[flat|nested] 52+ messages in thread

* Re: [PATCH 01/12] mtd: nand: davinci: store the core chipselect number in platform data
  2018-05-01 10:29         ` Sekhar Nori
@ 2018-05-02 10:45           ` Bartosz Golaszewski
  -1 siblings, 0 replies; 52+ messages in thread
From: Bartosz Golaszewski @ 2018-05-02 10:45 UTC (permalink / raw)
  To: Sekhar Nori
  Cc: Kevin Hilman, Russell King, Boris Brezillon, Richard Weinberger,
	David Woodhouse, Brian Norris, Marek Vasut, Tony Lindgren,
	Krzysztof Kozlowski, Linux ARM, Linux Kernel Mailing List,
	linux-mtd, Bartosz Golaszewski

2018-05-01 12:29 GMT+02:00 Sekhar Nori <nsekhar@ti.com>:
> On Tuesday 01 May 2018 03:23 PM, Sekhar Nori wrote:
>> On Tuesday 01 May 2018 02:55 PM, Sekhar Nori wrote:
>>> On Monday 30 April 2018 01:54 PM, Bartosz Golaszewski wrote:
>>>> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
>>>>
>>>> We have the 'ti,davinci-chipselect' property in the device tree, but
>>>> when using platform data the driver silently uses the id field of
>>>> struct platform_device as the chipselect. This is confusing and we
>>>> almost broke the nand support again recently after converting the
>>>> platform to common clock framework (which changed the device id in the
>>>> clock lookup - the problem is gone now that we no longer acquire the
>>>> clock in the nand driver.
>>>>
>>>> This patch adds a new filed - core_chipsel - to the platform_data.
>>>
>>> s/filed/field
>>>
>>>> Subsequent patches will convert the platforms to using this new field.
>>>
>>> Can you add a comment for this new field too, like how we have for most
>>> other fields?
>>>
>>> Curious on what 'core' in core_chipsel means. Something to do with
>>> chip-select offset we have on DA850?
>>
>> Looks like you may have just picked the terminology from DaVinci NAND
>> driver (introduced back in 2009). But in this context, it means the
>> 0-indexed chip-select number that of the asynchronous memory interface
>> to which the NAND device is connected.
>>
>> So, may be a comment here will suffice.
>
> This is what I committed:
>

I don't see it in your tree yet.

> --8<--
> commit 533d93703fa717fdf74c4fb711c868c4fdc8b475 (HEAD -> refs/heads/v4.18/nand-cs-simplification)
> Author:     Bartosz Golaszewski <bgolaszewski@baylibre.com>
> AuthorDate: Mon Apr 30 10:24:42 2018 +0200
> Commit:     Sekhar Nori <nsekhar@ti.com>
> CommitDate: Tue May 1 15:57:47 2018 +0530
>
>     mtd: nand: davinci: store the core chipselect number in platform data
>
>     We have the 'ti,davinci-chipselect' property in the device tree, but
>     when using platform data the driver silently uses the id field of
>     struct platform_device as the chipselect. This is confusing and we
>     almost broke the nand support again recently after converting the
>     platform to common clock framework (which changed the device id in the
>     clock lookup - the problem is gone now that we no longer acquire the
>     clock in the nand driver.
>
>     This patch adds a new field - core_chipsel - to the platform_data.
>     Subsequent patches will convert the platforms to using this new field.
>
>     Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
>     Signed-off-by: Sekhar Nori <nsekhar@ti.com>
>
> diff --git a/include/linux/platform_data/mtd-davinci.h b/include/linux/platform_data/mtd-davinci.h
> index f1a2cf655bdb..1bbfa27cccb4 100644
> --- a/include/linux/platform_data/mtd-davinci.h
> +++ b/include/linux/platform_data/mtd-davinci.h
> @@ -56,6 +56,16 @@ struct davinci_nand_pdata {          /* platform_data */
>         uint32_t                mask_ale;
>         uint32_t                mask_cle;
>
> +       /*
> +        * 0-indexed chip-select number of the asynchronous
> +        * interface to which the NAND device has been connected.
> +        *
> +        * So, if you have NAND connected to CS3 of DA850, you
> +        * will pass '1' here. Since the asynchronous interface
> +        * on DA850 starts from CS2.
> +        */

Maybe we should add that on all other DaVinci SoCs the async interface
starts from CS0?

> +       uint32_t                core_chipsel;
> +
>         /* for packages using two chipselects */
>         uint32_t                mask_chipsel;
>
>

Thanks,
Bart

^ permalink raw reply	[flat|nested] 52+ messages in thread

* [PATCH 01/12] mtd: nand: davinci: store the core chipselect number in platform data
@ 2018-05-02 10:45           ` Bartosz Golaszewski
  0 siblings, 0 replies; 52+ messages in thread
From: Bartosz Golaszewski @ 2018-05-02 10:45 UTC (permalink / raw)
  To: linux-arm-kernel

2018-05-01 12:29 GMT+02:00 Sekhar Nori <nsekhar@ti.com>:
> On Tuesday 01 May 2018 03:23 PM, Sekhar Nori wrote:
>> On Tuesday 01 May 2018 02:55 PM, Sekhar Nori wrote:
>>> On Monday 30 April 2018 01:54 PM, Bartosz Golaszewski wrote:
>>>> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
>>>>
>>>> We have the 'ti,davinci-chipselect' property in the device tree, but
>>>> when using platform data the driver silently uses the id field of
>>>> struct platform_device as the chipselect. This is confusing and we
>>>> almost broke the nand support again recently after converting the
>>>> platform to common clock framework (which changed the device id in the
>>>> clock lookup - the problem is gone now that we no longer acquire the
>>>> clock in the nand driver.
>>>>
>>>> This patch adds a new filed - core_chipsel - to the platform_data.
>>>
>>> s/filed/field
>>>
>>>> Subsequent patches will convert the platforms to using this new field.
>>>
>>> Can you add a comment for this new field too, like how we have for most
>>> other fields?
>>>
>>> Curious on what 'core' in core_chipsel means. Something to do with
>>> chip-select offset we have on DA850?
>>
>> Looks like you may have just picked the terminology from DaVinci NAND
>> driver (introduced back in 2009). But in this context, it means the
>> 0-indexed chip-select number that of the asynchronous memory interface
>> to which the NAND device is connected.
>>
>> So, may be a comment here will suffice.
>
> This is what I committed:
>

I don't see it in your tree yet.

> --8<--
> commit 533d93703fa717fdf74c4fb711c868c4fdc8b475 (HEAD -> refs/heads/v4.18/nand-cs-simplification)
> Author:     Bartosz Golaszewski <bgolaszewski@baylibre.com>
> AuthorDate: Mon Apr 30 10:24:42 2018 +0200
> Commit:     Sekhar Nori <nsekhar@ti.com>
> CommitDate: Tue May 1 15:57:47 2018 +0530
>
>     mtd: nand: davinci: store the core chipselect number in platform data
>
>     We have the 'ti,davinci-chipselect' property in the device tree, but
>     when using platform data the driver silently uses the id field of
>     struct platform_device as the chipselect. This is confusing and we
>     almost broke the nand support again recently after converting the
>     platform to common clock framework (which changed the device id in the
>     clock lookup - the problem is gone now that we no longer acquire the
>     clock in the nand driver.
>
>     This patch adds a new field - core_chipsel - to the platform_data.
>     Subsequent patches will convert the platforms to using this new field.
>
>     Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
>     Signed-off-by: Sekhar Nori <nsekhar@ti.com>
>
> diff --git a/include/linux/platform_data/mtd-davinci.h b/include/linux/platform_data/mtd-davinci.h
> index f1a2cf655bdb..1bbfa27cccb4 100644
> --- a/include/linux/platform_data/mtd-davinci.h
> +++ b/include/linux/platform_data/mtd-davinci.h
> @@ -56,6 +56,16 @@ struct davinci_nand_pdata {          /* platform_data */
>         uint32_t                mask_ale;
>         uint32_t                mask_cle;
>
> +       /*
> +        * 0-indexed chip-select number of the asynchronous
> +        * interface to which the NAND device has been connected.
> +        *
> +        * So, if you have NAND connected to CS3 of DA850, you
> +        * will pass '1' here. Since the asynchronous interface
> +        * on DA850 starts from CS2.
> +        */

Maybe we should add that on all other DaVinci SoCs the async interface
starts from CS0?

> +       uint32_t                core_chipsel;
> +
>         /* for packages using two chipselects */
>         uint32_t                mask_chipsel;
>
>

Thanks,
Bart

^ permalink raw reply	[flat|nested] 52+ messages in thread

* Re: [PATCH 01/12] mtd: nand: davinci: store the core chipselect number in platform data
  2018-05-02 10:45           ` Bartosz Golaszewski
@ 2018-05-02 15:00             ` Sekhar Nori
  -1 siblings, 0 replies; 52+ messages in thread
From: Sekhar Nori @ 2018-05-02 15:00 UTC (permalink / raw)
  To: Bartosz Golaszewski
  Cc: Kevin Hilman, Russell King, Boris Brezillon, Richard Weinberger,
	David Woodhouse, Brian Norris, Marek Vasut, Tony Lindgren,
	Krzysztof Kozlowski, Linux ARM, Linux Kernel Mailing List,
	linux-mtd, Bartosz Golaszewski

On Wednesday 02 May 2018 04:15 PM, Bartosz Golaszewski wrote:
> 2018-05-01 12:29 GMT+02:00 Sekhar Nori <nsekhar@ti.com>:
>> On Tuesday 01 May 2018 03:23 PM, Sekhar Nori wrote:
>>> On Tuesday 01 May 2018 02:55 PM, Sekhar Nori wrote:
>>>> On Monday 30 April 2018 01:54 PM, Bartosz Golaszewski wrote:
>>>>> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
>>>>>
>>>>> We have the 'ti,davinci-chipselect' property in the device tree, but
>>>>> when using platform data the driver silently uses the id field of
>>>>> struct platform_device as the chipselect. This is confusing and we
>>>>> almost broke the nand support again recently after converting the
>>>>> platform to common clock framework (which changed the device id in the
>>>>> clock lookup - the problem is gone now that we no longer acquire the
>>>>> clock in the nand driver.
>>>>>
>>>>> This patch adds a new filed - core_chipsel - to the platform_data.
>>>>
>>>> s/filed/field
>>>>
>>>>> Subsequent patches will convert the platforms to using this new field.
>>>>
>>>> Can you add a comment for this new field too, like how we have for most
>>>> other fields?
>>>>
>>>> Curious on what 'core' in core_chipsel means. Something to do with
>>>> chip-select offset we have on DA850?
>>>
>>> Looks like you may have just picked the terminology from DaVinci NAND
>>> driver (introduced back in 2009). But in this context, it means the
>>> 0-indexed chip-select number that of the asynchronous memory interface
>>> to which the NAND device is connected.
>>>
>>> So, may be a comment here will suffice.
>>
>> This is what I committed:
>>
> 
> I don't see it in your tree yet.

I pushed it out now. Wanted to do some basic testing.

> 
>> --8<--
>> commit 533d93703fa717fdf74c4fb711c868c4fdc8b475 (HEAD -> refs/heads/v4.18/nand-cs-simplification)
>> Author:     Bartosz Golaszewski <bgolaszewski@baylibre.com>
>> AuthorDate: Mon Apr 30 10:24:42 2018 +0200
>> Commit:     Sekhar Nori <nsekhar@ti.com>
>> CommitDate: Tue May 1 15:57:47 2018 +0530
>>
>>     mtd: nand: davinci: store the core chipselect number in platform data
>>
>>     We have the 'ti,davinci-chipselect' property in the device tree, but
>>     when using platform data the driver silently uses the id field of
>>     struct platform_device as the chipselect. This is confusing and we
>>     almost broke the nand support again recently after converting the
>>     platform to common clock framework (which changed the device id in the
>>     clock lookup - the problem is gone now that we no longer acquire the
>>     clock in the nand driver.
>>
>>     This patch adds a new field - core_chipsel - to the platform_data.
>>     Subsequent patches will convert the platforms to using this new field.
>>
>>     Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
>>     Signed-off-by: Sekhar Nori <nsekhar@ti.com>
>>
>> diff --git a/include/linux/platform_data/mtd-davinci.h b/include/linux/platform_data/mtd-davinci.h
>> index f1a2cf655bdb..1bbfa27cccb4 100644
>> --- a/include/linux/platform_data/mtd-davinci.h
>> +++ b/include/linux/platform_data/mtd-davinci.h
>> @@ -56,6 +56,16 @@ struct davinci_nand_pdata {          /* platform_data */
>>         uint32_t                mask_ale;
>>         uint32_t                mask_cle;
>>
>> +       /*
>> +        * 0-indexed chip-select number of the asynchronous
>> +        * interface to which the NAND device has been connected.
>> +        *
>> +        * So, if you have NAND connected to CS3 of DA850, you
>> +        * will pass '1' here. Since the asynchronous interface
>> +        * on DA850 starts from CS2.
>> +        */
> 
> Maybe we should add that on all other DaVinci SoCs the async interface
> starts from CS0?

I just intended it to be an example (and chose the more confusing one).
I had already created the tree, not just pushed it out, so I went with
what I already have.

Thanks,
Sekhar

^ permalink raw reply	[flat|nested] 52+ messages in thread

* [PATCH 01/12] mtd: nand: davinci: store the core chipselect number in platform data
@ 2018-05-02 15:00             ` Sekhar Nori
  0 siblings, 0 replies; 52+ messages in thread
From: Sekhar Nori @ 2018-05-02 15:00 UTC (permalink / raw)
  To: linux-arm-kernel

On Wednesday 02 May 2018 04:15 PM, Bartosz Golaszewski wrote:
> 2018-05-01 12:29 GMT+02:00 Sekhar Nori <nsekhar@ti.com>:
>> On Tuesday 01 May 2018 03:23 PM, Sekhar Nori wrote:
>>> On Tuesday 01 May 2018 02:55 PM, Sekhar Nori wrote:
>>>> On Monday 30 April 2018 01:54 PM, Bartosz Golaszewski wrote:
>>>>> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
>>>>>
>>>>> We have the 'ti,davinci-chipselect' property in the device tree, but
>>>>> when using platform data the driver silently uses the id field of
>>>>> struct platform_device as the chipselect. This is confusing and we
>>>>> almost broke the nand support again recently after converting the
>>>>> platform to common clock framework (which changed the device id in the
>>>>> clock lookup - the problem is gone now that we no longer acquire the
>>>>> clock in the nand driver.
>>>>>
>>>>> This patch adds a new filed - core_chipsel - to the platform_data.
>>>>
>>>> s/filed/field
>>>>
>>>>> Subsequent patches will convert the platforms to using this new field.
>>>>
>>>> Can you add a comment for this new field too, like how we have for most
>>>> other fields?
>>>>
>>>> Curious on what 'core' in core_chipsel means. Something to do with
>>>> chip-select offset we have on DA850?
>>>
>>> Looks like you may have just picked the terminology from DaVinci NAND
>>> driver (introduced back in 2009). But in this context, it means the
>>> 0-indexed chip-select number that of the asynchronous memory interface
>>> to which the NAND device is connected.
>>>
>>> So, may be a comment here will suffice.
>>
>> This is what I committed:
>>
> 
> I don't see it in your tree yet.

I pushed it out now. Wanted to do some basic testing.

> 
>> --8<--
>> commit 533d93703fa717fdf74c4fb711c868c4fdc8b475 (HEAD -> refs/heads/v4.18/nand-cs-simplification)
>> Author:     Bartosz Golaszewski <bgolaszewski@baylibre.com>
>> AuthorDate: Mon Apr 30 10:24:42 2018 +0200
>> Commit:     Sekhar Nori <nsekhar@ti.com>
>> CommitDate: Tue May 1 15:57:47 2018 +0530
>>
>>     mtd: nand: davinci: store the core chipselect number in platform data
>>
>>     We have the 'ti,davinci-chipselect' property in the device tree, but
>>     when using platform data the driver silently uses the id field of
>>     struct platform_device as the chipselect. This is confusing and we
>>     almost broke the nand support again recently after converting the
>>     platform to common clock framework (which changed the device id in the
>>     clock lookup - the problem is gone now that we no longer acquire the
>>     clock in the nand driver.
>>
>>     This patch adds a new field - core_chipsel - to the platform_data.
>>     Subsequent patches will convert the platforms to using this new field.
>>
>>     Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
>>     Signed-off-by: Sekhar Nori <nsekhar@ti.com>
>>
>> diff --git a/include/linux/platform_data/mtd-davinci.h b/include/linux/platform_data/mtd-davinci.h
>> index f1a2cf655bdb..1bbfa27cccb4 100644
>> --- a/include/linux/platform_data/mtd-davinci.h
>> +++ b/include/linux/platform_data/mtd-davinci.h
>> @@ -56,6 +56,16 @@ struct davinci_nand_pdata {          /* platform_data */
>>         uint32_t                mask_ale;
>>         uint32_t                mask_cle;
>>
>> +       /*
>> +        * 0-indexed chip-select number of the asynchronous
>> +        * interface to which the NAND device has been connected.
>> +        *
>> +        * So, if you have NAND connected to CS3 of DA850, you
>> +        * will pass '1' here. Since the asynchronous interface
>> +        * on DA850 starts from CS2.
>> +        */
> 
> Maybe we should add that on all other DaVinci SoCs the async interface
> starts from CS0?

I just intended it to be an example (and chose the more confusing one).
I had already created the tree, not just pushed it out, so I went with
what I already have.

Thanks,
Sekhar

^ permalink raw reply	[flat|nested] 52+ messages in thread

* Re: [PATCH 00/12] mtd: nand: davinci: stop using pdev->id as chipselect
  2018-04-30 16:47       ` Boris Brezillon
@ 2018-05-03  9:41         ` Sekhar Nori
  -1 siblings, 0 replies; 52+ messages in thread
From: Sekhar Nori @ 2018-05-03  9:41 UTC (permalink / raw)
  To: Boris Brezillon, Bartosz Golaszewski
  Cc: Kevin Hilman, Russell King, Richard Weinberger, David Woodhouse,
	Brian Norris, Marek Vasut, Tony Lindgren, Krzysztof Kozlowski,
	Bartosz Golaszewski, linux-mtd, Linux Kernel Mailing List,
	Linux ARM

Hi Boris,

On Monday 30 April 2018 10:17 PM, Boris Brezillon wrote:
> On Mon, 30 Apr 2018 18:45:06 +0200
> Bartosz Golaszewski <brgl@bgdev.pl> wrote:
> 
>> 2018-04-30 12:09 GMT+02:00 Boris Brezillon <boris.brezillon@bootlin.com>:
>>> Hi Bartosz,
>>>
>>> On Mon, 30 Apr 2018 10:24:41 +0200
>>> Bartosz Golaszewski <brgl@bgdev.pl> wrote:
>>>
>>>> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
>>>>
>>>> We have the 'ti,davinci-chipselect' property in the device tree, but
>>>> when using platform data the driver silently uses the id field of
>>>> struct platform_device as the chipselect. This is confusing and we
>>>> almost broke the nand support again recently after converting the
>>>> platform to common clock framework (which changed the device id in the
>>>> clock lookup - the problem is gone now that we no longer acquire the
>>>> clock in the nand driver.
>>>>
>>>> This series adds a new field to davinci-nand platform data, then makes
>>>> all board use it and finally modifies the two drivers that make use of
>>>> it.
>>>>
>>>> Bartosz Golaszewski (12):
>>>>   mtd: nand: davinci: store the core chipselect number in platform data
>>>
>>> Raw NAND related patches (that is, everything that is not onenand or
>>> SPI NAND) should use the "mtd: rawnand: " prefix now. Other than that,
>>> I'm fine with the patch series, just let me know how you want to have it
>>> merged (through the MTD tree or the davinci tree).
>>>
>>> Thanks,
>>>
>>> Boris
>>
>> I think Sekhar could pick all those patches up for 4.18.
> 
> Okay, then I'd need an immutable branch containing these changes.

You can use branch v4.18/nand-cs-simplification of
git://git.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci.git
(commit 7c4db57cdb00)

Thanks,
Sekhar

^ permalink raw reply	[flat|nested] 52+ messages in thread

* [PATCH 00/12] mtd: nand: davinci: stop using pdev->id as chipselect
@ 2018-05-03  9:41         ` Sekhar Nori
  0 siblings, 0 replies; 52+ messages in thread
From: Sekhar Nori @ 2018-05-03  9:41 UTC (permalink / raw)
  To: linux-arm-kernel

Hi Boris,

On Monday 30 April 2018 10:17 PM, Boris Brezillon wrote:
> On Mon, 30 Apr 2018 18:45:06 +0200
> Bartosz Golaszewski <brgl@bgdev.pl> wrote:
> 
>> 2018-04-30 12:09 GMT+02:00 Boris Brezillon <boris.brezillon@bootlin.com>:
>>> Hi Bartosz,
>>>
>>> On Mon, 30 Apr 2018 10:24:41 +0200
>>> Bartosz Golaszewski <brgl@bgdev.pl> wrote:
>>>
>>>> From: Bartosz Golaszewski <bgolaszewski@baylibre.com>
>>>>
>>>> We have the 'ti,davinci-chipselect' property in the device tree, but
>>>> when using platform data the driver silently uses the id field of
>>>> struct platform_device as the chipselect. This is confusing and we
>>>> almost broke the nand support again recently after converting the
>>>> platform to common clock framework (which changed the device id in the
>>>> clock lookup - the problem is gone now that we no longer acquire the
>>>> clock in the nand driver.
>>>>
>>>> This series adds a new field to davinci-nand platform data, then makes
>>>> all board use it and finally modifies the two drivers that make use of
>>>> it.
>>>>
>>>> Bartosz Golaszewski (12):
>>>>   mtd: nand: davinci: store the core chipselect number in platform data
>>>
>>> Raw NAND related patches (that is, everything that is not onenand or
>>> SPI NAND) should use the "mtd: rawnand: " prefix now. Other than that,
>>> I'm fine with the patch series, just let me know how you want to have it
>>> merged (through the MTD tree or the davinci tree).
>>>
>>> Thanks,
>>>
>>> Boris
>>
>> I think Sekhar could pick all those patches up for 4.18.
> 
> Okay, then I'd need an immutable branch containing these changes.

You can use branch v4.18/nand-cs-simplification of
git://git.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci.git
(commit 7c4db57cdb00)

Thanks,
Sekhar

^ permalink raw reply	[flat|nested] 52+ messages in thread

end of thread, other threads:[~2018-05-03  9:43 UTC | newest]

Thread overview: 52+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-04-30  8:24 [PATCH 00/12] mtd: nand: davinci: stop using pdev->id as chipselect Bartosz Golaszewski
2018-04-30  8:24 ` Bartosz Golaszewski
2018-04-30  8:24 ` [PATCH 01/12] mtd: nand: davinci: store the core chipselect number in platform data Bartosz Golaszewski
2018-04-30  8:24   ` Bartosz Golaszewski
2018-05-01  9:25   ` Sekhar Nori
2018-05-01  9:25     ` Sekhar Nori
2018-05-01  9:53     ` Sekhar Nori
2018-05-01  9:53       ` Sekhar Nori
2018-05-01 10:29       ` Sekhar Nori
2018-05-01 10:29         ` Sekhar Nori
2018-05-01 10:39         ` Sekhar Nori
2018-05-01 10:39           ` Sekhar Nori
2018-05-02 10:45         ` Bartosz Golaszewski
2018-05-02 10:45           ` Bartosz Golaszewski
2018-05-02 15:00           ` Sekhar Nori
2018-05-02 15:00             ` Sekhar Nori
2018-04-30  8:24 ` [PATCH 02/12] ARM: davinci: da830-evm: specify the chipselect in davinci_nand_pdata Bartosz Golaszewski
2018-04-30  8:24   ` Bartosz Golaszewski
2018-04-30  8:24 ` [PATCH 03/12] ARM: davinci: da850-evm: " Bartosz Golaszewski
2018-04-30  8:24   ` Bartosz Golaszewski
2018-04-30  8:24 ` [PATCH 04/12] ARM: davinci: dm355-evm: " Bartosz Golaszewski
2018-04-30  8:24   ` Bartosz Golaszewski
2018-04-30  8:24 ` [PATCH 05/12] ARM: davinci: dm355-leopard: " Bartosz Golaszewski
2018-04-30  8:24   ` Bartosz Golaszewski
2018-04-30  8:24 ` [PATCH 06/12] ARM: davinci: dm365-evm: " Bartosz Golaszewski
2018-04-30  8:24   ` Bartosz Golaszewski
2018-04-30  8:24 ` [PATCH 07/12] ARM: davinci: dm644x-evm: " Bartosz Golaszewski
2018-04-30  8:24   ` Bartosz Golaszewski
2018-04-30  8:24 ` [PATCH 08/12] ARM: davinci: mityomapl138: " Bartosz Golaszewski
2018-04-30  8:24   ` Bartosz Golaszewski
2018-04-30  8:24 ` [PATCH 09/12] ARM: davinci: dm646x-evm: " Bartosz Golaszewski
2018-04-30  8:24   ` Bartosz Golaszewski
2018-04-30  8:24 ` [PATCH 10/12] ARM: davinci: neuros-osd2: " Bartosz Golaszewski
2018-04-30  8:24   ` Bartosz Golaszewski
2018-04-30  8:24 ` [PATCH 11/12] mtd: nand: davinci: stop using pdev->id as chipselect Bartosz Golaszewski
2018-04-30  8:24   ` Bartosz Golaszewski
2018-04-30  8:24 ` [PATCH 12/12] ARM: davinci: aemif: stop using pdev->id as nand chipselect Bartosz Golaszewski
2018-04-30  8:24   ` Bartosz Golaszewski
2018-04-30 10:09 ` [PATCH 00/12] mtd: nand: davinci: stop using pdev->id as chipselect Boris Brezillon
2018-04-30 10:09   ` Boris Brezillon
2018-04-30 16:45   ` Bartosz Golaszewski
2018-04-30 16:45     ` Bartosz Golaszewski
2018-04-30 16:47     ` Boris Brezillon
2018-04-30 16:47       ` Boris Brezillon
2018-05-01 10:12       ` Sekhar Nori
2018-05-01 10:12         ` Sekhar Nori
2018-05-03  9:41       ` Sekhar Nori
2018-05-03  9:41         ` Sekhar Nori
2018-05-01 10:31   ` Sekhar Nori
2018-05-01 10:31     ` Sekhar Nori
2018-05-01 15:02     ` Boris Brezillon
2018-05-01 15:02       ` Boris Brezillon

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.