From patchwork Sun Feb 3 15:07:33 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Heiner Kallweit X-Patchwork-Id: 1035607 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming-netdev@ozlabs.org Delivered-To: patchwork-incoming-netdev@ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=netdev-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="Ua7lqok7"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 43svN63QQsz9s4Z for ; Mon, 4 Feb 2019 02:07:50 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728018AbfBCPHq (ORCPT ); Sun, 3 Feb 2019 10:07:46 -0500 Received: from mail-wm1-f67.google.com ([209.85.128.67]:35490 "EHLO mail-wm1-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726463AbfBCPHq (ORCPT ); Sun, 3 Feb 2019 10:07:46 -0500 Received: by mail-wm1-f67.google.com with SMTP id t200so10845894wmt.0 for ; Sun, 03 Feb 2019 07:07:44 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=to:cc:from:subject:message-id:date:user-agent:mime-version :content-language:content-transfer-encoding; bh=QiVwdrGJ/PnfygRImO7FYxhfr8mWmMAO7b3j58x1YkI=; b=Ua7lqok76NFKKd2DOoXtdLxiIPQIFSRFPzpiPxQNQJYCbgTrR1LFqOlnwWwF8HDKls WyjPqhqtko+WjDXlIDOwUJ/BMSLkvBOKmw//RfH6PbczEvaJNTPqmXGLwyBzFQzjszeq KLjQZLGFEUUIYHVAs4sOgze/uF4hkqB5TRRfUIObI9ncv2eOdWMGcNjwK9MDrmCHtZ6b y6pYIYH4E1TrHxqXj1AIeBn9LqjwmUkO/qHtHpRxYffm2D4W8dOHVitqheIQyyEl8+bR ZQcKUmPyGrrEMFblv/D99oKpMSu4s843sYIplaHv6nHAgdw/7+I5RcU6iY7V4mNln7HI ZIlg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:to:cc:from:subject:message-id:date:user-agent :mime-version:content-language:content-transfer-encoding; bh=QiVwdrGJ/PnfygRImO7FYxhfr8mWmMAO7b3j58x1YkI=; b=StufMQmelrGSS/bqazqH0qyrOwdwlR5aOBnd4vPtjHrh3fRT6HPoR/ril+PHrEvukj xmjPM8+QpSQkjg0uLbV0ujBhTtixKHwrwf/VBjxe6Xrc5xxB6yLc3qFYmsvflF5c6lDL Zm2ZYC9FYQ8f6Wfxdw0Axf1ZQ3Qcxb2V/weodRiNWKEWmRKXyeBBpCN+/sAhXidyfP9z gyfTFI/9Cz4mZyXAxFpWoIFBQiocB0+047Rhq+SonRnshwfl2NgM4sZXbGW3ilADI+Ix qTAeHLvGViwaNgY3tQ5I9+7JettwVVm778//Kj7xYWi8YaM+YII6OI/P9c6qN7DJ/81C Dr+A== X-Gm-Message-State: AHQUAuZegtC92E4PPgi14KGHLRzoOhraG2K2/k2rolK0Ov2H8eJGkQUz yokLaP0UC0SgXwC8i9OiZbDMmctY X-Google-Smtp-Source: AHgI3IYnTm7OFkZdWYT7AnLPd6nF3S4k2cQ6KtV7T001JMeCakEsU7YaMrNAmKd62pp1gzhvQWbh7g== X-Received: by 2002:a1c:ed17:: with SMTP id l23mr60171wmh.51.1549206463644; Sun, 03 Feb 2019 07:07:43 -0800 (PST) Received: from ?IPv6:2003:ea:8bf1:e200:f55d:b489:8bd3:d804? (p200300EA8BF1E200F55DB4898BD3D804.dip0.t-ipconnect.de. [2003:ea:8bf1:e200:f55d:b489:8bd3:d804]) by smtp.googlemail.com with ESMTPSA id s66sm5724269wmf.34.2019.02.03.07.07.42 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 03 Feb 2019 07:07:42 -0800 (PST) To: Andrew Lunn , Florian Fainelli , David Miller Cc: "netdev@vger.kernel.org" From: Heiner Kallweit Subject: [PATCH net-next] net: phy: realtek: add generic Realtek PHY driver Message-ID: <74416e89-bcd5-6c3d-b38a-2ed9ad6a0c0b@gmail.com> Date: Sun, 3 Feb 2019 16:07:33 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.5.0 MIME-Version: 1.0 Content-Language: en-US Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org The integrated PHY's of later RTL8168 network chips report the generic PHYID 0x001cc800 (Realtek OUI, model and revision number both set to zero) and therefore currently the genphy driver is used. To be able to use the paged version of e.g. phy_write() we need a PHY driver with the read_page and write_page callbacks implemented. So basically make a copy of the genphy driver, just with the read_page and write_page callbacks being set. Signed-off-by: Heiner Kallweit --- drivers/net/phy/realtek.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/drivers/net/phy/realtek.c b/drivers/net/phy/realtek.c index 75543f937..d8c4b9ae0 100644 --- a/drivers/net/phy/realtek.c +++ b/drivers/net/phy/realtek.c @@ -272,6 +272,15 @@ static struct phy_driver realtek_drvs[] = { .resume = genphy_resume, .read_page = rtl821x_read_page, .write_page = rtl821x_write_page, + }, { + PHY_ID_MATCH_EXACT(0x001cc800), + .name = "Generic Realtek PHY", + .features = PHY_GBIT_FEATURES, + .config_init = genphy_config_init, + .suspend = genphy_suspend, + .resume = genphy_resume, + .read_page = rtl821x_read_page, + .write_page = rtl821x_write_page, }, { PHY_ID_MATCH_EXACT(0x001cc961), .name = "RTL8366RB Gigabit Ethernet",