050abaeaa8
* conf/Makefile.common (CFLAGS_PLATFORM): Add -mflush-func =grub_cpu_flush_cache on all mips and not only yeeloong. * configure.ac (COND_mips): New conditional. * grub-core/Makefile.am (KERNEL_HEADER_FILES): Add libgcc on all platforms. * grub-core/kern/emu/cache.S (__mips__): Use _flush_cache. * grub-core/kern/emu/full.c (grub_arch_dl_init_linker) [GRUB_LINKER_HAVE_INIT]: New function. (grub_emu_post_init): Likewise. * grub-core/kern/emu/lite.c (grub_emu_post_init): Likewise. * grub-core/kern/emu/main.c: Use grub_emu_post_init. * include/grub/cache.h (_mips): Include mips/cache.h. * include/grub/disk.h [GRUB_UTIL || GRUB_MACHINE_EMU]: Add missing LVM and RAID prototypes. * include/grub/emu/misc.h (grub_emu_post_init): New proto. * include/grub/mips/time.h (grub_cpu_idle) [GRUB_MACHINE_EMU]: New function.
45 lines
697 B
C
45 lines
697 B
C
#include <config.h>
|
|
#include <grub/emu/misc.h>
|
|
|
|
#ifndef GRUB_MACHINE_EMU
|
|
#error "This source is only meant for grub-emu platform"
|
|
#endif
|
|
|
|
#if defined(__i386__)
|
|
#include "../i386/dl.c"
|
|
#elif defined(__x86_64__)
|
|
#include "../x86_64/dl.c"
|
|
#elif defined(__sparc__)
|
|
#include "../sparc64/dl.c"
|
|
#elif defined(__mips__)
|
|
#include "../mips/dl.c"
|
|
#elif defined(__powerpc__)
|
|
#include "../powerpc/dl.c"
|
|
#else
|
|
#error "No target cpu type is defined"
|
|
#endif
|
|
|
|
/* grub-emu-lite supports dynamic module loading, so it won't have any
|
|
embedded modules. */
|
|
void
|
|
grub_init_all (void)
|
|
{
|
|
return;
|
|
}
|
|
|
|
void
|
|
grub_fini_all (void)
|
|
{
|
|
return;
|
|
}
|
|
|
|
void
|
|
grub_emu_init (void)
|
|
{
|
|
return;
|
|
}
|
|
|
|
void
|
|
grub_emu_post_init (void)
|
|
{
|
|
}
|