From patchwork Fri Jan 27 19:35:54 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Colin Foster X-Patchwork-Id: 49612 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:eb09:0:0:0:0:0 with SMTP id s9csp1009235wrn; Fri, 27 Jan 2023 11:39:08 -0800 (PST) X-Google-Smtp-Source: AMrXdXttQx85hdA2ZnFO55xWIVjfrG9FEwcNxbXp3lOLAfwrRaGiikDxO9muzku4g/r4JHba1OI6 X-Received: by 2002:a17:902:c948:b0:186:def0:66f2 with SMTP id i8-20020a170902c94800b00186def066f2mr51871086pla.11.1674848348548; Fri, 27 Jan 2023 11:39:08 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1674848348; cv=pass; d=google.com; s=arc-20160816; b=sfb2VJMCgDbVrMAsBMmbFs5uwHmb8Zi7Jq4aNAspD19wK+qiIIAYzoltkr/lE59b1y /bCRTTitP0c3wtGOstzsLCv6EcGrggBAq46q/hnwsZXPBWw0/V931ZgJqjGrVATqJH+W zHKtXR1LRSWFRpRr49iiL51lBswNxysLZpVC7tyJdIHsfqgUTM88np/bNd7Tuea4kupV d/7zvQZ+q7TB167Ilw/+U5JcRQQWYjZ/AU28AjpPxQqOUZEMYGlQfQrHaquW5/ezVP00 7GvLo1sW+QF9TMCOQc1fPJPG3V29VN8n02A7X5WbMOPqz/QMrE6F5ZJJTv2Yd4tj0X3E LXrw== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:content-transfer-encoding :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=SlpRQM+SXc9wFoCwHURm3MbTg5IhdmuFZMzYZjzHPbU=; b=l1hfEeOLj6O5/igGKnri6jxOdsFUQfTcGrKfsStRcGcxTz80SuhNc+M+NjyuevXDbu gwJLQU25DRagz6Uo7lAhDIVt7nPvlUXag8LNbjXb0cKn8Sq8j4zRTZqfFUrhyGYlG4ng O5UUbLNrqkmGKf7yGMhLcXwpwoLZ0Q/SXQiEZGj1RwbPZIyY1yWjZ9JOUS6B5XNnjsIZ YmXRDOGpTiRc/6Vi4s7frAulj4lTvPqy1T0eSvXO6fO0PycQ1XhyfNOUg50LNp/8uxa7 jmIuHI0VVQY1xvjzTDdIhDqUT+ttHAlnEOYo6iEmiZYa03EfS/N/tpeN2sKKmtK05o1t Fssw== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@inadvantage.onmicrosoft.com header.s=selector2-inadvantage-onmicrosoft-com header.b=d+v2elBi; arc=pass (i=1 spf=pass spfdomain=in-advantage.com dkim=pass dkdomain=in-advantage.com dmarc=pass fromdomain=in-advantage.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=in-advantage.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id c124-20020a633582000000b004df27953506si4218867pga.510.2023.01.27.11.38.55; Fri, 27 Jan 2023 11:39:08 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@inadvantage.onmicrosoft.com header.s=selector2-inadvantage-onmicrosoft-com header.b=d+v2elBi; arc=pass (i=1 spf=pass spfdomain=in-advantage.com dkim=pass dkdomain=in-advantage.com dmarc=pass fromdomain=in-advantage.com); spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=in-advantage.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230360AbjA0Thm (ORCPT + 99 others); Fri, 27 Jan 2023 14:37:42 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43912 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229797AbjA0ThY (ORCPT ); Fri, 27 Jan 2023 14:37:24 -0500 Received: from NAM10-DM6-obe.outbound.protection.outlook.com (mail-dm6nam10on2106.outbound.protection.outlook.com [40.107.93.106]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 976A6820C3; Fri, 27 Jan 2023 11:36:28 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nMr8CQmTzqiLdaa9KyLbkydc3PNgNbCLYv8Hs1k0fv2LsH9D2baHEpbCtCzSiBEfWK8/8T31SQPk1XdaYgdr9FUH1uud/u+Dp1oz6581GBPLUoQ3XRjYtD3hxmdV/M9O0bpgew2M64gHz0ApiX4dhIm7iWEgClv0rhJUIK+HS2qRpBLjfMg13x8g0M58gU3Ynfhb51eI9HdnZJXIu1TqUfQNkK69W7eyZk9M/FRaVOy+pKom8ndcZHYjP5EKJStmcx+X1BJ8dBroubopavjCcmKlVpO2I/EyC8vfDuCaSzgySUJmPLcpfi3LhsBs+ERprcL58Iv4J01IrEJQ48JWhg== 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-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=SlpRQM+SXc9wFoCwHURm3MbTg5IhdmuFZMzYZjzHPbU=; b=FEgqZVewE1XQYsoQSY4oqskpIQLqNOlRhYI31QK/WhyE+Hw08IW4VmMFx2pUvvpineZIhFKI8Cp3zcV7HXKKNxK3xdTiZDBkr4b/l+gsTuyS+QXK3VcM6+XUufnHJ0EClcod5GvAs/1ycw/EPIIVkz1DPzyCT6WrUy+IgPl3I7OdynzyVhTeCzs4VUIm3GW0Ojc5toRDmBwXHhGFPBeQwJcmOUbdUA+sVkvf8ra5dGnh2v9ilZS567jRpmIjK84d3tHseBBjt8uB6kZRzuoJ8dPDmU2BXgLgDCyV5ovf6azk538gOfot2bwZc0Uj2v+saV4lMPYDASG1fYGfkzcqGQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=in-advantage.com; dmarc=pass action=none header.from=in-advantage.com; dkim=pass header.d=in-advantage.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=inadvantage.onmicrosoft.com; s=selector2-inadvantage-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=SlpRQM+SXc9wFoCwHURm3MbTg5IhdmuFZMzYZjzHPbU=; b=d+v2elBiT8jznjfWc24ws76Zt2X5jfBVQI/3FH35b3t5J2lJ0mwqSOuHSdtyvBlsnld5BEKEztz76l5pPTin79ik55X5sod8PWg15f67zoey0sDyvK3JEDOwboFOXE/EQm1l2mllckKGdO0g58hHDG2kT3laxh5EVt6RsvjqlLc= Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=in-advantage.com; Received: from DM5PR1001MB2345.namprd10.prod.outlook.com (2603:10b6:4:2d::31) by SA2PR10MB4636.namprd10.prod.outlook.com (2603:10b6:806:11e::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6064.13; Fri, 27 Jan 2023 19:36:25 +0000 Received: from DM5PR1001MB2345.namprd10.prod.outlook.com ([fe80::221:4186:6ea3:9097]) by DM5PR1001MB2345.namprd10.prod.outlook.com ([fe80::221:4186:6ea3:9097%7]) with mapi id 15.20.6064.010; Fri, 27 Jan 2023 19:36:25 +0000 From: Colin Foster To: netdev@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org Cc: Russell King , Richard Cochran , Florian Fainelli , Andrew Lunn , UNGLinuxDriver@microchip.com, Alexandre Belloni , Claudiu Manoil , Vladimir Oltean , Paolo Abeni , Jakub Kicinski , Eric Dumazet , "David S. Miller" , Krzysztof Kozlowski , Rob Herring , Lee Jones Subject: [PATCH v5 net-next 08/13] net: dsa: felix: add functionality when not all ports are supported Date: Fri, 27 Jan 2023 11:35:54 -0800 Message-Id: <20230127193559.1001051-9-colin.foster@in-advantage.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230127193559.1001051-1-colin.foster@in-advantage.com> References: <20230127193559.1001051-1-colin.foster@in-advantage.com> X-ClientProxiedBy: BYAPR02CA0011.namprd02.prod.outlook.com (2603:10b6:a02:ee::24) To DM5PR1001MB2345.namprd10.prod.outlook.com (2603:10b6:4:2d::31) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM5PR1001MB2345:EE_|SA2PR10MB4636:EE_ X-MS-Office365-Filtering-Correlation-Id: febab0e5-7542-45e4-a178-08db009dc6cd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 1lwAPRD6M4B+wyvYGUImBtcdVsxzTjkZCTh6LALcHCxZ3OrXE3AWoM2164Ca2sbxfK/HzK8gAR+OEQvBhSTyCEQv+l3QnYDpQHSwC+/RzEYcQde4clH9u4HZZT8KhZq6CMSgIO+ypA/Ge1VRQh85OGTJNnaQMRhdfuVBBTQ46Y26DI747Xv3NndWB5B+ET31AgbGNL/e3MrCYl42NO2UemLwydIBCSxuIsOMvuxEHvxLOl2b0AOF9UdZTv4W6s2QD+HShR9TgFBeu2ZKH8lPRnsUymd04K2mZgIvwcVO/DSUxmV7+JPNIZjGlM1q/Wndp2CN6gNfdXEnq1A5v2ejpKfCYn8aFCJeUC1dvpXKo9Iw3Kd2x8HLe+s4Cr/uSFNcb9NLegvKTqmXy8Ju/czqyZ+HxtLOLPjAfidN9pJ90vvcy/fMu5H7aPWyftFLuKEGV/7BdLi5BCTCqgmxA7v5I/9r4SCA0+mUlML5aDq1e1Rcy7A792JQEDBDQb0pqYPVT+iRsQTm2rw5jgEr/wi+phNvTe5S+uYLHWFzfBVw2Wb+XkZWFKrUMPg/JyddS9oPkp3zdQqnL0fbacXuJQjWCu5W8Q9VZG+ppcZHGY3mpb5TOp7TMhCW9T1MjR8koD8pf5NSSJyjifLwgwuwz20sX0UpjV0orbzo03xEnDge1DVEQc/rG+NNaAahm8cUrPVzKgptgnSlNtP4LrUTl2RcnA== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM5PR1001MB2345.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230025)(376002)(136003)(39840400004)(396003)(346002)(366004)(451199018)(36756003)(86362001)(2906002)(2616005)(6512007)(26005)(186003)(66946007)(66556008)(8676002)(4326008)(66476007)(52116002)(316002)(54906003)(6666004)(1076003)(6506007)(6486002)(478600001)(38350700002)(38100700002)(5660300002)(44832011)(41300700001)(7416002)(8936002)(83380400001);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: 2p22+13hOr36gq2WCUY/4OGgn6fLG8+vPQwXO6KUiFSjxy0In8cU93pMozHBvJBN1xtMD0kih+vXlHX657Vzw2VgAuCx9WzXEnp6TZ0/5HUGOBw/HNV0asq/uEX8JeMaXEJZ68QqGFu36h2DwueabHbUYjI9Qy1ZXeOxLhW9A0SEuv1W5RwfwcD2z9HQhUtLG1ZvOzmdmKeYKLQvNN11aRekzYzsvoVNarZ8YdWu7hPy34vvgk3pbBXChrZxxlUDBDRLeqdgUAp5AY1J4vwk0khGiU4RzLqaYyFkeBKLRv1yQVWKxsSf0qW/gh8jJI8cNTJWRX8izykjFoYTrw/EOdgKcPoSp0y1A92maNFCvzbvnfQf/kTrqhRXaNcBTANq4hTBJowCE0tMExs6IK6in6D9oe6RZVUMjD14jhTy9wSEcsM6qzcETmPkTHnwwMIKIrz/ztf1h6XVq5QSk9riBTjcJTtoF657pm0Gp81uVJW1RebAIDi2Dtz12EoEG7UggnBJ9QLhmBZpV0REWqj8dp+pPGnAEzcT/4yJPseHWJhXQRuCuuaCuK7EcIO8ctu5K6QSIFwIpIfWgzyk5y/AGPo0iXvaqR4Uh41CduSQZ6Q4E0p+7jK0EPLUs3CJ6iz8k+c3QTk+jprwYYn5TKyqB/qKvUpzow3T5MYmiOjY0u+JadytGGuGh55jkCEuovyZ9JqHYYCaD4huDzFw1P3FL/uMe/ePqrXf1B5C0Vfn56Hc6jk5C6nOIQLXakD2hTllGEmc8cTHB+bZVLYQxc/rGukSUPsQN8qkNrl2o6csLrWIdvazNhjX3IAnN2KaqftQiv0Kt22mA+/E6b229l+o/ywuvdAfAJSPFssO2N89Jn1K2gCtqJJIGHXrdNhz7itgQF8hURt2lu0LBDKV/IYYX1eIIcMwKROikehi+YjNiGBMXnYkYBw/3Jv1kThpePV0znroLs6ycrF+oQxLLIgmVQZvFRRNzCymCY1BvyxJuMFoSW6VZB2yf28vPZFQ4Rw0T1wwQQZqnImdfZHGEBgEwNsKXgyP1az0KMm2tuiBSeUJDSRm5g0JocAF/LWRmKdCIP3eILZ3pr25B7KFPOZk8cRiEB/YhsGcpr7dkaoiOAKsClsJOWU1vmgk9VZrXCwuN0B/nnadEgUJoOO1fWDR3pCJvRZgFgnLwu4Edkhgwg1LxsbPWQo2ITGzxkJK8+QnhlqOUpjJDUtmly2CsaZ9dl2RAiKx/IAyiHfl5AichAuu8WZ2POAuVB1iFtanPtciV/OfOwIAraq6wWy2s9YZ7pVio3RaTMO//CD48tUNyIoxB2wE+0S/OVqVXObDAwzx80mjHHY1sl3lBJUzWj8si8xWDI+T1G5HQzcoyhuYs3jwHodO0Egs1Reh8xrViSXOtgqYvGlJu5PF0WkKQXcPf1s4toTPDL5StE438G8XhhrCL1SbjS79QNWEhmQnvPHrNXuecHkyOxclS5ftqHt5+q4RiVjeCXP7tWa0UwlLA+9kKIkPlY5/ZLZJ5UyWudghql0mcPwZ5bOdOl6WqA9J43F9BpJ5KJHZQKCK5AJE/hvG/49yvpRbbAxIJFVcjFUKGhcQYGbyPMewsh8DtV0EFPGud3NLJWtOahjpdIwfTFo= X-OriginatorOrg: in-advantage.com X-MS-Exchange-CrossTenant-Network-Message-Id: febab0e5-7542-45e4-a178-08db009dc6cd X-MS-Exchange-CrossTenant-AuthSource: DM5PR1001MB2345.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Jan 2023 19:36:25.0474 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 48e842ca-fbd8-4633-a79d-0c955a7d3aae X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: lR2ve3vr+tiCpephI7z80is+NijwhaxEcB3TUELbAuH0x7MJAG9LjLwD9+CSPTXtx7Gwl360eLubOnqMUNmWx2C3ox89AptNUCRoKv5r/bs= X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA2PR10MB4636 X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_PASS,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1756205782048762610?= X-GMAIL-MSGID: =?utf-8?q?1756205782048762610?= When the Felix driver would probe the ports and verify functionality, it would fail if it hit single port mode that wasn't supported by the driver. The initial case for the VSC7512 driver will have physical ports that exist, but aren't supported by the driver implementation. Add the OCELOT_PORT_MODE_NONE macro to handle this scenario, and allow the Felix driver to continue with all the ports that are currently functional. Signed-off-by: Colin Foster Reviewed-by: Florian Fainelli --- v5 * No changes v4 * New patch --- drivers/net/dsa/ocelot/felix.c | 11 ++++++++--- drivers/net/dsa/ocelot/felix.h | 1 + 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/drivers/net/dsa/ocelot/felix.c b/drivers/net/dsa/ocelot/felix.c index d3ff6e8a82e9..d4cc9e60f369 100644 --- a/drivers/net/dsa/ocelot/felix.c +++ b/drivers/net/dsa/ocelot/felix.c @@ -1273,10 +1273,15 @@ static int felix_parse_ports_node(struct felix *felix, err = felix_validate_phy_mode(felix, port, phy_mode); if (err < 0) { - dev_err(dev, "Unsupported PHY mode %s on port %d\n", - phy_modes(phy_mode), port); + dev_info(dev, "Unsupported PHY mode %s on port %d\n", + phy_modes(phy_mode), port); of_node_put(child); - return err; + + /* Leave port_phy_modes[port] = 0, which is also + * PHY_INTERFACE_MODE_NA. This will perform a + * best-effort to bring up as many ports as possible. + */ + continue; } port_phy_modes[port] = phy_mode; diff --git a/drivers/net/dsa/ocelot/felix.h b/drivers/net/dsa/ocelot/felix.h index 9e1ae1dde0d9..d5d0b30c0b75 100644 --- a/drivers/net/dsa/ocelot/felix.h +++ b/drivers/net/dsa/ocelot/felix.h @@ -7,6 +7,7 @@ #define ocelot_to_felix(o) container_of((o), struct felix, ocelot) #define FELIX_MAC_QUIRKS OCELOT_QUIRK_PCS_PERFORMS_RATE_ADAPTATION +#define OCELOT_PORT_MODE_NONE 0 #define OCELOT_PORT_MODE_INTERNAL BIT(0) #define OCELOT_PORT_MODE_SGMII BIT(1) #define OCELOT_PORT_MODE_QSGMII BIT(2)