summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2016-05-01 11:36:04 -0600
committerSimon Glass <sjg@chromium.org>2016-05-17 09:54:43 -0600
commit3ef85e377201c1ebe84e74bfb785c95ccbc37b13 (patch)
tree18392b9ff4eb23d9118c9c2bb9c6b70831b24add
parent6eef6eac1fc137c97bf1993304ed83b8e483c80a (diff)
downloadu-boot-imx-3ef85e377201c1ebe84e74bfb785c95ccbc37b13.zip
u-boot-imx-3ef85e377201c1ebe84e74bfb785c95ccbc37b13.tar.gz
u-boot-imx-3ef85e377201c1ebe84e74bfb785c95ccbc37b13.tar.bz2
dm: systemace: Add a legacy block interface
Add a legacy block interface for systemace. Signed-off-by: Simon Glass <sjg@chromium.org>
-rw-r--r--drivers/block/systemace.c14
-rw-r--r--include/blk.h1
2 files changed, 15 insertions, 0 deletions
diff --git a/drivers/block/systemace.c b/drivers/block/systemace.c
index 09fe834..0d8e26f 100644
--- a/drivers/block/systemace.c
+++ b/drivers/block/systemace.c
@@ -132,6 +132,13 @@ struct blk_desc *systemace_get_dev(int dev)
}
#endif
+static int systemace_get_devp(int dev, struct blk_desc **descp)
+{
+ *descp = systemace_get_dev(dev);
+
+ return 0;
+}
+
/*
* This function is called (by dereferencing the block_read pointer in
* the dev_desc) to read blocks of data. The return value is the
@@ -257,3 +264,10 @@ static unsigned long systemace_read(struct blk_desc *block_dev,
return blkcnt;
}
+
+U_BOOT_LEGACY_BLK(systemace) = {
+ .if_typename = "ace",
+ .if_type = IF_TYPE_SYSTEMACE,
+ .max_devs = 1,
+ .get_dev = systemace_get_devp,
+};
diff --git a/include/blk.h b/include/blk.h
index a562c10..2caac9c 100644
--- a/include/blk.h
+++ b/include/blk.h
@@ -30,6 +30,7 @@ enum if_type {
IF_TYPE_SD,
IF_TYPE_SATA,
IF_TYPE_HOST,
+ IF_TYPE_SYSTEMACE,
IF_TYPE_COUNT, /* Number of interface types */
};