diff options
author | Murali Karicheri <m-karicheri2@ti.com> | 2018-04-17 17:30:31 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2018-04-18 21:00:56 -0400 |
commit | a2dd6877b43ef14129f258910d60b2e81b32100b (patch) | |
tree | 1f64183d117602299350d753ab4dc91e17a6ed1c /include/linux/soc/ti/knav_dma.h | |
parent | 350601b4f7ab45a3ef39575acc21d6b7a69f724b (diff) | |
download | linux-a2dd6877b43ef14129f258910d60b2e81b32100b.tar.gz linux-a2dd6877b43ef14129f258910d60b2e81b32100b.tar.bz2 linux-a2dd6877b43ef14129f258910d60b2e81b32100b.zip |
soc: ti: K2G: provide APIs to support driver probe deferral
This patch provide APIs to allow client drivers to support
probe deferral. On K2G SoC, devices can be probed only
after the ti_sci_pm_domains driver is probed and ready.
As drivers may get probed at different order, any driver
that depends on knav dma and qmss drivers, for example
netcp network driver, needs to defer probe until
knav devices are probed and ready to service. To do this,
add an API to query the device ready status from the knav
dma and qmss devices.
Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/soc/ti/knav_dma.h')
-rw-r--r-- | include/linux/soc/ti/knav_dma.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/include/linux/soc/ti/knav_dma.h b/include/linux/soc/ti/knav_dma.h index 66693bc4c6ad..7127ec301537 100644 --- a/include/linux/soc/ti/knav_dma.h +++ b/include/linux/soc/ti/knav_dma.h @@ -167,6 +167,8 @@ struct knav_dma_desc { void *knav_dma_open_channel(struct device *dev, const char *name, struct knav_dma_cfg *config); void knav_dma_close_channel(void *channel); +int knav_dma_get_flow(void *channel); +bool knav_dma_device_ready(void); #else static inline void *knav_dma_open_channel(struct device *dev, const char *name, struct knav_dma_cfg *config) @@ -176,6 +178,16 @@ static inline void *knav_dma_open_channel(struct device *dev, const char *name, static inline void knav_dma_close_channel(void *channel) {} +static inline int knav_dma_get_flow(void *channel) +{ + return -EINVAL; +} + +static inline bool knav_dma_device_ready(void) +{ + return false; +} + #endif #endif /* __SOC_TI_KEYSTONE_NAVIGATOR_DMA_H__ */ |