1*2846c905SEmmanuel Vadot# SPDX-License-Identifier: GPL-2.0 2*2846c905SEmmanuel Vadot%YAML 1.2 3*2846c905SEmmanuel Vadot--- 4*2846c905SEmmanuel Vadot$id: http://devicetree.org/schemas/mmc/mmc-controller-common.yaml# 5*2846c905SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*2846c905SEmmanuel Vadot 7*2846c905SEmmanuel Vadottitle: MMC Controller & Slots Common Properties 8*2846c905SEmmanuel Vadot 9*2846c905SEmmanuel Vadotmaintainers: 10*2846c905SEmmanuel Vadot - Ulf Hansson <ulf.hansson@linaro.org> 11*2846c905SEmmanuel Vadot 12*2846c905SEmmanuel Vadotdescription: 13*2846c905SEmmanuel Vadot These properties are common to multiple MMC host controllers and the 14*2846c905SEmmanuel Vadot possible slots or ports for multi-slot controllers. 15*2846c905SEmmanuel Vadot 16*2846c905SEmmanuel Vadotproperties: 17*2846c905SEmmanuel Vadot "#address-cells": 18*2846c905SEmmanuel Vadot const: 1 19*2846c905SEmmanuel Vadot description: 20*2846c905SEmmanuel Vadot The cell is the SDIO function number if a function subnode is used. 21*2846c905SEmmanuel Vadot 22*2846c905SEmmanuel Vadot "#size-cells": 23*2846c905SEmmanuel Vadot const: 0 24*2846c905SEmmanuel Vadot 25*2846c905SEmmanuel Vadot # Card Detection. 26*2846c905SEmmanuel Vadot # If none of these properties are supplied, the host native card 27*2846c905SEmmanuel Vadot # detect will be used. Only one of them should be provided. 28*2846c905SEmmanuel Vadot 29*2846c905SEmmanuel Vadot broken-cd: 30*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 31*2846c905SEmmanuel Vadot description: 32*2846c905SEmmanuel Vadot There is no card detection available; polling must be used. 33*2846c905SEmmanuel Vadot 34*2846c905SEmmanuel Vadot cd-gpios: 35*2846c905SEmmanuel Vadot maxItems: 1 36*2846c905SEmmanuel Vadot description: 37*2846c905SEmmanuel Vadot The card detection will be done using the GPIO provided. 38*2846c905SEmmanuel Vadot 39*2846c905SEmmanuel Vadot non-removable: 40*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 41*2846c905SEmmanuel Vadot description: 42*2846c905SEmmanuel Vadot Non-removable slot (like eMMC); assume always present. 43*2846c905SEmmanuel Vadot 44*2846c905SEmmanuel Vadot # *NOTE* on CD and WP polarity. To use common for all SD/MMC host 45*2846c905SEmmanuel Vadot # controllers line polarity properties, we have to fix the meaning 46*2846c905SEmmanuel Vadot # of the "normal" and "inverted" line levels. We choose to follow 47*2846c905SEmmanuel Vadot # the SDHCI standard, which specifies both those lines as "active 48*2846c905SEmmanuel Vadot # low." Therefore, using the "cd-inverted" property means, that the 49*2846c905SEmmanuel Vadot # CD line is active high, i.e. it is high, when a card is 50*2846c905SEmmanuel Vadot # inserted. Similar logic applies to the "wp-inverted" property. 51*2846c905SEmmanuel Vadot # 52*2846c905SEmmanuel Vadot # CD and WP lines can be implemented on the hardware in one of two 53*2846c905SEmmanuel Vadot # ways: as GPIOs, specified in cd-gpios and wp-gpios properties, or 54*2846c905SEmmanuel Vadot # as dedicated pins. Polarity of dedicated pins can be specified, 55*2846c905SEmmanuel Vadot # using *-inverted properties. GPIO polarity can also be specified 56*2846c905SEmmanuel Vadot # using the GPIO_ACTIVE_LOW flag. This creates an ambiguity in the 57*2846c905SEmmanuel Vadot # latter case. We choose to use the XOR logic for GPIO CD and WP 58*2846c905SEmmanuel Vadot # lines. This means, the two properties are "superimposed," for 59*2846c905SEmmanuel Vadot # example leaving the GPIO_ACTIVE_LOW flag clear and specifying the 60*2846c905SEmmanuel Vadot # respective *-inverted property property results in a 61*2846c905SEmmanuel Vadot # double-inversion and actually means the "normal" line polarity is 62*2846c905SEmmanuel Vadot # in effect. 63*2846c905SEmmanuel Vadot wp-inverted: 64*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 65*2846c905SEmmanuel Vadot description: 66*2846c905SEmmanuel Vadot The Write Protect line polarity is inverted. 67*2846c905SEmmanuel Vadot 68*2846c905SEmmanuel Vadot cd-inverted: 69*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 70*2846c905SEmmanuel Vadot description: 71*2846c905SEmmanuel Vadot The CD line polarity is inverted. 72*2846c905SEmmanuel Vadot 73*2846c905SEmmanuel Vadot # Other properties 74*2846c905SEmmanuel Vadot 75*2846c905SEmmanuel Vadot bus-width: 76*2846c905SEmmanuel Vadot description: 77*2846c905SEmmanuel Vadot Number of data lines. 78*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 79*2846c905SEmmanuel Vadot enum: [1, 4, 8] 80*2846c905SEmmanuel Vadot default: 1 81*2846c905SEmmanuel Vadot 82*2846c905SEmmanuel Vadot max-frequency: 83*2846c905SEmmanuel Vadot description: | 84*2846c905SEmmanuel Vadot Maximum operating frequency of the bus: 85*2846c905SEmmanuel Vadot - for eMMC, the maximum supported frequency is 200MHz, 86*2846c905SEmmanuel Vadot - for SD/SDIO cards the SDR104 mode has a max supported 87*2846c905SEmmanuel Vadot frequency of 208MHz, 88*2846c905SEmmanuel Vadot - some mmc host controllers do support a max frequency upto 89*2846c905SEmmanuel Vadot 384MHz. 90*2846c905SEmmanuel Vadot So, lets keep the maximum supported value here. 91*2846c905SEmmanuel Vadot 92*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 93*2846c905SEmmanuel Vadot minimum: 400000 94*2846c905SEmmanuel Vadot maximum: 384000000 95*2846c905SEmmanuel Vadot 96*2846c905SEmmanuel Vadot disable-wp: 97*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 98*2846c905SEmmanuel Vadot description: 99*2846c905SEmmanuel Vadot When set, no physical write-protect line is present. This 100*2846c905SEmmanuel Vadot property should only be specified when the controller has a 101*2846c905SEmmanuel Vadot dedicated write-protect detection logic. If a GPIO is always used 102*2846c905SEmmanuel Vadot for the write-protect detection logic, it is sufficient to not 103*2846c905SEmmanuel Vadot specify the wp-gpios property in the absence of a write-protect 104*2846c905SEmmanuel Vadot line. Not used in combination with eMMC or SDIO. 105*2846c905SEmmanuel Vadot 106*2846c905SEmmanuel Vadot wp-gpios: 107*2846c905SEmmanuel Vadot maxItems: 1 108*2846c905SEmmanuel Vadot description: 109*2846c905SEmmanuel Vadot GPIO to use for the write-protect detection. 110*2846c905SEmmanuel Vadot 111*2846c905SEmmanuel Vadot cd-debounce-delay-ms: 112*2846c905SEmmanuel Vadot description: 113*2846c905SEmmanuel Vadot Set delay time before detecting card after card insert 114*2846c905SEmmanuel Vadot interrupt. 115*2846c905SEmmanuel Vadot 116*2846c905SEmmanuel Vadot no-1-8-v: 117*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 118*2846c905SEmmanuel Vadot description: 119*2846c905SEmmanuel Vadot When specified, denotes that 1.8V card voltage is not supported 120*2846c905SEmmanuel Vadot on this system, even if the controller claims it. 121*2846c905SEmmanuel Vadot 122*2846c905SEmmanuel Vadot cap-sd-highspeed: 123*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 124*2846c905SEmmanuel Vadot description: 125*2846c905SEmmanuel Vadot SD high-speed timing is supported. 126*2846c905SEmmanuel Vadot 127*2846c905SEmmanuel Vadot cap-mmc-highspeed: 128*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 129*2846c905SEmmanuel Vadot description: 130*2846c905SEmmanuel Vadot MMC high-speed timing is supported. 131*2846c905SEmmanuel Vadot 132*2846c905SEmmanuel Vadot sd-uhs-sdr12: 133*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 134*2846c905SEmmanuel Vadot description: 135*2846c905SEmmanuel Vadot SD UHS SDR12 speed is supported. 136*2846c905SEmmanuel Vadot 137*2846c905SEmmanuel Vadot sd-uhs-sdr25: 138*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 139*2846c905SEmmanuel Vadot description: 140*2846c905SEmmanuel Vadot SD UHS SDR25 speed is supported. 141*2846c905SEmmanuel Vadot 142*2846c905SEmmanuel Vadot sd-uhs-sdr50: 143*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 144*2846c905SEmmanuel Vadot description: 145*2846c905SEmmanuel Vadot SD UHS SDR50 speed is supported. 146*2846c905SEmmanuel Vadot 147*2846c905SEmmanuel Vadot sd-uhs-sdr104: 148*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 149*2846c905SEmmanuel Vadot description: 150*2846c905SEmmanuel Vadot SD UHS SDR104 speed is supported. 151*2846c905SEmmanuel Vadot 152*2846c905SEmmanuel Vadot sd-uhs-ddr50: 153*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 154*2846c905SEmmanuel Vadot description: 155*2846c905SEmmanuel Vadot SD UHS DDR50 speed is supported. 156*2846c905SEmmanuel Vadot 157*2846c905SEmmanuel Vadot cap-power-off-card: 158*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 159*2846c905SEmmanuel Vadot description: 160*2846c905SEmmanuel Vadot Powering off the card is safe. 161*2846c905SEmmanuel Vadot 162*2846c905SEmmanuel Vadot cap-mmc-hw-reset: 163*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 164*2846c905SEmmanuel Vadot description: 165*2846c905SEmmanuel Vadot eMMC hardware reset is supported 166*2846c905SEmmanuel Vadot 167*2846c905SEmmanuel Vadot cap-sdio-irq: 168*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 169*2846c905SEmmanuel Vadot description: 170*2846c905SEmmanuel Vadot enable SDIO IRQ signalling on this interface 171*2846c905SEmmanuel Vadot 172*2846c905SEmmanuel Vadot full-pwr-cycle: 173*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 174*2846c905SEmmanuel Vadot description: 175*2846c905SEmmanuel Vadot Full power cycle of the card is supported. 176*2846c905SEmmanuel Vadot 177*2846c905SEmmanuel Vadot full-pwr-cycle-in-suspend: 178*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 179*2846c905SEmmanuel Vadot description: 180*2846c905SEmmanuel Vadot Full power cycle of the card in suspend is supported. 181*2846c905SEmmanuel Vadot 182*2846c905SEmmanuel Vadot mmc-ddr-1_2v: 183*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 184*2846c905SEmmanuel Vadot description: 185*2846c905SEmmanuel Vadot eMMC high-speed DDR mode (1.2V I/O) is supported. 186*2846c905SEmmanuel Vadot 187*2846c905SEmmanuel Vadot mmc-ddr-1_8v: 188*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 189*2846c905SEmmanuel Vadot description: 190*2846c905SEmmanuel Vadot eMMC high-speed DDR mode (1.8V I/O) is supported. 191*2846c905SEmmanuel Vadot 192*2846c905SEmmanuel Vadot mmc-ddr-3_3v: 193*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 194*2846c905SEmmanuel Vadot description: 195*2846c905SEmmanuel Vadot eMMC high-speed DDR mode (3.3V I/O) is supported. 196*2846c905SEmmanuel Vadot 197*2846c905SEmmanuel Vadot mmc-hs200-1_2v: 198*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 199*2846c905SEmmanuel Vadot description: 200*2846c905SEmmanuel Vadot eMMC HS200 mode (1.2V I/O) is supported. 201*2846c905SEmmanuel Vadot 202*2846c905SEmmanuel Vadot mmc-hs200-1_8v: 203*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 204*2846c905SEmmanuel Vadot description: 205*2846c905SEmmanuel Vadot eMMC HS200 mode (1.8V I/O) is supported. 206*2846c905SEmmanuel Vadot 207*2846c905SEmmanuel Vadot mmc-hs400-1_2v: 208*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 209*2846c905SEmmanuel Vadot description: 210*2846c905SEmmanuel Vadot eMMC HS400 mode (1.2V I/O) is supported. 211*2846c905SEmmanuel Vadot 212*2846c905SEmmanuel Vadot mmc-hs400-1_8v: 213*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 214*2846c905SEmmanuel Vadot description: 215*2846c905SEmmanuel Vadot eMMC HS400 mode (1.8V I/O) is supported. 216*2846c905SEmmanuel Vadot 217*2846c905SEmmanuel Vadot mmc-hs400-enhanced-strobe: 218*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 219*2846c905SEmmanuel Vadot description: 220*2846c905SEmmanuel Vadot eMMC HS400 enhanced strobe mode is supported 221*2846c905SEmmanuel Vadot 222*2846c905SEmmanuel Vadot no-mmc-hs400: 223*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 224*2846c905SEmmanuel Vadot description: 225*2846c905SEmmanuel Vadot All eMMC HS400 modes are not supported. 226*2846c905SEmmanuel Vadot 227*2846c905SEmmanuel Vadot dsr: 228*2846c905SEmmanuel Vadot description: 229*2846c905SEmmanuel Vadot Value the card Driver Stage Register (DSR) should be programmed 230*2846c905SEmmanuel Vadot with. 231*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 232*2846c905SEmmanuel Vadot minimum: 0 233*2846c905SEmmanuel Vadot maximum: 0xffff 234*2846c905SEmmanuel Vadot 235*2846c905SEmmanuel Vadot no-sdio: 236*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 237*2846c905SEmmanuel Vadot description: 238*2846c905SEmmanuel Vadot Controller is limited to send SDIO commands during 239*2846c905SEmmanuel Vadot initialization. 240*2846c905SEmmanuel Vadot 241*2846c905SEmmanuel Vadot no-sd: 242*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 243*2846c905SEmmanuel Vadot description: 244*2846c905SEmmanuel Vadot Controller is limited to send SD commands during initialization. 245*2846c905SEmmanuel Vadot 246*2846c905SEmmanuel Vadot no-mmc: 247*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 248*2846c905SEmmanuel Vadot description: 249*2846c905SEmmanuel Vadot Controller is limited to send MMC commands during 250*2846c905SEmmanuel Vadot initialization. 251*2846c905SEmmanuel Vadot 252*2846c905SEmmanuel Vadot fixed-emmc-driver-type: 253*2846c905SEmmanuel Vadot description: 254*2846c905SEmmanuel Vadot For non-removable eMMC, enforce this driver type. The value is 255*2846c905SEmmanuel Vadot the driver type as specified in the eMMC specification (table 256*2846c905SEmmanuel Vadot 206 in spec version 5.1) 257*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 258*2846c905SEmmanuel Vadot minimum: 0 259*2846c905SEmmanuel Vadot maximum: 4 260*2846c905SEmmanuel Vadot 261*2846c905SEmmanuel Vadot post-power-on-delay-ms: 262*2846c905SEmmanuel Vadot description: 263*2846c905SEmmanuel Vadot It was invented for MMC pwrseq-simple which could be referred to 264*2846c905SEmmanuel Vadot mmc-pwrseq-simple.yaml. But now it\'s reused as a tunable delay 265*2846c905SEmmanuel Vadot waiting for I/O signalling and card power supply to be stable, 266*2846c905SEmmanuel Vadot regardless of whether pwrseq-simple is used. Default to 10ms if 267*2846c905SEmmanuel Vadot no available. 268*2846c905SEmmanuel Vadot default: 10 269*2846c905SEmmanuel Vadot 270*2846c905SEmmanuel Vadot supports-cqe: 271*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 272*2846c905SEmmanuel Vadot description: 273*2846c905SEmmanuel Vadot The presence of this property indicates that the corresponding 274*2846c905SEmmanuel Vadot MMC host controller supports HW command queue feature. 275*2846c905SEmmanuel Vadot 276*2846c905SEmmanuel Vadot disable-cqe-dcmd: 277*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 278*2846c905SEmmanuel Vadot description: 279*2846c905SEmmanuel Vadot The presence of this property indicates that the MMC 280*2846c905SEmmanuel Vadot controller\'s command queue engine (CQE) does not support direct 281*2846c905SEmmanuel Vadot commands (DCMDs). 282*2846c905SEmmanuel Vadot 283*2846c905SEmmanuel Vadot keep-power-in-suspend: 284*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 285*2846c905SEmmanuel Vadot description: 286*2846c905SEmmanuel Vadot SDIO only. Preserves card power during a suspend/resume cycle. 287*2846c905SEmmanuel Vadot 288*2846c905SEmmanuel Vadot wakeup-source: 289*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/flag 290*2846c905SEmmanuel Vadot description: 291*2846c905SEmmanuel Vadot SDIO only. Enables wake up of host system on SDIO IRQ assertion. 292*2846c905SEmmanuel Vadot 293*2846c905SEmmanuel Vadot vmmc-supply: 294*2846c905SEmmanuel Vadot description: 295*2846c905SEmmanuel Vadot Supply for the card power 296*2846c905SEmmanuel Vadot 297*2846c905SEmmanuel Vadot vqmmc-supply: 298*2846c905SEmmanuel Vadot description: 299*2846c905SEmmanuel Vadot Supply for the bus IO line power, such as a level shifter. 300*2846c905SEmmanuel Vadot If the level shifter is controlled by a GPIO line, this shall 301*2846c905SEmmanuel Vadot be modeled as a "regulator-fixed" with a GPIO line for 302*2846c905SEmmanuel Vadot switching the level shifter on/off. 303*2846c905SEmmanuel Vadot 304*2846c905SEmmanuel Vadot mmc-pwrseq: 305*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/phandle 306*2846c905SEmmanuel Vadot description: 307*2846c905SEmmanuel Vadot System-on-Chip designs may specify a specific MMC power 308*2846c905SEmmanuel Vadot sequence. To successfully detect an (e)MMC/SD/SDIO card, that 309*2846c905SEmmanuel Vadot power sequence must be maintained while initializing the card. 310*2846c905SEmmanuel Vadot 311*2846c905SEmmanuel VadotpatternProperties: 312*2846c905SEmmanuel Vadot "^.*@[0-9]+$": 313*2846c905SEmmanuel Vadot type: object 314*2846c905SEmmanuel Vadot description: | 315*2846c905SEmmanuel Vadot On embedded systems the cards connected to a host may need 316*2846c905SEmmanuel Vadot additional properties. These can be specified in subnodes to the 317*2846c905SEmmanuel Vadot host controller node. The subnodes are identified by the 318*2846c905SEmmanuel Vadot standard \'reg\' property. Which information exactly can be 319*2846c905SEmmanuel Vadot specified depends on the bindings for the SDIO function driver 320*2846c905SEmmanuel Vadot for the subnode, as specified by the compatible string. 321*2846c905SEmmanuel Vadot 322*2846c905SEmmanuel Vadot properties: 323*2846c905SEmmanuel Vadot compatible: 324*2846c905SEmmanuel Vadot description: 325*2846c905SEmmanuel Vadot Name of SDIO function following generic names recommended 326*2846c905SEmmanuel Vadot practice 327*2846c905SEmmanuel Vadot 328*2846c905SEmmanuel Vadot reg: 329*2846c905SEmmanuel Vadot items: 330*2846c905SEmmanuel Vadot - minimum: 0 331*2846c905SEmmanuel Vadot maximum: 7 332*2846c905SEmmanuel Vadot description: 333*2846c905SEmmanuel Vadot Must contain the SDIO function number of the function this 334*2846c905SEmmanuel Vadot subnode describes. A value of 0 denotes the memory SD 335*2846c905SEmmanuel Vadot function, values from 1 to 7 denote the SDIO functions. 336*2846c905SEmmanuel Vadot 337*2846c905SEmmanuel Vadot required: 338*2846c905SEmmanuel Vadot - reg 339*2846c905SEmmanuel Vadot 340*2846c905SEmmanuel Vadot "^clk-phase-(legacy|sd-hs|mmc-(hs|hs[24]00|ddr52)|uhs-(sdr(12|25|50|104)|ddr50))$": 341*2846c905SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32-array 342*2846c905SEmmanuel Vadot 343*2846c905SEmmanuel Vadot minItems: 2 344*2846c905SEmmanuel Vadot maxItems: 2 345*2846c905SEmmanuel Vadot items: 346*2846c905SEmmanuel Vadot minimum: 0 347*2846c905SEmmanuel Vadot maximum: 359 348*2846c905SEmmanuel Vadot description: 349*2846c905SEmmanuel Vadot Set the clock (phase) delays which are to be configured in the 350*2846c905SEmmanuel Vadot controller while switching to particular speed mode. These values 351*2846c905SEmmanuel Vadot are in pair of degrees. 352*2846c905SEmmanuel Vadot 353*2846c905SEmmanuel Vadotdependencies: 354*2846c905SEmmanuel Vadot cd-debounce-delay-ms: [ cd-gpios ] 355*2846c905SEmmanuel Vadot fixed-emmc-driver-type: [ non-removable ] 356*2846c905SEmmanuel Vadot 357*2846c905SEmmanuel VadotadditionalProperties: true 358