Gertjan,
You appear to have dived in the deep end!
You do not necessarily need a kernel driver to read from the ADC.
Normal user space programs can access them.
I have example user space programs that can be cross-compiled and loaded
onto a TS7xxx card. These access the MAX197 ADC option but I believe the
same ideas can be used to access the onchip ADCs.
Maybe a simpler user space program would get you running first, giving you
time to get to grips with kernel compilation etc.
cheers
Jim
----------------------------------------------------------------------------
HomePage: http://www.comp.leeds.ac.uk/jj
TS7200 Page: http://www.comp.leeds.ac.uk/jj/linux/arm-sbc.html
On Tue, 14 Nov 2006, gertjan_hofman wrote:
> Hi Phil,
>
> Thanks for your response. So i decided I should start with baby steps
> and replicate the conditions under which you build your system.
>
> On my (Ubuntu 6.06 host) I unpacked the kernel source for
> tskernel-2.4.26-ts10-src.tar which I presume is what you used.
>
> I unpacked the cross tool chain:
> crosstool-linux-gcc-3.3.4-glibc-2.3.2-0.28rc39.tar
>
> which I think is the one use you used, at least is says 3.3.4 in your
> Makefile.
>
> I unpack the adc_0.0.02 tar file and edit the Make file, changing
> only:
>
> LINUXDIR=/arm/kernels/linux24_10 (where I unpacked the kernel source)
> CROSSDIR=/usr/local/opt/crosstool/arm-linux/gcc-3.3.4-glibc-2.3.2
>
> Make immediately dies on a stream of messages, the first part of
> which I attach at the end.
>
> I get lots of headers from the header files. Any ideas what I am
> doing wrong at this point ? Am I missing any environmental variables
> or -I includes ? Is this the config that you were using ? If not, is
> possible for you to send me a tar file of your build system ? (I can
> give you an address to upload to offline - ghofman ..at.. gmail.com)
>
> Much appreciated. I am looking forward to getting this driver running
> so can test out the board.
>
> Cheers
>
> Gertjan
>
>
>
>
> root:/arm/drivers/adc-0.0.2_cross_gcc_3.3.4# make
> /usr/local/opt/crosstool/arm-linux/gcc-3.3.4-glibc-2.3.2/bin/gcc
> -B/usr/local/opt/crosstool/arm-linux/gcc-3.3.4-glibc-2.3.2/bin -isystem
> /arm/kernels/linux24_10/include -I /arm/kernels/linux24_10/include -L
> /usr/local/opt/crosstool/arm-linux/gcc-3.3.4-glibc-2.3.2/lib -Wno-trigraphs
> -Os -mshort-load-bytes -fno-strict-aliasing -fno-common -Uarm -pipe -mapcs-32
> -D__LINUX_ARM_ARCH__=4 -march=armv4 -mtune=arm9tdmi -msoft-float -I.
> -D_DEBUG -D__KERNEL__ -DMODULE -D
> APPLIANCE -D LITTLE_ENDIAN -Wall -Werror -o obj/adc_main.o
> adc_main.c -c
>
> In file included
> from /arm/kernels/linux24_10/include/linux/kernel.h:13,
> from adc_main.c:4:
> /arm/kernels/linux24_10/include/linux/types.h:21: error: parse error
> before "dev_t"
> In file included from /arm/kernels/linux24_10/include/linux/fs.h:325,
>
> from /arm/kernels/linux24_10/include/linux/capability.h:17,
>
> from /arm/kernels/linux24_10/include/linux/binfmts.h:5,
>
> from /arm/kernels/linux24_10/include/linux/sched.h:9,
> from /arm/kernels/linux24_10/include/linux/mm.h:4,
>
> from /arm/kernels/linux24_10/include/linux/slab.h:14,
> from adc_main.c:9:
> /arm/kernels/linux24_10/include/linux/jffs2_fs_i.h:42: error: field
> `vfs_inode' has incomplete type
> In file included
> from /arm/kernels/linux24_10/include/linux/capability.h:17,
>
> from /arm/kernels/linux24_10/include/linux/binfmts.h:5,
>
> from /arm/kernels/linux24_10/include/linux/sched.h:9,
> from /arm/kernels/linux24_10/include/linux/mm.h:4,
>
> from /arm/kernels/linux24_10/include/linux/slab.h:14,
> from adc_main.c:9:
> /arm/kernels/linux24_10/include/linux/fs.h:424: error: parse error
> before "dev_t"
> /arm/kernels/linux24_10/include/linux/fs.h:427: error: parse error
> before '}' token
> /arm/kernels/linux24_10/include/linux/fs.h:433: error: parse error
> before "dev_t"
> /arm/kernels/linux24_10/include/linux/fs.h:438: error: parse error
> before '}' token
> In file included
> from /arm/kernels/linux24_10/include/linux/capability.h:17,
>
> from /arm/kernels/linux24_10/include/linux/binfmts.h:5,
>
> from /arm/kernels/linux24_10/include/linux/sched.h:9,
> from /arm/kernels/linux24_10/include/linux/mm.h:4,
>
> from /arm/kernels/linux24_10/include/linux/slab.h:14,
> from adc_main.c:9:
> /ar
>
>
>
>
>
>
>
>
>
>
> --- In "Phil" <> wrote:
> >
> > Hi Gertjan,
> >
> >
> > > I am presently booting the Debian distro off a NFS drive - for
> > now, I
> > > think this make my life easier. Is there any reason why your
> > driver
> > > would not be able to compile under the debian distro ?
> >
> >
> > I have never actually tried that at all myself (using Debian).
> > Everything I have done with both the TS7200 and TS7250 have been
> > booting to the onboard flash and just using FTP or NFS to get my
> > files onto the onboard. I have done all my compiling using cross
> > compilers on a Redhat 9 system. So unfortunately I have no
> > experience in the methods that you are trying.
> >
> >
> >
> > > I am running V 11 of the ts kernel (2.4.26-TS11)
> >
> >
> > Also, I have only ever compiled the driver on kernels up to 2.4.26-
> > TS10 version, so I guess there could be some differences, but
> > usually there isn't a lot that changes between TS releases, so I
> > doubt that.
> >
> >
> >
> > > Before I spent too long trying to fix issue, I was wondering if
> > you
> > > had any insight to whether this should work.
> >
> >
> > Unfortunately, all I can suggest is that it is something to do with
> > compiler settings, directory locations, etc. May I suggest that you
> > first find a basic kernel module example (try the Linux Device
> > Drivers book) to see if you can get any sought of module code to
> > compile, and then go from there. I would guess once you were able
> to
> > get the build system working, the driver will just compile without
> > too many problems.
> >
> > Maybe there are other people that have more experience compiling
> > modules/driver in a similar environment to what you are using?
> >
> >
> > Cheers
> > Phil
> >
>
>
>
>
>
Yahoo! Groups Links
<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/ts-7000/
<*> Your email settings:
Individual Email | Traditional
<*> To change settings online go to:
http://groups.yahoo.com/group/ts-7000/join
(Yahoo! ID required)
<*> To change settings via email:
<*> To unsubscribe from this group, send an email to:
<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/
|