162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-only */
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * Copyright (c) 2020, The Linux Foundation. All rights reserved.
462306a36Sopenharmony_ci */
562306a36Sopenharmony_ci
662306a36Sopenharmony_ci#ifndef __DT_BINDINGS_INTERCONNECT_QCOM_ICC_H
762306a36Sopenharmony_ci#define __DT_BINDINGS_INTERCONNECT_QCOM_ICC_H
862306a36Sopenharmony_ci
962306a36Sopenharmony_ci/*
1062306a36Sopenharmony_ci * The AMC bucket denotes constraints that are applied to hardware when
1162306a36Sopenharmony_ci * icc_set_bw() completes, whereas the WAKE and SLEEP constraints are applied
1262306a36Sopenharmony_ci * when the execution environment transitions between active and low power mode.
1362306a36Sopenharmony_ci */
1462306a36Sopenharmony_ci#define QCOM_ICC_BUCKET_AMC		0
1562306a36Sopenharmony_ci#define QCOM_ICC_BUCKET_WAKE		1
1662306a36Sopenharmony_ci#define QCOM_ICC_BUCKET_SLEEP		2
1762306a36Sopenharmony_ci#define QCOM_ICC_NUM_BUCKETS		3
1862306a36Sopenharmony_ci
1962306a36Sopenharmony_ci#define QCOM_ICC_TAG_AMC		(1 << QCOM_ICC_BUCKET_AMC)
2062306a36Sopenharmony_ci#define QCOM_ICC_TAG_WAKE		(1 << QCOM_ICC_BUCKET_WAKE)
2162306a36Sopenharmony_ci#define QCOM_ICC_TAG_SLEEP		(1 << QCOM_ICC_BUCKET_SLEEP)
2262306a36Sopenharmony_ci#define QCOM_ICC_TAG_ACTIVE_ONLY	(QCOM_ICC_TAG_AMC | QCOM_ICC_TAG_WAKE)
2362306a36Sopenharmony_ci#define QCOM_ICC_TAG_ALWAYS		(QCOM_ICC_TAG_AMC | QCOM_ICC_TAG_WAKE |\
2462306a36Sopenharmony_ci					 QCOM_ICC_TAG_SLEEP)
2562306a36Sopenharmony_ci
2662306a36Sopenharmony_ci#endif
27