Skip to contentSkip to conversation

ARM: at91: remove ISI code for AT91SAM9263

PATCH Superseded Paul Bolle 3 participants 5 messages May 15, 2014 – Jun 4, 2014

Subsystems (3)
lore
Share & tools
lore

Paul Bolle

author
#0 lore raw

PATCH 1/1 ARM: at91: remove ISI code for AT91SAM9263

In v2.6.25 code was added for an Image Sensor Interface (ISI) for AT91SAM9263. That code depended on the Kconfig macro CONFIG_VIDEO_AT91_ISI and its MODULE variant. The related Kconfig symbol has never been added to the tree. The net effect of this was that at91_add_device_isi() was a NOP. No one noticed because no callers of that function were added to the tree at that time.

The first caller of a function with that name was added in v3.4. But that caller apparently only called the function defined for AT91SAM9G45. (that function was also added in v3.4). So even then AT91SAM9263's NOP version of at91_add_device_isi() remained unused. This means that the ISI code for AT91SAM9263 can be removed.

---
Untested!

Could someone please verify that this definition of at91_add_device_isi() really never will be called.

 arch/arm/mach-at91/at91sam9263_devices.c | 57 --------------------------------
 1 file changed, 57 deletions(-)
arch/arm/mach-at91/at91sam9263_devices.c +0 -57
index 43d53d6156dd..f2dab0a872a1 100644
@@ -897,63 +897,6 @@ void __init at91_add_device_lcdc(struct atmel_lcdfb_pdata *data) {}
 
 
 /* --------------------------------------------------------------------
- *  Image Sensor Interface
- * -------------------------------------------------------------------- */
-
-#if defined(CONFIG_VIDEO_AT91_ISI) || defined(CONFIG_VIDEO_AT91_ISI_MODULE)
-
-struct resource isi_resources[] = {
-	[0] = {
-		.start	= AT91SAM9263_BASE_ISI,
-		.end	= AT91SAM9263_BASE_ISI + SZ_16K - 1,
-		.flags	= IORESOURCE_MEM,
-	},
-	[1] = {
-		.start	= NR_IRQS_LEGACY + AT91SAM9263_ID_ISI,
-		.end	= NR_IRQS_LEGACY + AT91SAM9263_ID_ISI,
-		.flags	= IORESOURCE_IRQ,
-	},
-};
-
-static struct platform_device at91sam9263_isi_device = {
-	.name		= "at91_isi",
-	.id		= -1,
-	.resource	= isi_resources,
-	.num_resources	= ARRAY_SIZE(isi_resources),
-};
-
-void __init at91_add_device_isi(struct isi_platform_data *data,
-		bool use_pck_as_mck)
-{
-	at91_set_A_periph(AT91_PIN_PE0, 0);	/* ISI_D0 */
-	at91_set_A_periph(AT91_PIN_PE1, 0);	/* ISI_D1 */
-	at91_set_A_periph(AT91_PIN_PE2, 0);	/* ISI_D2 */
-	at91_set_A_periph(AT91_PIN_PE3, 0);	/* ISI_D3 */
-	at91_set_A_periph(AT91_PIN_PE4, 0);	/* ISI_D4 */
-	at91_set_A_periph(AT91_PIN_PE5, 0);	/* ISI_D5 */
-	at91_set_A_periph(AT91_PIN_PE6, 0);	/* ISI_D6 */
-	at91_set_A_periph(AT91_PIN_PE7, 0);	/* ISI_D7 */
-	at91_set_A_periph(AT91_PIN_PE8, 0);	/* ISI_PCK */
-	at91_set_A_periph(AT91_PIN_PE9, 0);	/* ISI_HSYNC */
-	at91_set_A_periph(AT91_PIN_PE10, 0);	/* ISI_VSYNC */
-	at91_set_B_periph(AT91_PIN_PE12, 0);	/* ISI_PD8 */
-	at91_set_B_periph(AT91_PIN_PE13, 0);	/* ISI_PD9 */
-	at91_set_B_periph(AT91_PIN_PE14, 0);	/* ISI_PD10 */
-	at91_set_B_periph(AT91_PIN_PE15, 0);	/* ISI_PD11 */
-
-	if (use_pck_as_mck) {
-		at91_set_B_periph(AT91_PIN_PE11, 0);	/* ISI_MCK (PCK3) */
-
-		/* TODO: register the PCK for ISI_MCK and set its parent */
-	}
-}
-#else
-void __init at91_add_device_isi(struct isi_platform_data *data,
-		bool use_pck_as_mck) {}
-#endif
-
-
-/* --------------------------------------------------------------------
  *  Timer/Counter block
  * -------------------------------------------------------------------- */
 
