[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <91332458-c2c1-b7c3-5135-ab0741108020@suse.cz>
Date: Mon, 18 Feb 2019 15:22:11 +0100
From: Jiri Slaby <jslaby@...e.cz>
To: David Chen <david0813@...il.com>, linux-usb@...r.kernel.org,
netdev@...r.kernel.org, linux-kernel@...r.kernel.org
Cc: davem@...emloft.net, hayeswang@...ltek.com,
mario.limonciello@...l.com, bigeasy@...utronix.de,
edumazet@...gle.com, f.fainelli@...il.com, david.chen7@...l.com,
kai.heng.feng@...onical.com, zhongjiang@...wei.com
Subject: Re: [PATCH] [V2]r8152: Add support for MAC address pass through on
RTL8153-BD
On 18. 02. 19, 15:00, David Chen wrote:
> From: David Chen <david.chen7@...l.com>
>
> RTL8153-BD is used in Dell DA300 type-C dongle.
> It should be added to the whitelist of devices to activate MAC address
> pass through.
>
> Per confirming with Realtek all devices containing RTL8153-BD should
> activate MAC pass through and there won't use pass through bit on efuse
> like in RTL8153-AD.
>
> Signed-off-by: David Chen <david.chen7@...l.com>
> ---
> drivers/net/usb/r8152.c | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/net/usb/r8152.c b/drivers/net/usb/r8152.c
> index 60dd1ec1665f..86c8c64fbb0f 100644
> --- a/drivers/net/usb/r8152.c
> +++ b/drivers/net/usb/r8152.c
> @@ -557,6 +557,7 @@ enum spd_duplex {
> /* MAC PASSTHRU */
> #define AD_MASK 0xfee0
> #define BND_MASK 0x0004
> +#define BD_MASK 0x0001
> #define EFUSE 0xcfdb
> #define PASS_THRU_MASK 0x1
>
> @@ -1176,9 +1177,9 @@ static int vendor_mac_passthru_addr_read(struct r8152 *tp, struct sockaddr *sa)
> return -ENODEV;
> }
> } else {
> - /* test for RTL8153-BND */
> + /* test for RTL8153-BND and RTL8153-BD */
> ocp_data = ocp_read_byte(tp, MCU_TYPE_USB, USB_MISC_1);
> - if ((ocp_data & BND_MASK) == 0) {
> + if ((ocp_data & BND_MASK) == 0 && (ocp_data & BD_MASK) == 0) {
Can you ensure that BND won't have the BD's bit set and vice versa? I.e.
should the check be something like:
if (isBND() && (ocp_data & BND_MASK) == 0 ||
isBD() && (ocp_data & BD_MASK) == 0)
instead?
thanks,
--
js
suse labs
Powered by blists - more mailing lists