aboot.h 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. #ifndef aboot_h
  2. #define aboot_h
  3. #include <stdarg.h>
  4. #include "hwrpb.h"
  5. #include <setjmp.h>
  6. #define SECT_SIZE 512 /* console block size for disk reads */
  7. #define BOOT_SECTOR 2 /* first sector of 2ndary bootstrap loader */
  8. extern struct segment {
  9. unsigned long addr, offset, size;
  10. } *chunks;
  11. extern int nchunks;
  12. extern struct bootfs * bfs;
  13. extern char * dest_addr;
  14. extern long bytes_to_copy;
  15. extern long text_offset;
  16. extern jmp_buf jump_buffer;
  17. extern long config_file_partition;
  18. extern char boot_file[256];
  19. extern char initrd_file[256];
  20. extern char kernel_args[256];
  21. extern unsigned long start_addr;
  22. extern char * bss_start;
  23. extern long bss_size;
  24. extern unsigned long initrd_start, initrd_size;
  25. /* page size is in the INIT_HWRPB */
  26. extern unsigned long page_offset, page_shift;
  27. extern long first_block (const char *buf, long blocksize);
  28. extern unsigned long switch_to_osf_pal (unsigned long nr,
  29. struct pcb_struct *pcb_va,
  30. struct pcb_struct *pcb_pa,
  31. unsigned long vptb,
  32. unsigned long *kstk);
  33. extern int uncompress_kernel (int fd);
  34. extern int vsprintf (char *, const char *, va_list);
  35. extern void run_kernel (unsigned long entry, unsigned long stack)
  36. __attribute__((noreturn));
  37. #endif /* aboot_h */