public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* Re: Summarizing the PWC driver questions/answers
@ 2004-08-27 19:54 Kenneth Lavrsen
  2004-08-27 20:14 ` [linux-usb-devel] " David Brownell
                   ` (5 more replies)
  0 siblings, 6 replies; 30+ messages in thread
From: Kenneth Lavrsen @ 2004-08-27 19:54 UTC (permalink / raw)
  To: Greg KH, linux-kernel, linux-usb-devel

At 18:26 2004-08-27, you wrote:

>First off, here's Nemosoft's big post about the driver, please read that
>first, and the responses to that thread:
>http://thread.gmane.org/gmane.linux.usb.devel/26310

Reading the thread (which I already did) shows even more clearly that what 
you did is wrong.
The hook and the functionality of pwc/pwcx has been in the kernel for years.
People like myself have invested quite much money on cameras - assuming 
that no evil person would remove the support of an existing hardware from 
the Linux kernel once the support had been added.
What you did is WRONG. You may have the rights to do it. But it is WRONG. 
Once the support has been added it is wrong to remove it without replacing 
it with something else.

>And here's Linus's response after I removed the driver, when Nemosoft
>asked me to:
>http://thread.gmane.org/gmane.linux.kernel/229968

I wonder if Linus is aware of the entire story or he only heard your part 
of it.
And Linus. If you still support this.. I would very much like you to answer 
me - and the 10000s of other people that spent money on a piece of hardware 
that we had every reason to believe would continue to be supported by Linux 
- these questions.

- What is your excuse for forcing us to throw away worth 2000 dollars of 
cameras?
- How do you feel about the many others that are in the same situation?
- What is the next hardware or software - currently supported by Linux - 
that you will allow being made impossible to use for whatever fanatic 
reasons? (This is not exactly like the principles you stated in your book).
- Do you actually care about the many people that uses Linux?
- Do you actually care about people? If yes. Why do you allow this to happen?
- How will this behavour bring Linux to the desktops?


>Q: Why did you remove the hook from the pwc driver?
>A: It was there for the explicit purpose to support a binary only
>    module.  That goes against the kernel's documented procedures, so I
>    had to take it out.

You did not HAVE TO remove the hook. It had been there for years. You could 
have worked out an alternative way nice and quietly with the module developer.
If someone came with a new driver it was something else because no-one 
would be depending on it.

>Q: That hook had been in there for years!  Why did you suddenly decide
>    to remove it now?
>A: I was really not aware of the hook, and the fact that it was only
>    good for a binary module to use.  I'm sorry, I should have realized
>    this years ago, but I didn't.  Recently someone pointed this hook out
>    to me, and the fact that it really didn't belong in there due to the
>    kernel's policy of such hooks.  So, once I became aware of it, I had
>    no choice but to remove it.

Yes. Again. You had the choice to leave this one in UNTIL an alternative 
approach had been made. It was not at all necessary to do what you did. You 
were not forced to do it by anyone. It was your choice.

>Q: Why did you delete the whole pwc driver from the tree?
>A: That is what the original author (Nemosoft) wanted to happen.  It was
>    his request, and I honored it.  Go ask him why he wanted it out if
>    you are upset about this, I merely accepted his decision as he was
>    the current maintainer and author of the code.

You were probably happy because it has been clear for months that the two 
of you did not get along very well. And now we all have to suffer because 
of this.

>Q: You jerk, I had invested lots of money in this camera, you are
>    costing me money by ripping it out.  You should be ashamed of
>    yourself!
>A: See the above question about freedom.  If it means that much to you,
>    then offer to maintain the code, it's that simple.

So only people that can code kernel modules have rights in your world? You 
have no responsibility?

>Q: You are a fundamentalist turd / jerk / pompous ass /
>    GNU-freebeer-biased-idiot-fundamentalist fucktard / ignorant slut!
>A: I've been called worse by better people, get over yourself.

Maybe you should start listen to people.
Maybe they get angry at you for a good reason.

