From patchwork Fri Nov 30 02:54:54 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aditya Prayoga X-Patchwork-Id: 1005762 X-Patchwork-Delegate: sr@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=kobol.io Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 435fCl16XBz9s9G for ; Fri, 30 Nov 2018 13:56:03 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id BF700C22368; Fri, 30 Nov 2018 02:55:32 +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 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 94DE1C222DF; Fri, 30 Nov 2018 02:55:22 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id A1B90C222DF; Fri, 30 Nov 2018 02:55:17 +0000 (UTC) Received: from relay12.mail.gandi.net (relay12.mail.gandi.net [217.70.178.232]) by lists.denx.de (Postfix) with ESMTPS id 0183FC221C9 for ; Fri, 30 Nov 2018 02:55:13 +0000 (UTC) Received: from ubuntuVM.lan (unknown [36.79.171.6]) (Authenticated sender: aditya@kobol.io) by relay12.mail.gandi.net (Postfix) with ESMTPSA id 78052200003; Fri, 30 Nov 2018 02:55:10 +0000 (UTC) From: Aditya Prayoga To: u-boot@lists.denx.de Date: Fri, 30 Nov 2018 10:54:54 +0800 Message-Id: <1543546499-106725-2-git-send-email-aditya@kobol.io> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1543546499-106725-1-git-send-email-aditya@kobol.io> References: <1543546499-106725-1-git-send-email-aditya@kobol.io> Cc: Baruch Siach , Gauthier Provost , Aditya Prayoga , Dennis Gilmore , Stefan Roese Subject: [U-Boot] [PATCH v2 1/6] arm: mvebu: helios4: mmc: move environment before 1M 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" Store the environment before 1M into the block device. This constant is easier to remember, saves a little space, and is in line with what SolidRun's 2018.01-based fork does for the clearfog. Signed-off-by: Josua Mayer [ Aditya Prayoga: * Port forward] Signed-off-by: Aditya Prayoga --- include/configs/helios4.h | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/include/configs/helios4.h b/include/configs/helios4.h index ce912ea..c71055f 100644 --- a/include/configs/helios4.h +++ b/include/configs/helios4.h @@ -46,14 +46,9 @@ /* Environment in MMC */ #define CONFIG_SYS_MMC_ENV_DEV 0 #define CONFIG_ENV_SECT_SIZE 0x200 -#define CONFIG_ENV_SIZE 0x10000 -/* - * For SD - reserve 1 LBA for MBR + 1M for u-boot image. The MMC/eMMC - * boot image starts @ LBA-0. - * As result in MMC/eMMC case it will be a 1 sector gap between u-boot - * image and environment - */ -#define CONFIG_ENV_OFFSET 0xf0000 +#define CONFIG_ENV_SIZE 0x2000 +/* stay within first 1M */ +#define CONFIG_ENV_OFFSET (SZ_1M - CONFIG_ENV_SIZE) #define CONFIG_ENV_ADDR CONFIG_ENV_OFFSET #define CONFIG_PHY_MARVELL /* there is a marvell phy */ From patchwork Fri Nov 30 02:54:55 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aditya Prayoga X-Patchwork-Id: 1005763 X-Patchwork-Delegate: sr@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=kobol.io Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 435fCv5GXyz9s8r for ; Fri, 30 Nov 2018 13:56:11 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id 7BAE5C221C9; Fri, 30 Nov 2018 02:56:08 +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 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 28748C2231F; Fri, 30 Nov 2018 02:55:39 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 431B1C22357; Fri, 30 Nov 2018 02:55:20 +0000 (UTC) Received: from relay12.mail.gandi.net (relay12.mail.gandi.net [217.70.178.232]) by lists.denx.de (Postfix) with ESMTPS id 53701C22303 for ; Fri, 30 Nov 2018 02:55:17 +0000 (UTC) Received: from ubuntuVM.lan (unknown [36.79.171.6]) (Authenticated sender: aditya@kobol.io) by relay12.mail.gandi.net (Postfix) with ESMTPSA id 3AA6A200005; Fri, 30 Nov 2018 02:55:13 +0000 (UTC) From: Aditya Prayoga To: u-boot@lists.denx.de Date: Fri, 30 Nov 2018 10:54:55 +0800 Message-Id: <1543546499-106725-3-git-send-email-aditya@kobol.io> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1543546499-106725-1-git-send-email-aditya@kobol.io> References: <1543546499-106725-1-git-send-email-aditya@kobol.io> Cc: Baruch Siach , Gauthier Provost , Aditya Prayoga , Dennis Gilmore , Stefan Roese Subject: [U-Boot] [PATCH v2 2/6] arm: mvebu: helios4: Enable I2C and IO Expander 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 Marvell I2C driver and I2C IO expander. Set default bus to external I2C bus. Define I2C aliases in device tree so it can be recognized by the driver. Signed-off-by: Aditya Prayoga --- v2: * Rearrange the patch, enabling I2C and convert I2C IO expander to DM should applied together. * Move u-boot specific properties into armada-388-helios4-u-boot.dtsi (Dennis Gilmore) --- arch/arm/dts/armada-388-helios4-u-boot.dtsi | 8 ++++++++ board/kobol/helios4/helios4.c | 32 ----------------------------- configs/helios4_defconfig | 4 ++++ 3 files changed, 12 insertions(+), 32 deletions(-) create mode 100644 arch/arm/dts/armada-388-helios4-u-boot.dtsi diff --git a/arch/arm/dts/armada-388-helios4-u-boot.dtsi b/arch/arm/dts/armada-388-helios4-u-boot.dtsi new file mode 100644 index 0000000..bd8c6ce --- /dev/null +++ b/arch/arm/dts/armada-388-helios4-u-boot.dtsi @@ -0,0 +1,8 @@ +// SPDX-License-Identifier: GPL-2.0+ + +/ { + aliases { + i2c0 = &i2c0; + i2c1 = &i2c1; + }; +}; diff --git a/board/kobol/helios4/helios4.c b/board/kobol/helios4/helios4.c index 3416783..37c46a5 100644 --- a/board/kobol/helios4/helios4.c +++ b/board/kobol/helios4/helios4.c @@ -33,18 +33,6 @@ DECLARE_GLOBAL_DATA_PTR; #define BOARD_GPP_POL_LOW 0x0 #define BOARD_GPP_POL_MID 0x0 -/* IO expander on Marvell GP board includes e.g. fan enabling */ -struct marvell_io_exp { - u8 addr; - u8 val; -}; - -static struct marvell_io_exp io_exp[] = { - {6, 0xf9}, - {2, 0x46}, /* Assert reset signals and enable USB3 current limiter */ - {6, 0xb9} -}; - static struct serdes_map board_serdes_map[] = { {SATA0, SERDES_SPEED_6_GBPS, SERDES_DEFAULT_MODE, 0, 0}, {USB3_HOST0, SERDES_SPEED_5_GBPS, SERDES_DEFAULT_MODE, 0, 0}, @@ -123,29 +111,9 @@ int board_early_init_f(void) int board_init(void) { - int i; - /* Address of boot parameters */ gd->bd->bi_boot_params = mvebu_sdram_bar(0) + 0x100; - /* Init I2C IO expanders */ - for (i = 0; i < ARRAY_SIZE(io_exp); i++) { - struct udevice *dev; - int ret; - - ret = i2c_get_chip_for_busnum(0, io_exp[i].addr, 1, &dev); - if (ret) { - printf("Cannot find I2C: %d\n", ret); - return 0; - } - - ret = dm_i2c_write(dev, io_exp[i].val, &io_exp[i].val, 1); - if (ret) { - printf("Failed to set IO expander via I2C\n"); - return -EIO; - } - } - return 0; } diff --git a/configs/helios4_defconfig b/configs/helios4_defconfig index e30eb3d..6471fa3 100644 --- a/configs/helios4_defconfig +++ b/configs/helios4_defconfig @@ -38,7 +38,11 @@ CONFIG_ENV_IS_IN_MMC=y CONFIG_NET_RANDOM_ETHADDR=y CONFIG_SPL_OF_TRANSLATE=y CONFIG_SCSI_AHCI=y +CONFIG_DM_PCA953X=y CONFIG_DM_I2C=y +CONFIG_SYS_I2C_MVTWSI=y +CONFIG_I2C_SET_DEFAULT_BUS_NUM=y +CONFIG_I2C_DEFAULT_BUS_NUMBER=0x1 CONFIG_MMC_SDHCI=y CONFIG_MMC_SDHCI_SDMA=y CONFIG_MMC_SDHCI_MV=y From patchwork Fri Nov 30 02:54:56 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aditya Prayoga X-Patchwork-Id: 1005764 X-Patchwork-Delegate: sr@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=kobol.io Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 435fFT1bRMz9s3C for ; Fri, 30 Nov 2018 13:57:33 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id E681AC222E5; Fri, 30 Nov 2018 02:55:50 +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 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 5F9D4C2214C; Fri, 30 Nov 2018 02:55:31 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 8542EC21E36; Fri, 30 Nov 2018 02:55:24 +0000 (UTC) Received: from relay12.mail.gandi.net (relay12.mail.gandi.net [217.70.178.232]) by lists.denx.de (Postfix) with ESMTPS id BE70EC22362 for ; Fri, 30 Nov 2018 02:55:20 +0000 (UTC) Received: from ubuntuVM.lan (unknown [36.79.171.6]) (Authenticated sender: aditya@kobol.io) by relay12.mail.gandi.net (Postfix) with ESMTPSA id 910C4200003; Fri, 30 Nov 2018 02:55:17 +0000 (UTC) From: Aditya Prayoga To: u-boot@lists.denx.de Date: Fri, 30 Nov 2018 10:54:56 +0800 Message-Id: <1543546499-106725-4-git-send-email-aditya@kobol.io> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1543546499-106725-1-git-send-email-aditya@kobol.io> References: <1543546499-106725-1-git-send-email-aditya@kobol.io> Cc: Baruch Siach , Gauthier Provost , Aditya Prayoga , Dennis Gilmore , Stefan Roese Subject: [U-Boot] [PATCH v2 3/6] arm: mvebu: helios4: Enable mvebu GPIO 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" Make use of U-Boot's GPIO DM to control native GPIO and I2C IO expander. Signed-off-by: Aditya Prayoga --- v2: * Rearrange the patch, move I2C IO expander DM convertion together with I2C. --- configs/helios4_defconfig | 3 +++ 1 file changed, 3 insertions(+) diff --git a/configs/helios4_defconfig b/configs/helios4_defconfig index 6471fa3..69dd774 100644 --- a/configs/helios4_defconfig +++ b/configs/helios4_defconfig @@ -22,6 +22,7 @@ CONFIG_DISPLAY_BOARDINFO_LATE=y CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x141 CONFIG_SPL_I2C_SUPPORT=y # CONFIG_CMD_FLASH is not set +CONFIG_CMD_GPIO=y CONFIG_CMD_I2C=y CONFIG_CMD_MMC=y CONFIG_CMD_PCI=y @@ -38,6 +39,8 @@ CONFIG_ENV_IS_IN_MMC=y CONFIG_NET_RANDOM_ETHADDR=y CONFIG_SPL_OF_TRANSLATE=y CONFIG_SCSI_AHCI=y +CONFIG_DM_GPIO=y +CONFIG_MVEBU_GPIO=y CONFIG_DM_PCA953X=y CONFIG_DM_I2C=y CONFIG_SYS_I2C_MVTWSI=y From patchwork Fri Nov 30 02:54:57 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aditya Prayoga X-Patchwork-Id: 1005766 X-Patchwork-Delegate: sr@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=kobol.io Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 435fG81X1Sz9s3C for ; Fri, 30 Nov 2018 13:58:08 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id DDF45C22318; Fri, 30 Nov 2018 02:56:44 +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 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 E41C5C2206C; Fri, 30 Nov 2018 02:55:58 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 16ED8C222EC; Fri, 30 Nov 2018 02:55:28 +0000 (UTC) Received: from relay12.mail.gandi.net (relay12.mail.gandi.net [217.70.178.232]) by lists.denx.de (Postfix) with ESMTPS id 3A621C22318 for ; Fri, 30 Nov 2018 02:55:24 +0000 (UTC) Received: from ubuntuVM.lan (unknown [36.79.171.6]) (Authenticated sender: aditya@kobol.io) by relay12.mail.gandi.net (Postfix) with ESMTPSA id 0B43B200002; Fri, 30 Nov 2018 02:55:20 +0000 (UTC) From: Aditya Prayoga To: u-boot@lists.denx.de Date: Fri, 30 Nov 2018 10:54:57 +0800 Message-Id: <1543546499-106725-5-git-send-email-aditya@kobol.io> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1543546499-106725-1-git-send-email-aditya@kobol.io> References: <1543546499-106725-1-git-send-email-aditya@kobol.io> Cc: Baruch Siach , Gauthier Provost , Aditya Prayoga , Dennis Gilmore , Stefan Roese Subject: [U-Boot] [PATCH v2 4/6] arm: mvebu: helios4: Reduce U-Boot image size 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" Remove unused I2C support in SPL and use simple_malloc functions to reduce SPL image size. Since Helios4 does not have any PCIe allocated on SerDes, remove PCI support. MTD layer on top of SPI flash is not needed, remove it also. Signed-off-by: Aditya Prayoga --- configs/helios4_defconfig | 5 +---- include/configs/helios4.h | 6 ------ 2 files changed, 1 insertion(+), 10 deletions(-) diff --git a/configs/helios4_defconfig b/configs/helios4_defconfig index 69dd774..53995fe 100644 --- a/configs/helios4_defconfig +++ b/configs/helios4_defconfig @@ -8,6 +8,7 @@ CONFIG_TARGET_HELIOS4=y CONFIG_MVEBU_SPL_BOOT_DEVICE_MMC=y CONFIG_SPL_MMC_SUPPORT=y CONFIG_SPL_SERIAL_SUPPORT=y +CONFIG_SPL_SYS_MALLOC_SIMPLE=y CONFIG_SPL=y CONFIG_DEBUG_UART_BASE=0xd0012000 CONFIG_DEBUG_UART_CLOCK=250000000 @@ -20,12 +21,10 @@ CONFIG_SYS_CONSOLE_INFO_QUIET=y # CONFIG_DISPLAY_BOARDINFO is not set CONFIG_DISPLAY_BOARDINFO_LATE=y CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x141 -CONFIG_SPL_I2C_SUPPORT=y # CONFIG_CMD_FLASH is not set CONFIG_CMD_GPIO=y CONFIG_CMD_I2C=y CONFIG_CMD_MMC=y -CONFIG_CMD_PCI=y CONFIG_CMD_SF=y CONFIG_CMD_SPI=y CONFIG_CMD_USB=y @@ -52,11 +51,9 @@ CONFIG_MMC_SDHCI_MV=y CONFIG_SPI_FLASH=y CONFIG_SPI_FLASH_BAR=y CONFIG_SPI_FLASH_WINBOND=y -CONFIG_SPI_FLASH_MTD=y CONFIG_PHY_GIGE=y CONFIG_MVNETA=y CONFIG_MII=y -CONFIG_PCI=y CONFIG_SCSI=y CONFIG_DEBUG_UART_SHIFT=2 CONFIG_SYS_NS16550=y diff --git a/include/configs/helios4.h b/include/configs/helios4.h index c71055f..e665340 100644 --- a/include/configs/helios4.h +++ b/include/configs/helios4.h @@ -54,12 +54,6 @@ #define CONFIG_PHY_MARVELL /* there is a marvell phy */ #define PHY_ANEG_TIMEOUT 8000 /* PHY needs a longer aneg time */ -/* PCIe support */ -#ifndef CONFIG_SPL_BUILD -#define CONFIG_PCI_MVEBU -#define CONFIG_PCI_SCAN_SHOW -#endif - /* Keep device tree and initrd in lower memory so the kernel can access them */ #define RELOCATION_LIMITS_ENV_SETTINGS \ "fdt_high=0x10000000\0" \ From patchwork Fri Nov 30 02:54:58 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aditya Prayoga X-Patchwork-Id: 1005767 X-Patchwork-Delegate: sr@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=kobol.io Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 435fHC0yCfz9s8r for ; Fri, 30 Nov 2018 13:59:03 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id DF4B2C22303; Fri, 30 Nov 2018 02:56:26 +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 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 1719CC21D65; Fri, 30 Nov 2018 02:55:45 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id A42C5C221C9; Fri, 30 Nov 2018 02:55:31 +0000 (UTC) Received: from relay12.mail.gandi.net (relay12.mail.gandi.net [217.70.178.232]) by lists.denx.de (Postfix) with ESMTPS id A61C9C223D3 for ; Fri, 30 Nov 2018 02:55:27 +0000 (UTC) Received: from ubuntuVM.lan (unknown [36.79.171.6]) (Authenticated sender: aditya@kobol.io) by relay12.mail.gandi.net (Postfix) with ESMTPSA id 79878200003; Fri, 30 Nov 2018 02:55:24 +0000 (UTC) From: Aditya Prayoga To: u-boot@lists.denx.de Date: Fri, 30 Nov 2018 10:54:58 +0800 Message-Id: <1543546499-106725-6-git-send-email-aditya@kobol.io> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1543546499-106725-1-git-send-email-aditya@kobol.io> References: <1543546499-106725-1-git-send-email-aditya@kobol.io> Cc: Baruch Siach , Gauthier Provost , Aditya Prayoga , Dennis Gilmore , Stefan Roese Subject: [U-Boot] [PATCH v2 5/6] arm: mvebu: helios4: Enable SPI flash 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" Enable SPI flash support under U-Boot and SPL. The ENV size and offset, ported from U-Boot 2013.01 Marvell version: 2015_T1.0p16 To create U-Boot image for SPI flash, user would need to replace * CONFIG_MVEBU_SPL_BOOT_DEVICE_MMC with CONFIG_MVEBU_SPL_BOOT_DEVICE_SPI * CONFIG_ENV_IS_IN_MMC with CONFIG_ENV_IS_IN_SPI_FLASH Signed-off-by: Aditya Prayoga --- v2: * Move u-boot specific properties into armada-388-helios4-u-boot.dtsi (Dennis Gilmore) --- arch/arm/dts/armada-388-helios4-u-boot.dtsi | 10 ++++++++++ configs/helios4_defconfig | 1 - include/configs/helios4.h | 31 +++++++++++++++++++++++++++++ 3 files changed, 41 insertions(+), 1 deletion(-) diff --git a/arch/arm/dts/armada-388-helios4-u-boot.dtsi b/arch/arm/dts/armada-388-helios4-u-boot.dtsi index bd8c6ce..4bc00ae 100644 --- a/arch/arm/dts/armada-388-helios4-u-boot.dtsi +++ b/arch/arm/dts/armada-388-helios4-u-boot.dtsi @@ -4,5 +4,15 @@ aliases { i2c0 = &i2c0; i2c1 = &i2c1; + spi1 = &spi1; }; }; + +&spi1 { + u-boot,dm-spl; +}; + +&w25q32 { + status = "okay"; + u-boot,dm-spl; +}; diff --git a/configs/helios4_defconfig b/configs/helios4_defconfig index 53995fe..3bb4622 100644 --- a/configs/helios4_defconfig +++ b/configs/helios4_defconfig @@ -6,7 +6,6 @@ CONFIG_SPL_LIBGENERIC_SUPPORT=y CONFIG_SYS_MALLOC_F_LEN=0x2000 CONFIG_TARGET_HELIOS4=y CONFIG_MVEBU_SPL_BOOT_DEVICE_MMC=y -CONFIG_SPL_MMC_SUPPORT=y CONFIG_SPL_SERIAL_SUPPORT=y CONFIG_SPL_SYS_MALLOC_SIMPLE=y CONFIG_SPL=y diff --git a/include/configs/helios4.h b/include/configs/helios4.h index e665340..3157225 100644 --- a/include/configs/helios4.h +++ b/include/configs/helios4.h @@ -6,6 +6,8 @@ #ifndef _CONFIG_HELIOS4_H #define _CONFIG_HELIOS4_H +#include + /* * High Level Configuration Options (easy to change) */ @@ -23,6 +25,9 @@ /* SPI NOR flash default params, used by sf commands */ #define CONFIG_SF_DEFAULT_BUS 1 +#define CONFIG_SF_DEFAULT_CS 0 +#define CONFIG_SF_DEFAULT_SPEED 104000000 +#define CONFIG_SF_DEFAULT_MODE SPI_MODE_3 /* * SDIO/MMC Card Configuration @@ -43,6 +48,21 @@ #define CONFIG_SYS_SCSI_MAX_DEVICE (CONFIG_SYS_SCSI_MAX_SCSI_ID * \ CONFIG_SYS_SCSI_MAX_LUN) +#ifdef CONFIG_MVEBU_SPL_BOOT_DEVICE_SPI +/* + * SPI Flash configuration for the environment access + */ +#define CONFIG_ENV_SPI_BUS CONFIG_SF_DEFAULT_BUS +#define CONFIG_ENV_SPI_CS CONFIG_SF_DEFAULT_CS +#define CONFIG_ENV_SPI_MAX_HZ CONFIG_SF_DEFAULT_SPEED + +/* Environment in SPI NOR flash */ +#define CONFIG_ENV_SECT_SIZE SZ_64K +#define CONFIG_ENV_SIZE CONFIG_ENV_SECT_SIZE +#define CONFIG_ENV_OFFSET SZ_1M +#endif + +#ifdef CONFIG_MVEBU_SPL_BOOT_DEVICE_MMC /* Environment in MMC */ #define CONFIG_SYS_MMC_ENV_DEV 0 #define CONFIG_ENV_SECT_SIZE 0x200 @@ -50,6 +70,7 @@ /* stay within first 1M */ #define CONFIG_ENV_OFFSET (SZ_1M - CONFIG_ENV_SIZE) #define CONFIG_ENV_ADDR CONFIG_ENV_OFFSET +#endif #define CONFIG_PHY_MARVELL /* there is a marvell phy */ #define PHY_ANEG_TIMEOUT 8000 /* PHY needs a longer aneg time */ @@ -69,7 +90,13 @@ */ #define SPL_BOOT_SPI_NOR_FLASH 1 #define SPL_BOOT_SDIO_MMC_CARD 2 + +#ifdef CONFIG_MVEBU_SPL_BOOT_DEVICE_SPI +#define CONFIG_SPL_BOOT_DEVICE SPL_BOOT_SPI_NOR_FLASH +#endif +#ifdef CONFIG_MVEBU_SPL_BOOT_DEVICE_MMC #define CONFIG_SPL_BOOT_DEVICE SPL_BOOT_SDIO_MMC_CARD +#endif /* Defines for SPL */ #define CONFIG_SPL_SIZE (140 << 10) @@ -88,12 +115,16 @@ #if CONFIG_SPL_BOOT_DEVICE == SPL_BOOT_SPI_NOR_FLASH /* SPL related SPI defines */ +#define CONFIG_SPL_SPI_FLASH_SUPPORT +#define CONFIG_SPL_SPI_LOAD +#define CONFIG_SPL_SPI_SUPPORT #define CONFIG_SYS_SPI_U_BOOT_OFFS 0x20000 #define CONFIG_SYS_U_BOOT_OFFS CONFIG_SYS_SPI_U_BOOT_OFFS #endif #if CONFIG_SPL_BOOT_DEVICE == SPL_BOOT_SDIO_MMC_CARD /* SPL related MMC defines */ +#define CONFIG_SPL_MMC_SUPPORT #define CONFIG_SYS_MMC_U_BOOT_OFFS (160 << 10) #define CONFIG_SYS_U_BOOT_OFFS CONFIG_SYS_MMC_U_BOOT_OFFS #ifdef CONFIG_SPL_BUILD From patchwork Fri Nov 30 02:54:59 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aditya Prayoga X-Patchwork-Id: 1005765 X-Patchwork-Delegate: sr@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=kobol.io Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 435fFb4P2jz9s3C for ; Fri, 30 Nov 2018 13:57:39 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id 1942CC21E36; Fri, 30 Nov 2018 02:57:01 +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 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 CE81DC22266; Fri, 30 Nov 2018 02:56:02 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 34D85C222EC; Fri, 30 Nov 2018 02:55:34 +0000 (UTC) Received: from relay12.mail.gandi.net (relay12.mail.gandi.net [217.70.178.232]) by lists.denx.de (Postfix) with ESMTPS id 25F3EC22399 for ; Fri, 30 Nov 2018 02:55:31 +0000 (UTC) Received: from ubuntuVM.lan (unknown [36.79.171.6]) (Authenticated sender: aditya@kobol.io) by relay12.mail.gandi.net (Postfix) with ESMTPSA id E0EAC200002; Fri, 30 Nov 2018 02:55:27 +0000 (UTC) From: Aditya Prayoga To: u-boot@lists.denx.de Date: Fri, 30 Nov 2018 10:54:59 +0800 Message-Id: <1543546499-106725-7-git-send-email-aditya@kobol.io> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1543546499-106725-1-git-send-email-aditya@kobol.io> References: <1543546499-106725-1-git-send-email-aditya@kobol.io> Cc: Baruch Siach , Gauthier Provost , Aditya Prayoga , Dennis Gilmore , Stefan Roese Subject: [U-Boot] [PATCH v2 6/6] arm: mvebu: helios4: Reset uSOM onboard phy during board init 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" Similar to Clearfog rev 2.1, GPIO 19 also used to reset onboard ethernet PHY. Signed-off-by: Aditya Prayoga --- v2: * Use generic gpio_* API (Baruch Siach) --- board/kobol/helios4/helios4.c | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/board/kobol/helios4/helios4.c b/board/kobol/helios4/helios4.c index 37c46a5..e535d7b 100644 --- a/board/kobol/helios4/helios4.c +++ b/board/kobol/helios4/helios4.c @@ -8,6 +8,7 @@ #include #include #include +#include #include #include #include @@ -111,9 +112,39 @@ int board_early_init_f(void) int board_init(void) { + struct udevice *gpio0; + struct gpio_desc phy_reset; + int ret; + /* Address of boot parameters */ gd->bd->bi_boot_params = mvebu_sdram_bar(0) + 0x100; + ret = uclass_get_device_by_name(UCLASS_GPIO, + "gpio@18100", + &gpio0); + if (ret < 0) { + printf("Failed to find gpio@18100 node.\n"); + return ret; + } + + phy_reset.dev = gpio0; + + /* MPP19 controls the uSOM onboard phy reset */ + phy_reset.offset = 19; + + ret = dm_gpio_request(&phy_reset, "phy-reset"); + if (ret) + return ret; + + dm_gpio_set_dir_flags(&phy_reset, + GPIOD_IS_OUT | + GPIOD_ACTIVE_LOW | + GPIOD_IS_OUT_ACTIVE); + + mdelay(10); + dm_gpio_set_value(&phy_reset, 0); + mdelay(10); + return 0; }