2007-10-20 18:41:10

by Pavel Machek

[permalink] [raw]
Subject: rt73usb: support for wireless in Kohjinsha subnotebook

Hi!

Kohjinsha subnotebook seems to contain wifi with USB IDs 0x18e8,
0x6206... I hope that to be compatible with
net/wireless/rt2x00/rt73usb.c .

[Sidenote: could we add some real author info into rt73usb.c?]

I did this on 2.6.23-rc8-mm1 kernel (The RT hack may not be
neccessary), but then it oopses somewhere in softmac layer. I'll try
to play with it some more.

If you have any ideas, let me know.
Pavel

--- clean-mm/drivers/net/wireless/rt2x00/rt73usb.c 2007-10-09 09:32:08.000000000 +0200
+++ linux-mm/drivers/net/wireless/rt2x00/rt73usb.c 2007-10-19 22:19:45.000000000 +0200
@@ -1580,7 +1580,6 @@

if (!rt2x00_rev(&rt2x00dev->chip, 0x25730)) {
ERROR(rt2x00dev, "Invalid RT chipset detected.\n");
- return -ENODEV;
}

if (!rt2x00_rf(&rt2x00dev->chip, RF5226) &&
@@ -1588,7 +1587,6 @@
!rt2x00_rf(&rt2x00dev->chip, RF5225) &&
!rt2x00_rf(&rt2x00dev->chip, RF2527)) {
ERROR(rt2x00dev, "Invalid RF chipset detected.\n");
- return -ENODEV;
}

/*
@@ -2080,6 +2078,7 @@
{ USB_DEVICE(0x148f, 0x2671), USB_DEVICE_DATA(&rt73usb_ops) },
/* Qcom */
{ USB_DEVICE(0x18e8, 0x6196), USB_DEVICE_DATA(&rt73usb_ops) },
+ { USB_DEVICE(0x18e8, 0x6206), USB_DEVICE_DATA(&rt73usb_ops) },
{ USB_DEVICE(0x18e8, 0x6229), USB_DEVICE_DATA(&rt73usb_ops) },
{ USB_DEVICE(0x18e8, 0x6238), USB_DEVICE_DATA(&rt73usb_ops) },
/* Senao */

--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html


2007-10-21 01:52:53

by Ivo Van Doorn

[permalink] [raw]
Subject: Re: [Rt2400-devel] rt73usb: support for wireless in Kohjinsha subnotebook

Hi,

> Kohjinsha subnotebook seems to contain wifi with USB IDs 0x18e8,
> 0x6206... I hope that to be compatible with
> net/wireless/rt2x00/rt73usb.c .

Is there any reason you assume it is a rt73usb device,
or are you just making wild guesses about what the chipset is?

> [Sidenote: could we add some real author info into rt73usb.c?]

You mean expanding the project name to the full list of developers in
the project? I don't see any need for that.

> I did this on 2.6.23-rc8-mm1 kernel (The RT hack may not be
> neccessary), but then it oopses somewhere in softmac layer. I'll try
> to play with it some more.
>
> If you have any ideas, let me know.
> Pavel
>
> --- clean-mm/drivers/net/wireless/rt2x00/rt73usb.c 2007-10-09 09:32:08.000000000 +0200
> +++ linux-mm/drivers/net/wireless/rt2x00/rt73usb.c 2007-10-19 22:19:45.000000000 +0200
> @@ -1580,7 +1580,6 @@
>
> if (!rt2x00_rev(&rt2x00dev->chip, 0x25730)) {
> ERROR(rt2x00dev, "Invalid RT chipset detected.\n");
> - return -ENODEV;
> }
>
> if (!rt2x00_rf(&rt2x00dev->chip, RF5226) &&
> @@ -1588,7 +1587,6 @@
> !rt2x00_rf(&rt2x00dev->chip, RF5225) &&
> !rt2x00_rf(&rt2x00dev->chip, RF2527)) {
> ERROR(rt2x00dev, "Invalid RF chipset detected.\n");
> - return -ENODEV;
> }

Both removals of -ENODEV are completely wrong. If the device does not pass the above
2 checks it is _not_ a rt73usb device. And forcing the driver to work with the device will
result in all kinds of problems.

If rt2x00 is loaded and detected the device, it should print out a debug message that starts with:
"Chipset detected - " What is in your case the complete line?

Ivo

2007-10-21 09:20:53

by Pavel Machek

[permalink] [raw]
Subject: Re: [Rt2400-devel] rt73usb: support for wireless in Kohjinsha subnotebook

Hi!

> > I did this on 2.6.23-rc8-mm1 kernel (The RT hack may not be
> > neccessary), but then it oopses somewhere in softmac layer. I'll try
> > to play with it some more.
> >
> > If you have any ideas, let me know.
> > Pavel
> >
> > --- clean-mm/drivers/net/wireless/rt2x00/rt73usb.c 2007-10-09 09:32:08.000000000 +0200
> > +++ linux-mm/drivers/net/wireless/rt2x00/rt73usb.c 2007-10-19 22:19:45.000000000 +0200
> > @@ -1580,7 +1580,6 @@
> >
> > if (!rt2x00_rev(&rt2x00dev->chip, 0x25730)) {
> > ERROR(rt2x00dev, "Invalid RT chipset detected.\n");
> > - return -ENODEV;
> > }
> >
> > if (!rt2x00_rf(&rt2x00dev->chip, RF5226) &&
> > @@ -1588,7 +1587,6 @@
> > !rt2x00_rf(&rt2x00dev->chip, RF5225) &&
> > !rt2x00_rf(&rt2x00dev->chip, RF2527)) {
> > ERROR(rt2x00dev, "Invalid RF chipset detected.\n");
> > - return -ENODEV;
> > }
>
> Both removals of -ENODEV are completely wrong. If the device does not pass the above
> 2 checks it is _not_ a rt73usb device. And forcing the driver to work with the device will
> result in all kinds of problems.

Of course they are :-).

> If rt2x00 is loaded and detected the device, it should print out a debug message that starts with:
> "Chipset detected - " What is in your case the complete line?

Ok, I guess I should include more complete debug output.

phy0 -> rt2x00usb_vendor_request: Error - Vendor Request 0x09 failed for offset 0x0000 with error -32
phy0 -> rt73usb_validate_eeprom: EEPROM recover - MAC: 66:76:2b:e8:68:e7
phy0 -> rt2x00usb_vendor_request: Error - Vendor Request 0x07 failed for offset 0x3000 with error -32
phy0 -> rt2x00_set_chip: Info - Chipset detected - rt: 1300, rf: 0000, rev: c03c0ae0
phy0 -> rt73usb_init_eeprom: Error - Invalid RF chipset detected

...so, I think hardware is indeed quite similar to what rt73usb driver
expects...?

Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

2007-10-21 09:21:54

by Pavel Machek

[permalink] [raw]
Subject: Re: [Rt2400-devel] rt73usb: support for wireless in Kohjinsha subnotebook

Hi!

> > Kohjinsha subnotebook seems to contain wifi with USB IDs 0x18e8,
> > 0x6206... I hope that to be compatible with
> > net/wireless/rt2x00/rt73usb.c .
>
> Is there any reason you assume it is a rt73usb device,
> or are you just making wild guesses about what the chipset is?

Wild guess. I've seen 18e8:6XXX being handled by rt73usb, so..

> > [Sidenote: could we add some real author info into rt73usb.c?]
>
> You mean expanding the project name to the full list of developers in
> the project? I don't see any need for that.

At least put name and email of lead developer there, or something.

I do not think "copyright sourceforge project" is okay thing to do --
unless the sf project legaly exists and you did some paperwork.
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

2007-10-21 11:31:29

by Ivo Van Doorn

[permalink] [raw]
Subject: Re: [Rt2400-devel] rt73usb: support for wireless in Kohjinsha subnotebook