I am a typical icebreaker. I brought the first Linux box into Motorola in 
Copenhagen. It was an uphill battle against management. Against IT 
department managers. But after one year of pushing I was allowed to run a 
pilot project. Guess what. I am in doubt now. Will my Linux box still 
support my hardware and software a year from now.
Will I continue to push for getting more Linux boxes into our company? No. 
This is much more than just a camera thing. This is about commitment. Does 
the Linux and open source community commit to support the hardware and 
software to buy or invest money on developing? Or can a fanatic with ideas 
destroy everything. There are people that have built a business making cost 
effective surveillance systems with Linux and USB cameras using Motion. 
There will be no more support of their boxes anymore because of you. I 
wonder what names they give you now.

Kenneth


-- 
Kenneth Lavrsen,
Glostrup, Denmark
kenneth@lavrsen.dk
Home Page - http://www.lavrsen.dk  



^ permalink raw reply	[flat|nested] 30+ messages in thread
* Re: Summarizing the PWC driver questions/answers
@ 2004-08-28 21:07 linux
  2004-08-28 22:06 ` Oliver Neukum
  0 siblings, 1 reply; 30+ messages in thread
From: linux @ 2004-08-28 21:07 UTC (permalink / raw)
  To: linux-kernel, linux-usb-devel; +Cc: paul

Paul Jakma wrote:
> http://linux.slashdot.org/comments.pl?sid=119578&cid=10089410
>
> From the LavaRND people. Apparently images produced with the binary 
> pcwx portion loaded (full-sized frame) had *less* entropy than the 
> smaller images produced without. Hence they speculate that the 
> function of the binary pcwx part is actually to interpolate the 
> 160x120 image to the bigger 640x480 size, and has little to do with 
> hardware..

Actually, it's probably *colour* interpolation.  Digital cameras are
based on fundamentally black-and-white image sensors, with a filter
grid superimposed.  (Search on "Bayer filter" for the most common RGGB
pattern.)  A "640x480" digital camera has 640x480 = 307200 sensor pixels,
divided among 3 (or sometimes 4) colours.

Note that this is unlike a "640x480" colour LCD, which will have 640x480x3
= 921600 active elements.  But it is the standard terminology for the field.

This gives some luminance/chrominance information at each pixel, but to
assign a 24-bit colour to each pixel requires some interpolation based on
adjacent picels.  Digital cameras do such interpolation internally, but
it's also popular to support a "raw" image format to an external program,
in the hope of better result.  See gPhoto for examples of such algorithms.

Anyway, I can imagine that the camera can do something crude internally
like downsampling by 2x2 to get colour values for each pixel.  I can also
imagine that it can export the raw image to a software driver for better
interpolation that would take more CPU horsepower than it has on board.

Now, the fact that colour is effectively encoded in the high-frequency
portion of the luminance signal makes it rather tricky to produce a
"sharp" colour image without introducing artifacts when a high-frequency
black & white signal is present.  The general techniques are published,
but digital camera makers put a lot of effort into the subtleties and are
generally very posessive of the details of their implementation.

This might be what's going on with Philips.

However, given that we already have access to lots of suitable Free
interpolating software, Linux doesn't need that.  It just needs to know
how to elicit a raw high-res frame from the camera and what the returned
bits mean.  The rest can be coped with.

^ permalink raw reply	[flat|nested] 30+ messages in thread
* Summarizing the PWC driver questions/answers
@ 2004-08-27 16:26 Greg KH
  2004-08-27 16:58 ` David Woodhouse
                   ` (3 more replies)
  0 siblings, 4 replies; 30+ messages in thread
From: Greg KH @ 2004-08-27 16:26 UTC (permalink / raw)
  To: linux-kernel, linux-usb-devel

So, I've gotten a lot of emails about this topic, so I'll just answer
them all here in public, and point people at them when they ask them
again:

First off, here's Nemosoft's big post about the driver, please read that
first, and the responses to that thread:
http://thread.gmane.org/gmane.linux.usb.devel/26310

And here's Linus's response after I removed the driver, when Nemosoft
asked me to:
http://thread.gmane.org/gmane.linux.kernel/229968

Oh, and there's now a lwn.net thread too:
http://lwn.net/Articles/99615/

Ok, on to the questions:

Q: Why did you remove the hook from the pwc driver?
A: It was there for the explicit purpose to support a binary only
   module.  That goes against the kernel's documented procedures, so I
   had to take it out.

Q: That hook had been in there for years!  Why did you suddenly decide
   to remove it now?
A: I was really not aware of the hook, and the fact that it was only
   good for a binary module to use.  I'm sorry, I should have realized
   this years ago, but I didn't.  Recently someone pointed this hook out
   to me, and the fact that it really didn't belong in there due to the
   kernel's policy of such hooks.  So, once I became aware of it, I had
   no choice but to remove it.

Q: Why did you delete the whole pwc driver from the tree?
A: That is what the original author (Nemosoft) wanted to happen.  It was
   his request, and I honored it.  Go ask him why he wanted it out if
   you are upset about this, I merely accepted his decision as he was
   the current maintainer and author of the code.

Q: But you took away my freedom!  Isn't Linux about freedom?
A: Again, it was Nemosoft's decision.  The kernel also has to abide by
   it's documented procedures, so that is why the hook had to go.
   Remember, the original driver was released under the GPL, so you are
   free to take that code and maintain it if you so desire.  I'd gladly
   support someone taking the GPL code and agreeing to maintain it, and
   resubmitting it for inclusion in the main kernel tree.  That's the
   freedom that Linux provides, no closed source OS would allow you to
   do that, if a company pulled support for a product (which happens all
   the time.)

Q: You jerk, I had invested lots of money in this camera, you are
   costing me money by ripping it out.  You should be ashamed of
   yourself!
A: See the above question about freedom.  If it means that much to you,
   then offer to maintain the code, it's that simple.

Q: You are keeping companies from wanting to write binary drivers for
   Linux.
A: Duh!  What do you think all of the kernel developers have been
   stating for years, in public.  Binary drivers only take from Linux,
   they do not give back anything.  See Andrew Morton's OLS 2004 keynote
   address for more information and background on this topic.

Q: You are a fundamentalist turd / jerk / pompous ass /
   GNU-freebeer-biased-idiot-fundamentalist fucktard / ignorant slut!
A: I've been called worse by better people, get over yourself.


^ permalink raw reply	[flat|nested] 30+ messages in thread

end of thread, other threads:[~2004-08-31  5:04 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-08-27 19:54 Summarizing the PWC driver questions/answers Kenneth Lavrsen
2004-08-27 20:14 ` [linux-usb-devel] " David Brownell
2004-08-27 20:22 ` David S. Miller
2004-08-27 20:30 ` David Ford
2004-08-27 21:26   ` Wouter Van Hemel
2004-08-27 22:07     ` [OT] " David Ford
2004-08-27 20:32 ` Zwane Mwaikambo
2004-08-27 21:25 ` Jesper Juhl
     [not found]   ` <Pine.LNX.4.61.0408272259450.2771@dragon.hygekrogen.localho st>
2004-08-27 22:08     ` Kenneth Lavrsen
2004-08-27 23:01       ` Bernd Petrovitsch
2004-08-27 23:13       ` [linux-usb-devel] " Oliver Neukum
2004-08-29 13:40         ` Alan Cox
2004-08-30  9:14           ` Craig Milo Rogers
2004-08-31  5:04           ` asterix the gual
2004-08-28  0:22       ` Paul Jakma
2004-08-28 15:55         ` [linux-usb-devel] " michel Xhaard
2004-08-30 12:04 ` Geert Uytterhoeven
  -- strict thread matches above, loose matches on Subject: below --
2004-08-28 21:07 linux
2004-08-28 22:06 ` Oliver Neukum
2004-08-27 16:26 Greg KH
2004-08-27 16:58 ` David Woodhouse
2004-08-27 18:26   ` Wouter Van Hemel
2004-08-27 19:05     ` Ian Romanick
2004-08-27 20:36       ` Wouter Van Hemel
2004-08-27 16:58 ` Prakash K. Cheemplavam
2004-08-27 17:54 ` Roman Zippel
2004-08-30 17:31 ` Brian Litzinger
2004-08-30 18:24   ` Jeff Kinz
2004-08-30 19:28   ` viro
2004-08-30 20:11   ` Kenneth Lavrsen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox