Re: [PATCH 0/6] thunderbolt: Introducing Thunderbolt(TM) networking

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, May 24, 2016 at 3:58 PM, Levy, Amir (Jer)
<amir.jer.levy@xxxxxxxxx> wrote:
>> -----Original Message-----
>> From: Lukas Wunner [mailto:lukas@xxxxxxxxx]
>> Sent: Tuesday, May 24, 2016 13:55
>> To: Levy, Amir (Jer) <amir.jer.levy@xxxxxxxxx>
>> Cc: andreas.noever@xxxxxxxxx; gregkh@xxxxxxxxxxxxxxxxxxx;
>> bhelgaas@xxxxxxxxxx; linux-pci@xxxxxxxxxxxxxxx; Jamet, Michael
>> <michael.jamet@xxxxxxxxx>; Alloun, Dan <dan.alloun@xxxxxxxxx>;
>> Westerberg, Mika <mika.westerberg@xxxxxxxxx>; Svahn, Kai
>> <kai.svahn@xxxxxxxxx>; Shevchenko, Andriy
>> <andriy.shevchenko@xxxxxxxxx>; Winkler, Tomas
>> <tomas.winkler@xxxxxxxxx>
>> Subject: Re: [PATCH 0/6] thunderbolt: Introducing Thunderbolt(TM)
>> networking
>>
>> Hi Amir,
>>
>> On Mon, May 23, 2016 at 11:48:50AM +0300, Amir Levy wrote:
>> > Thunderbolt(TM) networking, introduced in these patches, provides the
>> > capability of connecting hosts together by emulating an Ethernet adapter.
>>
>> Thank you for this contribution. I think it may take some time to review
>> everything, for now just some general observations:
>>
>> - Up until now this driver was Mac-only. IIUC the functionality you're
>>   adding will also be used on non-Macs. That's an important change that
>>   should probably be made more explicit in the commit messages. Did you
>>   test your patches on a Mac to see that nothing regresses?
>
> Yes, we did some tests on MacBook Pro with Falcon Ridge.
> Note that (as written in the cover letter), the functionality that we are adding is based on ICM (Intel Connection Manager, firmware).
> These patches will keep the current functionality on Mac and will add the networking functionality on non-Macs.

Hi Amir,

First of all thanks for contributing this. It is certainly good to see
Intel help out with the driver.

I only did a cursory read, but already have a few questions concerning
the ICM and its relation to the rest of the driver:
- Is the ICM only responsible for networking or does it also handle
pci tunnels, DP, ...?
- Your code only supports TB2,3. Afaik Apple supports IP over TB also
on TB 1. What are the obstacles to support first generation chips?
- Related to the above: if some of the registers are available only
for some chips then please document this in nhi_regs.h (and other
places).
- Is it possible to use the ICM on Apple hardware?

Your patch essentially splits the driver into two. You add an if
statement to nhi_probe which either runs your code or the old one.
This is just silly (you might as well add a separate driver). At least
parts of the functionality are already implemented. For example patch
2 has large overlap with what is currently handled by nhi.c/ctl.c
(reading/writing the ring buffer and handling communication with the
PDF). I understand that the interface provided by ring_rx/ring_tx is
not a good match for high speed networking introduced in the later
patches. But then you should refactor it to provide what you need
instead of reimplementing all the functionality.

Lastly, why do you need a user mode component? What does it do?

Andreas
--
To unsubscribe from this list: send the line "unsubscribe linux-pci" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux