From patchwork Thu Jan 14 21:34:13 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alex Nemirovsky X-Patchwork-Id: 1426692 X-Patchwork-Delegate: trini@ti.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=lists.denx.de (client-ip=85.214.62.61; helo=phobos.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=cortina-access.com Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=CortinaAccess.onmicrosoft.com header.i=@CortinaAccess.onmicrosoft.com header.a=rsa-sha256 header.s=selector2-CortinaAccess-onmicrosoft-com header.b=O60VRyPb; dkim-atps=neutral Received: from phobos.denx.de (phobos.denx.de [85.214.62.61]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4DGyK41Ghfz9sS8 for ; Fri, 15 Jan 2021 08:35:20 +1100 (AEDT) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 3EF22827B1; Thu, 14 Jan 2021 22:35:08 +0100 (CET) Authentication-Results: phobos.denx.de; dmarc=none (p=none dis=none) header.from=cortina-access.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (1024-bit key; unprotected) header.d=CortinaAccess.onmicrosoft.com header.i=@CortinaAccess.onmicrosoft.com header.b="O60VRyPb"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 8786D827B1; Thu, 14 Jan 2021 22:35:04 +0100 (CET) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on phobos.denx.de X-Spam-Level: X-Spam-Status: No, score=-0.9 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,FORGED_SPF_HELO,MSGID_FROM_MTA_HEADER,SPF_HELO_PASS autolearn=no autolearn_force=no version=3.4.2 Received: from APC01-HK2-obe.outbound.protection.outlook.com (mail-hk2apc01on0610.outbound.protection.outlook.com [IPv6:2a01:111:f400:febc::610]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id 3CF55827B1 for ; Thu, 14 Jan 2021 22:34:58 +0100 (CET) Authentication-Results: phobos.denx.de; dmarc=none (p=none dis=none) header.from=cortina-access.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=Alex.Nemirovsky@cortina-access.com ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=k2zllc0yMWGs+1p6wU32BbRShYTvQXD7MI8xlH3YrWpoqGStS7ufFncbwgk1L0iaNLJ27emZkQgw9rg2FpVWU5dN7a6UVO13z+soW2GmA7vhiuKe57ozKRa4qwqAOmq+GNUhT+xK0FrI10cCHkYYVnn5ut92diNWoI2ga+LrF8DzgdPaO4LSeJElOlg8mhmS/JhvlGRT2VQwy9arRreZ8UsqHYNIo40ZdbXgluoxg+kHmrLbP1w6YDXGXZBHoEFp+jsKsEUFig5KXqsx68y9KXDF1GlJoYD5oTpH7mSauz/sf6jnBMV4bYF4PvORKfzi3QVg3+f14VzKQRRe+EhktQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=WZOlt/XXMArT2mTbRTGgU1tunC9xKXmBuiwIZ0Ce4ZY=; b=OTf+OTZCawvMXiBLrJg9NsvX+msKlQ4rypgOxJk38XfvLTN23ghH+3UEMDtoLoy6v+FSJMmgsvpvuFO54fkxFGasSFG+98ufrKpieqI5BlLv63/QuVADj+UR86ghUcSbnLWOcZVLdzUinIX9OB8vPdSxzz3ZJ2d6C75AWDEHb9oILL2wR/ILbf32wUPJtlM+j9a2ctDyJGak+uk4oadwFTPypStMxKaDD3TABb5MAUZXLztOXk7rxbks5ksOuHXbh4LdXw4WiOA961OSjwoZmhy+vExUdg1VIzq2wvc8QYuiv5OC/igk7iEGYL91l93+sN8T3A23DLlibSEjSnJdrg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=cortina-access.com; dmarc=pass action=none header.from=cortina-access.com; dkim=pass header.d=cortina-access.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=CortinaAccess.onmicrosoft.com; s=selector2-CortinaAccess-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=WZOlt/XXMArT2mTbRTGgU1tunC9xKXmBuiwIZ0Ce4ZY=; b=O60VRyPbUQOmL02ZxXIjacs+LjA/0XCsKtziwX9MXSZV19i8OkYULCok7/LppHASTpgHdet30764ou1mnk+0XiaXxDa2xfVPrItbwOpo4Q/s3N5s0okS7vm+qj+bKJWGNBAGWNHtFTGf8MfbCJlBJ9mv7sFOg9iUi9pIrQPJV9g= Authentication-Results: lists.denx.de; dkim=none (message not signed) header.d=none;lists.denx.de; dmarc=none action=none header.from=cortina-access.com; Received: from PS2PR01MB2504.apcprd01.prod.exchangelabs.com (2603:1096:300:3e::11) by PSAPR01MB3990.apcprd01.prod.exchangelabs.com (2603:1096:301:17::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3763.10; Thu, 14 Jan 2021 21:34:49 +0000 Received: from PS2PR01MB2504.apcprd01.prod.exchangelabs.com ([fe80::a5a3:f135:b16e:7329]) by PS2PR01MB2504.apcprd01.prod.exchangelabs.com ([fe80::a5a3:f135:b16e:7329%7]) with mapi id 15.20.3763.010; Thu, 14 Jan 2021 21:34:49 +0000 From: Alex Nemirovsky To: u-boot@lists.denx.de Cc: Alex Nemirovsky , Tom Rini Subject: [PATCH v2 3/3] board: presidio-asic: Add CAxxxx Ethernet support Date: Thu, 14 Jan 2021 13:34:13 -0800 Message-Id: <1610660053-27790-3-git-send-email-alex.nemirovsky@cortina-access.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1610660053-27790-1-git-send-email-alex.nemirovsky@cortina-access.com> References: <1610660053-27790-1-git-send-email-alex.nemirovsky@cortina-access.com> X-Originating-IP: [70.58.207.205] X-ClientProxiedBy: MWHPR11CA0007.namprd11.prod.outlook.com (2603:10b6:301:1::17) To PS2PR01MB2504.apcprd01.prod.exchangelabs.com (2603:1096:300:3e::11) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from smok.hrh.localdomain (70.58.207.205) by MWHPR11CA0007.namprd11.prod.outlook.com (2603:10b6:301:1::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256) id 15.20.3763.9 via Frontend Transport; Thu, 14 Jan 2021 21:34:47 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: b79191e6-c9bd-4aec-2515-08d8b8d43851 X-MS-TrafficTypeDiagnostic: PSAPR01MB3990: X-MS-Exchange-Transport-Forked: True X-Microsoft-Antispam-PRVS: X-LD-Processed: 0694623c-6669-497c-89c3-3a32a9934313,ExtAddr X-MS-Oob-TLC-OOBClassifiers: OLM:1079; X-MS-Exchange-SenderADCheck: 1 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 0ylt9HNqdMMJtvjc9+YR9q//Ct48069hVjJWKp7cBbdp9jn8AlzvMgmDLRkA4zAajnaiwiudDA2Ze2Mgmn3ihfpqAXhQHIPUDc9x9CaCHviFYwr4srtNnMlHZB0uokcRqPPNN6WjTM8QUciblPdSZKKJ5qpJW24mUA76t66cj/jMtU/H04H9HLOph/swpAjpSNkHom7PDVs9GSgg4qOoq1iPdlfpGM8ScD7FDDx0jNLH5a98ShoXxZnTSatCTxys+QNcmtrvubiDFCm6256Mytvf7NJaKNVYs77L+J5q42pIozorey9ckUVpDFtmqWBTvQa143t+Lb/aseddfhrtpv4yLG4DJ+W59gC244UJ1KmDtilSqtQ/LlboJIBJ75aO/JuiXos1FwwbBluvFgEv0A== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PS2PR01MB2504.apcprd01.prod.exchangelabs.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(376002)(396003)(39840400004)(136003)(346002)(66556008)(6506007)(66476007)(4326008)(66946007)(2906002)(44832011)(2616005)(478600001)(86362001)(6512007)(83380400001)(36756003)(5660300002)(8936002)(6916009)(52116002)(6486002)(6666004)(8676002)(316002)(26005)(956004)(16526019)(54906003)(186003); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData: 6OFw4luUkMs3tlFcH0kqDI99rg5K43542lPsj2VQOb+iB8t/JXb8467pM3RzfB8t2f6DMNRxHPyDGU+asWr9IGy+iY6EzTrAgIokNUZc+JPIYCwd3+gpW2N8DKfQtMVMk3sr+jIjixYmRXCxBYYci24t3nOEHPp/KbY3ucJVrBIJiasWRMBihpVW+bTBXsJicBWhdj5sX5bDfXJAeUJTH+JtFa9jVEpuZ4LcEH0o0XaOU+74YRg/TJL3Y5bsJTULRBElAc4tM2u7QllBTVmEnJpBfyHip9PsXe5uZrdidK9xWem6DqHu8tfUL4EJAoO9IIPsrf18IQd84BdfiDyoncAwVoR+dO3pBxuJhA1KcRj+xND3rtkCRP8vVtdmWUcvYWmHFttHVx1uNHU1RKKJzjz1d8x8n2ReJeOU6oUGLhydoQiQjjsifsFcn5jF77tmgiWaoUnGt+KM4pt87e3Zib4hlRjqXNUVHhypMlPJ9wg6igUGjfTH1QCIQkx1m54543tMzoRmfP/TetuZqypnVP2OaI5Mf/+IAlQQSy/qevkVLpfbGBn43Bp+VMqlxZECr9ApItHzTFylAqur0kp/cRfmUwbp3Rpl/I9DMSSOqEgUmcBgsfcH1w9+CjtTFUNur1l8FcraaS2rlJAl99IacBmp/cCqdfVgYHIYyfAv05Thj9M5uHz2IrPNZ+cLX1AMIBW0RdV8P+M2oj3NWICGjSP/F3m+dQ936orKtsXX9IhB86VZaT1cisJudHGdctFKst+/3RqEbvxxvA+OpuqE1K3bZQESjiWh8egPUEu7axP/LOGYvU4BI/fNKoXfLdlGTBRigHrJA7rZGYVJq6AefKV+o1M1rZ8TOEYCz3XAsVoDKU31M+VlPLe3cNCPlHFDn+Ud2y2pveb1AXcns7rNeOdTlwqEc+zK/w3q9tGtW36RXyz+7XynA9myjFzbbI6lQmGLMPPao/LhCjVJjfpTosf7NxkZiMmsG8iCRv7cLcqIxJNj8HOK6QW4wMUDu6pn X-OriginatorOrg: CORTINA-ACCESS.COM X-MS-Exchange-CrossTenant-AuthSource: PS2PR01MB2504.apcprd01.prod.exchangelabs.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jan 2021 21:34:48.9025 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0694623c-6669-497c-89c3-3a32a9934313 X-MS-Exchange-CrossTenant-Network-Message-Id: b79191e6-c9bd-4aec-2515-08d8b8d43851 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: sbL/JtH/IVYlHe2h9doS0RxKo6m0nWHTZqHsaB36Oui0+aMMiOIuW3U7ievla7jaor/5fZhnv3qP0bSh64Rf/ySCPK0tAZP1Gp0TdH5sgmS5ibqiQzz/+gT8vaiZUnko X-MS-Exchange-Transport-CrossTenantHeadersStamped: PSAPR01MB3990 X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.34 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" X-Virus-Scanned: clamav-milter 0.102.3 at phobos.denx.de X-Virus-Status: Clean Add CAxxxx Ethernet support for the Cortina Access Presidio Engineering Board Signed-off-by: Alex Nemirovsky CC: Tom Rini --- Changes in v2: - only support DM_ETH network models by removing code for legacy mode support arch/arm/dts/ca-presidio-engboard.dts | 31 ++++++++++++++++++++++++++++ configs/cortina_presidio-asic-emmc_defconfig | 4 +++- include/configs/presidio_asic.h | 15 +++++++++++++- 3 files changed, 48 insertions(+), 2 deletions(-) diff --git a/arch/arm/dts/ca-presidio-engboard.dts b/arch/arm/dts/ca-presidio-engboard.dts index eef433e..7919866 100644 --- a/arch/arm/dts/ca-presidio-engboard.dts +++ b/arch/arm/dts/ca-presidio-engboard.dts @@ -95,4 +95,35 @@ }; }; + + eth: ethnet@0xf4300000 { + compatible = "eth_cortina"; + reg = <0x0 0xf4320000 0x34>, + <0x0 0xf43290d8 0x04>, + <0x0 0xf4304000 0x04>; + + /* port0: phy address 1 - GMAC0: port 0 + * port1: phy address 2 - GMAC1: port 1 + * port2: phy address 3 - GMAC2: port 2 + * port3: phy address 4 - GMAC3: port 3 + * port4: phy address 5 - RGMII: port 4 + */ + valid-port-map = <0x1f>; + valid-port-num = <5>; + valid-ports = <0x1 0x0>, + <0x2 0x1>, + <0x3 0x2>, + <0x4 0x3>, + <0x5 0x4>; + def-active-port = <0x3>; + inter-gphy-num = <6>; + inter-gphy-val = <0xf43380fc 0xbcd>, + <0xf43380dc 0xeeee>, + <0xf43380d8 0xeeee>, + <0xf43380fc 0xbce>, + <0xf43380c0 0x7777>, + <0xf43380c4 0x7777>; + init-rgmii = <1>; + ni-xram-base = <0xF4500000>; + }; }; diff --git a/configs/cortina_presidio-asic-emmc_defconfig b/configs/cortina_presidio-asic-emmc_defconfig index faffdd4..eec9584 100644 --- a/configs/cortina_presidio-asic-emmc_defconfig +++ b/configs/cortina_presidio-asic-emmc_defconfig @@ -22,7 +22,6 @@ CONFIG_CMD_EXT2=y CONFIG_CMD_EXT4=y CONFIG_OF_CONTROL=y CONFIG_OF_LIVE=y -# CONFIG_NET is not set CONFIG_DM=y CONFIG_CORTINA_GPIO=y CONFIG_DM_I2C=y @@ -30,6 +29,9 @@ CONFIG_SYS_I2C_CA=y CONFIG_DM_MMC=y CONFIG_MMC_DW=y CONFIG_MMC_DW_CORTINA=y +CONFIG_PHYLIB=y +CONFIG_DM_ETH=y +CONFIG_CORTINA_NI_ENET=y CONFIG_DM_SERIAL=y CONFIG_CORTINA_UART=y CONFIG_WDT=y diff --git a/include/configs/presidio_asic.h b/include/configs/presidio_asic.h index 34235b5..c2082b4 100644 --- a/include/configs/presidio_asic.h +++ b/include/configs/presidio_asic.h @@ -2,7 +2,7 @@ /* * Copyright (C) 2020 Cortina Access Inc. * - * Configuration for Cortina-Access Presidio board. + * Configuration for Cortina-Access Presidio board */ #ifndef __PRESIDIO_ASIC_H @@ -63,6 +63,19 @@ sizeof(CONFIG_SYS_PROMPT) + 16) #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE +#define KSEG1_ATU_XLAT(x) (x) + +/* HW REG ADDR */ +#define NI_READ_POLL_COUNT 1000 +#define CA_NI_MDIO_REG_BASE 0xF4338 +#define NI_HV_GLB_MAC_ADDR_CFG0_OFFSET 0x010 +#define NI_HV_GLB_MAC_ADDR_CFG1_OFFSET 0x014 +#define NI_HV_PT_BASE 0x400 +#define NI_HV_XRAM_BASE 0x820 +#define GLOBAL_BLOCK_RESET_OFFSET 0x04 +#define GLOBAL_GLOBAL_CONFIG_OFFSET 0x20 +#define GLOBAL_IO_DRIVE_CONTROL_OFFSET 0x4c + /* max command args */ #define CONFIG_SYS_MAXARGS 64 #define CONFIG_EXTRA_ENV_SETTINGS "silent=y\0"