#if !defined (__M48T59_H__)
#define __M48T59_H__
-void m48t59_write (void *opaque, uint32_t val);
-uint32_t m48t59_read (void *opaque);
-void m48t59_set_addr (void *opaque, uint32_t addr);
-void *m48t59_init (int IRQ, uint32_t io_base, uint16_t size);
+typedef struct m48t59_t m48t59_t;
+
+void m48t59_write (m48t59_t *NVRAM, uint32_t addr, uint32_t val);
+uint32_t m48t59_read (m48t59_t *NVRAM, uint32_t addr);
+void m48t59_toggle_lock (m48t59_t *NVRAM, int lock);
+m48t59_t *m48t59_init (qemu_irq IRQ, target_phys_addr_t mem_base,
+ uint32_t io_base, uint16_t size,
+ int type);
#endif /* !defined (__M48T59_H__) */