Add common dt-bindings to replace internal macros.
Mike Tipton (2):
dt-bindings: interconnect: Add generic qcom bindings
interconnect: qcom: Don't redefine bucket/tag macros
drivers/interconnect/qcom/icc-rpmh.h | 18 ++------------
include/dt-bindings/interconnect/qcom,icc.h | 26 +++++++++++++++++++++
2 files changed, 28 insertions(+), 16 deletions(-)
create mode 100644 include/dt-bindings/interconnect/qcom,icc.h
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
Replace internal bucket/tag macros with those defined in dt-bindings.
Signed-off-by: Mike Tipton <[email protected]>
---
drivers/interconnect/qcom/icc-rpmh.h | 18 ++----------------
1 file changed, 2 insertions(+), 16 deletions(-)
diff --git a/drivers/interconnect/qcom/icc-rpmh.h b/drivers/interconnect/qcom/icc-rpmh.h
index 903d25e61984..cb736b745e1a 100644
--- a/drivers/interconnect/qcom/icc-rpmh.h
+++ b/drivers/interconnect/qcom/icc-rpmh.h
@@ -6,6 +6,8 @@
#ifndef __DRIVERS_INTERCONNECT_QCOM_ICC_RPMH_H__
#define __DRIVERS_INTERCONNECT_QCOM_ICC_RPMH_H__
+#include <dt-bindings/interconnect/qcom,icc.h>
+
#define to_qcom_provider(_provider) \
container_of(_provider, struct qcom_icc_provider, provider)
@@ -44,22 +46,6 @@ struct bcm_db {
#define MAX_BCM_PER_NODE 3
#define MAX_VCD 10
-/*
- * The AMC bucket denotes constraints that are applied to hardware when
- * icc_set_bw() completes, whereas the WAKE and SLEEP constraints are applied
- * when the execution environment transitions between active and low power mode.
- */
-#define QCOM_ICC_BUCKET_AMC 0
-#define QCOM_ICC_BUCKET_WAKE 1
-#define QCOM_ICC_BUCKET_SLEEP 2
-#define QCOM_ICC_NUM_BUCKETS 3
-#define QCOM_ICC_TAG_AMC BIT(QCOM_ICC_BUCKET_AMC)
-#define QCOM_ICC_TAG_WAKE BIT(QCOM_ICC_BUCKET_WAKE)
-#define QCOM_ICC_TAG_SLEEP BIT(QCOM_ICC_BUCKET_SLEEP)
-#define QCOM_ICC_TAG_ACTIVE_ONLY (QCOM_ICC_TAG_AMC | QCOM_ICC_TAG_WAKE)
-#define QCOM_ICC_TAG_ALWAYS (QCOM_ICC_TAG_AMC | QCOM_ICC_TAG_WAKE |\
- QCOM_ICC_TAG_SLEEP)
-
/**
* struct qcom_icc_node - Qualcomm specific interconnect nodes
* @name: the node name used in debugfs
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
Add generic qcom interconnect bindings that are common across platforms. In
particular, these include QCOM_ICC_TAG_* macros that clients can use when
calling icc_set_tag().
Signed-off-by: Mike Tipton <[email protected]>
---
include/dt-bindings/interconnect/qcom,icc.h | 26 +++++++++++++++++++++
1 file changed, 26 insertions(+)
create mode 100644 include/dt-bindings/interconnect/qcom,icc.h
diff --git a/include/dt-bindings/interconnect/qcom,icc.h b/include/dt-bindings/interconnect/qcom,icc.h
new file mode 100644
index 000000000000..cd34f36daaaa
--- /dev/null
+++ b/include/dt-bindings/interconnect/qcom,icc.h
@@ -0,0 +1,26 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+/*
+ * Copyright (c) 2020, The Linux Foundation. All rights reserved.
+ */
+
+#ifndef __DT_BINDINGS_INTERCONNECT_QCOM_ICC_H
+#define __DT_BINDINGS_INTERCONNECT_QCOM_ICC_H
+
+/*
+ * The AMC bucket denotes constraints that are applied to hardware when
+ * icc_set_bw() completes, whereas the WAKE and SLEEP constraints are applied
+ * when the execution environment transitions between active and low power mode.
+ */
+#define QCOM_ICC_BUCKET_AMC 0
+#define QCOM_ICC_BUCKET_WAKE 1
+#define QCOM_ICC_BUCKET_SLEEP 2
+#define QCOM_ICC_NUM_BUCKETS 3
+
+#define QCOM_ICC_TAG_AMC (1 << QCOM_ICC_BUCKET_AMC)
+#define QCOM_ICC_TAG_WAKE (1 << QCOM_ICC_BUCKET_WAKE)
+#define QCOM_ICC_TAG_SLEEP (1 << QCOM_ICC_BUCKET_SLEEP)
+#define QCOM_ICC_TAG_ACTIVE_ONLY (QCOM_ICC_TAG_AMC | QCOM_ICC_TAG_WAKE)
+#define QCOM_ICC_TAG_ALWAYS (QCOM_ICC_TAG_AMC | QCOM_ICC_TAG_WAKE |\
+ QCOM_ICC_TAG_SLEEP)
+
+#endif
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
On Mon, Jun 22, 2020 at 09:05:14PM -0700, Mike Tipton wrote:
> Add generic qcom interconnect bindings that are common across platforms. In
> particular, these include QCOM_ICC_TAG_* macros that clients can use when
> calling icc_set_tag().
>
> Signed-off-by: Mike Tipton <[email protected]>
> ---
> include/dt-bindings/interconnect/qcom,icc.h | 26 +++++++++++++++++++++
> 1 file changed, 26 insertions(+)
> create mode 100644 include/dt-bindings/interconnect/qcom,icc.h
>
> diff --git a/include/dt-bindings/interconnect/qcom,icc.h b/include/dt-bindings/interconnect/qcom,icc.h
> new file mode 100644
> index 000000000000..cd34f36daaaa
> --- /dev/null
> +++ b/include/dt-bindings/interconnect/qcom,icc.h
> @@ -0,0 +1,26 @@
> +/* SPDX-License-Identifier: GPL-2.0-only */
> +/*
> + * Copyright (c) 2020, The Linux Foundation. All rights reserved.
> + */
> +
> +#ifndef __DT_BINDINGS_INTERCONNECT_QCOM_ICC_H
> +#define __DT_BINDINGS_INTERCONNECT_QCOM_ICC_H
> +
> +/*
> + * The AMC bucket denotes constraints that are applied to hardware when
> + * icc_set_bw() completes, whereas the WAKE and SLEEP constraints are applied
> + * when the execution environment transitions between active and low power mode.
> + */
> +#define QCOM_ICC_BUCKET_AMC 0
> +#define QCOM_ICC_BUCKET_WAKE 1
> +#define QCOM_ICC_BUCKET_SLEEP 2
> +#define QCOM_ICC_NUM_BUCKETS 3
> +
> +#define QCOM_ICC_TAG_AMC (1 << QCOM_ICC_BUCKET_AMC)
> +#define QCOM_ICC_TAG_WAKE (1 << QCOM_ICC_BUCKET_WAKE)
> +#define QCOM_ICC_TAG_SLEEP (1 << QCOM_ICC_BUCKET_SLEEP)
> +#define QCOM_ICC_TAG_ACTIVE_ONLY (QCOM_ICC_TAG_AMC | QCOM_ICC_TAG_WAKE)
> +#define QCOM_ICC_TAG_ALWAYS (QCOM_ICC_TAG_AMC | QCOM_ICC_TAG_WAKE |\
> + QCOM_ICC_TAG_SLEEP)
> +
> +#endif
Would it make sense to squash the two patches of this series into a
single patch? This would make it more evident that this was moved
from drivers/interconnect/qcom/icc-rpmh.h and avoid duplicate
definitions if only this patch was applied.
On 7/9/2020 8:35 AM, Matthias Kaehlcke wrote:
> On Mon, Jun 22, 2020 at 09:05:14PM -0700, Mike Tipton wrote:
>> Add generic qcom interconnect bindings that are common across platforms. In
>> particular, these include QCOM_ICC_TAG_* macros that clients can use when
>> calling icc_set_tag().
>>
>> Signed-off-by: Mike Tipton <[email protected]>
>> ---
>> include/dt-bindings/interconnect/qcom,icc.h | 26 +++++++++++++++++++++
>> 1 file changed, 26 insertions(+)
>> create mode 100644 include/dt-bindings/interconnect/qcom,icc.h
>>
>> diff --git a/include/dt-bindings/interconnect/qcom,icc.h b/include/dt-bindings/interconnect/qcom,icc.h
>> new file mode 100644
>> index 000000000000..cd34f36daaaa
>> --- /dev/null
>> +++ b/include/dt-bindings/interconnect/qcom,icc.h
>> @@ -0,0 +1,26 @@
>> +/* SPDX-License-Identifier: GPL-2.0-only */
>> +/*
>> + * Copyright (c) 2020, The Linux Foundation. All rights reserved.
>> + */
>> +
>> +#ifndef __DT_BINDINGS_INTERCONNECT_QCOM_ICC_H
>> +#define __DT_BINDINGS_INTERCONNECT_QCOM_ICC_H
>> +
>> +/*
>> + * The AMC bucket denotes constraints that are applied to hardware when
>> + * icc_set_bw() completes, whereas the WAKE and SLEEP constraints are applied
>> + * when the execution environment transitions between active and low power mode.
>> + */
>> +#define QCOM_ICC_BUCKET_AMC 0
>> +#define QCOM_ICC_BUCKET_WAKE 1
>> +#define QCOM_ICC_BUCKET_SLEEP 2
>> +#define QCOM_ICC_NUM_BUCKETS 3
>> +
>> +#define QCOM_ICC_TAG_AMC (1 << QCOM_ICC_BUCKET_AMC)
>> +#define QCOM_ICC_TAG_WAKE (1 << QCOM_ICC_BUCKET_WAKE)
>> +#define QCOM_ICC_TAG_SLEEP (1 << QCOM_ICC_BUCKET_SLEEP)
>> +#define QCOM_ICC_TAG_ACTIVE_ONLY (QCOM_ICC_TAG_AMC | QCOM_ICC_TAG_WAKE)
>> +#define QCOM_ICC_TAG_ALWAYS (QCOM_ICC_TAG_AMC | QCOM_ICC_TAG_WAKE |\
>> + QCOM_ICC_TAG_SLEEP)
>> +
>> +#endif
>
> Would it make sense to squash the two patches of this series into a
> single patch? This would make it more evident that this was moved
> from drivers/interconnect/qcom/icc-rpmh.h and avoid duplicate
> definitions if only this patch was applied.
Makes sense to me. I'm going to have to move this to my other patch
series anyway, so I can squash these two and include it in v2 of
"interconnect: qcom: Misc bcm-voter changes and fixes".