/* Before rebooting, we must make sure that the expansion card is in a sensible state, so it can be re-detected. This means that the first page of the ROM must be visible. We call the expansion cards reset handler, if any.  */
static void ecard_drv_shutdown(struct device *dev)
/* Before rebooting, we must make sure that the expansion card is in a sensible state, so it can be re-detected. This means that the first page of the ROM must be visible. We call the expansion cards reset handler, if any.  */
static void ecard_drv_shutdown(struct device *dev)
{
	struct expansion_card *ec = ECARD_DEV(dev);
	struct ecard_driver *drv = ECARD_DRV(dev->driver);
	struct ecard_request req;
	if (dev->driver) {
		if (drv->shutdown)
			drv->shutdown(ec);
		ec->claimed = 0;
	}
	if (ec->loader) {
		req.fn = ecard_task_reset;
		req.ec = ec;
		ecard_call(&req);
	}
}