From 1b44719632fb274a97fee18eff0c0e54e3222dad Mon Sep 17 00:00:00 2001 From: Pierre Pronchery Date: Tue, 18 Sep 2018 01:58:43 +0200 Subject: [PATCH] Expose the kernel driver definitions --- {src => include/kernel}/drivers/bus.h | 0 {src => include/kernel}/drivers/clock.h | 0 {src => include/kernel}/drivers/console.h | 0 {src => include/kernel}/drivers/display.h | 0 {src => include/kernel}/drivers/pic.h | 0 include/kernel/drivers/project.conf | 1 + include/kernel/project.conf | 1 + src/drivers/bus.c | 2 +- src/drivers/bus/cmos.c | 4 ++-- src/drivers/bus/cmos.h | 2 +- src/drivers/bus/ioport.c | 2 +- src/drivers/bus/project.conf | 6 +++--- src/drivers/bus/tty.c | 2 +- src/drivers/bus/vga.c | 4 ++-- src/drivers/clock.c | 2 +- src/drivers/clock/cmos.c | 4 ++-- src/drivers/clock/sys.c | 2 +- src/drivers/console.c | 2 +- src/drivers/console/stdio.c | 2 +- src/drivers/console/uart.c | 2 +- src/drivers/display.c | 2 +- src/drivers/display/vesa.c | 2 +- src/drivers/display/vga.c | 2 +- src/drivers/pic.c | 2 +- src/drivers/pic/i8259a.c | 4 ++-- src/drivers/project.conf | 12 ++++++------ src/kernel/multiboot.c | 10 +++++----- src/kernel/platform.sh | 2 +- src/lib/project.conf | 4 ++-- src/lib/ssp.c | 2 +- src/lib/time.c | 2 +- src/lib/unistd.c | 2 +- src/loader/multiboot.c | 6 +++--- src/loader/project.conf | 2 +- tools/bus.c | 1 - tools/clock.c | 2 +- tools/console.c | 2 +- tools/project.conf | 2 +- 38 files changed, 50 insertions(+), 49 deletions(-) rename {src => include/kernel}/drivers/bus.h (100%) rename {src => include/kernel}/drivers/clock.h (100%) rename {src => include/kernel}/drivers/console.h (100%) rename {src => include/kernel}/drivers/display.h (100%) rename {src => include/kernel}/drivers/pic.h (100%) create mode 100644 include/kernel/drivers/project.conf diff --git a/src/drivers/bus.h b/include/kernel/drivers/bus.h similarity index 100% rename from src/drivers/bus.h rename to include/kernel/drivers/bus.h diff --git a/src/drivers/clock.h b/include/kernel/drivers/clock.h similarity index 100% rename from src/drivers/clock.h rename to include/kernel/drivers/clock.h diff --git a/src/drivers/console.h b/include/kernel/drivers/console.h similarity index 100% rename from src/drivers/console.h rename to include/kernel/drivers/console.h diff --git a/src/drivers/display.h b/include/kernel/drivers/display.h similarity index 100% rename from src/drivers/display.h rename to include/kernel/drivers/display.h diff --git a/src/drivers/pic.h b/include/kernel/drivers/pic.h similarity index 100% rename from src/drivers/pic.h rename to include/kernel/drivers/pic.h diff --git a/include/kernel/drivers/project.conf b/include/kernel/drivers/project.conf new file mode 100644 index 0000000..7f7e205 --- /dev/null +++ b/include/kernel/drivers/project.conf @@ -0,0 +1 @@ +dist=Makefile,bus.h,clock.h,console.h,display.h,pic.h diff --git a/include/kernel/project.conf b/include/kernel/project.conf index bb59c08..703f3b1 100644 --- a/include/kernel/project.conf +++ b/include/kernel/project.conf @@ -1 +1,2 @@ +subdirs=drivers dist=Makefile,intr.h,platform.h diff --git a/src/drivers/bus.c b/src/drivers/bus.c index 082f52d..47a1cf3 100644 --- a/src/drivers/bus.c +++ b/src/drivers/bus.c @@ -7,7 +7,7 @@ #include #include #include -#include "bus.h" +#include /* public */ diff --git a/src/drivers/bus/cmos.c b/src/drivers/bus/cmos.c index 6bd18f2..3633c85 100644 --- a/src/drivers/bus/cmos.c +++ b/src/drivers/bus/cmos.c @@ -6,8 +6,8 @@ #include #include -#include "kernel/intr.h" -#include "drivers/bus/cmos.h" +#include +#include "cmos.h" #if defined(__amd64__) || defined(__i386__) diff --git a/src/drivers/bus/cmos.h b/src/drivers/bus/cmos.h index 993a750..f34ed57 100644 --- a/src/drivers/bus/cmos.h +++ b/src/drivers/bus/cmos.h @@ -7,7 +7,7 @@ #ifndef UKERNEL_DRIVERS_BUS_CMOS_H # define UKERNEL_DRIVERS_BUS_CMOS_H -# include "drivers/bus.h" +# include /* types */ diff --git a/src/drivers/bus/ioport.c b/src/drivers/bus/ioport.c index 1f264ce..a1e9315 100644 --- a/src/drivers/bus/ioport.c +++ b/src/drivers/bus/ioport.c @@ -6,8 +6,8 @@ #include #include +#include #include "arch/arch.h" -#include "../bus.h" #if defined(__amd64__) || defined(__i386__) diff --git a/src/drivers/bus/project.conf b/src/drivers/bus/project.conf index b795ca5..f046925 100644 --- a/src/drivers/bus/project.conf +++ b/src/drivers/bus/project.conf @@ -26,10 +26,10 @@ sources=vga.c #sources [cmos.c] -depends=../bus.h,cmos.h +depends=../../../include/kernel/drivers/bus.h,cmos.h [ioport.c] -depends=../bus.h +depends=../../../include/kernel/drivers/bus.h [tty.c] -depends=../bus.h +depends=../../../include/kernel/drivers/bus.h diff --git a/src/drivers/bus/tty.c b/src/drivers/bus/tty.c index f1691d3..fbe9434 100644 --- a/src/drivers/bus/tty.c +++ b/src/drivers/bus/tty.c @@ -6,7 +6,7 @@ #include #include -#include "../bus.h" +#include /* private */ diff --git a/src/drivers/bus/vga.c b/src/drivers/bus/vga.c index 7a78a04..da270f5 100644 --- a/src/drivers/bus/vga.c +++ b/src/drivers/bus/vga.c @@ -6,8 +6,8 @@ #include #include -#include "kernel/intr.h" -#include "drivers/bus.h" +#include +#include #if defined(__amd64__) || defined(__i386__) diff --git a/src/drivers/clock.c b/src/drivers/clock.c index cc359e7..898cde9 100644 --- a/src/drivers/clock.c +++ b/src/drivers/clock.c @@ -7,7 +7,7 @@ #include #include #include -#include "clock.h" +#include /* private */ diff --git a/src/drivers/clock/cmos.c b/src/drivers/clock/cmos.c index 17eb4be..f209ec7 100644 --- a/src/drivers/clock/cmos.c +++ b/src/drivers/clock/cmos.c @@ -6,8 +6,8 @@ #include #include -#include "drivers/clock.h" -#include "drivers/clock/cmos.h" +#include +#include "cmos.h" /* private */ diff --git a/src/drivers/clock/sys.c b/src/drivers/clock/sys.c index 03557ab..4168b1f 100644 --- a/src/drivers/clock/sys.c +++ b/src/drivers/clock/sys.c @@ -5,7 +5,7 @@ #include -#include "drivers/clock.h" +#include /* private */ diff --git a/src/drivers/console.c b/src/drivers/console.c index ea272dd..c7b3bfb 100644 --- a/src/drivers/console.c +++ b/src/drivers/console.c @@ -7,7 +7,7 @@ #include #include #include -#include "console.h" +#include /* private */ diff --git a/src/drivers/console/stdio.c b/src/drivers/console/stdio.c index 5adf06d..d97121f 100644 --- a/src/drivers/console/stdio.c +++ b/src/drivers/console/stdio.c @@ -5,7 +5,7 @@ #include -#include "drivers/console.h" +#include #include "stdio.h" diff --git a/src/drivers/console/uart.c b/src/drivers/console/uart.c index fb5fc70..7d6e832 100644 --- a/src/drivers/console/uart.c +++ b/src/drivers/console/uart.c @@ -6,7 +6,7 @@ #include #include -#include "drivers/console.h" +#include #include "uart.h" diff --git a/src/drivers/display.c b/src/drivers/display.c index b70f745..a592ed1 100644 --- a/src/drivers/display.c +++ b/src/drivers/display.c @@ -7,7 +7,7 @@ #include #include #include -#include "display.h" +#include /* private */ diff --git a/src/drivers/display/vesa.c b/src/drivers/display/vesa.c index 2fc9503..f1a0c9b 100644 --- a/src/drivers/display/vesa.c +++ b/src/drivers/display/vesa.c @@ -9,7 +9,7 @@ #include #include #include -#include "drivers/display.h" +#include #include "vesa.h" diff --git a/src/drivers/display/vga.c b/src/drivers/display/vga.c index c0213f3..68b7c63 100644 --- a/src/drivers/display/vga.c +++ b/src/drivers/display/vga.c @@ -10,7 +10,7 @@ #include #include #include -#include "drivers/display.h" +#include #include "vga.h" /* macros */ diff --git a/src/drivers/pic.c b/src/drivers/pic.c index fe97a02..47ffdfc 100644 --- a/src/drivers/pic.c +++ b/src/drivers/pic.c @@ -7,7 +7,7 @@ #include #include #include -#include "pic.h" +#include /* private */ diff --git a/src/drivers/pic/i8259a.c b/src/drivers/pic/i8259a.c index 36b2e5b..df531c0 100644 --- a/src/drivers/pic/i8259a.c +++ b/src/drivers/pic/i8259a.c @@ -6,8 +6,8 @@ #include #include -#include "drivers/pic.h" -#include "drivers/pic/i8259a.h" +#include +#include "i8259a.h" /* private */ diff --git a/src/drivers/project.conf b/src/drivers/project.conf index 90e4250..0b14800 100644 --- a/src/drivers/project.conf +++ b/src/drivers/project.conf @@ -6,7 +6,7 @@ asflags_force=$(CFLAGSF) $(CFLAGS) -c cflags_force=`../../tools/platform.sh -V UKERNEL_CFLAGS -C "$$ARCH"` cflags=-W -Wall -g -O2 ldflags_force=`../../tools/platform.sh -V UKERNEL_LDFLAGS -C "$$ARCH"` -dist=Makefile,bus.h,clock.h,console.h,display.h,pic.h +dist=Makefile #targets [bus.o] @@ -31,16 +31,16 @@ sources=pic.c #sources [bus.c] -depends=bus.h,bus/ioport.c +depends=../../include/kernel/drivers/bus.h,bus/ioport.c [clock.c] -depends=bus.h,clock.h +depends=../../include/kernel/drivers/bus.h,../../include/kernel/drivers/clock.h [console.c] -depends=bus.h,console.h +depends=../../include/kernel/drivers/bus.h,../../include/kernel/drivers/console.h [display.c] -depends=bus.h,display.h +depends=../../include/kernel/drivers/bus.h,../../include/kernel/drivers/display.h [pic.c] -depends=bus.h,pic.h +depends=../../include/kernel/drivers/bus.h,../../include/kernel/drivers/pic.h diff --git a/src/kernel/multiboot.c b/src/kernel/multiboot.c index 289f0f0..d6e5f62 100644 --- a/src/kernel/multiboot.c +++ b/src/kernel/multiboot.c @@ -6,15 +6,15 @@ #if defined(__amd64__) || defined(__i386__) # include +# include +# include +# include +# include +# include # include "arch/amd64/gdt.h" # include "arch/i386/gdt.h" # include "arch/i386/idt.h" # include "drivers/boot/multiboot.h" -# include "drivers/bus.h" -# include "drivers/clock.h" -# include "drivers/console.h" -# include "drivers/display.h" -# include "drivers/pic.h" # ifndef KERNEL_CONSOLE # define KERNEL_CONSOLE "uart" diff --git a/src/kernel/platform.sh b/src/kernel/platform.sh index bf9bd17..e62a5a4 100755 --- a/src/kernel/platform.sh +++ b/src/kernel/platform.sh @@ -102,7 +102,7 @@ $name $type $busname $args" echo "#include " echo "$devices" | while read name type busname args; do [ -n "$name" ] || continue - echo "#include \"drivers/${type}.h\"" + echo "#include " done #begin the function diff --git a/src/lib/project.conf b/src/lib/project.conf index 8e12749..c22ef33 100644 --- a/src/lib/project.conf +++ b/src/lib/project.conf @@ -16,7 +16,7 @@ depends=../../include/ctype.h depends=../../include/errno.h [ssp.c] -depends=../../include/stdlib.h,../drivers/console.h,ssp.h +depends=../../include/stdlib.h,../../include/kernel/drivers/console.h,ssp.h [stdio.c] depends=../../include/stdio.h,../../include/string.h @@ -31,4 +31,4 @@ depends=../../include/string.h depends=../../include/sys/mman.h [time.c] -depends=../../include/time.h,../drivers/clock.h +depends=../../include/time.h,../../include/kernel/drivers/clock.h diff --git a/src/lib/ssp.c b/src/lib/ssp.c index 5429f69..1e5503f 100644 --- a/src/lib/ssp.c +++ b/src/lib/ssp.c @@ -5,7 +5,7 @@ #include -#include "drivers/console.h" +#include #if defined(__SSP__) diff --git a/src/lib/time.c b/src/lib/time.c index e43698c..3e53d70 100644 --- a/src/lib/time.c +++ b/src/lib/time.c @@ -6,7 +6,7 @@ #include #include -#include "drivers/clock.h" +#include /* functions */ diff --git a/src/lib/unistd.c b/src/lib/unistd.c index f40133a..cee1397 100644 --- a/src/lib/unistd.c +++ b/src/lib/unistd.c @@ -7,7 +7,7 @@ #include #include #include -#include "drivers/console.h" +#include /* private */ diff --git a/src/loader/multiboot.c b/src/loader/multiboot.c index b54dbc3..64a7eb9 100644 --- a/src/loader/multiboot.c +++ b/src/loader/multiboot.c @@ -8,12 +8,12 @@ # include # include # include +# include +# include +# include # include "arch/amd64/gdt.h" # include "arch/i386/gdt.h" # include "drivers/boot/multiboot.h" -# include "drivers/bus.h" -# include "drivers/console.h" -# include "drivers/display.h" # ifndef LOADER_CONSOLE # define LOADER_CONSOLE "uart" diff --git a/src/loader/project.conf b/src/loader/project.conf index 492edd7..9e24756 100644 --- a/src/loader/project.conf +++ b/src/loader/project.conf @@ -75,7 +75,7 @@ depends=../drivers/display/vga.c depends=$(OBJDIR)../lib/libuKernel.a [multiboot.c] -depends=../drivers/boot/multiboot.h,../drivers/bus.h,../drivers/console.h +depends=../drivers/boot/multiboot.h,../../include/kernel/drivers/bus.h,../../include/kernel/drivers/console.h [start.S] depends=../arch/i386/intr.S,../arch/i386/loader.S diff --git a/tools/bus.c b/tools/bus.c index de73ed3..c3e3e1f 100644 --- a/tools/bus.c +++ b/tools/bus.c @@ -6,7 +6,6 @@ #include #include -#include "drivers/bus.h" #include "drivers/bus/tty.c" diff --git a/tools/clock.c b/tools/clock.c index ab9e5e7..71fa1af 100644 --- a/tools/clock.c +++ b/tools/clock.c @@ -7,7 +7,7 @@ #include #include #include -#include "drivers/clock.h" +#include /* private */ diff --git a/tools/console.c b/tools/console.c index 0631f29..28daea4 100644 --- a/tools/console.c +++ b/tools/console.c @@ -7,7 +7,7 @@ #include #include #include -#include "drivers/console.h" +#include /* private */ diff --git a/tools/project.conf b/tools/project.conf index 70fd763..72486b4 100644 --- a/tools/project.conf +++ b/tools/project.conf @@ -45,7 +45,7 @@ depends=$(OBJDIR)crtbegin.o,$(OBJDIR)crtend.o,$(OBJDIR)start.o,$(OBJDIR)../src/l depends=../src/drivers/bus.c,../src/drivers/bus/tty.c [console.c] -depends=../src/drivers/console.h +depends=../include/kernel/drivers/console.h [crti.S] depends=../src/common/crti.S,../src/arch/amd64/crti.S,../src/arch/i386/crti.S