commit 50c4759df3100f4f8a6a8364b559796c1ce03569
parent 4ecb8231adc2587faeaa35718f26906c6eaabd9d
Author: Roberto Vargas <roberto.vargas@arm.com>
Date: Thu, 28 Feb 2019 16:53:14 +0000
[dev] Simplify clone()
We can use the same implementation for all the devices.
Change-Id: Iee2941a2231384df018d756cd4ccac452ad22f2e
Diffstat:
5 files changed, 4 insertions(+), 14 deletions(-)
diff --git a/drivers/dev.c b/drivers/dev.c
@@ -111,12 +111,6 @@ devtype(int c)
return i;
}
-static Chan *
-clone(Chan *c, Chan *nc)
-{
- return devtab[c->type]->clone(c, nc);
-}
-
void
chanclose(Chan *c)
{
@@ -220,7 +214,7 @@ notfound:
}
Chan *
-devclone(Chan *c, Chan *nc)
+clone(Chan *c, Chan *nc)
{
if (!nc && (nc = newchan(c->type)) == NULL)
return NULL;
diff --git a/drivers/dev.h b/drivers/dev.h
@@ -22,7 +22,6 @@ struct dirtab {
struct dev {
char id;
char name[NAMELEN];
- Chan * (*clone)(Chan *c, Chan *nc);
int (*walk)(Chan *c, const char *name);
int (*read)(Chan *c, void *buf, int n);
int (*write)(Chan *c, void *buf, int n);
@@ -41,11 +40,11 @@ struct attr {
char *value;
};
-extern Chan *devclone(Chan *c, Chan *nc);
-extern Chan *devclone(Chan *c, Chan *nc);
+extern Chan *clone(Chan *c, Chan *nc);
+extern void chanclose(Chan *c);
+
extern void devlink(void);
extern int devwrite(Chan *c, void *buf, int n);
-extern void chanclose(Chan *c);
extern int devgen(Chan *c,
const Dirtab *tab, int ntab,
int n,
diff --git a/drivers/devblob.c b/drivers/devblob.c
@@ -146,7 +146,6 @@ blobwrite(Chan *c, void *buf, int n)
const Dev blobdevtab = {
.id = 'b',
.name = "blob",
- .clone = devclone,
.walk = blobwalk,
.read = blobread,
.write = blobwrite,
diff --git a/drivers/devroot.c b/drivers/devroot.c
@@ -60,7 +60,6 @@ rootread(Chan *c, void *buf, int n)
const Dev rootdevtab = {
.id = '/',
.name = "root",
- .clone = devclone,
.walk = rootwalk,
.read = rootread,
.write = devwrite,
diff --git a/drivers/devuart.c b/drivers/devuart.c
@@ -264,7 +264,6 @@ const Dev uartdevtab = {
.id = 't',
.name = "uart",
.walk = uartwalk,
- .clone = devclone,
.read = uartread,
.write = uartwrite,
};