tree eb57a2f7bc16454f8de67d0ed3c0e5c1250f2c6a
parent e32fadc4c2e5975a8e40541e2ba72a7032ed4cf4
author Mauro Carvalho Chehab <mchehab@infradead.org> 1230906464 -0300
committer Mauro Carvalho Chehab <mchehab@redhat.com> 1231373936 -0200

V4L/DVB (10191a): Update MAINTAINERS entries on media drivers

This patch updates the MAINTAINERS entries for the media drivers.

We are doing a few changes during 2009 to improve patch handling for
drivers/media stuff.

Currently, v4l-dvb-maintainer list at linuxtv.org were used to to be v4l/dvb
driver maintainers ML, in order to keep track of patch merge requests and to
receive bug fixes. This list allows posting for everybody, but, in order to
avoid spam, the user subscribe/unsubscribe at the ML is moderated. Other
development discussions and end-user forums happened on two separated ML (one
for V4L and another for DVB).

At the beginning of 2009, we've created linux-media@vger.kernel.org, meaning to
be the main upstream development mailing list for drivers/media, including V4L
and DVB core and drivers.

The choice for vger.kernel.org were due to the fact that most of upstream lists
are there. Also, its anti-spam filtering rules are better than what we
currently have at linuxtv.org.

For now, both video4linux-list and linux-dvb ML will remain active, but more
focused on end users. It is expected that those lists will gradually be
replaced also by linux-media@vger.kernel.org.

This patch reflect those changes at linux MAINTAINERS file.

Since the development and bug fix discussions will now happen at
linux-media@vger.kernel.org, this patch does the following changes

	- replaces v4l-dvb-maintainer ML for the new
	  linux-media@vger.kernel.org;

	- replaces video4linux ML for the new linux-media@vger.kernel.org;

While here, it also:

	- Fixes the existing -git tree entries for drivers/media (since the
          repository name changed);

	- Adds the missing drivers/media -git tree entry on a few maintainers
          entries that don't point to a tree.

Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
