diff options
author | Arnd Bergmann <arnd@arndb.de> | 2016-09-14 22:18:56 (GMT) |
---|---|---|
committer | Arnd Bergmann <arnd@arndb.de> | 2016-09-14 22:18:56 (GMT) |
commit | fceec41b68143e895f748e72bd07c5e2d45ab185 (patch) | |
tree | b0c1e54f52b83956989c29a8f3ed50b88f5ede66 /include | |
parent | e747ea14de075172212823cbcb4a07a8ccd55c35 (diff) | |
parent | 23c282d62f573263db679e6b4c9f2da82aa24f96 (diff) | |
download | linux-fceec41b68143e895f748e72bd07c5e2d45ab185.tar.xz |
Merge tag 'qcom-drivers-for-4.9' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux into next/drivers
Pull "Qualcomm ARM Based Driver Updates for v4.9" from Andy Gross:
* Silence smem probe defer messages
* Make scm explicitly non-modular
* Assorted SMD bug fixes and minor changes
* Add PM8018 RTC support
* tag 'qcom-drivers-for-4.9' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux:
rtc: rtc-pm8xxx: Add support for pm8018 rtc
soc: qcom: smd: Reset rx tail rather than tx
soc: qcom: smd: Represent smd edges as devices
soc: qcom: smd: Request irqs after parsing properties
soc: qcom: smd: Simplify multi channel handling
soc: qcom: smd: Correct compile stub prototypes
firmware: qcom_scm: make it explicitly non-modular
soc: qcom: smem: Silence probe defer error
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/soc/qcom/smd.h | 29 |
1 files changed, 27 insertions, 2 deletions
diff --git a/include/linux/soc/qcom/smd.h b/include/linux/soc/qcom/smd.h index cbb0f06..f148e0f 100644 --- a/include/linux/soc/qcom/smd.h +++ b/include/linux/soc/qcom/smd.h @@ -55,11 +55,16 @@ void qcom_smd_driver_unregister(struct qcom_smd_driver *drv); struct qcom_smd_channel *qcom_smd_open_channel(struct qcom_smd_channel *channel, const char *name, qcom_smd_cb_t cb); +void qcom_smd_close_channel(struct qcom_smd_channel *channel); void *qcom_smd_get_drvdata(struct qcom_smd_channel *channel); void qcom_smd_set_drvdata(struct qcom_smd_channel *channel, void *data); int qcom_smd_send(struct qcom_smd_channel *channel, const void *data, int len); +struct qcom_smd_edge *qcom_smd_register_edge(struct device *parent, + struct device_node *node); +int qcom_smd_unregister_edge(struct qcom_smd_edge *edge); + #else static inline int qcom_smd_driver_register(struct qcom_smd_driver *drv) @@ -83,14 +88,20 @@ qcom_smd_open_channel(struct qcom_smd_channel *channel, return NULL; } -void *qcom_smd_get_drvdata(struct qcom_smd_channel *channel) +static inline void qcom_smd_close_channel(struct qcom_smd_channel *channel) +{ + /* This shouldn't be possible */ + WARN_ON(1); +} + +static inline void *qcom_smd_get_drvdata(struct qcom_smd_channel *channel) { /* This shouldn't be possible */ WARN_ON(1); return NULL; } -void qcom_smd_set_drvdata(struct qcom_smd_channel *channel, void *data) +static inline void qcom_smd_set_drvdata(struct qcom_smd_channel *channel, void *data) { /* This shouldn't be possible */ WARN_ON(1); @@ -104,6 +115,20 @@ static inline int qcom_smd_send(struct qcom_smd_channel *channel, return -ENXIO; } +static inline struct qcom_smd_edge * +qcom_smd_register_edge(struct device *parent, + struct device_node *node) +{ + return ERR_PTR(-ENXIO); +} + +static inline int qcom_smd_unregister_edge(struct qcom_smd_edge *edge) +{ + /* This shouldn't be possible */ + WARN_ON(1); + return -ENXIO; +} + #endif #define module_qcom_smd_driver(__smd_driver) \ |