From patchwork Mon Jul 11 16:05:12 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sean Anderson X-Patchwork-Id: 589495 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7344ACCA47B for ; Mon, 11 Jul 2022 16:05:48 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231504AbiGKQFq (ORCPT ); Mon, 11 Jul 2022 12:05:46 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56780 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231424AbiGKQFp (ORCPT ); Mon, 11 Jul 2022 12:05:45 -0400 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2086.outbound.protection.outlook.com [40.107.22.86]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 7EBEB5B06D; Mon, 11 Jul 2022 09:05:44 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=QCV/x9M6giHnd0kKuELnOCkEqnBHIuC99ug2wTz15+aU67EWOQNxSRs5vxKa3WlZ0Iioje7rSy/I2a74bdYzh8POgk2ewyx3Aw2uEUQuiv+Q8GwZRbWkcvUs44ZF6C0RDvHABLxxmQtGq9EDPaJLKSTGP8DrwWRkALdVjKrlW8egEwUX+3K7E1PaSfs/Li2JFkYuge4t2HoRgXVXVUn1YcnAqicYtGi0WyOAaJjwFFCRRn/yAOnNF3KphIzqXht8DN0pBDPB7WuILYcChCXfXXRacg/qPRXOQqrC/MdkAvzlv+HjemvmVUXB7zgEUj3lO1qDSHg9U6Gzq2AKBjbiwg== 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=6iBtrq30T0RrOjtlRzniyo8IvI8c8OArbpgHc2d4xGU=; b=ZTTHBL3LAprK0Dpv1BG8Jt078dBp5BUWWqjbeAbtGCJBIPTnGhLqF4ZN65Ng1i88QQZMp3Wc3Mf85ysdi2aWcXKq8uSoQjk6gNdrQ7c0LEQIplemu1kiftyGLuR3CWn32LygAc67SH5hXDIU6ewcrE66jp8cD08QX+VptBmT++jbfL9yBVDEo57gNSmfM4VU/d0vMGj6I7DqBNxa3hL6zzSzRfrqJRug04ZNnXE/TLgD5m6rrZ0Eq8JKWuWyCxHWerz0WXRwhUzg+8hxinTH7ZtJ2U14arpnWZfHEqAN28t/OOLZMKEtGWBKcz0HWaY0DvDQH0vT9CuUF2maJdOOnw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=seco.com; dmarc=pass action=none header.from=seco.com; dkim=pass header.d=seco.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=seco.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=6iBtrq30T0RrOjtlRzniyo8IvI8c8OArbpgHc2d4xGU=; b=nQ8TXwzxxXxrBCduQgp0fQ8LaxEbFPdw9+WH4xekZhUMu6kqMauoA0Q1Q3CfY3/91ovRnq5nXASBrLSUiaInufZyn2KRS5gIHPSLmhVGo/YyMrh8pJnG2TLgCUMzXKXdBSu3gyNH/EOJuc4oASIjyXr2HYqkCCR1KmpiCqUvtualWFjZY5c8hR0o2vKOr9iNMXDIVagVOC+1bSxNYsLCOoi0KNRBVttUFkJAzpAPCoPbj29cjiKcHJXU82m+GGL0cbvFkljb4+4lpsDsc0zgNvazbKVrJZitZ13+Ez7Xn5dnmOZLuH5e3d+lcurfvOXE9tFlP8isL5ZtvTmgX564qQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=seco.com; Received: from DB7PR03MB4972.eurprd03.prod.outlook.com (2603:10a6:10:7d::22) by DB7PR03MB5113.eurprd03.prod.outlook.com (2603:10a6:10:77::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5417.26; Mon, 11 Jul 2022 16:05:43 +0000 Received: from DB7PR03MB4972.eurprd03.prod.outlook.com ([fe80::757e:b75f:3449:45b1]) by DB7PR03MB4972.eurprd03.prod.outlook.com ([fe80::757e:b75f:3449:45b1%6]) with mapi id 15.20.5417.026; Mon, 11 Jul 2022 16:05:43 +0000 From: Sean Anderson To: Heiner Kallweit , Russell King , netdev@vger.kernel.org Cc: Jakub Kicinski , Madalin Bucur , "David S . Miller" , Paolo Abeni , Ioana Ciornei , linux-kernel@vger.kernel.org, Eric Dumazet , Andrew Lunn , Sean Anderson , Krzysztof Kozlowski , Rob Herring , devicetree@vger.kernel.org Subject: [RFC PATCH net-next 2/9] dt-bindings: net: Expand pcs-handle to an array Date: Mon, 11 Jul 2022 12:05:12 -0400 Message-Id: <20220711160519.741990-3-sean.anderson@seco.com> X-Mailer: git-send-email 2.35.1.1320.gc452695387.dirty In-Reply-To: <20220711160519.741990-1-sean.anderson@seco.com> References: <20220711160519.741990-1-sean.anderson@seco.com> X-ClientProxiedBy: MN2PR16CA0056.namprd16.prod.outlook.com (2603:10b6:208:234::25) To DB7PR03MB4972.eurprd03.prod.outlook.com (2603:10a6:10:7d::22) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 7479ba74-9f66-4207-c319-08da6357350e X-MS-TrafficTypeDiagnostic: DB7PR03MB5113:EE_ X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: VNcdqs+K/4yPL3UCW8H8GoIpyNPEtTfmBxaIkAbZU4OT1IkJEXV6PRV6kVTGgCOttUt+8UcXP2XhqQkIC35gYGV7PpVlugkCh0lVXp0/1Ta8+8zvRQ/yw99SriONvI9HXyim3SRImbLw99oo4AyRjKI+zG+OFxssTlAGCXw5L+Sfulfef1zvWAx0gJCNQqG0P38/mvsF//cvpq6TTkbmlB4tbzAe1KSa+wdC5+BtoQvdcyHM/YrnchB51PXQf7Kq/n8J2nquYgeOhO8xyvNOdfduQx2NhGi7UD4ltFnbE+tvAEXUGaUmBdwWSMwgNjb1onSLJabXr5OHzC7Rrv2L2I9Yte2HMFx4hWD0BkopBIMzJ49V+RjwcUxZ1UJ9bl2RW1uhBj4eL0b67UvrXYjlxp5uZuzyfXHoB6WUdUqhXItgS9N5J8T8FLOSKIjFOAqGVOl4S2dgy05W00j6S/TToUyNhoLkTBDGOzeBSdRuzsynzrbp6ufF+87sdxju475IZ0Cc6qtY7A6Ikzi9UKlgBYUmu/VvnOjzwsnEH0E1S2oF2OrQIUFFCFH6UFU5qY33e9nWwhCJVpteysGJQll8xmEQJvCCDPeepPcG+1BXSj+RJoZycw9+ZB2dPBkQ7iM4Y/+6pDn++AX/s5sQ+/PSDmHKcRjs7mmdKh4qhnE44sHo20UJTRXDlq2+ywAr+Qr2QvVYDrCoMvKXq6vFMuahVGQCgiUezlKaEdo0TbQPat1tKyeYXALoxfNHBLnP1cyfDMCNeriSA4e9oGn47+XXxnBf8pQlQsgJ+TgG25j7jTrBprxc5dinnAe1xIK4WdD+ X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DB7PR03MB4972.eurprd03.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230016)(346002)(136003)(396003)(376002)(39850400004)(366004)(83380400001)(86362001)(38350700002)(66946007)(38100700002)(4326008)(8936002)(66556008)(66476007)(8676002)(36756003)(6512007)(316002)(54906003)(5660300002)(44832011)(6666004)(7416002)(2906002)(6506007)(41300700001)(26005)(6486002)(52116002)(478600001)(110136005)(186003)(1076003)(2616005); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: enYfwUVt3iaE3E+b4ZjounqXC6cmIAIE3nc3ft1q+WQ6msdB8OlPkLs96ij3+lal+omNdUog2/MHrN14HrqZzH9PtT+HIMhMIZ4rhfUmcac4lni3sNPW0DiJBe+KAeM1XEgQQtHnabGE/VoAVqHYqvrxLsnrPAL8VZzpsLx/6VnVk3m6wGRbE295Ld9whjZ3km1IRPPOD7kA1LKd572KcqWHbfvuae27i95cRLNkDfgDXeIMppNFj1rUNg/QrzFf2StA2EyKLnmcVr3H+KdtVwgm4cTIzZ27Xdlbe/Dh8IqsG8c6FwsKgZHHwmHevxLvRJQNBskaVpobRNYOer4kl9yWWmfBKbrq1CX87wSiIPaSxXoavJ4yQepGHyGL0bge6djBr70shrrp8x2COQaG2vIDHh78Ff49GYQgd/tzaE6xbWA1wrWfGF1ATGjMOHy9hbKGeWrvbO4uv+hHsC46VL7hLm2NwcM++jddmDK7Rh7ebZC0RoJ3HonUOwKlrTj70x6jPHpaMnaI19Pw8mbAzIlMkmJmD0QikzM8wZPB9hOYcWN36GwearLFt8x6IEJ3MS2xcntv593+JyowmXkA6fQvuyR85Uj8ry0fl3/ykvnItnG20ycYTmTQAkGgEJJNfg6EkbkW5C17dFatq37UAbpKIZ22uj0vG6Dcf5MU/RowQrwVagM2K1we32gJGJsyMXOIKZYz89v3PlHOmgmnBHiCOWBw8SsZ+34h7rs1KhgPPnnuHM/AMBOgj//Z40/WMBXWln2n1TUT8QaWx9DAR4CzSIZ4GIUHAhQ0Ym6Olzb43co+SLgmWd1RSU+bDxWpKoKK+RyS7xF5Pc9tb/iHjEfzoskRUxsTmGnEhalxlAW5nDNLfVpz2V8Okih3sRHuLu5dvfF61+tqbat/Pu+lSv8OmGMmgCED8X7DJ7DmPcSLPljL0G1jRB77/1Yt3NmGKPGj+6kkuamWhUsiXTvEdfjKTzGotPVL1SSfkbOwfmrv5LMctWQ3G6Rma93YugOYrgFb8kV6mgDPWGvRCjDCkp4BSk6qNl1KZL+IN46xVvclYwrDvfik7DPoE42CS4XSkjfbDA+Lg2ayiAERwE8xltKJN28TdsJwzc2n2jSpWmjsWR62bAu7++dWOO4FkVuLou9g1A8V36LfRg4FjJgkmSnNPbZlyqVfm8q5dZhlH4E0RAN3yCNo/XePOGpkxSZDyubnF/sTNznc1GYyWQYG/X6IQMI9QJzLZnmT1jo72yJuk8sySXl4C57T1crsfgbd+IoKVWrdq40Bd4dOHBrIFIQr1zuITBcRtp/h38XA4en/Ty5RN+InbC0fVf+VSx+NzU1rakTYKuJtYVyRo+mhGl4Ibhf0c3ZuR0ARSfj7CdZC40iBwaJluKa0XY9GHRCXVaJmMDygBxc46gvlbjdooAE7lcaxkMhYub5g2TlXT4x+BBL6EQizkxOBFF8dL75rs/fF68s4H1SWe2syaMVp6jwDcmX0hdevBZOaNzSpPlPmHd6q4poisa48X4lSL9fk1+xEr34V3VYi4ht7aeHjaKBZl0Gsq1ZI2j5YoxEwlzl/80I6tV+U0zx6aikEHYh6sO20yTsSRzhp7qKmK9dVBA== X-OriginatorOrg: seco.com X-MS-Exchange-CrossTenant-Network-Message-Id: 7479ba74-9f66-4207-c319-08da6357350e X-MS-Exchange-CrossTenant-AuthSource: DB7PR03MB4972.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Jul 2022 16:05:43.2467 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: bebe97c3-6438-442e-ade3-ff17aa50e733 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: PGGF4qSNEoCa22JE4L/kYf5OOuLgx6i5b/JnlGfJ+xKbxeKlsWD+NhV8tY0MRgBTfgZ9Iwg0DN2NH6FtW1ZjAQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR03MB5113 Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org This allows multiple phandles to be specified for pcs-handle, such as when multiple PCSs are present for a single MAC. To differentiate between them, also add a pcs-names property. Signed-off-by: Sean Anderson --- .../devicetree/bindings/net/ethernet-controller.yaml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Documentation/devicetree/bindings/net/ethernet-controller.yaml b/Documentation/devicetree/bindings/net/ethernet-controller.yaml index 4f15463611f8..c033e536f869 100644 --- a/Documentation/devicetree/bindings/net/ethernet-controller.yaml +++ b/Documentation/devicetree/bindings/net/ethernet-controller.yaml @@ -107,11 +107,16 @@ properties: $ref: "#/properties/phy-connection-type" pcs-handle: - $ref: /schemas/types.yaml#/definitions/phandle + $ref: /schemas/types.yaml#/definitions/phandle-array description: Specifies a reference to a node representing a PCS PHY device on a MDIO bus to link with an external PHY (phy-handle) if exists. + pcs-names: + $ref: /schemas/types.yaml#/definitions/string-array + description: + The name of each PCS in pcs-handle. + phy-handle: $ref: /schemas/types.yaml#/definitions/phandle description: From patchwork Mon Jul 11 16:05:13 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sean Anderson X-Patchwork-Id: 589494 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 5C354C43334 for ; Mon, 11 Jul 2022 16:06:01 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231650AbiGKQF7 (ORCPT ); Mon, 11 Jul 2022 12:05:59 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56898 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231417AbiGKQFu (ORCPT ); Mon, 11 Jul 2022 12:05:50 -0400 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2077.outbound.protection.outlook.com [40.107.22.77]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 0E5BD66AF8; Mon, 11 Jul 2022 09:05:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hNReJdH7g+h4ss/b7oGxw19w+sd1VRPMzURYgdgPckgn8uFHzkD8UL/F04zicrHOV0XC9eOljQo3CWu6pDlp3mEzHJhDrhd2HeYQ7Q4X5vHnhjvk1dlyRCnRS+Sw15f0a011JdcqA1vzEF8WWHpawsA4DVLFbaNVAPM0eI15AeRLWcALF1IYigHy8cxbip9Wa92qZjjhhvR8JcqDORhuNMSypQNkZeLM0gxaodpow6922+3gz0OsDHmswZgWi3Kgx6XmOWm+s+PSStWqeFwZzERnHl6XPlvlhpVdpFhMvVoSIIpL1mGW9NUMt6tG5cPyv7E37rprl0wbtwPbUIguRA== 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=mGcFzBn3+ID1/5PE8Q8y7BYLqPH86+MBINx0XPSEA6U=; b=McaKTiAXOI+yFwWLEGe0GSm+Y5Tv7rKuugMlGdyHLAojIyPq3hnuCKSv6i/6o1sGZXu+Ljjxjdp4ae2nuCFoa9KBOYpd47O3AgxJapWfY4CubAZRmzFnGEmyCLh4Sakpzt9pVOP6M0XcG5k1P/awsgFOfaMQq3UK/t3401BCN1TrDQNSIFtUsWeDRTl7TF5oe27jmtohnpysEkPkAwM+XPXIwdFkc+AtUhbiGWhnGNfSmOwhLmyrJoGbTK5UMazE47oW1sY/pADxDANQKBUgH2n85b5oBsgn8MTwXGsLwLOMEIPMgznypzZW8hImRCakm5mWtt41AN9D49xR/4qhbQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=seco.com; dmarc=pass action=none header.from=seco.com; dkim=pass header.d=seco.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=seco.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=mGcFzBn3+ID1/5PE8Q8y7BYLqPH86+MBINx0XPSEA6U=; b=OwNBhKZInoKsxZ7XD5LTZ4K39NcjIz3EoGZrEIH6ZBohLcorCEQ4iYi90/kD7YUxleDboPyskXxQv8NcUMz7AzD25mmQtVodChWmF11A2qJPvKhE4oV1mUx6inJprv701D3Uy+z6DsOEduQ0X0QTI8drEw7k9mO+kVILIUWqSR71PrVtj+ejp2DXhBYZel0BmBtNTLB8JtJc9mnoCYbwxes6qWeeX6SDfOA9CJ2AvmR2CYuzn0PzbccIewGqFqOhpRj1Us6AJJP7HdNtyAiss9GFM7/YntOpZoKaqL8vlthSbB3fsuxsKNZddCskNmWvRVt7y06oppoaG8Z/Wddi0A== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=seco.com; Received: from DB7PR03MB4972.eurprd03.prod.outlook.com (2603:10a6:10:7d::22) by DB7PR03MB5113.eurprd03.prod.outlook.com (2603:10a6:10:77::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5417.26; Mon, 11 Jul 2022 16:05:45 +0000 Received: from DB7PR03MB4972.eurprd03.prod.outlook.com ([fe80::757e:b75f:3449:45b1]) by DB7PR03MB4972.eurprd03.prod.outlook.com ([fe80::757e:b75f:3449:45b1%6]) with mapi id 15.20.5417.026; Mon, 11 Jul 2022 16:05:45 +0000 From: Sean Anderson To: Heiner Kallweit , Russell King , netdev@vger.kernel.org Cc: Jakub Kicinski , Madalin Bucur , "David S . Miller" , Paolo Abeni , Ioana Ciornei , linux-kernel@vger.kernel.org, Eric Dumazet , Andrew Lunn , Sean Anderson , Frank Rowand , Rob Herring , Saravana Kannan , devicetree@vger.kernel.org Subject: [RFC PATCH net-next 3/9] net: pcs: Add helpers for registering and finding PCSs Date: Mon, 11 Jul 2022 12:05:13 -0400 Message-Id: <20220711160519.741990-4-sean.anderson@seco.com> X-Mailer: git-send-email 2.35.1.1320.gc452695387.dirty In-Reply-To: <20220711160519.741990-1-sean.anderson@seco.com> References: <20220711160519.741990-1-sean.anderson@seco.com> X-ClientProxiedBy: MN2PR16CA0056.namprd16.prod.outlook.com (2603:10b6:208:234::25) To DB7PR03MB4972.eurprd03.prod.outlook.com (2603:10a6:10:7d::22) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 92213d74-bd56-418a-c3fa-08da63573638 X-MS-TrafficTypeDiagnostic: DB7PR03MB5113:EE_ X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: Gu4olcUnNys6qgC6HsEIyrGAObufz0ugqfWthnHppB/nqqKy4Ch/qh8zixGO2AYxs0xxOD2B0RBHWyMceera1CWtfagMqthBoUU4iW84CxWOYNfX8FIBgTcr9YvzompRW/UpXI4l8ImJcnUjtUWs6GVzA+1kkGTTjj9unc4kTmeIJWkkrTs+Cy/k45E54AtsMAf+zEJdBHwtzCRn4Gh0FiIXBhtU9Ssol+12YVn3Ug7dI1gPn5TXW0x8xXQmw1zJvbHhZ4Xcq5owxEPfngAatpf1qj4zUqvdTxxB60D12Z6+U3kM0spvUuKvqFs4CkY4JZuhqWQb30lsU4DKxeLACrlrnBIjedO0FYx8gFTGQU2cft1q50ym46qNX5N6adxAxbtgcerX11MY9g2C/YkUldwxJZZ8pssWyjuabZLhnGc/Z9/jRf25XHSzuRI+VBlxq/LLgJe9VrjHUaN/W6os6Y0fsYpYtBr/I6V/cNgBZl7r75HCJDCGdFFvxr8JZcTk1upXZyvpoH/gShHoEBRObAS0N/5XgDhdLc1mwISmq4Mc2tFbQ8BuokaQz8TQb9oj8rqMqxpvbz/12A/KJX+ihBQB6747k7x8aLNylCFZBI6bNQW9NvgZnFTRdROWZVgJ0GUz6gkU1rvvIqiH0oqz8xDBz1UklKXR4QzyKbasmfvAXDigaVTL7CNFke0b0qbEOfKVpgmSrRTEF7SI3ZoVLQArFQXw7U28ohP7TMcomYmXpctxH5SNa+0WzUQogwsfo2RHT50uTLE6MxKVIY9i3S1B0xkScLNRtcRAAWB6noC2KcPb9Wru3/QTywE8jvEweEilHMQjh2/Do0AvDiMhJw== X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DB7PR03MB4972.eurprd03.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230016)(346002)(136003)(396003)(376002)(39850400004)(366004)(83380400001)(86362001)(38350700002)(66946007)(38100700002)(4326008)(8936002)(66556008)(66476007)(8676002)(36756003)(6512007)(316002)(54906003)(30864003)(5660300002)(44832011)(6666004)(7416002)(2906002)(6506007)(41300700001)(26005)(6486002)(966005)(52116002)(478600001)(110136005)(186003)(1076003)(2616005); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: KDFBSOFPL5K1Gc0r50A2vzVSTVsqFC8yd1QDPv6b8PptmEHvLVBcnPyRP+gnGj0PDzmJ5l+H2k5gBcuzqukUDJRe2CQkZmEITqz/YDfWRX2Btcuxq7O7J7gTjIF6bQbJbLR1OwQZl/rjeSZgB5rS6B+Ac8oUio7+UAY4abMc3UYIWt9yHvPkaI0ePmyHmRLzmdtgiTW01S2ehR5hjnvwQmTjmElJ89+mcCG9tSTWwrwHh8yRdcUKkKe9+oBIOrJ1O/TycjgMMEj84mg9hXrPPcNKN/IvXlUmmMzidfrciT6/mPfYme8jhrDK4GttdvdBDZxc5RDkXm4EeWn1+6xi7CUqAT1ROnb52YtQqMVaICmwVP5TzYCvzp9UfbL7K9Iu6Q2eswbN2Gm/0ZeANjSmvZ8DnWnMVsELUUzHbDp8UnoeoB5SX27p+cDGztW12BbWXqcOKB049UeOQRDd8q133J+5J8L3QBUCj20sLm8vxMiaFGbw/AIfEwlnc7zCcZ6UX+aIHqhi6EQE+BrIgI9Rpi3p0rSlNPBEMmkt0pn9iXIZNOYo87bJpuWyaiMDN3+rXeaBlA6mT1uuB6ynm0ISqhmHDZcO4ee5h6zD42Z1GH1El5eGRABe3bHOHnlTwEnckV1MRLNnkOjFTS7/zOzGNTFr5sG8e4/BDzgVku/2CehVEOLCDMo0PI6YcMNEIukoDd9BnW/v1zfHTd4ObjRMLV+xs5a9wcAviEBClOJ+DRRR4KGUmiEwn/UU4wvUOGDeqcJ/me3lvLDA7NpNWme0BLQbHWj9zqY294933ZqdDywtoB4fyg+ns6ZUUT13zEtlle9hus6++mYcYVXg1twpuuFqpoItS5fR9o/StVz5M3ZyaeiNvo88KnYr21Zu/iwi6FcDXNZHbT8oh7CRzJq3pyoIkN65IFdrm51qv1gKWFmHIu6GECcRKe10PJzgk6AGHp0QQfBC2BI0phjZDe+OKLDx1E1wQEdsl/NqiK182DgJZyrGhCmW/YJ+NHbwG9VN/+aa9H9w7XKFCimOV4ZQrsN/dYJYt6gLXqAgNHB7htEq8DPqzti/yEtWJHtr0CcWciVcIOwlIwGbASwdQ+nKRVhNuDZpvmgjsZ3/p/dMN9Hu5itMzfATm6ZPNxayi+s9M1VJYJf5HydnSYdcZqBUMcGGZMIAeHLABXF7IBNc8JtPTnwI3OpDDU0wi0O5UXUoahmWxfIgIP6kAp2QH6c6YfPVxvGU4e8qpHYYxOV3jjzjgRYamkQl4J9heNX/DIjHtQJ4KltgP2rnuSfAsyd5rw4p17qDaMc4NfIRSC4ZlJ4zLItc7vfzceL4ILyYWZGcgokAnvyjCk85XyqJdvk0GQHAN5lho3tQCmOIlbXgR9PvO8gy/GQE3h4ELKu5sbeAOxzcOTLuMlUxQof8qPbyfIvLNXJMRhwZ7fs7O5+X7xVgRPd5hlBCE9ivLIEX+tHwronY60ob76b1uj9ytZm8NqCxe4sP36b/5xk0Py/HJttKj7RAH3qCwMrrT5dsHLA/ycONjyrlZyUINWzfpScZjbo2LfKa3jn4mbxRM6t//hZlfENEuobnI321QmbmNF7s7x6PGedjF2ABTWg0KoWQGA== X-OriginatorOrg: seco.com X-MS-Exchange-CrossTenant-Network-Message-Id: 92213d74-bd56-418a-c3fa-08da63573638 X-MS-Exchange-CrossTenant-AuthSource: DB7PR03MB4972.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Jul 2022 16:05:45.6059 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: bebe97c3-6438-442e-ade3-ff17aa50e733 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: SJVq4GnuehlWEYIOssmyGJEBGHfJ91mMI/40CRDy7sWUURfWx5Zeb4HPj1POENno+ewy6VmDq27rNXYDEJvH3A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR03MB5113 Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org This adds support for getting PCS devices from the device tree. PCS drivers must first register with phylink_register_pcs. After that, MAC drivers may look up their PCS using phylink_get_pcs. To prevent the PCS driver from leaving suddenly, we use try_module_get. To provide some ordering during probing/removal, we use device links managed by of_fwnode_add_links. This will reduce the number of probe failures due to deferral. It will not prevent this for non-standard properties (aka pcsphy-handle), but the worst that happens is that we re-probe a few times. At the moment there is no support for specifying the interface used to talk to the PCS. The MAC driver is expected to know how to talk to the PCS. This is not a change, but it is perhaps an area for improvement. Signed-off-by: Sean Anderson --- This is adapted from [1], primarily incorporating the changes discussed there. [1] https://lore.kernel.org/netdev/9f73bc4f-5f99-95f5-78fa-dac96f9e0146@seco.com/ MAINTAINERS | 1 + drivers/net/pcs/Kconfig | 12 +++ drivers/net/pcs/Makefile | 2 + drivers/net/pcs/core.c | 226 +++++++++++++++++++++++++++++++++++++++ drivers/of/property.c | 2 + include/linux/pcs.h | 33 ++++++ include/linux/phylink.h | 6 ++ 7 files changed, 282 insertions(+) create mode 100644 drivers/net/pcs/core.c create mode 100644 include/linux/pcs.h diff --git a/MAINTAINERS b/MAINTAINERS index ca95b1833b97..3965d49753d3 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -7450,6 +7450,7 @@ F: include/linux/*mdio*.h F: include/linux/mdio/*.h F: include/linux/mii.h F: include/linux/of_net.h +F: include/linux/pcs.h F: include/linux/phy.h F: include/linux/phy_fixed.h F: include/linux/platform_data/mdio-bcm-unimac.h diff --git a/drivers/net/pcs/Kconfig b/drivers/net/pcs/Kconfig index 22ba7b0b476d..fed6264fdf33 100644 --- a/drivers/net/pcs/Kconfig +++ b/drivers/net/pcs/Kconfig @@ -5,6 +5,18 @@ menu "PCS device drivers" +config PCS + bool "PCS subsystem" + help + This provides common helper functions for registering and looking up + Physical Coding Sublayer (PCS) devices. PCS devices translate between + different interface types. In some use cases, they may either + translate between different types of Medium-Independent Interfaces + (MIIs), such as translating GMII to SGMII. This allows using a fast + serial interface to talk to the phy which translates the MII to the + Medium-Dependent Interface. Alternatively, they may translate a MII + directly to an MDI, such as translating GMII to 1000Base-X. + config PCS_XPCS tristate "Synopsys DesignWare XPCS controller" depends on MDIO_DEVICE && MDIO_BUS diff --git a/drivers/net/pcs/Makefile b/drivers/net/pcs/Makefile index 0603d469bd57..1fd21a1619d4 100644 --- a/drivers/net/pcs/Makefile +++ b/drivers/net/pcs/Makefile @@ -1,6 +1,8 @@ # SPDX-License-Identifier: GPL-2.0 # Makefile for Linux PCS drivers +obj-$(CONFIG_PCS) += core.o + pcs_xpcs-$(CONFIG_PCS_XPCS) := pcs-xpcs.o pcs-xpcs-nxp.o obj-$(CONFIG_PCS_XPCS) += pcs_xpcs.o diff --git a/drivers/net/pcs/core.c b/drivers/net/pcs/core.c new file mode 100644 index 000000000000..b39ff1ccdb34 --- /dev/null +++ b/drivers/net/pcs/core.c @@ -0,0 +1,226 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright (C) 2022 Sean Anderson + */ + +#include +#include +#include +#include +#include +#include + +static LIST_HEAD(pcs_devices); +static DEFINE_MUTEX(pcs_mutex); + +/** + * pcs_register() - register a new PCS + * @pcs: the PCS to register + * + * Registers a new PCS which can be automatically attached to a phylink. + * + * Return: 0 on success, or -errno on error + */ +int pcs_register(struct phylink_pcs *pcs) +{ + if (!pcs->dev || !pcs->ops) + return -EINVAL; + if (!pcs->ops->pcs_an_restart || !pcs->ops->pcs_config || + !pcs->ops->pcs_get_state) + return -EINVAL; + + INIT_LIST_HEAD(&pcs->list); + mutex_lock(&pcs_mutex); + list_add(&pcs->list, &pcs_devices); + mutex_unlock(&pcs_mutex); + return 0; +} +EXPORT_SYMBOL_GPL(pcs_register); + +/** + * pcs_unregister() - unregister a PCS + * @pcs: a PCS previously registered with pcs_register() + */ +void pcs_unregister(struct phylink_pcs *pcs) +{ + mutex_lock(&pcs_mutex); + list_del(&pcs->list); + mutex_unlock(&pcs_mutex); +} +EXPORT_SYMBOL_GPL(pcs_unregister); + +static void devm_pcs_release(struct device *dev, void *res) +{ + pcs_unregister(*(struct phylink_pcs **)res); +} + +/** + * devm_pcs_register - resource managed pcs_register() + * @dev: device that is registering this PCS + * @pcs: the PCS to register + * + * Managed pcs_register(). For PCSs registered by this function, + * pcs_unregister() is automatically called on driver detach. See + * pcs_register() for more information. + * + * Return: 0 on success, or -errno on failure + */ +int devm_pcs_register(struct device *dev, struct phylink_pcs *pcs) +{ + struct phylink_pcs **pcsp; + int ret; + + pcsp = devres_alloc(devm_pcs_release, sizeof(*pcsp), + GFP_KERNEL); + if (!pcsp) + return -ENOMEM; + + ret = pcs_register(pcs); + if (ret) { + devres_free(pcsp); + return ret; + } + + *pcsp = pcs; + devres_add(dev, pcsp); + + return ret; +} +EXPORT_SYMBOL_GPL(devm_pcs_register); + +/** + * pcs_find() - Find the PCS associated with a fwnode or device + * @fwnode: The PCS's fwnode + * @dev: The PCS's device + * + * Search PCSs registered with pcs_register() for one with a matching + * fwnode or device. Either @fwnode or @dev may be %NULL if matching against a + * fwnode or device is not desired (respectively). + * + * Return: a matching PCS, or %NULL if not found + */ +static struct phylink_pcs *pcs_find(const struct fwnode_handle *fwnode, + const struct device *dev) +{ + struct phylink_pcs *pcs; + + mutex_lock(&pcs_mutex); + list_for_each_entry(pcs, &pcs_devices, list) { + if (dev && pcs->dev == dev) + goto out; + if (fwnode && pcs->dev->fwnode == fwnode) + goto out; + } + pcs = NULL; + +out: + mutex_unlock(&pcs_mutex); + pr_devel("%s: looking for %pfwf or %s %s...%s found\n", __func__, + fwnode, dev ? dev_driver_string(dev) : "(null)", + dev ? dev_name(dev) : "(null)", pcs ? " not" : ""); + return pcs; +} + +/** + * pcs_get_tail() - Finish getting a PCS + * @pcs: The PCS to get, or %NULL if one could not be found + * + * This performs common operations necessary when getting a PCS (chiefly + * incrementing reference counts) + * + * Return: @pcs, or an error pointer on failure + */ +static struct phylink_pcs *pcs_get_tail(struct phylink_pcs *pcs) +{ + if (!pcs) + return ERR_PTR(-EPROBE_DEFER); + + if (!try_module_get(pcs->ops->owner)) + return ERR_PTR(-ENODEV); + get_device(pcs->dev); + + return pcs; +} + +/** + * _pcs_get_by_fwnode() - Get a PCS from a fwnode property + * @fwnode: The fwnode to get an associated PCS of + * @id: The name of the PCS to get. May be %NULL to get the first PCS. + * @optional: Whether the PCS is optional or not + * + * Look up a PCS associated with @fwnode and return a reference to it. Every + * call to pcs_get_by_fwnode() must be balanced with one to pcs_put(). + * + * If @optional is true, and @id is non-%NULL, then if @id cannot be found in + * pcs-names, %NULL is returned (instead of an error). If @optional is true and + * @id is %NULL, then no error is returned if pcs-handle is absent. + * + * Return: a PCS if found, or an error pointer on failure + */ +struct phylink_pcs *_pcs_get_by_fwnode(const struct fwnode_handle *fwnode, + const char *id, bool optional) +{ + int index; + struct phylink_pcs *pcs; + struct fwnode_handle *pcs_fwnode; + + if (id) + index = fwnode_property_match_string(fwnode, "pcs-names", id); + else + index = 0; + if (index < 0) { + if (optional && (index == -EINVAL || index == -ENODATA)) + return NULL; + return ERR_PTR(index); + } + + /* First try pcs-handle, and if that doesn't work fall back to the + * (legacy) pcsphy-handle. + */ + pcs_fwnode = fwnode_find_reference(fwnode, "pcs-handle", index); + if (PTR_ERR(pcs_fwnode) == -ENOENT) + pcs_fwnode = fwnode_find_reference(fwnode, "pcsphy-handle", + index); + if (optional && !id && PTR_ERR(pcs_fwnode) == -ENOENT) + return NULL; + else if (IS_ERR(pcs_fwnode)) + return ERR_CAST(pcs_fwnode); + + pcs = pcs_find(pcs_fwnode, NULL); + fwnode_handle_put(pcs_fwnode); + return pcs_get_tail(pcs); +} +EXPORT_SYMBOL_GPL(pcs_get_by_fwnode); + +/** + * pcs_get_by_provider() - Get a PCS from an existing provider + * @dev: The device providing the PCS + * + * This finds the first PCS registersed by @dev and returns a reference to it. + * Every call to pcs_get_by_provider() must be balanced with one to + * pcs_put(). + * + * Return: a PCS if found, or an error pointer on failure + */ +struct phylink_pcs *pcs_get_by_provider(const struct device *dev) +{ + return pcs_get_tail(pcs_find(NULL, dev)); +} +EXPORT_SYMBOL_GPL(pcs_get_by_provider); + +/** + * pcs_put() - Release a previously-acquired PCS + * @pcs: The PCS to put + * + * This frees resources associated with the PCS which were acquired when it was + * gotten. + */ +void pcs_put(struct phylink_pcs *pcs) +{ + if (!pcs) + return; + + put_device(pcs->dev); + module_put(pcs->ops->owner); +} +EXPORT_SYMBOL_GPL(pcs_put); diff --git a/drivers/of/property.c b/drivers/of/property.c index 967f79b59016..860d35bde5e9 100644 --- a/drivers/of/property.c +++ b/drivers/of/property.c @@ -1318,6 +1318,7 @@ DEFINE_SIMPLE_PROP(pinctrl6, "pinctrl-6", NULL) DEFINE_SIMPLE_PROP(pinctrl7, "pinctrl-7", NULL) DEFINE_SIMPLE_PROP(pinctrl8, "pinctrl-8", NULL) DEFINE_SIMPLE_PROP(remote_endpoint, "remote-endpoint", NULL) +DEFINE_SIMPLE_PROP(pcs_handle, "pcs-handle", NULL) DEFINE_SIMPLE_PROP(pwms, "pwms", "#pwm-cells") DEFINE_SIMPLE_PROP(resets, "resets", "#reset-cells") DEFINE_SIMPLE_PROP(leds, "leds", NULL) @@ -1406,6 +1407,7 @@ static const struct supplier_bindings of_supplier_bindings[] = { { .parse_prop = parse_pinctrl7, }, { .parse_prop = parse_pinctrl8, }, { .parse_prop = parse_remote_endpoint, .node_not_dev = true, }, + { .parse_prop = parse_pcs_handle, }, { .parse_prop = parse_pwms, }, { .parse_prop = parse_resets, }, { .parse_prop = parse_leds, }, diff --git a/include/linux/pcs.h b/include/linux/pcs.h new file mode 100644 index 000000000000..00e76594e03c --- /dev/null +++ b/include/linux/pcs.h @@ -0,0 +1,33 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* + * Copyright (C) 2022 Sean Anderson + */ + +#ifndef _PCS_H +#define _PCS_H + +struct phylink_pcs; +struct fwnode; + +int pcs_register(struct phylink_pcs *pcs); +void pcs_unregister(struct phylink_pcs *pcs); +int devm_pcs_register(struct device *dev, struct phylink_pcs *pcs); +struct phylink_pcs *_pcs_get_by_fwnode(const struct fwnode_handle *fwnode, + const char *id, bool optional); +struct phylink_pcs *pcs_get_by_provider(const struct device *dev); +void pcs_put(struct phylink_pcs *pcs); + +static inline struct phylink_pcs +*pcs_get_by_fwnode(const struct fwnode_handle *fwnode, + const char *id) +{ + return _pcs_get_by_fwnode(fwnode, id, false); +} + +static inline struct phylink_pcs +*pcs_get_by_fwnode_optional(const struct fwnode_handle *fwnode, const char *id) +{ + return _pcs_get_by_fwnode(fwnode, id, true); +} + +#endif /* PCS_H */ diff --git a/include/linux/phylink.h b/include/linux/phylink.h index 6d06896fc20d..a713e70108a1 100644 --- a/include/linux/phylink.h +++ b/include/linux/phylink.h @@ -396,19 +396,24 @@ struct phylink_pcs_ops; /** * struct phylink_pcs - PHYLINK PCS instance + * @dev: the device associated with this PCS * @ops: a pointer to the &struct phylink_pcs_ops structure + * @list: internal list of PCS devices * @poll: poll the PCS for link changes * * This structure is designed to be embedded within the PCS private data, * and will be passed between phylink and the PCS. */ struct phylink_pcs { + struct device *dev; const struct phylink_pcs_ops *ops; + struct list_head list; bool poll; }; /** * struct phylink_pcs_ops - MAC PCS operations structure. + * @owner: the module which implements this PCS. * @pcs_validate: validate the link configuration. * @pcs_get_state: read the current MAC PCS link state from the hardware. * @pcs_config: configure the MAC PCS for the selected mode and state. @@ -417,6 +422,7 @@ struct phylink_pcs { * (where necessary). */ struct phylink_pcs_ops { + struct module *owner; int (*pcs_validate)(struct phylink_pcs *pcs, unsigned long *supported, const struct phylink_link_state *state); void (*pcs_get_state)(struct phylink_pcs *pcs, From patchwork Mon Jul 11 16:05:18 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sean Anderson X-Patchwork-Id: 589493 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 759FAC433EF for ; Mon, 11 Jul 2022 16:07:00 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231593AbiGKQG6 (ORCPT ); Mon, 11 Jul 2022 12:06:58 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58272 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230150AbiGKQGj (ORCPT ); Mon, 11 Jul 2022 12:06:39 -0400 Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on2059.outbound.protection.outlook.com [40.107.22.59]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 041B670E67; Mon, 11 Jul 2022 09:06:00 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=KEwhWuZDy6gjvPnMsEYHNQT5fcFG4V06fidvuDlLYWrRtImZJQN13nHeBSxUHZqdgxpKEVUVOlPD3KG3Ximc9W1z2hxVMdSr+z21QGimFEUWrWjTyn1VnhFCM3ga7skrjZ9N/YpOegBGXbjbknzsEBFdJQVVW2SxtzeOQ/cuSAxfJTOalZQiv4VtgixgE2Q7Le4y0/euPtG16GUGYsCwA+y99wG53Z75WZNjkEx3dLYInAb2j6yr72GtyocMjXh64NSAZdJp3Wfr7o6t8p/j3/FqxJnVXdCTEJ3ozbqhVMrQoTBcQzP+w3vwUxoA4NGSfjHZX5gGTmzmZ2HkxPmMsw== 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=37YWCy9jRz6TqCG7bmXi+Z4wefx1d4OKtFt1N83LAtw=; b=fOY7JBfxyj+saEwyTFRk6bhH7LLflEFuzCv4avVcJpX/lVI0wt1OaJFTQMW3BgZN7EEffbB/2ngF+xDly729UtYQa0bKGaOtKdExceIpsTuSEnnEWlPMWJiCX1wAdwP/lQ6iYU4LQqg4F+4QIJIfyxbvwmzn0nj3pmwgjju9feoOf6036c7IpHmZfae4pcDwzvpxcHGOAlAF8aJI/EyLhjzXjKTu2uzdjpxPZWFHxKAzPjFMO7JVtOV2L229ZrSHZLUZulQrvR4jtgS2F5SMDYjxVhCEohG73VpyG5EbBsNdsSonvQbZF/vZuA7uL9Y3BsCrdYUfGxXyhFDuzTxlmg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=seco.com; dmarc=pass action=none header.from=seco.com; dkim=pass header.d=seco.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=seco.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=37YWCy9jRz6TqCG7bmXi+Z4wefx1d4OKtFt1N83LAtw=; b=IOkTp+6rE1C1uvbf0zZSbE3kwrYKz9HjqHsivjWnBLHoUUixfMf5Tku1Han47G5qweazI+nSDRnBlCpkm4/mLH8AUItjN2xf+DIkOmjIKpO2UkAX04qSgl7FXhBnSBDBLiGVI4nmyfhSwq++F01xjgILOPHV2rgbecdiCK2joKEQpHDR60F6NoNUjRBeutnBlUZTK7PH3BG6+Sih1fe2p7NNY+lR1WYNlck5UNLIQBUrbkERCslcF8Jx/h8dpY5iGv/7nfIn9E1upht3/WTiJkPQmGcdsGNZaE7wZNYq4okTGF5wAxSfgSs+TA9s6XV0OYxxYI9U061y5WVUcPaZ4A== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=seco.com; Received: from DB7PR03MB4972.eurprd03.prod.outlook.com (2603:10a6:10:7d::22) by DB7PR03MB5113.eurprd03.prod.outlook.com (2603:10a6:10:77::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5417.26; Mon, 11 Jul 2022 16:05:57 +0000 Received: from DB7PR03MB4972.eurprd03.prod.outlook.com ([fe80::757e:b75f:3449:45b1]) by DB7PR03MB4972.eurprd03.prod.outlook.com ([fe80::757e:b75f:3449:45b1%6]) with mapi id 15.20.5417.026; Mon, 11 Jul 2022 16:05:57 +0000 From: Sean Anderson To: Heiner Kallweit , Russell King , netdev@vger.kernel.org Cc: Jakub Kicinski , Madalin Bucur , "David S . Miller" , Paolo Abeni , Ioana Ciornei , linux-kernel@vger.kernel.org, Eric Dumazet , Andrew Lunn , Sean Anderson , Benjamin Herrenschmidt , Krzysztof Kozlowski , Michael Ellerman , Paul Mackerras , Rob Herring , devicetree@vger.kernel.org, linuxppc-dev@lists.ozlabs.org Subject: [RFC PATCH net-next 8/9] powerpc: dts: Add compatible strings for Lynx PCSs Date: Mon, 11 Jul 2022 12:05:18 -0400 Message-Id: <20220711160519.741990-9-sean.anderson@seco.com> X-Mailer: git-send-email 2.35.1.1320.gc452695387.dirty In-Reply-To: <20220711160519.741990-1-sean.anderson@seco.com> References: <20220711160519.741990-1-sean.anderson@seco.com> X-ClientProxiedBy: MN2PR16CA0056.namprd16.prod.outlook.com (2603:10b6:208:234::25) To DB7PR03MB4972.eurprd03.prod.outlook.com (2603:10a6:10:7d::22) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 2fd540a4-2e76-4156-da14-08da63573d66 X-MS-TrafficTypeDiagnostic: DB7PR03MB5113:EE_ X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: azXGz15jR1qmKnoAoA52nufStXxQtE+IHbZ/sJbosAZGIMqEhS0vrU/xLYNZYQTq7IgK6lo4dMC2HOLA6gqePI1w8I7GJSrJ6jBTGbJx3rxgHbHfl71nQvlq4x/s9geb5kkCFcno2R+iqJV6RvS3XxMNQA/ua1vYkAjEkGGTZ7zQeZkeZLT3AZrn5pdbUQ69oz5md2kwKDtdqFzaBrYvjihB0A/ueLzjGakm8qXtpLlC/SarNZ+UvPsSBI2pQ02bsh8QYYCRP5OEWCKSzsS9ZloetqmUn5sNc3JBYDGJJxF/rX3EihQ80963tnwjZX0uuGjvIC5rwJE4Wwwwa/+SxW9ozjwrjb0vONh917BnZJrihc+0XiZbJDYOt+sZI6wU7aiABKUxzgfBT/VGvso++sH6UcppH3uO/n+NUswF8TZDa5tCST4IG3f/Pwui/1pCrY2vvO515siPqcZ6UomxNPZurr66nCJg5iRuqRWZ9953VFCPE2VY4gR1IC6dLLV4o50wYIBZIOl6+OaIud99JuL/1WnYfwfVXe+hWgksiP062ZOa9iSCfTp3VPAdmb8rsjqW8MbEsvmX8MxTEmc0j8GEZx0F8i9GRtqOVgey8rMaNM5DockucpbNkNfOMU1I35be2LoADfXbEEby/je8Gn8o7vLH5HUZAn5OntFmF480Dfd0CTg0IZ2XBJBfdlYBjyYdjhYo6BDGwZoVnRNmME3u5E+FWv6Bs0CxCWFbB7LHfW87mCuIiAYVCILbTG8qt5Acn3bSJDwcavyTT422oRPOE6CFzWIhcLzO9ucbqN8RM6lDugBScVGBdrXb/Afu X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DB7PR03MB4972.eurprd03.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230016)(346002)(136003)(396003)(376002)(39850400004)(366004)(83380400001)(86362001)(38350700002)(66946007)(38100700002)(4326008)(8936002)(66556008)(66476007)(8676002)(36756003)(6512007)(316002)(54906003)(30864003)(5660300002)(44832011)(6666004)(7416002)(2906002)(6506007)(41300700001)(26005)(6486002)(52116002)(478600001)(110136005)(186003)(1076003)(2616005); DIR:OUT; SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: tgEVHvCgATT06zsLf1qbIS1iUo6JNzv5SAtCwLxxrt/9ZQN7FrhOjcqOXPWwk/Sp85+6OVp5cgShmTv69UXycvR+MOeXxoCEbOUm4/1wWzTp9aiB27xlH0JErKebq4kZk0IvtP0AXe0mvCNY9Dk+fWD4VCgdEQ0DKn6kjx0JkK0gFcUJvBHPCI8jhojnsk92IHpdReYOhse2KlOpM0BbFZSItnQGmrpTkEYtwODtpB30WFf7aGvx2V39PxxVXcw6OgUGELg4UPbL4+hTk8RbnAWiZjVzzyndQok6oj1NLgM/J04OcV3aHA8U3p7kXdmTw+msH5bZjYGjF7pIuH0NhNYFoiDFDpRcoQ/7bHLwm2tEiDSkLjfBisnmToK+Qx5rbpFKUguyBuAIMmyc8rhSMV7RRnaCo1dUk6OIHa8myjgu0lqBaHRYocOh4sfv0Si/Fa471kCqvn8X6ox32vzfoIUkyBA1SGe7IVhCZGIdOCcUoJ4kWJM97O63O1KeLg93ZiVM0JNuGTaimgGHqhZzQYZbgt1fH6C+xgH7yDkRtefiJ+4uJxAhdkT/YYg730tMe7YhU7J+qqwBb5jtqvgneJGBE/uWZrGX0Ti9CmNu4fiDvDkowgOJjCrRYkoAKkgKv0za1vWA9Usy0WMVNR9f64JmWAYZpfD7xctBNDD//nDrkY4WH037I/z/k+8hLm5AyeSTRsQiQfmY5D9dw1goZW8L5aGExhd++cGLOY/1RqxuZ+SqfpiXkx6aOuWw+PGrA+6HcxuQv89GkxmzvgAICbshYh1DPVSN1mKmJ7MTprGgxH630/NrLaCY9uWLaUAEtyCnBuZGEvHzrNoXVYIoYd2G8wa9wFzPsLlvQapRh4ztq/FxjWmWUDiq+jaX3VNyGniqg0iEc3kzP+unzdKeOy7dgtXufdwpNA/Piy+YfrGU8+52iLNLlixCdmaVRsx/kg0/2pXqMWX/e/WxOPs7bron37WgYAGlywd2mIM906NEtNrha8buy8pMT1nfKO4n81IyIJBeHqNsbqrLSiuKaPLUdfYlQjtCLWzS2nNQ+LyhgYSaHfnJ8cdxOmHqJ+Mnz+vZD5OY3wWc9/ajyOKtH6wn255mBdHqvxaw7+c6z/jbgh9qSr40Z79ZM4pejd0lNnB3xI1P6I2HaEGZymexpoLzxDqVojNCmJ4t9rrlbkYR3DrwruhXhj8WvWa45fz3AHkAGMQvfsbsCVgYNTkXwXks2VMWNaZADSYgQBxZNQsS83mGo34uBEoJGVvu/5tyLIHwuU8YA1fRQZLpumNp401EKF4CjNJq1EIGTr7QlPcY+BuYYz4CfJ4lLcbzVQkRczHCAsvxbNdlMXlUuytJyrwVy10H6cH8N4y5TmJbWKQICeXV/1py2pyCe0BQhlMAdbxBH+YBLMk8aKI23njeiPrltd+EBgochdfP6qDowDsELMe6p51ag0vnulyB2NwKc5VqpiL26UI8axKtHodjWv1jqgKOua+E5/uOe7rAJ4bKs3dnsNbBJZMrBSJgaN8lhk4rl5wwzvBxcFNNjhVswOhuusDUBx8QA2/LbyPoLi2O9Zvajzt4BI0YWkrZGzRkG8VXWiPwM5qk0Tpce6uaYw== X-OriginatorOrg: seco.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2fd540a4-2e76-4156-da14-08da63573d66 X-MS-Exchange-CrossTenant-AuthSource: DB7PR03MB4972.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 11 Jul 2022 16:05:57.1364 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: bebe97c3-6438-442e-ade3-ff17aa50e733 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: kurvTXOqib125dMSagdWi4qRyZZfhTf+kcd9qihqFoZ/X9RH/EbnfxRPZwcc0HjPdG0yeEg6EXgAYlymZkcQ+Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB7PR03MB5113 Precedence: bulk List-ID: X-Mailing-List: devicetree@vger.kernel.org This adds appropriate compatible strings for Lynx PCSs on PowerPC QorIQ platforms. This also changes the node name to avoid warnings from ethernet-phy.yaml. Signed-off-by: Sean Anderson --- arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-0-best-effort.dtsi | 3 ++- arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-0.dtsi | 3 ++- arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-1-best-effort.dtsi | 3 ++- arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-1.dtsi | 3 ++- arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-0.dtsi | 3 ++- arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-1.dtsi | 3 ++- arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-2.dtsi | 3 ++- arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-3.dtsi | 3 ++- arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-4.dtsi | 3 ++- arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-5.dtsi | 3 ++- arch/powerpc/boot/dts/fsl/qoriq-fman3-1-10g-0.dtsi | 3 ++- arch/powerpc/boot/dts/fsl/qoriq-fman3-1-10g-1.dtsi | 3 ++- arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-0.dtsi | 3 ++- arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-1.dtsi | 3 ++- arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-2.dtsi | 3 ++- arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-3.dtsi | 3 ++- arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-4.dtsi | 3 ++- arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-5.dtsi | 3 ++- 18 files changed, 36 insertions(+), 18 deletions(-) diff --git a/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-0-best-effort.dtsi b/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-0-best-effort.dtsi index baa0c503e741..b0bb58121440 100644 --- a/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-0-best-effort.dtsi +++ b/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-0-best-effort.dtsi @@ -65,7 +65,8 @@ mdio@e1000 { reg = <0xe1000 0x1000>; fsl,erratum-a011043; /* must ignore read errors */ - pcsphy0: ethernet-phy@0 { + pcsphy0: ethernet-pcs@0 { + compatible = "fsl,lynx-pcs"; reg = <0x0>; }; }; diff --git a/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-0.dtsi b/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-0.dtsi index 93095600e808..67765c49c6dd 100644 --- a/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-0.dtsi +++ b/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-0.dtsi @@ -62,7 +62,8 @@ mdio@f1000 { reg = <0xf1000 0x1000>; fsl,erratum-a011043; /* must ignore read errors */ - pcsphy6: ethernet-phy@0 { + pcsphy6: ethernet-pcs@0 { + compatible = "fsl,lynx-pcs"; reg = <0x0>; }; }; diff --git a/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-1-best-effort.dtsi b/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-1-best-effort.dtsi index ff4bd38f0645..5b5f1768507f 100644 --- a/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-1-best-effort.dtsi +++ b/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-1-best-effort.dtsi @@ -65,7 +65,8 @@ mdio@e3000 { reg = <0xe3000 0x1000>; fsl,erratum-a011043; /* must ignore read errors */ - pcsphy1: ethernet-phy@0 { + pcsphy1: ethernet-pcs@0 { + compatible = "fsl,lynx-pcs"; reg = <0x0>; }; }; diff --git a/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-1.dtsi b/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-1.dtsi index 1fa38ed6f59e..c1b4a9cf8435 100644 --- a/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-1.dtsi +++ b/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-10g-1.dtsi @@ -62,7 +62,8 @@ mdio@f3000 { reg = <0xf3000 0x1000>; fsl,erratum-a011043; /* must ignore read errors */ - pcsphy7: ethernet-phy@0 { + pcsphy7: ethernet-pcs@0 { + compatible = "fsl,lynx-pcs"; reg = <0x0>; }; }; diff --git a/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-0.dtsi b/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-0.dtsi index a8cc9780c0c4..f4f7445a261c 100644 --- a/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-0.dtsi +++ b/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-0.dtsi @@ -61,7 +61,8 @@ mdio@e1000 { reg = <0xe1000 0x1000>; fsl,erratum-a011043; /* must ignore read errors */ - pcsphy0: ethernet-phy@0 { + pcsphy0: ethernet-pcs@0 { + compatible = "fsl,lynx-pcs"; reg = <0x0>; }; }; diff --git a/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-1.dtsi b/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-1.dtsi index 8b8bd70c9382..78bf1c1e09c2 100644 --- a/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-1.dtsi +++ b/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-1.dtsi @@ -61,7 +61,8 @@ mdio@e3000 { reg = <0xe3000 0x1000>; fsl,erratum-a011043; /* must ignore read errors */ - pcsphy1: ethernet-phy@0 { + pcsphy1: ethernet-pcs@0 { + compatible = "fsl,lynx-pcs"; reg = <0x0>; }; }; diff --git a/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-2.dtsi b/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-2.dtsi index 619c880b54d8..432e3da63584 100644 --- a/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-2.dtsi +++ b/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-2.dtsi @@ -61,7 +61,8 @@ mdio@e5000 { reg = <0xe5000 0x1000>; fsl,erratum-a011043; /* must ignore read errors */ - pcsphy2: ethernet-phy@0 { + pcsphy2: ethernet-pcs@0 { + compatible = "fsl,lynx-pcs"; reg = <0x0>; }; }; diff --git a/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-3.dtsi b/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-3.dtsi index d7ebb73a400d..a92d88685b91 100644 --- a/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-3.dtsi +++ b/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-3.dtsi @@ -61,7 +61,8 @@ mdio@e7000 { reg = <0xe7000 0x1000>; fsl,erratum-a011043; /* must ignore read errors */ - pcsphy3: ethernet-phy@0 { + pcsphy3: ethernet-pcs@0 { + compatible = "fsl,lynx-pcs"; reg = <0x0>; }; }; diff --git a/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-4.dtsi b/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-4.dtsi index b151d696a069..af70c159d030 100644 --- a/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-4.dtsi +++ b/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-4.dtsi @@ -61,7 +61,8 @@ mdio@e9000 { reg = <0xe9000 0x1000>; fsl,erratum-a011043; /* must ignore read errors */ - pcsphy4: ethernet-phy@0 { + pcsphy4: ethernet-pcs@0 { + compatible = "fsl,lynx-pcs"; reg = <0x0>; }; }; diff --git a/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-5.dtsi b/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-5.dtsi index adc0ae0013a3..da46fd9aab2e 100644 --- a/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-5.dtsi +++ b/arch/powerpc/boot/dts/fsl/qoriq-fman3-0-1g-5.dtsi @@ -61,7 +61,8 @@ mdio@eb000 { reg = <0xeb000 0x1000>; fsl,erratum-a011043; /* must ignore read errors */ - pcsphy5: ethernet-phy@0 { + pcsphy5: ethernet-pcs@0 { + compatible = "fsl,lynx-pcs"; reg = <0x0>; }; }; diff --git a/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-10g-0.dtsi b/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-10g-0.dtsi index 435047e0e250..50c1b75c073f 100644 --- a/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-10g-0.dtsi +++ b/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-10g-0.dtsi @@ -62,7 +62,8 @@ mdio@f1000 { reg = <0xf1000 0x1000>; fsl,erratum-a011043; /* must ignore read errors */ - pcsphy14: ethernet-phy@0 { + pcsphy14: ethernet-pcs@0 { + compatible = "fsl,lynx-pcs"; reg = <0x0>; }; }; diff --git a/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-10g-1.dtsi b/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-10g-1.dtsi index c098657cca0a..03ed8d83adde 100644 --- a/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-10g-1.dtsi +++ b/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-10g-1.dtsi @@ -62,7 +62,8 @@ mdio@f3000 { reg = <0xf3000 0x1000>; fsl,erratum-a011043; /* must ignore read errors */ - pcsphy15: ethernet-phy@0 { + pcsphy15: ethernet-pcs@0 { + compatible = "fsl,lynx-pcs"; reg = <0x0>; }; }; diff --git a/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-0.dtsi b/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-0.dtsi index 9d06824815f3..ced05a914e36 100644 --- a/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-0.dtsi +++ b/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-0.dtsi @@ -61,7 +61,8 @@ mdio@e1000 { reg = <0xe1000 0x1000>; fsl,erratum-a011043; /* must ignore read errors */ - pcsphy8: ethernet-phy@0 { + pcsphy8: ethernet-pcs@0 { + compatible = "fsl,lynx-pcs"; reg = <0x0>; }; }; diff --git a/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-1.dtsi b/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-1.dtsi index 70e947730c4b..de6be3e6db36 100644 --- a/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-1.dtsi +++ b/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-1.dtsi @@ -61,7 +61,8 @@ mdio@e3000 { reg = <0xe3000 0x1000>; fsl,erratum-a011043; /* must ignore read errors */ - pcsphy9: ethernet-phy@0 { + pcsphy9: ethernet-pcs@0 { + compatible = "fsl,lynx-pcs"; reg = <0x0>; }; }; diff --git a/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-2.dtsi b/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-2.dtsi index ad96e6529595..053cb568529e 100644 --- a/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-2.dtsi +++ b/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-2.dtsi @@ -61,7 +61,8 @@ mdio@e5000 { reg = <0xe5000 0x1000>; fsl,erratum-a011043; /* must ignore read errors */ - pcsphy10: ethernet-phy@0 { + pcsphy10: ethernet-pcs@0 { + compatible = "fsl,lynx-pcs"; reg = <0x0>; }; }; diff --git a/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-3.dtsi b/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-3.dtsi index 034bc4b71f7a..448a73c24d1c 100644 --- a/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-3.dtsi +++ b/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-3.dtsi @@ -61,7 +61,8 @@ mdio@e7000 { reg = <0xe7000 0x1000>; fsl,erratum-a011043; /* must ignore read errors */ - pcsphy11: ethernet-phy@0 { + pcsphy11: ethernet-pcs@0 { + compatible = "fsl,lynx-pcs"; reg = <0x0>; }; }; diff --git a/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-4.dtsi b/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-4.dtsi index 93ca23d82b39..5d388ab4268b 100644 --- a/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-4.dtsi +++ b/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-4.dtsi @@ -61,7 +61,8 @@ mdio@e9000 { reg = <0xe9000 0x1000>; fsl,erratum-a011043; /* must ignore read errors */ - pcsphy12: ethernet-phy@0 { + pcsphy12: ethernet-pcs@0 { + compatible = "fsl,lynx-pcs"; reg = <0x0>; }; }; diff --git a/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-5.dtsi b/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-5.dtsi index 23b3117a2fd2..fb262d9e0c01 100644 --- a/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-5.dtsi +++ b/arch/powerpc/boot/dts/fsl/qoriq-fman3-1-1g-5.dtsi @@ -61,7 +61,8 @@ mdio@eb000 { reg = <0xeb000 0x1000>; fsl,erratum-a011043; /* must ignore read errors */ - pcsphy13: ethernet-phy@0 { + pcsphy13: ethernet-pcs@0 { + compatible = "fsl,lynx-pcs"; reg = <0x0>; }; };