[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <507B7885-3219-4C9A-B709-6B85F70F4F6E@gmail.com>
Date: Fri, 22 Feb 2019 13:44:31 +0800
From: David Chen <david0813@...il.com>
To: Jiri Slaby <jslaby@...e.cz>
Cc: linux-usb@...r.kernel.org, netdev@...r.kernel.org,
linux-kernel@...r.kernel.org, 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
Hi Jiri,
Thanks for your comments. BND_MASK and BD_MASK are defined separately, and I have tested RTL8153-BD and RTL8153-BND devices, both work as expected.
Thanks and Regards,
-David
> Jiri Slaby <jslaby@...e.cz> 於 2019年2月18日 下午10:22 寫道:
>
>> 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