
Hi Pali,
After correcting my MPP configuration in board_early_init, I ran the test again with this patch series. Everything works (upon u-boot startup) : Ethernet, SPI, SATA and USB.
Board: Synology DS116, Armada 385 (out-of-tree u-boot) Tested-by: Tony Dinh mibodhi@gmail.com
Thanks, Tony
On Mon, Jul 25, 2022 at 4:56 AM Pali Rohár pali@kernel.org wrote:
This patch series add support for configuring pin muxing on Armada 38x via device tree properties used by Linux kernel. It extends also mvebu gpio driver to properly set pin function to gpio prior assigning pins and enable gpio and pinmux support on Turris Omnia.
Pali Rohár (8): pinctrl: Add new function pinctrl_generic_set_state_prefix() mvebu: pinctrl: Add Armada 38x driver arm: mvebu: Add gpio-ranges into Armada 38x device tree file pinctrl: Add third argument label for pinctrl_gpio_request() function gpio: mvebu_gpio: Add .request and .rfree methods for Armada 38x gpio: mvebu_gpio: Read number of gpios from DT gpio: mvebu_gpio: Set bank name to mvebu%d arm: mvebu: turris_omnia: Enable a38x pinctrl and gpio support
arch/arm/dts/armada-38x.dtsi | 2 + configs/turris_omnia_defconfig | 4 +- drivers/gpio/mvebu_gpio.c | 11 +- drivers/pinctrl/mvebu/Kconfig | 7 + drivers/pinctrl/mvebu/Makefile | 1 + drivers/pinctrl/mvebu/pinctrl-armada-38x.c | 589 +++++++++++++++++++++ drivers/pinctrl/pinctrl-generic.c | 100 +++- drivers/pinctrl/pinctrl-uclass.c | 3 +- include/dm/pinctrl.h | 5 +- 9 files changed, 699 insertions(+), 23 deletions(-) create mode 100644 drivers/pinctrl/mvebu/pinctrl-armada-38x.c
-- 2.20.1