/* SPDX-License-Identifier: GPL-2.0+ */ /* * Quality of Service (QoS) Configuration Header File * * Copyright (C) 2024 Texas Instruments Incorporated - https://www.ti.com/ */ #ifndef _K3_QOS_H_ #define _K3_QOS_H_ #include /* K3_QOS_REG: Registers to configure the channel for a given endpoint */ #define K3_QOS_REG(base_reg, i) (base_reg + 0x100 + (i) * 4) #define K3_QOS_VAL(qos, orderid, asel, epriority, virtid, atype) \ (qos << 0 | \ orderid << 4 | \ asel << 8 | \ epriority << 12 | \ virtid << 16 | \ atype << 28) /* * K3_QOS_GROUP_REG: Registers to set 1:1 mapping for orderID MAP1/MAP2 * remap registers. */ #define K3_QOS_GROUP_REG(base_reg, i) (base_reg + (i) * 4) #define K3_QOS_GROUP_DEFAULT_VAL_LOW 0x76543210 #define K3_QOS_GROUP_DEFAULT_VAL_HIGH 0xfedcba98 struct k3_qos_data { u32 reg; u32 val; }; #if (IS_ENABLED(CONFIG_K3_QOS)) extern struct k3_qos_data qos_data[]; extern u32 qos_count; #endif #endif /* _K3_QOS_H_ */