nvram.h 1.3 KB

12345678910111213141516171819202122232425262728293031323334
  1. #ifndef NVRAM_H
  2. #define NVRAM_H
  3. /* NVRAM helpers */
  4. typedef uint32_t (*nvram_read_t)(void *private, uint32_t addr);
  5. typedef void (*nvram_write_t)(void *private, uint32_t addr, uint32_t val);
  6. typedef struct nvram_t {
  7. void *opaque;
  8. nvram_read_t read_fn;
  9. nvram_write_t write_fn;
  10. } nvram_t;
  11. uint32_t NVRAM_get_lword (nvram_t *nvram, uint32_t addr);
  12. int NVRAM_get_string (nvram_t *nvram, uint8_t *dst, uint16_t addr, int max);
  13. int PPC_NVRAM_set_params (nvram_t *nvram, uint16_t NVRAM_size,
  14. const char *arch,
  15. uint32_t RAM_size, int boot_device,
  16. uint32_t kernel_image, uint32_t kernel_size,
  17. const char *cmdline,
  18. uint32_t initrd_image, uint32_t initrd_size,
  19. uint32_t NVRAM_image,
  20. int width, int height, int depth);
  21. typedef struct M48t59State M48t59State;
  22. void m48t59_write (void *private, uint32_t addr, uint32_t val);
  23. uint32_t m48t59_read (void *private, uint32_t addr);
  24. void m48t59_toggle_lock (void *private, int lock);
  25. M48t59State *m48t59_init_isa(ISABus *bus, uint32_t io_base, uint16_t size,
  26. int type);
  27. M48t59State *m48t59_init(qemu_irq IRQ, hwaddr mem_base,
  28. uint32_t io_base, uint16_t size, int type);
  29. #endif /* !NVRAM_H */