From mboxrd@z Thu Jan 1 00:00:00 1970 From: u.kleine-koenig@pengutronix.de (Uwe =?iso-8859-1?Q?Kleine-K=F6nig?=) Date: Mon, 2 Aug 2010 11:32:30 +0200 Subject: [PATCH 1/2] mxc_nand: fix Unbalanced enable for IRQ In-Reply-To: <1276178584-10074-1-git-send-email-eric@eukrea.com> References: <1276178584-10074-1-git-send-email-eric@eukrea.com> Message-ID: <20100802093230.GA29811@pengutronix.de> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Hi David, can we please have this patch soon in mainline. This bugs our autobuilder since long. Best regards Uwe On Thu, Jun 10, 2010 at 04:03:04PM +0200, Eric B?nard wrote: > * preset should be done before sending the reset command > > * without this, I get the following error on an i.MX35 : > [ 0.900000] ------------[ cut here ]------------ > [ 0.900000] WARNING: at kernel/irq/manage.c:290 __enable_irq+0x4c/0x88() > [ 0.900000] Unbalanced enable for IRQ 33 > [ 0.900000] Modules linked in: > [ 0.900000] [] (unwind_backtrace+0x0/0xf0) from [] (dump_stack+0x18/0x1c) > [ 0.900000] [] (dump_stack+0x18/0x1c) from [] (warn_slowpath_common+0x54/0x6c) > [ 0.900000] [] (warn_slowpath_common+0x54/0x6c) from [] (warn_slowpath_fmt+0x38/0x40) > [ 0.900000] [] (warn_slowpath_fmt+0x38/0x40) from [] (__enable_irq+0x4c/0x88) > [ 0.900000] [] (__enable_irq+0x4c/0x88) from [] (enable_irq+0x54/0x98) > [ 0.900000] [] (enable_irq+0x54/0x98) from [] (wait_op_done+0x40/0x134) > [ 0.900000] [] (wait_op_done+0x40/0x134) from [] (send_cmd+0x30/0x38) > [ 0.900000] [] (send_cmd+0x30/0x38) from [] (mxc_nand_command+0x26c/0x328) > [ 0.900000] [] (mxc_nand_command+0x26c/0x328) from [] (nand_scan_ident+0x188/0x6c0) > [ 0.900000] [] (nand_scan_ident+0x188/0x6c0) from [] (mxcnd_probe+0x2b8/0x3d0) > [ 0.900000] [] (mxcnd_probe+0x2b8/0x3d0) from [] (platform_drv_probe+0x20/0x24) > [ 0.900000] [] (platform_drv_probe+0x20/0x24) from [] (driver_probe_device+0xb0/0x164) > [ 0.900000] [] (driver_probe_device+0xb0/0x164) from [] (__driver_attach+0x68/0x8c) > [ 0.900000] [] (__driver_attach+0x68/0x8c) from [] (bus_for_each_dev+0x50/0x84) > [ 0.900000] [] (bus_for_each_dev+0x50/0x84) from [] (driver_attach+0x20/0x28) > [ 0.900000] [] (driver_attach+0x20/0x28) from [] (bus_add_driver+0x144/0x2dc) > [ 0.900000] [] (bus_add_driver+0x144/0x2dc) from [] (driver_register+0xb0/0x13c) > [ 0.900000] [] (driver_register+0xb0/0x13c) from [] (platform_driver_register+0x4c/0x60) > [ 0.900000] [] (platform_driver_register+0x4c/0x60) from [] (platform_driver_probe+0x20/0xa0) > [ 0.900000] [] (platform_driver_probe+0x20/0xa0) from [] (mxc_nd_init+0x18/0x24) > [ 0.900000] [] (mxc_nd_init+0x18/0x24) from [] (do_one_initcall+0x64/0x1bc) > [ 0.900000] [] (do_one_initcall+0x64/0x1bc) from [] (kernel_init+0xe8/0x1ac) > [ 0.900000] [] (kernel_init+0xe8/0x1ac) from [] (kernel_thread_exit+0x0/0x8) > [ 0.900000] ---[ end trace 8bf72ac6ba089a19 ]--- > [ 1.140000] NAND device: Manufacturer ID: 0x2c, Chip ID: 0xda (Micron NAND 256MiB 3,3V 8-bit) > > Signed-off-by: Eric B?nard > --- > drivers/mtd/nand/mxc_nand.c | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/drivers/mtd/nand/mxc_nand.c b/drivers/mtd/nand/mxc_nand.c > index 82e9438..8878503 100644 > --- a/drivers/mtd/nand/mxc_nand.c > +++ b/drivers/mtd/nand/mxc_nand.c > @@ -604,8 +604,8 @@ static void mxc_nand_command(struct mtd_info *mtd, unsigned command, > /* Command pre-processing step */ > switch (command) { > case NAND_CMD_RESET: > - send_cmd(host, command, false); > preset(mtd); > + send_cmd(host, command, false); > break; > > case NAND_CMD_STATUS: > -- > 1.6.3.3 > > -- Pengutronix e.K. | Uwe Kleine-K?nig | Industrial Linux Solutions | http://www.pengutronix.de/ |