Signature · 1 line
1.9.0
Acked-by on v1 1/1
#1 lore raw

Hi, Paul

Quoted 13 lines · Paul Bolle

In v2.6.25 code was added for an Image Sensor Interface (ISI) for AT91SAM9263. That code depended on the Kconfig macro CONFIG_VIDEO_AT91_ISI and its MODULE variant. The related Kconfig symbol has never been added to the tree. The net effect of this was that at91_add_device_isi() was a NOP. No one noticed because no callers of that function were added to the tree at that time.

The first caller of a function with that name was added in v3.4. But that caller apparently only called the function defined for AT91SAM9G45. (that function was also added in v3.4). So even then AT91SAM9263's NOP version of at91_add_device_isi() remained unused. This means that the ISI code for AT91SAM9263 can be removed.

Quoted 6 lines

---
Untested!

Could someone please verify that this definition of at91_add_device_isi() really never will be called.

Right. There is no implement to support for at91sam9263 ISI. So in at91sam9263ek it will not call at91_add_device_isi(). Current ISI driver only support at91sam9g45 and later chips.

Best Regards,
Josh Wu

Quoted 72 lines
  arch/arm/mach-at91/at91sam9263_devices.c | 57 --------------------------------
  1 file changed, 57 deletions(-)
arch/arm/mach-at91/at91sam9263_devices.c +0 -57
index 43d53d6156dd..f2dab0a872a1 100644
@@ -897,63 +897,6 @@ void __init at91_add_device_lcdc(struct atmel_lcdfb_pdata *data) {}
 
 
  /* --------------------------------------------------------------------
- *  Image Sensor Interface
- * -------------------------------------------------------------------- */
-
-#if defined(CONFIG_VIDEO_AT91_ISI) || defined(CONFIG_VIDEO_AT91_ISI_MODULE)
-
-struct resource isi_resources[] = {
-	[0] = {
-		.start	= AT91SAM9263_BASE_ISI,
-		.end	= AT91SAM9263_BASE_ISI + SZ_16K - 1,
-		.flags	= IORESOURCE_MEM,
-	},
-	[1] = {
-		.start	= NR_IRQS_LEGACY + AT91SAM9263_ID_ISI,
-		.end	= NR_IRQS_LEGACY + AT91SAM9263_ID_ISI,
-		.flags	= IORESOURCE_IRQ,
-	},
-};
-
-static struct platform_device at91sam9263_isi_device = {
-	.name		= "at91_isi",
-	.id		= -1,
-	.resource	= isi_resources,
-	.num_resources	= ARRAY_SIZE(isi_resources),
-};
-
-void __init at91_add_device_isi(struct isi_platform_data *data,
-		bool use_pck_as_mck)
-{
-	at91_set_A_periph(AT91_PIN_PE0, 0);	/* ISI_D0 */
-	at91_set_A_periph(AT91_PIN_PE1, 0);	/* ISI_D1 */
-	at91_set_A_periph(AT91_PIN_PE2, 0);	/* ISI_D2 */
-	at91_set_A_periph(AT91_PIN_PE3, 0);	/* ISI_D3 */
-	at91_set_A_periph(AT91_PIN_PE4, 0);	/* ISI_D4 */
-	at91_set_A_periph(AT91_PIN_PE5, 0);	/* ISI_D5 */
-	at91_set_A_periph(AT91_PIN_PE6, 0);	/* ISI_D6 */
-	at91_set_A_periph(AT91_PIN_PE7, 0);	/* ISI_D7 */
-	at91_set_A_periph(AT91_PIN_PE8, 0);	/* ISI_PCK */
-	at91_set_A_periph(AT91_PIN_PE9, 0);	/* ISI_HSYNC */
-	at91_set_A_periph(AT91_PIN_PE10, 0);	/* ISI_VSYNC */
-	at91_set_B_periph(AT91_PIN_PE12, 0);	/* ISI_PD8 */
-	at91_set_B_periph(AT91_PIN_PE13, 0);	/* ISI_PD9 */
-	at91_set_B_periph(AT91_PIN_PE14, 0);	/* ISI_PD10 */
-	at91_set_B_periph(AT91_PIN_PE15, 0);	/* ISI_PD11 */
-
-	if (use_pck_as_mck) {
-		at91_set_B_periph(AT91_PIN_PE11, 0);	/* ISI_MCK (PCK3) */
-
-		/* TODO: register the PCK for ISI_MCK and set its parent */
-	}
-}
-#else
-void __init at91_add_device_isi(struct isi_platform_data *data,
-		bool use_pck_as_mck) {}
-#endif
-
-
-/* --------------------------------------------------------------------
   *  Timer/Counter block
   * -------------------------------------------------------------------- */
 
#2 lore raw
In reply to Paul Bolle
Quoted 8 lines · Paul Bolle

