aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2018-10-01 12:22:05 -0600
committerSimon Glass <sjg@chromium.org>2018-10-09 04:40:27 -0600
commitc7a3accc3f6a288ecbf9d62966792c93732060f2 (patch)
treef2c77590441fe8b946f191b56c861c589680debf
parent4af3e9ad8aebd4ed73a6dc2db856f0018d9850a5 (diff)
downloadu-boot-c7a3accc3f6a288ecbf9d62966792c93732060f2.zip
u-boot-c7a3accc3f6a288ecbf9d62966792c93732060f2.tar.gz
u-boot-c7a3accc3f6a288ecbf9d62966792c93732060f2.tar.bz2
dm: core: Alloc uclass-private data to be cache-aligned
There is no reason why this feature should not be supported for uclass- private data. Update the code accordingly. Signed-off-by: Simon Glass <sjg@chromium.org>
-rw-r--r--drivers/core/device.c3
-rw-r--r--include/dm/uclass.h3
2 files changed, 5 insertions, 1 deletions
diff --git a/drivers/core/device.c b/drivers/core/device.c
index feed43c..73c99d1 100644
--- a/drivers/core/device.c
+++ b/drivers/core/device.c
@@ -331,7 +331,8 @@ int device_probe(struct udevice *dev)
/* Allocate private data if requested and not reentered */
size = dev->uclass->uc_drv->per_device_auto_alloc_size;
if (size && !dev->uclass_priv) {
- dev->uclass_priv = calloc(1, size);
+ dev->uclass_priv = alloc_priv(size,
+ dev->uclass->uc_drv->flags);
if (!dev->uclass_priv) {
ret = -ENOMEM;
goto fail;
diff --git a/include/dm/uclass.h b/include/dm/uclass.h
index 6e7c1cd..eebf2d5 100644
--- a/include/dm/uclass.h
+++ b/include/dm/uclass.h
@@ -44,6 +44,9 @@ struct udevice;
/* Members of this uclass sequence themselves with aliases */
#define DM_UC_FLAG_SEQ_ALIAS (1 << 0)
+/* Same as DM_FLAG_ALLOC_PRIV_DMA */
+#define DM_UC_FLAG_ALLOC_PRIV_DMA (1 << 5)
+
/**
* struct uclass_driver - Driver for the uclass
*