summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-06-22colibri_imx6: boot env configuration updatesIgor Opaniuk
1. Drop legacy emmcboot wrapper from env. 2. Change the "boot try" order. Default one is: SD -> eMMC -> USB -> DHCP 3. Drop DFU defines Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
2020-06-22colibri_imx7: boot env configuration updatesIgor Opaniuk
1. Drop legacy emmcboot wrapper from env. 2. Change the "boot try" order. Default one is: SD -> eMMC -> USB -> DHCP 3. Drop DFU defines Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
2020-06-22apalis_imx6: boot env configuration updatesIgor Opaniuk
1. Drop legacy emmcboot wrapper from env. 2. Change the "boot try" order. Default one is: SD -> eMMC -> USB -> DHCP 3. Drop DFU defines Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
2020-06-22toradex: imx: enable BOOTCOUNT featureIgor Opaniuk
This introduces automatic boot counter that increases after every reset.After a power-on reset, it will be initialized with 1, and each reboot will increment the value by 1. By default it's disabled if bootlimit isn't set. To enable this feature you have set bootcount limit ("bootlimit"), alternate boot action ("altbootcmd") that will be performed if the new value of bootcount exceeds the value of bootlimit, and "upgrade_available" to let U-Boot automatically increase and save the counter value after every reset: > setenv bootlimit 5 > setenv upgrade_available 1 > setenv altbootcmd "bootm ..." In case the bootlimit exceeds, the message will be shown and albootcmd executed: Warning: Bootlimit (5) exceeded. Using altbootcmd. To reset bootcount run: > bootcount reset Print current value: > bootcount print Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
2020-06-22apalis-tk1: fix setting fdtfile valueIgor Opaniuk
s/fdt-module/fdt_module/g, as we don't use dash in fdt_file anymore. Fixes: 4c63a601("apalis-tk1: support v1.2 hardware revision") Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
2020-06-22apalis-tk1: enable distrobootIgor Opaniuk
1. Use distro_bootcmd as default boot command instead of legacy emmcboot wrapper. 2. Drop emmcboot and sdboot wrappers. 3. Provide proper boot order for Distro Boot. Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
2020-06-22configs/colibri_vf.h: drop sdboot in favour of distro_bootcmdMax Krummenacher
The distro bootscript uses kernel_image to get the file name of the kernel, so change that variable name. UBI boot has precedence in the default boot command. If one wants to boot from SD with a working NAND installation stop in U-Boot and enter: setenv fdtfile ${soc}-colibri-${fdt_board}.dtb && run distro_bootcmd Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-06-22colibri_vf_defconfig: enable part cmdMax Krummenacher
This allows to boot from SD/USB with passing the rootfs partition via UUID. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-06-22colibri-imx6ull/imx7: define bootubipart for distro bootStefan Agner
When using distro boot to boot from UBI volumes the boot partition has been hardcoded to "UBI" (capital letters). However, our default MTD layout uses "ubi" (lower case letter). Define "ubi" as the default UBI partition for distro boot for Toradex. This allows to use distro boot without having to redefine the MTD partition layout which is useful for TorizonCore. Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
2020-06-22colibri_imx7: add addresses required for distro bootStefan Agner
Define addresses required for full distro boot support. Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
2020-06-22colibri-imx8x: declare consoleargsOleksandr Suvorov
Store all console-related kernel parameters in dedicated variable. Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
2020-06-22apalis/colibri-imx8: re-enable CONFIG_IMX_SCU_THERMALMax Krummenacher
This got dropped by a global 'make savedefconfig' resync as required patches are still in flight. Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
2020-06-22apalis-imx8: enable of_system_setupMarcel Ziswiler
Enable CONFIG_OF_SYSTEM_DEFAULT for Apalis iMX8. Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2020-06-22ARM: dts: imx6qdl-sabresd: Fix AR8031 phy-modeFabio Estevam
As per kernel commit 0672d22a1924 ("ARM: dts: imx: Fix the AR803X phy-mode) the correct phy-mode should be "rgmii-id", so fix it accordingly to fix the Ethernet regression. This problem has been exposed by commit: commit 13114f38e2ccea9386726d8b9831dfc310589548 Author: Vladimir Oltean <vladimir.oltean@nxp.com> Date: Thu May 7 00:11:51 2020 +0200 phy: atheros: Explicitly disable RGMII delays To eliminate any doubts about the out-of-reset value of the PHY, that the driver previously relied on. If bisecting shows that this commit breaks your board you probably have a wrong PHY interface mode. You probably want the PHY_INTERFACE_MODE_RGMII_RXID or PHY_INTERFACE_MODE_RGMII_ID mode. Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com> Acked-by: Joe Hershberger <joe.hershberger@ni.com> Signed-off-by: Fabio Estevam <festevam@gmail.com>
2020-06-22ARM: dts: imx6qdl-sabreauto: Fix AR8031 phy-modeFabio Estevam
As per kernel commit 0672d22a1924 ("ARM: dts: imx: Fix the AR803X phy-mode) the correct phy-mode should be "rgmii-id", so fix it accordingly to fix the Ethernet regression. This problem has been exposed by commit: commit 13114f38e2ccea9386726d8b9831dfc310589548 Author: Vladimir Oltean <vladimir.oltean@nxp.com> Date: Thu May 7 00:11:51 2020 +0200 phy: atheros: Explicitly disable RGMII delays To eliminate any doubts about the out-of-reset value of the PHY, that the driver previously relied on. If bisecting shows that this commit breaks your board you probably have a wrong PHY interface mode. You probably want the PHY_INTERFACE_MODE_RGMII_RXID or PHY_INTERFACE_MODE_RGMII_ID mode. Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com> Acked-by: Joe Hershberger <joe.hershberger@ni.com> Fix the phy-mode accordingly to fix the regression. Signed-off-by: Fabio Estevam <festevam@gmail.com>
2020-06-22mx6cuboxi: Convert to DM_ETHFabio Estevam
Migration to DM_ETH is mandatory, so convert mx6cuboxi to Ethernet Driver Model. This also brings the benefit of restoring Ethernet functionality. Reported-by: Tom Rini <trini@konsulko.com> Signed-off-by: Fabio Estevam <festevam@gmail.com> Tested-by: Tom Rini <trini@konsulko.com>
2020-06-22ARM: dts: imx6qdl-sr-som: Sync with kernel 5.8-rc1Fabio Estevam
Sync the device tree with 5.8-rc1. It basically contains the following extra kernel commit: commit 86b08bd5b99480b79a25343f24c1b8c4ddcb5c09 Author: Russell King <rmk+kernel@armlinux.org.uk> Date: Wed Apr 15 16:44:17 2020 +0100 ARM: dts: imx6-sr-som: add ethernet PHY configuration Add ethernet PHY configuration ahead of removing the quirk that configures the clocking mode for the PHY. The RGMII delay is already set correctly. Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk> Reviewed-by: Fabio Estevam <festevam@gmail.com> Signed-off-by: Shawn Guo <shawnguo@kernel.org> , which passes the 'qca,clk-out-frequency' property and it is important to specify the correct frequency generated by the AR8035. Signed-off-by: Fabio Estevam <festevam@gmail.com> Tested-by: Tom Rini <trini@konsulko.com>
2020-06-22net: fec: Allow the PHY node to be retrievedFabio Estevam
As we move towards driver model, it is required to let the FEC driver know how to properly deal with an Ethernet PHY subnode in the device tree. For example: &fec { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_microsom_enet_ar8035>; phy-handle = <&phy>; phy-mode = "rgmii-id"; phy-reset-duration = <2>; phy-reset-gpios = <&gpio4 15 GPIO_ACTIVE_LOW>; status = "okay"; mdio { #address-cells = <1>; #size-cells = <0>; phy: ethernet-phy@0 { reg = <0>; qca,clk-out-frequency = <125000000>; }; }; }; Currently the PHY node pointer is incorrectly associated with the Ethernel controller instead of the PHY node itself. This causes the PHY properties, such as "qca,clk-out-frequency" in the example above to not get parsed. Fix this problem by populating the phy_of_node node. Suggested-by: Vladimir Oltean <vladimir.oltean@nxp.com> Signed-off-by: Fabio Estevam <festevam@gmail.com> Tested-by: Tom Rini <trini@konsulko.com>
2020-06-22phy: atheros: ar8035: Fix clock output calculationFabio Estevam
The clock ouput frequency is calculated incorrectly for AR8035 due to wrong masking of priv->clk_25m_reg and priv->clk_25m_mask. This same issue has been already fixed in the kernel by: commit b1f4c209d84057b6d40b939b6e4404854271d797 Author: Oleksij Rempel <o.rempel@pengutronix.de> Date: Wed Apr 1 11:57:32 2020 +0200 net: phy: at803x: fix clock sink configuration on ATH8030 and ATH8035 The masks in priv->clk_25m_reg and priv->clk_25m_mask are one-bits-set for the values that comprise the fields, not zero-bits-set. This patch fixes the clock frequency configuration for ATH8030 and ATH8035 Atheros PHYs by removing the erroneous "~". To reproduce this bug, configure the PHY with the device tree binding "qca,clk-out-frequency" and remove the machine specific PHY fixups. Fixes: 2f664823a47021 ("net: phy: at803x: add device tree binding") Signed-off-by: Oleksij Rempel <o.rempel@pengutronix.de> Reported-by: Russell King <rmk+kernel@armlinux.org.uk> Reviewed-by: Russell King <rmk+kernel@armlinux.org.uk> Tested-by: Russell King <rmk+kernel@armlinux.org.uk> Signed-off-by: David S. Miller <davem@davemloft.net> Apply the same fix in the U-Boot driver. Tested on a i.MX6 Hummingboard. Signed-off-by: Fabio Estevam <festevam@gmail.com> Reviewed-by: Michael Walle <michael@walle.cc> Tested-by: Tom Rini <trini@konsulko.com>
2020-06-20Merge https://gitlab.denx.de/u-boot/custodians/u-boot-shTom Rini
2020-06-19Merge tag 'efi-2020-07-rc5-2' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-efi Pull request for UEFI sub-system for efi-2020-07-rc5 (2) Fix memory reservations: do not use random bytes from the stack.
2020-06-19Merge tag 'u-boot-stm32-20200619' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-stm - fix SD card cart detect on DHCOM and ST boards
2020-06-19Merge https://gitlab.denx.de/u-boot/custodians/u-boot-tegraTom Rini
2020-06-19ARM: dts: stm32: Reinstate card detect behavior on ST boardsPatrick Delaunay
The cd-gpios with (GPIO_ACTIVE_LOW | GPIO_PULL_UP) gpio is thus far unsupported, reinstate the old cd-gpios behavior until this handling is fully implemented. This avoid potential issue for SDCard boot: the card detect fails with floating gpio. Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com> Reviewed-by: Patrice Chotard <patrice.chotard@st.com>
2020-06-19ARM: dts: stm32: Reinstate card detect behavior on DHSOMMarek Vasut
The cd-gpios with (GPIO_ACTIVE_LOW | GPIO_PULL_UP) gpio is thus far unsupported, reinstate the old cd-gpios behavior until this handling is fully implemented. This permits the DHSOM to boot from SD again, without this patch the card detect fails. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Patrick Delaunay <patrick.delaunay@st.com> Cc: Patrice Chotard <patrice.chotard@st.com> Reviewed-by: Patrick Delaunay <patrick.delaunay@st.com>
2020-06-19cmd: bootefi: Honor the address & size cells properties correctlyAtish Patra
fdtdec_get_addr_size reads the uses a fixed value for address & size cell properties which may not be correct always. Use the auto variant of the function which automatically reads #address-cells & #size-cells from parent and uses to read the "reg" property. Signed-off-by: Atish Patra <atish.patra@wdc.com> On 32 bit systems fdt_addr_t may be 4 bytes long but size is defined as u64. Avoid filling the upper 4 bytes of the sizep parameter of fdtdec_get_addr_size_auto_parent() with random bytes from the stack by defining a separate variable fdt_size. Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2020-06-18t210: Nano: Add NVME supportTom Warren
This allows Nano to use the key M.2 on the CVB to connect and use a M.2 NVMe SSD stick. Works on my Nano B00, WD SN750 NVMe SSD shows up w/'nvme' commands. Will add booting from NVMe via distro cmds in a future patch. Signed-off-by: Tom Warren <twarren@nvidia.com>
2020-06-18Merge tag 'fixes-for-v2020.07-rc4' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-video - fix stdout in default environment for apalis_imx6, colibri_imx6 and cm_fx6 boards
2020-06-18colibri_t20: change maintainerIgor Opaniuk
Take over maintainership for Colibri T20 module. Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com> Acked-by: Lucas Stach <dev@lynxeye.de>
2020-06-18ARM: tegra: Enable PSCI support for Tegra210 and Tegra186Jon Hunter
The PSCI nodes are currently not populated for the Tegra210 and Tegra186 devices. This prevents the PSCI driver from being able to identify the PSCI method used by these devices and causes the probe of the PSCI driver to fail. Since commit 81ea00838c68 ("efi_loader: PSCI reset and shutdown") was added, which moves the PSCI EFI system reset handler into the PSCI driver, this has prevented the EFI system reset from working for Tegra210 and Tegra186. Therefore, populating these nodes is necessary to fix the EFI system reset for Tegra210 and Tegra186. Signed-off-by: Jon Hunter <jonathanh@nvidia.com> Tested-by: Peter Robinson <pbrobinson@gmail.com>
2020-06-18firmware: PSCI: Fix PSCI support for OF live treesJon Hunter
When CONFIG_OF_LIVE is enabled, dev_of_offset() cannot be used and if used returns an invalid offset. This causes the call to fdt_stringlist_get() in the psci_probe() to fail to read the 'method' property from the PSCI node for the device and hence prevents PSCI from working. Fix this by using the ofnode_read_string() API instead of the fdt_stringlist_get() because this will handle reading the property both when CONFIG_OF_LIVE is enabled or disabled. Due to the above problem and since commit 81ea00838c68 ("efi_loader: PSCI reset and shutdown") was added, the EFI system reset has been broken for Tegra210 and Tegra196 platforms. This also fixes the EFI system reset for these Tegra platforms. Signed-off-by: Jon Hunter <jonathanh@nvidia.com> Tested-by: Peter Robinson <pbrobinson@gmail.com>
2020-06-18Azure/GitLab: Move to latest Docker imageTom Rini
- Add guestfstools, efitools - Latest Ubuntu/bionic snapshot Signed-off-by: Tom Rini <trini@konsulko.com>
2020-06-18ARM: rmobile: Increase PHY auto-negotiation timeout to 20sMarek Vasut
The ethernet PHY on all known Gen3 boards takes a while to come out of reset, increase the auto-negotiation timeout to prevent it from timing out in case the ethernet is used right after the board was reset. Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com> Cc: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
2020-06-18colibri_imx6: fix video stdout in default environmentAnatolij Gustschin
After migration to DM 'vga' name is not longer supported, change it to 'vidconsole' in the default environment. Signed-off-by: Anatolij Gustschin <agust@denx.de> Acked-by: Igor Opaniuk <igor.opaniuk@toradex.com>
2020-06-18apalis_imx6: fix video stdout in default environmentAnatolij Gustschin
After migration to DM 'vga' name is not longer supported, change it to 'vidconsole' in the default environment. Signed-off-by: Anatolij Gustschin <agust@denx.de> Acked-by: Igor Opaniuk <igor.opaniuk@toradex.com>
2020-06-18cm_fx6: fix video stdout in default environmentAnatolij Gustschin
After migration to DM 'vga' name is not longer supported, change it to 'vidconsole' in the default environment. Signed-off-by: Anatolij Gustschin <agust@denx.de> Cc: Nikita Kiryanov <nikita@compulab.co.il>
2020-06-18Merge tag 'u-boot-amlogic-20200618' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-amlogic - move amlogic board documentation into doc/board in RsT format
2020-06-18board: amlogic: add board doc files to MAINTAINERSNeil Armstrong
Add the recently added reStructuredText board documentation in the appropriate MAINTAINERS files. Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
2020-06-18board: amlogic: move boards doc into doc/board/amlogicNeil Armstrong
Move the natural text Amlogic board README files to doc/board/amlogic into reStructuredText and : - add reStructuredText markup for bash code - fix secondary titles markup - move board support into global support matrix Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
2020-06-16Merge tag 'u-boot-stm32-20200616' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-stm - fix boot with OP-TEE for stm32mp15 boards
2020-06-16dts: ARM: stm32mp15: add OP-TEE node in u-boot DTSIEtienne Carriere
Add OP-TEE firmware node in stm32mp15 U-Boot DTSI. This node is needed since commit [1] that changed U-Boot/stm32mp15 to detect OP-TEE availability by probing the resource instead of relying on U-Boot configuration. The software sequence implemented by [1] is fine but U-Boot DTS/DTSI files were not updated accordingly since, hence OP-TEE presence is never detected by U-Boot, preventing Linux kernel from using OP-TEE resources. For consistency and to synchronize stm32mp15 DTSI files (excluding U-Boot specific DTSI files) with the Linux kernel ones, this change also moves the OP-TEE reserved memory nodes from board generic DTSI files to U-Boot specific board DTSI files. Link: [1] commit 43df0a159df6 ("stm32mp1: dynamically detect op-tee presence") Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com> Reviewed-by: Patrice Chotard <patrice.chotard@st.com>
2020-06-16board: stm32mp1: fix handling of DT OP-TEE reserved memory nodesEtienne Carriere
Fix the sequence in stm32mp1 fdt.c that disables OP-TEE resources defined in FDT when U-boot detects OP-TEE firmware is not present. Before this change, helper function stm32_fdt_disable_optee() set property status to "disabled" for the OP-TEE reserved memory nodes but this has no impact since Linux kernel does not consider the status property for reserved-memory subnodes. This change make U-Boot to attempt to delete the node instead. Fixes: 4a1b975dac02 ("board: stm32mp1: reserve memory for OP-TEE in device tree") Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com> Reviewed-by: Patrice Chotard <patrice.chotard@st.com>
2020-06-15Merge tag 'efi-2020-07-rc5' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-efi Pull request for UEFI sub-system for efi-2020-07-rc5 Use correct printf code in efi_image_parse(). Add random number generation to HTML documentation.
2020-06-15regulator: fix: enable gpio when requestedMark Kettenis
The fix in commit b7adcdd073c0 has the side-effect that the regulator will be disabled when requesting the relevant gpio in regulator_common_ofdata_to_platdata() and enabled in regulator_pre_probe() when the regulator was already enabled. This leads to a short interruption in the 3.3V power to the PCIe slot on the firefly-rk3399 which makes an ADATA SX8000NP NVMe SSD unhappy. Fix this by setting the GPIOD_IS_OUT_ACTIVE flag again when the 'regulator-boot-on' property is set, but check for this property explicitly instead of relying on the "boot_on" member of the uclass platdata. Signed-off-by: Mark Kettenis <kettenis@openbsd.org> Tested-by: Patrice Chotard <patrice.chotard@st.com>
2020-06-15Merge branch '2020-06-15-misc-bugfixes'Tom Rini
- Assorted bug fixes
2020-06-15env: Kconfig: cosmetics: update comment for SYS_RELOC_GD_ENV_ADDRPatrick Delaunay
Update the comment for SYS_RELOC_GD_ENV_ADDR as gd->env_addr is updated in board_r.c::initr_reloc_global_data() under the compilation flags CONFIG_SYS_RELOC_GD_ENV_ADDR Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2020-06-15config: qemu: increase SYS_MALLOC_F_LENHeinrich Schuchardt
Several configutation options require additional memory before relocation: * CONSOLE_RECORD * LOG * RSA The current default of 0x400 is too small to encompass them all. Increase the value of SYS_MALLOC_F_LEN to 0x2000 for ARCH_QEMU. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
2020-06-15Revert "lib: Improve _parse_integer_fixup_radix base 16 detection"Sean Anderson
This reverts commit 0486497e2b5f4d36fa968a1a60fea358cbf70b65. The strtoul has well-defined semantics. It is defined by the C standard and POSIX. To quote the relevant section of the man pages, > If base is zero or 16, the string may then include a "0x" prefix, and the > number will be read in base 16; otherwise, a zero base is taken as 10 > (decimal) unless the next character is '0', in which case it is taken as > 8 (octal). Keeping these semantics is important for several reasons. First, it is very surprising for standard library functions to behave differently than usual. Every other implementation of strtoul has different semantics than the implementation in U-Boot at the moment. Second, it can result in very surprising results from small changes. For example, changing the string "1f" to "20" causes the parsed value to *decrease*. Forcing use of the "0x" prefix to specify hexidecimal numbers is a feature, not a bug. Lastly, this is slightly less performant, since the entire number is parsed twice. This fixes the str_simple_strtoul test failing with test/str_ut.c:29, run_strtoul(): expect_val == val: Expected 0x44b (1099), got 0x1099ab (1087915) test/str_ut.c:46, str_simple_strtoul(): 0 == run_strtoul(uts, str2, 0, 1099, 4): Expected 0x0 (0), got 0x1 (1) Signed-off-by: Sean Anderson <seanga2@gmail.com> CC: Michal Simek <michal.simek@xilinx.com> CC: Shiril Tichkule <shirilt@xilinx.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2020-06-15trivial: Fix booot occurencesMichal Simek
s/booot/boot/g The first ase is booot instead of boot and second u-booot instead of u-boot. Signed-off-by: Michal Simek <michal.simek@xilinx.com> Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
2020-06-15optee: fix copy of optee reserved-memory nodeEtienne Carriere
Fix the loop that parses FDT for a reserved memory node named "optee". Before this change, if at least one subnode was found in the reserved-memory node, the function endlessly looped since instruction continue returned back in the loop without updating variable subnode. This change fixes the issue by using a for loop. Fixes: 6ccb05eae01b ("image: fdt: copy possible optee nodes to a loaded devicetree") Signed-off-by: Etienne Carriere <etienne.carriere@linaro.org> Signed-off-by: Patrick Delaunay <patrick.delaunay@st.com>