1<?xml version="1.0" encoding="utf-8"?> 2 3 4<!--**************************************************************************** 5* \file pclk_v2.cypersonality 6* \version 1.0 7* 8* \brief 9* Peripheral Clock personality description file. 10* This supports CAT1B, CAT1C and CAT1D devices. 11* 12******************************************************************************** 13* \copyright 14* Copyright (c) (2020-2022), Cypress Semiconductor Corporation (an Infineon company) or 15* an affiliate of Cypress Semiconductor Corporation. 16* SPDX-License-Identifier: Apache-2.0 17* 18* Licensed under the Apache License, Version 2.0 (the "License"); 19* you may not use this file except in compliance with the License. 20* You may obtain a copy of the License at 21* 22* http://www.apache.org/licenses/LICENSE-2.0 23* 24* Unless required by applicable law or agreed to in writing, software 25* distributed under the License is distributed on an "AS IS" BASIS, 26* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 27* See the License for the specific language governing permissions and 28* limitations under the License. 29*****************************************************************************--> 30 31<Personality id="pclk_v2" name="Peripheral Clock" version="1.0" xmlns="http://cypress.com/xsd/cyhwpersonality_v7"> 32 <Dependencies> 33 <IpBlock name="mxperi_ver3,mxsperi" /> 34 <Resource name="peri\.group\.div_(8|16|16_5|24_5)" /> 35 </Dependencies> 36 <ExposedMembers> 37 <ExposedMember key="type" paramId="typeApiConst" /> 38 <ExposedMember key="number" paramId="number" /> 39 <ExposedMember key="clockSel" paramId="clockSel" /> 40 <ExposedMember key="frequency" paramId="frequency" /> 41 <ExposedMember key="divider" paramId="divider" /> 42 <ExposedMember key="accuracy" paramId="accuracy" /> 43 <ExposedMember key="error" paramId="srcNotUsed" /> 44 <ExposedMember key="hal_block" paramId="hal_block" /> 45 <ExposedMember key="sourceClockRsc" paramId="sourceClockRsc" /> 46 </ExposedMembers> 47 <Parameters> 48 <!-- PDL documentation --> 49 <ParamDoc id="pdlDoc" name="Configuration Help" group="Overview" default="file:///`${cy_libs_path()}`/docs/pdl_api_reference_manual/html/group__group__sysclk__clk__peripheral.html" linkText="Open Peripherals Clock Dividers Documentation" visible="true" desc="Opens the Peripheral Driver Library Documentation" /> 50 51 <!-- Get the name of the source clock resource --> 52 <ParamString id="sourceClockRscV1" name="Source Clock Resource V1" group="Internal" default="`${getInstNumber("group") eq 0 ? "srss[0].clock[0].hfclk[0]" : "srss[0].clock[0].hfclk[1]"}`" visible="false" editable="false" desc="" /> 53 <ParamString id="sourceClockRscV2" name="Source Clock Resource V2" group="Internal" default="`${hasBlock("peri[1]") ? (getInstNumber("peri") eq 0 ? 54 (getInstNumber("group") eq 0 ? "srss[0].clock[0].hfclk[0]" : 55 getInstNumber("group") eq 1 ? "srss[0].clock[0].hfclk[10]" : 56 getInstNumber("group") eq 2 ? "srss[0].clock[0].hfclk[9]" : 57 getInstNumber("group") eq 3 ? "srss[0].clock[0].hfclk[5]" : 58 getInstNumber("group") eq 4 ? "srss[0].clock[0].hfclk[6]" : 59 getInstNumber("group") eq 5 ? "srss[0].clock[0].hfclk[10]" : 60 getInstNumber("group") eq 6 ? "srss[0].clock[0].hfclk[13]" : 61 getInstNumber("group") eq 7 ? "srss[0].clock[0].hfclk[1]" : 62 getInstNumber("group") eq 8 ? "srss[0].clock[0].hfclk[11]" : 63 getInstNumber("group") eq 9 ? "srss[0].clock[0].hfclk[13]" : 64 "srss[0].clock[0].hfclk[1]") : 65 (getInstNumber("group") eq 0 ? "srss[0].clock[0].hfclk[1]" : 66 getInstNumber("group") eq 1 ? "srss[0].clock[0].hfclk[7]" : 67 getInstNumber("group") eq 2 ? "srss[0].clock[0].hfclk[5]" : 68 getInstNumber("group") eq 3 ? "srss[0].clock[0].hfclk[6]" : 69 getInstNumber("group") eq 4 ? "srss[0].clock[0].hfclk[0]" : 70 getInstNumber("group") eq 5 ? "srss[0].clock[0].hfclk[2]" : 71 "srss[0].clock[0].hfclk[0]")) : 72 (getInstNumber("group") eq 0 ? "srss[0].clock[0].hfclk[0]" : 73 getInstNumber("group") eq 1 ? "srss[0].clock[0].hfclk[1]" : 74 getInstNumber("group") eq 2 ? "srss[0].clock[0].hfclk[0]" : 75 getInstNumber("group") eq 3 ? "srss[0].clock[0].hfclk[1]" : 76 getInstNumber("group") eq 4 ? "srss[0].clock[0].hfclk[2]" : 77 getInstNumber("group") eq 5 ? "srss[0].clock[0].hfclk[3]" : 78 getInstNumber("group") eq 6 ? "srss[0].clock[0].hfclk[4]" : 79 "srss[0].clock[0].hfclk[0]")}`" visible="false" editable="false" desc="" /> 80 <ParamString id="sourceClockRscV3" name="Source Clock Resource V3" group="Internal" default="`${getInstNumber("group") eq 0 ? "srss[0].clock[0].periclk[0]" : "srss[0].clock[0].hfclk[2]"}`" visible="false" editable="false" desc="" /> 81 <ParamString id="sourceClockRsc" name="Source Clock Resource" group="Internal" default="`${"mxsperi" eq getIpBlockName() ? (getVersion() eq 1 ? sourceClockRscV1 : sourceClockRscV2) : sourceClockRscV3 }`" visible="false" editable="false" desc="" /> 82 83 <!-- Set an error if the source clock is not enabled or contains an error --> 84 <ParamBool id="srcNotUsed" name="Clock Source Enabled" group="Internal" default="`${!isBlockUsed(sourceClockRsc)}`" visible="false" editable="false" desc="" /> 85 <ParamBool id="error" name="Clock Error" group="Internal" default="`${srcNotUsed || getExposedMember(sourceClockRsc, "error")}`" visible="false" editable="false" desc="" /> 86 87 <!-- Source clock frequency --> 88 <ParamRange id="sourceFreq" name="sourceFrequency" group="Internal" default="`${!error ? getExposedMember(sourceClockRsc, "frequency") : 0}`" min="0" max="400000000" resolution="1" visible="false" editable="false" desc="" /> 89 <ParamString id="accuracy" name="accuracy" group="General" default="`${!error ? getExposedMember(sourceClockRsc, "accuracy") : 0}`" visible="false" editable="false" desc="" /> 90 <ParamString id="sourceFreqInfoV1" name="Source Clock V1" group="Internal" default="`${getInstNumber("group") eq 0 ? "CLK_HF0" : "CLK_HF1"}` (`${formatFrequency(sourceFreq,accuracy)}`)" visible="false" editable="false" desc="Source clock frequency" /> 91 <ParamString id="sourceFreqInfoV2" name="Source Clock V2" group="Internal" default="`${hasBlock("peri[1]") ? (getInstNumber("peri") eq 0 ? 92 (getInstNumber("group") eq 0 ? "CLK_HF0" : 93 getInstNumber("group") eq 1 ? "CLK_HF10" : 94 getInstNumber("group") eq 2 ? "CLK_HF9" : 95 getInstNumber("group") eq 3 ? "CLK_HF5" : 96 getInstNumber("group") eq 4 ? "CLK_HF6" : 97 getInstNumber("group") eq 5 ? "CLK_HF10" : 98 getInstNumber("group") eq 6 ? "CLK_HF13" : 99 getInstNumber("group") eq 7 ? "CLK_HF1" : 100 getInstNumber("group") eq 8 ? "CLK_HF11" : 101 getInstNumber("group") eq 9 ? "CLK_HF13" : 102 "CLK_HF1") : 103 (getInstNumber("group") eq 0 ? "CLK_HF1" : 104 getInstNumber("group") eq 1 ? "CLK_HF7" : 105 getInstNumber("group") eq 2 ? "CLK_HF5" : 106 getInstNumber("group") eq 3 ? "CLK_HF6" : 107 getInstNumber("group") eq 4 ? "CLK_HF0" : 108 getInstNumber("group") eq 5 ? "CLK_HF2" : 109 "CLK_HF0")) : 110 (getInstNumber("group") eq 0 ? "CLK_HF0" : 111 getInstNumber("group") eq 1 ? "CLK_HF1" : 112 getInstNumber("group") eq 2 ? "CLK_HF0" : 113 getInstNumber("group") eq 3 ? "CLK_HF1" : 114 getInstNumber("group") eq 4 ? "CLK_HF2" : 115 getInstNumber("group") eq 5 ? "CLK_HF3" : 116 getInstNumber("group") eq 6 ? "CLK_HF4" : 117 "CLK_HF0")}` (`${formatFrequency(sourceFreq,accuracy)}`)" visible="false" editable="false" desc="Source clock frequency" /> 118 <ParamString id="sourceFreqInfoV3" name="Source Clock V3" group="Internal" default="`${getInstNumber("group") eq 0 ? "CLK_PERI" : "CLK_HF2"}` (`${formatFrequency(sourceFreq,accuracy)}`)" visible="false" editable="false" desc="Source clock frequency" /> 119 120 <ParamString id="sourceFreqInfo" name="Source Clock" group="General" default="`${"mxsperi" eq getIpBlockName() ? (getVersion() eq 1 ? sourceFreqInfoV1 : sourceFreqInfoV2) : sourceFreqInfoV3}`" visible="true" editable="false" desc="Source clock frequency" /> 121 <!-- Get the peripheral clock divider type, width and number --> 122 <ParamChoice id="type" name="Divider type" group="Internal" default="`${getBlockType(2)}`" visible="false" editable="false" desc=""> 123 <Entry name="div_8" value="div_8" visible="true" /> 124 <Entry name="div_16" value="div_16" visible="true" /> 125 <Entry name="div_16_5" value="div_16_5" visible="true" /> 126 <Entry name="div_24_5" value="div_24_5" visible="true" /> 127 </ParamChoice> 128 <ParamRange id="width" name="Divider width" group="Internal" default="`${type eq div_8 ? 8 : type eq div_24_5 ? 24 : 16}`" min="8" max="24" resolution="1" visible="false" editable="false" desc="" /> 129 <ParamRange id="number" name="Divider number" group="Internal" default="`${getInstNumber(getBlockType(2))}`" min="0" max="63" resolution="1" visible="false" editable="false" desc="" /> 130 131 <!-- Determine if the divider is fractional --> 132 <ParamBool id="isFractional" name="isFractional" group="Internal" default="`${(type eq div_16_5) || (type eq div_24_5)}`" visible="false" editable="false" desc="" /> 133 134 <!-- Dividers --> 135 <ParamRange id="intDivider" name="`${isFractional ? "Integer Divider" : "Divider"}`" group="General" default="1" min="1" max="`${pow(2, width)}`" resolution="1" visible="true" editable="true" desc="" /> 136 <ParamRange id="fracDivider" name="Fractional Divider" group="General" default="0" min="0" max="31" resolution="1" visible="`${isFractional}`" editable="true" desc="" /> 137 <ParamRange id="divider" name="Divider" group="Internal" default="`${isFractional ? intDivider + fracDivider / 32.0 : intDivider}`" min="1" max="`${pow(2, width) + 31.0/32.0}`" resolution="0.00001" visible="false" editable="false" desc="" /> 138 139 <!-- Output frequency --> 140 <ParamRange id="frequency" name="Frequency" group="General" default="`${cast(int64, ((sourceFreq / cast(float, divider) + 0.0005) * 1000)) / 1000.0}`" min="0" max="400000000" resolution="0.001" visible="false" editable="false" desc="The resulting output clock frequency" /> 141 142 <ParamString id="frequencyInfo" name="Frequency" group="General" default="`${formatFrequency(frequency,accuracy)}`" visible="true" editable="false" desc="The resulting output clock frequency" /> 143 144 <ParamBool id="startOnReset" name="Start on Reset" group="General" default="true" visible="true" editable="true" desc="If checked, this option will cause the clock to be enabled by the clock initialization routine" /> 145 146 <ParamString id="typeApiConst" name="typeApiConst" group="Internal" default="`${type eq div_8 ? "CY_SYSCLK_DIV_8_BIT" : 147 type eq div_16 ? "CY_SYSCLK_DIV_16_BIT" : 148 type eq div_16_5 ? "CY_SYSCLK_DIV_16_5_BIT" : 149 "CY_SYSCLK_DIV_24_5_BIT"}`" visible="false" editable="false" desc="API constants for the divider type" /> 150 151 <ParamString id="typeApiConstHal" name="typeApiConst" group="Internal" default="`${type eq div_8 ? "8BIT" : 152 type eq div_16 ? "16BIT" : 153 type eq div_16_5 ? "16_5BIT" : 154 "24_5BIT"}`" visible="false" editable="false" desc="API constants for the divider type" /> 155 156 <ParamString id="periHwCAT1D" name="Peri HW macro for CAT1D" group="General" default="CYHAL_CLOCK_BLOCK`${getInstNumber("peri")}`_PERIPHERAL`${getInstNumber("group")}`_`${typeApiConstHal}`" visible="false" editable="false" desc="Peri HW macro for CAT1D" /> 157 158 <ParamString id="periHwCAT1ABC" name="Peri HW macro for CAT1A,B,C" group="General" default="CYHAL_CLOCK_BLOCK_PERIPHERAL`${getInstNumber("group")}`_`${typeApiConstHal}`" visible="false" editable="false" desc="Peri HW macro for CAT1A,B,C" /> 159 160 <ParamString id="clockSel" name="clockSel" group="Internal" default="`${typeApiConst}`, `${number}`U" visible="false" editable="false" desc="Divider type and number" /> 161 162 <ParamSignal port="clk[0]" name="Peripherals" group="General" visible="true" desc="This signal can be used to drive peripherals" canBeEmpty="true" /> 163 164 <ParamString id="hal_block" name="hal_block" group="Internal" default="`${hasBlock("peri[1]") ? periHwCAT1D : periHwCAT1ABC}`" visible="false" editable="false" desc="" /> 165 </Parameters> 166 167 <DRCs> 168 <DRC type="ERROR" text="CLK_HF1 clock is not enabled" condition="`${!isBlockUsed("srss[0].clock[0].hfclk[1]") && (getInstNumber("peri") eq 0) && (getInstNumber("group") > 0) && ("mxsperi" eq getIpBlockName()) && (getVersion() eq 1)}`" > 169 <FixIt action="ENABLE_BLOCK" target="`${"srss[0].clock[0].hfclk[1]"}`" value="" valid="true" /> 170 </DRC> 171 172 <DRC type="ERROR" text="CLK_HF1 clock is not enabled" condition="`${!isBlockUsed("srss[0].clock[0].hfclk[1]") && hasBlock("peri[1]") && (getInstNumber("peri") eq 0) && (getInstNumber("group") eq 7) && ("mxsperi" eq getIpBlockName()) && (getVersion() eq 2)}`" > 173 <FixIt action="ENABLE_BLOCK" target="`${"srss[0].clock[0].hfclk[1]"}`" value="" valid="true" /> 174 </DRC> 175 <DRC type="ERROR" text="CLK_HF1 clock is not enabled" condition="`${!isBlockUsed("srss[0].clock[0].hfclk[1]") && (getInstNumber("peri") eq 1) && (getInstNumber("group") eq 0) && ("mxsperi" eq getIpBlockName()) && (getVersion() eq 2)}`" > 176 <FixIt action="ENABLE_BLOCK" target="`${"srss[0].clock[0].hfclk[1]"}`" value="" valid="true" /> 177 </DRC> 178 179 <DRC type="ERROR" text="CLK_HF1 clock is not enabled" condition="`${!isBlockUsed("srss[0].clock[0].hfclk[1]") && !hasBlock("peri[1]") && (getInstNumber("peri") eq 0) && (getInstNumber("group") eq 1) && ("mxsperi" eq getIpBlockName()) && (getVersion() eq 2)}`" > 180 <FixIt action="ENABLE_BLOCK" target="`${"srss[0].clock[0].hfclk[1]"}`" value="" valid="true" /> 181 </DRC> 182 183 <DRC type="ERROR" text="CLK_HF1 clock is not enabled" condition="`${!isBlockUsed("srss[0].clock[0].hfclk[1]") && !hasBlock("peri[1]") && (getInstNumber("peri") eq 0) && (getInstNumber("group") eq 3) && ("mxsperi" eq getIpBlockName()) && (getVersion() eq 2)}`" > 184 <FixIt action="ENABLE_BLOCK" target="`${"srss[0].clock[0].hfclk[1]"}`" value="" valid="true" /> 185 </DRC> 186 187 <DRC type="ERROR" text="CLK_HF2 clock is not enabled" condition="`${!isBlockUsed("srss[0].clock[0].hfclk[2]") && !hasBlock("peri[1]") && (getInstNumber("peri") eq 0) && (getInstNumber("group") eq 4) && ("mxsperi" eq getIpBlockName()) && (getVersion() eq 2)}`" > 188 <FixIt action="ENABLE_BLOCK" target="`${"srss[0].clock[0].hfclk[2]"}`" value="" valid="true" /> 189 </DRC> 190 191 <DRC type="ERROR" text="CLK_HF3 clock is not enabled" condition="`${!isBlockUsed("srss[0].clock[0].hfclk[3]") && !hasBlock("peri[1]") && (getInstNumber("peri") eq 0) && (getInstNumber("group") eq 5) && ("mxsperi" eq getIpBlockName()) && (getVersion() eq 2)}`" > 192 <FixIt action="ENABLE_BLOCK" target="`${"srss[0].clock[0].hfclk[3]"}`" value="" valid="true" /> 193 </DRC> 194 195 <DRC type="ERROR" text="CLK_HF4 clock is not enabled" condition="`${!isBlockUsed("srss[0].clock[0].hfclk[4]") && !hasBlock("peri[1]") && (getInstNumber("peri") eq 0) && (getInstNumber("group") eq 6) && ("mxsperi" eq getIpBlockName()) && (getVersion() eq 2)}`" > 196 <FixIt action="ENABLE_BLOCK" target="`${"srss[0].clock[0].hfclk[4]"}`" value="" valid="true" /> 197 </DRC> 198 199 <DRC type="ERROR" text="CLK_HF5 clock is not enabled" condition="`${!isBlockUsed("srss[0].clock[0].hfclk[5]") && hasBlock("peri[1]") && (getInstNumber("peri") eq 0) && (getInstNumber("group") eq 3) && ("mxsperi" eq getIpBlockName()) && (getVersion() eq 2)}`" > 200 <FixIt action="ENABLE_BLOCK" target="`${"srss[0].clock[0].hfclk[5]"}`" value="" valid="true" /> 201 </DRC> 202 <DRC type="ERROR" text="CLK_HF5 clock is not enabled" condition="`${!isBlockUsed("srss[0].clock[0].hfclk[5]") && (getInstNumber("peri") eq 1) && (getInstNumber("group") eq 2) && ("mxsperi" eq getIpBlockName()) && (getVersion() eq 2)}`" > 203 <FixIt action="ENABLE_BLOCK" target="`${"srss[0].clock[0].hfclk[5]"}`" value="" valid="true" /> 204 </DRC> 205 206 <DRC type="ERROR" text="CLK_HF6 clock is not enabled" condition="`${!isBlockUsed("srss[0].clock[0].hfclk[6]") && hasBlock("peri[1]") && (getInstNumber("peri") eq 0) && (getInstNumber("group") eq 4) && ("mxsperi" eq getIpBlockName()) && (getVersion() eq 2)}`" > 207 <FixIt action="ENABLE_BLOCK" target="`${"srss[0].clock[0].hfclk[6]"}`" value="" valid="true" /> 208 </DRC> 209 <DRC type="ERROR" text="CLK_HF6 clock is not enabled" condition="`${!isBlockUsed("srss[0].clock[0].hfclk[6]") && (getInstNumber("peri") eq 1) && (getInstNumber("group") eq 3) && ("mxsperi" eq getIpBlockName()) && (getVersion() eq 2)}`" > 210 <FixIt action="ENABLE_BLOCK" target="`${"srss[0].clock[0].hfclk[6]"}`" value="" valid="true" /> 211 </DRC> 212 213 <DRC type="ERROR" text="CLK_HF7 clock is not enabled" condition="`${!isBlockUsed("srss[0].clock[0].hfclk[7]") && (getInstNumber("peri") eq 1) && (getInstNumber("group") eq 1) && ("mxsperi" eq getIpBlockName()) && (getVersion() eq 2)}`" > 214 <FixIt action="ENABLE_BLOCK" target="`${"srss[0].clock[0].hfclk[7]"}`" value="" valid="true" /> 215 </DRC> 216 217 <DRC type="ERROR" text="CLK_HF9 clock is not enabled" condition="`${!isBlockUsed("srss[0].clock[0].hfclk[9]") && (getInstNumber("peri") eq 0) && (getInstNumber("group") eq 2) && ("mxsperi" eq getIpBlockName()) && (getVersion() eq 2)}`" > 218 <FixIt action="ENABLE_BLOCK" target="`${"srss[0].clock[0].hfclk[9]"}`" value="" valid="true" /> 219 </DRC> 220 221 <DRC type="ERROR" text="CLK_HF10 clock is not enabled" condition="`${!isBlockUsed("srss[0].clock[0].hfclk[10]") && hasBlock("peri[1]") && (getInstNumber("peri") eq 0) && (getInstNumber("group") eq 1) && ("mxsperi" eq getIpBlockName()) && (getVersion() eq 2)}`" > 222 <FixIt action="ENABLE_BLOCK" target="`${"srss[0].clock[0].hfclk[10]"}`" value="" valid="true" /> 223 </DRC> 224 <DRC type="ERROR" text="CLK_HF10 clock is not enabled" condition="`${!isBlockUsed("srss[0].clock[0].hfclk[10]") && hasBlock("peri[1]") && (getInstNumber("peri") eq 0) && (getInstNumber("group") eq 5) && ("mxsperi" eq getIpBlockName()) && (getVersion() eq 2)}`" > 225 <FixIt action="ENABLE_BLOCK" target="`${"srss[0].clock[0].hfclk[10]"}`" value="" valid="true" /> 226 </DRC> 227 228 <DRC type="ERROR" text="CLK_HF11 clock is not enabled" condition="`${!isBlockUsed("srss[0].clock[0].hfclk[11]") && (getInstNumber("peri") eq 0) && (getInstNumber("group") eq 8) && ("mxsperi" eq getIpBlockName()) && (getVersion() eq 2)}`" > 229 <FixIt action="ENABLE_BLOCK" target="`${"srss[0].clock[0].hfclk[11]"}`" value="" valid="true" /> 230 </DRC> 231 232 <DRC type="ERROR" text="CLK_HF13 clock is not enabled" condition="`${hasBlock("srss[0].clock[0].hfclk[13]") && !isBlockUsed("srss[0].clock[0].hfclk[13]") && (getInstNumber("peri") eq 0) && ((getInstNumber("group") eq 6) || (getInstNumber("group") eq 9)) && ("mxsperi" eq getIpBlockName()) && (getVersion() eq 2)}`" > 233 <FixIt action="ENABLE_BLOCK" target="`${"srss[0].clock[0].hfclk[13]"}`" value="" valid="true" /> 234 </DRC> 235 236 <DRC type="ERROR" text="CLK_HF2 clock is not enabled" condition="`${!isBlockUsed("srss[0].clock[0].hfclk[2]") && (getInstNumber("group") > 0) && ("mxperi_ver3" eq getIpBlockName())}`" > 237 <FixIt action="ENABLE_BLOCK" target="`${"srss[0].clock[0].hfclk[2]"}`" value="" valid="true" /> 238 </DRC> 239 </DRCs> 240 241 <ConfigFirmware> 242 <ConfigInclude value="cy_sysclk.h" include="true" /> 243 <ConfigInclude value="cyhal_hwmgr.h" include="true" guard="defined (CY_USING_HAL)" /> 244 245 <ConfigDefine name="`${INST_NAME}`_HW" value="`${hasBlock("peri[1]") ? periHwCAT1D : periHwCAT1ABC}`" public="true" include="true" guard="defined (CY_USING_HAL) || defined (CY_USING_HAL_LITE)"/> 246 <ConfigDefine name="`${INST_NAME}`_HW" value="`${typeApiConst}`" public="true" include="true" guard="!defined (CY_USING_HAL) && !defined (CY_USING_HAL_LITE)"/> 247 <ConfigDefine name="`${INST_NAME}`_NUM" value="`${number}`U" public="true" include="true" /> 248 <ConfigDefine name="`${toUpper(INST_NAME)}`_GRP_NUM" value="((`${getInstNumber("group")}`U << PERI_PCLK_GR_NUM_Pos) | (`${getInstNumber("peri")}`U << PERI_PCLK_INST_NUM_Pos))" public="true" include="true" /> 249 <ConfigStruct name="`${INST_NAME}`_obj" type="cyhal_resource_inst_t" const="true" public="true" include="true" guard="defined (CY_USING_HAL)"> 250 <Member name="type" value="CYHAL_RSC_CLOCK" /> 251 <Member name="block_num" value="`${INST_NAME}`_HW" /> 252 <Member name="channel_num" value="`${INST_NAME}`_NUM" /> 253 </ConfigStruct> 254 <ConfigInstruction value="Cy_SysClk_PeriPclkDisableDivider((en_clk_dst_t)`${toUpper(INST_NAME)}`_GRP_NUM, `${clockSel}`);" include="true" /> 255 <ConfigInstruction value="Cy_SysClk_PeriPclkSetDivider((en_clk_dst_t)`${toUpper(INST_NAME)}`_GRP_NUM, `${clockSel}`, `${intDivider-1}`U);" include="`${!isFractional}`" /> 256 <ConfigInstruction value="Cy_SysClk_PeriPclkSetFracDivider((en_clk_dst_t)`${toUpper(INST_NAME)}`_GRP_NUM, `${clockSel}`, `${intDivider-1}`U, `${fracDivider}`U);" include="`${isFractional}`" /> 257 <ConfigInstruction value="Cy_SysClk_PeriPclkEnableDivider((en_clk_dst_t)`${toUpper(INST_NAME)}`_GRP_NUM, `${clockSel}`);" include="`${startOnReset}`" /> 258 <ConfigInstruction value="cyhal_hwmgr_reserve(&`${INST_NAME}`_obj);" include="true" guard="defined (CY_USING_HAL)" /> 259 </ConfigFirmware> 260</Personality> 261