]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
omap3: sniper: Convert to device-tree control and DM I2C
authorPaul Kocialkowski <contact@paulk.fr>
Mon, 29 Jul 2024 20:44:39 +0000 (22:44 +0200)
committerTom Rini <trini@konsulko.com>
Wed, 7 Aug 2024 00:33:17 +0000 (18:33 -0600)
This converts the sniper board (LG P970) to device-tree control
and DM I2C, both for SPL and U-Boot.

Note that we lose the call to board_mmc_power_init to enable power
for MMC2. This is now expected to take place through proper
regulators, which are not yet available with the twl4030 driver.
The call to twl4030_power_mmc_init is moved to spl_board_init for now.

Signed-off-by: Paul Kocialkowski <contact@paulk.fr>
arch/arm/dts/omap3-sniper-u-boot.dtsi [new file with mode: 0644]
board/lg/sniper/sniper.c
configs/sniper_defconfig

diff --git a/arch/arm/dts/omap3-sniper-u-boot.dtsi b/arch/arm/dts/omap3-sniper-u-boot.dtsi
new file mode 100644 (file)
index 0000000..d467f53
--- /dev/null
@@ -0,0 +1,16 @@
+// SPDX-License-Identifier: GPL-2.0+
+/*
+ * Copyright (C) 2024 Paul Kocialkowski <contact@paulk.fr>
+ */
+
+#include "omap3-u-boot.dtsi"
+
+/ {
+       chosen {
+               stdout-path = &uart3;
+       };
+};
+
+&i2c1 {
+       clock-frequency = <400000>;
+};
index 88d5d08814335a1b86809f99d187bf032daaeee8..9d0959f294e83f2aca5a81347c5171eeca588e9a 100644 (file)
 #include <linux/ctype.h>
 #include <linux/usb/musb.h>
 #include <asm/omap_musb.h>
-#include <asm/arch/mmc_host_def.h>
 #include <asm/arch/sys_proto.h>
 #include <asm/arch/mem.h>
 #include <asm/io.h>
-#include <ns16550.h>
 #include <twl4030.h>
 #include "sniper.h"
 
@@ -30,18 +28,6 @@ const omap3_sysinfo sysinfo = {
        .nand_string = "MMC"
 };
 
-static const struct ns16550_plat serial_omap_plat = {
-       .base = OMAP34XX_UART3,
-       .reg_shift = 2,
-       .clock = V_NS16550_CLK,
-       .fcr = UART_FCR_DEFVAL,
-};
-
-U_BOOT_DRVINFO(sniper_serial) = {
-       .name = "ns16550_serial",
-       .plat = &serial_omap_plat
-};
-
 #if defined(CONFIG_USB_MUSB_HOST) || defined(CONFIG_USB_MUSB_GADGET)
 static struct musb_hdrc_config musb_config = {
        .multipoint = 1,
@@ -77,6 +63,11 @@ void get_board_mem_timings(struct board_sdrc_timings *timings)
        timings->rfr_ctrl = SDP_3430_SDRC_RFR_CTRL_200MHz;
        timings->mr = MICRON_V_MR_165;
 }
+
+void spl_board_init(void)
+{
+       twl4030_power_mmc_init(1);
+}
 #endif
 
 int board_init(void)
@@ -188,13 +179,3 @@ int fastboot_set_reboot_flag(enum fastboot_reboot_reason reason)
 
        return omap_reboot_mode_store("b");
 }
-
-int board_mmc_init(struct bd_info *bis)
-{
-       return omap_mmc_init(1, 0, 0, -1, -1);
-}
-
-void board_mmc_power_init(void)
-{
-       twl4030_power_mmc_init(1);
-}
index 5c6f9328bf8b256f2e45529d009da383564092da..06e9b2ae2faf1979c71c9090b754d7020560b2fb 100644 (file)
@@ -1,12 +1,14 @@
 CONFIG_ARM=y
 CONFIG_ARCH_OMAP2PLUS=y
 CONFIG_SYS_MALLOC_F_LEN=0x4000
+CONFIG_DEFAULT_DEVICE_TREE="ti/omap/omap3-sniper"
 CONFIG_TARGET_SNIPER=y
 CONFIG_SPL_SYS_MALLOC_F_LEN=0x400
 CONFIG_SPL=y
 CONFIG_DISTRO_DEFAULTS=y
 CONFIG_BOOTCOMMAND="setenv boot_mmc_part ${kernel_mmc_part}; if test reboot-${reboot-mode} = reboot-r; then echo recovery; setenv boot_mmc_part ${recovery_mmc_part}; fi; if test reboot-${reboot-mode} = reboot-b; then echo fastboot; fastboot 0; fi; part start mmc ${boot_mmc_dev} ${boot_mmc_part} boot_mmc_start; part size mmc ${boot_mmc_dev} ${boot_mmc_part} boot_mmc_size; mmc dev ${boot_mmc_dev}; mmc read ${kernel_addr_r} ${boot_mmc_start} ${boot_mmc_size} && bootm ${kernel_addr_r};"
 CONFIG_SYS_CONSOLE_IS_IN_ENV=y
+CONFIG_SPL_BOARD_INIT=y
 CONFIG_SPL_SYS_MALLOC_SIMPLE=y
 CONFIG_SPL_SYS_MALLOC=y
 CONFIG_SPL_SYS_MALLOC_SIZE=0x800000
@@ -19,12 +21,13 @@ CONFIG_CMD_GPIO=y
 CONFIG_CMD_I2C=y
 CONFIG_CMD_MMC=y
 # CONFIG_CMD_SETEXPR is not set
+CONFIG_OF_CONTROL=y
+CONFIG_SPL_OF_CONTROL=y
+CONFIG_OF_UPSTREAM=y
 CONFIG_ENV_OVERWRITE=y
 CONFIG_SYS_RELOC_GD_ENV_ADDR=y
-CONFIG_SYS_I2C_LEGACY=y
-CONFIG_SPL_SYS_I2C_LEGACY=y
-CONFIG_SYS_I2C_SPEED=400000
+CONFIG_SPL_DM=y
+CONFIG_DM_I2C=y
+CONFIG_I2C_SET_DEFAULT_BUS_NUM=y
 CONFIG_TWL4030_INPUT=y
 CONFIG_MMC_OMAP_HS=y
-CONFIG_CONS_INDEX=3
-CONFIG_OF_LIBFDT=y