mirror of
https://github.com/DigitalDevices/dddvb.git
synced 2023-10-10 13:37:43 +02:00
show MCI firmware version
This commit is contained in:
parent
3cb3df51cf
commit
a5ad0b0584
@ -34,10 +34,16 @@ static int mci_reset(struct ddb_link *link)
|
|||||||
u32 control;
|
u32 control;
|
||||||
u32 status = 0;
|
u32 status = 0;
|
||||||
u32 timeout = 40;
|
u32 timeout = 40;
|
||||||
|
union {
|
||||||
|
u32 u[4];
|
||||||
|
char s[16];
|
||||||
|
} version;
|
||||||
|
u32 vaddr;
|
||||||
|
|
||||||
if (!regmap || ! regmap->mci)
|
if (!regmap || !regmap->mci)
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
control = regmap->mci->base;
|
control = regmap->mci->base;
|
||||||
|
vaddr = regmap->mci_buf->base + 0xf0;
|
||||||
|
|
||||||
if ((link->info->type == DDB_OCTOPUS_MCI) &&
|
if ((link->info->type == DDB_OCTOPUS_MCI) &&
|
||||||
(ddblreadl(link, control) & MCI_CONTROL_START_COMMAND)) {
|
(ddblreadl(link, control) & MCI_CONTROL_START_COMMAND)) {
|
||||||
@ -55,11 +61,17 @@ static int mci_reset(struct ddb_link *link)
|
|||||||
msleep(50);
|
msleep(50);
|
||||||
}
|
}
|
||||||
dev_info(link->dev->dev, "MCI control port @ %08x\n", control);
|
dev_info(link->dev->dev, "MCI control port @ %08x\n", control);
|
||||||
|
|
||||||
if ((status & MCI_CONTROL_READY) == 0) {
|
if ((status & MCI_CONTROL_READY) == 0) {
|
||||||
dev_err(link->dev->dev, "MCI init failed!\n");
|
dev_err(link->dev->dev, "MCI init failed!\n");
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
version.u[0] = ddblreadl(link, vaddr);
|
||||||
|
version.u[1] = ddblreadl(link, vaddr + 4);
|
||||||
|
version.u[2] = ddblreadl(link, vaddr + 8);
|
||||||
|
version.u[3] = ddblreadl(link, vaddr + 12);
|
||||||
dev_info(link->dev->dev, "MCI port OK, init time %u msecs\n", (40 - timeout) * 50);
|
dev_info(link->dev->dev, "MCI port OK, init time %u msecs\n", (40 - timeout) * 50);
|
||||||
|
dev_info(link->dev->dev, "MCI firmware version %s.%d\n", version.s, version.s[15]);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user