xref: /freebsd/sys/contrib/device-tree/src/arm/aspeed/aspeed-bmc-vegman-rx20.dts (revision aa1a8ff2d6dbc51ef058f46f3db5a8bb77967145)
1f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0+
2f126890aSEmmanuel Vadot// Copyright (C) 2021 YADRO
3f126890aSEmmanuel Vadot/dts-v1/;
4f126890aSEmmanuel Vadot
5f126890aSEmmanuel Vadot#include "aspeed-bmc-vegman.dtsi"
6f126890aSEmmanuel Vadot
7f126890aSEmmanuel Vadot/ {
8f126890aSEmmanuel Vadot	model = "YADRO VEGMAN Rx20 BMC";
9f126890aSEmmanuel Vadot	compatible = "yadro,vegman-rx20-bmc", "aspeed,ast2500";
10f126890aSEmmanuel Vadot
11f126890aSEmmanuel Vadot	leds {
12f126890aSEmmanuel Vadot		compatible = "gpio-leds";
13f126890aSEmmanuel Vadot
14f126890aSEmmanuel Vadot		temp_alarm {
15f126890aSEmmanuel Vadot			label = "temp:red:status";
16f126890aSEmmanuel Vadot			default-state = "off";
17f126890aSEmmanuel Vadot			gpios = <&gpio ASPEED_GPIO(E, 4) GPIO_ACTIVE_LOW>;
18f126890aSEmmanuel Vadot		};
19f126890aSEmmanuel Vadot
20f126890aSEmmanuel Vadot		temp_ok {
21f126890aSEmmanuel Vadot			label = "temp:green:status";
22f126890aSEmmanuel Vadot			default-state = "off";
23f126890aSEmmanuel Vadot			gpios = <&gpio ASPEED_GPIO(E, 5) GPIO_ACTIVE_LOW>;
24f126890aSEmmanuel Vadot		};
25f126890aSEmmanuel Vadot
26f126890aSEmmanuel Vadot		psu_fault {
27f126890aSEmmanuel Vadot			label = "psu:red:status";
28f126890aSEmmanuel Vadot			default-state = "off";
29f126890aSEmmanuel Vadot			gpios = <&gpio ASPEED_GPIO(E, 6) GPIO_ACTIVE_LOW>;
30f126890aSEmmanuel Vadot		};
31f126890aSEmmanuel Vadot
32f126890aSEmmanuel Vadot		psu_ok {
33f126890aSEmmanuel Vadot			label = "psu:green:status";
34f126890aSEmmanuel Vadot			default-state = "off";
35f126890aSEmmanuel Vadot			gpios = <&gpio ASPEED_GPIO(E, 7) GPIO_ACTIVE_LOW>;
36f126890aSEmmanuel Vadot		};
37f126890aSEmmanuel Vadot	};
38f126890aSEmmanuel Vadot};
39f126890aSEmmanuel Vadot
40f126890aSEmmanuel Vadot&gpio {
41f126890aSEmmanuel Vadot	status = "okay";
42f126890aSEmmanuel Vadot	gpio-line-names =
43f126890aSEmmanuel Vadot	/*A0-A7*/	"CASE_OPEN_DNP","CASE_OPEN_FAULT_RST_DNP","BEZEL_ON_PWR_P3V3","PWM_PWRGD_EXP_EN","SPEAKER_BMC","FM_FORCE_BMC_UPDATE","","",
44f126890aSEmmanuel Vadot	/*B0-B7*/	"","","","","","","","",
45f126890aSEmmanuel Vadot	/*C0-C7*/	"","","","","","","","",
46f126890aSEmmanuel Vadot	/*D0-D7*/	"","","","","","","","",
47f126890aSEmmanuel Vadot	/*E0-E7*/	"RESET_BUTTON","RESET_OUT","POWER_BUTTON","POWER_OUT","LED_TEMP_STATUS_R","LED_TEMP_STATUS_G","LED_PWR_STATUS_R","LED_PWR_STATUS_G",
48f126890aSEmmanuel Vadot	/*F0-F7*/	"NMI_OUT","CPU1_DISABLE_COD","","","SKT0_FAULT_LED_DNP","SKT1_FAULT_LED_DNP","RST_RGMII_PHYRST_DNP","",
49f126890aSEmmanuel Vadot	/*G0-G7*/	"CPU_ERR2","CPU_CATERR","PCH_BMC_THERMTRIP","SPI_BMC_BOOT_HD","IRQ_NMI_EVENT","SPI_BMC_BOOT_WP","SPI_BMC_BOOT_WP1","",
50f126890aSEmmanuel Vadot	/*H0-H7*/	"PWRGD_P3V3_RISER1","PWRGD_P3V3_RISER2","PWRGD_P3V3_RISER3","","MIO_BIOS_SEL","_SPI_FLASH_HOLD","_SPI_FLASH_WP","FM_240VA_STATUS",
51f126890aSEmmanuel Vadot	/*I0-I7*/	"","","","","","","","",
52f126890aSEmmanuel Vadot	/*J0-J7*/	"","","","","","","","",
53f126890aSEmmanuel Vadot	/*K0-K7*/	"","","","","","","","",
54f126890aSEmmanuel Vadot	/*L0-L7*/	"","","","","","","","",
55f126890aSEmmanuel Vadot	/*M0-M7*/	"SEL_FLASH_SOFT","STATUS_SEL_BMC","","","BMC_WDT_P","ID_BUTTON","PS_PWROK","",
56f126890aSEmmanuel Vadot	/*N0-N7*/	"","","","","","","","",
57f126890aSEmmanuel Vadot	/*O0-O7*/	"","","","","","","","",
58f126890aSEmmanuel Vadot	/*P0-P7*/	"","","","","","","SPI_BIOS_ACTIVE_FLASH_SEL","STATUS_SEL_BIOS",
59f126890aSEmmanuel Vadot	/*Q0-Q7*/	"","","","","","","","",
60f126890aSEmmanuel Vadot	/*R0-R7*/	"_SPI_BMC_BOOT_CS1","","","","","","","",
61f126890aSEmmanuel Vadot	/*S0-S7*/	"_SPI2_BMC_CS1","RSR_A_SMBEXP_RST_INT","RSR_B_SMBEXP_RST_INT","IRQ_SML0_ALERT_MUX","FP_LED_STATUS_GREEN","FP_LED_STATUS_AMBER","FP_ID_LED","",
62f126890aSEmmanuel Vadot	/*T0-T7*/	"","","","","","","","",
63f126890aSEmmanuel Vadot	/*U0-U7*/	"","","","","","","","",
64f126890aSEmmanuel Vadot	/*V0-V7*/	"","","","","","","","",
65f126890aSEmmanuel Vadot	/*W0-W7*/	"","","","","","","","",
66f126890aSEmmanuel Vadot	/*X0-X7*/	"","","","","","","","",
67f126890aSEmmanuel Vadot	/*Y0-Y7*/	"SIO_S3","SIO_S5","","SIO_ONCONTROL","","","","",
68f126890aSEmmanuel Vadot	/*Z0-Z7*/	"FM_BMC_PWR_BTN","SIO_POWER_GOOD","FM_BMC_PWRBTN_OUT","FM_BMC_PCH_SCI_LPC","","","","",
69f126890aSEmmanuel Vadot	/*AA0-AA7*/	"CPU_CLK_MUX_SEL","IRQ_SML1_PMBUS_ALERT","FM_PVCCIN_CPU0_PWR_IN_ALERT","FM_PVCCIN_CPU1_PWR_IN_ALERT","BMC_SYS_PWR_FAULT","BMC_SYS_PWR_OK","SMI","POST_COMPLETE",
70f126890aSEmmanuel Vadot	/*AB0-AB7*/	"FM_CPU_BMCINIT","NMI_BUTTON","BMC_WDT_RST1","BMC_WDT_RST2","","","","",
71f126890aSEmmanuel Vadot	/*AC0-AC7*/	"","","","","","","","";
72f126890aSEmmanuel Vadot};
73f126890aSEmmanuel Vadot
74f126890aSEmmanuel Vadot&sgpio {
75f126890aSEmmanuel Vadot	ngpios = <80>;
76f126890aSEmmanuel Vadot	bus-frequency = <2000000>;
77f126890aSEmmanuel Vadot	status = "okay";
78f126890aSEmmanuel Vadot	/* SGPIO lines. even: input, odd: output */
79f126890aSEmmanuel Vadot	gpio-line-names =
80f126890aSEmmanuel Vadot	/*A0-A7*/	"CPU1_PRESENCE","","CPU1_THERMTRIP","","CPU1_VRHOT","","CPU1_FIVR_FAULT","","CPU1_MEM_ABCD_VRHOT","","CPU1_MEM_EFGH_VRHOT","","","","","",
81f126890aSEmmanuel Vadot	/*B0-B7*/	"CPU1_MISMATCH","","CPU1_MEM_THERM_EVENT","","CPU2_PRESENCE","","CPU2_THERMTRIP","","CPU2_VRHOT","","CPU2_FIVR_FAULT","","CPU2_MEM_ABCD_VRHOT","","CPU2_MEM_EFGH_VRHOT","",
82f126890aSEmmanuel Vadot	/*C0-C7*/	"","","","","CPU2_MISMATCH","","CPU2_MEM_THERM_EVENT","","","","","","","","","",
83f126890aSEmmanuel Vadot	/*D0-D7*/	"","","","","","","","","","","","","","","","",
84f126890aSEmmanuel Vadot	/*E0-E7*/	"","","","","","","","","","","","","","","","",
85f126890aSEmmanuel Vadot	/*F0-F7*/	"SGPIO_PLD_MINOR_REV_BIT0","","SGPIO_PLD_MINOR_REV_BIT1","","SGPIO_PLD_MINOR_REV_BIT2","","SGPIO_PLD_MINOR_REV_BIT3","","SGPIO_PLD_MAJOR_REV_BIT0","","SGPIO_PLD_MAJOR_REV_BIT1","","SGPIO_PLD_MAJOR_REV_BIT2","","SGPIO_PLD_MAJOR_REV_BIT3","",
86f126890aSEmmanuel Vadot	/*G0-G7*/	"MAIN_PLD_MINOR_REV_BIT0","","MAIN_PLD_MINOR_REV_BIT1","","MAIN_PLD_MINOR_REV_BIT2","","MAIN_PLD_MINOR_REV_BIT3","","MAIN_PLD_MAJOR_REV_BIT0","","MAIN_PLD_MAJOR_REV_BIT1","","MAIN_PLD_MAJOR_REV_BIT2","","MAIN_PLD_MAJOR_REV_BIT3","",
87f126890aSEmmanuel Vadot	/*H0-H7*/	"","","","","","","","","","","","","","","","",
88f126890aSEmmanuel Vadot	/*I0-I7*/	"","","","","","","","","","","","","","","","",
89f126890aSEmmanuel Vadot	/*J0-J7*/	"","","","","","","","","","","","","","","","";
90f126890aSEmmanuel Vadot};
91f126890aSEmmanuel Vadot
92f126890aSEmmanuel Vadot&i2c11 {
93f126890aSEmmanuel Vadot	/* SMB_BMC_MGMT_LVC3 */
94f126890aSEmmanuel Vadot	gpio@21 {
95f126890aSEmmanuel Vadot		compatible = "nxp,pcal9535";
96f126890aSEmmanuel Vadot		reg = <0x21>;
97f126890aSEmmanuel Vadot		gpio-controller;
98f126890aSEmmanuel Vadot		#gpio-cells = <2>;
99f126890aSEmmanuel Vadot		gpio-line-names =
100f126890aSEmmanuel Vadot		/*IO0.0-0.7*/	"ETH3_CLK_REQ", "ETH2_CLK_REQ", "RSR_A_PCIE_X16_2_PRSNT", "RSR_B_PCIE_X16_2_PRSNT", "", "RSR_B_PCIE_X8_3_PRSNT", "RSR_B_PCIE_X8_4_PRSNT", "RSR_B_PCIE_X16_PRSNT_N",
101f126890aSEmmanuel Vadot		/*IO1.0-1.7*/	"RSR_B_PCIE_X8_2_PRSNT", "RSR_B_PCIE_X8_1_PRSNT", "NIC_1_PE_BUF_PRSNT", "RSR_A_PCIE_X16_PRSNT", "RSR_A_PCIE_X8_3_PRSNT", "RSR_A_PCIE_X8_2_PRSNT", "RSR_A_PCIE_X8_1_PRSNT_N", "";
102f126890aSEmmanuel Vadot	};
103f126890aSEmmanuel Vadot	gpio@23 {
104f126890aSEmmanuel Vadot		compatible = "nxp,pcal9535";
105f126890aSEmmanuel Vadot		reg = <0x23>;
106f126890aSEmmanuel Vadot		gpio-controller;
107f126890aSEmmanuel Vadot		#gpio-cells = <2>;
108f126890aSEmmanuel Vadot		gpio-line-names =
109f126890aSEmmanuel Vadot		/*IO0.0-0.7*/	"FM_LINK_WIDTH_ID0", "FM_LINK_WIDTH_ID0", "FM_LINK_WIDTH_ID0", "FM_LINK_WIDTH_ID0", "FM_LINK_WIDTH_ID0", "", "", "",
110f126890aSEmmanuel Vadot		/*IO1.0-1.7*/	"", "", "", "", "", "", "", "";
111f126890aSEmmanuel Vadot	};
112f126890aSEmmanuel Vadot	gpio@27 {
113f126890aSEmmanuel Vadot		compatible = "nxp,pca9698";
114f126890aSEmmanuel Vadot		reg = <0x27>;
115f126890aSEmmanuel Vadot		gpio-controller;
116f126890aSEmmanuel Vadot		#gpio-cells = <2>;
117f126890aSEmmanuel Vadot		gpio-line-names =
118f126890aSEmmanuel Vadot		/*IO0.0-0.7*/	"PWRGD_PS_PWROK", "PWRGD_DSW_PWROK", "PWRGD_P5V_AUX", "PWRGD_P3V3_AUX", "PWRGD_P5V", "PWRGD_P3V3", "PWRGD_P1V8_PCH_AUX", "PWRGD_PCH_PVNN_AUX",
119f126890aSEmmanuel Vadot		/*IO1.0-1.7*/	"PWRGD_P1V05_PCH_AUX", "PWRGD_PCH_AUX_VRS", "PWRGD_PVCCIN_CPU0", "PWRGD_PVCCSA_CPU0", "PWRGD_PVCCIO_CPU0", "PWRGD_PVMCP_CPU0", "PWRGD_P1V0_CPU0", "PWRGD_PVDDQ_ABC_CPU0",
120f126890aSEmmanuel Vadot		/*IO2.0-2.7*/	"PWRGD_PVPP_ABC_CPU0", "PWRGD_PVTT_ABC_CPU0", "PWRGD_PVDDQ_DEF_CPU0", "PWRGD_PVPP_DEF_CPU0", "PWRGD_PVTT_DEF_CPU0", "PWRGD_PVCCIN_CPU1", "PWRGD_PVCCSA_CPU1", "PWRGD_PVCCIO_CPU1",
121f126890aSEmmanuel Vadot		/*IO3.0-3.7*/	"PWRGD_PVMCP_CPU1", "PWRGD_P1V0_CPU1", "PWRGD_PVDDQ_GHJ_CPU1", "PWRGD_PVPP_GHJ_CPU1", "PWRGD_PVTT_GHJ_CPU1", "PWRGD_PVDDQ_KLM_CPU1", "PWRGD_PVPP_KLM_CPU1", "PWRGD_PVTT_KLM_CPU1",
122f126890aSEmmanuel Vadot		/*IO4.0-4.7*/	"PCH_PWR_RESET_N", "FM_BOARD_SKU_ID0", "FM_BOARD_SKU_ID1", "FM_BOARD_SKU_ID2", "FM_BOARD_SKU_ID3", "FM_BOARD_SKU_ID4", "FM_BOARD_REV_ID0", "FM_BOARD_REV_ID1";
123f126890aSEmmanuel Vadot	};
124f126890aSEmmanuel Vadot	gpio@39 {
125f126890aSEmmanuel Vadot		compatible = "nxp,pca9554";
126f126890aSEmmanuel Vadot		reg = <0x39>;
127f126890aSEmmanuel Vadot		gpio-controller;
128f126890aSEmmanuel Vadot		#gpio-cells = <2>;
129f126890aSEmmanuel Vadot		gpio-line-names =
130f126890aSEmmanuel Vadot		/*IO0.0-0.7*/	"FAN_FAULT_0", "FAN_FAULT_1", "FAN_FAULT_2", "FAN_FAULT_3", "FAN_FAULT_4", "FAN_FAULT_5", "FAN_FAULT_6", "";
131f126890aSEmmanuel Vadot	};
132f126890aSEmmanuel Vadot};
133f126890aSEmmanuel Vadot
134f126890aSEmmanuel Vadot&i2c13 {
135f126890aSEmmanuel Vadot	/* SMB_PCIE2_STBY_LVC3 */
136*aa1a8ff2SEmmanuel Vadot	i2c-mux@70 {
137f126890aSEmmanuel Vadot		compatible = "nxp,pca9548";
138f126890aSEmmanuel Vadot		reg = <0x70>;
139f126890aSEmmanuel Vadot		#address-cells = <1>;
140f126890aSEmmanuel Vadot		#size-cells = <0>;
141f126890aSEmmanuel Vadot		i2c-mux-idle-disconnect;
142f126890aSEmmanuel Vadot
143f126890aSEmmanuel Vadot		i2c@2 {
144f126890aSEmmanuel Vadot			#address-cells = <1>;
145f126890aSEmmanuel Vadot			#size-cells = <0>;
146f126890aSEmmanuel Vadot			reg = <2>;
147*aa1a8ff2SEmmanuel Vadot			i2c-mux@72 {
148f126890aSEmmanuel Vadot				compatible = "nxp,pca9548";
149f126890aSEmmanuel Vadot				reg = <0x72>;
150f126890aSEmmanuel Vadot				#address-cells = <1>;
151f126890aSEmmanuel Vadot				#size-cells = <0>;
152f126890aSEmmanuel Vadot
153f126890aSEmmanuel Vadot				i2c@7 {
154f126890aSEmmanuel Vadot					#address-cells = <1>;
155f126890aSEmmanuel Vadot					#size-cells = <0>;
156f126890aSEmmanuel Vadot					reg = <7>;
157f126890aSEmmanuel Vadot					at24@50 {
158f126890aSEmmanuel Vadot						compatible = "atmel,24c64";
159f126890aSEmmanuel Vadot						reg = <0x50>;
160f126890aSEmmanuel Vadot						pagesize = <32>;
161f126890aSEmmanuel Vadot						size = <8192>;
162f126890aSEmmanuel Vadot						address-width = <16>;
163f126890aSEmmanuel Vadot					};
164f126890aSEmmanuel Vadot				};
165f126890aSEmmanuel Vadot			};
166f126890aSEmmanuel Vadot		};
167f126890aSEmmanuel Vadot	};
168*aa1a8ff2SEmmanuel Vadot	i2c-mux@71 {
169f126890aSEmmanuel Vadot		compatible = "nxp,pca9543";
170f126890aSEmmanuel Vadot		reg = <0x71>;
171f126890aSEmmanuel Vadot		#address-cells = <1>;
172f126890aSEmmanuel Vadot		#size-cells = <0>;
173f126890aSEmmanuel Vadot		i2c-mux-idle-disconnect;
174f126890aSEmmanuel Vadot	};
175f126890aSEmmanuel Vadot};
176f126890aSEmmanuel Vadot
177f126890aSEmmanuel Vadot&i2c2 {
178f126890aSEmmanuel Vadot	/* SMB_PCIE_STBY_LVC3 */
179*aa1a8ff2SEmmanuel Vadot	i2c-mux@71 {
180f126890aSEmmanuel Vadot		compatible = "nxp,pca9548";
181f126890aSEmmanuel Vadot		reg = <0x71>;
182f126890aSEmmanuel Vadot		#address-cells = <1>;
183f126890aSEmmanuel Vadot		#size-cells = <0>;
184f126890aSEmmanuel Vadot		i2c-mux-idle-disconnect;
185f126890aSEmmanuel Vadot
186f126890aSEmmanuel Vadot		i2c@0 {
187f126890aSEmmanuel Vadot			#address-cells = <1>;
188f126890aSEmmanuel Vadot			#size-cells = <0>;
189f126890aSEmmanuel Vadot			reg = <0>;
190*aa1a8ff2SEmmanuel Vadot			i2c-mux@72 {
191f126890aSEmmanuel Vadot				compatible = "nxp,pca9548";
192f126890aSEmmanuel Vadot				reg = <0x72>;
193f126890aSEmmanuel Vadot				#address-cells = <1>;
194f126890aSEmmanuel Vadot				#size-cells = <0>;
195f126890aSEmmanuel Vadot				i2c@7 {
196f126890aSEmmanuel Vadot					#address-cells = <1>;
197f126890aSEmmanuel Vadot					#size-cells = <0>;
198f126890aSEmmanuel Vadot					reg = <7>;
199f126890aSEmmanuel Vadot					at24@50 {
200f126890aSEmmanuel Vadot						compatible = "atmel,24c64";
201f126890aSEmmanuel Vadot						reg = <0x50>;
202f126890aSEmmanuel Vadot						pagesize = <32>;
203f126890aSEmmanuel Vadot						size = <8192>;
204f126890aSEmmanuel Vadot						address-width = <16>;
205f126890aSEmmanuel Vadot					};
206f126890aSEmmanuel Vadot				};
207f126890aSEmmanuel Vadot			};
208f126890aSEmmanuel Vadot			at24@50 {
209f126890aSEmmanuel Vadot				compatible = "atmel,24c64";
210f126890aSEmmanuel Vadot				reg = <0x50>;
211f126890aSEmmanuel Vadot				pagesize = <32>;
212f126890aSEmmanuel Vadot				size = <8192>;
213f126890aSEmmanuel Vadot				address-width = <16>;
214f126890aSEmmanuel Vadot			};
215f126890aSEmmanuel Vadot		};
216f126890aSEmmanuel Vadot	};
217f126890aSEmmanuel Vadot};
218f126890aSEmmanuel Vadot
219f126890aSEmmanuel Vadot&pwm_tacho {
220f126890aSEmmanuel Vadot	status = "okay";
221f126890aSEmmanuel Vadot	pinctrl-names = "default";
222f126890aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_pwm0_default &pinctrl_pwm1_default
223f126890aSEmmanuel Vadot			 &pinctrl_pwm2_default &pinctrl_pwm3_default
224f126890aSEmmanuel Vadot			 &pinctrl_pwm4_default &pinctrl_pwm5_default
225f126890aSEmmanuel Vadot			 &pinctrl_pwm6_default>;
226f126890aSEmmanuel Vadot
227f126890aSEmmanuel Vadot	fan@0 {
228f126890aSEmmanuel Vadot		reg = <0x00>;
229f126890aSEmmanuel Vadot		aspeed,fan-tach-ch = /bits/ 8 <0x00 0x07>;
230f126890aSEmmanuel Vadot	};
231f126890aSEmmanuel Vadot	fan@1 {
232f126890aSEmmanuel Vadot		reg = <0x01>;
233f126890aSEmmanuel Vadot		aspeed,fan-tach-ch = /bits/ 8 <0x01 0x08>;
234f126890aSEmmanuel Vadot	};
235f126890aSEmmanuel Vadot	fan@2 {
236f126890aSEmmanuel Vadot		reg = <0x02>;
237f126890aSEmmanuel Vadot		aspeed,fan-tach-ch = /bits/ 8 <0x02 0x09>;
238f126890aSEmmanuel Vadot	};
239f126890aSEmmanuel Vadot	fan@3 {
240f126890aSEmmanuel Vadot		reg = <0x03>;
241f126890aSEmmanuel Vadot		aspeed,fan-tach-ch = /bits/ 8 <0x03 0x0A>;
242f126890aSEmmanuel Vadot	};
243f126890aSEmmanuel Vadot	fan@4 {
244f126890aSEmmanuel Vadot		reg = <0x04>;
245f126890aSEmmanuel Vadot		aspeed,fan-tach-ch = /bits/ 8 <0x04 0x0B>;
246f126890aSEmmanuel Vadot	};
247f126890aSEmmanuel Vadot	fan@5 {
248f126890aSEmmanuel Vadot		reg = <0x05>;
249f126890aSEmmanuel Vadot		aspeed,fan-tach-ch = /bits/ 8 <0x05 0x0C>;
250f126890aSEmmanuel Vadot	};
251f126890aSEmmanuel Vadot	fan@6 {
252f126890aSEmmanuel Vadot		reg = <0x06>;
253f126890aSEmmanuel Vadot		aspeed,fan-tach-ch = /bits/ 8 <0x06 0x0D>;
254f126890aSEmmanuel Vadot	};
255f126890aSEmmanuel Vadot};
256