diff mbox

[Maverick] UBUNTU - ARM: Initializing gpmc before accessing flash

Message ID 1281476545.31503.121.camel@black
State Rejected
Delegated to: Leann Ogasawara
Headers show

Commit Message

Mathieu Poirier Aug. 10, 2010, 9:42 p.m. UTC
>From 6d99ec9d41ce50c96476a8071f77fc5bd670f74a Mon Sep 17 00:00:00 2001
From: Mathieu J. Poirier <mathieu.poirier@canonical.com>
Date: Tue, 10 Aug 2010 17:14:25 -0400
Subject: [PATCH] UBUNTU - ARM: Initializing gpmc before accessing flash

Adding initialization of the General Purpose Memory Controller
(gpmc) in 'omap3beagle_flash_init'.

After Lucid gpmc init was decoupled from nand flash init and
got its own init function.  This change was not reflected in
'omap3beagle_flash_init' resulting in a lookup failure when
probing for flash.

BugLink: https://bugs/launchpad.net/bugs/608266

Signed-off-by: Mathieu Poirier <mathieu.poirier@canonical.com>
---
 arch/arm/mach-omap2/board-omap3beagle.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

Comments

Leann Ogasawara Aug. 11, 2010, 5:22 p.m. UTC | #1
On Tue, 2010-08-10 at 15:42 -0600, Mathieu Poirier wrote: 
> >From 6d99ec9d41ce50c96476a8071f77fc5bd670f74a Mon Sep 17 00:00:00 2001
> From: Mathieu J. Poirier <mathieu.poirier@canonical.com>
> Date: Tue, 10 Aug 2010 17:14:25 -0400
> Subject: [PATCH] UBUNTU - ARM: Initializing gpmc before accessing flash
> 
> Adding initialization of the General Purpose Memory Controller
> (gpmc) in 'omap3beagle_flash_init'.
> 
> After Lucid gpmc init was decoupled from nand flash init and
> got its own init function.  This change was not reflected in
> 'omap3beagle_flash_init' resulting in a lookup failure when
> probing for flash.
> 
> BugLink: https://bugs/launchpad.net/bugs/608266

^^ typo in the url...

> Signed-off-by: Mathieu Poirier <mathieu.poirier@canonical.com>
> ---
>  arch/arm/mach-omap2/board-omap3beagle.c |    1 +
>  1 files changed, 1 insertions(+), 0 deletions(-)
> 
> diff --git a/arch/arm/mach-omap2/board-omap3beagle.c b/arch/arm/mach-omap2/board-omap3beagle.c
> index 7a1b351..e1203a4 100644
> --- a/arch/arm/mach-omap2/board-omap3beagle.c
> +++ b/arch/arm/mach-omap2/board-omap3beagle.c
> @@ -466,6 +466,7 @@ static void __init omap3beagle_flash_init(void)
>  		omap3beagle_nand_data.gpmc_cs_baseaddr = (void *)
>  			(gpmc_base_add + GPMC_CS0_BASE + nandcs * GPMC_CS_SIZE);
>  		omap3beagle_nand_data.gpmc_baseaddr = (void *) (gpmc_base_add);
> +               gpmc_nand_init(&omap3beagle_nand_data);

Shouldn't the return value of gpmc_nand_init() be checked here?

>  		printk(KERN_INFO "Registering NAND on CS%d\n", nandcs);
>  		if (platform_device_register(&omap3beagle_nand_device) < 0)

Also, gpmc_nand_init() appears to handle the platform_device_register()
already so shouldn't the above line be removed as well?

> -- 
> 1.7.0.4

It appears this fix is also upstream, but in a different form:

commit f450d86790ebf72ac93c7ea5addd6fa278aae64c
Author: Sukumar Ghorai <s-ghorai@ti.com>
Date:   Fri Jul 9 09:14:46 2010 +0000

    omap3 nand: fix issue in board file to detect nand

Have you examined this upstream patch?

Thanks,
Leann
diff mbox

Patch

diff --git a/arch/arm/mach-omap2/board-omap3beagle.c b/arch/arm/mach-omap2/board-omap3beagle.c
index 7a1b351..e1203a4 100644
--- a/arch/arm/mach-omap2/board-omap3beagle.c
+++ b/arch/arm/mach-omap2/board-omap3beagle.c
@@ -466,6 +466,7 @@  static void __init omap3beagle_flash_init(void)
 		omap3beagle_nand_data.gpmc_cs_baseaddr = (void *)
 			(gpmc_base_add + GPMC_CS0_BASE + nandcs * GPMC_CS_SIZE);
 		omap3beagle_nand_data.gpmc_baseaddr = (void *) (gpmc_base_add);
+               gpmc_nand_init(&omap3beagle_nand_data);
 
 		printk(KERN_INFO "Registering NAND on CS%d\n", nandcs);
 		if (platform_device_register(&omap3beagle_nand_device) < 0)