Commit 3ea2c092 authored by Manohar Vanga's avatar Manohar Vanga

simulation: fix critical bugs. works now :)

Signed-off-by: 's avatarManohar Vanga <manohar.vanga@cern.ch>
parent f5c56bcb
......@@ -43,7 +43,7 @@ void *fake_read_cfg(wb_addr_t addr, void *buf, size_t len)
{
if (wb_fw->size < addr + len)
return NULL;
memcpy(buf, &wb_fw[addr], len);
memcpy(buf, &wb_fw->data[addr], len);
return buf;
}
......@@ -90,8 +90,6 @@ bus_register_fail:
static void fake_wbbus_release(struct device *dev)
{
wb_unregister_bus(&fake_wb_bus);
release_firmware(wb_fw);
}
static struct device fake_wbbus_device = {
......@@ -111,12 +109,17 @@ static int __init fake_wb_bus_init(void)
"Wishbone bus\n");
return ret;
}
fake_wbbus_probe(&fake_wbbus_device);
if ((ret = fake_wbbus_probe(&fake_wbbus_device)) < 0) {
device_unregister(&fake_wbbus_device);
return ret;
}
return 0;
}
static void __exit fake_wb_bus_exit(void)
{
wb_unregister_bus(&fake_wb_bus);
release_firmware(wb_fw);
device_unregister(&fake_wbbus_device);
}
......
......@@ -126,7 +126,7 @@ static struct wb_device *wb_get_next_device(struct wb_bus *bus, wb_addr_t wb_ptr
struct sdwb_wbd wbd;
struct wb_device *wbdev;
memcpy_from_wb(bus, wb_ptr, (void *)&wbd,
wb_read_cfg(bus, wb_ptr, (void *)&wbd,
sizeof(struct sdwb_wbd));
if (wbd.wbd_magic != SDWB_WBD_MAGIC)
......@@ -151,7 +151,7 @@ int wb_scan_bus(struct wb_bus *bus)
struct wb_device *wbdev;
struct wb_device *next;
memcpy_from_wb(bus, bus->sdwb_header_base, (void *)&head,
wb_read_cfg(bus, bus->sdwb_header_base, (void *)&head,
sizeof(struct sdwb_head));
/* verify our header using the magic field */
......@@ -161,7 +161,7 @@ int wb_scan_bus(struct wb_bus *bus)
return -ENODEV;
}
memcpy_from_wb(bus, head.wbid_address, (void *)&wbid,
wb_read_cfg(bus, head.wbid_address, (void *)&wbid,
sizeof(struct sdwb_wbid));
pr_info(KBUILD_MODNAME ": found sdwb bistream: 0x%llx\n",
wbid.bstream_type);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment