1<?xml version="1.0" encoding="utf-8"?> 2 3 4<!--**************************************************************************** 5* \file sd_host.cypersonality 6* \version 1.0 7* 8* \brief 9* SD Host Controller personality description file. It supports CAT1A, CAT1B, 10* CAT1C and CAT1D devices. 11* 12******************************************************************************** 13* \copyright 14* Copyright 2018-2022 Cypress Semiconductor Corporation 15* SPDX-License-Identifier: Apache-2.0 16* 17* Licensed under the Apache License, Version 2.0 (the "License"); 18* you may not use this file except in compliance with the License. 19* You may obtain a copy of the License at 20* 21* http://www.apache.org/licenses/LICENSE-2.0 22* 23* Unless required by applicable law or agreed to in writing, software 24* distributed under the License is distributed on an "AS IS" BASIS, 25* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 26* See the License for the specific language governing permissions and 27* limitations under the License. 28*****************************************************************************--> 29 30<Personality id="mxs40sdhost" name="SD Host Controller" version="1.0" xmlns="http://cypress.com/xsd/cyhwpersonality_v7"> 31 <Dependencies> 32 <IpBlock name="mxsdhc" /> 33 <Resource name="sdhc" /> 34 </Dependencies> 35 <ExposedMembers /> 36 <Parameters> 37 <!-- PDL documentation --> 38 <ParamDoc id="pdlDoc" name="Configuration Help" group="Overview" default="file:///`${cy_libs_path()}`/docs/pdl_api_reference_manual/html/group__group__sd__host.html" linkText="Open SD Host Documentation" visible="true" desc="Opens the Peripheral Driver Library Documentation" /> 39 40 <!-- Timing --> 41 <ParamSignal port="clk_hf[0]" name="Clock" group="Timing" visible="true" desc="Input clock source of the SDHC block." canBeEmpty="false" /> 42 <ParamString id="sourceClock" name="sourceClock" group="General" default="`${getBlockFromSignal("clk_hf[0]")}`" visible="false" editable="false" desc="" /> 43 <ParamRange id="sourceFreq" name="sourceFreq" group="General" default="`${isBlockUsed(sourceClock) ? getExposedMember(sourceClock, "frequency") : 0}`" min="0" max="400000000" resolution="1" visible="false" editable="false" desc="" /> 44 <ParamRange id="sdhcClk" name="Input Clock Frequency (kHz)" group="Timing" default="`${sourceFreq / 1000}`" min="0" max="400000000" resolution="0.001" visible="true" editable="false" desc="Shows the actual input clock frequency of the SDHC block." /> 45 46 <!-- General --> 47 <ParamChoice id="cardType" name="Card Type" group="General" default="emmc" visible="true" editable="true" desc="Defines if the card is eMMC." > 48 <Entry name="eMMC" value="emmc" visible="true" /> 49 <Entry name="SD/SDIO" value="nonEmmc" visible="true" /> 50 </ParamChoice> 51 <ParamChoice id="dmaType" name="DMA Type" group="General" default="CY_SD_HOST_DMA_SDMA" visible="true" editable="true" desc="Selects the DMA type to be used." > 52 <Entry name="SDMA" value="CY_SD_HOST_DMA_SDMA" visible="true" /> 53 <Entry name="ADMA2" value="CY_SD_HOST_DMA_ADMA2" visible="true" /> 54 <Entry name="ADMA2-ADMA3" value="CY_SD_HOST_DMA_ADMA2_ADMA3" visible="true" /> 55 </ParamChoice> 56 <ParamRange id="InstNumber" name="Instance Number" group="General" default="`${getInstNumber("sdhc")}`" min="0" max="1" resolution="1" visible="false" editable="false" desc="This parameter specifies Instance Number." /> 57 <ParamBool id="enableLedControl" name="LED Control" group="General" default="false" visible="`${(InstNumber eq 1)}`" editable="true" desc="If enabled the SD clock controls one IO which is used to indicate when card is being accessed." /> 58 <ParamChoice id="busWidth" name="Bus Width" group="General" default="CY_SD_HOST_BUS_WIDTH_4_BIT" visible="true" editable="true" desc="The desired bus width." > 59 <Entry name="1-bit" value="CY_SD_HOST_BUS_WIDTH_1_BIT" visible="true" /> 60 <Entry name="4-bit" value="CY_SD_HOST_BUS_WIDTH_4_BIT" visible="true" /> 61 <Entry name="8-bit" value="CY_SD_HOST_BUS_WIDTH_8_BIT" visible="`${(cardType eq emmc) && (InstNumber eq 1)}`" /> 62 </ParamChoice> 63 <ParamBool id="lowVoltageSignaling" name="Enable Low Voltage Signaling" group="General" default="false" visible="`${hasVisibleOption("io_volt_sel[0]")}`" editable="true" desc="If enabled then the host supports the 1.8V signaling." /> 64 65 <!--Inputs/Outputs--> 66 <ParamSignal port="clk_card[0]" name="CLK" group="Inputs" visible="true" desc="The card clock pin." canBeEmpty="true" > 67 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 68 <Parameter id="DriveModes" severity="DEFAULT" reason=""> 69 <Fixed value="CY_GPIO_DM_STRONG" /> 70 </Parameter> 71 </Constraint> 72 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 73 <Parameter id="DriveModes" severity="INFO" reason="The pin Drive Mode parameter does not match expected."> 74 <Fixed value="CY_GPIO_DM_STRONG" /> 75 </Parameter> 76 </Constraint> 77 <Constraint type="ACCEPT" targetLocation=".*" valid="true" /> 78 </ParamSignal> 79 <ParamSignal port="card_cmd[0]" name="CMD" group="Inputs" visible="true" desc="The command/response pin." canBeEmpty="true" > 80 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 81 <Parameter id="DriveModes" severity="DEFAULT" reason=""> 82 <Fixed value="CY_GPIO_DM_STRONG" /> 83 </Parameter> 84 </Constraint> 85 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 86 <Parameter id="DriveModes" severity="INFO" reason="The pin Drive Mode parameter does not match expected."> 87 <Fixed value="CY_GPIO_DM_STRONG" /> 88 </Parameter> 89 </Constraint> 90 <Constraint type="ACCEPT" targetLocation=".*" valid="true" /> 91 </ParamSignal> 92 <ParamSignal port="card_dat_3to0[0]" name="DAT0" group="Inputs" visible="true" desc="The Data line [Bit 0] pin." canBeEmpty="true" > 93 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 94 <Parameter id="DriveModes" severity="DEFAULT" reason=""> 95 <Fixed value="CY_GPIO_DM_STRONG" /> 96 </Parameter> 97 </Constraint> 98 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 99 <Parameter id="DriveModes" severity="INFO" reason="The pin Drive Mode parameter does not match expected."> 100 <Fixed value="CY_GPIO_DM_STRONG" /> 101 </Parameter> 102 </Constraint> 103 <Constraint type="ACCEPT" targetLocation=".*" valid="true" /> 104 </ParamSignal> 105 <ParamSignal port="card_dat_3to0[1]" name="DAT1" group="Inputs" visible="`${(busWidth ne CY_SD_HOST_BUS_WIDTH_1_BIT)}`" desc="The Data line [Bit 1] pin." canBeEmpty="true" > 106 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 107 <Parameter id="DriveModes" severity="DEFAULT" reason=""> 108 <Fixed value="CY_GPIO_DM_STRONG" /> 109 </Parameter> 110 </Constraint> 111 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 112 <Parameter id="DriveModes" severity="INFO" reason="The pin Drive Mode parameter does not match expected."> 113 <Fixed value="CY_GPIO_DM_STRONG" /> 114 </Parameter> 115 </Constraint> 116 <Constraint type="ACCEPT" targetLocation=".*" valid="true" /> 117 </ParamSignal> 118 <ParamSignal port="card_dat_3to0[2]" name="DAT2" group="Inputs" visible="`${(busWidth ne CY_SD_HOST_BUS_WIDTH_1_BIT)}`" desc="The Data line [Bit 2] pin." canBeEmpty="true" > 119 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 120 <Parameter id="DriveModes" severity="DEFAULT" reason=""> 121 <Fixed value="CY_GPIO_DM_STRONG" /> 122 </Parameter> 123 </Constraint> 124 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 125 <Parameter id="DriveModes" severity="INFO" reason="The pin Drive Mode parameter does not match expected."> 126 <Fixed value="CY_GPIO_DM_STRONG" /> 127 </Parameter> 128 </Constraint> 129 <Constraint type="ACCEPT" targetLocation=".*" valid="true" /> 130 </ParamSignal> 131 <ParamSignal port="card_dat_3to0[3]" name="DAT3" group="Inputs" visible="`${(busWidth ne CY_SD_HOST_BUS_WIDTH_1_BIT)}`" desc="The Data line [Bit 3] pin." canBeEmpty="true" > 132 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 133 <Parameter id="DriveModes" severity="DEFAULT" reason=""> 134 <Fixed value="CY_GPIO_DM_STRONG" /> 135 </Parameter> 136 </Constraint> 137 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 138 <Parameter id="DriveModes" severity="INFO" reason="The pin Drive Mode parameter does not match expected."> 139 <Fixed value="CY_GPIO_DM_STRONG" /> 140 </Parameter> 141 </Constraint> 142 <Constraint type="ACCEPT" targetLocation=".*" valid="true" /> 143 </ParamSignal> 144 <ParamSignal port="card_dat_7to4[0]" name="DAT4" group="Inputs" visible="`${(cardType eq emmc) && (InstNumber eq 1) && (busWidth eq CY_SD_HOST_BUS_WIDTH_8_BIT)}`" desc="The Data line [Bit 4] pin." canBeEmpty="true" > 145 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 146 <Parameter id="DriveModes" severity="DEFAULT" reason=""> 147 <Fixed value="CY_GPIO_DM_STRONG" /> 148 </Parameter> 149 </Constraint> 150 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 151 <Parameter id="DriveModes" severity="INFO" reason="The pin Drive Mode parameter does not match expected."> 152 <Fixed value="CY_GPIO_DM_STRONG" /> 153 </Parameter> 154 </Constraint> 155 <Constraint type="ACCEPT" targetLocation=".*" valid="true" /> 156 </ParamSignal> 157 <ParamSignal port="card_dat_7to4[1]" name="DAT5" group="Inputs" visible="`${(cardType eq emmc) && (InstNumber eq 1) && (busWidth eq CY_SD_HOST_BUS_WIDTH_8_BIT)}`" desc="The Data line [Bit 5] pin." canBeEmpty="true" > 158 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 159 <Parameter id="DriveModes" severity="DEFAULT" reason=""> 160 <Fixed value="CY_GPIO_DM_STRONG" /> 161 </Parameter> 162 </Constraint> 163 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 164 <Parameter id="DriveModes" severity="INFO" reason="The pin Drive Mode parameter does not match expected."> 165 <Fixed value="CY_GPIO_DM_STRONG" /> 166 </Parameter> 167 </Constraint> 168 <Constraint type="ACCEPT" targetLocation=".*" valid="true" /> 169 </ParamSignal> 170 <ParamSignal port="card_dat_7to4[2]" name="DAT6" group="Inputs" visible="`${(cardType eq emmc) && (InstNumber eq 1) && (busWidth eq CY_SD_HOST_BUS_WIDTH_8_BIT)}`" desc="The Data line [Bit 6] pin." canBeEmpty="true" > 171 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 172 <Parameter id="DriveModes" severity="DEFAULT" reason=""> 173 <Fixed value="CY_GPIO_DM_STRONG" /> 174 </Parameter> 175 </Constraint> 176 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 177 <Parameter id="DriveModes" severity="INFO" reason="The pin Drive Mode parameter does not match expected."> 178 <Fixed value="CY_GPIO_DM_STRONG" /> 179 </Parameter> 180 </Constraint> 181 <Constraint type="ACCEPT" targetLocation=".*" valid="true" /> 182 </ParamSignal> 183 <ParamSignal port="card_dat_7to4[3]" name="DAT7" group="Inputs" visible="`${(cardType eq emmc) && (InstNumber eq 1) && (busWidth eq CY_SD_HOST_BUS_WIDTH_8_BIT)}`" desc="The Data line [Bit 7] pin." canBeEmpty="true" > 184 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 185 <Parameter id="DriveModes" severity="DEFAULT" reason=""> 186 <Fixed value="CY_GPIO_DM_STRONG" /> 187 </Parameter> 188 </Constraint> 189 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 190 <Parameter id="DriveModes" severity="INFO" reason="The pin Drive Mode parameter does not match expected."> 191 <Fixed value="CY_GPIO_DM_STRONG" /> 192 </Parameter> 193 </Constraint> 194 <Constraint type="ACCEPT" targetLocation=".*" valid="true" /> 195 </ParamSignal> 196 197 <ParamSignal port="card_detect_n[0]" name="Card Detect" group="Inputs" visible="`${hasVisibleOption("card_detect_n[0]")}`" desc="The card detect pin. Note: You can use any GPIO custom pin for Card Detect. Add the SD Host driver Cy_SD_Host_IsCardConnected() function with the __WEAK type to your code. This function could read the value from any GPIO pin and return true when the card is connected. For more information see the Cy_SD_Host_IsCardConnected() function description." canBeEmpty="true" > 198 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 199 <Parameter id="DriveModes" severity="DEFAULT" reason=""> 200 <Fixed value="CY_GPIO_DM_HIGHZ" /> 201 </Parameter> 202 </Constraint> 203 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 204 <Parameter id="DriveModes" severity="INFO" reason="The pin Drive Mode parameter does not match expected."> 205 <Fixed value="CY_GPIO_DM_HIGHZ" /> 206 </Parameter> 207 </Constraint> 208 <Constraint type="ACCEPT" targetLocation=".*" valid="true" /> 209 </ParamSignal> 210 <ParamSignal port="card_emmc_reset_n[0]" name="eMMC Reset" group="Inputs" visible="`${(cardType eq emmc) && (InstNumber eq 1)}`" desc="The eMMC reset pin." canBeEmpty="true" > 211 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 212 <Parameter id="DriveModes" severity="DEFAULT" reason=""> 213 <Fixed value="CY_GPIO_DM_STRONG_IN_OFF" /> 214 </Parameter> 215 </Constraint> 216 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 217 <Parameter id="DriveModes" severity="INFO" reason="The pin Drive Mode parameter does not match expected."> 218 <Fixed value="CY_GPIO_DM_STRONG_IN_OFF" /> 219 </Parameter> 220 </Constraint> 221 <Constraint type="ACCEPT" targetLocation=".*" valid="true" /> 222 </ParamSignal> 223 <ParamSignal port="led_ctrl[0]" name="Led Control" group="Inputs" visible="`${enableLedControl}`" desc="The LED control pin." canBeEmpty="true" > 224 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 225 <Parameter id="DriveModes" severity="DEFAULT" reason=""> 226 <Fixed value="CY_GPIO_DM_STRONG_IN_OFF" /> 227 </Parameter> 228 </Constraint> 229 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 230 <Parameter id="DriveModes" severity="INFO" reason="The pin Drive Mode parameter does not match expected."> 231 <Fixed value="CY_GPIO_DM_STRONG_IN_OFF" /> 232 </Parameter> 233 </Constraint> 234 <Constraint type="ACCEPT" targetLocation=".*" valid="true" /> 235 </ParamSignal> 236 <ParamSignal port="card_mech_write_prot[0]" name="Card Mechanical Write Protect" group="Inputs" visible="`${hasVisibleOption("card_mech_write_prot[0]")}`" desc="The card mechanical write protect pin." canBeEmpty="true" > 237 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 238 <Parameter id="DriveModes" severity="DEFAULT" reason=""> 239 <Fixed value="CY_GPIO_DM_HIGHZ" /> 240 </Parameter> 241 </Constraint> 242 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 243 <Parameter id="DriveModes" severity="INFO" reason="The pin Drive Mode parameter does not match expected."> 244 <Fixed value="CY_GPIO_DM_HIGHZ" /> 245 </Parameter> 246 </Constraint> 247 <Constraint type="ACCEPT" targetLocation=".*" valid="true" /> 248 </ParamSignal> 249 <ParamSignal port="card_if_pwr_en[0]" name="Card if Power Enabled" group="Inputs" visible="`${hasVisibleOption("card_if_pwr_en[0]")}`" desc="The card if power enabled pin." canBeEmpty="true" > 250 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 251 <Parameter id="DriveModes" severity="DEFAULT" reason=""> 252 <Fixed value="CY_GPIO_DM_STRONG_IN_OFF" /> 253 </Parameter> 254 </Constraint> 255 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 256 <Parameter id="DriveModes" severity="INFO" reason="The pin Drive Mode parameter does not match expected."> 257 <Fixed value="CY_GPIO_DM_STRONG_IN_OFF" /> 258 </Parameter> 259 </Constraint> 260 <Constraint type="ACCEPT" targetLocation=".*" valid="true" /> 261 </ParamSignal> 262 <ParamSignal port="io_volt_sel[0]" name="IO Volt Select" group="Inputs" visible="`${hasVisibleOption("io_volt_sel[0]")}`" desc="The io volt select pin." canBeEmpty="true" > 263 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 264 <Parameter id="DriveModes" severity="DEFAULT" reason=""> 265 <Fixed value="CY_GPIO_DM_STRONG_IN_OFF" /> 266 </Parameter> 267 </Constraint> 268 <Constraint type="ACCEPT" targetLocation="ioss\[\d+\]\.port\[\d+\]\.pin.*" valid="true" > 269 <Parameter id="DriveModes" severity="INFO" reason="The pin Drive Mode parameter does not match expected."> 270 <Fixed value="CY_GPIO_DM_STRONG_IN_OFF" /> 271 </Parameter> 272 </Constraint> 273 <Constraint type="ACCEPT" targetLocation=".*" valid="true" /> 274 </ParamSignal> 275 276 <ParamBool id="inFlash" name="Store Config in Flash" group="Advanced" default="true" visible="true" editable="true" desc="Controls whether the configuration structure is stored in flash (const, true) or SRAM (not const, false)." /> 277 </Parameters> 278 279 <DRCs> 280 <!--Timing DRCs--> 281 <DRC type="INFO" text="To correctly set the bus speed, CLK_HF must be set to 100 MHz if the compatibility with the Capabilities register is required." condition="`${sourceFreq ne 100000000}`" /> 282 283 <!--busWidth DRCs--> 284 <DRC type="ERROR" text="Only eMMC supports 8 bits bus width." condition="`${(cardType ne emmc) && (busWidth eq CY_SD_HOST_BUS_WIDTH_8_BIT) ? true : false}`" /> 285 </DRCs> 286 287 <ConfigFirmware> 288 <ConfigInclude value="cy_sd_host.h" include="true" /> 289 <ConfigInclude value="cyhal_hwmgr.h" include="true" guard="defined (CY_USING_HAL)" /> 290 291 <ConfigDefine name="`${INST_NAME . "_HW"}`" value="SDHC`${InstNumber}`" public="true" include="true" /> 292 <ConfigDefine name="`${INST_NAME}`_IRQ" value="sdhc_`${InstNumber}`_interrupt_general_IRQn" public="true" include="true" /> 293 <ConfigVariable name="`${INST_NAME . "_cardCapacity"}`" type="cy_en_sd_host_card_capacity_t" const="false" value="CY_SD_HOST_SDSC" public="true" include="true" /> 294 <ConfigVariable name="`${INST_NAME . "_cardType"}`" type="cy_en_sd_host_card_type_t" const="false" value="`${(cardType eq emmc) ? "CY_SD_HOST_EMMC" : "CY_SD_HOST_NOT_EMMC"}`" public="true" include="true" /> 295 <ConfigVariable name="`${INST_NAME . "_rca"}`" type="uint32_t" const="false" value="0u" public="true" include="true" /> 296 297 <ConfigStruct name="`${INST_NAME . "_config"}`" type="cy_stc_sd_host_init_config_t" const="`${inFlash}`" public="true" include="true" > 298 <Member name="emmc" value="`${(cardType eq emmc) ? "true" : "false"}`" /> 299 <Member name="dmaType" value="`${dmaType}`" /> 300 <Member name="enableLedControl" value="`${enableLedControl ? "true" : "false"}`" /> 301 </ConfigStruct> 302 303 <ConfigStruct name="`${INST_NAME . "_card_cfg"}`" type="cy_stc_sd_host_sd_card_config_t" const="false" public="true" include="true" > 304 <Member name="lowVoltageSignaling" value="`${lowVoltageSignaling ? "true" : "false"}`" /> 305 <Member name="busWidth" value="`${busWidth}`" /> 306 <Member name="cardType" value="&`${INST_NAME . "_cardType"}`" /> 307 <Member name="rca" value="&`${INST_NAME . "_rca"}`" /> 308 <Member name="cardCapacity" value="&`${INST_NAME . "_cardCapacity"}`" /> 309 </ConfigStruct> 310 311 <ConfigStruct name="`${INST_NAME}`_obj" type="cyhal_resource_inst_t" const="true" public="true" include="true" guard="defined (CY_USING_HAL)"> 312 <Member name="type" value="CYHAL_RSC_SDHC" /> 313 <Member name="block_num" value="`${getInstNumber("sdhc")}`U" /> 314 <Member name="channel_num" value="0U" /> 315 </ConfigStruct> 316 317 <ConfigInstruction value="cyhal_hwmgr_reserve(&`${INST_NAME}`_obj);" include="true" guard="defined (CY_USING_HAL)" /> 318 </ConfigFirmware> 319</Personality> 320