From patchwork Mon Mar 19 19:47:06 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jagan Teki X-Patchwork-Id: 887850 X-Patchwork-Delegate: sbabic@denx.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=amarulasolutions.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=amarulasolutions.com header.i=@amarulasolutions.com header.b="Jl4WKk+0"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 404mnx3Zt1z9sVX for ; Tue, 20 Mar 2018 06:48:21 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id 12AA1C21C29; Mon, 19 Mar 2018 19:48:00 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=RCVD_IN_DNSWL_BLOCKED, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 62DACC21E42; Mon, 19 Mar 2018 19:47:55 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 5F0E3C21E26; Mon, 19 Mar 2018 19:47:41 +0000 (UTC) Received: from mail-pl0-f66.google.com (mail-pl0-f66.google.com [209.85.160.66]) by lists.denx.de (Postfix) with ESMTPS id BECD3C21E13 for ; Mon, 19 Mar 2018 19:47:36 +0000 (UTC) Received: by mail-pl0-f66.google.com with SMTP id m22-v6so10898597pls.5 for ; Mon, 19 Mar 2018 12:47:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=zvCMsf1Ie+8cehnhglsvWMCasqYGMYTj40t8eZwk9j0=; b=Jl4WKk+0X2ZDG/poc1bnUi2IxZ5M7wRiGJ4fppOgKU/+HqyTEVgB91KSbuY9MzqY4w tNJoT+Sba1YdQex3S0jPp8fKVk3MgtdM7Q10pqiWCotvQ2NWz9XLsFO2RmwSWkDXBwhP ZgjAdPidg0VMOm013Ab8Ew4F7QW9FGbpy8joA= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=zvCMsf1Ie+8cehnhglsvWMCasqYGMYTj40t8eZwk9j0=; b=hUQKGA4BK4ZaXQMVHOMkjy4GfPrIEgDiK8L/ze8yB84cgK208uI19MPswSVh/ZTYoG T2Zedq0bIJX9y/auqX7Y+FzLIdAvc9LeG5U5AZLAGzXMPTnCPLlGG6vj4IyLc+TcpR1x EUDjHvYi1QfuVOouNHUFGyBaHccl0HE9sODXSX5aO2bow7m9um4csiZ+oAQE2saKGDRw Y+CUOTWS7XdZM9ktMCll5lSP5yLQMoeyDCRJ3VEzk5Ya1vQSzdFu8VWgTYpAW8IXjXbn EMub2P/7d2ed98hpPl3yf+YbIyxIP6iOrU63+5OocNjrG6tablA9Hs3neCn25k3kZfj9 EA2w== X-Gm-Message-State: AElRT7H+8ooAXdx6BVTKGrf1u6fa+LlegdBuYw6dhMH2va0fGbhekkwx V9E6XyE5M9B9vN0X2cnNmVHfvA== X-Google-Smtp-Source: AG47ELs3tqSoW5ALBViGUHbZAwe06+Lk4uZSU23c4TtqwTOhgvKnoyWTnKGvVlbnkeU8Vrt2Y2PKjw== X-Received: by 2002:a17:902:820a:: with SMTP id x10-v6mr3169653pln.105.1521488855044; Mon, 19 Mar 2018 12:47:35 -0700 (PDT) Received: from localhost.localdomain ([115.97.190.51]) by smtp.gmail.com with ESMTPSA id a14sm1083082pff.75.2018.03.19.12.47.30 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 19 Mar 2018 12:47:34 -0700 (PDT) From: Jagan Teki To: Stefano Babic Date: Tue, 20 Mar 2018 01:17:06 +0530 Message-Id: <20180319194711.23323-2-jagan@amarulasolutions.com> X-Mailer: git-send-email 2.14.3 In-Reply-To: <20180319194711.23323-1-jagan@amarulasolutions.com> References: <20180319194711.23323-1-jagan@amarulasolutions.com> Cc: Shyam Saini , u-boot@lists.denx.de, "davide . bonfanti" , Andrea CORTESE , Fabio maggi , Fabio Estevam , Simone CIANNI , Raffaele RECALCATI , lamiaposta71@gmail.com Subject: [U-Boot] [PATCH 1/6] i.MX6: board: Add BTicino i.MX6DL Mamoj initial support X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" Add initial support for i.MX6DL BTicino Mamoj board. Mamoh board added: - SPL - SPL_DM - SPL_OF_CONTROL - DM for U-Boot proper - OF_CONTROL for U-Boot proper - eMMC - FEC - Boot from eMMC - Boot from USB SDP Signed-off-by: Simone CIANNI Signed-off-by: Raffaele RECALCATI Signed-off-by: Jagan Teki --- arch/arm/dts/imx6dl-mamoj.dts | 85 ++++++++++++++++++++++ arch/arm/mach-imx/mx6/Kconfig | 28 ++++++++ board/bticino/mamoj/Kconfig | 12 ++++ board/bticino/mamoj/MAINTAINERS | 9 +++ board/bticino/mamoj/Makefile | 8 +++ board/bticino/mamoj/README | 60 ++++++++++++++++ board/bticino/mamoj/mamoj.c | 27 +++++++ board/bticino/mamoj/spl.c | 154 ++++++++++++++++++++++++++++++++++++++++ configs/imx6dl_mamoj_defconfig | 39 ++++++++++ include/configs/imx6dl-mamoj.h | 88 +++++++++++++++++++++++ 10 files changed, 510 insertions(+) create mode 100644 arch/arm/dts/imx6dl-mamoj.dts create mode 100644 board/bticino/mamoj/Kconfig create mode 100644 board/bticino/mamoj/MAINTAINERS create mode 100644 board/bticino/mamoj/Makefile create mode 100644 board/bticino/mamoj/README create mode 100644 board/bticino/mamoj/mamoj.c create mode 100644 board/bticino/mamoj/spl.c create mode 100644 configs/imx6dl_mamoj_defconfig create mode 100644 include/configs/imx6dl-mamoj.h diff --git a/arch/arm/dts/imx6dl-mamoj.dts b/arch/arm/dts/imx6dl-mamoj.dts new file mode 100644 index 0000000000..579a72ace2 --- /dev/null +++ b/arch/arm/dts/imx6dl-mamoj.dts @@ -0,0 +1,85 @@ +// SPDX-License-Identifier: (GPL-2.0+ OR MIT) +/* + * Copyright (C) 2018 BTicino + * Copyright (C) 2018 Amarula Solutions B.V. + */ + +/dts-v1/; + +#include "imx6dl.dtsi" + +/ { + model = "BTicino i.MX6DL Mamoj board"; + compatible = "bticino,imx6dl-mamoj", "fsl,imx6dl"; +}; + +&fec { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_enet>; + phy-mode = "mii"; + status = "okay"; +}; + +&uart3 { + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_uart3>; + status = "okay"; +}; + +&usdhc3 { + u-boot,dm-spl; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_usdhc3>; + bus-width = <8>; + non-removable; + keep-power-in-suspend; + status = "okay"; +}; + +&iomuxc { + pinctrl_enet: enetgrp { + fsl,pins = < + MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0 + MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0 + MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x1b0b1 + MX6QDL_PAD_ENET_TXD0__ENET_TX_DATA0 0x1b0b0 + MX6QDL_PAD_ENET_TXD1__ENET_TX_DATA1 0x1b0b0 + MX6QDL_PAD_KEY_ROW2__ENET_TX_DATA2 0x1b0b0 + MX6QDL_PAD_KEY_ROW0__ENET_TX_DATA3 0x1b0b0 + MX6QDL_PAD_ENET_TX_EN__ENET_TX_EN 0x1b0b0 + MX6QDL_PAD_GPIO_19__ENET_TX_ER 0x1b0b0 + MX6QDL_PAD_GPIO_18__ENET_RX_CLK 0x1b0b1 + MX6QDL_PAD_ENET_RXD0__ENET_RX_DATA0 0x1b0b0 + MX6QDL_PAD_ENET_RXD1__ENET_RX_DATA1 0x1b0b0 + MX6QDL_PAD_KEY_COL2__ENET_RX_DATA2 0x1b0b0 + MX6QDL_PAD_KEY_COL0__ENET_RX_DATA3 0x1b0b0 + MX6QDL_PAD_ENET_CRS_DV__ENET_RX_EN 0x1b0b0 + MX6QDL_PAD_ENET_RX_ER__ENET_RX_ER 0x1b0b0 + MX6QDL_PAD_KEY_COL3__ENET_CRS 0x1b0b0 + MX6QDL_PAD_KEY_ROW1__ENET_COL 0x1b0b0 + >; + }; + + pinctrl_uart3: uart3grp { + fsl,pins = < + MX6QDL_PAD_EIM_D24__UART3_TX_DATA 0x1b0b1 + MX6QDL_PAD_EIM_D25__UART3_RX_DATA 0x1b0b1 + >; + }; + + pinctrl_usdhc3: usdhc3grp { + u-boot,dm-spl; + fsl,pins = < + MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059 + MX6QDL_PAD_SD3_CLK__SD3_CLK 0x10059 + MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x17059 + MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17059 + MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059 + MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059 + MX6QDL_PAD_SD3_DAT4__SD3_DATA4 0x17059 + MX6QDL_PAD_SD3_DAT5__SD3_DATA5 0x17059 + MX6QDL_PAD_SD3_DAT6__SD3_DATA6 0x17059 + MX6QDL_PAD_SD3_DAT7__SD3_DATA7 0x17059 + >; + }; +}; diff --git a/arch/arm/mach-imx/mx6/Kconfig b/arch/arm/mach-imx/mx6/Kconfig index d4ce38db8d..c6163d0d12 100644 --- a/arch/arm/mach-imx/mx6/Kconfig +++ b/arch/arm/mach-imx/mx6/Kconfig @@ -225,6 +225,33 @@ config TARGET_MX6MEMCAL config TARGET_MX6QARM2 bool "mx6qarm2" +config TARGET_MX6DL_MAMOJ + bool "Support BTicino Mamoj" + select MX6QDL + select OF_CONTROL + select DM + select DM_ETH + select DM_GPIO + select DM_MMC + select DM_THERMAL + select SPL + select SUPPORT_SPL + select SPL_DM if SPL + select SPL_OF_LIBFDT if SPL + select SPL_OF_CONTROL if SPL + select SPL_PINCTRL if SPL + select SPL_SEPARATE_BSS if SPL + select SPL_GPIO_SUPPORT if SPL + select SPL_LIBCOMMON_SUPPORT if SPL + select SPL_LIBDISK_SUPPORT if SPL + select SPL_LIBGENERIC_SUPPORT if SPL + select SPL_MMC_SUPPORT if SPL + select SPL_SERIAL_SUPPORT if SPL + select SPL_USB_HOST_SUPPORT if SPL + select SPL_USB_GADGET_SUPPORT if SPL + select SPL_USB_SDP_SUPPORT if SPL + select SPL_WATCHDOG_SUPPORT if SPL + config TARGET_MX6Q_ENGICAM bool "Support Engicam i.Core(RQS)" select BOARD_LATE_INIT @@ -458,6 +485,7 @@ source "board/bachmann/ot1200/Kconfig" source "board/barco/platinum/Kconfig" source "board/barco/titanium/Kconfig" source "board/boundary/nitrogen6x/Kconfig" +source "board/bticino/mamoj/Kconfig" source "board/ccv/xpress/Kconfig" source "board/compulab/cm_fx6/Kconfig" source "board/congatec/cgtqmx6eval/Kconfig" diff --git a/board/bticino/mamoj/Kconfig b/board/bticino/mamoj/Kconfig new file mode 100644 index 0000000000..e5aec589c8 --- /dev/null +++ b/board/bticino/mamoj/Kconfig @@ -0,0 +1,12 @@ +if TARGET_MX6DL_MAMOJ + +config SYS_BOARD + default "mamoj" + +config SYS_VENDOR + default "bticino" + +config SYS_CONFIG_NAME + default "imx6dl-mamoj" + +endif diff --git a/board/bticino/mamoj/MAINTAINERS b/board/bticino/mamoj/MAINTAINERS new file mode 100644 index 0000000000..98e5f42844 --- /dev/null +++ b/board/bticino/mamoj/MAINTAINERS @@ -0,0 +1,9 @@ +MX6DL_MAMOJ BOARD +M: Raffaele RECALCATI +M: Simone CIANNI +M: Jagan Teki +S: Maintained +F: board/bticino/mamoj +F: include/configs/imx6dl-mamoj.h +F: configs/imx6dl_mamoj_defconfig +F: arch/arm/dts/imx6dl-mamoj.dts diff --git a/board/bticino/mamoj/Makefile b/board/bticino/mamoj/Makefile new file mode 100644 index 0000000000..f1ddda4891 --- /dev/null +++ b/board/bticino/mamoj/Makefile @@ -0,0 +1,8 @@ +# Copyright (C) 2018 BTicino +# Copyright (C) 2017 Amarula Solutions B.V. +# +# SPDX-License-Identifier: GPL-2.0+ +# + +obj-y := mamoj.o +obj-$(CONFIG_SPL_BUILD) += spl.o diff --git a/board/bticino/mamoj/README b/board/bticino/mamoj/README new file mode 100644 index 0000000000..f782516101 --- /dev/null +++ b/board/bticino/mamoj/README @@ -0,0 +1,60 @@ +BTicino Mamoj board: +=================== + +Build: + + $ make mrproper + $ make imx6dl_mamoj_defconfig + $ make + + This will generate the SPL image called SPL and the u-boot-dtb.img. + +The following methods can be used for booting Mamoj boards: + +1. USB SDP boot + +1. USB SDP boot: +--------------- + + - Build imx_usb_loader + + $ git clone git://github.com/boundarydevices/imx_usb_loader.git + $ cd imx_usb_loader + $ make + + - Build the BSP and copy SPL, u-boot-dtb.img in imx_usb_loader directory + + - Put the board in "Serial Download Mode" + + - Plug-in USB-to-Serial, Open minicom 1152008N1 and USB OTG cables to Host + + - Turn-on board + + - Identify VID/PID using lsusb + + Bus 001 Device 010: ID 15a2:0061 Freescale Semiconductor, Inc. i.MX 6Solo/6DualLite SystemOnChip in RecoveryMode + + - Update the conf files + + imx_usb.conf + 0x15a2:0x0061, mx6_usb_rom.conf, 0x0525:0xb4a4, mx6_usb_sdp_spl.conf + + mx6_usb_rom.conf + mx6_usb + hid,1024,0x910000,0x10000000,512M,0x00900000,0x40000 + SPL:jump header2 + + mx6_usb_sdp_spl.conf + mx6_spl_sdp + hid,uboot_header,1024,0x910000,0x10000000,512M,0x00900000,0x40000 + u-boot-dtb.img:jump header2 + + - Launch the loader + + $ ./imx_usb + + We can see U-Boot boot from USB SDP on minicom + +-- +Jagan Teki +03/20/18 diff --git a/board/bticino/mamoj/mamoj.c b/board/bticino/mamoj/mamoj.c new file mode 100644 index 0000000000..478f673491 --- /dev/null +++ b/board/bticino/mamoj/mamoj.c @@ -0,0 +1,27 @@ +/* + * Copyright (C) 2018 Simone CIANNI + * Copyright (C) 2018 Raffaele RECALCATI + * Copyright (C) 2018 Jagan Teki + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include +#include + +DECLARE_GLOBAL_DATA_PTR; + +int board_init(void) +{ + /* Address of boot parameters */ + gd->bd->bi_boot_params = PHYS_SDRAM + 0x100; + + return 0; +} + +int dram_init(void) +{ + gd->ram_size = imx_ddr_size(); + + return 0; +} diff --git a/board/bticino/mamoj/spl.c b/board/bticino/mamoj/spl.c new file mode 100644 index 0000000000..82568f7af5 --- /dev/null +++ b/board/bticino/mamoj/spl.c @@ -0,0 +1,154 @@ +/* + * Copyright (C) 2018 Simone CIANNI + * Copyright (C) 2018 Raffaele RECALCATI + * Copyright (C) 2018 Jagan Teki + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include +#include + +#include +#include + +#include +#include +#include +#include + +DECLARE_GLOBAL_DATA_PTR; + +#define UART_PAD_CTRL (PAD_CTL_PUS_100K_UP | PAD_CTL_SPEED_MED | \ + PAD_CTL_DSE_40ohm | PAD_CTL_SRE_FAST | PAD_CTL_HYS) + +static iomux_v3_cfg_t const uart3_pads[] = { + IOMUX_PADS(PAD_EIM_D24__UART3_TX_DATA | MUX_PAD_CTRL(UART_PAD_CTRL)), + IOMUX_PADS(PAD_EIM_D25__UART3_RX_DATA | MUX_PAD_CTRL(UART_PAD_CTRL)), +}; + +static int mx6dl_dcd_table[] = { + 0x020e0774, 0x000C0000, /* MX6_IOM_GRP_DDR_TYPE */ + 0x020e0754, 0x00000000, /* MX6_IOM_GRP_DDRPKE */ + + 0x020e04ac, 0x00000028, /* MX6_IOM_DRAM_SDCLK_0 */ + 0x020e04b0, 0x00000028, /* MX6_IOM_DRAM_SDCLK_1 */ + + 0x020e0464, 0x00000028, /* MX6_IOM_DRAM_CAS */ + 0x020e0490, 0x00000028, /* MX6_IOM_DRAM_RAS */ + 0x020e074c, 0x00000028, /* MX6_IOM_GRP_ADDDS */ + + 0x020e0494, 0x00000028, /* MX6_IOM_DRAM_RESET */ + 0x020e04a0, 0x00000000, /* MX6_IOM_DRAM_SDBA2 */ + 0x020e04b4, 0x00000028, /* MX6_IOM_DRAM_SDODT0 */ + 0x020e04b8, 0x00000028, /* MX6_IOM_DRAM_SDODT1 */ + 0x020e076c, 0x00000028, /* MX6_IOM_GRP_CTLDS */ + + 0x020e0750, 0x00020000, /* MX6_IOM_GRP_DDRMODE_CTL */ + 0x020e04bc, 0x00000028, /* MX6_IOM_DRAM_SDQS0 */ + 0x020e04c0, 0x00000028, /* MX6_IOM_DRAM_SDQS1 */ + 0x020e04c4, 0x00000028, /* MX6_IOM_DRAM_SDQS2 */ + 0x020e04c8, 0x00000028, /* MX6_IOM_DRAM_SDQS3 */ + + 0x020e0760, 0x00020000, /* MX6_IOM_GRP_DDRMODE */ + 0x020e0764, 0x00000028, /* MX6_IOM_GRP_B0DS */ + 0x020e0770, 0x00000028, /* MX6_IOM_GRP_B1DS */ + 0x020e0778, 0x00000028, /* MX6_IOM_GRP_B2DS */ + 0x020e077c, 0x00000028, /* MX6_IOM_GRP_B3DS */ + + 0x020e0470, 0x00000028, /* MX6_IOM_DRAM_DQM0 */ + 0x020e0474, 0x00000028, /* MX6_IOM_DRAM_DQM1 */ + 0x020e0478, 0x00000028, /* MX6_IOM_DRAM_DQM2 */ + 0x020e047c, 0x00000028, /* MX6_IOM_DRAM_DQM3 */ + + 0x021b001c, 0x00008000, /* MMDC0_MDSCR */ + + 0x021b0800, 0xA1390003, /* DDR_PHY_P0_MPZQHWCTRL */ + + 0x021b080c, 0x0042004b, /* MMDC1_MPWLDECTRL0 */ + 0x021b0810, 0x0038003c, /* MMDC1_MPWLDECTRL1 */ + + 0x021b083c, 0x42340230, /* MPDGCTRL0 PHY0 */ + 0x021b0840, 0x0228022c, /* MPDGCTRL1 PHY0 */ + + 0x021b0848, 0x42444646, /* MPRDDLCTL PHY0 */ + + 0x021b0850, 0x38382e2e, /* MPWRDLCTL PHY0 */ + + 0x021b081c, 0x33333333, /* DDR_PHY_P0_MPREDQBY0DL3 */ + 0x021b0820, 0x33333333, /* DDR_PHY_P0_MPREDQBY1DL3 */ + 0x021b0824, 0x33333333, /* DDR_PHY_P0_MPREDQBY2DL3 */ + 0x021b0828, 0x33333333, /* DDR_PHY_P0_MPREDQBY3DL3 */ + + 0x021b08b8, 0x00000800, /* DDR_PHY_P0_MPMUR0 */ + + 0x021b0004, 0x0002002D, /* MMDC0_MDPDC */ + 0x021b0008, 0x00333040, /* MMDC0_MDOTC */ + 0x021b000c, 0x3F4352F3, /* MMDC0_MDCFG0 */ + 0x021b0010, 0xB66D8B63, /* MMDC0_MDCFG1 */ + 0x021b0014, 0x01FF00DB, /* MMDC0_MDCFG2 */ + + 0x021b0018, 0x00011740, /* MMDC0_MDMISC */ + 0x021b001c, 0x00008000, /* MMDC0_MDSCR */ + 0x021b002c, 0x000026D2, /* MMDC0_MDRWD */ + 0x021b0030, 0x00431023, /* MMDC0_MDOR */ + 0x021b0040, 0x00000017, /* Chan0 CS0_END */ + 0x021b0000, 0x83190000, /* MMDC0_MDCTL */ + + 0x021b001c, 0x02008032, /* MMDC0_MDSCR MR2 write, CS0 */ + 0x021b001c, 0x00008033, /* MMDC0_MDSCR, MR3 write, CS0 */ + 0x021b001c, 0x00048031, /* MMDC0_MDSCR, MR1 write, CS0 */ + 0x021b001c, 0x15208030, /* MMDC0_MDSCR, MR0write, CS0 */ + 0x021b001c, 0x04008040, /* MMDC0_MDSCR */ + + 0x021b0020, 0x00007800, /* MMDC0_MDREF */ + + 0x021b0818, 0x00022227, /* DDR_PHY_P0_MPODTCTRL */ + + 0x021b0004, 0x0002556D, /* MMDC0_MDPDC */ + 0x021b0404, 0x00011006, /* MMDC0_MAPSR ADOPT */ + 0x021b001c, 0x00000000, /* MMDC0_MDSCR */ +}; + +static void ccgr_init(void) +{ + struct mxc_ccm_reg *ccm = (struct mxc_ccm_reg *)CCM_BASE_ADDR; + + writel(0x00003f3f, &ccm->CCGR0); + writel(0x0030fc00, &ccm->CCGR1); + writel(0x000fc000, &ccm->CCGR2); + writel(0x3f300000, &ccm->CCGR3); + writel(0xff00f300, &ccm->CCGR4); + writel(0x0f0000c3, &ccm->CCGR5); + writel(0x000003cc, &ccm->CCGR6); +} + +static void ddr_init(int *table, int size) +{ + int i; + + for (i = 0; i < size / 2 ; i++) + writel(table[2 * i + 1], table[2 * i]); +} + +void board_init_f(ulong dummy) +{ + ccgr_init(); + + /* setup AIPS and disable watchdog */ + arch_cpu_init(); + + gpr_init(); + + /* iomux */ + SETUP_IOMUX_PADS(uart3_pads); + + /* setup GP timer */ + timer_init(); + + /* UART clocks enabled and gd valid - init serial console */ + preloader_console_init(); + + /* DDR initialization */ + ddr_init(mx6dl_dcd_table, ARRAY_SIZE(mx6dl_dcd_table)); +} diff --git a/configs/imx6dl_mamoj_defconfig b/configs/imx6dl_mamoj_defconfig new file mode 100644 index 0000000000..40b7a500e6 --- /dev/null +++ b/configs/imx6dl_mamoj_defconfig @@ -0,0 +1,39 @@ +CONFIG_ARM=y +CONFIG_ARCH_MX6=y +CONFIG_SYS_TEXT_BASE=0x17800000 +CONFIG_SYS_MALLOC_F_LEN=0x2000 +CONFIG_TARGET_MX6DL_MAMOJ=y +# CONFIG_CMD_BMODE is not set +CONFIG_DEFAULT_DEVICE_TREE="imx6dl-mamoj" +CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/mach-imx/spl_sd.cfg" +CONFIG_BOOTDELAY=3 +CONFIG_HUSH_PARSER=y +CONFIG_SYS_PROMPT="=> " +CONFIG_CRC32_VERIFY=y +CONFIG_CMD_MEMTEST=y +CONFIG_CMD_GPIO=y +CONFIG_CMD_MMC=y +CONFIG_CMD_MII=y +CONFIG_CMD_PING=y +CONFIG_CMD_CACHE=y +CONFIG_CMD_EXT2=y +CONFIG_CMD_EXT4=y +CONFIG_CMD_EXT4_WRITE=y +CONFIG_CMD_FAT=y +CONFIG_CMD_FS_GENERIC=y +CONFIG_CMD_USB=y +CONFIG_DISTRO_DEFAULTS=y +CONFIG_ENV_IS_IN_MMC=y +CONFIG_PHYLIB=y +CONFIG_PHY_MICREL=y +CONFIG_FEC_MXC=y +CONFIG_PINCTRL=y +CONFIG_PINCTRL_IMX6=y +CONFIG_MXC_UART=y +CONFIG_USB=y +CONFIG_USB_GADGET=y +CONFIG_USB_GADGET_MANUFACTURER="FSL" +CONFIG_USB_GADGET_VENDOR_NUM=0x0525 +CONFIG_USB_GADGET_PRODUCT_NUM=0xa4a5 +CONFIG_CI_UDC=y +CONFIG_IMX_THERMAL=y diff --git a/include/configs/imx6dl-mamoj.h b/include/configs/imx6dl-mamoj.h new file mode 100644 index 0000000000..929365af79 --- /dev/null +++ b/include/configs/imx6dl-mamoj.h @@ -0,0 +1,88 @@ +/* + * Copyright (C) 2018 Simone CIANNI + * Copyright (C) 2018 Raffaele RECALCATI + * Copyright (C) 2018 Jagan Teki + * + * Configuration settings for the BTicion i.MX6DL Mamoj board. + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#ifndef __IMX6DL_MAMOJ_CONFIG_H +#define __IMX6DL_MAMOJ_CONFIG_H + +#include +#include "mx6_common.h" + +/* Size of malloc() pool */ +#define CONFIG_SYS_MALLOC_LEN (16 * SZ_1M) + +/* Total Size of Environment Sector */ +#define CONFIG_ENV_SIZE SZ_128K + +/* Allow to overwrite serial and ethaddr */ +#define CONFIG_ENV_OVERWRITE + +/* Environment */ +#ifndef CONFIG_ENV_IS_NOWHERE +/* Environment in MMC */ +# if defined(CONFIG_ENV_IS_IN_MMC) +# define CONFIG_ENV_OFFSET 0x100000 +# endif +#endif + +#ifndef CONFIG_SPL_BUILD +#define CONFIG_EXTRA_ENV_SETTINGS \ + "scriptaddr=0x14000000\0" \ + "fdt_addr_r=0x13000000\0" \ + "kernel_addr_r=0x10008000\0" \ + "fdt_high=0xffffffff\0" \ + BOOTENV + +#define BOOT_TARGET_DEVICES(func) \ + func(MMC, mmc, 2) + +#include +#endif + +/* UART */ +#define CONFIG_MXC_UART_BASE UART3_BASE + +/* MMC */ +#define CONFIG_SYS_MMC_ENV_DEV 2 +#define CONFIG_SUPPORT_EMMC_BOOT + +/* Ethernet */ +#define CONFIG_FEC_MXC_PHYADDR 1 +#define CONFIG_MII + +/* USB */ +#define CONFIG_EHCI_HCD_INIT_AFTER_RESET +#define CONFIG_MXC_USB_PORTSC (PORT_PTS_UTMI | PORT_PTS_PTW) +#define CONFIG_MXC_USB_FLAGS 0 +#define CONFIG_USB_MAX_CONTROLLER_COUNT 2 + +/* Miscellaneous configurable options */ +#define CONFIG_SYS_MEMTEST_START 0x80000000 +#define CONFIG_SYS_MEMTEST_END (CONFIG_SYS_MEMTEST_START + 0x8000000) + +#define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR +#define CONFIG_SYS_HZ 1000 + +/* Physical Memory Map */ +#define CONFIG_NR_DRAM_BANKS 1 +#define PHYS_SDRAM MMDC0_ARB_BASE_ADDR + +#define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM +#define CONFIG_SYS_INIT_RAM_ADDR IRAM_BASE_ADDR +#define CONFIG_SYS_INIT_RAM_SIZE IRAM_SIZE + +#define CONFIG_SYS_INIT_SP_OFFSET (CONFIG_SYS_INIT_RAM_SIZE - \ + GENERATED_GBL_DATA_SIZE) +#define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_INIT_RAM_ADDR + \ + CONFIG_SYS_INIT_SP_OFFSET) + +/* SPL */ +#include "imx6_spl.h" + +#endif /* __IMX6DL_MAMOJ_CONFIG_H */ From patchwork Mon Mar 19 19:47:07 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jagan Teki X-Patchwork-Id: 887851 X-Patchwork-Delegate: sbabic@denx.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=amarulasolutions.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=amarulasolutions.com header.i=@amarulasolutions.com header.b="S9tNe+KB"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 404mqF2WFzz9sVT for ; Tue, 20 Mar 2018 06:49:28 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id 7F66AC21DFB; Mon, 19 Mar 2018 19:49:00 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=RCVD_IN_DNSWL_BLOCKED, RCVD_IN_MSPIKE_H2, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 46560C21E49; Mon, 19 Mar 2018 19:48:12 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 539F5C21E16; Mon, 19 Mar 2018 19:47:44 +0000 (UTC) Received: from mail-pf0-f195.google.com (mail-pf0-f195.google.com [209.85.192.195]) by lists.denx.de (Postfix) with ESMTPS id 56A69C21DD3 for ; Mon, 19 Mar 2018 19:47:41 +0000 (UTC) Received: by mail-pf0-f195.google.com with SMTP id d26so7453724pfn.5 for ; Mon, 19 Mar 2018 12:47:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=aSx19R4P4iAfnMRLlwTCamqX7dyoPWoHP0/YVVDPjY8=; b=S9tNe+KBSGJlsVe4Ht2dQ/VG6xZyRfv0yUIaPyQfqDvoJp81U8EabvhcFgxJcm0qbe 37J/2zscXhS9NCb4I0mPwGhTXbX3xx+SGM2NXNuXK4v9JeFNVCK8mYpIqSQSio8+fav9 XbscU0Dvsa8mbXLCTQH9x0xJt133F5J+nCut8= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=aSx19R4P4iAfnMRLlwTCamqX7dyoPWoHP0/YVVDPjY8=; b=F85AJsylEM7+Fmv6s4U026GtVT+3NioM7njweZFyepTI08Hl72ngiFY7uJbiZc3dAS 5N8OYAZxSNJ/la/ShJOct5qDPLlvsvhW2rlvmOrT8L+xHZPr+ZGUD8fBOERD9rW/rbNG O9aSiraDzaI1Sl0t+9egfy1AMq/wzeT/NzK4bfEN4d6iMgtHgV4HA0plsonBsAAs8BZh vA3mZCDPhEZpSaBMkGyyonkL0dpwDeSC9iCPxSXc5qVZZFB0AzzclNANk/uvLbJ72O7C Kd9lCkM7lCchN+nyj0h+JctFwF407jMgzxNgLqSNbINPVsdkOBo9TfQhaJT9311iUjEl 4uhQ== X-Gm-Message-State: AElRT7Fw7eC2c7GbMklQ6MdwvdIlunW0jA3lbsJGVgKMqXsenfDwtP64 q3ccXecnWoOutDZLM6//36Jjvg== X-Google-Smtp-Source: AG47ELsz3El9rdUo6hPycWQSexRuqrLx8/ucBjqjzTvu/fjmYItW+mngJPmoA+M6RPnfEn2YAsHrTA== X-Received: by 10.98.163.214 with SMTP id q83mr81187pfl.94.1521488859879; Mon, 19 Mar 2018 12:47:39 -0700 (PDT) Received: from localhost.localdomain ([115.97.190.51]) by smtp.gmail.com with ESMTPSA id a14sm1083082pff.75.2018.03.19.12.47.35 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 19 Mar 2018 12:47:39 -0700 (PDT) From: Jagan Teki To: Stefano Babic Date: Tue, 20 Mar 2018 01:17:07 +0530 Message-Id: <20180319194711.23323-3-jagan@amarulasolutions.com> X-Mailer: git-send-email 2.14.3 In-Reply-To: <20180319194711.23323-1-jagan@amarulasolutions.com> References: <20180319194711.23323-1-jagan@amarulasolutions.com> Cc: Shyam Saini , u-boot@lists.denx.de, "davide . bonfanti" , Andrea CORTESE , Fabio maggi , Fabio Estevam , Simone CIANNI , Raffaele RECALCATI , lamiaposta71@gmail.com Subject: [U-Boot] [PATCH 2/6] i.MX6DL: mamoj: Add I2C support X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" i.MX6DL Mamoj has i2c3 and i2c4 buses, add support through DM_I2C with dt definition. i2c log: ======= => i2c bus Bus 2: i2c@021a8000 Bus 3: i2c@021f8000 => i2c dev 2 Setting bus to 2 => i2c speed 400000 Setting bus speed to 400000 Hz => i2c probe Valid chip addresses: 20 51 53 => i2c md 53 0xff 00ff: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ................ => i2c md 51 0xff 00ff: a8 08 40 50 09 43 46 52 42 18 80 8e ae a9 d0 53 ..@P.CFRB......S => i2c dev 3 Setting bus to 3 => i2c speed 100000 Setting bus speed to 100000 Hz => i2c probe Valid chip addresses: 08 40 48 4B => i2c md 08 0xff 00ff: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ Signed-off-by: Jagan Teki Signed-off-by: Simone CIANNI Signed-off-by: Raffaele RECALCATI --- arch/arm/dts/imx6dl-mamoj.dts | 28 ++++++++++++++++++++++++++++ arch/arm/mach-imx/mx6/Kconfig | 1 + configs/imx6dl_mamoj_defconfig | 2 ++ 3 files changed, 31 insertions(+) diff --git a/arch/arm/dts/imx6dl-mamoj.dts b/arch/arm/dts/imx6dl-mamoj.dts index 579a72ace2..ae9f2928ae 100644 --- a/arch/arm/dts/imx6dl-mamoj.dts +++ b/arch/arm/dts/imx6dl-mamoj.dts @@ -20,6 +20,20 @@ status = "okay"; }; +&i2c3 { + clock-frequency = <400000>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_i2c3>; + status = "okay"; +}; + +&i2c4 { + clock-frequency = <100000>; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_i2c4>; + status = "okay"; +}; + &uart3 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_uart3>; @@ -60,6 +74,20 @@ >; }; + pinctrl_i2c3: i2c3grp { + fsl,pins = < + MX6QDL_PAD_GPIO_3__I2C3_SCL 0x4001b8b1 + MX6QDL_PAD_GPIO_6__I2C3_SDA 0x4001b8b1 + >; + }; + + pinctrl_i2c4: i2c4grp { + fsl,pins = < + MX6QDL_PAD_GPIO_7__I2C4_SCL 0x4001b8b1 + MX6QDL_PAD_GPIO_8__I2C4_SDA 0x4001b8b1 + >; + }; + pinctrl_uart3: uart3grp { fsl,pins = < MX6QDL_PAD_EIM_D24__UART3_TX_DATA 0x1b0b1 diff --git a/arch/arm/mach-imx/mx6/Kconfig b/arch/arm/mach-imx/mx6/Kconfig index c6163d0d12..f258a458d4 100644 --- a/arch/arm/mach-imx/mx6/Kconfig +++ b/arch/arm/mach-imx/mx6/Kconfig @@ -232,6 +232,7 @@ config TARGET_MX6DL_MAMOJ select DM select DM_ETH select DM_GPIO + select DM_I2C select DM_MMC select DM_THERMAL select SPL diff --git a/configs/imx6dl_mamoj_defconfig b/configs/imx6dl_mamoj_defconfig index 40b7a500e6..4d5a4613c7 100644 --- a/configs/imx6dl_mamoj_defconfig +++ b/configs/imx6dl_mamoj_defconfig @@ -12,6 +12,7 @@ CONFIG_SYS_PROMPT="=> " CONFIG_CRC32_VERIFY=y CONFIG_CMD_MEMTEST=y CONFIG_CMD_GPIO=y +CONFIG_CMD_I2C=y CONFIG_CMD_MMC=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y @@ -37,3 +38,4 @@ CONFIG_USB_GADGET_VENDOR_NUM=0x0525 CONFIG_USB_GADGET_PRODUCT_NUM=0xa4a5 CONFIG_CI_UDC=y CONFIG_IMX_THERMAL=y +CONFIG_SYS_I2C_MXC=y From patchwork Mon Mar 19 19:47:08 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jagan Teki X-Patchwork-Id: 887855 X-Patchwork-Delegate: sbabic@denx.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=amarulasolutions.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=amarulasolutions.com header.i=@amarulasolutions.com header.b="ZKcyWdvF"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 404mrc5MStz9sTb for ; Tue, 20 Mar 2018 06:50:40 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id 3E237C21CB1; Mon, 19 Mar 2018 19:49:17 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=RCVD_IN_DNSWL_BLOCKED, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 17AEAC21E3E; Mon, 19 Mar 2018 19:48:15 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 7CCD5C21E12; Mon, 19 Mar 2018 19:47:49 +0000 (UTC) Received: from mail-pg0-f66.google.com (mail-pg0-f66.google.com [74.125.83.66]) by lists.denx.de (Postfix) with ESMTPS id D98F0C21C4A for ; Mon, 19 Mar 2018 19:47:45 +0000 (UTC) Received: by mail-pg0-f66.google.com with SMTP id m24so1648285pgv.8 for ; Mon, 19 Mar 2018 12:47:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=p+3FrIPVKV8u8OGc5LSoCfhU6Pd9bCefQwxwdPFj7Z8=; b=ZKcyWdvFlQcAH/KPDM6BLG5MUmhrQQKVxJ2iVc+GBoo2OzV54lKFk5+HImE01PmaRE HVv3k0HRHT4/A5WHfOpiXPrcBhVN6E4Y2nXYvEV8dns13FGJ1ss2T29Temt7eQc3poNF ExosYMGD0LkMaOnq03HSBTXXGdX5CMIbEUqP8= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=p+3FrIPVKV8u8OGc5LSoCfhU6Pd9bCefQwxwdPFj7Z8=; b=LYO4KiTOeHyIR/XnaXeMCe3c1U2kXF8Rmlpb84vIDt4e2ljbvWwuJygLw4WA5EYJQP 3ZfdQZi4xthXXcY8zW1WEyoFBjzuENsGm8CBllePGlXzYH7znwLw4NHHDBpoi09j+TYK wTjK+qodlqXd9+sUokvzRrKhVmnIsDxQeTo6vj4m9UkX/7+D98UFPPsr2UG4IDPcORti VyWRir91MC4NPpgv+8ZkfBcxCQ/mscIpjPPvUNcbXqz1FfEwsWyK/UfVCDlfOvzB4bZ9 +J8bU9Gc9ecXE0/QTG59vqOJXqP1Q3+3iYM1z1Ei+SSbNBmJVw+7YunG3vIYVn/HSE0X xm/g== X-Gm-Message-State: AElRT7FrEAEzWt9fRmjxvC5njJ8uba8I6/Y0np2ZdI1CI912GYpFnBle hlbt1WHburuIc70sP2X2v3Q6r5RoNbI= X-Google-Smtp-Source: AG47ELssjHZjDz0g5R5sXOAkRla4RYl4t4RuZLmVp+s0K6rsVwmpow8z97CQAhnVem3l2i1px8Q/Sg== X-Received: by 10.99.136.194 with SMTP id l185mr10154224pgd.419.1521488864210; Mon, 19 Mar 2018 12:47:44 -0700 (PDT) Received: from localhost.localdomain ([115.97.190.51]) by smtp.gmail.com with ESMTPSA id a14sm1083082pff.75.2018.03.19.12.47.40 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 19 Mar 2018 12:47:43 -0700 (PDT) From: Jagan Teki To: Stefano Babic Date: Tue, 20 Mar 2018 01:17:08 +0530 Message-Id: <20180319194711.23323-4-jagan@amarulasolutions.com> X-Mailer: git-send-email 2.14.3 In-Reply-To: <20180319194711.23323-1-jagan@amarulasolutions.com> References: <20180319194711.23323-1-jagan@amarulasolutions.com> Cc: Shyam Saini , u-boot@lists.denx.de, "davide . bonfanti" , Andrea CORTESE , Fabio maggi , Fabio Estevam , Simone CIANNI , Raffaele RECALCATI , lamiaposta71@gmail.com Subject: [U-Boot] [PATCH 3/6] i.MX6DL: mamoj: Add PFUZE100 support X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" MX6DL Mamoj boards has Freescale PFUZE100 PMIC, add support for it through DM_PMIC dt definition. pmic log: ======== => pmic list | Name | Parent name | Parent uclass @ seq | pfuze100@08 | i2c@021f8000 | i2c @ 3 => pmic dev pfuze100@08 dev: 0 @ pfuze100@08 => pmic dump Dump pmic: pfuze100@08 registers 0x00: 10 00 00 21 00 01 3f 01 00 7f 00 00 00 00 00 81 0x10: 00 00 3f 00 00 00 00 00 00 00 00 10 00 00 00 00 0x20: 2b 2b 2b 08 c4 00 00 00 00 00 00 00 00 00 2b 2b 0x30: 2b 08 c4 00 00 72 72 72 08 d4 00 00 2c 2c 2c 08 0x40: e4 00 00 2c 2c 2c 08 e4 00 00 6f 6f 6f 08 f4 00 0x50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0x60: 00 00 00 00 00 00 48 00 00 00 10 06 1e 1e 17 10 0x70: 1a 1f 00 00 00 00 00 00 00 00 00 00 00 00 00 Signed-off-by: Jagan Teki Signed-off-by: Simone CIANNI Signed-off-by: Raffaele RECALCATI --- arch/arm/dts/imx6dl-mamoj.dts | 113 +++++++++++++++++++++++++++++++++++++++++ arch/arm/mach-imx/mx6/Kconfig | 2 + configs/imx6dl_mamoj_defconfig | 1 + 3 files changed, 116 insertions(+) diff --git a/arch/arm/dts/imx6dl-mamoj.dts b/arch/arm/dts/imx6dl-mamoj.dts index ae9f2928ae..cc467b4adf 100644 --- a/arch/arm/dts/imx6dl-mamoj.dts +++ b/arch/arm/dts/imx6dl-mamoj.dts @@ -32,6 +32,119 @@ pinctrl-names = "default"; pinctrl-0 = <&pinctrl_i2c4>; status = "okay"; + + pmic: pfuze100@08 { + compatible = "fsl,pfuze100"; + reg = <0x08>; + + regulators { + /* CPU vdd_arm core */ + sw1a_reg: sw1ab { + regulator-min-microvolt = <300000>; + regulator-max-microvolt = <1875000>; + regulator-boot-on; + regulator-always-on; + regulator-ramp-delay = <6250>; + }; + + /* SOC vdd_soc */ + sw1c_reg: sw1c { + regulator-min-microvolt = <300000>; + regulator-max-microvolt = <1875000>; + regulator-boot-on; + regulator-always-on; + regulator-ramp-delay = <6250>; + }; + + /* I/O power GEN_3V3 */ + sw2_reg: sw2 { + regulator-min-microvolt = <800000>; + regulator-max-microvolt = <3300000>; + regulator-boot-on; + regulator-always-on; + }; + + /* DDR memory */ + sw3a_reg: sw3a { + regulator-min-microvolt = <400000>; + regulator-max-microvolt = <1975000>; + regulator-boot-on; + regulator-always-on; + }; + + /* DDR memory */ + sw3b_reg: sw3b { + regulator-min-microvolt = <400000>; + regulator-max-microvolt = <1975000>; + regulator-boot-on; + regulator-always-on; + }; + + /* not used */ + sw4_reg: sw4 { + regulator-min-microvolt = <800000>; + regulator-max-microvolt = <3300000>; + }; + + /* not used */ + swbst_reg: swbst { + regulator-min-microvolt = <5000000>; + regulator-max-microvolt = <5150000>; + }; + + /* PMIC vsnvs. EX boot mode */ + snvs_reg: vsnvs { + regulator-min-microvolt = <1000000>; + regulator-max-microvolt = <3000000>; + regulator-boot-on; + regulator-always-on; + }; + + vref_reg: vrefddr { + regulator-boot-on; + regulator-always-on; + }; + + /* not used */ + vgen1_reg: vgen1 { + regulator-min-microvolt = <800000>; + regulator-max-microvolt = <1550000>; + }; + + /* not used */ + vgen2_reg: vgen2 { + regulator-min-microvolt = <800000>; + regulator-max-microvolt = <1550000>; + }; + + /* not used */ + vgen3_reg: vgen3 { + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <3300000>; + }; + + /* 1v8 general power */ + vgen4_reg: vgen4 { + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <3300000>; + regulator-always-on; + }; + + /* 2v8 general power IMX6 */ + vgen5_reg: vgen5 { + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <3300000>; + regulator-always-on; + }; + + /* 3v3 Ethernet */ + vgen6_reg: vgen6 { + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <3300000>; + regulator-always-on; + }; + }; + }; }; &uart3 { diff --git a/arch/arm/mach-imx/mx6/Kconfig b/arch/arm/mach-imx/mx6/Kconfig index f258a458d4..55a8f4bb9d 100644 --- a/arch/arm/mach-imx/mx6/Kconfig +++ b/arch/arm/mach-imx/mx6/Kconfig @@ -234,6 +234,8 @@ config TARGET_MX6DL_MAMOJ select DM_GPIO select DM_I2C select DM_MMC + select DM_PMIC + select DM_PMIC_PFUZE100 select DM_THERMAL select SPL select SUPPORT_SPL diff --git a/configs/imx6dl_mamoj_defconfig b/configs/imx6dl_mamoj_defconfig index 4d5a4613c7..34ceba5a92 100644 --- a/configs/imx6dl_mamoj_defconfig +++ b/configs/imx6dl_mamoj_defconfig @@ -16,6 +16,7 @@ CONFIG_CMD_I2C=y CONFIG_CMD_MMC=y CONFIG_CMD_MII=y CONFIG_CMD_PING=y +CONFIG_CMD_PMIC=y CONFIG_CMD_CACHE=y CONFIG_CMD_EXT2=y CONFIG_CMD_EXT4=y From patchwork Mon Mar 19 19:47:09 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jagan Teki X-Patchwork-Id: 887854 X-Patchwork-Delegate: sbabic@denx.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=amarulasolutions.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=amarulasolutions.com header.i=@amarulasolutions.com header.b="VcPyFDSX"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 404mqR68bpz9sVX for ; Tue, 20 Mar 2018 06:49:39 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id 5728BC21E26; Mon, 19 Mar 2018 19:48:43 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=RCVD_IN_DNSWL_BLOCKED, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 02D0CC21E1A; Mon, 19 Mar 2018 19:48:06 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 0D282C21E1A; Mon, 19 Mar 2018 19:47:50 +0000 (UTC) Received: from mail-pg0-f65.google.com (mail-pg0-f65.google.com [74.125.83.65]) by lists.denx.de (Postfix) with ESMTPS id DE1C3C21E16 for ; Mon, 19 Mar 2018 19:47:49 +0000 (UTC) Received: by mail-pg0-f65.google.com with SMTP id i9so1222344pgq.10 for ; Mon, 19 Mar 2018 12:47:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=98dkxf/q0fDE9eUXg6HnmTYUR4G7Qbtc967aZjIodhk=; b=VcPyFDSXd2spr/Ei7xPzzvzVdib9BoYE3hQvLj+QWkIdjWozNotglw8SuOFERt6ULh qfJ/tkdXL/GOrPlbMWACYgOpuCqCviV5AAR7wPQoxraxOnfX8YKEQXBZ+nwsJcaR7i7U cb+Zssq1Nr2P2DnpAKfC8hXVPO5im72Rk3bTY= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=98dkxf/q0fDE9eUXg6HnmTYUR4G7Qbtc967aZjIodhk=; b=rbsk/fXQhyiuRV8HuwoOhda5n972uXmJ9fnkHwoD+SIL9toTgclQYBxmq8lhtewgpT Zluw4ZPpHoCRrDc8ztYpYd5O4yqSgebbEbKnhV8kPWu6yjrnK8TzH/mLmnr3y91QCi0v 6ZP95sKm8m9mThF8rOWwm7mijM67eLopEg9W5loA1kzEsbcyiJjf+UEJfxHdyPBCJSl8 EojRpcctDUbZ2swHlonnvH5q6qEjdEBXmoqm+61dERKlkbb8+bupFdZWeJ+ISWKOBAhg r+feonz89pEIz7daSAt7GDOFga0Zp+uLdqyMnJ2SYIv82x5IuXyFokq/ulyQvTgTOM6x mlzw== X-Gm-Message-State: AElRT7G1zAG2fuODc89ohaJFCiShFAiyRhfBfMLjt2rneVD90UqJFaxv MzkndCahhvkKb3MNwDjj9SV0Gg== X-Google-Smtp-Source: AG47ELukdFoPUYSaAY0Ve3iSiOyrsNgvsvcnvk9A3gsV2AzbqWisq2i6U3PN4C5MHv0lLetAaiowWQ== X-Received: by 10.101.77.198 with SMTP id q6mr3865140pgt.61.1521488868477; Mon, 19 Mar 2018 12:47:48 -0700 (PDT) Received: from localhost.localdomain ([115.97.190.51]) by smtp.gmail.com with ESMTPSA id a14sm1083082pff.75.2018.03.19.12.47.44 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 19 Mar 2018 12:47:47 -0700 (PDT) From: Jagan Teki To: Stefano Babic Date: Tue, 20 Mar 2018 01:17:09 +0530 Message-Id: <20180319194711.23323-5-jagan@amarulasolutions.com> X-Mailer: git-send-email 2.14.3 In-Reply-To: <20180319194711.23323-1-jagan@amarulasolutions.com> References: <20180319194711.23323-1-jagan@amarulasolutions.com> Cc: Shyam Saini , u-boot@lists.denx.de, "davide . bonfanti" , Andrea CORTESE , Fabio maggi , Fabio Estevam , Simone CIANNI , Raffaele RECALCATI , lamiaposta71@gmail.com Subject: [U-Boot] [PATCH 4/6] configs: imx6dl_mamoj: Enable fastboot and ums X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" Enable fastboot and ums for host to interact eMMC on Mamoj board. Signed-off-by: Jagan Teki Signed-off-by: Simone CIANNI Signed-off-by: Raffaele RECALCATI --- configs/imx6dl_mamoj_defconfig | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/configs/imx6dl_mamoj_defconfig b/configs/imx6dl_mamoj_defconfig index 34ceba5a92..25ae4299d7 100644 --- a/configs/imx6dl_mamoj_defconfig +++ b/configs/imx6dl_mamoj_defconfig @@ -8,6 +8,11 @@ CONFIG_DEFAULT_DEVICE_TREE="imx6dl-mamoj" CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/mach-imx/spl_sd.cfg" CONFIG_BOOTDELAY=3 CONFIG_HUSH_PARSER=y +CONFIG_FASTBOOT=y +CONFIG_FASTBOOT_BUF_ADDR=0x12000000 +CONFIG_FASTBOOT_BUF_SIZE=0x10000000 +CONFIG_FASTBOOT_FLASH=y +CONFIG_FASTBOOT_FLASH_MMC_DEV=2 CONFIG_SYS_PROMPT="=> " CONFIG_CRC32_VERIFY=y CONFIG_CMD_MEMTEST=y @@ -24,6 +29,7 @@ CONFIG_CMD_EXT4_WRITE=y CONFIG_CMD_FAT=y CONFIG_CMD_FS_GENERIC=y CONFIG_CMD_USB=y +CONFIG_CMD_USB_MASS_STORAGE=y CONFIG_DISTRO_DEFAULTS=y CONFIG_ENV_IS_IN_MMC=y CONFIG_PHYLIB=y From patchwork Mon Mar 19 19:47:10 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jagan Teki X-Patchwork-Id: 887857 X-Patchwork-Delegate: sbabic@denx.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=amarulasolutions.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=amarulasolutions.com header.i=@amarulasolutions.com header.b="HFZ7D/3V"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 404mt46cZ5z9s3Y for ; Tue, 20 Mar 2018 06:51:56 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id 85550C21DF9; Mon, 19 Mar 2018 19:49:53 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=RCVD_IN_DNSWL_BLOCKED, RCVD_IN_MSPIKE_H2, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 6CF7AC21C4A; Mon, 19 Mar 2018 19:48:29 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 3CA3AC21C51; Mon, 19 Mar 2018 19:48:04 +0000 (UTC) Received: from mail-pf0-f193.google.com (mail-pf0-f193.google.com [209.85.192.193]) by lists.denx.de (Postfix) with ESMTPS id 42D87C21DEC for ; Mon, 19 Mar 2018 19:47:55 +0000 (UTC) Received: by mail-pf0-f193.google.com with SMTP id z10so7438405pfh.13 for ; Mon, 19 Mar 2018 12:47:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=NJGmV+JdbdXboOprPTEbyQnzLRZSd6l7a2RYgh8sjOk=; b=HFZ7D/3VrY2a4v7NCL6XAPYsuzhRpu58j+KAspHHh0wJivAcRILFkrTsjPSg1mW6SR VjBb4jJDsYwduCl6iCBA466xRDyzTIytph33bR6Vv/JRE17gz5Z9CrtKrwsgcMqVu5z1 /kUG8i6F72wC00/1G9aSlqndnf6VfVsXLSfHU= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=NJGmV+JdbdXboOprPTEbyQnzLRZSd6l7a2RYgh8sjOk=; b=kpLhhJDcZeyrb6eLt430DOESAmmT/b+itUeOy8wmcw54DnpuR/HUvJ64Mioafyb1N2 PWRrDWAwYey3AlQK7YIpZYXT3Gm9h/DRnhglENhl+iQSmSK/wvfwvqkABl885MQNWFcY bjcKwMrxjxeaPIuE/W9IfGTFcMDl07prNRjzVFl0JUdOKaHMkpcwHc8nDvaCp64yPm/h 3NG8HiyWh/PkEv6gJ5gwinwtnNMugc+l+SVxaa0N9NUgvYh74AGht1s4hLIAxOLxSZp8 5lY6M+3S3Gy8f3HvWjdgfEdZOUDyZTjBGB3gVcANSU9w3WOJny2TRLO7LocoSx1w/r6t eSzw== X-Gm-Message-State: AElRT7GY4zqBQmLlyvmaesBmlrdd+hGiU+YHC71FiBsIsodHNQF6ppx/ JvVk3qrRowze5Er6IFxe7uNgBA== X-Google-Smtp-Source: AG47ELt0MibC4KLQLMfPMDS/EDmAP9SfZ8FVC5JWIO+7TBT/10DnW1fzBeeUXSpawejPJm1ug8k1Pg== X-Received: by 10.99.109.203 with SMTP id i194mr10252841pgc.314.1521488873431; Mon, 19 Mar 2018 12:47:53 -0700 (PDT) Received: from localhost.localdomain ([115.97.190.51]) by smtp.gmail.com with ESMTPSA id a14sm1083082pff.75.2018.03.19.12.47.48 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 19 Mar 2018 12:47:52 -0700 (PDT) From: Jagan Teki To: Stefano Babic Date: Tue, 20 Mar 2018 01:17:10 +0530 Message-Id: <20180319194711.23323-6-jagan@amarulasolutions.com> X-Mailer: git-send-email 2.14.3 In-Reply-To: <20180319194711.23323-1-jagan@amarulasolutions.com> References: <20180319194711.23323-1-jagan@amarulasolutions.com> Cc: Shyam Saini , u-boot@lists.denx.de, "davide . bonfanti" , Andrea CORTESE , Fabio maggi , Fabio Estevam , Simone CIANNI , Raffaele RECALCATI , lamiaposta71@gmail.com Subject: [U-Boot] [PATCH 5/6] configs: imx6dl-mamoj: Add DFU support X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" Add DFU support for BTicino Mamoj board and update the same steps in README. Signed-off-by: Jagan Teki Signed-off-by: Simone CIANNI Signed-off-by: Raffaele RECALCATI --- board/bticino/mamoj/README | 37 +++++++++++++++++++++++++++++++++++++ configs/imx6dl_mamoj_defconfig | 2 ++ include/configs/imx6dl-mamoj.h | 4 +++- 3 files changed, 42 insertions(+), 1 deletion(-) diff --git a/board/bticino/mamoj/README b/board/bticino/mamoj/README index f782516101..84110eafc1 100644 --- a/board/bticino/mamoj/README +++ b/board/bticino/mamoj/README @@ -13,6 +13,8 @@ The following methods can be used for booting Mamoj boards: 1. USB SDP boot +2. eMMC boot (via DFU) + 1. USB SDP boot: --------------- @@ -55,6 +57,41 @@ The following methods can be used for booting Mamoj boards: We can see U-Boot boot from USB SDP on minicom +2. eMMC boot via DFU: +-------------------- + + Once booted from USB SDP, program the eMMC as below(make sure to connect USB OTG) + + - Change eMMC partition config + + => mmc partconf 2 1 0 0 + + - Partition eMMC on host + + => ums 0 mmc 2 + + Host will able to detect the eMMC disk as UMS, partition the same. + + - Program SPL + + => setenv dfu_alt_info $dfu_alt_info_spl + => dfu 0 mmc 2 + + At Host + + # dfu-util -D SPL -a spl + + - Program u-boot-dtb.img + + => setenv dfu_alt_info $dfu_alt_info_uboot + => dfu 0 mmc 2 + + At Host + + # dfu-util -D u-boot-dtb.img -a u-boot + + Poweroff and Poweron the board and see U-Boot booting from eMMC. + -- Jagan Teki 03/20/18 diff --git a/configs/imx6dl_mamoj_defconfig b/configs/imx6dl_mamoj_defconfig index 25ae4299d7..c4a5fa22f9 100644 --- a/configs/imx6dl_mamoj_defconfig +++ b/configs/imx6dl_mamoj_defconfig @@ -15,6 +15,7 @@ CONFIG_FASTBOOT_FLASH=y CONFIG_FASTBOOT_FLASH_MMC_DEV=2 CONFIG_SYS_PROMPT="=> " CONFIG_CRC32_VERIFY=y +CONFIG_CMD_DFU=y CONFIG_CMD_MEMTEST=y CONFIG_CMD_GPIO=y CONFIG_CMD_I2C=y @@ -44,5 +45,6 @@ CONFIG_USB_GADGET_MANUFACTURER="FSL" CONFIG_USB_GADGET_VENDOR_NUM=0x0525 CONFIG_USB_GADGET_PRODUCT_NUM=0xa4a5 CONFIG_CI_UDC=y +CONFIG_DFU_MMC=y CONFIG_IMX_THERMAL=y CONFIG_SYS_I2C_MXC=y diff --git a/include/configs/imx6dl-mamoj.h b/include/configs/imx6dl-mamoj.h index 929365af79..0ac238b82d 100644 --- a/include/configs/imx6dl-mamoj.h +++ b/include/configs/imx6dl-mamoj.h @@ -15,7 +15,7 @@ #include "mx6_common.h" /* Size of malloc() pool */ -#define CONFIG_SYS_MALLOC_LEN (16 * SZ_1M) +#define CONFIG_SYS_MALLOC_LEN (35 * SZ_1M) /* Total Size of Environment Sector */ #define CONFIG_ENV_SIZE SZ_128K @@ -37,6 +37,8 @@ "fdt_addr_r=0x13000000\0" \ "kernel_addr_r=0x10008000\0" \ "fdt_high=0xffffffff\0" \ + "dfu_alt_info_spl=spl raw 0x2 0x400\0" \ + "dfu_alt_info_uboot=u-boot raw 0x8a 0x11400\0" \ BOOTENV #define BOOT_TARGET_DEVICES(func) \ From patchwork Mon Mar 19 19:47:11 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jagan Teki X-Patchwork-Id: 887858 X-Patchwork-Delegate: sbabic@denx.de Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=amarulasolutions.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=amarulasolutions.com header.i=@amarulasolutions.com header.b="GMgKQ3Go"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 404mt63NCqz9sTm for ; Tue, 20 Mar 2018 06:51:58 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id 1EF1BC21E7E; Mon, 19 Mar 2018 19:49:36 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=RCVD_IN_DNSWL_BLOCKED, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 3B13FC21E73; Mon, 19 Mar 2018 19:48:24 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 7455DC21C51; Mon, 19 Mar 2018 19:48:06 +0000 (UTC) Received: from mail-pl0-f65.google.com (mail-pl0-f65.google.com [209.85.160.65]) by lists.denx.de (Postfix) with ESMTPS id 9F460C21E35 for ; Mon, 19 Mar 2018 19:47:58 +0000 (UTC) Received: by mail-pl0-f65.google.com with SMTP id n15-v6so3156631plp.12 for ; Mon, 19 Mar 2018 12:47:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amarulasolutions.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=UKiMHsVbq0AiDFqLUEj7G2at1YqtRkuRwECRjBPr74o=; b=GMgKQ3Go9YfxKi4V8G/WUYuRsEkgFvfl7vM2UPEycn5TkJUo44oPI/v6qe6vqyM/Sb se7S5LJMTmooi3ezzWfz4CrO0hJXWdCZDGDmJ9D1H8Sh0aryKol2gXIieEE345JvHVve sts+sQVOa35nN3TBdLPCj4Tt0/6/Wsr3Kye4I= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=UKiMHsVbq0AiDFqLUEj7G2at1YqtRkuRwECRjBPr74o=; b=eoEMq6v46qUXq4qvsp9Zzp1oGZ58YQHkKOjTuusTvSXGVzrE4xpB0GaIgi8hnpkqYv UWZAJRCCqGaquxceEWpXX6EOtxUyJjvuwaJcm9xptDmaLuCmjRywo+UwzikF7Q/bwyXb 99Ru2k+99uu6WG5vs/R07J3qErSAmCUlu21ijFq3BPM20329C9AHyT178QzcH+S2dpk1 mXKXnE7lhYFka4tnYTamRvEwQJdWXP24sWDoTSNqXImJTUcgDBxg24U0yuQenrZNZMP5 y7SreF+Ozp7I3ue3r/bqkr4gVqzG6jdCDE8Cwfqb7wr20yuVHWvJQnaWRPfn0tsaictH 7omw== X-Gm-Message-State: AElRT7HKTJdFS5Qf1yQpbPy1iIyqd3/4FLLyrntCHPbhgxZJzrD1iqd8 U7T6LRbvjd7JgwhPPYxb1q2ULw== X-Google-Smtp-Source: AG47ELsj6zt/Wr1eltt8cLVrZMRLHP9VKfKSbfDxriOENNo7/VQ9YjcDKOnRfOBO/631MQmJ2w2oDw== X-Received: by 2002:a17:902:8688:: with SMTP id g8-v6mr9867858plo.340.1521488877215; Mon, 19 Mar 2018 12:47:57 -0700 (PDT) Received: from localhost.localdomain ([115.97.190.51]) by smtp.gmail.com with ESMTPSA id a14sm1083082pff.75.2018.03.19.12.47.53 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 19 Mar 2018 12:47:56 -0700 (PDT) From: Jagan Teki To: Stefano Babic Date: Tue, 20 Mar 2018 01:17:11 +0530 Message-Id: <20180319194711.23323-7-jagan@amarulasolutions.com> X-Mailer: git-send-email 2.14.3 In-Reply-To: <20180319194711.23323-1-jagan@amarulasolutions.com> References: <20180319194711.23323-1-jagan@amarulasolutions.com> Cc: Shyam Saini , u-boot@lists.denx.de, "davide . bonfanti" , Andrea CORTESE , Fabio maggi , Fabio Estevam , lamiaposta71@gmail.com Subject: [U-Boot] [PATCH 6/6] configs: imx6dl-mamoj: Add Falcon mode support X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" Add Falcon mode support to boot Linux directly after SPL. Signed-off-by: Jagan Teki --- board/bticino/mamoj/README | 27 +++++++++++++++++++++++++++ board/bticino/mamoj/spl.c | 11 +++++++++++ configs/imx6dl_mamoj_defconfig | 1 + include/configs/imx6dl-mamoj.h | 12 ++++++++++++ 4 files changed, 51 insertions(+) diff --git a/board/bticino/mamoj/README b/board/bticino/mamoj/README index 84110eafc1..707c06db58 100644 --- a/board/bticino/mamoj/README +++ b/board/bticino/mamoj/README @@ -15,6 +15,8 @@ The following methods can be used for booting Mamoj boards: 2. eMMC boot (via DFU) +3. Falcon mode + 1. USB SDP boot: --------------- @@ -92,6 +94,31 @@ The following methods can be used for booting Mamoj boards: Poweroff and Poweron the board and see U-Boot booting from eMMC. +3. Falcon mode: +-------------- + + - Skip 10M space and create dual partitions for eMMC, start sector is 20480 + + Partition Map for MMC device 2 -- Partition Type: DOS + + Part Start Sector Num Sectors UUID Type + 1 20480 131072 c52e78be-01 83 + 2 151552 7581696 c52e78be-02 83 + + - Write uImage + + => fatload mmc 2:1 $kernel_addr_r uImage + => mmc write $kernel_addr_r 0x1000 0x4000 + + - Write dtb and args + + => setenv bootargs console=ttymxc2,115200 root=/dev/mmcblk0p2 rootfstype=ext4 rootwait rw quiet + => fatload mmc 2:1 $fdt_addr_r imx6dl-mamoj.dtb + => spl export fdt $kernel_addr_r - $fdt_addr_r + => mmc write 0x13000000 0x800 0x800 + + Poweroff and Poweron the board and see Linux booting directly after SPL. + -- Jagan Teki 03/20/18 diff --git a/board/bticino/mamoj/spl.c b/board/bticino/mamoj/spl.c index 82568f7af5..531064995f 100644 --- a/board/bticino/mamoj/spl.c +++ b/board/bticino/mamoj/spl.c @@ -27,6 +27,17 @@ static iomux_v3_cfg_t const uart3_pads[] = { IOMUX_PADS(PAD_EIM_D25__UART3_RX_DATA | MUX_PAD_CTRL(UART_PAD_CTRL)), }; +#ifdef CONFIG_SPL_OS_BOOT +int spl_start_uboot(void) +{ + /* break into full u-boot on 'c' */ + if (serial_tstc() && serial_getc() == 'c') + return 1; + + return 0; +} +#endif + static int mx6dl_dcd_table[] = { 0x020e0774, 0x000C0000, /* MX6_IOM_GRP_DDR_TYPE */ 0x020e0754, 0x00000000, /* MX6_IOM_GRP_DDRPKE */ diff --git a/configs/imx6dl_mamoj_defconfig b/configs/imx6dl_mamoj_defconfig index c4a5fa22f9..3b1db5bfba 100644 --- a/configs/imx6dl_mamoj_defconfig +++ b/configs/imx6dl_mamoj_defconfig @@ -3,6 +3,7 @@ CONFIG_ARCH_MX6=y CONFIG_SYS_TEXT_BASE=0x17800000 CONFIG_SYS_MALLOC_F_LEN=0x2000 CONFIG_TARGET_MX6DL_MAMOJ=y +CONFIG_SPL_OS_BOOT=y # CONFIG_CMD_BMODE is not set CONFIG_DEFAULT_DEVICE_TREE="imx6dl-mamoj" CONFIG_SYS_EXTRA_OPTIONS="IMX_CONFIG=arch/arm/mach-imx/spl_sd.cfg" diff --git a/include/configs/imx6dl-mamoj.h b/include/configs/imx6dl-mamoj.h index 0ac238b82d..2f5e212b88 100644 --- a/include/configs/imx6dl-mamoj.h +++ b/include/configs/imx6dl-mamoj.h @@ -64,6 +64,18 @@ #define CONFIG_MXC_USB_FLAGS 0 #define CONFIG_USB_MAX_CONTROLLER_COUNT 2 +/* Falcon */ +#define CONFIG_SPL_FS_LOAD_ARGS_NAME "args" +#define CONFIG_SPL_FS_LOAD_KERNEL_NAME "uImage" +#define CONFIG_CMD_SPL +#define CONFIG_SYS_SPL_ARGS_ADDR 0x13000000 +#define CONFIG_CMD_SPL_WRITE_SIZE (128 * SZ_1K) + +/* MMC support: args@1MB kernel@2MB */ +#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTOR 0x800 /* 1MB */ +#define CONFIG_SYS_MMCSD_RAW_MODE_ARGS_SECTORS (CONFIG_CMD_SPL_WRITE_SIZE / 512) +#define CONFIG_SYS_MMCSD_RAW_MODE_KERNEL_SECTOR 0x1000 /* 2MB */ + /* Miscellaneous configurable options */ #define CONFIG_SYS_MEMTEST_START 0x80000000 #define CONFIG_SYS_MEMTEST_END (CONFIG_SYS_MEMTEST_START + 0x8000000)