Re: Host & gadget transparent driver

2018-02-22 Thread Krzysztof Opasiak



On 02/22/2018 11:17 AM, Greg KH wrote:

On Thu, Feb 22, 2018 at 10:42:17AM +0100, Krzysztof Opasiak wrote:



On 02/22/2018 10:32 AM, Ran Shalit wrote:
[...]


I don't know the exact case nor I'm license specialist but I think it's
doable without license violation. Take a look at official displaylink
drivers[1]... They consist of two parts. First one is Kernel GPL code[2]
which is obviously published to not violate the license and second part is
userspace binary blob that receives video stream from this "open source
driver" and then uses libusb to communicate with the device...

Footnotes:
1 - http://www.displaylink.com/downloads/ubuntu
2 - https://github.com/DisplayLink/evdi
Best regards,



Krzysztof , I will check the proxy git .
What's the difference between the proxy you've given before to the DisplayLink?



Displaylink driver is unrelated to the proxy. It's just an example of how to
not violate GPL license and not publish your USB protocol and provide only
binary blob with it;)


Um, do not say "how not to violate GPL" without being a lawyer please.


You are absolutely right and what I wrote above it's only my own 
"feeling" not any lawyer statement.



I wouldn't bet that what they are doing is all so cut-and-dry...


Me neither so I'm only letting know that such things are happening in 
the wild and if you know some specialist you may let him know about 
this;) If it turns out that it's bad and you/LF manage to persuade DL to 
open their driver because of that, then oh man you are a magician for me:)


Best regards,
--
Krzysztof Opasiak
Samsung R Institute Poland
Samsung Electronics
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Host & gadget transparent driver

2018-02-22 Thread Greg KH
On Thu, Feb 22, 2018 at 10:42:17AM +0100, Krzysztof Opasiak wrote:
> 
> 
> On 02/22/2018 10:32 AM, Ran Shalit wrote:
> [...]
> > > 
> > > I don't know the exact case nor I'm license specialist but I think it's
> > > doable without license violation. Take a look at official displaylink
> > > drivers[1]... They consist of two parts. First one is Kernel GPL code[2]
> > > which is obviously published to not violate the license and second part is
> > > userspace binary blob that receives video stream from this "open source
> > > driver" and then uses libusb to communicate with the device...
> > > 
> > > Footnotes:
> > > 1 - http://www.displaylink.com/downloads/ubuntu
> > > 2 - https://github.com/DisplayLink/evdi
> > > Best regards,
> > > 
> > 
> > Krzysztof , I will check the proxy git .
> > What's the difference between the proxy you've given before to the 
> > DisplayLink?
> > 
> 
> Displaylink driver is unrelated to the proxy. It's just an example of how to
> not violate GPL license and not publish your USB protocol and provide only
> binary blob with it;)

Um, do not say "how not to violate GPL" without being a lawyer please.
I wouldn't bet that what they are doing is all so cut-and-dry...

good luck!

greg k-h
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Host & gadget transparent driver

2018-02-22 Thread Krzysztof Opasiak



On 02/22/2018 10:32 AM, Ran Shalit wrote:
[...]


I don't know the exact case nor I'm license specialist but I think it's
doable without license violation. Take a look at official displaylink
drivers[1]... They consist of two parts. First one is Kernel GPL code[2]
which is obviously published to not violate the license and second part is
userspace binary blob that receives video stream from this "open source
driver" and then uses libusb to communicate with the device...

Footnotes:
1 - http://www.displaylink.com/downloads/ubuntu
2 - https://github.com/DisplayLink/evdi
Best regards,



Krzysztof , I will check the proxy git .
What's the difference between the proxy you've given before to the DisplayLink?



Displaylink driver is unrelated to the proxy. It's just an example of 
how to not violate GPL license and not publish your USB protocol and 
provide only binary blob with it;)


Best regards,
--
Krzysztof Opasiak
Samsung R Institute Poland
Samsung Electronics
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Host & gadget transparent driver

2018-02-22 Thread Ran Shalit
On Thu, Feb 22, 2018 at 10:46 AM, Krzysztof Opasiak
 wrote:
>
>
> On 02/22/2018 07:53 AM, Greg KH wrote:
>>
>> On Wed, Feb 21, 2018 at 11:23:26PM +0200, Ran Shalit wrote:
>>>
>>> Hello,
>>>
>>> I am facing the following challenge:
>>>
>>> We have a camera device, and a ready drivers in the following
>>> configuration:
>>>
>>> (1) host <--> camera
>>>
>>> The drivers for host is a binary, i.e. source code is probably not
>>> available, and also the protocol datasheet is probably not available.
>>
>>
>> Really?  A USB host driver that is not released under the GPL?  That's
>> really difficult to imagine, but you are on your own here as that's an
>> obvious license violation.  Please go talk to your lawyers about this
>> problem, or you will have bigger problems if you try to rely on this.
>>

