From patchwork Thu Dec 14 09:47:59 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jie Luo X-Patchwork-Id: 18050 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:7300:3b04:b0:fb:cd0c:d3e with SMTP id c4csp8426715dys; Thu, 14 Dec 2023 01:49:20 -0800 (PST) X-Google-Smtp-Source: AGHT+IFE3WSALzJU+unTk8Pjbo08hPENAu/icIEuaiQcnba9qgN68rctKdNADtODJB7pVhaP7t22 X-Received: by 2002:a17:90a:8543:b0:28a:ce23:af33 with SMTP id a3-20020a17090a854300b0028ace23af33mr2975563pjw.42.1702547359967; Thu, 14 Dec 2023 01:49:19 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1702547359; cv=none; d=google.com; s=arc-20160816; b=u9VMLAYmpX+IVCeVeQzbrWQ4PYM3+LCAgVXqFlq8fBPXFlhNRPCzYslZ5HsKP3jMaz JVrv81IW5V5XPQ0a8PmnTyLGCndNgILJ4oNiJ7V1C7Fbeg+hEHgEonrRO6d47AVEtVXj mFYDHLYGmuGv2btoyuotWp+hxYvn61d+qqZeUHYNnTdZGrl7XgVDi0K8rtwoosneJTBI yX99uZE2+9i5KTI5UYsbqYlOg6kXK7QwvJ1gqKyx4ZGccue3SbayomsuYCS/Tv0XJTDn VZqbeXJneX5bfRU58aAMWfWK16UAEFmMajF3a5zT/OqSGrs4YmgiV32GjXafCH881zQN BGFw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=5gAIgXHXeRin2mY+3nShzO93vkScwEPkafSycd779B0=; fh=/GuWXIFJTb2Z3LVYajHwooJWphp6NrpriHhj5GHcik0=; b=RINNBBjtu/kg0y8DTWVIqXzvSCNsfAkZ2JmdECu2QZYtPabZaRSrOSH5mlHi4AHcA+ NleM8nxIEpZ6/SqH1gZMx7tgs71Jkmqarbt8PW0P9uHgS/tAuGoHB/7upjsoxlqKhwLg qaXHBmJxEDdMPRzfWkxTESia8Zb1s6yYA02WBFyRtskC21V443S0slsIoZh+oTk0Nx5p xgLp4oP52YEwIe6hzQ6Y5bECt7tdLecCRKjPwsHU0TODUoQC6m+DJK771W2TGUtklIK1 2qUfu57MX6BNsc4sZDbRqPAw1veVnG8PrcYJUBKQB3tZO5nbhjIrNYxbKyfIXDWTGbLb 4dAQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@quicinc.com header.s=qcppdkim1 header.b=GhDRMXiO; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=quicinc.com Received: from groat.vger.email (groat.vger.email. [23.128.96.35]) by mx.google.com with ESMTPS id ob4-20020a17090b390400b0028868509509si12589555pjb.108.2023.12.14.01.49.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 14 Dec 2023 01:49:19 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) client-ip=23.128.96.35; Authentication-Results: mx.google.com; dkim=pass header.i=@quicinc.com header.s=qcppdkim1 header.b=GhDRMXiO; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=quicinc.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by groat.vger.email (Postfix) with ESMTP id 00C3080DFA75; Thu, 14 Dec 2023 01:49:14 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at groat.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1443522AbjLNJso (ORCPT + 99 others); Thu, 14 Dec 2023 04:48:44 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43036 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229664AbjLNJsm (ORCPT ); Thu, 14 Dec 2023 04:48:42 -0500 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 830D6E0; Thu, 14 Dec 2023 01:48:48 -0800 (PST) Received: from pps.filterd (m0279872.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.17.1.24/8.17.1.24) with ESMTP id 3BE4Qpbg001177; Thu, 14 Dec 2023 09:48:29 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=quicinc.com; h= from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding:content-type; s=qcppdkim1; bh=5gAIgXH XeRin2mY+3nShzO93vkScwEPkafSycd779B0=; b=GhDRMXiOI2oQt1NUXTi/fVK zYR8P+l3guWUMrjWhvf05gfaNQMqucmb167oXUWLx2W+3LlAjPWftDnS7c1SDjAa fLRl9/fH3dmLfI8bNlmQWSvKN+zE680aj2soYCOBbyRnx6iBtfjedXYx3UradpeZ D50PtrRq2DMlNjHf134ZZaC3tzyVOV/U3jH/QYsjmvkDdoUdSOTmvqbSinyMKrJh 7TNEM7JjcUeMnP4kKLdtStdP8k8D9HMkbI9zz3HZeRXrzsOBNcLF2ej+GKKXxsJD qkhrbolMlHSmYGik3KO/TPqPqhDzY27mfxRLvgsL4SJ3q0rt6EslndSdATHHzmw= = Received: from nalasppmta02.qualcomm.com (Global_NAT1.qualcomm.com [129.46.96.20]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 3uynja94p0-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 14 Dec 2023 09:48:28 +0000 (GMT) Received: from nalasex01c.na.qualcomm.com (nalasex01c.na.qualcomm.com [10.47.97.35]) by NALASPPMTA02.qualcomm.com (8.17.1.5/8.17.1.5) with ESMTPS id 3BE9mRlT000717 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 14 Dec 2023 09:48:27 GMT Received: from akronite-sh-dev02.qualcomm.com (10.80.80.8) by nalasex01c.na.qualcomm.com (10.47.97.35) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1118.40; Thu, 14 Dec 2023 01:48:22 -0800 From: Luo Jie To: , , , , , , , , , , , , CC: , , , Subject: [PATCH v7 00/14] add qca8084 ethernet phy driver Date: Thu, 14 Dec 2023 17:47:59 +0800 Message-ID: <20231214094813.24690-1-quic_luoj@quicinc.com> X-Mailer: git-send-email 2.42.0 MIME-Version: 1.0 X-Originating-IP: [10.80.80.8] X-ClientProxiedBy: nasanex01b.na.qualcomm.com (10.46.141.250) To nalasex01c.na.qualcomm.com (10.47.97.35) X-QCInternal: smtphost X-Proofpoint-Virus-Version: vendor=nai engine=6200 definitions=5800 signatures=585085 X-Proofpoint-GUID: XHYkJ8TAGLrIFIgXHOeOiDABrmoi6RgO X-Proofpoint-ORIG-GUID: XHYkJ8TAGLrIFIgXHOeOiDABrmoi6RgO X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.272,Aquarius:18.0.997,Hydra:6.0.619,FMLib:17.11.176.26 definitions=2023-12-09_01,2023-12-07_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 adultscore=0 impostorscore=0 spamscore=0 priorityscore=1501 mlxlogscore=905 mlxscore=0 clxscore=1011 lowpriorityscore=0 bulkscore=0 suspectscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.19.0-2311290000 definitions=main-2312140065 X-Spam-Status: No, score=-0.9 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on groat.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (groat.vger.email [0.0.0.0]); Thu, 14 Dec 2023 01:49:15 -0800 (PST) X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1785250300462316264 X-GMAIL-MSGID: 1785250300462316264 QCA8084 is four-port PHY with maximum link capability 2.5G, which supports the interface mode qusgmii and sgmii mode, there are two PCSs available to connected with ethernet port. QCA8084 can work in switch mode or PHY mode. For switch mode, both PCS0 and PCS1 work on sgmii mode. For PHY mode, PCS1 works on qusgmii mode. The fourth PHY connected with PCS0 works on sgmii mode. Besides this PHY driver patches, the PCS driver is also needed to bring up the qca8084 device, which mainly configurs PCS and clocks. The qca8084 PHY driver depends on the following clock controller patchset, the initial clocks and resets are provided by the clock controller driver below. https://lore.kernel.org/lkml/20231104034858.9159-2-quic_luoj@quicinc.com/T/ Changes in v3: * pick the two patches to introduce the interface mode 10g-qxgmii from Vladimir Oltean(olteanv@gmail.com). * add the function phydev_id_is_qca808x to identify the PHY qca8081 and qca8084. * update the interface mode name PHY_INTERFACE_MODE_QUSGMII to PHY_INTERFACE_MODE_10G_QXGMII. Changes in v4: * remove the following patch: . * split out 10g_qxgmii change of ethernet-controller.yaml. Changes in v5: * update the author of the patch below. . Changes in v6: * drop the "inline" keyword. * apply the patches with "--max-line-length=80". Changes in v7: * add possible interfaces of phydev * customize phy address * add initialized clock & reset config * add the work mode config * update qca,ar803x.yaml for the new added properties Luo Jie (12): net: phy: at803x: add QCA8084 ethernet phy support net: phy: at803x: add the function phydev_id_is_qca808x net: phy: at803x: Add qca8084_config_init function net: phy: at803x: add qca8084_link_change_notify net: phy: at803x: add the possible_interfaces net: phy: at803x: add qca8084 switch registe access net: phy: at803x: set MDIO address of qca8084 PHY net: phy: at803x: parse qca8084 clocks and resets net: phy: at803x: add qca808x initial config sequence net: phy: at803x: configure qca8084 common clocks net: phy: at803x: configure qca8084 work mode dt-bindings: net: ar803x: add qca8084 PHY propetry Vladimir Oltean (2): net: phy: introduce core support for phy-mode = "10g-qxgmii" dt-bindings: net: ethernet-controller: add 10g-qxgmii mode .../bindings/net/ethernet-controller.yaml | 1 + .../devicetree/bindings/net/qca,ar803x.yaml | 158 ++++- Documentation/networking/phy.rst | 6 + drivers/net/phy/at803x.c | 586 +++++++++++++++++- drivers/net/phy/phy-core.c | 1 + drivers/net/phy/phylink.c | 11 +- include/linux/phy.h | 4 + include/linux/phylink.h | 2 + 8 files changed, 758 insertions(+), 11 deletions(-) base-commit: 48e8992e33abf054bcc0bb2e77b2d43bb899212e