diff options
author | Kevin O'Connor <kevin@koconnor.net> | 2008-05-18 00:03:32 -0400 |
---|---|---|
committer | Kevin O'Connor <kevin@koconnor.net> | 2008-05-18 00:03:32 -0400 |
commit | 9dd0dd1e4e2401bc2931f2e1e3417c8ef5dc42b5 (patch) | |
tree | 9bf64653d5fa93c347264ae97f2848142b7bd44d | |
parent | 9571ac21e511c7e04d9589797e0d123d2798e2f6 (diff) | |
download | seabios-hppa-9dd0dd1e4e2401bc2931f2e1e3417c8ef5dc42b5.zip seabios-hppa-9dd0dd1e4e2401bc2931f2e1e3417c8ef5dc42b5.tar.gz seabios-hppa-9dd0dd1e4e2401bc2931f2e1e3417c8ef5dc42b5.tar.bz2 |
Auto detect EBDA_SIZE from size of data structure.
-rw-r--r-- | src/biosvar.h | 4 | ||||
-rw-r--r-- | src/types.h | 1 |
2 files changed, 3 insertions, 2 deletions
diff --git a/src/biosvar.h b/src/biosvar.h index 0c68a2e..d2d7b9f 100644 --- a/src/biosvar.h +++ b/src/biosvar.h @@ -337,7 +337,7 @@ extern struct bios_config_table_s BIOS_CONFIG_TABLE; #define SEG_EBDA 0x9fc0 #define SEG_BDA 0x0000 -#define EBDA_SIZE 1 // In KiB -#define BASE_MEM_IN_K (640 - EBDA_SIZE) +#define EBDA_SIZE DIV_ROUND_UP(sizeof(struct extended_bios_data_area_s), 1024) +#define BASE_MEM_IN_K (640 - EBDA_SIZE) #endif // __BIOSVAR_H diff --git a/src/types.h b/src/types.h index d356451..0f25df8 100644 --- a/src/types.h +++ b/src/types.h @@ -35,6 +35,7 @@ union u64_u32_u { #define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER) #define ARRAY_SIZE(a) (sizeof(a) / sizeof(a[0])) #define FIELD_SIZEOF(t, f) (sizeof(((t*)0)->f)) +#define DIV_ROUND_UP(n,d) (((n) + (d) - 1) / (d)) #define NULL ((void *)0) |