In my ongoing effort to get rid of LK (Qualcomm's bootloader) that runs before U-boot, I found that there were some problems with the uart driver of Snapdragon. It appears that the uart only worked because the initialization was previously done by LK.
While fixing, I also introduced a new pinctrl driver for snapdragon (currently only enabled for APQ8016). the pinctrl driver is used for muxing the uart pins and configure the pins IO properties. Ramon Fried (7): db820c: set clk node to be probed before relocation serial: serial_msm: fail probe if settings clocks fails serial: serial_msm: initialize uart only before relocation mach-snapdragon: Fix UART clock flow mach-snapdragon: Introduce pinctrl driver db410: added pinctrl node and serial bindings serial: serial_msm: added pinmux & config arch/arm/dts/dragonboard410c.dts | 14 ++ arch/arm/dts/dragonboard820c-uboot.dtsi | 14 ++ arch/arm/mach-snapdragon/Makefile | 2 + arch/arm/mach-snapdragon/clock-apq8016.c | 23 ++- arch/arm/mach-snapdragon/clock-apq8096.c | 4 +- arch/arm/mach-snapdragon/clock-snapdragon.c | 17 ++- arch/arm/mach-snapdragon/clock-snapdragon.h | 9 +- .../mach-snapdragon/include/mach/sysmap-apq8016.h | 1 + arch/arm/mach-snapdragon/pinctrl-apq8016.c | 162 +++++++++++++++++++++ arch/arm/mach-snapdragon/pinctrl-snapdragon.c | 118 +++++++++++++++ arch/arm/mach-snapdragon/pinctrl-snapdragon.h | 21 +++ configs/dragonboard410c_defconfig | 5 + drivers/serial/serial_msm.c | 30 +++- include/dt-bindings/pinctrl/pinctrl-snapdragon.h | 22 +++ 14 files changed, 423 insertions(+), 19 deletions(-) create mode 100644 arch/arm/mach-snapdragon/pinctrl-apq8016.c create mode 100644 arch/arm/mach-snapdragon/pinctrl-snapdragon.c create mode 100644 arch/arm/mach-snapdragon/pinctrl-snapdragon.h create mode 100644 include/dt-bindings/pinctrl/pinctrl-snapdragon.h -- 2.14.1 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot