LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Kernel (https://www.linuxquestions.org/questions/linux-kernel-70/)
-   -   fatal error: asm/mach/dma.h: No such file or directory (https://www.linuxquestions.org/questions/linux-kernel-70/fatal-error-asm-mach-dma-h-no-such-file-or-directory-4175467593/)

Rezo 06-27-2013 10:07 AM

fatal error: asm/mach/dma.h: No such file or directory
 
Good day to everyone,
sorry for my English
i have a trouble with driver compiling. I'am using the code source from:

http://code.google.com/p/hp-touchpad...e=linux-2.6.35


of course my kernel version is diferent "3.2.0-23-generic", i know it from using "$cat /proc/sys/kernel/osrelease" in Konsole

MakeFile:
obj-m += DMAISA.o

all:
make -C /lib/modules/$(shell uname -r)/build M=$(shell pwd) modules

clean:
make -C /lib/modules/$(shell uname -r)/build M=$(shell pwd) clean
rm -f $(obj-m). *~


By compiling it's getting me error:

victor@victor-desktop:~/Workspace/DMAISA$ sudo make
[sudo] password for victor:
make -C /lib/modules/3.2.0-23-generic/build M=/home/victor/Workspace/DMAISA modules
make[1]: Entering directory `/usr/src/linux-headers-3.2.0-23-generic'
CC [M] /home/victor/Workspace/DMAISA/DMAISA.o
/home/victor/Workspace/DMAISA/DMAISA.c:7:26: fatal error: asm/mach/dma.h: No such file or directory
compilation terminated.
make[2]: *** [/home/victor/Workspace/DMAISA/DMAISA.o] Error 1
make[1]: *** [_module_/home/victor/Workspace/DMAISA] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-3.2.0-23-generic'
make: *** [all] Error 2

if anyone knows how to fix it, please reply, i didn't managed to find a solution on any other websites with similar questions.

adelabarra 06-28-2013 07:09 AM

Dear Rezo:
Try to find the file in your machine using:

find / -name dma.h

If it appears, add it to the directory an try again.

I f you don't find it, google: dma.h

There is a file with that name.
Then you'll have to hack.! Don't know what comes after that.

Regards.

Alejandro.

Rezo 06-28-2013 07:27 AM

good day Alejandro,
thanx for reply

i've already found the file:

/usr/src/linux-headers-3.2.0-23-generic/arch/arm/include/asm/mach/dma.h

it was there, but not posible anyway to compile it.

adelabarra 06-28-2013 04:22 PM

Dear rezo:
Don't know why, the object (xxx.o) file and the .c file (xxx.c) must have the same name.

In your Makefile, add a line with an include flag like this:

INCLUDE:=/usr/src/linux/include (or whatever your include path would be)

Also, add an include flag in your recipe line:

make .. ...... -I$(INCLUDE)

The includes in your .c file must be referred to your include path, if there are subdirectory paths. Double check it. And do it for all the included headers.
It is easy to make a mistake on this.

Regards

Alejandro

Rezo 07-02-2013 09:50 AM

i've tryied to do changes in makefile but didn't work anyway, if someone can help, pls reply

Rezo 11-21-2013 05:14 AM

finally i know that i cannot use asm/mach/dma.h only
#include <asm/dma.h> its possible


All times are GMT -5. The time now is 08:48 PM.