summaryrefslogtreecommitdiff
path: root/drivers/staging/fsl-mc/include/mc.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/staging/fsl-mc/include/mc.h')
-rw-r--r--drivers/staging/fsl-mc/include/mc.h17
1 files changed, 15 insertions, 2 deletions
diff --git a/drivers/staging/fsl-mc/include/mc.h b/drivers/staging/fsl-mc/include/mc.h
index f6e720e..c23b78a 100644
--- a/drivers/staging/fsl-mc/include/mc.h
+++ b/drivers/staging/fsl-mc/include/mc.h
@@ -1,7 +1,7 @@
/*
* Freescale Management Complex (MC) bus public interface
*
- * Copyright (C) 2014 Freescale Semiconductor, Inc.
+ * Copyright (C) 2014-2016 Freescale Semiconductor, Inc.
* Author: German Rivera <German.Rivera@freescale.com>
*
* This file is licensed under the terms of the GNU General Public
@@ -81,7 +81,7 @@ enum fsl_mc_pool_type {
*/
struct fsl_mc_resource {
enum fsl_mc_pool_type type;
- int32_t id;
+ s32 id;
void *data;
struct fsl_mc_resource_pool *parent_pool;
struct list_head node;
@@ -122,6 +122,7 @@ struct fsl_mc_device_irq {
* @regions: pointer to array of MMIO region entries
* @irqs: pointer to array of pointers to interrupts allocated to this device
* @resource: generic resource associated with this MC object device, if any.
+ * @driver_override: Driver name to force a match
*
* Generic device object for MC object devices that are "attached" to a
* MC bus.
@@ -154,6 +155,7 @@ struct fsl_mc_device {
struct resource *regions;
struct fsl_mc_device_irq **irqs;
struct fsl_mc_resource *resource;
+ const char *driver_override;
};
#define to_fsl_mc_device(_dev) \
@@ -175,6 +177,8 @@ struct fsl_mc_device {
#define fsl_mc_driver_register(drv) \
__fsl_mc_driver_register(drv, THIS_MODULE)
+void fsl_mc_device_remove(struct fsl_mc_device *mc_dev);
+
int __must_check __fsl_mc_driver_register(struct fsl_mc_driver *fsl_mc_driver,
struct module *owner);
@@ -198,4 +202,13 @@ int __must_check fsl_mc_allocate_irqs(struct fsl_mc_device *mc_dev);
void fsl_mc_free_irqs(struct fsl_mc_device *mc_dev);
+void fsl_mc_dma_configure(struct fsl_mc_device *mc_dev,
+ struct device_node *fsl_mc_platform_node, int coherent);
+
+#ifdef CONFIG_FSL_MC_BUS
+struct iommu_group *fsl_mc_device_group(struct device *dev);
+#else
+#define fsl_mc_device_group(__dev) NULL
+#endif
+
#endif /* _FSL_MC_H_ */