In v2.6.25 code was added for an Image Sensor Interface (ISI) for AT91SAM9263. That code depended on the Kconfig macro CONFIG_VIDEO_AT91_ISI and its MODULE variant. The related Kconfig symbol has never been added to the tree. The net effect of this was that at91_add_device_isi() was a NOP. No one noticed because no callers of that function were added to the tree at that time.

Quoted 6 lines

The first caller of a function with that name was added in v3.4. But that caller apparently only called the function defined for AT91SAM9G45. (that function was also added in v3.4). So even then AT91SAM9263's NOP version of at91_add_device_isi() remained unused. This means that the ISI code for AT91SAM9263 can be removed.

Nack

this is just resources and allow until this is converted to DTS to have the pinctrl and register information

Best Regards,
J.

Quoted 81 lines

---
Untested!

Could someone please verify that this definition of at91_add_device_isi() really never will be called.

arch/arm/mach-at91/at91sam9263_devices.c | 57 --------------------------------

1 file changed, 57 deletions(-)
arch/arm/mach-at91/at91sam9263_devices.c +0 -57
index 43d53d6156dd..f2dab0a872a1 100644
@@ -897,63 +897,6 @@ void __init at91_add_device_lcdc(struct atmel_lcdfb_pdata *data) {}
 
 
 /* --------------------------------------------------------------------
- *  Image Sensor Interface
- * -------------------------------------------------------------------- */
-
-#if defined(CONFIG_VIDEO_AT91_ISI) || defined(CONFIG_VIDEO_AT91_ISI_MODULE)
-
-struct resource isi_resources[] = {
-	[0] = {
-		.start	= AT91SAM9263_BASE_ISI,
-		.end	= AT91SAM9263_BASE_ISI + SZ_16K - 1,
-		.flags	= IORESOURCE_MEM,
-	},
-	[1] = {
-		.start	= NR_IRQS_LEGACY + AT91SAM9263_ID_ISI,
-		.end	= NR_IRQS_LEGACY + AT91SAM9263_ID_ISI,
-		.flags	= IORESOURCE_IRQ,
-	},
-};
-
-static struct platform_device at91sam9263_isi_device = {
-	.name		= "at91_isi",
-	.id		= -1,
-	.resource	= isi_resources,
-	.num_resources	= ARRAY_SIZE(isi_resources),
-};
-
-void __init at91_add_device_isi(struct isi_platform_data *data,
-		bool use_pck_as_mck)
-{
-	at91_set_A_periph(AT91_PIN_PE0, 0);	/* ISI_D0 */
-	at91_set_A_periph(AT91_PIN_PE1, 0);	/* ISI_D1 */
-	at91_set_A_periph(AT91_PIN_PE2, 0);	/* ISI_D2 */
-	at91_set_A_periph(AT91_PIN_PE3, 0);	/* ISI_D3 */
-	at91_set_A_periph(AT91_PIN_PE4, 0);	/* ISI_D4 */
-	at91_set_A_periph(AT91_PIN_PE5, 0);	/* ISI_D5 */
-	at91_set_A_periph(AT91_PIN_PE6, 0);	/* ISI_D6 */
-	at91_set_A_periph(AT91_PIN_PE7, 0);	/* ISI_D7 */
-	at91_set_A_periph(AT91_PIN_PE8, 0);	/* ISI_PCK */
-	at91_set_A_periph(AT91_PIN_PE9, 0);	/* ISI_HSYNC */
-	at91_set_A_periph(AT91_PIN_PE10, 0);	/* ISI_VSYNC */
-	at91_set_B_periph(AT91_PIN_PE12, 0);	/* ISI_PD8 */
-	at91_set_B_periph(AT91_PIN_PE13, 0);	/* ISI_PD9 */
-	at91_set_B_periph(AT91_PIN_PE14, 0);	/* ISI_PD10 */
-	at91_set_B_periph(AT91_PIN_PE15, 0);	/* ISI_PD11 */
-
-	if (use_pck_as_mck) {
-		at91_set_B_periph(AT91_PIN_PE11, 0);	/* ISI_MCK (PCK3) */
-
-		/* TODO: register the PCK for ISI_MCK and set its parent */
-	}
-}
-#else
-void __init at91_add_device_isi(struct isi_platform_data *data,
-		bool use_pck_as_mck) {}
-#endif
-
-
-/* --------------------------------------------------------------------
 *  Timer/Counter block
 * -------------------------------------------------------------------- */
 
Signature · 1 line
1.9.0
author
#3 lore raw

PATCH v2 1/1 ARM: at91: #if 0 out ISI code for AT91SAM9263

