linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
From: Wolfgang Denk <wd@denx.de>
To: Richard Danter <richard.danter@ntlworld.com>
Cc: linuxppc-embedded <linuxppc-embedded@lists.linuxppc.org>
Subject: Re: Simple module, but won't build
Date: Tue, 04 May 2004 22:19:18 +0200	[thread overview]
Message-ID: <20040504201923.46320C109F@atlas.denx.de> (raw)
In-Reply-To: Your message of "Tue, 04 May 2004 20:46:55 BST." <4097F32F.6090504@ntlworld.com>


In message <4097F32F.6090504@ntlworld.com> you wrote:
> Hi Wolfgang,
>
> Wolfgang Denk wrote:
> >
> > Seems you are missing to include some necessary header  files  and/or
> > to provide the necessary compiler options.
>
> I am taking a driver I wrote for a 2.4.2 kernel, built with 2.95.x
> compiler and trying to port it to 82xx from 8xx and use the new ELDK.
>
> Since it is so simple, it just writes to a mem mapped I/O port to set
> some LED's on/off, I assumed it would be pretty simple. But alas, that
> was probably a bad assumption on my part.
>
> The main module includes the following:
>
Insert:

	#include <linux/kernel.h>
	#include <linux/init.h>

>    linux/module.h
>    linux/fs.h

Probably needed:

	#include <asm/types.h>

>    asm/io.h
>    asm/uaccess.h
>
> in that order.
>
> I have grep'ed for CONFIG_KERNEL_START and CONFIG_TASK_SIZE and the only
> place I can find them defined is in the kernel source .config (and
> default config files for each board). Not in any of the header files.

Grep after configuring the kernel, and you should find them in

	include/linux/autoconf.h:#define CONFIG_KERNEL_START 0xc0000000
	include/config/kernel/start.h:#define CONFIG_KERNEL_START 0xc0000000
resp.
	include/linux/autoconf.h:#define CONFIG_TASK_SIZE 0x80000000
	include/config/task/size.h:#define CONFIG_TASK_SIZE 0x80000000

> Maybe I am sposed to #define them myself - I tried that and it worked -
> but would like a more automagic solution if there is one!

There is no magic involved ;-)

> Command line options are:
>
>    -D__KERNEL__ -DMODULE -Wall -fno-builtins -O -c

This is not good either. You may try running a "make modules" in  you
kernel  source  directory and see what CFLAGS are needed; for me this
looks for example like this:

CFLAGS="-D__KERNEL__ -I/work/TQM860L/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -I/work/TQM860L/arch/ppc -fsigned-char -msoft-float -pipe -ffixed-r2 -Wno-uninitialized -mmultiple -mstring -DMODULE"

Some of the options (like -msoft-float) are not optional at all ;-)

Best regards,

Wolfgang Denk

--
Software Engineering:  Embedded and Realtime Systems,  Embedded Linux
Phone: (+49)-8142-4596-87  Fax: (+49)-8142-4596-88  Email: wd@denx.de
If A equals success, then the formula is A = X + Y + Z. X is work.  Y
is play. Z is keep your mouth shut.                 - Albert Einstein

** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/

  reply	other threads:[~2004-05-04 20:19 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-05-04 18:03 Simple module, but won't build Richard Danter
2004-05-04 19:10 ` Wolfgang Denk
2004-05-04 19:46   ` Richard Danter
2004-05-04 20:19     ` Wolfgang Denk [this message]
2004-05-04 21:15     ` Sam Ravnborg
2004-05-04 21:46       ` Wolfgang Denk
2004-05-04 23:50         ` Next steps Brian Hawley
2004-05-05 12:19           ` Bob White
2004-05-04 19:38 ` Simple module, but won't build Joshua Lamorie
  -- strict thread matches above, loose matches on Subject: below --
2006-08-31 22:55 Steven Kaiser
2006-09-01  6:35 ` Josu Onandia
2006-09-06 19:29 Steven Kaiser

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=20040504201923.46320C109F@atlas.denx.de \
    --to=wd@denx.de \
    --cc=linuxppc-embedded@lists.linuxppc.org \
    --cc=richard.danter@ntlworld.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).