提交 897b4c6c 编写于 作者: J j_mayer

Give an opaque to the m48t59 direct access routines to make it easier

 to use another NVRAM with the same API.


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3474 c046a42c-6fe2-441c-8c8c-71466251a162
上级 64330148
......@@ -199,8 +199,9 @@ static void set_up_watchdog (m48t59_t *NVRAM, uint8_t value)
}
/* Direct access to NVRAM */
void m48t59_write (m48t59_t *NVRAM, uint32_t addr, uint32_t val)
void m48t59_write (void *opaque, uint32_t addr, uint32_t val)
{
m48t59_t *NVRAM = opaque;
struct tm tm;
int tmp;
......@@ -357,8 +358,9 @@ void m48t59_write (m48t59_t *NVRAM, uint32_t addr, uint32_t val)
}
}
uint32_t m48t59_read (m48t59_t *NVRAM, uint32_t addr)
uint32_t m48t59_read (void *opaque, uint32_t addr)
{
m48t59_t *NVRAM = opaque;
struct tm tm;
uint32_t retval = 0xFF;
......@@ -451,13 +453,17 @@ uint32_t m48t59_read (m48t59_t *NVRAM, uint32_t addr)
return retval;
}
void m48t59_set_addr (m48t59_t *NVRAM, uint32_t addr)
void m48t59_set_addr (void *opaque, uint32_t addr)
{
m48t59_t *NVRAM = opaque;
NVRAM->addr = addr;
}
void m48t59_toggle_lock (m48t59_t *NVRAM, int lock)
void m48t59_toggle_lock (void *opaque, int lock)
{
m48t59_t *NVRAM = opaque;
NVRAM->lock ^= 1 << lock;
}
......
......@@ -3,9 +3,9 @@
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);
void m48t59_write (void *private, uint32_t addr, uint32_t val);
uint32_t m48t59_read (void *private, uint32_t addr);
void m48t59_toggle_lock (void *private, int lock);
m48t59_t *m48t59_init (qemu_irq IRQ, target_phys_addr_t mem_base,
uint32_t io_base, uint16_t size,
int type);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册