From patchwork Thu Feb 21 04:31:30 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Anup Patel X-Patchwork-Id: 1045746 X-Patchwork-Delegate: uboot@andestech.com 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=fail (p=none dis=none) header.from=wdc.com Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=wdc.com header.i=@wdc.com header.b="Ue6dM2Os"; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=sharedspace.onmicrosoft.com header.i=@sharedspace.onmicrosoft.com header.b="mk6gKY/7"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 444hZK6Zpnz9s5c for ; Thu, 21 Feb 2019 15:39:05 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id 96996C21EA2; Thu, 21 Feb 2019 04:37:38 +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.7 required=5.0 tests=BAD_ENC_HEADER, KHOP_BIG_TO_CC, RCVD_IN_DNSWL_LOW, 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 4A016C21EF2; Thu, 21 Feb 2019 04:31:58 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 40809C21DCA; Thu, 21 Feb 2019 04:31:48 +0000 (UTC) Received: from esa3.hgst.iphmx.com (esa3.hgst.iphmx.com [216.71.153.141]) by lists.denx.de (Postfix) with ESMTPS id 48D39C21D65 for ; Thu, 21 Feb 2019 04:31:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=wdc.com; i=@wdc.com; q=dns/txt; s=dkim.wdc.com; t=1550723504; x=1582259504; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=7gUybMIIi8xE3XahoPcZEppePSMNLmYnvK9uh+YrWGE=; b=Ue6dM2OsG1udKVOBqDLto3fo4MynXMReSuUCwdefQgax3VTLRB1/tX7e F/P/RSGN1D/dN1D+THWVBCkFwcNzGDmew36su/gjUa54uD5fu49QnSnU5 DtK/l+YZrSwF3+tjhoe3eypxtjTIauR4zV2BoIJIImox5EMqjT+tDOKIR yQ7K8OKJr5FNKllRPywoiagKguo9hgqLaPdSdfCkJviebJ1HmPjvtplwx niw5vPg7Ovxe9dxmO2Pj/0M/kv4R2GpmKhehDxtRpr3dYkz7mAG7Rxjlu 4AwVM4MrUm3A9sdRY+yknxwMbgbw+uTWebRtSyjOprOpmq4a/2YPpto9P w==; X-IronPort-AV: E=Sophos;i="5.58,393,1544457600"; d="scan'208";a="106774595" Received: from mail-by2nam03lp2057.outbound.protection.outlook.com (HELO NAM03-BY2-obe.outbound.protection.outlook.com) ([104.47.42.57]) by ob1.hgst.iphmx.com with ESMTP; 21 Feb 2019 12:31:42 +0800 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sharedspace.onmicrosoft.com; s=selector1-wdc-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=8YYyD6Dw2mJSOvth8WFUujj1bvrUsN7YleCCeljZoc8=; b=mk6gKY/7FKj/Gz+Nomxw6EAfGtPOKSW82i7PAXielC1M8pIo5pK8rg5m3MwrEaIYbqTS5+UKz39dBM0yK4UlyoZ5rGOcKAs30MalgPNrztSqZlfBNZnlqbJ75lPiUobDhfFPqW6fs0k+DPA6Z+BsgnySWNMxRQipcaauvxsWX18= Received: from BN8PR04MB6050.namprd04.prod.outlook.com (20.178.214.224) by BN8PR04MB5620.namprd04.prod.outlook.com (20.179.72.207) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1622.16; Thu, 21 Feb 2019 04:31:30 +0000 Received: from BN8PR04MB6050.namprd04.prod.outlook.com ([fe80::f87a:cb97:e3a:b8e7]) by BN8PR04MB6050.namprd04.prod.outlook.com ([fe80::f87a:cb97:e3a:b8e7%4]) with mapi id 15.20.1622.020; Thu, 21 Feb 2019 04:31:30 +0000 From: Anup Patel To: Rick Chen , Bin Meng , Joe Hershberger , Michal Simek , Michal Simek , Lukas Auer , Masahiro Yamada , Simon Glass Thread-Topic: [PATCH v9 13/15] riscv: Add SiFive FU540 board support Thread-Index: AQHUyZ5QuLcyhJOkJ0SNTqaN3ATwkA== Date: Thu, 21 Feb 2019 04:31:30 +0000 Message-ID: <20190221042936.13441-14-anup.patel@wdc.com> References: <20190221042936.13441-1-anup.patel@wdc.com> In-Reply-To: <20190221042936.13441-1-anup.patel@wdc.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: MAXPR0101CA0070.INDPRD01.PROD.OUTLOOK.COM (2603:1096:a00:e::32) To BN8PR04MB6050.namprd04.prod.outlook.com (2603:10b6:408:53::32) authentication-results: spf=none (sender IP is ) smtp.mailfrom=Anup.Patel@wdc.com; x-ms-exchange-messagesentrepresentingtype: 1 x-mailer: git-send-email 2.17.1 x-originating-ip: [106.51.20.29] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 88ee46ce-ac01-4526-c847-08d697b5733c x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(5600110)(711020)(4605104)(4618075)(4534185)(7168020)(4627221)(201703031133081)(201702281549075)(8990200)(2017052603328)(7153060)(7193020); SRVR:BN8PR04MB5620; x-ms-traffictypediagnostic: BN8PR04MB5620: wdcipoutbound: EOP-TRUE x-microsoft-exchange-diagnostics: =?iso-8859-1?Q?1; BN8PR04MB5620; 23:i2YuzuKuOX1e+9NDfITh/cQG90Q8CRCsb14mwkH?= =?iso-8859-1?q?4KHGZKYcIBuyNsbmZc9FbM2kX?= =?iso-8859-1?q?j2TOGx5P/c4vEIP9fGf89Ujj16QEX/aCJPZtQ9q9FZ2rUkA84wW?= =?iso-8859-1?q?ypj+Sn6oFtWPAgmCKrBrhhM3B7pYRFnE0KL/CZs7cw1ir1H0euI?= =?iso-8859-1?q?QmusvRNm5FF2jX765Jzxp7DayB8XjQm9ZjuPt8shl+n3wyelfO3?= =?iso-8859-1?q?FLJdjEQp8p16wyhbrCAKFANroOpNC8H3Nm/hYBBxWgGyoZOLU8I?= =?iso-8859-1?q?rlPedMwX/BClRI0LNJg5zR9vymqu4z58PgniXmqTA2TjiWji00k?= =?iso-8859-1?q?RY4AyklrfoxqGhz+bQqvJ6k/fr1uzRkdgeycj0NR+dlqbFi2md2?= =?iso-8859-1?q?oToc6vrRIHA9G/dJjhnId+j5XlNxmTkUXynjpYka339J4KxDDyO?= =?iso-8859-1?q?h06nWxbGAQZLRhXF5x61754/5IJYNN06oA5qG9MKF5YOcNMclXz?= =?iso-8859-1?q?ykSLRsk2XhYTcGzwso4fy8GQPZ1+BNkFRhAivZSn9kGdWnLaO4V?= =?iso-8859-1?q?nmiOU3npWFz13YJfxh71q4WcPgSbfe27nXDJWA+GGtQ63H7HOUP?= =?iso-8859-1?q?9YIbD0TTDmBdLjeyQWZqQ0LooBn1Jem0YGp0fwKd5TYYNvEjU6d?= =?iso-8859-1?q?MJYGP7xU5wpzS5x3boBIYp8GTgtwwKHSln4i6/7jnZ9uhIST9lu?= =?iso-8859-1?q?URjqzCWYVkqVt8EyzXufAJLbIYyz2vvn4WVcoAjrrBIb3+krMK9?= =?iso-8859-1?q?s9lIKoPw3ArooNAK5t8KFxUvldzCi1MlMTejfw516tdhW2idp9S?= =?iso-8859-1?q?Qve/XTuLfS4rcEMvf9UkXdNDgfmHOQjyUpsIGra3jTpmNotclBA?= =?iso-8859-1?q?LQ3SyB6VTSef9Kqleuf5JLPJii12in8GsTWazG538quX7A+H07g?= =?iso-8859-1?q?pHntJo1GgwRebKOcIZJJmARUt5qQnTpBzx57/HFSjRnoTBw0Uzm?= =?iso-8859-1?q?4d34I06SeJ3Y8Zsh7+Z2KKgBKWi4oUOPfYbSnITE0sUULJy1fJX?= =?iso-8859-1?q?gVJjXiSm+NB++9aKFK6EFCGMrkuAdmXtB6a0B7Hvf8Ho/KJvK3y?= =?iso-8859-1?q?tIacK/SZVJCvPEbSrMBa9o3L4RYyBQBHlca07/6hzjmBpj5U9di?= =?iso-8859-1?q?D5JfyY/qeczo2OZUdRkPbCTsIC+dybb6HvUfi+7t7LfOhfwZg9p?= =?iso-8859-1?q?DYDzLxj5o0oxThn/o5VgwGS7Rm5x7Mh3yMTkEvdZvlp6FdPfAEG?= =?iso-8859-1?q?IuJZ2h2K7JBsUkl/tBWsASn1l5QyEJq4PX4FOqmetZ0kEf/jQba?= =?iso-8859-1?q?iOaOWsAyXkbivWuN+QjDXVFN2f/Ib3yD5xFYXO+P8dQHLse58W0?= =?iso-8859-1?q?AolXnT0ofNfZoABrDfQBnIKzg/q0SJ2SJYTjcfd7LLT9VqeozRQ?= =?iso-8859-1?q?JgZT1vxLqXqV7DEU21Ga69w3ilg=3D=3D?= x-microsoft-antispam-prvs: x-forefront-prvs: 09555FB1AD x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(6029001)(376002)(39860400002)(366004)(346002)(396003)(136003)(199004)(189003)(14454004)(8936002)(81166006)(71200400001)(26005)(71190400001)(1076003)(8676002)(81156014)(478600001)(99286004)(55236004)(66066001)(3846002)(256004)(97736004)(86362001)(105586002)(5660300002)(2906002)(72206003)(78486014)(486006)(25786009)(476003)(6486002)(446003)(7416002)(36756003)(2616005)(44832011)(9456002)(68736007)(50226002)(102836004)(6512007)(106356001)(305945005)(54906003)(110136005)(6506007)(53936002)(386003)(52116002)(7736002)(186003)(76176011)(11346002)(6436002)(6116002)(316002)(4326008); DIR:OUT; SFP:1102; SCL:1; SRVR:BN8PR04MB5620; H:BN8PR04MB6050.namprd04.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: oED4p2GN5UknMUXN46cmg+9DIk9sGo6LnX+Qv7z6Y6fBd//jfiVakXBNYKhVofzFB5FG0G+Y2fD6skGwTEbjhfA5tK1slxNvyNdItRu7m3sN4FMMB28ddbOWSb76BSpkqT3L51N78wgf9Xhd1gY36+puWbwCs7MUhroNjBGpVVlQwxX7Q6lGYr7nHuZhA2EAp1AXyBDEWY83DPAop9NPGSoaJlUBKTQj2Id2bbnfBi9KwQHQzIaQM6IaaxOI04AeXruUdcBSHfSpScv1MRCEZ9kf+N/rNJ7ADi+YtWFI11Z0g3gxG2NXz9iUoEbc2pUjzzvsTCNWxyzc+w1ewFMCfkb4LVFHx2WTZuSRJyjmGrNOuWVDZjeUUZ7roYF0xu/p1UcWfmC/yzcg45BA9trE9dvqXuWdhE53Ku4JXwSUTIQ= MIME-Version: 1.0 X-OriginatorOrg: wdc.com X-MS-Exchange-CrossTenant-Network-Message-Id: 88ee46ce-ac01-4526-c847-08d697b5733c X-MS-Exchange-CrossTenant-originalarrivaltime: 21 Feb 2019 04:31:25.7214 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-id: b61c8803-16f3-4c35-9b17-6f65f441df86 X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8PR04MB5620 Cc: Palmer Dabbelt , Alexander Graf , U-Boot Mailing List Subject: [U-Boot] [PATCH v9 13/15] riscv: Add SiFive FU540 board 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: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" This patch adds SiFive FU540 board support. For now, only SiFive serial, SiFive PRCI, and Cadance MACB drivers are only enabled. The SiFive FU540 defconfig by default builds U-Boot for S-Mode because U-Boot on SiFive FU540 will run in S-Mode as payload of BBL or OpenSBI. Signed-off-by: Atish Patra Signed-off-by: Anup Patel Reviewed-by: Alexander Graf Reviewed-by: Lukas Auer Reviewed-by: Bin Meng --- arch/riscv/Kconfig | 4 ++++ board/sifive/fu540/Kconfig | 42 +++++++++++++++++++++++++++++++++ board/sifive/fu540/MAINTAINERS | 9 +++++++ board/sifive/fu540/Makefile | 5 ++++ board/sifive/fu540/fu540.c | 17 ++++++++++++++ configs/sifive_fu540_defconfig | 11 +++++++++ include/configs/sifive-fu540.h | 43 ++++++++++++++++++++++++++++++++++ 7 files changed, 131 insertions(+) create mode 100644 board/sifive/fu540/Kconfig create mode 100644 board/sifive/fu540/MAINTAINERS create mode 100644 board/sifive/fu540/Makefile create mode 100644 board/sifive/fu540/fu540.c create mode 100644 configs/sifive_fu540_defconfig create mode 100644 include/configs/sifive-fu540.h diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig index 6879047ff7..36512a8995 100644 --- a/arch/riscv/Kconfig +++ b/arch/riscv/Kconfig @@ -14,11 +14,15 @@ config TARGET_AX25_AE350 config TARGET_QEMU_VIRT bool "Support QEMU Virt Board" +config TARGET_SIFIVE_FU540 + bool "Support SiFive FU540 Board" + endchoice # board-specific options below source "board/AndesTech/ax25-ae350/Kconfig" source "board/emulation/qemu-riscv/Kconfig" +source "board/sifive/fu540/Kconfig" # platform-specific options below source "arch/riscv/cpu/ax25/Kconfig" diff --git a/board/sifive/fu540/Kconfig b/board/sifive/fu540/Kconfig new file mode 100644 index 0000000000..6be3d88144 --- /dev/null +++ b/board/sifive/fu540/Kconfig @@ -0,0 +1,42 @@ +if TARGET_SIFIVE_FU540 + +config SYS_BOARD + default "fu540" + +config SYS_VENDOR + default "sifive" + +config SYS_CPU + default "generic" + +config SYS_CONFIG_NAME + default "sifive-fu540" + +config SYS_TEXT_BASE + default 0x80000000 if !RISCV_SMODE + default 0x80200000 if RISCV_SMODE + +config BOARD_SPECIFIC_OPTIONS # dummy + def_bool y + select GENERIC_RISCV + imply CMD_DHCP + imply CMD_EXT2 + imply CMD_EXT4 + imply CMD_FAT + imply CMD_FS_GENERIC + imply CMD_NET + imply CMD_PING + imply CLK_SIFIVE + imply CLK_SIFIVE_FU540_PRCI + imply DOS_PARTITION + imply EFI_PARTITION + imply IP_DYN + imply ISO_PARTITION + imply MACB + imply MII + imply NET_RANDOM_ETHADDR + imply PHY_LIB + imply PHY_MSCC + imply SIFIVE_SERIAL + +endif diff --git a/board/sifive/fu540/MAINTAINERS b/board/sifive/fu540/MAINTAINERS new file mode 100644 index 0000000000..702d803ad8 --- /dev/null +++ b/board/sifive/fu540/MAINTAINERS @@ -0,0 +1,9 @@ +SiFive FU540 BOARD +M: Paul Walmsley +M: Palmer Dabbelt +M: Anup Patel +M: Atish Patra +S: Maintained +F: board/sifive/fu540/ +F: include/configs/sifive-fu540.h +F: configs/sifive_fu540_defconfig diff --git a/board/sifive/fu540/Makefile b/board/sifive/fu540/Makefile new file mode 100644 index 0000000000..6e1862c475 --- /dev/null +++ b/board/sifive/fu540/Makefile @@ -0,0 +1,5 @@ +# SPDX-License-Identifier: GPL-2.0+ +# +# Copyright (c) 2019 Western Digital Corporation or its affiliates. + +obj-y += fu540.o diff --git a/board/sifive/fu540/fu540.c b/board/sifive/fu540/fu540.c new file mode 100644 index 0000000000..5adc4a3d4a --- /dev/null +++ b/board/sifive/fu540/fu540.c @@ -0,0 +1,17 @@ +// SPDX-License-Identifier: GPL-2.0+ +/* + * Copyright (c) 2019 Western Digital Corporation or its affiliates. + * + * Authors: + * Anup Patel + */ + +#include +#include + +int board_init(void) +{ + /* For now nothing to do here. */ + + return 0; +} diff --git a/configs/sifive_fu540_defconfig b/configs/sifive_fu540_defconfig new file mode 100644 index 0000000000..2f8cca9de0 --- /dev/null +++ b/configs/sifive_fu540_defconfig @@ -0,0 +1,11 @@ +CONFIG_RISCV=y +CONFIG_TARGET_SIFIVE_FU540=y +CONFIG_RISCV_SMODE=y +CONFIG_ARCH_RV64I=y +CONFIG_DISTRO_DEFAULTS=y +CONFIG_NR_DRAM_BANKS=1 +CONFIG_FIT=y +CONFIG_DISPLAY_CPUINFO=y +CONFIG_DISPLAY_BOARDINFO=y +CONFIG_CMD_MII=y +CONFIG_OF_PRIOR_STAGE=y diff --git a/include/configs/sifive-fu540.h b/include/configs/sifive-fu540.h new file mode 100644 index 0000000000..7007b5f6af --- /dev/null +++ b/include/configs/sifive-fu540.h @@ -0,0 +1,43 @@ +/* SPDX-License-Identifier: GPL-2.0+ */ +/* + * Copyright (c) 2019 Western Digital Corporation or its affiliates. + * + * Authors: + * Anup Patel + */ + +#ifndef __CONFIG_H +#define __CONFIG_H + +#include + +#define CONFIG_SYS_SDRAM_BASE 0x80000000 +#define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_SDRAM_BASE + SZ_2M) + +#define CONFIG_SYS_LOAD_ADDR (CONFIG_SYS_SDRAM_BASE + SZ_2M) + +#define CONFIG_SYS_MALLOC_LEN SZ_8M + +#define CONFIG_SYS_BOOTM_LEN SZ_16M + +#define CONFIG_STANDALONE_LOAD_ADDR 0x80200000 + +/* Environment options */ +#define CONFIG_ENV_SIZE SZ_4K + +#define BOOT_TARGET_DEVICES(func) \ + func(DHCP, dhcp, na) + +#include + +#define CONFIG_EXTRA_ENV_SETTINGS \ + "fdt_high=0xffffffffffffffff\0" \ + "initrd_high=0xffffffffffffffff\0" \ + "kernel_addr_r=0x80600000\0" \ + "fdt_addr_r=0x82200000\0" \ + "scriptaddr=0x82300000\0" \ + "pxefile_addr_r=0x82400000\0" \ + "ramdisk_addr_r=0x82500000\0" \ + BOOTENV + +#endif /* __CONFIG_H */