In v2.6.25 code was added for an Image Sensor Interface (ISI) for AT91SAM9263. That code depended on the Kconfig macro CONFIG_VIDEO_AT91_ISI and its MODULE variant. The related Kconfig symbol has never been added to the tree. The net effect of this was that at91_add_device_isi() was a NOP. No one noticed because no callers of that function were added to the tree at that time.

The first caller of a function with that name was added in v3.4. But that caller apparently only called the function defined for AT91SAM9G45. (that function was also added in v3.4). So even then AT91SAM9263's NOP version of at91_add_device_isi() remained unused.

This means that the ISI code for AT91SAM9263 could be removed. But, since it can be useful for future reference, let's "#if 0" it instead.

---
v2: Jean-Christophe would like to keep the information currently hidden behind "#if defined(CONFIG_VIDEO_AT91_ISI) [...]". I'd like the reference to that Kconfig macro dropped. Using "#if 0" will do both, so that makes for a nice compromise, I'd say.

Josh verified that this definition of at91_add_device_isi() never will be called. Thanks!

Still untested!

 arch/arm/mach-at91/at91sam9263_devices.c | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)
arch/arm/mach-at91/at91sam9263_devices.c +1 -5
index 43d53d6156dd..30af3048ade5 100644
@@ -900,8 +900,7 @@ void __init at91_add_device_lcdc(struct atmel_lcdfb_pdata *data) {}
  *  Image Sensor Interface
  * -------------------------------------------------------------------- */
 
-#if defined(CONFIG_VIDEO_AT91_ISI) || defined(CONFIG_VIDEO_AT91_ISI_MODULE)
-
+#if 0 /* keep for future reference */
 struct resource isi_resources[] = {
 	[0] = {
 		.start	= AT91SAM9263_BASE_ISI,
@@ -947,9 +946,6 @@ void __init at91_add_device_isi(struct isi_platform_data *data,
 		/* TODO: register the PCK for ISI_MCK and set its parent */
 	}
 }
-#else
-void __init at91_add_device_isi(struct isi_platform_data *data,
-		bool use_pck_as_mck) {}
 #endif
 
 
Signature · 1 line
1.9.0
#4 lore raw

Re: [PATCH v2] ARM: at91: #if 0 out ISI code for AT91SAM9263

Hi, Paul

Quoted 15 lines · Paul Bolle

In v2.6.25 code was added for an Image Sensor Interface (ISI) for AT91SAM9263. That code depended on the Kconfig macro CONFIG_VIDEO_AT91_ISI and its MODULE variant. The related Kconfig symbol has never been added to the tree. The net effect of this was that at91_add_device_isi() was a NOP. No one noticed because no callers of that function were added to the tree at that time.

The first caller of a function with that name was added in v3.4. But that caller apparently only called the function defined for AT91SAM9G45. (that function was also added in v3.4). So even then AT91SAM9263's NOP version of at91_add_device_isi() remained unused.

This means that the ISI code for AT91SAM9263 could be removed. But, since it can be useful for future reference, let's "#if 0" it instead.

Quoted 6 lines

---
v2: Jean-Christophe would like to keep the information currently hidden behind "#if defined(CONFIG_VIDEO_AT91_ISI) [...]". I'd like the reference to that Kconfig macro dropped. Using "#if 0" will do both, so that makes for a nice compromise, I'd say.

I think we can keep the #if 0 as a reference so far. When the devices file is finally removed. We will add the ISI resouces to DT file. So I am ok with this.

Hi, J.C.

What do you think of this patch?

Best Regards,
Josh Wu

Quoted 33 lines

Josh verified that this definition of at91_add_device_isi() never will be called. Thanks!

Still untested!

  arch/arm/mach-at91/at91sam9263_devices.c | 6 +-----
  1 file changed, 1 insertion(+), 5 deletions(-)
arch/arm/mach-at91/at91sam9263_devices.c +1 -5
index 43d53d6156dd..30af3048ade5 100644
@@ -900,8 +900,7 @@ void __init at91_add_device_lcdc(struct atmel_lcdfb_pdata *data) {}
   *  Image Sensor Interface
   * -------------------------------------------------------------------- */
 
-#if defined(CONFIG_VIDEO_AT91_ISI) || defined(CONFIG_VIDEO_AT91_ISI_MODULE)
-
+#if 0 /* keep for future reference */
  struct resource isi_resources[] = {
  	[0] = {
  		.start	= AT91SAM9263_BASE_ISI,
@@ -947,9 +946,6 @@ void __init at91_add_device_isi(struct isi_platform_data *data,
  		/* TODO: register the PCK for ISI_MCK and set its parent */
  	}
  }
-#else
-void __init at91_add_device_isi(struct isi_platform_data *data,
-		bool use_pck_as_mck) {}
  #endif