From: "Sudhakar Rajashekhara" <sudhakar.raj@ti.com>
To: "'Andrew Morton'" <akpm@linux-foundation.org>
Cc: david-b@pacbell.net, dwmw2@infradead.org,
davinci-linux-open-source@linux.davincidsp.com,
linux-mtd@lists.infradead.org, linux-kernel@vger.kernel.org
Subject: RE: [PATCH] [MTD] driver/Makefile: Initialize "mtd" and "spi" before "net"
Date: Tue, 18 Aug 2009 17:48:06 +0530 [thread overview]
Message-ID: <011101ca1ffd$f15ab100$d4101300$@raj@ti.com> (raw)
In-Reply-To: <20090818024908.90f528e1.akpm@linux-foundation.org>
On Tue, Aug 18, 2009 at 15:19:08, Andrew Morton wrote:
> On Tue, 18 Aug 2009 15:06:35 +0530 "Sudhakar Rajashekhara" <sudhakar.raj@ti.com> wrote:
>
> > On Tue, Aug 18, 2009 at 13:49:30, Andrew Morton wrote:
> > > On Tue, 18 Aug 2009 12:34:04 -0400 Sudhakar Rajashekhara <sudhakar.raj@ti.com> wrote:
> > >
> > > > On TI's da850/omap-l138 EVM, MAC address is stored in SPI flash.
> > > >
> > > > This patch changes the initialization sequence of the drivers by
> > > > moving mtd and spi ahead of net in drivers/Makefile thereby
> > > > enabling da850/omap-l138 ethernet driver to read the MAC address
> > > > while booting.
> > > >
> > > > Signed-off-by: Sudhakar Rajashekhara <sudhakar.raj@ti.com>
> > > > ---
> > > > drivers/Makefile | 4 ++--
> > > > 1 files changed, 2 insertions(+), 2 deletions(-)
> > > >
> > > > diff --git a/drivers/Makefile b/drivers/Makefile index
> > > > bc4205d..2a1d41f 100644
> > > > --- a/drivers/Makefile
> > > > +++ b/drivers/Makefile
> > > > @@ -42,6 +42,8 @@ obj-y += macintosh/
> > > > obj-$(CONFIG_IDE) += ide/
> > > > obj-$(CONFIG_SCSI) += scsi/
> > > > obj-$(CONFIG_ATA) += ata/
> > > > +obj-$(CONFIG_MTD) += mtd/
> > > > +obj-$(CONFIG_SPI) += spi/
> > > > obj-y += net/
> > > > obj-$(CONFIG_ATM) += atm/
> > > > obj-$(CONFIG_FUSION) += message/
> > > > @@ -50,8 +52,6 @@ obj-y += ieee1394/
> > > > obj-$(CONFIG_UIO) += uio/
> > > > obj-y += cdrom/
> > > > obj-y += auxdisplay/
> > > > -obj-$(CONFIG_MTD) += mtd/
> > > > -obj-$(CONFIG_SPI) += spi/
> > > > obj-$(CONFIG_PCCARD) += pcmcia/
> > > > obj-$(CONFIG_DIO) += dio/
> > > > obj-$(CONFIG_SBUS) += sbus/
> > >
> > > That isn't a particularly maintainable way of fixing this,
> > > especially as there are no comments in that Makefile to prevent
> > > someone from rebreaking it in the future.
> > >
> > > A better fix would be to use suitably prioritised initcalls - see
> > > include/linux/init.h around line 187.
> > >
> >
> > Currently mtd, spi and net subsystems are initialized with module_init.
> > If I change the way in which these sub-systems are initialized, then
> > I'll be breaking the support for these sub-systems to work as modules.
>
> In what way?
>
Now I got what you were saying. I was able to get the EMAC driver initialize
later than spi and mtd by using late_initcall. With this change EMAC works
as module as well. The patch looks as below:
===
diff --git a/drivers/net/davinci_emac.c b/drivers/net/davinci_emac.c
index 12fd446..5e6652b 100644
--- a/drivers/net/davinci_emac.c
+++ b/drivers/net/davinci_emac.c
@@ -2817,7 +2817,7 @@ static int __init davinci_emac_init(void)
{
return platform_driver_register(&davinci_emac_driver);
}
-module_init(davinci_emac_init);
+late_initcall(davinci_emac_init);
/**
* davinci_emac_exit: EMAC driver module exit
===
I'll submit this patch to netdev list.
Thanks,
Sudhakar
prev parent reply other threads:[~2009-08-18 12:20 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-08-18 16:34 [PATCH] [MTD] driver/Makefile: Initialize "mtd" and "spi" before "net" Sudhakar Rajashekhara
2009-08-18 16:34 ` Sudhakar Rajashekhara
2009-08-18 8:19 ` Andrew Morton
2009-08-18 8:19 ` Andrew Morton
2009-08-18 9:36 ` Sudhakar Rajashekhara
2009-08-18 9:49 ` Andrew Morton
2009-08-18 9:49 ` Andrew Morton
2009-08-18 12:18 ` Sudhakar Rajashekhara [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='011101ca1ffd$f15ab100$d4101300$@raj@ti.com' \
--to=sudhakar.raj@ti.com \
--cc=akpm@linux-foundation.org \
--cc=david-b@pacbell.net \
--cc=davinci-linux-open-source@linux.davincidsp.com \
--cc=dwmw2@infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mtd@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.