/root/arm/buildroot/project_build_arm/M7-EK/linux-2.6.22.10/include/asm/arch/hardware.h:30:2: error: #error "Unsupported AT91 processor"
/root/arm/buildroot/project_build_arm/M7-EK/linux-2.6.22.10/include/asm/arch/io.h:36: error: AT91_BASE_SYS undeclared (first use in this function)
ссылки в asm и arch - правельные
сам драйвер:
Код
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/init.h>
#define DEVICE_NAME "u2dev" // Device name as it appears in /proc/devices
#define MAJOR_NUM 253
int init_module(void);
void cleanup_module(void);
int init_module(void)
{
printk("This is PKV/U3 driver.\n");
return 0;
}
// ----------------------------------------------------------------------
void cleanup_module(void)
{
}
#include <linux/module.h>
#include <linux/init.h>
#define DEVICE_NAME "u2dev" // Device name as it appears in /proc/devices
#define MAJOR_NUM 253
int init_module(void);
void cleanup_module(void);
int init_module(void)
{
printk("This is PKV/U3 driver.\n");
return 0;
}
// ----------------------------------------------------------------------
void cleanup_module(void)
{
}
как видите - простейший вариант
make-файл:
Код
TARGET ?=
TARGET = arm-linux
PREFIX ?=
PREFIX = /root/arm/buildroot/build_arm/staging_dir/usr
ARCH ?=
ARCH=arm
etcdir = ${PREFIX}/etc
sbindir = ${PREFIX}/sbin
usrbindir = ${PREFIX}/usr/bin
usrsbindir = ${PREFIX}/usr/sbin
CROSS_COMPILE ?=
CROSS_COMPILE = ${TARGET}-
CC = $(CROSS_COMPILE)gcc
LD = $(CROSS_COMPILE)gcc
AR = $(CROSS_COMPILE)ar
RANLIB = $(CROSS_COMPILE)ranlib
INCLUDE = -I/root/arm/buildroot/project_build_arm/M7-EK/linux-2.6.22.10/include -isystem /root/arm/buildroot/project_build_arm/M7-EK/linux-2.6.22.10/include
CFLAGS += -Wall -D_FILE_OFFSET_BITS=64 -DMODULE -D__KERNEL__
WARNINGS = -Wstrict-prototypes -Wsign-compare -Wshadow \
-Wchar-subscripts -Wmissing-declarations -Wnested-externs \
-Wpointer-arith -Wcast-align -Wsign-compare -Wmissing-prototypes
CFLAGS += $(WARNINGS)
CFLAGS += $(INCLUDE)
LDFLAGS += -Wl,-warn-common,--as-needed
OPTFLAGS = -O
CFLAGS += $(OPTFLAGS)
u2dev.o: u2dev.c
$(CC) $(CFLAGS) -c u2dev.c
clean:
rm -f *.o
TARGET = arm-linux
PREFIX ?=
PREFIX = /root/arm/buildroot/build_arm/staging_dir/usr
ARCH ?=
ARCH=arm
etcdir = ${PREFIX}/etc
sbindir = ${PREFIX}/sbin
usrbindir = ${PREFIX}/usr/bin
usrsbindir = ${PREFIX}/usr/sbin
CROSS_COMPILE ?=
CROSS_COMPILE = ${TARGET}-
CC = $(CROSS_COMPILE)gcc
LD = $(CROSS_COMPILE)gcc
AR = $(CROSS_COMPILE)ar
RANLIB = $(CROSS_COMPILE)ranlib
INCLUDE = -I/root/arm/buildroot/project_build_arm/M7-EK/linux-2.6.22.10/include -isystem /root/arm/buildroot/project_build_arm/M7-EK/linux-2.6.22.10/include
CFLAGS += -Wall -D_FILE_OFFSET_BITS=64 -DMODULE -D__KERNEL__
WARNINGS = -Wstrict-prototypes -Wsign-compare -Wshadow \
-Wchar-subscripts -Wmissing-declarations -Wnested-externs \
-Wpointer-arith -Wcast-align -Wsign-compare -Wmissing-prototypes
CFLAGS += $(WARNINGS)
CFLAGS += $(INCLUDE)
LDFLAGS += -Wl,-warn-common,--as-needed
OPTFLAGS = -O
CFLAGS += $(OPTFLAGS)
u2dev.o: u2dev.c
$(CC) $(CFLAGS) -c u2dev.c
clean:
rm -f *.o
и
.sh файл
Код
export TARGET=arm-linux
export PREFIX=/root/arm/buildroot/build_arm/staging_dir/usr
export ARCH=arm
export CROSS_COMPILE=${TARGET}-
export PATH=$PATH:${PREFIX}/bin
export PREFIX=/root/arm/buildroot/build_arm/staging_dir/usr
export ARCH=arm
export CROSS_COMPILE=${TARGET}-
export PATH=$PATH:${PREFIX}/bin
если кто сталкивался или знает как это точно сделать - жду помощи