Received: by 2002:a05:7208:9594:b0:7e:5202:c8b4 with SMTP id gs20csp1201917rbb; Mon, 26 Feb 2024 01:51:35 -0800 (PST) X-Forwarded-Encrypted: i=3; AJvYcCW+G5SXRoWs52drCfQbx+aAU5O9qVIo9pB7icmsui/x2Fl5e7xwxjQRCAePfEG/+TJPZxhaW58i2wb5N45/9aS6mzFFnL6qoWD6KJn7lg== X-Google-Smtp-Source: AGHT+IGMBQhi5KlR6s5QApZ6t3mi/2BGF8MUrxxZ1AEQsk194ykgfEUF+kzzPx1p5VHtbJQrWy6B X-Received: by 2002:a17:90a:df82:b0:29a:4300:e2c with SMTP id p2-20020a17090adf8200b0029a43000e2cmr5637347pjv.34.1708941095503; Mon, 26 Feb 2024 01:51:35 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1708941095; cv=pass; d=google.com; s=arc-20160816; b=cP6T7nz3tTSefFCSTNz+mCyYMHWOWbg1g73xqEmTMjXNBoTBKTAp8MAzV58lUmKerT Dy4RAcRRhjpYFbWAIEvOjJC0oGdtWDNUxspRo+5W25Na8YKF9uU7/kaHUYhH52zWDJ4b FdL0xQ8ve5Jt8RXCE25uFg6cROpJJmHOfB5otvV7vvb8CYGif/se0jbrUU+7MmjXg/Al 5Y16yW4j3pLFkqMZ8kmNfP6mMbf7ieilXhskJHz8wqCvg5PCwFVBz9VIYN5eT+i78c0Q auAKvbQ8wGFHHEnxchzDlG2owp3FVzxJl+8PlSpgFsXm3bLLGw+AS+EOjes03MrxD0oX Oj1g== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:references:in-reply-to:message-id :date:subject:cc:to:from:dkim-signature; bh=QLITLxaZSB9SoVACx0xoHq4X5hT7/t8O6Nlq55OjBL0=; fh=yQBTHNxo5kUELRo+PV5Ihq/FA4KqeftNRhlNY9oWD6A=; b=mZ7HnebztQrePsCSTF5jVNnNKzyQ2+MSOk4shG3D53Bff9Yt3rewAVvOYezazk/Ykj XbIeuYD1p+BJe0csKcN3D6H36S6qwMgH0jzRnJYXy+stOXPBSJBYJDGXwND0DG2iqwac zgA2PwA8U9NPAa+J0kikzdT5ck/gKtSo8u1H/AT8vfr7K0ropUvnfXG6Gp558y9PglSx NnaHplmXfHUrSX95ECeA3lGy3w7+dars9Wb5x/g0bMu9ZiOGUm4LjiH5AAn4uyw3pJrd fDDNDfqq5bGv9yWzOwdLY1kSOElnt3yKj0ak6/0PhJ8zXYgF5D3adzBcFSTOsF2luf0x Z5zA==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@innosonix-de.20230601.gappssmtp.com header.s=20230601 header.b=oF5JvOb2; arc=pass (i=1 spf=pass spfdomain=innosonix.de dkim=pass dkdomain=innosonix-de.20230601.gappssmtp.com); spf=pass (google.com: domain of linux-kernel+bounces-81025-linux.lists.archive=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) smtp.mailfrom="linux-kernel+bounces-81025-linux.lists.archive=gmail.com@vger.kernel.org" Return-Path: Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org. [139.178.88.99]) by mx.google.com with ESMTPS id fu13-20020a17090ad18d00b0029897526522si5282518pjb.103.2024.02.26.01.51.35 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Feb 2024 01:51:35 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-81025-linux.lists.archive=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) client-ip=139.178.88.99; Authentication-Results: mx.google.com; dkim=pass header.i=@innosonix-de.20230601.gappssmtp.com header.s=20230601 header.b=oF5JvOb2; arc=pass (i=1 spf=pass spfdomain=innosonix.de dkim=pass dkdomain=innosonix-de.20230601.gappssmtp.com); spf=pass (google.com: domain of linux-kernel+bounces-81025-linux.lists.archive=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) smtp.mailfrom="linux-kernel+bounces-81025-linux.lists.archive=gmail.com@vger.kernel.org" Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sv.mirrors.kernel.org (Postfix) with ESMTPS id 831D0281813 for ; Mon, 26 Feb 2024 09:50:14 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 5EF5312A16F; Mon, 26 Feb 2024 09:15:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=innosonix-de.20230601.gappssmtp.com header.i=@innosonix-de.20230601.gappssmtp.com header.b="oF5JvOb2" Received: from mail-ed1-f53.google.com (mail-ed1-f53.google.com [209.85.208.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 14688129A6E for ; Mon, 26 Feb 2024 09:15:17 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.208.53 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708938921; cv=none; b=Tyam7IJcQKhow5pIaq57YHs1sh9T4YWZUiE3b3P81NjEqhH+/8bJ1P4fjGXARHAIEXC1Zl7xm9lWS6IvISDsxy9Q9IZqQG6WZ+YGvu6FR8KaGP9som5t3SNX8dv32lX+gVImJw5+o8rKr9w9urASrgfZ5OIPbbhoB/ece4YFugQ= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708938921; c=relaxed/simple; bh=1nsO2sbgy7HnxuG5nHFX9lFzO6oldSfWF1CTUMJTGLQ=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version:Content-Type; b=iFnMEtXv2VIZwixLuH0R2RIHfqjq49GIiro8I/FVSd9Ob9A78eRaljAgoUyBuwgMCv2s9GsDAVomUdm8CAmYIZy20Mht5sGWQHthKITu4xEqTzXebSpPDewzEM7muGdSWl4SwI0Yw9ajExOueIePFrSiuEHVKY3udPkdi5AtgZY= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=innosonix.de; spf=pass smtp.mailfrom=innosonix.de; dkim=pass (2048-bit key) header.d=innosonix-de.20230601.gappssmtp.com header.i=@innosonix-de.20230601.gappssmtp.com header.b=oF5JvOb2; arc=none smtp.client-ip=209.85.208.53 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=innosonix.de Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=innosonix.de Received: by mail-ed1-f53.google.com with SMTP id 4fb4d7f45d1cf-55369c59708so947510a12.1 for ; Mon, 26 Feb 2024 01:15:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=innosonix-de.20230601.gappssmtp.com; s=20230601; t=1708938916; x=1709543716; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=QLITLxaZSB9SoVACx0xoHq4X5hT7/t8O6Nlq55OjBL0=; b=oF5JvOb28kOnU7siFrSLTZd//3MvSrD3uL77MuhhC1Assbla0msmyOQtoY/BwRt/g1 M3PIMF2NyeqY2frO+oW/dZNJMDVym8P+16xjHDNOXfyFSTmaTWVQDdSgFDOGv7JiY6/Y VNypMh1MmZRtKLefadOXsvAIfsswo/DyUeCL4Jg+mpCo7YGFRME6U3G85goDPMXwswWm wKYMZkQHbdIMjRyDHlIg/D5+lyL2zUTRQ8RVh54WWv9A32KZcwzjXZTKA8Z3W/GO+e4S rjD5y+7hGrZRtSLFugTnk/qjt3RTNUVrhBAEdR1LsH/VnOGBNfht9pwWNKR7p0COdADQ dYWg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1708938916; x=1709543716; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=QLITLxaZSB9SoVACx0xoHq4X5hT7/t8O6Nlq55OjBL0=; b=ruGrGNfNnNPh85tf8fESKZMirSUKXCuWtFP/wal+w2Sdov7otliphwPGbWR3vHHvE+ dbAv15fVSEhsplQVHBCDgHbhRESMMqlXXCGrOzfYzCm90IxZ+JCeELxvRp3nybwmVjGz uh20uvoSBLHtQwzkwJ8IeilhKAsuJjgID8IGLFdBTB4RTxviJb3WWXDnEfqQhdevOKFW SZg9Ez1yerGSwgx3S+LNGg8TmYADSq5yyWOiyGyeT5ujDzKT/Z+5e0pYeUPkZDzFpajB PC7acj+u8+xB3gn36jX9yfzIOvK4z0jZJy8+6ATkZGCay1kPs+cMyUrdHS+A4KAY8UQ4 KmXg== X-Forwarded-Encrypted: i=1; AJvYcCUIkFZJJ/troeO+O0NmBp16HJw2PneHOGmCmx9QH4zjP+O71yER7/eF0nESqzsU6W2g840NccXDL9t8o2DR/D4Bif5zyXDwQ6B+QmvR X-Gm-Message-State: AOJu0YyidUGCmUIPRgnPM2nXbpZcV9GF3b5IN1nXXl0HCjGipKl8fcCC b53I7embIVgxpOt53LRF0sQWQUXn01DoeTa5rjU1cqV/sIZnLPAgLIpS9h0sGbB1Beb3XuFZ/IU uaX1TKI9H6HpOUAbib+jRIlLjT3cvTW0SAUwu3prO/ilht+aebblxixxw47ZWRvRNBakJnfcOr2 TZ X-Received: by 2002:a50:d7c4:0:b0:565:dac5:3ef8 with SMTP id m4-20020a50d7c4000000b00565dac53ef8mr1968223edj.1.1708938916229; Mon, 26 Feb 2024 01:15:16 -0800 (PST) Received: from localhost.localdomain (p549da391.dip0.t-ipconnect.de. [84.157.163.145]) by smtp.gmail.com with ESMTPSA id bm17-20020a0564020b1100b00564c7454bf3sm2163206edb.8.2024.02.26.01.15.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 26 Feb 2024 01:15:15 -0800 (PST) From: =?UTF-8?q?Steffen=20B=C3=A4tz?= To: Cc: Fabio Estevam , =?UTF-8?q?Steffen=20B=C3=A4tz?= , Andrew Lunn , Florian Fainelli , Vladimir Oltean , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Russell King , "Russell King (Oracle)" , netdev@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH net 2/2] net: dsa: mv88e6xxx: 6320/21 read cmode on serdes ports Date: Mon, 26 Feb 2024 10:13:24 +0100 Message-Id: <20240226091325.53986-2-steffen@innosonix.de> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20240226091325.53986-1-steffen@innosonix.de> References: <20240226091325.53986-1-steffen@innosonix.de> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On the mv88e6320 and 6321 switch family, port 0/1 are serdes only ports. Modified the mv88e6352_get_port4_serdes_cmode function to pass a port number since the register set of the 6352 is equal on the 6320/21 families. Signed-off-by: Steffen B=C3=A4tz --- drivers/net/dsa/mv88e6xxx/chip.c | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/drivers/net/dsa/mv88e6xxx/chip.c b/drivers/net/dsa/mv88e6xxx/c= hip.c index 32b927b7c221..2d7361852d7e 100644 --- a/drivers/net/dsa/mv88e6xxx/chip.c +++ b/drivers/net/dsa/mv88e6xxx/chip.c @@ -589,12 +589,12 @@ static void mv88e6351_phylink_get_caps(struct mv88e6x= xx_chip *chip, int port, MAC_1000FD; } =20 -static int mv88e6352_get_port4_serdes_cmode(struct mv88e6xxx_chip *chip) +static int mv88e63xx_get_port_serdes_cmode(struct mv88e6xxx_chip *chip, in= t port) { u16 reg, val; int err; =20 - err =3D mv88e6xxx_port_read(chip, 4, MV88E6XXX_PORT_STS, ®); + err =3D mv88e6xxx_port_read(chip, port, MV88E6XXX_PORT_STS, ®); if (err) return err; =20 @@ -603,16 +603,16 @@ static int mv88e6352_get_port4_serdes_cmode(struct mv= 88e6xxx_chip *chip) return 0xf; =20 val =3D reg & ~MV88E6XXX_PORT_STS_PHY_DETECT; - err =3D mv88e6xxx_port_write(chip, 4, MV88E6XXX_PORT_STS, val); + err =3D mv88e6xxx_port_write(chip, port, MV88E6XXX_PORT_STS, val); if (err) return err; =20 - err =3D mv88e6xxx_port_read(chip, 4, MV88E6XXX_PORT_STS, &val); + err =3D mv88e6xxx_port_read(chip, port, MV88E6XXX_PORT_STS, &val); if (err) return err; =20 /* Restore PHY_DETECT value */ - err =3D mv88e6xxx_port_write(chip, 4, MV88E6XXX_PORT_STS, reg); + err =3D mv88e6xxx_port_write(chip, port, MV88E6XXX_PORT_STS, reg); if (err) return err; =20 @@ -640,7 +640,7 @@ static void mv88e6352_phylink_get_caps(struct mv88e6xxx= _chip *chip, int port, if (err <=3D 0) return; =20 - cmode =3D mv88e6352_get_port4_serdes_cmode(chip); + cmode =3D mv88e63xx_get_port_serdes_cmode(chip, port); if (cmode < 0) dev_err(chip->dev, "p%d: failed to read serdes cmode\n", port); @@ -660,6 +660,16 @@ static void mv88e632x_phylink_get_caps(struct mv88e6xx= x_chip *chip, int port, =20 config->mac_capabilities =3D MAC_SYM_PAUSE | MAC_10 | MAC_100 | MAC_1000FD; + + /* Port 0/1 are serdes only ports */ + if (port =3D=3D 0 || port =3D=3D 1) { + cmode =3D mv88e63xx_get_port_serdes_cmode(chip, port); + if (cmode < 0) + dev_err(chip->dev, "p%d: failed to read serdes cmode\n", + port); + else + mv88e6xxx_translate_cmode(cmode, supported); + } } =20 static void mv88e6341_phylink_get_caps(struct mv88e6xxx_chip *chip, int po= rt, --=20 2.34.1 --=20 *innosonix GmbH* Hauptstr. 35 96482 Ahorn central: +49 9561 7459980 www.innosonix.de innosonix GmbH Gesch=C3=A4ftsf=C3=BChrer:=20 Markus B=C3=A4tz, Steffen B=C3=A4tz USt.-IdNr / VAT-Nr.: DE266020313 EORI-Nr.:=20 DE240121536680271 HRB 5192 Coburg WEEE-Reg.-Nr. DE88021242 --=20