Revision 47f5ba72 hw/fdc.c
b/hw/fdc.c | ||
---|---|---|
1907 | 1907 |
return fdctrl; |
1908 | 1908 |
} |
1909 | 1909 |
|
1910 |
static int fdctrl_init_common(fdctrl_t *fdctrl) |
|
1910 |
static int fdctrl_init_common(fdctrl_t *fdctrl, target_phys_addr_t io_base)
|
|
1911 | 1911 |
{ |
1912 | 1912 |
int i, j; |
1913 | 1913 |
static int command_tables_inited = 0; |
... | ... | |
1938 | 1938 |
DMA_register_channel(fdctrl->dma_chann, &fdctrl_transfer_handler, fdctrl); |
1939 | 1939 |
fdctrl_connect_drives(fdctrl); |
1940 | 1940 |
|
1941 |
vmstate_register(io_base, &vmstate_fdc, fdctrl); |
|
1941 | 1942 |
return 0; |
1942 | 1943 |
} |
1943 | 1944 |
|
... | ... | |
1961 | 1962 |
isa_init_irq(&isa->busdev, &fdctrl->irq, isairq); |
1962 | 1963 |
fdctrl->dma_chann = dma_chann; |
1963 | 1964 |
|
1964 |
ret = fdctrl_init_common(fdctrl); |
|
1965 |
ret = fdctrl_init_common(fdctrl, iobase);
|
|
1965 | 1966 |
|
1966 | 1967 |
return ret; |
1967 | 1968 |
} |
... | ... | |
1979 | 1980 |
qdev_init_gpio_in(&dev->qdev, fdctrl_handle_tc, 1); |
1980 | 1981 |
fdctrl->dma_chann = -1; |
1981 | 1982 |
|
1982 |
ret = fdctrl_init_common(fdctrl); |
|
1983 |
ret = fdctrl_init_common(fdctrl, io);
|
|
1983 | 1984 |
|
1984 | 1985 |
return ret; |
1985 | 1986 |
} |
... | ... | |
1996 | 1997 |
qdev_init_gpio_in(&dev->qdev, fdctrl_handle_tc, 1); |
1997 | 1998 |
|
1998 | 1999 |
fdctrl->sun4m = 1; |
1999 |
return fdctrl_init_common(fdctrl); |
|
2000 |
return fdctrl_init_common(fdctrl, io);
|
|
2000 | 2001 |
} |
2001 | 2002 |
|
2002 | 2003 |
static ISADeviceInfo isa_fdc_info = { |
... | ... | |
2004 | 2005 |
.qdev.name = "isa-fdc", |
2005 | 2006 |
.qdev.size = sizeof(fdctrl_isabus_t), |
2006 | 2007 |
.qdev.no_user = 1, |
2007 |
.qdev.vmsd = &vmstate_fdc, |
|
2008 | 2008 |
.qdev.reset = fdctrl_external_reset_isa, |
2009 | 2009 |
.qdev.props = (Property[]) { |
2010 | 2010 |
DEFINE_PROP_DRIVE("driveA", fdctrl_isabus_t, state.drives[0].dinfo), |
... | ... | |
2017 | 2017 |
.init = sysbus_fdc_init1, |
2018 | 2018 |
.qdev.name = "sysbus-fdc", |
2019 | 2019 |
.qdev.size = sizeof(fdctrl_sysbus_t), |
2020 |
.qdev.vmsd = &vmstate_fdc, |
|
2021 | 2020 |
.qdev.reset = fdctrl_external_reset_sysbus, |
2022 | 2021 |
.qdev.props = (Property[]) { |
2023 | 2022 |
DEFINE_PROP_DRIVE("driveA", fdctrl_sysbus_t, state.drives[0].dinfo), |
... | ... | |
2030 | 2029 |
.init = sun4m_fdc_init1, |
2031 | 2030 |
.qdev.name = "SUNW,fdtwo", |
2032 | 2031 |
.qdev.size = sizeof(fdctrl_sysbus_t), |
2033 |
.qdev.vmsd = &vmstate_fdc, |
|
2034 | 2032 |
.qdev.reset = fdctrl_external_reset_sysbus, |
2035 | 2033 |
.qdev.props = (Property[]) { |
2036 | 2034 |
DEFINE_PROP_DRIVE("drive", fdctrl_sysbus_t, state.drives[0].dinfo), |
Also available in: Unified diff