Received: by 2002:a25:e7d8:0:0:0:0:0 with SMTP id e207csp674432ybh; Tue, 10 Mar 2020 06:16:17 -0700 (PDT) X-Google-Smtp-Source: ADFU+vs3lA53uaxfbbrACCVtY5TqTBDOlsAQBISCnTKBcbnBYYM7F/ApVZZN6e8aNMaJkQ+opZrl X-Received: by 2002:a05:6830:108d:: with SMTP id y13mr17092806oto.241.1583846176735; Tue, 10 Mar 2020 06:16:16 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1583846176; cv=none; d=google.com; s=arc-20160816; b=LjlBACd48fLn/eiVYAUEZ04oP4Vt+jfjXX3pa0xUEI9/361INWozw+5YrzohwKbemN U5I6oHZi6zuB0mMtmSohRadGR8EAlWPHGiVk46Uf9HAwWVYKjRO0Z7UdIB+0xIrn8Hpa m6djgzk3DospJHygbjVjTAAsTyNRRqahDareZCCt8n3/Wa7PXwFBZ58/aGDhMHprJo3D Ltl09UFcClirJ9Oj8MAbC/ijjYMonO5HkbRPc01aYcrqtWmvACw1lasTfdf6yrBdJtcK dT/hN9IspoXEWelSrLam2HJw3xdTtzK6VHntrdGF8CECwmADCdhDqfEv5z+Zeck+7Wmo qzIw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=oEJiBBg/Mdc+88ML/zVBaOrsXq+iWnBjsjlYQ+z02cg=; b=JRyeIYyRNIOBblZiqSEnRg+b0I+pZMT2Caoh0IcKVYWODCTQ+b65eVozVRKKg7Vs3d EYWO1hy0MwpbBdcVEnZKVm7VpZ29bb2S5PYv7D4CcWZ44+pYdODwLLLZ8yjBw/VDXyLn YvwdYUo3iw5oHGDsKpKf3ibUEwVBSfC0MINY3xycANXl0cozmwcWDrciVP5H1seS6P1w denRhMpN/9MnH23YR/sYOyNUVGuAF1nP4pKXLQJcF+qKBMjN9T2FGzF22LM0tl/X+YTW I6aGvZyPORND17dW1U6St+auNVK75eskJoBgD1AwtVscS4aJop3ysovkq3ysudvheXge GtPw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=ujsVJtnf; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id l126si1643706oih.31.2020.03.10.06.16.04; Tue, 10 Mar 2020 06:16:16 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=ujsVJtnf; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731872AbgCJNOZ (ORCPT + 99 others); Tue, 10 Mar 2020 09:14:25 -0400 Received: from mail.kernel.org ([198.145.29.99]:38088 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1731867AbgCJNOY (ORCPT ); Tue, 10 Mar 2020 09:14:24 -0400 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 0851220409; Tue, 10 Mar 2020 13:14:22 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1583846063; bh=fERsDUe64ag3rRBlFOK8qlkJoh2Bnqtp8Cox5nzveJc=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=ujsVJtnfLqFiDKJzd8b/D/lP6PeiNx29dNs4zJWVFVZbAKWbE734YLsmtnqjU9q88 HEWWf5QC+WNMvpI6vlk9q/3mwSor2MYw2NQ/++B5rmB+chGsrSUr8gu3yqtDI3ZeMM x0qRyK9RQHlclG5Gt+9hsdJ0EJtcpZB/HMUxbo4A= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Marek Vasut , "David S. Miller" , Lukas Wunner , Petr Stetiar , YueHaibing , Sasha Levin Subject: [PATCH 4.19 22/86] net: ks8851-ml: Fix 16-bit IO operation Date: Tue, 10 Mar 2020 13:44:46 +0100 Message-Id: <20200310124531.980660280@linuxfoundation.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20200310124530.808338541@linuxfoundation.org> References: <20200310124530.808338541@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Marek Vasut [ Upstream commit 58292104832fef6cb4a89f736012c0e0724c3442 ] The Micrel KSZ8851-16MLLI datasheet DS00002357B page 12 states that BE[3:0] signals are active high. This contradicts the measurements of the behavior of the actual chip, where these signals behave as active low. For example, to read the CIDER register, the bus must expose 0xc0c0 during the address phase, which means BE[3:0]=4'b1100. Signed-off-by: Marek Vasut Cc: David S. Miller Cc: Lukas Wunner Cc: Petr Stetiar Cc: YueHaibing Signed-off-by: David S. Miller Signed-off-by: Sasha Levin --- drivers/net/ethernet/micrel/ks8851_mll.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/net/ethernet/micrel/ks8851_mll.c b/drivers/net/ethernet/micrel/ks8851_mll.c index aff1619fb0e0e..9de59facec218 100644 --- a/drivers/net/ethernet/micrel/ks8851_mll.c +++ b/drivers/net/ethernet/micrel/ks8851_mll.c @@ -485,7 +485,7 @@ static int msg_enable; static u16 ks_rdreg16(struct ks_net *ks, int offset) { - ks->cmd_reg_cache = (u16)offset | ((BE1 | BE0) << (offset & 0x02)); + ks->cmd_reg_cache = (u16)offset | ((BE3 | BE2) >> (offset & 0x02)); iowrite16(ks->cmd_reg_cache, ks->hw_addr_cmd); return ioread16(ks->hw_addr); } @@ -500,7 +500,7 @@ static u16 ks_rdreg16(struct ks_net *ks, int offset) static void ks_wrreg16(struct ks_net *ks, int offset, u16 value) { - ks->cmd_reg_cache = (u16)offset | ((BE1 | BE0) << (offset & 0x02)); + ks->cmd_reg_cache = (u16)offset | ((BE3 | BE2) >> (offset & 0x02)); iowrite16(ks->cmd_reg_cache, ks->hw_addr_cmd); iowrite16(value, ks->hw_addr); } -- 2.20.1