lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Thu, 9 May 2024 02:15:01 +0200
From: Hans-Frieder Vogt <hfdevel@....net>
To: FUJITA Tomonori <fujita.tomonori@...il.com>
Cc: netdev@...r.kernel.org, andrew@...n.ch, horms@...nel.org,
 kuba@...nel.org, jiri@...nulli.us, pabeni@...hat.com
Subject: Re: [PATCH net-next v5 3/6] net: tn40xx: add basic Tx handling


On 09.05.2024 01.03, FUJITA Tomonori wrote:
> Hi,
>
> Thanks for reviewing!
>
> On Wed, 8 May 2024 19:46:05 +0200
> Hans-Frieder Vogt <hfdevel@....net> wrote:
>
>>> +#define TN40_SHORT_PACKET_SIZE 60
>>> +#define TN40_FIRMWARE_NAME "tn40xx-14.fw"
>> why is here a new firmware name defined?
>> The TN4010 uses the identical firmware as the tehuti ethernet
>> driver. I
>> suggest therefore to define instead, in order to avoid storing the
>> same
>> firmware twice:
>>
>> #define TN40_FIRMWARE_NAME "tehuti/bdx.bin"
> Ah, I overlooked the firmware for TN30xx. But TN40xx and TN30xx use
> the identical firmware? On my environment, seems that they are
> different.
>
> $ cmp tn40xx-14.fw tehuti/bdx.bin
> tn40xx-14.fw tehuti/bdx.bin differ: byte 21, line 1

the firmware in the linux drivers from tehuti (versions 0.3.6.*) and the
Windows drivers (4.4.405.15*) have indeed a firmware included (in file
tn40_fw.h) that is 16 bytes longer than the firmware tehuti/bdx.bin in
linux-firmware (42784 bytes instead of 42768 bytes). The difference
between the two is, that the firmware in the out-of-tree driver has the
first 16 bytes duplicated. Everything after the first 16 bytes is identical.

md5sums:
tehuti/bdx.bin: b8e1cf61ae0a0eea2b47bd8d81e1c045
firmware from tn40_fw.h:  2ad73a519d78eab9155277ac0fd3615a

Unfortunately, I don't have drivers for the TN30xx (nor hardware), to do
a direct firmware comparison of the drivers distributed by Tehuti. So I
can't double-check.

Running two TN4010 cards with the firmware from linux-firmware has given
me no indication that the duplicate 16 bytes in the beginning are
actually relevant.

Comparing the tehuti driver in the linux kernel with the out-of-tree
driver reveals, that most (maybe even all) register addresses are the
same in those two drivers, leading to the conclusion that in fact the
two chips must be very similar in function.

So, maybe I am overlooking something, but for me it looks like that the
same firmware can be used between the TN3020 and the TN4010.

Give it a try with the tehuti/bdx.bin firmware and check yourself.

Thanks for your effort of mainlining a tn40xx driver!

Best regards,
Hans


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