On Sunday 21 October 2007, Pavel Machek wrote:
> Hi!
>
> > > Kohjinsha subnotebook seems to contain wifi with USB IDs 0x18e8,
> > > 0x6206... I hope that to be compatible with
> > > net/wireless/rt2x00/rt73usb.c .
> >
> > Is there any reason you assume it is a rt73usb device,
> > or are you just making wild guesses about what the chipset is?
>
> Wild guess. I've seen 18e8:6XXX being handled by rt73usb, so..

Thats an incorrect assumption. USB ID's listed in rt73usb don't even
guarentee that the device contains a rt73usb chipset since some manufacturers
produce cards with different chipsets while keeping the USB ID the same.
So the case that the card false in the 6xxx range says absolutely _nothing_.

Ivo

2007-10-21 11:38:22

by Ivo Van Doorn

[permalink] [raw]
Subject: Re: [Rt2400-devel] rt73usb: support for wireless in Kohjinsha subnotebook

Hi,

> > If rt2x00 is loaded and detected the device, it should print out a debug message that starts with:
> > "Chipset detected - " What is in your case the complete line?
>
> Ok, I guess I should include more complete debug output.
>
> phy0 -> rt2x00usb_vendor_request: Error - Vendor Request 0x09 failed for offset 0x0000 with error -32

- Vendor requests error with the -32 errors often indicate the incorrect device.

> phy0 -> rt73usb_validate_eeprom: EEPROM recover - MAC: 66:76:2b:e8:68:e7

- Incorrect MAC address read from the device. Another hint that the device is not rt73.

> phy0 -> rt2x00usb_vendor_request: Error - Vendor Request 0x07 failed for offset 0x3000 with error -32
> phy0 -> rt2x00_set_chip: Info - Chipset detected - rt: 1300, rf: 0000, rev: c03c0ae0

- A incorrect RF chipset. (valid values are: 1, 2, 3 or 4). Another indication of a incorrect device.
- A completely bogus chipset revision. A valid rt73 device has the revision "2573X" Where only the
X is a variable.

> phy0 -> rt73usb_init_eeprom: Error - Invalid RF chipset detected
>
> ...so, I think hardware is indeed quite similar to what rt73usb driver
> expects...?

No. You can assume you are forcing rt73 to control a non-rt73 device.
The fact that you had to hack to bypass the RT and RF chipset validation also confirms that,
those checks were there for a reason. Namely to make sure the corect driver was being used for the device.

Ivo

2007-10-21 11:38:34

by Pavel Machek

[permalink] [raw]
Subject: Re: [Rt2400-devel] rt73usb: support for wireless in Kohjinsha subnotebook

On Sun 2007-10-21 15:49:44, Ivo van Doorn wrote:
> On Sunday 21 October 2007, Pavel Machek wrote:
> > Hi!
> >
> > > > Kohjinsha subnotebook seems to contain wifi with USB IDs 0x18e8,
> > > > 0x6206... I hope that to be compatible with
> > > > net/wireless/rt2x00/rt73usb.c .
> > >
> > > Is there any reason you assume it is a rt73usb device,
> > > or are you just making wild guesses about what the chipset is?
> >
> > Wild guess. I've seen 18e8:6XXX being handled by rt73usb, so..
>
> Thats an incorrect assumption. USB ID's listed in rt73usb don't even
> guarentee that the device contains a rt73usb chipset since some manufacturers
> produce cards with different chipsets while keeping the USB ID the same.
> So the case that the card false in the 6xxx range says absolutely _nothing_.

Well, see the other mail, it seems like rt73usb partially communicates
with the card.

What info would be useful in determining what is this card similar to?
Boot windows and look for driver name?
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

2007-10-21 11:51:19

by Ivo Van Doorn

[permalink] [raw]
Subject: Re: [Rt2400-devel] rt73usb: support for wireless in Kohjinsha subnotebook

On Sunday 21 October 2007, Pavel Machek wrote:
> On Sun 2007-10-21 15:49:44, Ivo van Doorn wrote:
> > On Sunday 21 October 2007, Pavel Machek wrote:
> > > Hi!
> > >
> > > > > Kohjinsha subnotebook seems to contain wifi with USB IDs 0x18e8,
> > > > > 0x6206... I hope that to be compatible with
> > > > > net/wireless/rt2x00/rt73usb.c .
> > > >
> > > > Is there any reason you assume it is a rt73usb device,
> > > > or are you just making wild guesses about what the chipset is?
> > >
> > > Wild guess. I've seen 18e8:6XXX being handled by rt73usb, so..
> >
> > Thats an incorrect assumption. USB ID's listed in rt73usb don't even
> > guarentee that the device contains a rt73usb chipset since some manufacturers
> > produce cards with different chipsets while keeping the USB ID the same.
> > So the case that the card false in the 6xxx range says absolutely _nothing_.
>
> Well, see the other mail, it seems like rt73usb partially communicates
> with the card.

If you add a USB ID to the driver, then you are telling it to communciate to
the device. It doesn't suddenly make the driver compatible with the device.

> What info would be useful in determining what is this card similar to?
> Boot windows and look for driver name?

Looking at the name of the windows driver is indeed usually a good start,
but you don't need to boot to windows to check that. How about looking
at the driver name on the driver CD, or on the support website of the
manufacturer.

Ivo

2007-10-21 11:58:25

by Luis Correia

[permalink] [raw]
Subject: Re: [Rt2400-devel] rt73usb: support for wireless in Kohjinsha subnotebook

Hi

On 10/21/07, Ivo van Doorn <[email protected]> wrote:
> On Sunday 21 October 2007, Pavel Machek wrote:
> > On Sun 2007-10-21 15:49:44, Ivo van Doorn wrote:
> > > On Sunday 21 October 2007, Pavel Machek wrote:
> > > > Hi!
> > > >
> > > > > > Kohjinsha subnotebook seems to contain wifi with USB IDs 0x18e8,
> > > > > > 0x6206... I hope that to be compatible with
> > > > > > net/wireless/rt2x00/rt73usb.c .
> > > > >
> > > > > Is there any reason you assume it is a rt73usb device,
> > > > > or are you just making wild guesses about what the chipset is?
> > > >
> > > > Wild guess. I've seen 18e8:6XXX being handled by rt73usb, so..
> > >
> > > Thats an incorrect assumption. USB ID's listed in rt73usb don't even
> > > guarentee that the device contains a rt73usb chipset since some manufacturers
> > > produce cards with different chipsets while keeping the USB ID the same.
> > > So the case that the card false in the 6xxx range says absolutely _nothing_.
> >
> > Well, see the other mail, it seems like rt73usb partially communicates
> > with the card.
>
> If you add a USB ID to the driver, then you are telling it to communciate to
> the device. It doesn't suddenly make the driver compatible with the device.
>
> > What info would be useful in determining what is this card similar to?
> > Boot windows and look for driver name?
>
> Looking at the name of the windows driver is indeed usually a good start,
> but you don't need to boot to windows to check that. How about looking
> at the driver name on the driver CD, or on the support website of the
> manufacturer.

I'm currently going throught the manufacturer's website (in Japanese)
to try and figure out which wireless chipset it is.

Only one driver to go and I'm not even sure it is the wireless driver...

Luis Correia

2007-10-21 15:02:29

by Luis Correia

[permalink] [raw]
Subject: Re: rt73usb: support for wireless in Kohjinsha subnotebook

Hi