It is using FLIR camera, a vision camera (FLIR) which uses generic
Linux driver (Yet,  I am not sure yet which because I don't have that
camera with me yet)
maybe it's uvc drivers ( do they support vision usb3 ?) , I also see
usb3vision git, but didn't find it in mainline (?).
https://github.com/ni/usb3vision/blob/master/u3v.h
I know that it use standard GenICam (which kernel driver support it?)

Yet, My question was more as a general question about if such
"transparent drivers" exist and if not what the general concept of
writing such driver.
As Krzysztof  said, it can actually be a userspace driver.


>
> I don't know the exact case nor I'm license specialist but I think it's
> doable without license violation. Take a look at official displaylink
> drivers[1]... They consist of two parts. First one is Kernel GPL code[2]
> which is obviously published to not violate the license and second part is
> userspace binary blob that receives video stream from this "open source
> driver" and then uses libusb to communicate with the device...
>
> Footnotes:
> 1 - http://www.displaylink.com/downloads/ubuntu
> 2 - https://github.com/DisplayLink/evdi
> Best regards,
>

Krzysztof , I will check the proxy git .
What's the difference between the proxy you've given before to the DisplayLink?

Thanks,
Ran

> --
> Krzysztof Opasiak
> Samsung R Institute Poland
> Samsung Electronics
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Host & gadget transparent driver

2018-02-22 Thread Krzysztof Opasiak



On 02/22/2018 07:53 AM, Greg KH wrote:

On Wed, Feb 21, 2018 at 11:23:26PM +0200, Ran Shalit wrote:

Hello,

I am facing the following challenge:

We have a camera device, and a ready drivers in the following configuration:

(1) host <--> camera

The drivers for host is a binary, i.e. source code is probably not
available, and also the protocol datasheet is probably not available.


Really?  A USB host driver that is not released under the GPL?  That's
really difficult to imagine, but you are on your own here as that's an
obvious license violation.  Please go talk to your lawyers about this
problem, or you will have bigger problems if you try to rely on this.



I don't know the exact case nor I'm license specialist but I think it's 
doable without license violation. Take a look at official displaylink 
drivers[1]... They consist of two parts. First one is Kernel GPL code[2] 
which is obviously published to not violate the license and second part 
is userspace binary blob that receives video stream from this "open 
source driver" and then uses libusb to communicate with the device...


Footnotes:
1 - http://www.displaylink.com/downloads/ubuntu
2 - https://github.com/DisplayLink/evdi
Best regards,
--
Krzysztof Opasiak
Samsung R Institute Poland
Samsung Electronics
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Host & gadget transparent driver

2018-02-22 Thread Krzysztof Opasiak



On 02/21/2018 10:23 PM, Ran Shalit wrote:

Hello,

I am facing the following challenge:

We have a camera device, and a ready drivers in the following configuration:

(1) host <--> camera

The drivers for host is a binary, i.e. source code is probably not
available, and also the protocol datasheet is probably not available.

But we need to use the camera in the following configuration:

(2) host <---> embedded board  <--> camera

In other words, there is a transparent medium in between the host and device.

I would like to ask what is the general concept for implementing the
drivers in the embedded board ?

Does these task requires reverse engineering ?

Is there any known example or driver which does something similar ?


I use to do such sick things like this. It can be easily done using 
USBProxy[1] (libusb + gadgetfs) but I'm not sure if it supports iso 
transfers which I assume is required for your camera...


Footnotes:
1 - https://github.com/dominicgs/USBProxy

--
Krzysztof Opasiak
Samsung R Institute Poland
Samsung Electronics
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Host & gadget transparent driver

2018-02-21 Thread Greg KH
On Wed, Feb 21, 2018 at 11:23:26PM +0200, Ran Shalit wrote:
> Hello,
> 
> I am facing the following challenge:
> 
> We have a camera device, and a ready drivers in the following configuration:
> 
> (1) host <--> camera
> 
> The drivers for host is a binary, i.e. source code is probably not
> available, and also the protocol datasheet is probably not available.

Really?  A USB host driver that is not released under the GPL?  That's
really difficult to imagine, but you are on your own here as that's an
obvious license violation.  Please go talk to your lawyers about this
problem, or you will have bigger problems if you try to rely on this.

best of luck, you are on your own here, sorry.

greg k-h
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Host & gadget transparent driver

2018-02-21 Thread Ran Shalit
Hello,

I am facing the following challenge:

We have a camera device, and a ready drivers in the following configuration:

(1) host <--> camera

The drivers for host is a binary, i.e. source code is probably not
available, and also the protocol datasheet is probably not available.

But we need to use the camera in the following configuration:

(2) host <---> embedded board  <--> camera

In other words, there is a transparent medium in between the host and device.

I would like to ask what is the general concept for implementing the
drivers in the embedded board ?

Does these task requires reverse engineering ?

Is there any known example or driver which does something similar ?

Thanks a lot,
ranran
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html