Received: by 2002:a05:6a10:16a7:0:0:0:0 with SMTP id gp39csp4050971pxb; Tue, 10 Nov 2020 06:51:16 -0800 (PST) X-Google-Smtp-Source: ABdhPJxhZSInrKn8Bz6C7wo9u/6sp287eAiq1DVm2JfMwg4yDRAJwSH4LtDf6BqRg/ktPQDKYKor X-Received: by 2002:a17:906:7e55:: with SMTP id z21mr20209417ejr.154.1605019876491; Tue, 10 Nov 2020 06:51:16 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1605019876; cv=none; d=google.com; s=arc-20160816; b=K814Y26rTmN4aR+r68kw5491N1qvNMjUNj4RmeNH9r4YaWltASnAUnv88wDXfuY1Bo TmSTic/B/59blkv1diKlvDQSbi6n5irvrSAIo9I15TPV73e8LaubH7yNa3VzBdXW4Qi1 5UE1BUQ2woi5rdtsc7ToOaMoMqe9NrCTQYD3r9QnV9gGdby9HX8uOfDycaZKfm/s2Rin P89w33SN/rVfZMG57vdnpE/KkDNStOM3vi+LZ+FZjlb7bVqP5qKYOKjfBIckwH5Lx7+/ KDj0jWU/TcnZGZpLhoN8hmajOT9T9K7Cdvb0hew/xsh8ZCX0DRMKJPZkr3g2CBhVNBC/ fvDQ== 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:ironport-sdr:dkim-signature; bh=b8nrBWdzPXjgbwX0gT34ODpVi+lswDaY74Kl5tJyQZY=; b=bUqyuk3LsadzihNgaei/4+oOjBTcMGveYzj9P9g1znGIc+52KJcpgLRGJD01OmCHVt wvPkgIZWCIIBMJXxNMaDIwsHCNc1z+C1qcnx8cl4f1A39rAnZJGLOT2bp5Jdig2v1ZhL siePBhHNfsxDUjDVhYeak8q6uVza8rohKeDBNMZY7HuereAub74PfywxnjlhN/qq1QRL kpuxUZa2YbpjzgFqPTXDD9/BE9SF4hvwjaypmgFuS3NdQ3dWu88Rg+8zTFIupiL0hEY3 CdRisOrhgwI9N8K0EDRB96XBbKmCsXbgZa3SV5A0ebbMx1gXk5dAVcnR49zOVWn0wezq 9BWw== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@microchip.com header.s=mchp header.b=xV9tTqTd; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=microchip.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id i24si9035026ejc.643.2020.11.10.06.50.52; Tue, 10 Nov 2020 06:51:16 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=fail header.i=@microchip.com header.s=mchp header.b=xV9tTqTd; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=microchip.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731015AbgKJOtR (ORCPT + 99 others); Tue, 10 Nov 2020 09:49:17 -0500 Received: from esa5.microchip.iphmx.com ([216.71.150.166]:14620 "EHLO esa5.microchip.iphmx.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730465AbgKJOtR (ORCPT ); Tue, 10 Nov 2020 09:49:17 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=microchip.com; i=@microchip.com; q=dns/txt; s=mchp; t=1605019757; x=1636555757; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=YIfq/cYeNogRWEgZu7eOtkVGhAYuISTT7suK3mro9yU=; b=xV9tTqTdnkJkoO5TP0Gwv9oJpTNx8cRHvWMqNuXqFEHvZvVtk1XhEQeV npzORbdTz2BYevG8bspF0CJQgd4nPThoR7PYiDQeSNSXGyuHqB6vFAVqv k4M3cdsZ0OqUTUZDrpex3yjNgq3zeuRNcEzgKVPBwKjDZSJY7SCkBWmY9 SWrLU6LwWCKjae2fAVpUaEjs8xH1HyfeNgq4bXnLt+z15IddZhn/sPz9U VmNiX4k4RRyNMdZ+WVsuiO1v45MMceycmQEhiLB6kxoLE9AnBb1nvJzYK PCjtLHxUz3rmEPH1uHCTx1qBvsbRVNifaam+J4dtoQIZsInmCsaxLTHjO g==; IronPort-SDR: QrgFmve+dJ706GFrv3ZxQ1vvG7o+prXXED0MWfxB+yHczQNWJVKrwKwQT9GdoNqP0yF/zi/V40 WIJkbgwaT8PLCQHKCGnz0d1YEvhswKGJohY6gfCUc3PFs8EXjO4+lOBNkuDqUvCWWV9ohu13HR yke4iQy3p8nYzr2HQFcsomUBcKIv4jMC9EwSDrb8HatcBUgcnjbLCBBvodSnobL7T58tu9cT7h 0kBeMeZJDuULWt9t9UIHsljGNT1ykN7t0/9eaw0UlD+Qa4QvUXJ/0jtQ2d1+4zW14+ys5myRGw HZM= X-IronPort-AV: E=Sophos;i="5.77,466,1596524400"; d="scan'208";a="97866627" Received: from smtpout.microchip.com (HELO email.microchip.com) ([198.175.253.82]) by esa5.microchip.iphmx.com with ESMTP/TLS/AES256-SHA256; 10 Nov 2020 07:49:17 -0700 Received: from chn-vm-ex01.mchp-main.com (10.10.85.143) by chn-vm-ex01.mchp-main.com (10.10.85.143) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.1979.3; Tue, 10 Nov 2020 07:49:16 -0700 Received: from mchp-dev-shegelun.microchip.com (10.10.115.15) by chn-vm-ex01.mchp-main.com (10.10.85.143) with Microsoft SMTP Server id 15.1.1979.3 via Frontend Transport; Tue, 10 Nov 2020 07:49:14 -0700 From: Steen Hegelund To: Kishon Vijay Abraham I , Vinod Koul CC: Steen Hegelund , Alexandre Belloni , Lars Povlsen , Bjarni Jonasson , Microsemi List , Microchip UNG Driver List , Subject: [PATCH v2 0/4] Adding the Sparx5 Serdes driver Date: Tue, 10 Nov 2020 15:49:06 +0100 Message-ID: <20201110144910.558164-1-steen.hegelund@microchip.com> X-Mailer: git-send-email 2.29.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Adding the Sparx5 Serdes driver This series of patches provides the serdes driver for the Microchip Sparx5 ethernet switch. The serdes driver supports the 10G and 25G serdes instances available in the Sparx5. The Sparx5 serdes support several interface modes with several speeds and also allows the client to change the mode and the speed according to changing in the environment such as changing cables from DAC to fiber. The serdes driver is to be used by the Sparx5 switchdev driver that will follow in subsequent series. History: -------- v1 -> v2: Fixed kernel test robot warnings - Made these structures static: - media_presets_25g - mode_presets_25g - media_presets_10g - mode_presets_10g - Removed these duplicate initializations: - sparx5_sd25g28_params.cfg_rx_reserve_15_8 - sparx5_sd25g28_params.cfg_pi_en - sparx5_sd25g28_params.cfg_cdrck_en - sparx5_sd10g28_params.cfg_cdrck_en Lars Povlsen (2): dt-bindings: phy: Add sparx5-serdes bindings arm64: dts: sparx5: Add Sparx5 serdes driver node Steen Hegelund (2): phy: Add ethernet serdes configuration option phy: Add Sparx5 ethernet serdes PHY driver .../bindings/phy/microchip,sparx5-serdes.yaml | 283 ++ arch/arm64/boot/dts/microchip/sparx5.dtsi | 195 ++ drivers/phy/Kconfig | 1 + drivers/phy/Makefile | 1 + drivers/phy/microchip/Kconfig | 12 + drivers/phy/microchip/Makefile | 6 + drivers/phy/microchip/sparx5_serdes.c | 2464 +++++++++++++++ drivers/phy/microchip/sparx5_serdes_regs.h | 2773 +++++++++++++++++ include/linux/phy/phy-ethernet-serdes.h | 49 + include/linux/phy/phy.h | 4 + 10 files changed, 5788 insertions(+) create mode 100644 Documentation/devicetree/bindings/phy/microchip,sparx5-serdes.yaml create mode 100644 drivers/phy/microchip/Kconfig create mode 100644 drivers/phy/microchip/Makefile create mode 100644 drivers/phy/microchip/sparx5_serdes.c create mode 100644 drivers/phy/microchip/sparx5_serdes_regs.h create mode 100644 include/linux/phy/phy-ethernet-serdes.h base-commit: 3cea11cd5e3b00d91caf0b4730194039b45c5891 prerequisite-patch-id: b155844f6a5e402ba62a39b1a2b276c8378eeb49 prerequisite-patch-id: 1605ab05e4212d0bba88a858c6dd16df64194282 prerequisite-patch-id: 8d9741ec8a716b179e39d640b3aab8f934c2573d -- 2.29.2