On 10/20/07, Pavel Machek <[email protected]> wrote:
> Hi!
>
> Kohjinsha subnotebook seems to contain wifi with USB IDs 0x18e8,
> 0x6206... I hope that to be compatible with
> net/wireless/rt2x00/rt73usb.c .
>
> [Sidenote: could we add some real author info into rt73usb.c?]
>
> I did this on 2.6.23-rc8-mm1 kernel (The RT hack may not be
> neccessary), but then it oopses somewhere in softmac layer. I'll try
> to play with it some more.
>
> If you have any ideas, let me know.
> Pavel
>
> --- clean-mm/drivers/net/wireless/rt2x00/rt73usb.c 2007-10-09 09:32:08.000000000 +0200
> +++ linux-mm/drivers/net/wireless/rt2x00/rt73usb.c 2007-10-19 22:19:45.000000000 +0200
> @@ -1580,7 +1580,6 @@
>
> if (!rt2x00_rev(&rt2x00dev->chip, 0x25730)) {
> ERROR(rt2x00dev, "Invalid RT chipset detected.\n");
> - return -ENODEV;
> }
>
> if (!rt2x00_rf(&rt2x00dev->chip, RF5226) &&
> @@ -1588,7 +1587,6 @@
> !rt2x00_rf(&rt2x00dev->chip, RF5225) &&
> !rt2x00_rf(&rt2x00dev->chip, RF2527)) {
> ERROR(rt2x00dev, "Invalid RF chipset detected.\n");
> - return -ENODEV;
> }
>
> /*
> @@ -2080,6 +2078,7 @@
> { USB_DEVICE(0x148f, 0x2671), USB_DEVICE_DATA(&rt73usb_ops) },
> /* Qcom */
> { USB_DEVICE(0x18e8, 0x6196), USB_DEVICE_DATA(&rt73usb_ops) },
> + { USB_DEVICE(0x18e8, 0x6206), USB_DEVICE_DATA(&rt73usb_ops) },
> { USB_DEVICE(0x18e8, 0x6229), USB_DEVICE_DATA(&rt73usb_ops) },
> { USB_DEVICE(0x18e8, 0x6238), USB_DEVICE_DATA(&rt73usb_ops) },
> /* Senao */
>
> --
> (english) http://www.livejournal.com/~pavelmachek
> (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
> -
> To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>

This device is NOT a Ralink USB wifi adapter!

Get the windows driver in this link and see for yourself.
http://www.conitech.it/conitech/ita/risorse.asp?cod=CN402USB
(ISSC W89C35 802.11bg WLAN USB Adapters (Native Wifi driver))

Case Closed.

Luis Correia
rt2x00 project administrator

2007-10-21 20:05:00

by Pavel Machek

[permalink] [raw]
Subject: ISSC W89C35 802.11bg (was Re: rt73usb: support for wireless in Kohjinsha subnotebook)

Hi!

> This device is NOT a Ralink USB wifi adapter!
>
> Get the windows driver in this link and see for yourself.
> http://www.conitech.it/conitech/ita/risorse.asp?cod=CN402USB
> (ISSC W89C35 802.11bg WLAN USB Adapters (Native Wifi driver))

You are right, sorry for confusion.

Now, the strange part comes. They have linux sources on their web
pages... for 2.6.9 and 2.6.11. If anyone ported them forward, please
let me know, otherwise I'll take a look at porting them.
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

2007-10-22 00:09:23

by Pavel Machek

[permalink] [raw]
Subject: Re: rt73usb: support for wireless in Kohjinsha subnotebook

Hi!

> This device is NOT a Ralink USB wifi adapter!
>
> Get the windows driver in this link and see for yourself.
> http://www.conitech.it/conitech/ita/risorse.asp?cod=CN402USB
> (ISSC W89C35 802.11bg WLAN USB Adapters (Native Wifi driver))

Thanks a lot. With some patches, I got driver from conitech.it to
compile and partly work on 2.6.23. I can now transmit packets but not
yet receive them.

(use Makefile.26 instead of Makefile)

Pavel

--- hal_142_o.ofic/linux/sysdef.h 2006-11-29 11:12:10.000000000 +0100
+++ hal_142_o/linux/sysdef.h 2007-10-21 22:21:13.000000000 +0200
@@ -7,7 +7,7 @@
// The definition WB_LINUX is a keyword for this OS
//=============================================================================
#define WB_LINUX
-#define WB_LINUX_WPA_PSK
+//#define WB_LINUX_WPA_PSK
//#define _WPA_PSK_DEBUG

//#define _IBSS_BEACON_SEQ_STICK_
Only in hal_142_o/linux: w35und.ko
Only in hal_142_o/linux: w35und.mod.c
--- hal_142_o.ofic/linux/wb35reg.c 2006-11-29 11:43:58.000000000 +0100
+++ hal_142_o/linux/wb35reg.c 2007-10-21 22:19:27.000000000 +0200
@@ -879,6 +879,7 @@
if( (pHwData->phy_type == RF_WB_242) ||
(pHwData->phy_type == RF_WB_242_1) ) // 20060619.5 Add
{
+ extern void phy_calibration_winbond(hw_data_t *phw_data, u32 frequency);
phy_calibration_winbond ( pHwData, 2412 ); // Sync operation
Wb35Reg_ReadSync( pHwData, 0x103c, &BB3c );
Wb35Reg_ReadSync( pHwData, 0x1054, &BB54 );
--- hal_142_o.ofic/linux/wbusb.c 2006-11-29 11:02:54.000000000 +0100
+++ hal_142_o/linux/wbusb.c 2007-10-21 22:16:19.000000000 +0200
@@ -28,7 +28,6 @@
};
#else
static struct usb_driver wb35_driver = {
- .owner = THIS_MODULE,
.name = "w35und",
.probe = wb35_probe,
.disconnect = wb35_disconnect,
--- hal_142_o.ofic/wblinux.c 2006-11-29 10:39:54.000000000 +0100
+++ hal_142_o/wblinux.c 2007-10-21 23:49:07.000000000 +0200
@@ -98,7 +98,8 @@
BufSize = pRxLayer1->BufferQueue[i].BufferSize;
BufAddr = pRxLayer1->BufferQueue[i].pBufferAddress;
//DataDmp(BufAddr, BufSize, 0);
- eth_copy_and_sum( skb, BufAddr, BufSize, 0 );
+ // eth_io_copy_and_sum( skb, BufAddr, BufSize, 0 );
+ skb_copy_from_linear_data(skb, BufAddr, BufSize);
skb_put( skb, BufSize );
}


I wonder if I got skb_copy right...?
Pavel

--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

2007-10-22 15:45:44

by Dan Williams

[permalink] [raw]
Subject: Re: rt73usb: support for wireless in Kohjinsha subnotebook

On Mon, 2007-10-22 at 02:09 +0200, Pavel Machek wrote:
> Hi!
>
> > This device is NOT a Ralink USB wifi adapter!
> >
> > Get the windows driver in this link and see for yourself.
> > http://www.conitech.it/conitech/ita/risorse.asp?cod=CN402USB
> > (ISSC W89C35 802.11bg WLAN USB Adapters (Native Wifi driver))
>
> Thanks a lot. With some patches, I got driver from conitech.it to
> compile and partly work on 2.6.23. I can now transmit packets but not
> yet receive them.
>
> (use Makefile.26 instead of Makefile)

I couldn't find any license info immediately visible; are you sure it's
GPL?

Dan

> Pavel
>
> --- hal_142_o.ofic/linux/sysdef.h 2006-11-29 11:12:10.000000000 +0100
> +++ hal_142_o/linux/sysdef.h 2007-10-21 22:21:13.000000000 +0200
> @@ -7,7 +7,7 @@
> // The definition WB_LINUX is a keyword for this OS
> //=============================================================================
> #define WB_LINUX
> -#define WB_LINUX_WPA_PSK
> +//#define WB_LINUX_WPA_PSK
> //#define _WPA_PSK_DEBUG
>
> //#define _IBSS_BEACON_SEQ_STICK_
> Only in hal_142_o/linux: w35und.ko
> Only in hal_142_o/linux: w35und.mod.c
> --- hal_142_o.ofic/linux/wb35reg.c 2006-11-29 11:43:58.000000000 +0100
> +++ hal_142_o/linux/wb35reg.c 2007-10-21 22:19:27.000000000 +0200
> @@ -879,6 +879,7 @@
> if( (pHwData->phy_type == RF_WB_242) ||
> (pHwData->phy_type == RF_WB_242_1) ) // 20060619.5 Add
> {
> + extern void phy_calibration_winbond(hw_data_t *phw_data, u32 frequency);
> phy_calibration_winbond ( pHwData, 2412 ); // Sync operation
> Wb35Reg_ReadSync( pHwData, 0x103c, &BB3c );
> Wb35Reg_ReadSync( pHwData, 0x1054, &BB54 );
> --- hal_142_o.ofic/linux/wbusb.c 2006-11-29 11:02:54.000000000 +0100
> +++ hal_142_o/linux/wbusb.c 2007-10-21 22:16:19.000000000 +0200
> @@ -28,7 +28,6 @@
> };
> #else
> static struct usb_driver wb35_driver = {
> - .owner = THIS_MODULE,
> .name = "w35und",
> .probe = wb35_probe,
> .disconnect = wb35_disconnect,
> --- hal_142_o.ofic/wblinux.c 2006-11-29 10:39:54.000000000 +0100
> +++ hal_142_o/wblinux.c 2007-10-21 23:49:07.000000000 +0200
> @@ -98,7 +98,8 @@
> BufSize = pRxLayer1->BufferQueue[i].BufferSize;
> BufAddr = pRxLayer1->BufferQueue[i].pBufferAddress;
> //DataDmp(BufAddr, BufSize, 0);
> - eth_copy_and_sum( skb, BufAddr, BufSize, 0 );
> + // eth_io_copy_and_sum( skb, BufAddr, BufSize, 0 );
> + skb_copy_from_linear_data(skb, BufAddr, BufSize);
> skb_put( skb, BufSize );
> }
>
>
> I wonder if I got skb_copy right...?
> Pavel
>

2007-10-22 21:13:27

by Pavel Machek

[permalink] [raw]
Subject: Re: rt73usb: support for wireless in Kohjinsha subnotebook

Hi!

> > > This device is NOT a Ralink USB wifi adapter!
> > >
> > > Get the windows driver in this link and see for yourself.
> > > http://www.conitech.it/conitech/ita/risorse.asp?cod=CN402USB
> > > (ISSC W89C35 802.11bg WLAN USB Adapters (Native Wifi driver))
> >
> > Thanks a lot. With some patches, I got driver from conitech.it to
> > compile and partly work on 2.6.23. I can now transmit packets but not
> > yet receive them.
> >
> > (use Makefile.26 instead of Makefile)
>
> I couldn't find any license info immediately visible; are you sure it's
> GPL?

Yes, I'm quite sure. There's MODULE_LICENCE("GPL"), IIRC.
Pavel

--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

2007-10-22 21:34:30

by Ivo Van Doorn

[permalink] [raw]
Subject: Re: rt73usb: support for wireless in Kohjinsha subnotebook

On Monday 22 October 2007, Pavel Machek wrote:
> Hi!
>
> > > > This device is NOT a Ralink USB wifi adapter!
> > > >
> > > > Get the windows driver in this link and see for yourself.
> > > > http://www.conitech.it/conitech/ita/risorse.asp?cod=CN402USB
> > > > (ISSC W89C35 802.11bg WLAN USB Adapters (Native Wifi driver))
> > >
> > > Thanks a lot. With some patches, I got driver from conitech.it to
> > > compile and partly work on 2.6.23. I can now transmit packets but not
> > > yet receive them.
> > >
> > > (use Makefile.26 instead of Makefile)
> >
> > I couldn't find any license info immediately visible; are you sure it's
> > GPL?
>
> Yes, I'm quite sure. There's MODULE_LICENCE("GPL"), IIRC.

That doesn't say much, some manufacturers add that line to their driver
just to prevent the module loader complaining about a non-GPL driver...

There should be a copyright notice or a license file accompanied with
the driver that clearly states the license of the driver.

Ivo

2007-10-22 21:42:55

by Daniel Hazelton

[permalink] [raw]
Subject: Re: rt73usb: support for wireless in Kohjinsha subnotebook

On Monday 22 October 2007 17:52:57 Ivo van Doorn wrote:
> On Monday 22 October 2007, Pavel Machek wrote:
> > Hi!
> >
> > > > > This device is NOT a Ralink USB wifi adapter!
> > > > >
> > > > > Get the windows driver in this link and see for yourself.
> > > > > http://www.conitech.it/conitech/ita/risorse.asp?cod=CN402USB
> > > > > (ISSC W89C35 802.11bg WLAN USB Adapters (Native Wifi driver))
> > > >
> > > > Thanks a lot. With some patches, I got driver from conitech.it to
> > > > compile and partly work on 2.6.23. I can now transmit packets but not
> > > > yet receive them.
> > > >
> > > > (use Makefile.26 instead of Makefile)
> > >
> > > I couldn't find any license info immediately visible; are you sure it's
> > > GPL?
> >
> > Yes, I'm quite sure. There's MODULE_LICENCE("GPL"), IIRC.
>
> That doesn't say much, some manufacturers add that line to their driver
> just to prevent the module loader complaining about a non-GPL driver...
>
> There should be a copyright notice or a license file accompanied with
> the driver that clearly states the license of the driver.

Lacking an explicitly stated license it can be argued that, since the
MODULE_LICENSE() macro is meant to define the actual license on the code,
this code is GPL. No, it isn't an explicit definition, but lacking any other
signs of the license, the implicit declaration of it being GPL is (or should
be) enough to deflect charges of copyright infringement.

DRH

--
Dialup is like pissing through a pipette. Slow and excruciatingly painful.

2007-10-22 22:00:08

by Pavel Machek

[permalink] [raw]
Subject: Re: rt73usb: support for wireless in Kohjinsha subnotebook

Hi!

> > > Yes, I'm quite sure. There's MODULE_LICENCE("GPL"), IIRC.
> >
> > That doesn't say much, some manufacturers add that line to their driver
> > just to prevent the module loader complaining about a non-GPL driver...
> >
> > There should be a copyright notice or a license file accompanied with
> > the driver that clearly states the license of the driver.
>
> Lacking an explicitly stated license it can be argued that, since the
> MODULE_LICENSE() macro is meant to define the actual license on the code,
> this code is GPL. No, it isn't an explicit definition, but lacking any other
> signs of the license, the implicit declaration of it being GPL is (or should
> be) enough to deflect charges of copyright infringement.

Yep, I believe this driver is GPLed. They published the source and
there's nothing to suggest otherwise, and there's explicit:

#define DRIVER_AUTHOR "Jeff Lee<[email protected]>"
#define DRIVER_DESC "IS89C35 802.11bg WLAN USB Driver"
MODULE_LICENSE("GPL");


Pavel

--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

2007-10-23 09:08:28

by Christoph Hellwig

[permalink] [raw]
Subject: Re: rt73usb: support for wireless in Kohjinsha subnotebook

On Tue, Oct 23, 2007 at 12:00:00AM +0200, Pavel Machek wrote:
> there's nothing to suggest otherwise, and there's explicit:
>
> #define DRIVER_AUTHOR "Jeff Lee<[email protected]>"
> #define DRIVER_DESC "IS89C35 802.11bg WLAN USB Driver"
> MODULE_LICENSE("GPL");

So what about contacting the vendor and asking?

2007-10-23 09:11:24

by Luis Correia

[permalink] [raw]
Subject: Re: rt73usb: support for wireless in Kohjinsha subnotebook

Hi!

On 10/23/07, Christoph Hellwig <[email protected]> wrote:
> On Tue, Oct 23, 2007 at 12:00:00AM +0200, Pavel Machek wrote:
> > there's nothing to suggest otherwise, and there's explicit:
> >
> > #define DRIVER_AUTHOR "Jeff Lee<[email protected]>"
> > #define DRIVER_DESC "IS89C35 802.11bg WLAN USB Driver"
> > MODULE_LICENSE("GPL");
>
> So what about contacting the vendor and asking?
>

this is no longer a rt2x00 issue, maybe we all could keep it away from
the rt2400-devel list?

thanks,
Luis Correia
rt2x00 project administrator

2007-10-23 14:06:16

by Dan Williams

[permalink] [raw]
Subject: Re: rt73usb: support for wireless in Kohjinsha subnotebook

On Tue, 2007-10-23 at 00:00 +0200, Pavel Machek wrote:
> Hi!
>
> > > > Yes, I'm quite sure. There's MODULE_LICENCE("GPL"), IIRC.
> > >
> > > That doesn't say much, some manufacturers add that line to their driver
> > > just to prevent the module loader complaining about a non-GPL driver...
> > >
> > > There should be a copyright notice or a license file accompanied with
> > > the driver that clearly states the license of the driver.
> >
> > Lacking an explicitly stated license it can be argued that, since the
> > MODULE_LICENSE() macro is meant to define the actual license on the code,
> > this code is GPL. No, it isn't an explicit definition, but lacking any other
> > signs of the license, the implicit declaration of it being GPL is (or should
> > be) enough to deflect charges of copyright infringement.
>
> Yep, I believe this driver is GPLed. They published the source and
> there's nothing to suggest otherwise, and there's explicit:
>
> #define DRIVER_AUTHOR "Jeff Lee<[email protected]>"
> #define DRIVER_DESC "IS89C35 802.11bg WLAN USB Driver"
> MODULE_LICENSE("GPL");

If there isn't an explicit COPYING or LICENSE file or something
distributed with the driver, and if there aren't copyright/license
headers at the top of the files in question, I have a hard time agreeing
that MODULE_LICENSE("GPL") _definitely_ means that the author has GPL-ed
the driver intentionally. Of course that's the way it's supposed to
work, but to me this doesn't pass sufficient muster to be definitely
called GPL without additional clarification.

Dan


2007-10-23 16:17:19

by Arjan van de Ven

[permalink] [raw]
Subject: Re: rt73usb: support for wireless in Kohjinsha subnotebook

On Mon, 22 Oct 2007 23:52:57 +0200
Ivo van Doorn <[email protected]> wrote:

> On Monday 22 October 2007, Pavel Machek wrote:
> > Hi!
> >
> > > > > This device is NOT a Ralink USB wifi adapter!
> > > > >
> > > > > Get the windows driver in this link and see for yourself.
> > > > > http://www.conitech.it/conitech/ita/risorse.asp?cod=CN402USB
> > > > > (ISSC W89C35 802.11bg WLAN USB Adapters (Native Wifi driver))
> > > >
> > > > Thanks a lot. With some patches, I got driver from conitech.it
> > > > to compile and partly work on 2.6.23. I can now transmit
> > > > packets but not yet receive them.
> > > >
> > > > (use Makefile.26 instead of Makefile)
> > >
> > > I couldn't find any license info immediately visible; are you
> > > sure it's GPL?
> >
> > Yes, I'm quite sure. There's MODULE_LICENCE("GPL"), IIRC.
>
> That doesn't say much, some manufacturers add that line to their
> driver just to prevent the module loader complaining about a non-GPL
> driver...

no they don't.. nobody is that stupid.

2007-10-23 17:09:59

by Daniel Hazelton

[permalink] [raw]
Subject: Re: rt73usb: support for wireless in Kohjinsha subnotebook

On Tuesday 23 October 2007 10:05:12 Dan Williams wrote:
> On Tue, 2007-10-23 at 00:00 +0200, Pavel Machek wrote:
> > Hi!
> >
> > > > > Yes, I'm quite sure. There's MODULE_LICENCE("GPL"), IIRC.
> > > >
> > > > That doesn't say much, some manufacturers add that line to their
> > > > driver just to prevent the module loader complaining about a non-GPL
> > > > driver...
> > > >
> > > > There should be a copyright notice or a license file accompanied with
> > > > the driver that clearly states the license of the driver.
> > >
> > > Lacking an explicitly stated license it can be argued that, since the
> > > MODULE_LICENSE() macro is meant to define the actual license on the
> > > code, this code is GPL. No, it isn't an explicit definition, but
> > > lacking any other signs of the license, the implicit declaration of it
> > > being GPL is (or should be) enough to deflect charges of copyright
> > > infringement.
> >
> > Yep, I believe this driver is GPLed. They published the source and
> > there's nothing to suggest otherwise, and there's explicit:
> >
> > #define DRIVER_AUTHOR "Jeff Lee<[email protected]>"
> > #define DRIVER_DESC "IS89C35 802.11bg WLAN
> > USB Driver" MODULE_LICENSE("GPL");
>
> If there isn't an explicit COPYING or LICENSE file or something
> distributed with the driver, and if there aren't copyright/license
> headers at the top of the files in question, I have a hard time agreeing
> that MODULE_LICENSE("GPL") _definitely_ means that the author has GPL-ed
> the driver intentionally. Of course that's the way it's supposed to
> work, but to me this doesn't pass sufficient muster to be definitely
> called GPL without additional clarification.
>
> Dan

Lacking any other indication MODULE_LICENSE is supposed to mark the license
that the code is being distributed under. If companies are intentionally
mis-using this to get around the "internal interfaces" limitations (where
some interfaces are not available unless the module is GPL'd) and the warning
message printed in the logs when the module is not GPL'd then they are
(technically) in violation of the law. (interfaces that are GPL only are
considered so internal to the kernel that using them makes your code GPL
because of the inclusion of GPL'd code. And no - I am not going to get into
that discussion - it's pointless)

In the end, using MODULE_LICENSE for any purpose other than declaring the
chosen license for the code is deceptive. So it is easily arguable that by
not including any license with the code other than the MODULE_LICENSE
statement and then trying to prosecute because MODULE_LICENSE doesn't
accurately state the license on the code is entrapment and illegal.

DRH

--
Dialup is like pissing through a pipette. Slow and excruciatingly painful.

2007-10-23 18:55:58

by Dan Williams

[permalink] [raw]
Subject: Re: rt73usb: support for wireless in Kohjinsha subnotebook

On Tue, 2007-10-23 at 13:07 -0400, Daniel Hazelton wrote:
> On Tuesday 23 October 2007 10:05:12 Dan Williams wrote:
> > On Tue, 2007-10-23 at 00:00 +0200, Pavel Machek wrote:
> > > Hi!
> > >
> > > > > > Yes, I'm quite sure. There's MODULE_LICENCE("GPL"), IIRC.
> > > > >
> > > > > That doesn't say much, some manufacturers add that line to their
> > > > > driver just to prevent the module loader complaining about a non-GPL
> > > > > driver...
> > > > >
> > > > > There should be a copyright notice or a license file accompanied with
> > > > > the driver that clearly states the license of the driver.
> > > >
> > > > Lacking an explicitly stated license it can be argued that, since the
> > > > MODULE_LICENSE() macro is meant to define the actual license on the
> > > > code, this code is GPL. No, it isn't an explicit definition, but
> > > > lacking any other signs of the license, the implicit declaration of it
> > > > being GPL is (or should be) enough to deflect charges of copyright
> > > > infringement.
> > >
> > > Yep, I believe this driver is GPLed. They published the source and
> > > there's nothing to suggest otherwise, and there's explicit:
> > >
> > > #define DRIVER_AUTHOR "Jeff Lee<[email protected]>"
> > > #define DRIVER_DESC "IS89C35 802.11bg WLAN
> > > USB Driver" MODULE_LICENSE("GPL");
> >
> > If there isn't an explicit COPYING or LICENSE file or something
> > distributed with the driver, and if there aren't copyright/license
> > headers at the top of the files in question, I have a hard time agreeing
> > that MODULE_LICENSE("GPL") _definitely_ means that the author has GPL-ed
> > the driver intentionally. Of course that's the way it's supposed to
> > work, but to me this doesn't pass sufficient muster to be definitely
> > called GPL without additional clarification.
> >
> > Dan
>
> Lacking any other indication MODULE_LICENSE is supposed to mark the license
> that the code is being distributed under. If companies are intentionally

Step 1: Ask the author.

Step 2: if the author doesn't reply, then we can have this discussion

MODULE_LICENSE is just a random string that could have been added by
anybody, not necessarily the author. Unless you can determine the
intent of the author explicitly, a single MODULE_LICENSE is not
sufficient to concretely determine the license of the code. It's only
in one file. There is nothing to explicitly state the overall license
of the whole work unless each file has a header referring to the license
or unless there is a license document distributed with the code as a
whole.

In the absence of any other indication, MODULE_LICENSE doesn't not
concretely determine the license of the code. You can assume it does,
but that's your gun to put to your own head.

> mis-using this to get around the "internal interfaces" limitations (where
> some interfaces are not available unless the module is GPL'd) and the warning
> message printed in the logs when the module is not GPL'd then they are
> (technically) in violation of the law. (interfaces that are GPL only are
> considered so internal to the kernel that using them makes your code GPL
> because of the inclusion of GPL'd code. And no - I am not going to get into
> that discussion - it's pointless)

Just because the module may be loading illegally says _nothing_ about
the license of the code.

> In the end, using MODULE_LICENSE for any purpose other than declaring the
> chosen license for the code is deceptive. So it is easily arguable that by

"deceptive" is also not "this code code is definitely GPL". Doesn't
matter whether it's deceptive or not. We do not know that the code is
GPL.

> not including any license with the code other than the MODULE_LICENSE
> statement and then trying to prosecute because MODULE_LICENSE doesn't
> accurately state the license on the code is entrapment and illegal.

Arguable doesn't mean that it's concrete enough to pass legal muster. I
am not a lawyer, but this just doesn't pass the bar.

Dan


2007-10-23 19:42:13

by Daniel Hazelton

[permalink] [raw]
Subject: Re: rt73usb: support for wireless in Kohjinsha subnotebook

On Tuesday 23 October 2007 14:54:54 Dan Williams wrote:
> On Tue, 2007-10-23 at 13:07 -0400, Daniel Hazelton wrote:
> > On Tuesday 23 October 2007 10:05:12 Dan Williams wrote:
> > > On Tue, 2007-10-23 at 00:00 +0200, Pavel Machek wrote:
> > > > Hi!
> > > >
> > > > > > > Yes, I'm quite sure. There's MODULE_LICENCE("GPL"), IIRC.
> > > > > >
> > > > > > That doesn't say much, some manufacturers add that line to their
> > > > > > driver just to prevent the module loader complaining about a
> > > > > > non-GPL driver...
> > > > > >
> > > > > > There should be a copyright notice or a license file accompanied
> > > > > > with the driver that clearly states the license of the driver.
> > > > >
> > > > > Lacking an explicitly stated license it can be argued that, since
> > > > > the MODULE_LICENSE() macro is meant to define the actual license on
> > > > > the code, this code is GPL. No, it isn't an explicit definition,
> > > > > but lacking any other signs of the license, the implicit
> > > > > declaration of it being GPL is (or should be) enough to deflect
> > > > > charges of copyright infringement.
> > > >
> > > > Yep, I believe this driver is GPLed. They published the source and
> > > > there's nothing to suggest otherwise, and there's explicit:
> > > >
> > > > #define DRIVER_AUTHOR "Jeff
> > > > Lee<[email protected]>" #define DRIVER_DESC
> > > > "IS89C35 802.11bg WLAN USB Driver" MODULE_LICENSE("GPL");
> > >
> > > If there isn't an explicit COPYING or LICENSE file or something
> > > distributed with the driver, and if there aren't copyright/license
> > > headers at the top of the files in question, I have a hard time
> > > agreeing that MODULE_LICENSE("GPL") _definitely_ means that the author
> > > has GPL-ed the driver intentionally. Of course that's the way it's
> > > supposed to work, but to me this doesn't pass sufficient muster to be
> > > definitely called GPL without additional clarification.
> > >
> > > Dan
> >
> > Lacking any other indication MODULE_LICENSE is supposed to mark the
> > license that the code is being distributed under. If companies are
> > intentionally
>
> Step 1: Ask the author.

Agreed. This should have been done before this discussion even started.

> Step 2: if the author doesn't reply, then we can have this discussion
>
> MODULE_LICENSE is just a random string that could have been added by
> anybody, not necessarily the author. Unless you can determine the
> intent of the author explicitly, a single MODULE_LICENSE is not
> sufficient to concretely determine the license of the code. It's only
> in one file. There is nothing to explicitly state the overall license
> of the whole work unless each file has a header referring to the license
> or unless there is a license document distributed with the code as a
> whole.
>
> In the absence of any other indication, MODULE_LICENSE doesn't not
> concretely determine the license of the code. You can assume it does,
> but that's your gun to put to your own head.

The intent of MODULE_LICENSE is to mark the license on the code. This is
clearly stated in several places in Documentation/ (if my memory serves).

> > mis-using this to get around the "internal interfaces" limitations (where
> > some interfaces are not available unless the module is GPL'd) and the
> > warning message printed in the logs when the module is not GPL'd then
> > they are (technically) in violation of the law. (interfaces that are GPL
> > only are considered so internal to the kernel that using them makes your
> > code GPL because of the inclusion of GPL'd code. And no - I am not going
> > to get into that discussion - it's pointless)
>
> Just because the module may be loading illegally says _nothing_ about
> the license of the code.

No, but it is a mis-use of MODULE_LICENSE, which is supposed to state the
correct license on the code.

> > In the end, using MODULE_LICENSE for any purpose other than declaring the
> > chosen license for the code is deceptive. So it is easily arguable that
> > by
>
> "deceptive" is also not "this code code is definitely GPL". Doesn't
> matter whether it's deceptive or not. We do not know that the code is
> GPL.

Deception in order to create a situation whereby you can prosecute people for
violation of the law is illegal. Therefore not distributing the code with any
indication as to the license other than MODULE_LICENSE and attempting to
prosecute afterwards is illegal. QED: even if the code is not GPL'd (and such
could be learned by contacting the author), the fact that it ships without
any indication of the license other than MODULE_LICENSE implies that the
license is what is stated and prosecution on the grounds that it isn't
becomes entrapment.

> > not including any license with the code other than the MODULE_LICENSE
> > statement and then trying to prosecute because MODULE_LICENSE doesn't
> > accurately state the license on the code is entrapment and illegal.
>
> Arguable doesn't mean that it's concrete enough to pass legal muster. I
> am not a lawyer, but this just doesn't pass the bar.

I know several and have asked one that is a very good friend. He agreed with
my interpretation of the presented facts - that since the only indication of
what the license on the code might be is MODULE_LICENSE it can be safely
assumed that the license is what that states. Any attempt to later prosecute
because the license is not what is stated would constitute entrapment - which
is illegal.

DRH

PS: note that all legal information contained here-in is only known to be
valid in the US.

--
Dialup is like pissing through a pipette. Slow and excruciatingly painful.

2007-10-23 21:28:17

by Dan Williams

[permalink] [raw]
Subject: Re: rt73usb: support for wireless in Kohjinsha subnotebook

On Tue, 2007-10-23 at 15:41 -0400, Daniel Hazelton wrote:
> On Tuesday 23 October 2007 14:54:54 Dan Williams wrote:
> > On Tue, 2007-10-23 at 13:07 -0400, Daniel Hazelton wrote:
> > > On Tuesday 23 October 2007 10:05:12 Dan Williams wrote:
> > > > On Tue, 2007-10-23 at 00:00 +0200, Pavel Machek wrote:
> > > > > Hi!
> > > > >
> > > > > > > > Yes, I'm quite sure. There's MODULE_LICENCE("GPL"), IIRC.
> > > > > > >
> > > > > > > That doesn't say much, some manufacturers add that line to their
> > > > > > > driver just to prevent the module loader complaining about a
> > > > > > > non-GPL driver...
> > > > > > >
> > > > > > > There should be a copyright notice or a license file accompanied
> > > > > > > with the driver that clearly states the license of the driver.
> > > > > >
> > > > > > Lacking an explicitly stated license it can be argued that, since
> > > > > > the MODULE_LICENSE() macro is meant to define the actual license on
> > > > > > the code, this code is GPL. No, it isn't an explicit definition,
> > > > > > but lacking any other signs of the license, the implicit
> > > > > > declaration of it being GPL is (or should be) enough to deflect
> > > > > > charges of copyright infringement.
> > > > >
> > > > > Yep, I believe this driver is GPLed. They published the source and
> > > > > there's nothing to suggest otherwise, and there's explicit:
> > > > >
> > > > > #define DRIVER_AUTHOR "Jeff
> > > > > Lee<[email protected]>" #define DRIVER_DESC
> > > > > "IS89C35 802.11bg WLAN USB Driver" MODULE_LICENSE("GPL");
> > > >
> > > > If there isn't an explicit COPYING or LICENSE file or something
> > > > distributed with the driver, and if there aren't copyright/license
> > > > headers at the top of the files in question, I have a hard time
> > > > agreeing that MODULE_LICENSE("GPL") _definitely_ means that the author
> > > > has GPL-ed the driver intentionally. Of course that's the way it's
> > > > supposed to work, but to me this doesn't pass sufficient muster to be
> > > > definitely called GPL without additional clarification.
> > > >
> > > > Dan
> > >
> > > Lacking any other indication MODULE_LICENSE is supposed to mark the
> > > license that the code is being distributed under. If companies are
> > > intentionally
> >
> > Step 1: Ask the author.
>
> Agreed. This should have been done before this discussion even started.
>
> > Step 2: if the author doesn't reply, then we can have this discussion
> >
> > MODULE_LICENSE is just a random string that could have been added by
> > anybody, not necessarily the author. Unless you can determine the
> > intent of the author explicitly, a single MODULE_LICENSE is not
> > sufficient to concretely determine the license of the code. It's only
> > in one file. There is nothing to explicitly state the overall license
> > of the whole work unless each file has a header referring to the license
> > or unless there is a license document distributed with the code as a
> > whole.
> >
> > In the absence of any other indication, MODULE_LICENSE doesn't not
> > concretely determine the license of the code. You can assume it does,
> > but that's your gun to put to your own head.
>
> The intent of MODULE_LICENSE is to mark the license on the code. This is
> clearly stated in several places in Documentation/ (if my memory serves).
>
> > > mis-using this to get around the "internal interfaces" limitations (where
> > > some interfaces are not available unless the module is GPL'd) and the
> > > warning message printed in the logs when the module is not GPL'd then
> > > they are (technically) in violation of the law. (interfaces that are GPL
> > > only are considered so internal to the kernel that using them makes your
> > > code GPL because of the inclusion of GPL'd code. And no - I am not going
> > > to get into that discussion - it's pointless)
> >
> > Just because the module may be loading illegally says _nothing_ about
> > the license of the code.
>
> No, but it is a mis-use of MODULE_LICENSE, which is supposed to state the
> correct license on the code.
>
> > > In the end, using MODULE_LICENSE for any purpose other than declaring the
> > > chosen license for the code is deceptive. So it is easily arguable that
> > > by
> >
> > "deceptive" is also not "this code code is definitely GPL". Doesn't
> > matter whether it's deceptive or not. We do not know that the code is
> > GPL.
>
> Deception in order to create a situation whereby you can prosecute people for
> violation of the law is illegal. Therefore not distributing the code with any
> indication as to the license other than MODULE_LICENSE and attempting to
> prosecute afterwards is illegal. QED: even if the code is not GPL'd (and such
> could be learned by contacting the author), the fact that it ships without
> any indication of the license other than MODULE_LICENSE implies that the
> license is what is stated and prosecution on the grounds that it isn't
> becomes entrapment.
>
> > > not including any license with the code other than the MODULE_LICENSE
> > > statement and then trying to prosecute because MODULE_LICENSE doesn't
> > > accurately state the license on the code is entrapment and illegal.
> >
> > Arguable doesn't mean that it's concrete enough to pass legal muster. I
> > am not a lawyer, but this just doesn't pass the bar.
>
> I know several and have asked one that is a very good friend. He agreed with
> my interpretation of the presented facts - that since the only indication of
> what the license on the code might be is MODULE_LICENSE it can be safely
> assumed that the license is what that states. Any attempt to later prosecute
> because the license is not what is stated would constitute entrapment - which
> is illegal.

I asked Tom Callaway, who heads up all the legal/licensing issues for
Fedora. He said essentially "it won't be in Fedora" on just the basis
of MODULE_LICENSE. I can run it past Red Hat lawyers too. It's just
not clear with only MODULE_LICENSE, and not clear pretty much means
Don't Touch until it becomes clear.

Dan

> DRH
>
> PS: note that all legal information contained here-in is only known to be
> valid in the US.
>

2007-10-23 22:19:30

by Daniel Hazelton

[permalink] [raw]
Subject: Re: rt73usb: support for wireless in Kohjinsha subnotebook

On Tuesday 23 October 2007 17:27:07 Dan Williams wrote:
> On Tue, 2007-10-23 at 15:41 -0400, Daniel Hazelton wrote:
> > On Tuesday 23 October 2007 14:54:54 Dan Williams wrote:
> > > On Tue, 2007-10-23 at 13:07 -0400, Daniel Hazelton wrote:
> > > > On Tuesday 23 October 2007 10:05:12 Dan Williams wrote:
> > > > > On Tue, 2007-10-23 at 00:00 +0200, Pavel Machek wrote:
> > > > > > Hi!
> > > > > >
> > > > > > > > > Yes, I'm quite sure. There's MODULE_LICENCE("GPL"), IIRC.
> > > > > > > >
> > > > > > > > That doesn't say much, some manufacturers add that line to
> > > > > > > > their driver just to prevent the module loader complaining
> > > > > > > > about a non-GPL driver...
> > > > > > > >
> > > > > > > > There should be a copyright notice or a license file
> > > > > > > > accompanied with the driver that clearly states the license
> > > > > > > > of the driver.
> > > > > > >
> > > > > > > Lacking an explicitly stated license it can be argued that,
> > > > > > > since the MODULE_LICENSE() macro is meant to define the actual
> > > > > > > license on the code, this code is GPL. No, it isn't an explicit
> > > > > > > definition, but lacking any other signs of the license, the
> > > > > > > implicit declaration of it being GPL is (or should be) enough
> > > > > > > to deflect charges of copyright infringement.
> > > > > >
> > > > > > Yep, I believe this driver is GPLed. They published the source
> > > > > > and there's nothing to suggest otherwise, and there's explicit:
> > > > > >
> > > > > > #define DRIVER_AUTHOR "Jeff
> > > > > > Lee<[email protected]>" #define DRIVER_DESC
> > > > > > "IS89C35 802.11bg WLAN USB Driver" MODULE_LICENSE("GPL");
> > > > >
> > > > > If there isn't an explicit COPYING or LICENSE file or something
> > > > > distributed with the driver, and if there aren't copyright/license
> > > > > headers at the top of the files in question, I have a hard time
> > > > > agreeing that MODULE_LICENSE("GPL") _definitely_ means that the
> > > > > author has GPL-ed the driver intentionally. Of course that's the
> > > > > way it's supposed to work, but to me this doesn't pass sufficient
> > > > > muster to be definitely called GPL without additional
> > > > > clarification.
> > > > >
> > > > > Dan
> > > >
> > > > Lacking any other indication MODULE_LICENSE is supposed to mark the
> > > > license that the code is being distributed under. If companies are
> > > > intentionally
> > >
> > > Step 1: Ask the author.
> >
> > Agreed. This should have been done before this discussion even started.
> >
> > > Step 2: if the author doesn't reply, then we can have this discussion
> > >
> > > MODULE_LICENSE is just a random string that could have been added by
> > > anybody, not necessarily the author. Unless you can determine the
> > > intent of the author explicitly, a single MODULE_LICENSE is not
> > > sufficient to concretely determine the license of the code. It's only
> > > in one file. There is nothing to explicitly state the overall license
> > > of the whole work unless each file has a header referring to the
> > > license or unless there is a license document distributed with the code
> > > as a whole.
> > >
> > > In the absence of any other indication, MODULE_LICENSE doesn't not
> > > concretely determine the license of the code. You can assume it does,
> > > but that's your gun to put to your own head.
> >
> > The intent of MODULE_LICENSE is to mark the license on the code. This is
> > clearly stated in several places in Documentation/ (if my memory serves).
> >
> > > > mis-using this to get around the "internal interfaces" limitations
> > > > (where some interfaces are not available unless the module is GPL'd)
> > > > and the warning message printed in the logs when the module is not
> > > > GPL'd then they are (technically) in violation of the law.
> > > > (interfaces that are GPL only are considered so internal to the
> > > > kernel that using them makes your code GPL because of the inclusion
> > > > of GPL'd code. And no - I am not going to get into that discussion -
> > > > it's pointless)
> > >
> > > Just because the module may be loading illegally says _nothing_ about
> > > the license of the code.
> >
> > No, but it is a mis-use of MODULE_LICENSE, which is supposed to state the
> > correct license on the code.
> >
> > > > In the end, using MODULE_LICENSE for any purpose other than declaring
> > > > the chosen license for the code is deceptive. So it is easily
> > > > arguable that by
> > >
> > > "deceptive" is also not "this code code is definitely GPL". Doesn't
> > > matter whether it's deceptive or not. We do not know that the code is
> > > GPL.
> >
> > Deception in order to create a situation whereby you can prosecute people
> > for violation of the law is illegal. Therefore not distributing the code
> > with any indication as to the license other than MODULE_LICENSE and
> > attempting to prosecute afterwards is illegal. QED: even if the code is
> > not GPL'd (and such could be learned by contacting the author), the fact
> > that it ships without any indication of the license other than
> > MODULE_LICENSE implies that the license is what is stated and prosecution
> > on the grounds that it isn't becomes entrapment.
> >
> > > > not including any license with the code other than the MODULE_LICENSE
> > > > statement and then trying to prosecute because MODULE_LICENSE doesn't
> > > > accurately state the license on the code is entrapment and illegal.
> > >
> > > Arguable doesn't mean that it's concrete enough to pass legal muster.
> > > I am not a lawyer, but this just doesn't pass the bar.
> >
> > I know several and have asked one that is a very good friend. He agreed
> > with my interpretation of the presented facts - that since the only
> > indication of what the license on the code might be is MODULE_LICENSE it
> > can be safely assumed that the license is what that states. Any attempt
> > to later prosecute because the license is not what is stated would
> > constitute entrapment - which is illegal.
>
> I asked Tom Callaway, who heads up all the legal/licensing issues for
> Fedora. He said essentially "it won't be in Fedora" on just the basis
> of MODULE_LICENSE. I can run it past Red Hat lawyers too. It's just
> not clear with only MODULE_LICENSE, and not clear pretty much means
> Don't Touch until it becomes clear.

I have to agree with this. There are better ways to determine the license -
including contacting the author. However, in the lack of any other source of
information about the license MODULE_LICENSE can be used as a (somewhat)
defensible position. It'd cost a lot of money and be a very hard fight,
though - which is one reason why no company would (or should) take the
chance. Nor should any person, unless they happen to have the money to fight
the battle.

DRH

>
> Dan
>
> > DRH
> >
> > PS: note that all legal information contained here-in is only known to be
> > valid in the US.



--
Dialup is like pissing through a pipette. Slow and excruciatingly painful.

2007-10-30 11:22:19

by Pavel Machek

[permalink] [raw]
Subject: Licensing of IS89C35 WLAN USB driver [was Re: rt73usb: support for wireless in Kohjinsha subnotebook]

Hi!

You are listed as author of IS89C35 802.11bg WLAN USB Driver. That
driver has clear MODULE_LICENSE("GPL") tag, but not other notices.

Is it safe to assume whole sources are to be distributed under GPLv2?
(Or is it GPLv2 or later?)
Pavel

> > there's nothing to suggest otherwise, and there's explicit:
> >
> > #define DRIVER_AUTHOR "Jeff Lee<[email protected]>"
> > #define DRIVER_DESC "IS89C35 802.11bg WLAN USB Driver"
> > MODULE_LICENSE("GPL");
>
> So what about contacting the vendor and asking?

--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

2007-10-30 15:14:19

by Dan Williams

[permalink] [raw]
Subject: Re: Licensing of IS89C35 WLAN USB driver [was Re: rt73usb: support for wireless in Kohjinsha subnotebook]

On Tue, 2007-10-30 at 12:22 +0100, Pavel Machek wrote:
> Hi!
>
> You are listed as author of IS89C35 802.11bg WLAN USB Driver. That
> driver has clear MODULE_LICENSE("GPL") tag, but not other notices.
>
> Is it safe to assume whole sources are to be distributed under GPLv2?
> (Or is it GPLv2 or later?)

Pavel,

I sent mail as you requested on Sunday to Jeff Lee but haven't heard
back yet. I can't find any generic contact email addresses for ISSC
Taiwan or the Italian company that produced the adapter in question,
unfortunately.

Dan

> Pavel
>
> > > there's nothing to suggest otherwise, and there's explicit:
> > >
> > > #define DRIVER_AUTHOR "Jeff Lee<[email protected]>"
> > > #define DRIVER_DESC "IS89C35 802.11bg WLAN USB Driver"
> > > MODULE_LICENSE("GPL");
> >
> > So what about contacting the vendor and asking?
>

2007-10-31 00:25:23

by Pavel Machek

[permalink] [raw]
Subject: Re: Licensing of IS89C35 WLAN USB driver [was Re: rt73usb: support for wireless in Kohjinsha subnotebook]

Hi!

> > You are listed as author of IS89C35 802.11bg WLAN USB Driver. That
> > driver has clear MODULE_LICENSE("GPL") tag, but not other notices.
> >
> > Is it safe to assume whole sources are to be distributed under GPLv2?
> > (Or is it GPLv2 or later?)
>
> Pavel,
>
> I sent mail as you requested on Sunday to Jeff Lee but haven't heard
> back yet.

Oops, sorry for confusion.

> I can't find any generic contact email addresses for ISSC
> Taiwan or the Italian company that produced the adapter in question,
> unfortunately.

http://www.issc.com.tw/contact.htm seems to be web based form. I
clicked something into it, lets see what happens.

(They ask for details like my fax number/phone number, and they can't
even spell :-().
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

2007-11-04 19:00:14

by Pavel Machek

[permalink] [raw]
Subject: Re: Licensing of IS89C35 WLAN USB driver [was Re: rt73usb: support for wireless in Kohjinsha subnotebook]

On Tue 2007-10-30 11:11:59, Dan Williams wrote:
> On Tue, 2007-10-30 at 12:22 +0100, Pavel Machek wrote:
> > Hi!
> >
> > You are listed as author of IS89C35 802.11bg WLAN USB Driver. That
> > driver has clear MODULE_LICENSE("GPL") tag, but not other notices.
> >
> > Is it safe to assume whole sources are to be distributed under GPLv2?
> > (Or is it GPLv2 or later?)
>
> Pavel,
>
> I sent mail as you requested on Sunday to Jeff Lee but haven't heard
> back yet. I can't find any generic contact email addresses for ISSC
> Taiwan or the Italian company that produced the adapter in question,
> unfortunately.

Okay, I posted note to my blog, perhaps someone speaks up.
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html