Index: soft/giet_vm/Makefile
===================================================================
--- soft/giet_vm/Makefile	(revision 289)
+++ soft/giet_vm/Makefile	(revision 295)
@@ -11,5 +11,5 @@
 ### partition sectors    = 524832 
 
-MAP_XML      = mappings/4c_1p_iob_four.xml
+MAP_XML      = mappings/4c_4p_sort_leti_ext.xml
 
 ### Objects to be linked for kernel.elf
@@ -18,4 +18,5 @@
                build/fat32/fat32.o        \
                build/drivers/dma_driver.o \
+               build/drivers/cma_driver.o \
                build/drivers/fbf_driver.o \
                build/drivers/xcu_driver.o \
@@ -26,4 +27,5 @@
                build/drivers/sdc_driver.o \
                build/drivers/spi_driver.o \
+               build/drivers/rdk_driver.o \
                build/drivers/iob_driver.o \
                build/drivers/mmc_driver.o \
@@ -32,4 +34,5 @@
                build/drivers/tim_driver.o \
                build/drivers/tty_driver.o \
+               build/drivers/pic_driver.o \
                build/kernel/giet.o        \
                build/kernel/switch.o      \
@@ -44,15 +47,15 @@
                build/common/vmem.o        \
                build/fat32/fat32.o        \
+               build/drivers/dma_driver.o \
                build/drivers/tty_driver.o \
+               build/drivers/pic_driver.o \
                build/drivers/xcu_driver.o \
-               build/drivers/dma_driver.o \
-               build/drivers/mwr_driver.o \
                build/drivers/ioc_driver.o \
                build/drivers/bdv_driver.o \
-               build/drivers/hba_driver.o \
                build/drivers/sdc_driver.o \
                build/drivers/spi_driver.o \
-               build/drivers/nic_driver.o \
+               build/drivers/rdk_driver.o \
                build/drivers/mmc_driver.o \
+               build/drivers/mwr_driver.o \
                build/kernel/ctx_handler.o \
                build/kernel/switch.o      \
@@ -96,4 +99,10 @@
               build/libs/barrier.o
 
+### Objects to be linked for transpose.elf
+TRANSPOSE_OBJS = build/transpose/main.o  \
+                 build/libs/stdio.o      \
+                 build/libs/malloc.o     \
+                 build/libs/spin_lock.o  \
+                 build/libs/barrier.o
 
 CFLAGS = -Wall -ffreestanding -mno-gpopt -mips32
@@ -123,4 +132,5 @@
      build/gameoflife/gameoflife.elf \
      build/sort/sort.elf             \
+     build/transpose/transpose.elf   \
      hdd/virt_hdd.dmg
 
@@ -128,13 +138,16 @@
 ### This requires the generic LINUX/MacOS script "create_dmg" script 
 ### written by C.Fuguet. (should be installed in GIET-VM root directory).
-hdd/virt_hdd.dmg: map.bin                   \
-         build/boot/boot.elf            \
-         build/kernel/kernel.elf        \
-         build/display/display.elf      \
-         build/hello/hello.elf          \
-         build/pgcd/pgcd.elf            \
-         build/router/router.elf        \
-         build/dhrystone/dhrystone.elf  \
-         build/gameoflife/gameoflife.elf
+hdd/virt_hdd.dmg: map.bin                \
+         build/boot/boot.elf             \
+         build/kernel/kernel.elf         \
+         build/display/display.elf       \
+         build/hello/hello.elf           \
+         build/pgcd/pgcd.elf             \
+         build/router/router.elf         \
+         build/dhrystone/dhrystone.elf   \
+         build/gameoflife/gameoflife.elf \
+         build/sort/sort.elf             \
+         build/transpose/transpose.elf 
+
 ### remove all content of virtual disk virt_hdd
 	rm -rf hdd/virt_hdd/*
@@ -162,4 +175,10 @@
 
 ### drivers compilation
+build/drivers/cma_driver.o: giet_drivers/cma_driver.c  \
+                            giet_drivers/cma_driver.h  \
+                            giet_config.h              \
+                            $(MAP_XML)
+	$(CC) $(GIET_INCLUDE) $(CFLAGS)  -c -o $@ $<
+
 build/drivers/dma_driver.o: giet_drivers/dma_driver.c  \
                             giet_drivers/dma_driver.h  \
@@ -216,4 +235,10 @@
 	$(CC) $(GIET_INCLUDE) $(CFLAGS)  -c -o $@ $<
 
+build/drivers/rdk_driver.o: giet_drivers/rdk_driver.c  \
+                            giet_drivers/rdk_driver.h  \
+                            giet_config.h              \
+                            $(MAP_XML)
+	$(CC) $(GIET_INCLUDE) $(CFLAGS)  -c -o $@ $<
+
 build/drivers/iob_driver.o: giet_drivers/iob_driver.c  \
                             giet_drivers/iob_driver.h  \
@@ -248,4 +273,10 @@
 build/drivers/tty_driver.o: giet_drivers/tty_driver.c  \
                             giet_drivers/tty_driver.h  \
+                            giet_config.h              \
+                            $(MAP_XML)
+	$(CC) $(GIET_INCLUDE) $(CFLAGS)  -c -o $@ $<
+
+build/drivers/pic_driver.o: giet_drivers/pic_driver.c  \
+                            giet_drivers/pic_driver.h  \
                             giet_config.h              \
                             $(MAP_XML)
@@ -399,4 +430,12 @@
 
 build/sort/main.o: sort/main.c
+	$(CC) $(USER_INCLUDE) $(CFLAGS) -c -o $@ $<
+
+### transpose compilation
+build/transpose/transpose.elf: $(TRANSPOSE_OBJS) transpose/transpose.ld 
+	$(LD) -o $@ -T transpose/transpose.ld $(TRANSPOSE_OBJS)
+	$(DU) -D $@ > $@.txt
+
+build/transpose/main.o: transpose/main.c
 	$(CC) $(USER_INCLUDE) $(CFLAGS) -c -o $@ $<
 
@@ -419,4 +458,5 @@
 	rm -rf build/dhrystone/*
 	rm -rf build/sort/*
+	rm -rf build/transpose/*
 	rm -rf build/map.bin
 	rm -rf hdd/virt_hdd/*
