/SPARTAN/trunk/Makefile.config |
---|
4,8 → 4,8 |
#ARCH=ppc32 |
#ARCH=amd64 |
# If this is yes, then cross compiler will be used instead of host compiler |
CROSS_COMPILER=no |
# If this is yes, then the native compiler will be used instead of cross compiler |
NATIVE_COMPILER=no |
# Support for symetric multiprocessors |
SMP=__SMP__ |
/SPARTAN/trunk/include/fpu_context.h |
---|
26,8 → 26,8 |
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
*/ |
#ifndef fpu_context_h |
#define fpu_context_h |
#ifndef __FPU_CONTEXT_H__ |
#define __FPU_CONTEXT_H__ |
#include <arch/fpu_context.h> |
40,5 → 40,5 |
extern void fpu_disable(void); |
#endif /*fpu_context_h*/ |
#endif /* __FPU_CONTEXT_H__ */ |
/SPARTAN/trunk/include/mm/heap.h |
---|
37,8 → 37,8 |
struct chunk { |
int used; |
struct chunk *next; |
struct chunk *prev; |
chunk_t *next; |
chunk_t *prev; |
__u32 size; |
__native data[0]; |
}; |
/SPARTAN/trunk/include/mm/buddy.h |
---|
34,7 → 34,7 |
#define BUDDY_SYSTEM_INNER_BLOCK 0xff |
struct buddy_operations { |
struct buddy_system_operations { |
link_t *(* find_buddy)(link_t *); |
link_t *(* bisect)(link_t *); |
link_t *(* coalesce)(link_t *, link_t *); |
45,10 → 45,10 |
struct buddy_system { |
__u8 max_order; |
link_t *order; |
buddy_operations_t *op; |
buddy_system_operations_t *op; |
}; |
extern buddy_system_t *buddy_system_create(__u8 max_order, buddy_operations_t *op); |
extern buddy_system_t *buddy_system_create(__u8 max_order, buddy_system_operations_t *op); |
extern link_t *buddy_system_alloc(buddy_system_t *b, __u8 i); |
extern void buddy_system_free(buddy_system_t *b, link_t *block); |
/SPARTAN/trunk/include/typedefs.h |
---|
64,7 → 64,7 |
typedef struct chunk chunk_t; |
typedef struct buddy_system buddy_system_t; |
typedef struct buddy_operations buddy_operations_t; |
typedef struct buddy_system_operations buddy_system_operations_t; |
typedef struct zone zone_t; |
typedef struct frame frame_t; |
/SPARTAN/trunk/src/mm/buddy.c |
---|
43,7 → 43,7 |
* |
* @return New buddy system. |
*/ |
buddy_system_t *buddy_system_create(__u8 max_order, buddy_operations_t *op) |
buddy_system_t *buddy_system_create(__u8 max_order, buddy_system_operations_t *op) |
{ |
buddy_system_t *b; |
int i; |
/SPARTAN/trunk/build.ia32 |
---|
2,9 → 2,9 |
COMPILER="" |
if [ $1 == "cross" ]; |
if [ $1 == "native" ]; |
then |
COMPILER="CROSS_COMPILER=yes"; |
COMPILER="NATIVE_COMPILER=yes"; |
fi; |
make all ARCH=ia32 $COMPILER |
/SPARTAN/trunk/arch/ia32/_link.ld.in |
---|
21,11 → 21,12 |
*(K_TEXT_START); |
*(K_TEXT_START_2); |
unmapped_ktext_end = .; |
unmapped_kdata_start = .; |
*(K_DATA_START); |
LONG(0xdeadbeaf); /* TODO: remove 0xdeadbeaf */ |
unmapped_kdata_end = .; |
LONG(0xdeadbeaf); /* TODO: remove 0xdeadbeaf */ |
} |
.mapped (PA2KA(BOOT_OFFSET+BOOTSTRAP_OFFSET)+SIZEOF(.unmapped)): AT (BOOTSTRAP_OFFSET+SIZEOF(.unmapped)) { |
49,14 → 50,17 |
hardcoded_unmapped_kdata_size = .; |
LONG(unmapped_kdata_end - unmapped_kdata_start); |
*(.bss); /* uninitialized static variables */ |
*(.note.GNU-stack); |
*(.comment); |
symbol_table = .; |
*(symtab.*); /* Symbol table, must be LAST symbol! */ |
kdata_end = .; |
} |
/DISCARD/ : { |
*(.note.GNU-stack); |
*(.comment); |
} |
_hardcoded_kernel_size = (ktext_end - ktext_start) + (unmapped_ktext_end - unmapped_ktext_start) + (kdata_end - kdata_start) + (unmapped_kdata_end - unmapped_kdata_start); |
_hardcoded_unmapped_size = (unmapped_ktext_end - unmapped_ktext_start) + (unmapped_kdata_end - unmapped_kdata_start); |
/SPARTAN/trunk/arch/ia32/Makefile.inc |
---|
1,4 → 1,10 |
ifeq (${CROSS_COMPILER},yes) |
ifeq (${NATIVE_COMPILER},yes) |
CC=gcc |
AS=as |
LD=ld |
OBJCOPY=objcopy |
OBJDUMP=objdump |
else |
IA-32_TARGET=i686-pc-linux-gnu |
IA-32_CC_DIR=/usr/local/i686/bin |
9,12 → 15,6 |
LD=$(IA-32_BINUTILS_DIR)/$(IA-32_TARGET)-ld |
OBJCOPY=$(IA-32_BINUTILS_DIR)/$(IA-32_TARGET)-objcopy |
OBJDUMP=$(IA-32_BINUTILS_DIR)/$(IA-32_TARGET)-objdump |
else |
CC=gcc |
AS=as |
LD=ld |
OBJCOPY=objcopy |
OBJDUMP=objdump |
endif |
BFD_NAME=elf32-i386 |
/SPARTAN/trunk/arch/ia32/src/asm.S |
---|
206,8 → 206,7 |
# |
# Compare a given number of bytes (3rd argument) |
# at memory locations defined by 1st and 2nd argument |
# for equality. If the bytes are equal, EAX contains |
# 0. |
# for equality. If the bytes are equal, EAX contains 0. |
# |
SRC=12 |
DST=16 |