Received: by 2002:a05:6a10:f3d0:0:0:0:0 with SMTP id a16csp4573510pxv; Tue, 6 Jul 2021 04:23:55 -0700 (PDT) X-Google-Smtp-Source: ABdhPJx+5SyPNm2lqrTCB3SktinrqNW6Q4fzXtVSU5zULbj1VSOlY1uRMJbMOjg5KVZr/3t1O1pn X-Received: by 2002:a17:907:2ce1:: with SMTP id hz1mr17576779ejc.376.1625570635482; Tue, 06 Jul 2021 04:23:55 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1625570635; cv=none; d=google.com; s=arc-20160816; b=aBVn1q743QPtaKYFmeHvBa4ksBMHCWVAJdQyiBSP9FAMETp9D+MKvgYJbWeri5H7Il 1ilxIwt3BB+48dqZFK4m/0OagZABITr6CVxJfTvoY4QTPqsiNlTnnH4fJsN20WLdG3Jw AfDli3tkWVJmzPA2yJka/0Yg2EQaacSZeDGHLEmHe83NgYc6wgkNFQCReh+S8PyXtObo QteLTm61BXGfFYRHJjkzrZE1ledPg8uQy9o2joGMi/beiFdZDVgIms6FU+Q28n5WnX28 njlYbhY2RA8sgkDLhjIIOXU8f8QBRdCDblNjRWNtqJYEmDmurqVFhalnf9XjSBmfIlRx 9uLg== 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 :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=mUIFgZw7GRzI333sG55q1eP7jxXQcppFlgejGOykIAM=; b=SaSUevslPCo1WfCKvYrWZLQCE+OKX6/A+UZIW4Y9uDw7WIG3S/7Eb2fQvTK14HQsPl GNfSFKZvBtUYxkHSoR5srxxnbakxirBVYAvqRw7AarGHgShuMpMojRSIz7OsEDCz8whf tFRGn8RugIsiI+xYhwnXrJCpkTOyYs1O7YddVuMlTLDz/5NkLFJA6krSTPkM83rD1P4j aG2hWYl66h7K3mwNvhxUkEDRw7fvJXqqvO4Pq5vga9KPDl2hMDllq5DI+fB9RIq/JoTY ChNt3JTyrSxhk5i00a7vXAUahLB6sWodQCmog98mP447W+sRt33DezdmPdcrKR04f/v3 d6/Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=VTCQba0L; 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=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id w6si13998734edd.335.2021.07.06.04.23.32; Tue, 06 Jul 2021 04:23:55 -0700 (PDT) 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=pass header.i=@kernel.org header.s=k20201202 header.b=VTCQba0L; 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=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233601AbhGFLYI (ORCPT + 99 others); Tue, 6 Jul 2021 07:24:08 -0400 Received: from mail.kernel.org ([198.145.29.99]:55966 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232861AbhGFLTN (ORCPT ); Tue, 6 Jul 2021 07:19:13 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id B0AC461C78; Tue, 6 Jul 2021 11:16:33 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1625570194; bh=8Uvy0ZR2VNDF31lYFpuwH6pxmHiXXDSje6pg83UwUio=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=VTCQba0LwAsZr9EsTLzeRwxUXseM5UPR+oPXCLrT7QK4nPOYrV2WDXyeHUU+N+H7/ P92eSSvbu3mjDDGAE8amEK124dxle9uMbdGM2EXQvMNKQf/uol1vN20k/vUXyPQbG8 xSuNPlWnSHZaPkSGJYYc5SH7p+Yq38vt/haYrpBEG/MOZ3xmxJwW+ZMQCEoev+Ryx/ zoWDGqG+c6CQqjghiPuTJmmAWEYveALXV7AXfTfZDNCscv0vvC0jAgsPcn9LYz1rx3 T/vPqhj1YZ5IsKJradvrcJb/aj1HSIfyTh0rbEZABrn/3L9wIUjwMOO2kBb5GmT7NF rArHecRl2JR4A== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Vladimir Oltean , Radu Pirea , Russell King , "David S . Miller" , Sasha Levin , netdev@vger.kernel.org Subject: [PATCH AUTOSEL 5.13 108/189] net: phy: nxp-c45-tja11xx: enable MDIO write access to the master/slave registers Date: Tue, 6 Jul 2021 07:12:48 -0400 Message-Id: <20210706111409.2058071-108-sashal@kernel.org> X-Mailer: git-send-email 2.30.2 In-Reply-To: <20210706111409.2058071-1-sashal@kernel.org> References: <20210706111409.2058071-1-sashal@kernel.org> MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Vladimir Oltean [ Upstream commit 0b5f0f29b118910c89fe249cdfbc11b400a86a18 ] The SJA1110 switch integrates TJA1103 PHYs, but in SJA1110 switch rev B silicon, there is a bug in that the registers for selecting the 100base-T1 autoneg master/slave roles are not writable. To enable write access to the master/slave registers, these additional PHY writes are necessary during initialization. The issue has been corrected in later SJA1110 silicon versions and is not present in the standalone PHY variants, but applying the workaround unconditionally in the driver should not do any harm. Suggested-by: Radu Pirea (NXP OSS) Signed-off-by: Vladimir Oltean Reviewed-by: Russell King (Oracle) Signed-off-by: David S. Miller Signed-off-by: Sasha Levin --- drivers/net/phy/nxp-c45-tja11xx.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/net/phy/nxp-c45-tja11xx.c b/drivers/net/phy/nxp-c45-tja11xx.c index 26b9c0d7cb9d..b7ce0e737333 100644 --- a/drivers/net/phy/nxp-c45-tja11xx.c +++ b/drivers/net/phy/nxp-c45-tja11xx.c @@ -546,6 +546,12 @@ static int nxp_c45_config_init(struct phy_device *phydev) return ret; } + /* Bug workaround for SJA1110 rev B: enable write access + * to MDIO_MMD_PMAPMD + */ + phy_write_mmd(phydev, MDIO_MMD_VEND1, 0x01F8, 1); + phy_write_mmd(phydev, MDIO_MMD_VEND1, 0x01F9, 2); + phy_set_bits_mmd(phydev, MDIO_MMD_VEND1, VEND1_PHY_CONFIG, PHY_CONFIG_AUTO); -- 2.30.2