/* * (C) Copyright 2015 Freescale Semiconductor * * SPDX-License-Identifier: GPL-2.0+ * * Extracted from gic_64.S */ #include #include #include /************************************************************************* * * void ccn504_add_masters_to_dvm(CCI_MN_BASE, CCI_MN_RNF_NODEID_LIST, * CCI_MN_DVM_DOMAIN_CTL_SET); * * Add fully-coherent masters to DVM domain * *************************************************************************/ ENTRY(ccn504_add_masters_to_dvm) /* * x0: CCI_MN_BASE * x1: CCI_MN_RNF_NODEID_LIST * x2: CCI_MN_DVM_DOMAIN_CTL_SET */ /* Add fully-coherent masters to DVM domain */ ldr x9, [x0, x1] str x9, [x0, x2] 1: ldr x10, [x0, x2] mvn x11, x10 tst x11, x10 /* Wait for domain addition to complete */ b.ne 1b ret ENDPROC(ccn504_add_masters_to_dvm) /************************************************************************* * * void ccn504_set_qos(CCI_Sx_QOS_CONTROL_BASE, QoS Value); * * Initialize QoS settings for AR/AW override. * Right now, this function sets the same QoS value for all RN-I ports * *************************************************************************/ ENTRY(ccn504_set_qos) /* * x0: CCI_Sx_QOS_CONTROL_BASE * x1: QoS Value */ /* Set all RN-I ports to QoS value denoted by x1 */ ldr x9, [x0] mov x10, x1 orr x9, x9, x10 str x9, [x0] ret ENDPROC(ccn504_set_qos)