Changeset 380 for soft/giet_vm


Ignore:
Timestamp:
Aug 5, 2014, 4:20:14 PM (10 years ago)
Author:
alain
Message:

Introducing a drivers library (libdrivers.a) to reduce the kernel.elf and boot.elf sizes

Location:
soft/giet_vm
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • soft/giet_vm/Makefile

    r374 r380  
    66LD = mipsel-unknown-elf-ld
    77DU = mipsel-unknown-elf-objdump
     8AR = mipsel-unknown-elf-ar
    89
    910ARCH ?= ../tsar-trunk-svn-2013/platforms/tsar_generic_iob
    10 X    ?= 2
    11 Y    ?= 2
    12 P    ?= 2
     11X    ?= 16
     12Y    ?= 8
     13P    ?= 4
    1314APP  ?= convol
    1415
     
    2122### partition sectors    = 524832
    2223
    23 ### Objects to be linked for kernel.elf
    24 KERNEL_OBJS  = build/common/utils.o       \
    25                build/common/vmem.o        \
    26                build/fat32/fat32.o        \
    27                build/drivers/dma_driver.o \
     24### Objects to be linked for the drivers static library
     25DRIVERS_OBJS = build/drivers/dma_driver.o \
    2826               build/drivers/cma_driver.o \
    2927               build/drivers/fbf_driver.o \
     
    4240               build/drivers/tim_driver.o \
    4341               build/drivers/tty_driver.o \
    44                build/drivers/pic_driver.o \
     42               build/drivers/pic_driver.o
     43
     44### Objects to be linked for kernel.elf
     45KERNEL_OBJS  = build/common/utils.o       \
     46               build/common/vmem.o        \
     47               build/fat32/fat32.o        \
    4548               build/kernel/giet.o        \
    4649               build/kernel/switch.o      \
     
    5558               build/common/vmem.o        \
    5659               build/fat32/fat32.o        \
    57                build/drivers/dma_driver.o \
    58                build/drivers/tty_driver.o \
    59                build/drivers/pic_driver.o \
    60                build/drivers/xcu_driver.o \
    61                build/drivers/ioc_driver.o \
    62                build/drivers/iob_driver.o \
    63                build/drivers/bdv_driver.o \
    64                build/drivers/sdc_driver.o \
    65                build/drivers/spi_driver.o \
    66                build/drivers/rdk_driver.o \
    67                build/drivers/mmc_driver.o \
    68                build/drivers/mwr_driver.o \
    6960               build/kernel/ctx_handler.o \
    7061               build/kernel/switch.o      \
     
    313304        $(CC) $(GIET_INCLUDE) $(CFLAGS)  -c -o $@ $<
    314305
     306################################
     307### drivers library compilation
     308build/drivers/libdrivers.a: $(DRIVERS_OBJS)
     309        $(AR) -rcs $@ $(DRIVERS_OBJS)
     310
    315311##########################
    316312### common compilation
     
    336332### boot compilation
    337333build/boot/boot.elf: $(BOOT_OBJS)            \
    338                      giet_boot/boot.ld
    339         $(LD) -o $@ -T giet_boot/boot.ld $(BOOT_OBJS)
     334                     giet_boot/boot.ld       \
     335                     build/drivers/libdrivers.a
     336        $(LD) -o $@ -T giet_boot/boot.ld $(BOOT_OBJS) -Lbuild/drivers -ldrivers 
    340337        $(DU) -D $@ > $@.txt
    341338
     
    357354### kernel compilation
    358355build/kernel/kernel.elf: $(KERNEL_OBJS)        \
    359                          giet_kernel/kernel.ld
    360         $(LD) -o $@ -T giet_kernel/kernel.ld $(KERNEL_OBJS)
     356                         giet_kernel/kernel.ld \
     357                         build/drivers/libdrivers.a
     358        $(LD) -o $@ -T giet_kernel/kernel.ld $(KERNEL_OBJS) -Lbuild/drivers -ldrivers   
    361359        $(DU) -D $@ > $@.txt
    362360
  • soft/giet_vm/giet_config.h

    r374 r380  
    1616
    1717#define BOOT_DEBUG_MAPPING       0          /* trace map_info checking */
    18 #define BOOT_DEBUG_PT                0          /* trace page tables initialisation */
    19 #define BOOT_DEBUG_VOBJS             0          /* trace vobjs initialisation */
    20 #define BOOT_DEBUG_SCHED             0          /* trace schedulers initialisation */
     18#define BOOT_DEBUG_PT            0          /* trace page tables initialisation */
     19#define BOOT_DEBUG_VOBJS         0          /* trace vobjs initialisation */
     20#define BOOT_DEBUG_SCHED         0          /* trace schedulers initialisation */
    2121#define BOOT_DEBUG_PERI          0          /* trace peripherals initialisation */
    2222#define BOOT_DEBUG_ELF           0          /* trace .elf files loading */
    2323
    24 #define GIET_DEBUG_INIT              0          /* trace kernel initialisation */
     24#define GIET_DEBUG_INIT          0          /* trace kernel initialisation */
    2525#define GIET_DEBUG_FAT           0          /* trace fat accesses */
    26 #define GIET_DEBUG_SWITCH            0          /* trace context switchs  */
     26#define GIET_DEBUG_SWITCH        0          /* trace context switchs  */
    2727#define GIET_DEBUG_IRQS          0          /* trace interrupts */
    2828#define GIET_DEBUG_IOC_DRIVER    0          /* trace IOC accesses */
     
    3737/* software parameters */
    3838
    39 #define GIET_ELF_BUFFER_SIZE     0x60000    /* Temporary buffer for .elf files */
     39#define GIET_ELF_BUFFER_SIZE     0x20000    /* Temporary buffer for .elf files 128 Kbytes */
    4040#define GIET_IDLE_TASK_PERIOD    0xFFFFFFFF /* Idle Task message period */
    4141#define GIET_MAX_ELF_FILES       20         /* max .elf files loaded by boot-loader */
    4242#define GIET_OPEN_FILES_MAX      16         /* max simultaneously open files */
    43 #define GIET_NB_VSPACE_MAX           64         /* max number of virtual spaces */
     43#define GIET_NB_VSPACE_MAX       64         /* max number of virtual spaces */
    4444#define GIET_TICK_VALUE          0x00008000 /* context switch period (number of cycles) */
    4545#define GIET_USE_IOMMU           0          /* IOMMU activated when non zero */
Note: See TracChangeset for help on using the changeset viewer.