mirror of
https://github.com/54shady/kernel_drivers_examples.git
synced 2025-08-11 23:32:00 +00:00
relayout hello example module
This commit is contained in:
33
debug/hello/Makefile
Normal file
33
debug/hello/Makefile
Normal file
@ -0,0 +1,33 @@
|
||||
# Makefile
|
||||
# Comment/uncomment the following line to disable/enable debugging
|
||||
# DEBUG = y
|
||||
|
||||
# Usage
|
||||
# make CC=<your_compiler_path> KERNELDIR=<your_kernel_dir>
|
||||
#
|
||||
# make CC=/home/zeroway/3288/src/3288_4.4/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6/bin/arm-eabi-gcc KERNELDIR=/home/zeroway/3288/src/3288_4.4/kernel
|
||||
|
||||
# Add your debugging flag (or not) to CFLAGS
|
||||
ifeq ($(DEBUG),y)
|
||||
DEBFLAGS = -O -g -DSCULL_DEBUG # "-O" is needed to expand inlines
|
||||
else
|
||||
DEBFLAGS = -O2
|
||||
endif
|
||||
|
||||
obj-m := hello.o
|
||||
KERNELDIR ?= /lib/modules/$(shell uname -r)/build
|
||||
CC ?= gcc
|
||||
PWD := $(shell pwd)
|
||||
|
||||
modules:
|
||||
$(MAKE) -C $(KERNELDIR) M=$(PWD) modules
|
||||
|
||||
clean:
|
||||
rm -rf *.o *~ core .depend .*.cmd *.ko *.mod.c .tmp_versions modules.order Module.symvers
|
||||
|
||||
depend .depend dep:
|
||||
$(CC) $(CFLAGS) -M *.c > .depend
|
||||
|
||||
ifeq (.depend,$(wildcard .depend))
|
||||
include .depend
|
||||
endif
|
17
debug/hello/hello.c
Normal file
17
debug/hello/hello.c
Normal file
@ -0,0 +1,17 @@
|
||||
#include <linux/module.h>
|
||||
#include <linux/init.h>
|
||||
|
||||
static int __init hello_init(void)
|
||||
{
|
||||
printk("%s, %d\n", __FUNCTION__, __LINE__);
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void hello_exit (void)
|
||||
{
|
||||
printk("%s, %d\n", __FUNCTION__, __LINE__);
|
||||
}
|
||||
|
||||
module_init(hello_init);
|
||||
module_exit(hello_exit);
|
||||
MODULE_LICENSE("GPL");
|
Reference in New Issue
Block a user