You can subscribe to this list here.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(9) |
Dec
(15) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(134) |
Feb
(50) |
Mar
|
Apr
(3) |
May
(4) |
Jun
(2) |
Jul
|
Aug
|
Sep
|
Oct
(8) |
Nov
(18) |
Dec
(2) |
2003 |
Jan
(7) |
Feb
|
Mar
|
Apr
(1) |
May
|
Jun
(2) |
Jul
(13) |
Aug
(2) |
Sep
|
Oct
|
Nov
(6) |
Dec
(13) |
2004 |
Jan
|
Feb
(12) |
Mar
(44) |
Apr
(4) |
May
(11) |
Jun
|
Jul
|
Aug
(2) |
Sep
(2) |
Oct
(3) |
Nov
(20) |
Dec
|
2005 |
Jan
|
Feb
|
Mar
(26) |
Apr
(11) |
May
(22) |
Jun
(3) |
Jul
(8) |
Aug
(14) |
Sep
(6) |
Oct
(11) |
Nov
(38) |
Dec
(3) |
2006 |
Jan
(19) |
Feb
(5) |
Mar
(2) |
Apr
(17) |
May
(2) |
Jun
|
Jul
(4) |
Aug
(2) |
Sep
(8) |
Oct
|
Nov
(35) |
Dec
(4) |
2007 |
Jan
|
Feb
(15) |
Mar
(26) |
Apr
(6) |
May
(11) |
Jun
(8) |
Jul
(5) |
Aug
(12) |
Sep
(2) |
Oct
|
Nov
(4) |
Dec
(6) |
2008 |
Jan
(11) |
Feb
(2) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2009 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(4) |
Oct
|
Nov
|
Dec
(9) |
2010 |
Jan
|
Feb
(16) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2011 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
(7) |
Dec
|
2012 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Ville S. <vil...@ik...> - 2012-01-24 17:31:35
|
changeset a0021c30dd74 in /hgrepo/d/dx/dxr3/em8300 details: http://dxr3.hg.sourceforge.net/hgweb/dxr3/em8300?cmd=changeset;node=a0021c30dd74 description: Fix build with kernel 3.2. diffstat: modules/em8300_alsa.c | 1 + modules/em8300_sysfs.c | 1 + modules/em8300_udev.c | 1 + 3 files changed, 3 insertions(+), 0 deletions(-) diffs (33 lines): diff -r ab2488adb65b -r a0021c30dd74 modules/em8300_alsa.c --- a/modules/em8300_alsa.c Thu Nov 10 22:27:18 2011 +0200 +++ b/modules/em8300_alsa.c Tue Jan 24 19:31:19 2012 +0200 @@ -32,6 +32,7 @@ #include <linux/stringify.h> #include <linux/version.h> #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,27) +#include <linux/module.h> #include <linux/semaphore.h> #else #include <asm/semaphore.h> diff -r ab2488adb65b -r a0021c30dd74 modules/em8300_sysfs.c --- a/modules/em8300_sysfs.c Thu Nov 10 22:27:18 2011 +0200 +++ b/modules/em8300_sysfs.c Tue Jan 24 19:31:19 2012 +0200 @@ -24,6 +24,7 @@ #include <linux/device.h> #include <linux/pci.h> +#include <linux/stat.h> #include "em8300_params.h" #include "em8300_eeprom.h" diff -r ab2488adb65b -r a0021c30dd74 modules/em8300_udev.c --- a/modules/em8300_udev.c Thu Nov 10 22:27:18 2011 +0200 +++ b/modules/em8300_udev.c Tue Jan 24 19:31:19 2012 +0200 @@ -22,6 +22,7 @@ #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,2) #include <linux/device.h> +#include <linux/module.h> #include <linux/pci.h> #include <linux/kdev_t.h> |
From: Ville S. <vil...@ik...> - 2011-11-11 18:11:49
|
changeset ab2488adb65b in /hgrepo/d/dx/dxr3/em8300 details: http://dxr3.hg.sourceforge.net/hgweb/dxr3/em8300?cmd=changeset;node=ab2488adb65b description: Use HAVE_UNLOCKED_IOCTL instead of kernel version to check unlocked ioctl availability. diffstat: modules/em8300_ioctl32.c | 6 +++--- modules/em8300_main.c | 14 +++++++++----- 2 files changed, 12 insertions(+), 8 deletions(-) diffs (83 lines): diff -r 8bb663bae143 -r ab2488adb65b modules/em8300_ioctl32.c --- a/modules/em8300_ioctl32.c Thu Nov 10 20:27:47 2011 +0200 +++ b/modules/em8300_ioctl32.c Thu Nov 10 22:27:18 2011 +0200 @@ -75,7 +75,7 @@ if (!err) { set_fs(KERNEL_DS); -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,36) +#ifndef HAVE_UNLOCKED_IOCTL err = filp->f_op->ioctl(filp->f_dentry->d_inode, filp, EM8300_IOCTL_INIT, (unsigned long)&karg); #else @@ -98,7 +98,7 @@ case EM8300_IOCTL32_INIT: return em8300_do_ioctl32_init(arg, filp); default: -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,36) +#ifndef HAVE_UNLOCKED_IOCTL return filp->f_op->ioctl(filp->f_dentry->d_inode, filp, cmd, arg); #else return filp->f_op->unlocked_ioctl(filp, cmd, arg); @@ -116,7 +116,7 @@ if (cmd==EM8300_IOCTL32_INIT) { return em8300_do_ioctl32_init(arg, filp); } else { -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,36) +#ifndef HAVE_UNLOCKED_IOCTL return filp->f_op->ioctl(filp->f_dentry->d_inode, filp, cmd, arg); #else return filp->f_op->unlocked_ioctl(filp, cmd, arg); diff -r 8bb663bae143 -r ab2488adb65b modules/em8300_main.c --- a/modules/em8300_main.c Thu Nov 10 20:27:47 2011 +0200 +++ b/modules/em8300_main.c Thu Nov 10 22:27:18 2011 +0200 @@ -193,15 +193,17 @@ kfree(em); } +#ifdef HAVE_UNLOCKED_IOCTL +static long em8300_io_ioctl( +#else static int em8300_io_ioctl( -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,36) struct inode *inode, #endif struct file *filp, unsigned int cmd, unsigned long arg) { -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,36) +#ifdef HAVE_UNLOCKED_IOCTL struct inode *inode = filp->f_dentry->d_inode; #endif struct em8300_s *em = filp->private_data; @@ -498,7 +500,7 @@ struct file_operations em8300_fops = { .owner = THIS_MODULE, .write = em8300_io_write, -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,36) +#ifdef HAVE_UNLOCKED_IOCTL .unlocked_ioctl = em8300_io_ioctl, #else .ioctl = em8300_io_ioctl, @@ -513,8 +515,10 @@ }; #if defined(CONFIG_SOUND) || defined(CONFIG_SOUND_MODULE) +#ifdef HAVE_UNLOCKED_IOCTL static long em8300_dsp_ioctl( -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,36) +#else +static int em8300_dsp_ioctl( struct inode *inode, #endif struct file *filp, @@ -618,7 +622,7 @@ static struct file_operations em8300_dsp_audio_fops = { .owner = THIS_MODULE, .write = em8300_dsp_write, -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,36) +#ifdef HAVE_UNLOCKED_IOCTL .unlocked_ioctl = em8300_dsp_ioctl, #else .ioctl = em8300_dsp_ioctl, |
From: Uli L. <lu...@mu...> - 2011-11-11 18:11:49
|
changeset 8bb663bae143 in /hgrepo/d/dx/dxr3/em8300 details: http://dxr3.hg.sourceforge.net/hgweb/dxr3/em8300?cmd=changeset;node=8bb663bae143 description: Fix for recent kernels. Tested with 3.0. Builds for older versions might be broken. Patches to fix older builds welcome! diffstat: modules/adv717x.c | 1 - modules/bt865.c | 1 - modules/em8300_alsa.c | 2 +- modules/em8300_driver.h | 6 ++++ modules/em8300_fifo.c | 2 +- modules/em8300_i2c.c | 12 +++++++++ modules/em8300_ioctl32.c | 13 +++++++++ modules/em8300_main.c | 57 ++++++++++++++++++++++++++++++++++++------ modules/em8300_params.c | 16 ++++++++++++ modules/encoder_output_mode.h | 17 ++++++++++++ 10 files changed, 114 insertions(+), 13 deletions(-) diffs (truncated from 340 to 300 lines): diff -r 7610900c7fd8 -r 8bb663bae143 modules/adv717x.c --- a/modules/adv717x.c Thu Nov 10 23:40:44 2011 +0200 +++ b/modules/adv717x.c Thu Nov 10 20:27:47 2011 +0200 @@ -39,7 +39,6 @@ #include <linux/sched.h> #include <linux/types.h> -#include <linux/videodev.h> #include <asm/uaccess.h> #include <linux/i2c.h> diff -r 7610900c7fd8 -r 8bb663bae143 modules/bt865.c --- a/modules/bt865.c Thu Nov 10 23:40:44 2011 +0200 +++ b/modules/bt865.c Thu Nov 10 20:27:47 2011 +0200 @@ -43,7 +43,6 @@ #include <linux/sched.h> #include <linux/types.h> -#include <linux/videodev.h> #include <asm/uaccess.h> #include <linux/i2c.h> diff -r 7610900c7fd8 -r 8bb663bae143 modules/em8300_alsa.c --- a/modules/em8300_alsa.c Thu Nov 10 23:40:44 2011 +0200 +++ b/modules/em8300_alsa.c Thu Nov 10 20:27:47 2011 +0200 @@ -486,7 +486,7 @@ memset(em8300_alsa, 0, sizeof(em8300_alsa_t)); - init_MUTEX(&em8300_alsa->lock); + sema_init(&em8300_alsa->lock, 1); em8300_alsa->em = em; em8300_alsa->card = card; diff -r 7610900c7fd8 -r 8bb663bae143 modules/em8300_driver.h --- a/modules/em8300_driver.h Thu Nov 10 23:40:44 2011 +0200 +++ b/modules/em8300_driver.h Thu Nov 10 20:27:47 2011 +0200 @@ -44,6 +44,10 @@ #include <linux/wait.h> /* wait_queue_head_t */ #include <linux/list.h> /* struct list_head */ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,34) +#include <linux/semaphore.h> /* struct semaphore */ +#endif + #if defined(CONFIG_SND) || defined(CONFIG_SND_MODULE) #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16) #define snd_card_t struct snd_card @@ -132,6 +136,8 @@ int playmode; + struct semaphore ioctl_lock; + #if defined(CONFIG_SND) || defined(CONFIG_SND_MODULE) snd_card_t *alsa_card; #endif diff -r 7610900c7fd8 -r 8bb663bae143 modules/em8300_fifo.c --- a/modules/em8300_fifo.c Thu Nov 10 23:40:44 2011 +0200 +++ b/modules/em8300_fifo.c Thu Nov 10 20:27:47 2011 +0200 @@ -116,7 +116,7 @@ } } - init_MUTEX(&f->lock); + sema_init(&f->lock, 1); f->valid = 1; return 0; diff -r 7610900c7fd8 -r 8bb663bae143 modules/em8300_i2c.c --- a/modules/em8300_i2c.c Thu Nov 10 23:40:44 2011 +0200 +++ b/modules/em8300_i2c.c Thu Nov 10 20:27:47 2011 +0200 @@ -386,7 +386,11 @@ struct i2c_board_info i2c_info; const unsigned short eeprom_addr[] = { 0x50, I2C_CLIENT_END }; i2c_info = (struct i2c_board_info){ I2C_BOARD_INFO("eeprom", 0) }; +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,36) + em->eeprom = i2c_new_probed_device(&em->i2c_adap[1], &i2c_info, eeprom_addr, NULL); +#else em->eeprom = i2c_new_probed_device(&em->i2c_adap[1], &i2c_info, eeprom_addr); +#endif if (em->eeprom) { if (sysfs_create_link(&em->dev->dev.kobj, &em->eeprom->dev.kobj, "eeprom")) printk(KERN_WARNING "em8300-%d: i2c: unable to create the eeprom link\n", em->card_nr); @@ -429,11 +433,19 @@ const unsigned short adv717x_addr[] = { 0x6a, I2C_CLIENT_END }; const unsigned short bt865_addr[] = { 0x45, I2C_CLIENT_END }; i2c_info = (struct i2c_board_info){ I2C_BOARD_INFO("adv717x", 0) }; +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,36) + em->encoder = i2c_new_probed_device(&em->i2c_adap[0], &i2c_info, adv717x_addr, NULL); +#else em->encoder = i2c_new_probed_device(&em->i2c_adap[0], &i2c_info, adv717x_addr); +#endif if (em->encoder) goto found; i2c_info = (struct i2c_board_info){ I2C_BOARD_INFO("bt865", 0) }; +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,36) + em->encoder = i2c_new_probed_device(&em->i2c_adap[0], &i2c_info, bt865_addr, NULL); +#else em->encoder = i2c_new_probed_device(&em->i2c_adap[0], &i2c_info, bt865_addr); +#endif if (em->encoder) goto found; } diff -r 7610900c7fd8 -r 8bb663bae143 modules/em8300_ioctl32.c --- a/modules/em8300_ioctl32.c Thu Nov 10 23:40:44 2011 +0200 +++ b/modules/em8300_ioctl32.c Thu Nov 10 20:27:47 2011 +0200 @@ -75,8 +75,13 @@ if (!err) { set_fs(KERNEL_DS); +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,36) err = filp->f_op->ioctl(filp->f_dentry->d_inode, filp, EM8300_IOCTL_INIT, (unsigned long)&karg); +#else + err = filp->f_op->unlocked_ioctl(filp, + EM8300_IOCTL_INIT, (unsigned long)&karg); +#endif set_fs(old_fs); kfree(karg.ucode); @@ -93,7 +98,11 @@ case EM8300_IOCTL32_INIT: return em8300_do_ioctl32_init(arg, filp); default: +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,36) return filp->f_op->ioctl(filp->f_dentry->d_inode, filp, cmd, arg); +#else + return filp->f_op->unlocked_ioctl(filp, cmd, arg); +#endif } } @@ -107,7 +116,11 @@ if (cmd==EM8300_IOCTL32_INIT) { return em8300_do_ioctl32_init(arg, filp); } else { +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,36) return filp->f_op->ioctl(filp->f_dentry->d_inode, filp, cmd, arg); +#else + return filp->f_op->unlocked_ioctl(filp, cmd, arg); +#endif } } diff -r 7610900c7fd8 -r 8bb663bae143 modules/em8300_main.c --- a/modules/em8300_main.c Thu Nov 10 23:40:44 2011 +0200 +++ b/modules/em8300_main.c Thu Nov 10 20:27:47 2011 +0200 @@ -193,23 +193,39 @@ kfree(em); } -static int em8300_io_ioctl(struct inode *inode, struct file *filp, unsigned int cmd, unsigned long arg) +static int em8300_io_ioctl( +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,36) + struct inode *inode, +#endif + struct file *filp, + unsigned int cmd, + unsigned long arg) { +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,36) + struct inode *inode = filp->f_dentry->d_inode; +#endif struct em8300_s *em = filp->private_data; int subdevice = EM8300_IMINOR(inode) % 4; + int ret = -EINVAL; + down(&em->ioctl_lock); switch (subdevice) { case EM8300_SUBDEVICE_AUDIO: - return em8300_audio_ioctl(em, cmd, arg); + ret = em8300_audio_ioctl(em, cmd, arg); + break; case EM8300_SUBDEVICE_VIDEO: - return em8300_video_ioctl(em, cmd, arg); + ret = em8300_video_ioctl(em, cmd, arg); + break; case EM8300_SUBDEVICE_SUBPICTURE: - return em8300_spu_ioctl(em, cmd, arg); + ret = em8300_spu_ioctl(em, cmd, arg); + break; case EM8300_SUBDEVICE_CONTROL: - return em8300_control_ioctl(em, cmd, arg); + ret = em8300_control_ioctl(em, cmd, arg); + break; } + up(&em->ioctl_lock); - return -EINVAL; + return ret; } static int em8300_io_open(struct inode *inode, struct file *filp) @@ -482,7 +498,11 @@ struct file_operations em8300_fops = { .owner = THIS_MODULE, .write = em8300_io_write, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,36) + .unlocked_ioctl = em8300_io_ioctl, +#else .ioctl = em8300_io_ioctl, +#endif .mmap = em8300_io_mmap, .poll = em8300_poll, .open = em8300_io_open, @@ -493,10 +513,23 @@ }; #if defined(CONFIG_SOUND) || defined(CONFIG_SOUND_MODULE) -static int em8300_dsp_ioctl(struct inode *inode, struct file *filp, unsigned int cmd, unsigned long arg) +static long em8300_dsp_ioctl( +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,36) + struct inode *inode, +#endif + struct file *filp, + unsigned int cmd, + unsigned long arg) { struct em8300_s *em = filp->private_data; - return em8300_audio_ioctl(em, cmd, arg); + int ret; + + down(&em->ioctl_lock); + ret = em8300_audio_ioctl(em, cmd, arg); + up(&em->ioctl_lock); + + return ret; + } static int em8300_dsp_open(struct inode *inode, struct file *filp) @@ -585,7 +618,11 @@ static struct file_operations em8300_dsp_audio_fops = { .owner = THIS_MODULE, .write = em8300_dsp_write, +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,36) + .unlocked_ioctl = em8300_dsp_ioctl, +#else .ioctl = em8300_dsp_ioctl, +#endif .poll = em8300_dsp_poll, .open = em8300_dsp_open, .release = em8300_dsp_release, @@ -804,6 +841,7 @@ pr_info("em8300-%d: EM8300 %x (rev %d) ", em->card_nr, dev->device, em->pci_revision); pr_info("bus: %d, devfn: %d, irq: %d, ", dev->bus->number, dev->devfn, dev->irq); pr_info("memory: 0x%08lx.\n", em->adr); + pr_info("size: %lu.\n", em->memsize); em->mem = ioremap(em->adr, em->memsize); if (!em->mem) { @@ -822,9 +860,10 @@ init_waitqueue_head(&em->video_ptsfifo_wait); init_waitqueue_head(&em->vbi_wait); init_waitqueue_head(&em->sp_ptsfifo_wait); + sema_init(&em->ioctl_lock, 1); em->audio_driver_style = NONE; - init_MUTEX(&em->audio_driver_style_lock); + sema_init(&em->audio_driver_style_lock, 1); result = request_irq(dev->irq, em8300_irq, IRQF_SHARED | IRQF_DISABLED, "em8300", (void *) em); diff -r 7610900c7fd8 -r 8bb663bae143 modules/em8300_params.c --- a/modules/em8300_params.c Thu Nov 10 23:40:44 2011 +0200 +++ b/modules/em8300_params.c Thu Nov 10 20:27:47 2011 +0200 @@ -112,7 +112,12 @@ static char *audio_driver[EM8300_MAX] = { [0 ... EM8300_MAX-1] = NULL }; MODULE_PARM(audio_driver, "1-" __MODULE_STRING(EM8300_MAX) "s"); #else + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,36) +static int param_set_audio_driver_t(const char *val, const struct kernel_param *kp) +#else static int param_set_audio_driver_t(const char *val, struct kernel_param *kp) +#endif { pr_warning("em8300: %s: deprecated module parameter: all audio interfaces are now enabled\n", kp->name); if (val) { @@ -128,11 +133,22 @@ return -EINVAL; } +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,36) +static int param_get_audio_driver_t(char *buffer, const struct kernel_param *kp) +#else static int param_get_audio_driver_t(char *buffer, struct kernel_param *kp) +#endif { return sprintf(buffer, "%s", audio_driver_name[*(audio_driver_t *)kp->arg]); } +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,36) +struct kernel_param_ops param_ops_audio_driver_t = { + .set = param_set_audio_driver_t, + .get = param_get_audio_driver_t, +}; +#endif + |
From: Ville S. <vil...@ik...> - 2011-11-10 21:41:12
|
changeset 7610900c7fd8 in /hgrepo/d/dx/dxr3/em8300 details: http://dxr3.hg.sourceforge.net/hgweb/dxr3/em8300?cmd=changeset;node=7610900c7fd8 description: Remove no longer functional CVS keywords. diffstat: modules/Makefile | 1 - modules/em8300_alsa.c | 3 +-- modules/em8300_alsa.h | 3 +-- modules/em8300_compat24.h | 3 +-- modules/em8300_devfs.h | 3 +-- modules/em8300_eeprom.c | 3 +-- modules/em8300_eeprom.h | 3 +-- modules/em8300_ioctl32.c | 3 +-- modules/em8300_ioctl32.h | 3 +-- modules/em8300_models.h | 3 +-- modules/em8300_params.c | 3 +-- modules/em8300_params.h | 3 +-- modules/em8300_procfs.h | 3 +-- modules/em8300_registration.c | 3 +-- modules/em8300_registration.h | 3 +-- modules/em8300_sysfs.c | 3 +-- modules/em8300_sysfs.h | 3 +-- modules/em8300_udev.c | 3 +-- modules/em8300_udev.h | 3 +-- 19 files changed, 18 insertions(+), 37 deletions(-) diffs (188 lines): diff -r 17b18ac8234c -r 7610900c7fd8 modules/Makefile --- a/modules/Makefile Thu Nov 10 23:35:12 2011 +0200 +++ b/modules/Makefile Thu Nov 10 23:40:44 2011 +0200 @@ -1,4 +1,3 @@ -# $Id$ # # Makefile -- makefile for the em8300 modules # Copyright (C) 2004 Nicolas Boullis <nbo...@de...> diff -r 17b18ac8234c -r 7610900c7fd8 modules/em8300_alsa.c --- a/modules/em8300_alsa.c Thu Nov 10 23:35:12 2011 +0200 +++ b/modules/em8300_alsa.c Thu Nov 10 23:40:44 2011 +0200 @@ -1,5 +1,4 @@ -/* $Id$ - * +/* * em8300_alsa.c -- alsa interface to the audio part of the em8300 chip * Copyright (C) 2004-2006 Nicolas Boullis <nbo...@de...> * diff -r 17b18ac8234c -r 7610900c7fd8 modules/em8300_alsa.h --- a/modules/em8300_alsa.h Thu Nov 10 23:35:12 2011 +0200 +++ b/modules/em8300_alsa.h Thu Nov 10 23:40:44 2011 +0200 @@ -1,5 +1,4 @@ -/* $Id$ - * +/* * em8300_alsa.h -- alsa interface to the audio part of the em8300 chip * Copyright (C) 2004 Nicolas Boullis <nbo...@de...> * diff -r 17b18ac8234c -r 7610900c7fd8 modules/em8300_compat24.h --- a/modules/em8300_compat24.h Thu Nov 10 23:35:12 2011 +0200 +++ b/modules/em8300_compat24.h Thu Nov 10 23:40:44 2011 +0200 @@ -1,5 +1,4 @@ -/* $Id$ - * +/* * em8300_compat24.h -- compatibility layer for 2.4 and some 2.5 kernels * Copyright (C) 2004 Andreas Schultz <asc...@wa...> * Copyright (C) 2004 Nicolas Boullis <nbo...@de...> diff -r 17b18ac8234c -r 7610900c7fd8 modules/em8300_devfs.h --- a/modules/em8300_devfs.h Thu Nov 10 23:35:12 2011 +0200 +++ b/modules/em8300_devfs.h Thu Nov 10 23:40:44 2011 +0200 @@ -1,5 +1,4 @@ -/* $Id$ - * +/* * em8300_devfs.h -- interface to the devfs filesystem * Copyright (C) 2004 Nicolas Boullis <nbo...@de...> * diff -r 17b18ac8234c -r 7610900c7fd8 modules/em8300_eeprom.c --- a/modules/em8300_eeprom.c Thu Nov 10 23:35:12 2011 +0200 +++ b/modules/em8300_eeprom.c Thu Nov 10 23:40:44 2011 +0200 @@ -1,5 +1,4 @@ -/* $Id$ - * +/* * em8300_eeprom.c -- read the eeprom on em8300-based boards * Copyright (C) 2007 Nicolas Boullis <nbo...@de...> * diff -r 17b18ac8234c -r 7610900c7fd8 modules/em8300_eeprom.h --- a/modules/em8300_eeprom.h Thu Nov 10 23:35:12 2011 +0200 +++ b/modules/em8300_eeprom.h Thu Nov 10 23:40:44 2011 +0200 @@ -1,5 +1,4 @@ -/* $Id$ - * +/* * em8300_eeprom.h -- read the eeprom on em8300-based boards * Copyright (C) 2007 Nicolas Boullis <nbo...@de...> * diff -r 17b18ac8234c -r 7610900c7fd8 modules/em8300_ioctl32.c --- a/modules/em8300_ioctl32.c Thu Nov 10 23:35:12 2011 +0200 +++ b/modules/em8300_ioctl32.c Thu Nov 10 23:40:44 2011 +0200 @@ -1,5 +1,4 @@ -/* $Id$ - * +/* * em8300_ioctl32.c -- compatibility layer for 32-bit ioctls on 64-bit kernels * Copyright (C) 2004 Nicolas Boullis <nbo...@de...> * Copyright (C) 2006 István Váradi <iv...@us...> diff -r 17b18ac8234c -r 7610900c7fd8 modules/em8300_ioctl32.h --- a/modules/em8300_ioctl32.h Thu Nov 10 23:35:12 2011 +0200 +++ b/modules/em8300_ioctl32.h Thu Nov 10 23:40:44 2011 +0200 @@ -1,5 +1,4 @@ -/* $Id$ - * +/* * em8300_ioctl32.h -- compatibility layer for 32-bit ioctls on 64-bit kernels * Copyright (C) 2004 Nicolas Boullis <nbo...@de...> * diff -r 17b18ac8234c -r 7610900c7fd8 modules/em8300_models.h --- a/modules/em8300_models.h Thu Nov 10 23:35:12 2011 +0200 +++ b/modules/em8300_models.h Thu Nov 10 23:40:44 2011 +0200 @@ -1,5 +1,4 @@ -/* $Id$ - * +/* * em8300_models.h -- identify and configure known models of em8300-based cards * Copyright (C) 2007 Nicolas Boullis <nbo...@de...> * diff -r 17b18ac8234c -r 7610900c7fd8 modules/em8300_params.c --- a/modules/em8300_params.c Thu Nov 10 23:35:12 2011 +0200 +++ b/modules/em8300_params.c Thu Nov 10 23:40:44 2011 +0200 @@ -1,5 +1,4 @@ -/* $Id$ - * +/* * em8300_params.c -- parameters for the em8300 driver * Copyright (C) 2007 Nicolas Boullis <nbo...@de...> * diff -r 17b18ac8234c -r 7610900c7fd8 modules/em8300_params.h --- a/modules/em8300_params.h Thu Nov 10 23:35:12 2011 +0200 +++ b/modules/em8300_params.h Thu Nov 10 23:40:44 2011 +0200 @@ -1,5 +1,4 @@ -/* $Id$ - * +/* * em8300_params.h -- parameters for the em8300 driver * Copyright (C) 2007 Nicolas Boullis <nbo...@de...> * diff -r 17b18ac8234c -r 7610900c7fd8 modules/em8300_procfs.h --- a/modules/em8300_procfs.h Thu Nov 10 23:35:12 2011 +0200 +++ b/modules/em8300_procfs.h Thu Nov 10 23:40:44 2011 +0200 @@ -1,5 +1,4 @@ -/* $Id$ - * +/* * em8300_procfs.h -- interface to the procfs filesystem * Copyright (C) 2004 Nicolas Boullis <nbo...@de...> * diff -r 17b18ac8234c -r 7610900c7fd8 modules/em8300_registration.c --- a/modules/em8300_registration.c Thu Nov 10 23:35:12 2011 +0200 +++ b/modules/em8300_registration.c Thu Nov 10 23:40:44 2011 +0200 @@ -1,5 +1,4 @@ -/* $Id$ - * +/* * em8300_registration.c -- common interface for everything that needs * to be registered * Copyright (C) 2004 Nicolas Boullis <nbo...@de...> diff -r 17b18ac8234c -r 7610900c7fd8 modules/em8300_registration.h --- a/modules/em8300_registration.h Thu Nov 10 23:35:12 2011 +0200 +++ b/modules/em8300_registration.h Thu Nov 10 23:40:44 2011 +0200 @@ -1,5 +1,4 @@ -/* $Id$ - * +/* * em8300_registration.h -- common interface for everything that needs * to be registered * Copyright (C) 2004 Nicolas Boullis <nbo...@de...> diff -r 17b18ac8234c -r 7610900c7fd8 modules/em8300_sysfs.c --- a/modules/em8300_sysfs.c Thu Nov 10 23:35:12 2011 +0200 +++ b/modules/em8300_sysfs.c Thu Nov 10 23:40:44 2011 +0200 @@ -1,5 +1,4 @@ -/* $Id$ - * +/* * em8300_sysfs.c -- interface to the sysfs filesystem * Copyright (C) 2004 Eric Donohue <ep...@ho...> * Copyright (C) 2004,2006,2008 Nicolas Boullis <nbo...@de...> diff -r 17b18ac8234c -r 7610900c7fd8 modules/em8300_sysfs.h --- a/modules/em8300_sysfs.h Thu Nov 10 23:35:12 2011 +0200 +++ b/modules/em8300_sysfs.h Thu Nov 10 23:40:44 2011 +0200 @@ -1,5 +1,4 @@ -/* $Id$ - * +/* * em8300_sysfs.h -- interface to the sysfs filesystem * Copyright (C) 2004 Eric Donohue <ep...@ho...> * diff -r 17b18ac8234c -r 7610900c7fd8 modules/em8300_udev.c --- a/modules/em8300_udev.c Thu Nov 10 23:35:12 2011 +0200 +++ b/modules/em8300_udev.c Thu Nov 10 23:40:44 2011 +0200 @@ -1,5 +1,4 @@ -/* $Id$ - * +/* * em8300_udev.c -- interface for udev * Copyright (C) 2006 Nicolas Boullis <nbo...@de...> * diff -r 17b18ac8234c -r 7610900c7fd8 modules/em8300_udev.h --- a/modules/em8300_udev.h Thu Nov 10 23:35:12 2011 +0200 +++ b/modules/em8300_udev.h Thu Nov 10 23:40:44 2011 +0200 @@ -1,5 +1,4 @@ -/* $Id$ - * +/* * em8300_udev.h -- interface for udev * Copyright (C) 2006 Nicolas Boullis <nbo...@de...> * |
From: Ville S. <vil...@ik...> - 2011-11-10 21:41:12
|
changeset 17b18ac8234c in /hgrepo/d/dx/dxr3/em8300 details: http://dxr3.hg.sourceforge.net/hgweb/dxr3/em8300?cmd=changeset;node=17b18ac8234c description: Add Emacs indentation settings. diffstat: .dir-locals.el | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diffs (6 lines): diff -r 44979692c0de -r 17b18ac8234c .dir-locals.el --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/.dir-locals.el Thu Nov 10 23:35:12 2011 +0200 @@ -0,0 +1,2 @@ +((c-mode . ((indent-tabs-mode . t) + (c-basic-offset . 8)))) |
From: Ville S. <vil...@ik...> - 2011-11-10 21:41:12
|
changeset 44979692c0de in /hgrepo/d/dx/dxr3/em8300 details: http://dxr3.hg.sourceforge.net/hgweb/dxr3/em8300?cmd=changeset;node=44979692c0de description: Sync COPYING with http://www.gnu.org/licenses/gpl-2.0.txt diffstat: COPYING | 39 +++++++++++++++++++-------------------- 1 files changed, 19 insertions(+), 20 deletions(-) diffs (111 lines): diff -r 276efae7eea5 -r 44979692c0de COPYING --- a/COPYING Thu Nov 10 23:26:03 2011 +0200 +++ b/COPYING Thu Nov 10 23:27:47 2011 +0200 @@ -1,12 +1,12 @@ - GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 - Copyright (C) 1989, 1991 Free Software Foundation, Inc. - 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + Copyright (C) 1989, 1991 Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. - Preamble + Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public @@ -15,7 +15,7 @@ General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by -the GNU Library General Public License instead.) You can apply it to +the GNU Lesser General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not @@ -55,8 +55,8 @@ The precise terms and conditions for copying, distribution and modification follow. - - GNU GENERAL PUBLIC LICENSE + + GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains @@ -110,7 +110,7 @@ License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) - + These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in @@ -168,7 +168,7 @@ access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. - + 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is @@ -225,7 +225,7 @@ This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. - + 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License @@ -255,7 +255,7 @@ of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. - NO WARRANTY + NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN @@ -277,9 +277,9 @@ PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Programs + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it @@ -303,10 +303,9 @@ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Also add information on how to contact you by electronic and paper mail. @@ -336,5 +335,5 @@ This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the -library. If this is what you want to do, use the GNU Library General +library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. |
From: Ville S. <vil...@ik...> - 2011-11-10 21:41:11
|
changeset 276efae7eea5 in /hgrepo/d/dx/dxr3/em8300 details: http://dxr3.hg.sourceforge.net/hgweb/dxr3/em8300?cmd=changeset;node=276efae7eea5 description: Fix FSF address in copyright notices. diffstat: modules/em8300_alsa.c | 4 ++-- modules/em8300_alsa.h | 4 ++-- modules/em8300_eeprom.c | 4 ++-- modules/em8300_eeprom.h | 4 ++-- modules/em8300_models.c | 4 ++-- modules/em8300_models.h | 4 ++-- modules/em8300_params.c | 4 ++-- modules/em8300_params.h | 4 ++-- 8 files changed, 16 insertions(+), 16 deletions(-) diffs (112 lines): diff -r 8f80bd9d1571 -r 276efae7eea5 modules/em8300_alsa.c --- a/modules/em8300_alsa.c Thu Nov 10 22:41:12 2011 +0200 +++ b/modules/em8300_alsa.c Thu Nov 10 23:26:03 2011 +0200 @@ -14,8 +14,8 @@ * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * along with this program; if not, write to the Free Software Foundation, + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ #include "em8300_alsa.h" diff -r 8f80bd9d1571 -r 276efae7eea5 modules/em8300_alsa.h --- a/modules/em8300_alsa.h Thu Nov 10 22:41:12 2011 +0200 +++ b/modules/em8300_alsa.h Thu Nov 10 23:26:03 2011 +0200 @@ -14,8 +14,8 @@ * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * along with this program; if not, write to the Free Software Foundation, + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef EM8300_ALSA_H diff -r 8f80bd9d1571 -r 276efae7eea5 modules/em8300_eeprom.c --- a/modules/em8300_eeprom.c Thu Nov 10 22:41:12 2011 +0200 +++ b/modules/em8300_eeprom.c Thu Nov 10 23:26:03 2011 +0200 @@ -14,8 +14,8 @@ * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * along with this program; if not, write to the Free Software Foundation, + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ #include "em8300_eeprom.h" diff -r 8f80bd9d1571 -r 276efae7eea5 modules/em8300_eeprom.h --- a/modules/em8300_eeprom.h Thu Nov 10 22:41:12 2011 +0200 +++ b/modules/em8300_eeprom.h Thu Nov 10 23:26:03 2011 +0200 @@ -14,8 +14,8 @@ * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * along with this program; if not, write to the Free Software Foundation, + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef _EM8300_EEPROM_H diff -r 8f80bd9d1571 -r 276efae7eea5 modules/em8300_models.c --- a/modules/em8300_models.c Thu Nov 10 22:41:12 2011 +0200 +++ b/modules/em8300_models.c Thu Nov 10 23:26:03 2011 +0200 @@ -12,8 +12,8 @@ * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * along with this program; if not, write to the Free Software Foundation, + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ #include "em8300_models.h" diff -r 8f80bd9d1571 -r 276efae7eea5 modules/em8300_models.h --- a/modules/em8300_models.h Thu Nov 10 22:41:12 2011 +0200 +++ b/modules/em8300_models.h Thu Nov 10 23:26:03 2011 +0200 @@ -14,8 +14,8 @@ * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * along with this program; if not, write to the Free Software Foundation, + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef _EM8300_MODELS_H diff -r 8f80bd9d1571 -r 276efae7eea5 modules/em8300_params.c --- a/modules/em8300_params.c Thu Nov 10 22:41:12 2011 +0200 +++ b/modules/em8300_params.c Thu Nov 10 23:26:03 2011 +0200 @@ -14,8 +14,8 @@ * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * along with this program; if not, write to the Free Software Foundation, + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ #include "em8300_params.h" diff -r 8f80bd9d1571 -r 276efae7eea5 modules/em8300_params.h --- a/modules/em8300_params.h Thu Nov 10 22:41:12 2011 +0200 +++ b/modules/em8300_params.h Thu Nov 10 23:26:03 2011 +0200 @@ -14,8 +14,8 @@ * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + * along with this program; if not, write to the Free Software Foundation, + * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef _EM8300_PARAMS_H |
From: Ville S. <vil...@ik...> - 2011-11-10 20:41:45
|
changeset 8f80bd9d1571 in /hgrepo/d/dx/dxr3/em8300 details: http://dxr3.hg.sourceforge.net/hgweb/dxr3/em8300?cmd=changeset;node=8f80bd9d1571 description: Tell hg to ignore modules.order. diffstat: .hgignore | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diffs (11 lines): diff -r a4ae835b8214 -r 8f80bd9d1571 .hgignore --- a/.hgignore Sun Oct 30 10:10:47 2011 +0200 +++ b/.hgignore Thu Nov 10 22:41:12 2011 +0200 @@ -26,6 +26,7 @@ ^include/linux/Makefile\.in$ ^include/stamp-h1$ ^modules/em8300_version.h$ +^modules/modules\.order$ ^modules/Module\.symvers$ ^modules/\.tmp_versions/ ^modules/\..*\.cmd$ |
From: Ville S. <vil...@ik...> - 2011-10-30 08:11:12
|
changeset a4ae835b8214 in /hgrepo/d/dx/dxr3/em8300 details: http://dxr3.hg.sourceforge.net/hgweb/dxr3/em8300?cmd=changeset;node=a4ae835b8214 description: dxr3snap: Fix swapped arguments to memset(). diffstat: dxr3snap/dxr3write.c | 2 +- dxr3snap/dxr3write2.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diffs (24 lines): diff -r f58b2c511e0a -r a4ae835b8214 dxr3snap/dxr3write.c --- a/dxr3snap/dxr3write.c Fri Feb 26 01:29:01 2010 +0100 +++ b/dxr3snap/dxr3write.c Sun Oct 30 10:10:47 2011 +0200 @@ -253,7 +253,7 @@ di = &_di; /* works better if pointing to something */ buf=malloc(72000*3); - memset(buf,72000*3, 0); + memset(buf, 0, 72000*3); fd_control=open("/dev/em8300-0", O_WRONLY); y_out=fopen(BASE ".Y", "wb"); u_out=fopen(BASE ".U", "wb"); diff -r f58b2c511e0a -r a4ae835b8214 dxr3snap/dxr3write2.c --- a/dxr3snap/dxr3write2.c Fri Feb 26 01:29:01 2010 +0100 +++ b/dxr3snap/dxr3write2.c Sun Oct 30 10:10:47 2011 +0200 @@ -297,7 +297,7 @@ di = &_di; /* works better if pointing to something */ buf=malloc(72000*3); - memset(buf,72000*3, 0); + memset(buf, 0, 72000*3); //for(looping=0;looping < 32;looping ++) { fd_control=open("/dev/em8300-0", O_WRONLY); x=0; |
From: Christian G. <chr...@gm...> - 2010-02-26 01:27:32
|
changeset ba1e7c3e54b0 in /hgrepo/d/dx/dxr3/em8300 details: http://dxr3.hg.sourceforge.net/hgweb/dxr3/em8300?cmd=changeset;node=ba1e7c3e54b0 description: fix Indent style diffstat: modules/em8300_i2c.c | 14 +++++++------- 1 files changed, 7 insertions(+), 7 deletions(-) diffs (28 lines): diff -r 9026038a85d3 -r ba1e7c3e54b0 modules/em8300_i2c.c --- a/modules/em8300_i2c.c Wed Dec 02 10:48:12 2009 +0100 +++ b/modules/em8300_i2c.c Wed Dec 02 10:49:50 2009 +0100 @@ -295,17 +295,17 @@ /* template for i2c-bit-algo */ static struct i2c_adapter em8300_i2c_adap_template = { #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 31) - .id = I2C_HW_B_EM8300, + .id = I2C_HW_B_EM8300, #endif - .algo = NULL, /* set by i2c-algo-bit */ - .algo_data = NULL, /* filled from template */ - .owner = THIS_MODULE, + .algo = NULL, /* set by i2c-algo-bit */ + .algo_data = NULL, /* filled from template */ + .owner = THIS_MODULE, #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,27) - .client_register = em8300_i2c_reg; - .client_unregister = em8300_i2c_unreg; + .client_register = em8300_i2c_reg; + .client_unregister = em8300_i2c_unreg; #endif #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 26) - .class = I2C_CLASS_TV_ANALOG, + .class = I2C_CLASS_TV_ANALOG, #endif }; |
From: Christian G. <chr...@gm...> - 2010-02-26 01:26:19
|
changeset bd478e1be4df in /hgrepo/d/dx/dxr3/em8300 details: http://dxr3.hg.sourceforge.net/hgweb/dxr3/em8300?cmd=changeset;node=bd478e1be4df description: introduce em8300_i2c_adap_template diffstat: modules/em8300_i2c.c | 44 +++++++++++++++++++++++++++++--------------- 1 files changed, 29 insertions(+), 15 deletions(-) diffs (71 lines): diff -r 9b91cd4c427c -r bd478e1be4df modules/em8300_i2c.c --- a/modules/em8300_i2c.c Mon Nov 30 21:25:23 2009 +0100 +++ b/modules/em8300_i2c.c Tue Dec 01 20:23:49 2009 +0100 @@ -291,6 +291,24 @@ /* ----------------------------------------------------------------------- */ /* I2C functions */ /* ----------------------------------------------------------------------- */ + +/* template for i2c-bit-algo */ +static struct i2c_adapter em8300_i2c_adap_template = { +#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 31) + .id = I2C_HW_B_EM8300, +#endif + .algo = NULL, /* set by i2c-algo-bit */ + .algo_data = NULL, /* filled from template */ + .owner = THIS_MODULE, +#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,27) + .client_register = em8300_i2c_reg; + .client_unregister = em8300_i2c_unreg; +#endif +#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 26) + .class = I2C_CLASS_TV_ANALOG, +#endif +}; + int em8300_i2c_init1(struct em8300_s *em) { int ret; @@ -331,14 +349,12 @@ em->i2c_data_2.data = pdata; + + /* Setup adapter */ + memcpy(&em->i2c_ops_2, &em8300_i2c_adap_template, + sizeof(struct i2c_adapter)); strcpy(em->i2c_ops_2.name, "EM8300 I2C bus 2"); - em->i2c_ops_2.id = I2C_HW_B_EM8300; - em->i2c_ops_2.algo = NULL; em->i2c_ops_2.algo_data = &em->i2c_data_2; -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,27) - em->i2c_ops_2.client_register = em8300_i2c_reg; - em->i2c_ops_2.client_unregister = em8300_i2c_unreg; -#endif #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) em->i2c_ops_2.dev.parent = &em->dev->dev; #endif @@ -384,16 +400,14 @@ em->i2c_data_1.data = pdata; - strcpy(em->i2c_ops_1.name, "EM8300 I2C bus 1"); - em->i2c_ops_1.id = I2C_HW_B_EM8300; - em->i2c_ops_1.algo = NULL; - em->i2c_ops_1.algo_data = &em->i2c_data_1; -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,22) - em->i2c_ops_1.client_register = em8300_i2c_reg; - em->i2c_ops_1.client_unregister = em8300_i2c_unreg; -#endif + + /* Setup adapter */ + memcpy(&em->i2c_ops_1, &em8300_i2c_adap_template, + sizeof(struct i2c_adapter)); + strcpy(em->i2c_ops_1.name, "EM8300 I2C bus 1"); + em->i2c_ops_1.algo_data = &em->i2c_data_1; #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) - em->i2c_ops_1.dev.parent = &em->dev->dev; + em->i2c_ops_1.dev.parent = &em->dev->dev; #endif i2c_set_adapdata(&em->i2c_ops_1, (void *)em); |
From: Christian G. <chr...@gm...> - 2010-02-26 01:20:13
|
changeset 7b85d34643ce in /hgrepo/d/dx/dxr3/em8300 details: http://dxr3.hg.sourceforge.net/hgweb/dxr3/em8300?cmd=changeset;node=7b85d34643ce description: create a i2c_adapter array and make use of it diffstat: modules/em8300_driver.h | 3 +-- modules/em8300_eeprom.c | 2 +- modules/em8300_i2c.c | 40 ++++++++++++++++++++-------------------- 3 files changed, 22 insertions(+), 23 deletions(-) diffs (133 lines): diff -r bd478e1be4df -r 7b85d34643ce modules/em8300_driver.h --- a/modules/em8300_driver.h Tue Dec 01 20:23:49 2009 +0100 +++ b/modules/em8300_driver.h Wed Dec 02 10:42:44 2009 +0100 @@ -154,17 +154,16 @@ /* I2C */ int i2c_pin_reg; int i2c_oe_reg; + struct i2c_adapter i2c_adap[2]; /* different between revision 1 and revision 2 boards */ int mystery_divisor; /* I2C bus 1*/ struct i2c_algo_bit_data i2c_data_1; - struct i2c_adapter i2c_ops_1; /* I2C bus 2*/ struct i2c_algo_bit_data i2c_data_2; - struct i2c_adapter i2c_ops_2; /* I2C clients */ int encoder_type; diff -r bd478e1be4df -r 7b85d34643ce modules/em8300_eeprom.c --- a/modules/em8300_eeprom.c Tue Dec 01 20:23:49 2009 +0100 +++ b/modules/em8300_eeprom.c Wed Dec 02 10:42:44 2009 +0100 @@ -65,7 +65,7 @@ } }; - if (i2c_transfer(&em->i2c_ops_2, message, 2) == 2) + if (i2c_transfer(&em->i2c_adap[1], message, 2) == 2) return 0; return -1; diff -r bd478e1be4df -r 7b85d34643ce modules/em8300_i2c.c --- a/modules/em8300_i2c.c Tue Dec 01 20:23:49 2009 +0100 +++ b/modules/em8300_i2c.c Wed Dec 02 10:42:44 2009 +0100 @@ -351,17 +351,17 @@ /* Setup adapter */ - memcpy(&em->i2c_ops_2, &em8300_i2c_adap_template, + memcpy(&em->i2c_adap[1], &em8300_i2c_adap_template, sizeof(struct i2c_adapter)); - strcpy(em->i2c_ops_2.name, "EM8300 I2C bus 2"); - em->i2c_ops_2.algo_data = &em->i2c_data_2; + strcpy(em->i2c_adap[1].name, "EM8300 I2C bus 2"); + em->i2c_adap[1].algo_data = &em->i2c_data_2; #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) - em->i2c_ops_2.dev.parent = &em->dev->dev; + em->i2c_adap[1].dev.parent = &em->dev->dev; #endif - i2c_set_adapdata(&em->i2c_ops_2, (void *)em); + i2c_set_adapdata(&em->i2c_adap[1], (void *)em); - if ((ret = i2c_bit_add_bus(&em->i2c_ops_2))) + if ((ret = i2c_bit_add_bus(&em->i2c_adap[1]))) return ret; #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,27) @@ -371,7 +371,7 @@ struct i2c_board_info i2c_info; const unsigned short eeprom_addr[] = { 0x50, I2C_CLIENT_END }; i2c_info = (struct i2c_board_info){ I2C_BOARD_INFO("eeprom", 0) }; - em->eeprom = i2c_new_probed_device(&em->i2c_ops_2, &i2c_info, eeprom_addr); + em->eeprom = i2c_new_probed_device(&em->i2c_adap[1], &i2c_info, eeprom_addr); if (em->eeprom) { if (sysfs_create_link(&em->dev->dev.kobj, &em->eeprom->dev.kobj, "eeprom")) printk(KERN_WARNING "em8300-%d: i2c: unable to create the eeprom link\n", em->card_nr); @@ -402,17 +402,17 @@ /* Setup adapter */ - memcpy(&em->i2c_ops_1, &em8300_i2c_adap_template, + memcpy(&em->i2c_adap[0], &em8300_i2c_adap_template, sizeof(struct i2c_adapter)); - strcpy(em->i2c_ops_1.name, "EM8300 I2C bus 1"); - em->i2c_ops_1.algo_data = &em->i2c_data_1; + strcpy(em->i2c_adap[0].name, "EM8300 I2C bus 1"); + em->i2c_adap[0].algo_data = &em->i2c_data_1; #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) - em->i2c_ops_1.dev.parent = &em->dev->dev; + em->i2c_adap[0].dev.parent = &em->dev->dev; #endif - i2c_set_adapdata(&em->i2c_ops_1, (void *)em); + i2c_set_adapdata(&em->i2c_adap[0], (void *)em); - if ((ret = i2c_bit_add_bus(&em->i2c_ops_1))) + if ((ret = i2c_bit_add_bus(&em->i2c_adap[0]))) return ret; if (known_models[em->model].module.name != NULL) @@ -431,7 +431,7 @@ sizeof(i2c_info.type)); #endif i2c_info.addr = known_models[em->model].module.addr; - em->encoder = i2c_new_device(&em->i2c_ops_1, &i2c_info); + em->encoder = i2c_new_device(&em->i2c_adap[0], &i2c_info); if (em->encoder) goto found; } @@ -440,11 +440,11 @@ const unsigned short adv717x_addr[] = { 0x6a, I2C_CLIENT_END }; const unsigned short bt865_addr[] = { 0x45, I2C_CLIENT_END }; i2c_info = (struct i2c_board_info){ I2C_BOARD_INFO("adv717x", 0) }; - em->encoder = i2c_new_probed_device(&em->i2c_ops_1, &i2c_info, adv717x_addr); + em->encoder = i2c_new_probed_device(&em->i2c_adap[0], &i2c_info, adv717x_addr); if (em->encoder) goto found; i2c_info = (struct i2c_board_info){ I2C_BOARD_INFO("bt865", 0) }; - em->encoder = i2c_new_probed_device(&em->i2c_ops_1, &i2c_info, bt865_addr); + em->encoder = i2c_new_probed_device(&em->i2c_adap[0], &i2c_info, bt865_addr); if (em->encoder) goto found; } @@ -498,11 +498,11 @@ kfree(em->i2c_data_1.data); kfree(em->i2c_data_2.data); #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) - i2c_del_adapter(&em->i2c_ops_1); - i2c_del_adapter(&em->i2c_ops_2); + i2c_del_adapter(&em->i2c_adap[0]); + i2c_del_adapter(&em->i2c_adap[1]); #else - i2c_bit_del_bus(&em->i2c_ops_1); - i2c_bit_del_bus(&em->i2c_ops_2); + i2c_bit_del_bus(&em->i2c_adap[0]); + i2c_bit_del_bus(&em->i2c_adap[1]); #endif } |
From: Nicolas B. <nbo...@de...> - 2010-02-26 00:46:41
|
changeset f58b2c511e0a in /hgrepo/d/dx/dxr3/em8300 details: http://dxr3.hg.sourceforge.net/hgweb/dxr3/em8300?cmd=changeset;node=f58b2c511e0a description: Make em8300_i2c_adap_template a const and use assignment of struct instead of memcpy. diffstat: modules/em8300_i2c.c | 5 ++--- 1 files changed, 2 insertions(+), 3 deletions(-) diffs (22 lines): diff -r ca9ee0debc63 -r f58b2c511e0a modules/em8300_i2c.c --- a/modules/em8300_i2c.c Fri Feb 26 01:25:24 2010 +0100 +++ b/modules/em8300_i2c.c Fri Feb 26 01:29:01 2010 +0100 @@ -293,7 +293,7 @@ /* ----------------------------------------------------------------------- */ /* template for i2c-bit-algo */ -static struct i2c_adapter em8300_i2c_adap_template = { +static const struct i2c_adapter em8300_i2c_adap_template = { .name = "em8300 i2c driver", #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 31) .id = I2C_HW_B_EM8300, @@ -363,8 +363,7 @@ */ for (i = 0; i < 2; i++) { /* Setup adapter */ - memcpy(&em->i2c_adap[i], &em8300_i2c_adap_template, - sizeof(struct i2c_adapter)); + em->i2c_adap[i] = em8300_i2c_adap_template; sprintf(em->i2c_adap[i].name + strlen(em->i2c_adap[i].name), " #%d-%d", em->card_nr, i); em->i2c_adap[i].algo_data = &em->i2c_algo[i]; |
From: Nicolas B. <nbo...@de...> - 2010-02-26 00:46:33
|
changeset ca9ee0debc63 in /hgrepo/d/dx/dxr3/em8300 details: http://dxr3.hg.sourceforge.net/hgweb/dxr3/em8300?cmd=changeset;node=ca9ee0debc63 description: Fix a typo in Christian's code. The right separator to use within a structure is the coma, not the semicolon. The typo would cause a build failure with linux < 2.6.27. diffstat: modules/em8300_i2c.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diffs (14 lines): diff -r 54a2463f624d -r ca9ee0debc63 modules/em8300_i2c.c --- a/modules/em8300_i2c.c Fri Feb 26 01:19:28 2010 +0100 +++ b/modules/em8300_i2c.c Fri Feb 26 01:25:24 2010 +0100 @@ -302,8 +302,8 @@ .algo_data = NULL, /* filled from template */ .owner = THIS_MODULE, #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,27) - .client_register = em8300_i2c_reg; - .client_unregister = em8300_i2c_unreg; + .client_register = em8300_i2c_reg, + .client_unregister = em8300_i2c_unreg, #endif #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 26) .class = I2C_CLASS_TV_ANALOG, |
From: Nicolas B. <nbo...@de...> - 2010-02-26 00:46:19
|
changeset 54a2463f624d in /hgrepo/d/dx/dxr3/em8300 details: http://dxr3.hg.sourceforge.net/hgweb/dxr3/em8300?cmd=changeset;node=54a2463f624d description: merge with http://hg.assembla.com/em8300-cgmeiner diffstat: include/linux/em8300.h | 348 --------------------------------------- modules/adv717x.c | 4 +- modules/bt865.c | 1 + modules/em8300_audio.c | 1 + modules/em8300_dicom.c | 1 + modules/em8300_driver.h | 371 ++++++++++++++++++++++++++++++++++++++++++ modules/em8300_eeprom.c | 3 +- modules/em8300_fifo.c | 1 + modules/em8300_i2c.c | 130 +++++++------- modules/em8300_ioctl.c | 1 + modules/em8300_main.c | 1 + modules/em8300_misc.c | 1 + modules/em8300_models.h | 1 + modules/em8300_params.c | 1 + modules/em8300_registration.h | 1 + modules/em8300_spu.c | 1 + modules/em8300_ucode.c | 1 + modules/em8300_video.c | 1 + modules/em9010.c | 1 + 19 files changed, 458 insertions(+), 412 deletions(-) diffs (truncated from 1161 to 300 lines): diff -r e29666fdd240 -r 54a2463f624d include/linux/em8300.h --- a/include/linux/em8300.h Sun Feb 14 23:28:02 2010 +0200 +++ b/include/linux/em8300.h Fri Feb 26 01:19:28 2010 +0100 @@ -218,352 +218,4 @@ #define ENCODER_ADV7170 2 #define ENCODER_BT865 3 -#ifdef __KERNEL__ - -#define EM8300_MAX 4 - -#define EM8300_MAJOR 121 -#define EM8300_LOGNAME "em8300" -extern int major; - -#include <linux/version.h> -#include <linux/types.h> /* ulong, uint32_t */ -#include <linux/i2c.h> /* struct i2c_adapter */ -#include <linux/i2c-algo-bit.h> /* struct i2c_algo_bit_data */ -#include <linux/time.h> /* struct timeval */ -#include <linux/wait.h> /* wait_queue_head_t */ -#include <linux/list.h> /* struct list_head */ - -#if defined(CONFIG_SND) || defined(CONFIG_SND_MODULE) -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16) -#define snd_card_t struct snd_card -#else -#include <sound/driver.h> -#include <sound/core.h> -#include <sound/pcm.h> -#endif -#endif - -struct dicom_s { - int luma; - int chroma; - int frametop; - int framebottom; - int frameleft; - int frameright; - int visibletop; - int visiblebottom; - int visibleleft; - int visibleright; - int tvout; -}; - -struct displaybuffer_info_s { - int xsize; - int ysize; - int xsize2; - int flag1,flag2; - int buffer1; - int buffer2; - int unk_present; - int unknown1; - int unknown2; - int unknown3; -}; - -struct em8300_audio_s { - int channels; - int format; - int speed; - int slotsize; - int enable_bits; -}; - -struct em8300_model_config_s { - int use_bt865; - int dicom_other_pal; - int dicom_fix; - int dicom_control; - int bt865_ucode_timeout; - int activate_loopback; -}; - -struct adv717x_model_config_s { - int pixelport_16bit; - int pixelport_other_pal; - int pixeldata_adjust_ntsc; - int pixeldata_adjust_pal; -}; - -struct bt865_model_config_s { -}; - -struct em8300_config_s { - struct em8300_model_config_s model; - struct adv717x_model_config_s adv717x_model; - struct bt865_model_config_s bt865_model; -}; - -struct em8300_s -{ - char name[40]; - - int chip_revision; - int pci_revision; - - int inuse[4]; - int nonblock[4]; - int ucodeloaded; - - struct pci_dev *dev; - ulong adr; - volatile unsigned *mem; - ulong memsize; - - int playmode; - -#if defined(CONFIG_SND) || defined(CONFIG_SND_MODULE) - snd_card_t *alsa_card; -#endif - - /* Fifos */ - struct fifo_s *mvfifo; - struct fifo_s *mafifo; - struct fifo_s *spfifo; - int mtrr_reg; - - /* DICOM */ - int dicom_vertoffset; - int dicom_horizoffset; - int dicom_brightness; - int dicom_contrast; - int dicom_saturation; - int dicom_tvout; - struct displaybuffer_info_s dbuf_info; - - /* I2C */ - int i2c_pin_reg; - int i2c_oe_reg; - - /* different between revision 1 and revision 2 boards */ - int mystery_divisor; - - /* I2C bus 1*/ - struct i2c_algo_bit_data i2c_data_1; - struct i2c_adapter i2c_ops_1; - - /* I2C bus 2*/ - struct i2c_algo_bit_data i2c_data_2; - struct i2c_adapter i2c_ops_2; - - /* I2C clients */ - int encoder_type; - struct i2c_client *encoder; - struct i2c_client *eeprom; - - /* Microcode registers */ - unsigned ucode_regs[MAX_UCODE_REGISTER]; - int var_ucode_reg1; /* These are registers that differ */ - int var_ucode_reg2; /* between versions 1 and 2 of the board */ - int var_ucode_reg3; /* " */ - - /* Interrupt */ - unsigned irqmask; - - /* Clockgenerator */ - int clockgen; - int clockgen_overlaymode; - int clockgen_tvmode; - - /* Timing measurement */ - struct timeval tv, last_status_time; - long irqtimediff; - int irqcount; - int frames; - int scr; - - /* Audio */ - struct em8300_audio_s audio; - int audio_mode; - int pcm_mode; - int dsp_num; - /* Channel status for S/PDIF */ - unsigned int channel_status_pos; - unsigned char channel_status[24]; - enum { NONE, OSS, ALSA } audio_driver_style; - struct semaphore audio_driver_style_lock; - - /* Video */ - int video_mode; - int video_playmode; - int aspect_ratio; - int zoom; - uint32_t video_pts; - uint32_t video_lastpts; - int video_ptsvalid,video_offset,video_count; - int video_ptsfifo_ptr; -#if LINUX_VERSION_CODE < 0x020314 - struct wait_queue *video_ptsfifo_wait; - struct wait_queue *vbi_wait; -#else - wait_queue_head_t video_ptsfifo_wait; - wait_queue_head_t vbi_wait; -#endif - int video_ptsfifo_waiting; - int video_first; - int var_video_value; - - /* Sub Picture */ - int sp_pts, sp_ptsvalid, sp_count; - int sp_ptsfifo_ptr; -#if LINUX_VERSION_CODE < 0x020314 - struct wait_queue *sp_ptsfifo_wait; -#else - wait_queue_head_t sp_ptsfifo_wait; -#endif - int sp_ptsfifo_waiting; - int sp_mode; - - int linecounter; - - /* EM9010 overlay processor */ - int overlay_enabled; - int overlay_mode; - int overlay_gamma_enable; - int overlay_xres; - int overlay_yres; - int overlay_frame_xpos; - int overlay_frame_ypos; - int overlay_frame_width; - int overlay_frame_height; - int overlay_a[EM9010_ATTRIBUTE_MAX+1]; - int overlay_double_y; - int overlay_xcorr_default; - int overlay_70; - int overlay_dword_24bb8; - -#if LINUX_VERSION_CODE > KERNEL_VERSION(2,4,0) - /* Memory exported via mmap() */ - struct list_head memory; -#endif - - /* Checksum for the on-board eeprom */ - u8 *eeprom_checksum; - - int model; - - struct em8300_config_s config; - - /* To support different options for different cards */ - unsigned int card_nr; -}; - -#if defined(CONFIG_SND) || defined(CONFIG_SND_MODULE) -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16) -#undef snd_card_t -#endif -#endif - -#define TIMEDIFF(a,b) a.tv_usec - b.tv_usec + \ - 1000000 * (a.tv_sec - b.tv_sec) - - -/* - Prototypes -*/ - -/* em8300_i2c.c */ -int em8300_i2c_init1(struct em8300_s *em); -int em8300_i2c_init2(struct em8300_s *em); -void em8300_i2c_exit(struct em8300_s *em); -void em8300_clockgen_write(struct em8300_s *em, int abyte); - -void em9010_write(struct em8300_s *em, int reg, int data); -int em9010_read(struct em8300_s *em, int reg); -int em9010_read16(struct em8300_s *em, int reg); -void em9010_write16(struct em8300_s *em, int reg, int value); - -/* em8300_audio.c */ -int em8300_audio_ioctl(struct em8300_s *em,unsigned int cmd, unsigned long arg); -int em8300_audio_flush(struct em8300_s *em); -int em8300_audio_open(struct em8300_s *em); -int em8300_audio_release(struct em8300_s *em); -int em8300_audio_setup(struct em8300_s *em); -ssize_t em8300_audio_write(struct em8300_s *em, const char * buf, - size_t count, loff_t *ppos); -int mpegaudio_command(struct em8300_s *em, int cmd); - -/* em8300_ucode.c */ -void em8300_ucode_upload(struct em8300_s *em, void *ucode, int ucode_size); -void em8300_require_ucode(struct em8300_s *em); - -/* em8300_misc.c */ -int em8300_setregblock(struct em8300_s *em, int offset, int val, int len); -int em8300_writeregblock(struct em8300_s *em, int offset, unsigned *buf, int len); -int em8300_waitfor(struct em8300_s *em, int reg, int val, int mask); -int em8300_waitfor_not(struct em8300_s *em, int reg, int val, int mask); - -/* em8300_dicom.c */ -void em8300_dicom_setBCS(struct em8300_s *em, int brightness, int contrast, int saturation); -void em8300_dicom_enable(struct em8300_s *em); -void em8300_dicom_disable(struct em8300_s *em); -int em8300_dicom_update(struct em8300_s *em); -void em8300_dicom_init(struct em8300_s *em); -int em8300_dicom_get_dbufinfo(struct em8300_s *em); -void em8300_dicom_fill_dispbuffers(struct em8300_s *em, int xpos, int ypos, int xsize, |
From: Christian G. <chr...@gm...> - 2010-02-26 00:45:59
|
changeset c2a066d43f6f in /hgrepo/d/dx/dxr3/em8300 details: http://dxr3.hg.sourceforge.net/hgweb/dxr3/em8300?cmd=changeset;node=c2a066d43f6f description: merge with http://dxr3.hg.sourceforge.net/hgweb/dxr3/em8300 diffstat: include/linux/em8300.h | 8 ++++---- modules/em8300_i2c.c | 8 ++++++-- modules/em8300_spu.c | 1 + 3 files changed, 11 insertions(+), 6 deletions(-) diffs (50 lines): diff -r 2ca3bb84c9d0 -r c2a066d43f6f include/linux/em8300.h --- a/include/linux/em8300.h Wed Dec 02 11:22:14 2009 +0100 +++ b/include/linux/em8300.h Tue Dec 08 15:06:48 2009 +0100 @@ -114,13 +114,13 @@ #define EM8300_OVERLAY_SIGNAL_WITH_VGA 2 #define EM8300_OVERLAY_VGA_ONLY 3 -#define EM8300_IOCTL_VIDEO_SETPTS 1 +#define EM8300_IOCTL_VIDEO_SETPTS _IOW('C',1,int) #define EM8300_IOCTL_VIDEO_GETSCR _IOR('C',2,unsigned) #define EM8300_IOCTL_VIDEO_SETSCR _IOW('C',2,unsigned) -#define EM8300_IOCTL_SPU_SETPTS 1 -#define EM8300_IOCTL_SPU_SETPALETTE 2 -#define EM8300_IOCTL_SPU_BUTTON 3 +#define EM8300_IOCTL_SPU_SETPTS _IOW('C',1,int) +#define EM8300_IOCTL_SPU_SETPALETTE _IOW('C',2,unsigned[16]) +#define EM8300_IOCTL_SPU_BUTTON _IOW('C',3,em8300_button_t) #define EM8300_ASPECTRATIO_4_3 0 #define EM8300_ASPECTRATIO_16_9 1 diff -r 2ca3bb84c9d0 -r c2a066d43f6f modules/em8300_i2c.c --- a/modules/em8300_i2c.c Wed Dec 02 11:22:14 2009 +0100 +++ b/modules/em8300_i2c.c Tue Dec 08 15:06:48 2009 +0100 @@ -449,8 +449,12 @@ set_current_state(TASK_UNINTERRUPTIBLE); schedule_timeout(HZ/10); } - if (!em->encoder->driver) - printk(KERN_WARNING "em8300-%d: encoder chip found but no driver found within 5 seconds\n", em->card_nr); + if (!em->encoder->driver) { + printk(KERN_ERR "em8300-%d: encoder chip found but no driver found within 5 seconds\n", em->card_nr); + i2c_unregister_device(em->encoder); + em->encoder = NULL; + return 0; + } em8300_i2c_lock_client(em->encoder); if (!strncmp(em->encoder->name, "ADV7175", 7)) { diff -r 2ca3bb84c9d0 -r c2a066d43f6f modules/em8300_spu.c --- a/modules/em8300_spu.c Wed Dec 02 11:22:14 2009 +0100 +++ b/modules/em8300_spu.c Tue Dec 08 15:06:48 2009 +0100 @@ -44,6 +44,7 @@ #include "em8300_reg.h" #include <linux/em8300.h> #include "em8300_driver.h" +#include <linux/ioctl.h> #include "em8300_fifo.h" #include "em8300_compat24.h" |
From: Christian G. <chr...@gm...> - 2010-02-26 00:45:58
|
changeset 6a6e0cc4f4c5 in /hgrepo/d/dx/dxr3/em8300 details: http://dxr3.hg.sourceforge.net/hgweb/dxr3/em8300?cmd=changeset;node=6a6e0cc4f4c5 description: fix autodetection with linux < 2.6.22 diffstat: modules/em8300_i2c.c | 19 ++++++++----------- 1 files changed, 8 insertions(+), 11 deletions(-) diffs (42 lines): diff -r c2a066d43f6f -r 6a6e0cc4f4c5 modules/em8300_i2c.c --- a/modules/em8300_i2c.c Tue Dec 08 15:06:48 2009 +0100 +++ b/modules/em8300_i2c.c Wed Dec 09 10:59:35 2009 +0100 @@ -375,13 +375,10 @@ i2c_set_adapdata(&em->i2c_adap[i], (void *)em); } - ret = i2c_bit_add_bus(&em->i2c_adap[0]); - if (ret) - goto err; + /* add only bus 2 */ ret = i2c_bit_add_bus(&em->i2c_adap[1]); if (ret) - goto err_del_bus_0; - return 0; + return ret; #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,27) request_module("eeprom"); @@ -398,16 +395,16 @@ } #endif return 0; - - err_del_bus_0: - i2c_del_adapter(&em->i2c_adap[0]); - err: - return ret; } int em8300_i2c_init2(struct em8300_s *em) { - int i; + int i, ret; + + /* add only bus 1 */ + ret = i2c_bit_add_bus(&em->i2c_adap[0]); + if (ret) + return ret;; if (known_models[em->model].module.name != NULL) request_module(known_models[em->model].module.name); |
From: Christian G. <chr...@gm...> - 2010-02-26 00:45:33
|
changeset 2ca3bb84c9d0 in /hgrepo/d/dx/dxr3/em8300 details: http://dxr3.hg.sourceforge.net/hgweb/dxr3/em8300?cmd=changeset;node=2ca3bb84c9d0 description: fix some stuff reported by checkpatch.pl diffstat: modules/em8300_i2c.c | 15 +++++++-------- 1 files changed, 7 insertions(+), 8 deletions(-) diffs (67 lines): diff -r 581ded5b8008 -r 2ca3bb84c9d0 modules/em8300_i2c.c --- a/modules/em8300_i2c.c Wed Dec 02 11:02:58 2009 +0100 +++ b/modules/em8300_i2c.c Wed Dec 02 11:22:14 2009 +0100 @@ -71,7 +71,7 @@ /* software I2C functions */ -static void em8300_setscl(void *data,int state) +static void em8300_setscl(void *data, int state) { struct private_data_s *p = (struct private_data_s *) data; struct em8300_s *em = p->em; @@ -192,7 +192,7 @@ ¶m); param.param = ENCODER_PARAM_PPORT; param.modes = NTSC_MODES_MASK; - param.val = em->config.adv717x_model.pixelport_16bit?1:0; + param.val = em->config.adv717x_model.pixelport_16bit ? 1 : 0; client->driver->command(client, ENCODER_CMD_SETPARAM, ¶m); param.modes = PAL_MODES_MASK; @@ -357,7 +357,7 @@ pdata->em = em; em->i2c_algo[1].data = pdata; - + /* Setup i2c adapters */ @@ -402,7 +402,7 @@ err_del_bus_0: i2c_del_adapter(&em->i2c_adap[0]); err: - return ret; + return ret; } int em8300_i2c_init2(struct em8300_s *em) @@ -428,8 +428,7 @@ em->encoder = i2c_new_device(&em->i2c_adap[0], &i2c_info); if (em->encoder) goto found; - } - else { + } else { struct i2c_board_info i2c_info; const unsigned short adv717x_addr[] = { 0x6a, I2C_CLIENT_END }; const unsigned short bt865_addr[] = { 0x45, I2C_CLIENT_END }; @@ -492,7 +491,7 @@ /* unregister i2c_bus */ for (i = 0; i < 2; i++) { - kfree(em->i2c_algo[i].data); + kfree(em->i2c_algo[i].data); #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) i2c_del_adapter(&em->i2c_adap[i]); #else @@ -506,7 +505,7 @@ int i; write_register(em->i2c_pin_reg, 0x808); - for (i=0; i < 8; i++) { + for (i = 0; i < 8; i++) { write_register(em->i2c_pin_reg, 0x2000); write_register(em->i2c_pin_reg, 0x800 | ((abyte & 1) ? 8 : 0)); write_register(em->i2c_pin_reg, 0x2020); |
From: Christian G. <chr...@gm...> - 2010-02-26 00:45:23
|
changeset 581ded5b8008 in /hgrepo/d/dx/dxr3/em8300 details: http://dxr3.hg.sourceforge.net/hgweb/dxr3/em8300?cmd=changeset;node=581ded5b8008 description: restruct code to make use of arrays diffstat: modules/em8300_i2c.c | 56 ++++++++++++++++++--------------------------------- 1 files changed, 20 insertions(+), 36 deletions(-) diffs (101 lines): diff -r 00537078a9bf -r 581ded5b8008 modules/em8300_i2c.c --- a/modules/em8300_i2c.c Wed Dec 02 10:55:04 2009 +0100 +++ b/modules/em8300_i2c.c Wed Dec 02 11:02:58 2009 +0100 @@ -312,7 +312,7 @@ int em8300_i2c_init1(struct em8300_s *em) { - int ret; + int ret, i; struct private_data_s *pdata; //request_module("i2c-algo-bit"); @@ -337,11 +337,12 @@ write_register(em->i2c_pin_reg, 0x0101); write_register(em->i2c_pin_reg, 0x0808); + /* - Setup info structure for bus 1 + Setup algo data structs */ - em->i2c_algo[0] = em8300_i2c_algo_template; + em->i2c_algo[1] = em8300_i2c_algo_template; pdata = kmalloc(sizeof(struct private_data_s), GFP_KERNEL); pdata->clk = 0x10; @@ -350,45 +351,29 @@ em->i2c_algo[0].data = pdata; - - /* Setup adapter */ - memcpy(&em->i2c_adap[0], &em8300_i2c_adap_template, - sizeof(struct i2c_adapter)); - sprintf(em->i2c_adap[0].name + strlen(em->i2c_adap[0].name), - " #%d-%d", em->card_nr, 0); - em->i2c_adap[0].algo_data = &em->i2c_algo[0]; -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) - em->i2c_adap[0].dev.parent = &em->dev->dev; -#endif - - i2c_set_adapdata(&em->i2c_adap[0], (void *)em); - - - /* - Setup info structure for bus 2 - */ - - em->i2c_algo[1] = em8300_i2c_algo_template; - pdata = kmalloc(sizeof(struct private_data_s), GFP_KERNEL); pdata->clk = 0x4; pdata->data = 0x8; pdata->em = em; em->i2c_algo[1].data = pdata; - - - /* Setup adapter */ - memcpy(&em->i2c_adap[1], &em8300_i2c_adap_template, - sizeof(struct i2c_adapter)); - sprintf(em->i2c_adap[1].name + strlen(em->i2c_adap[1].name), - " #%d-%d", em->card_nr, 1); - em->i2c_adap[1].algo_data = &em->i2c_algo[1]; + + /* + Setup i2c adapters + */ + for (i = 0; i < 2; i++) { + /* Setup adapter */ + memcpy(&em->i2c_adap[i], &em8300_i2c_adap_template, + sizeof(struct i2c_adapter)); + sprintf(em->i2c_adap[i].name + strlen(em->i2c_adap[i].name), + " #%d-%d", em->card_nr, i); + em->i2c_adap[i].algo_data = &em->i2c_algo[i]; #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) - em->i2c_adap[1].dev.parent = &em->dev->dev; + em->i2c_adap[i].dev.parent = &em->dev->dev; #endif - i2c_set_adapdata(&em->i2c_adap[1], (void *)em); + i2c_set_adapdata(&em->i2c_adap[i], (void *)em); + } ret = i2c_bit_add_bus(&em->i2c_adap[0]); if (ret) @@ -504,11 +489,10 @@ em->encoder = NULL; } #endif + /* unregister i2c_bus */ - kfree(em->i2c_algo[0].data); - kfree(em->i2c_algo[1].data); - for (i = 0; i < 2; i++) { + kfree(em->i2c_algo[i].data); #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) i2c_del_adapter(&em->i2c_adap[i]); #else |
From: Christian G. <chr...@gm...> - 2010-02-26 00:45:11
|
changeset 00537078a9bf in /hgrepo/d/dx/dxr3/em8300 details: http://dxr3.hg.sourceforge.net/hgweb/dxr3/em8300?cmd=changeset;node=00537078a9bf description: introduce i2c_algo_bit_data array diffstat: modules/em8300_driver.h | 7 +------ modules/em8300_i2c.c | 16 ++++++++-------- 2 files changed, 9 insertions(+), 14 deletions(-) diffs (87 lines): diff -r f91ad24fb5b8 -r 00537078a9bf modules/em8300_driver.h --- a/modules/em8300_driver.h Wed Dec 02 10:52:17 2009 +0100 +++ b/modules/em8300_driver.h Wed Dec 02 10:55:04 2009 +0100 @@ -155,16 +155,11 @@ int i2c_pin_reg; int i2c_oe_reg; struct i2c_adapter i2c_adap[2]; + struct i2c_algo_bit_data i2c_algo[2]; /* different between revision 1 and revision 2 boards */ int mystery_divisor; - /* I2C bus 1*/ - struct i2c_algo_bit_data i2c_data_1; - - /* I2C bus 2*/ - struct i2c_algo_bit_data i2c_data_2; - /* I2C clients */ int encoder_type; struct i2c_client *encoder; diff -r f91ad24fb5b8 -r 00537078a9bf modules/em8300_i2c.c --- a/modules/em8300_i2c.c Wed Dec 02 10:52:17 2009 +0100 +++ b/modules/em8300_i2c.c Wed Dec 02 10:55:04 2009 +0100 @@ -341,14 +341,14 @@ Setup info structure for bus 1 */ - em->i2c_data_1 = em8300_i2c_algo_template; + em->i2c_algo[0] = em8300_i2c_algo_template; pdata = kmalloc(sizeof(struct private_data_s), GFP_KERNEL); pdata->clk = 0x10; pdata->data = 0x8; pdata->em = em; - em->i2c_data_1.data = pdata; + em->i2c_algo[0].data = pdata; /* Setup adapter */ @@ -356,7 +356,7 @@ sizeof(struct i2c_adapter)); sprintf(em->i2c_adap[0].name + strlen(em->i2c_adap[0].name), " #%d-%d", em->card_nr, 0); - em->i2c_adap[0].algo_data = &em->i2c_data_1; + em->i2c_adap[0].algo_data = &em->i2c_algo[0]; #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) em->i2c_adap[0].dev.parent = &em->dev->dev; #endif @@ -368,14 +368,14 @@ Setup info structure for bus 2 */ - em->i2c_data_2 = em8300_i2c_algo_template; + em->i2c_algo[1] = em8300_i2c_algo_template; pdata = kmalloc(sizeof(struct private_data_s), GFP_KERNEL); pdata->clk = 0x4; pdata->data = 0x8; pdata->em = em; - em->i2c_data_2.data = pdata; + em->i2c_algo[1].data = pdata; /* Setup adapter */ @@ -383,7 +383,7 @@ sizeof(struct i2c_adapter)); sprintf(em->i2c_adap[1].name + strlen(em->i2c_adap[1].name), " #%d-%d", em->card_nr, 1); - em->i2c_adap[1].algo_data = &em->i2c_data_2; + em->i2c_adap[1].algo_data = &em->i2c_algo[1]; #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) em->i2c_adap[1].dev.parent = &em->dev->dev; #endif @@ -505,8 +505,8 @@ } #endif /* unregister i2c_bus */ - kfree(em->i2c_data_1.data); - kfree(em->i2c_data_2.data); + kfree(em->i2c_algo[0].data); + kfree(em->i2c_algo[1].data); for (i = 0; i < 2; i++) { #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) |
From: Christian G. <chr...@gm...> - 2010-02-26 00:44:56
|
changeset f91ad24fb5b8 in /hgrepo/d/dx/dxr3/em8300 details: http://dxr3.hg.sourceforge.net/hgweb/dxr3/em8300?cmd=changeset;node=f91ad24fb5b8 description: create nicer names for i2c adapters diffstat: modules/em8300_i2c.c | 7 +++++-- 1 files changed, 5 insertions(+), 2 deletions(-) diffs (31 lines): diff -r ba1e7c3e54b0 -r f91ad24fb5b8 modules/em8300_i2c.c --- a/modules/em8300_i2c.c Wed Dec 02 10:49:50 2009 +0100 +++ b/modules/em8300_i2c.c Wed Dec 02 10:52:17 2009 +0100 @@ -294,6 +294,7 @@ /* template for i2c-bit-algo */ static struct i2c_adapter em8300_i2c_adap_template = { + .name = "em8300 i2c driver", #if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 31) .id = I2C_HW_B_EM8300, #endif @@ -353,7 +354,8 @@ /* Setup adapter */ memcpy(&em->i2c_adap[0], &em8300_i2c_adap_template, sizeof(struct i2c_adapter)); - strcpy(em->i2c_adap[0].name, "EM8300 I2C bus 1"); + sprintf(em->i2c_adap[0].name + strlen(em->i2c_adap[0].name), + " #%d-%d", em->card_nr, 0); em->i2c_adap[0].algo_data = &em->i2c_data_1; #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) em->i2c_adap[0].dev.parent = &em->dev->dev; @@ -379,7 +381,8 @@ /* Setup adapter */ memcpy(&em->i2c_adap[1], &em8300_i2c_adap_template, sizeof(struct i2c_adapter)); - strcpy(em->i2c_adap[1].name, "EM8300 I2C bus 2"); + sprintf(em->i2c_adap[1].name + strlen(em->i2c_adap[1].name), + " #%d-%d", em->card_nr, 1); em->i2c_adap[1].algo_data = &em->i2c_data_2; #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) em->i2c_adap[1].dev.parent = &em->dev->dev; |
From: Christian G. <chr...@gm...> - 2010-02-26 00:43:24
|
changeset 9026038a85d3 in /hgrepo/d/dx/dxr3/em8300 details: http://dxr3.hg.sourceforge.net/hgweb/dxr3/em8300?cmd=changeset;node=9026038a85d3 description: move setup of bus 1 to em8300_i2c_init1 diffstat: modules/em8300_i2c.c | 70 ++++++++++++++++++++++++++++----------------------- 1 files changed, 38 insertions(+), 32 deletions(-) diffs (100 lines): diff -r bd1dbfd3b1e7 -r 9026038a85d3 modules/em8300_i2c.c --- a/modules/em8300_i2c.c Wed Dec 02 10:44:49 2009 +0100 +++ b/modules/em8300_i2c.c Wed Dec 02 10:48:12 2009 +0100 @@ -337,6 +337,32 @@ write_register(em->i2c_pin_reg, 0x0808); /* + Setup info structure for bus 1 + */ + + em->i2c_data_1 = em8300_i2c_algo_template; + + pdata = kmalloc(sizeof(struct private_data_s), GFP_KERNEL); + pdata->clk = 0x10; + pdata->data = 0x8; + pdata->em = em; + + em->i2c_data_1.data = pdata; + + + /* Setup adapter */ + memcpy(&em->i2c_adap[0], &em8300_i2c_adap_template, + sizeof(struct i2c_adapter)); + strcpy(em->i2c_adap[0].name, "EM8300 I2C bus 1"); + em->i2c_adap[0].algo_data = &em->i2c_data_1; +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) + em->i2c_adap[0].dev.parent = &em->dev->dev; +#endif + + i2c_set_adapdata(&em->i2c_adap[0], (void *)em); + + + /* Setup info structure for bus 2 */ @@ -361,8 +387,13 @@ i2c_set_adapdata(&em->i2c_adap[1], (void *)em); - if ((ret = i2c_bit_add_bus(&em->i2c_adap[1]))) - return ret; + ret = i2c_bit_add_bus(&em->i2c_adap[0]); + if (ret) + goto err; + ret = i2c_bit_add_bus(&em->i2c_adap[1]); + if (ret) + goto err_del_bus_0; + return 0; #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,27) request_module("eeprom"); @@ -379,42 +410,17 @@ } #endif return 0; + + err_del_bus_0: + i2c_del_adapter(&em->i2c_adap[0]); + err: + return ret; } int em8300_i2c_init2(struct em8300_s *em) { - int ret; - struct private_data_s *pdata; int i; - /* - Setup info structure for bus 1 - */ - - em->i2c_data_1 = em8300_i2c_algo_template; - - pdata = kmalloc(sizeof(struct private_data_s), GFP_KERNEL); - pdata->clk = 0x10; - pdata->data = 0x8; - pdata->em = em; - - em->i2c_data_1.data = pdata; - - - /* Setup adapter */ - memcpy(&em->i2c_adap[0], &em8300_i2c_adap_template, - sizeof(struct i2c_adapter)); - strcpy(em->i2c_adap[0].name, "EM8300 I2C bus 1"); - em->i2c_adap[0].algo_data = &em->i2c_data_1; -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) - em->i2c_adap[0].dev.parent = &em->dev->dev; -#endif - - i2c_set_adapdata(&em->i2c_adap[0], (void *)em); - - if ((ret = i2c_bit_add_bus(&em->i2c_adap[0]))) - return ret; - if (known_models[em->model].module.name != NULL) request_module(known_models[em->model].module.name); #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,22) |
From: Christian G. <chr...@gm...> - 2010-02-26 00:42:52
|
changeset bd1dbfd3b1e7 in /hgrepo/d/dx/dxr3/em8300 details: http://dxr3.hg.sourceforge.net/hgweb/dxr3/em8300?cmd=changeset;node=bd1dbfd3b1e7 description: make use of array in em8300_i2c_exit diffstat: modules/em8300_i2c.c | 10 ++++++---- 1 files changed, 6 insertions(+), 4 deletions(-) diffs (30 lines): diff -r 7b85d34643ce -r bd1dbfd3b1e7 modules/em8300_i2c.c --- a/modules/em8300_i2c.c Wed Dec 02 10:42:44 2009 +0100 +++ b/modules/em8300_i2c.c Wed Dec 02 10:44:49 2009 +0100 @@ -479,6 +479,7 @@ void em8300_i2c_exit(struct em8300_s *em) { + int i; #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,27) if (em->eeprom) { sysfs_remove_link(&em->dev->dev.kobj, "eeprom"); @@ -497,13 +498,14 @@ /* unregister i2c_bus */ kfree(em->i2c_data_1.data); kfree(em->i2c_data_2.data); + + for (i = 0; i < 2; i++) { #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) - i2c_del_adapter(&em->i2c_adap[0]); - i2c_del_adapter(&em->i2c_adap[1]); + i2c_del_adapter(&em->i2c_adap[i]); #else - i2c_bit_del_bus(&em->i2c_adap[0]); - i2c_bit_del_bus(&em->i2c_adap[1]); + i2c_bit_del_bus(&em->i2c_adap[i]); #endif + } } void em8300_clockgen_write(struct em8300_s *em, int abyte) |
From: Christian G. <chr...@gm...> - 2010-02-26 00:36:36
|
changeset 9b91cd4c427c in /hgrepo/d/dx/dxr3/em8300 details: http://dxr3.hg.sourceforge.net/hgweb/dxr3/em8300?cmd=changeset;node=9b91cd4c427c description: move defines and datastructes used for driver compilation into em8300_driver.h file and remove it from em8300.h diffstat: include/linux/em8300.h | 348 -------------------------------------- modules/adv717x.c | 4 +- modules/bt865.c | 1 + modules/em8300_audio.c | 1 + modules/em8300_dicom.c | 1 + modules/em8300_driver.h | 377 ++++++++++++++++++++++++++++++++++++++++++ modules/em8300_eeprom.c | 1 + modules/em8300_fifo.c | 1 + modules/em8300_i2c.c | 1 + modules/em8300_ioctl.c | 1 + modules/em8300_main.c | 1 + modules/em8300_misc.c | 1 + modules/em8300_models.h | 1 + modules/em8300_params.c | 1 + modules/em8300_registration.h | 1 + modules/em8300_spu.c | 1 + modules/em8300_ucode.c | 1 + modules/em8300_video.c | 1 + modules/em9010.c | 1 + 19 files changed, 396 insertions(+), 349 deletions(-) diffs (truncated from 929 to 300 lines): diff -r a6d163d06147 -r 9b91cd4c427c include/linux/em8300.h --- a/include/linux/em8300.h Wed Sep 30 23:02:54 2009 +0200 +++ b/include/linux/em8300.h Mon Nov 30 21:25:23 2009 +0100 @@ -219,352 +219,4 @@ #define ENCODER_ADV7170 2 #define ENCODER_BT865 3 -#ifdef __KERNEL__ - -#define EM8300_MAX 4 - -#define EM8300_MAJOR 121 -#define EM8300_LOGNAME "em8300" -extern int major; - -#include <linux/version.h> -#include <linux/types.h> /* ulong, uint32_t */ -#include <linux/i2c.h> /* struct i2c_adapter */ -#include <linux/i2c-algo-bit.h> /* struct i2c_algo_bit_data */ -#include <linux/time.h> /* struct timeval */ -#include <linux/wait.h> /* wait_queue_head_t */ -#include <linux/list.h> /* struct list_head */ - -#if defined(CONFIG_SND) || defined(CONFIG_SND_MODULE) -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16) -#define snd_card_t struct snd_card -#else -#include <sound/driver.h> -#include <sound/core.h> -#include <sound/pcm.h> -#endif -#endif - -struct dicom_s { - int luma; - int chroma; - int frametop; - int framebottom; - int frameleft; - int frameright; - int visibletop; - int visiblebottom; - int visibleleft; - int visibleright; - int tvout; -}; - -struct displaybuffer_info_s { - int xsize; - int ysize; - int xsize2; - int flag1,flag2; - int buffer1; - int buffer2; - int unk_present; - int unknown1; - int unknown2; - int unknown3; -}; - -struct em8300_audio_s { - int channels; - int format; - int speed; - int slotsize; - int enable_bits; -}; - -struct em8300_model_config_s { - int use_bt865; - int dicom_other_pal; - int dicom_fix; - int dicom_control; - int bt865_ucode_timeout; - int activate_loopback; -}; - -struct adv717x_model_config_s { - int pixelport_16bit; - int pixelport_other_pal; - int pixeldata_adjust_ntsc; - int pixeldata_adjust_pal; -}; - -struct bt865_model_config_s { -}; - -struct em8300_config_s { - struct em8300_model_config_s model; - struct adv717x_model_config_s adv717x_model; - struct bt865_model_config_s bt865_model; -}; - -struct em8300_s -{ - char name[40]; - - int chip_revision; - int pci_revision; - - int inuse[4]; - int nonblock[4]; - int ucodeloaded; - - struct pci_dev *dev; - ulong adr; - volatile unsigned *mem; - ulong memsize; - - int playmode; - -#if defined(CONFIG_SND) || defined(CONFIG_SND_MODULE) - snd_card_t *alsa_card; -#endif - - /* Fifos */ - struct fifo_s *mvfifo; - struct fifo_s *mafifo; - struct fifo_s *spfifo; - int mtrr_reg; - - /* DICOM */ - int dicom_vertoffset; - int dicom_horizoffset; - int dicom_brightness; - int dicom_contrast; - int dicom_saturation; - int dicom_tvout; - struct displaybuffer_info_s dbuf_info; - - /* I2C */ - int i2c_pin_reg; - int i2c_oe_reg; - - /* different between revision 1 and revision 2 boards */ - int mystery_divisor; - - /* I2C bus 1*/ - struct i2c_algo_bit_data i2c_data_1; - struct i2c_adapter i2c_ops_1; - - /* I2C bus 2*/ - struct i2c_algo_bit_data i2c_data_2; - struct i2c_adapter i2c_ops_2; - - /* I2C clients */ - int encoder_type; - struct i2c_client *encoder; - struct i2c_client *eeprom; - - /* Microcode registers */ - unsigned ucode_regs[MAX_UCODE_REGISTER]; - int var_ucode_reg1; /* These are registers that differ */ - int var_ucode_reg2; /* between versions 1 and 2 of the board */ - int var_ucode_reg3; /* " */ - - /* Interrupt */ - unsigned irqmask; - - /* Clockgenerator */ - int clockgen; - int clockgen_overlaymode; - int clockgen_tvmode; - - /* Timing measurement */ - struct timeval tv, last_status_time; - long irqtimediff; - int irqcount; - int frames; - int scr; - - /* Audio */ - struct em8300_audio_s audio; - int audio_mode; - int pcm_mode; - int dsp_num; - /* Channel status for S/PDIF */ - unsigned int channel_status_pos; - unsigned char channel_status[24]; - enum { NONE, OSS, ALSA } audio_driver_style; - struct semaphore audio_driver_style_lock; - - /* Video */ - int video_mode; - int video_playmode; - int aspect_ratio; - int zoom; - uint32_t video_pts; - uint32_t video_lastpts; - int video_ptsvalid,video_offset,video_count; - int video_ptsfifo_ptr; -#if LINUX_VERSION_CODE < 0x020314 - struct wait_queue *video_ptsfifo_wait; - struct wait_queue *vbi_wait; -#else - wait_queue_head_t video_ptsfifo_wait; - wait_queue_head_t vbi_wait; -#endif - int video_ptsfifo_waiting; - int video_first; - int var_video_value; - - /* Sub Picture */ - int sp_pts, sp_ptsvalid, sp_count; - int sp_ptsfifo_ptr; -#if LINUX_VERSION_CODE < 0x020314 - struct wait_queue *sp_ptsfifo_wait; -#else - wait_queue_head_t sp_ptsfifo_wait; -#endif - int sp_ptsfifo_waiting; - int sp_mode; - - int linecounter; - - /* EM9010 overlay processor */ - int overlay_enabled; - int overlay_mode; - int overlay_gamma_enable; - int overlay_xres; - int overlay_yres; - int overlay_frame_xpos; - int overlay_frame_ypos; - int overlay_frame_width; - int overlay_frame_height; - int overlay_a[EM9010_ATTRIBUTE_MAX+1]; - int overlay_double_y; - int overlay_xcorr_default; - int overlay_70; - int overlay_dword_24bb8; - -#if LINUX_VERSION_CODE > KERNEL_VERSION(2,4,0) - /* Memory exported via mmap() */ - struct list_head memory; -#endif - - /* Checksum for the on-board eeprom */ - u8 *eeprom_checksum; - - int model; - - struct em8300_config_s config; - - /* To support different options for different cards */ - unsigned int card_nr; -}; - -#if defined(CONFIG_SND) || defined(CONFIG_SND_MODULE) -#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,16) -#undef snd_card_t -#endif -#endif - -#define TIMEDIFF(a,b) a.tv_usec - b.tv_usec + \ - 1000000 * (a.tv_sec - b.tv_sec) - - -/* - Prototypes -*/ - -/* em8300_i2c.c */ -int em8300_i2c_init1(struct em8300_s *em); -int em8300_i2c_init2(struct em8300_s *em); -void em8300_i2c_exit(struct em8300_s *em); -void em8300_clockgen_write(struct em8300_s *em, int abyte); - -void em9010_write(struct em8300_s *em, int reg, int data); -int em9010_read(struct em8300_s *em, int reg); -int em9010_read16(struct em8300_s *em, int reg); -void em9010_write16(struct em8300_s *em, int reg, int value); - -/* em8300_audio.c */ -int em8300_audio_ioctl(struct em8300_s *em,unsigned int cmd, unsigned long arg); -int em8300_audio_flush(struct em8300_s *em); -int em8300_audio_open(struct em8300_s *em); -int em8300_audio_release(struct em8300_s *em); -int em8300_audio_setup(struct em8300_s *em); -ssize_t em8300_audio_write(struct em8300_s *em, const char * buf, - size_t count, loff_t *ppos); -int mpegaudio_command(struct em8300_s *em, int cmd); - -/* em8300_ucode.c */ -void em8300_ucode_upload(struct em8300_s *em, void *ucode, int ucode_size); -void em8300_require_ucode(struct em8300_s *em); - -/* em8300_misc.c */ -int em8300_setregblock(struct em8300_s *em, int offset, int val, int len); -int em8300_writeregblock(struct em8300_s *em, int offset, unsigned *buf, int len); -int em8300_waitfor(struct em8300_s *em, int reg, int val, int mask); -int em8300_waitfor_not(struct em8300_s *em, int reg, int val, int mask); - -/* em8300_dicom.c */ -void em8300_dicom_setBCS(struct em8300_s *em, int brightness, int contrast, int saturation); -void em8300_dicom_enable(struct em8300_s *em); -void em8300_dicom_disable(struct em8300_s *em); -int em8300_dicom_update(struct em8300_s *em); -void em8300_dicom_init(struct em8300_s *em); -int em8300_dicom_get_dbufinfo(struct em8300_s *em); -void em8300_dicom_fill_dispbuffers(struct em8300_s *em, int xpos, int ypos, int xsize, |
From: Ville S. <vil...@ik...> - 2010-02-14 21:30:35
|
changeset e29666fdd240 in /hgrepo/d/dx/dxr3/em8300 details: http://dxr3.hg.sourceforge.net/hgweb/dxr3/em8300?cmd=changeset;node=e29666fdd240 description: Fix overlay build with --no-add-needed. diffstat: configure.ac | 7 +++++++ overlay/Makefile.am | 4 ++-- 2 files changed, 9 insertions(+), 2 deletions(-) diffs (38 lines): diff -r c2608b4c43e0 -r e29666fdd240 configure.ac --- a/configure.ac Sun Dec 20 23:28:11 2009 +0100 +++ b/configure.ac Sun Feb 14 23:28:02 2010 +0200 @@ -45,6 +45,13 @@ if test x$has_gtk = xyes; then AC_DEFINE(HAVE_GTK, 1, [Defined if you have GTK]) + old_LIBS="$LIBS" + LIBS="" + AC_SEARCH_LIBS([XSetForeground], [X11]) + AC_SEARCH_LIBS([rint], [m]) + OVERLAY_LIBS="$LIBS" + AC_SUBST(OVERLAY_LIBS) + LIBS="$old_LIBS" fi AM_CONDITIONAL(HAVE_GTK, test x$has_gtk = "xyes") diff -r c2608b4c43e0 -r e29666fdd240 overlay/Makefile.am --- a/overlay/Makefile.am Sun Dec 20 23:28:11 2009 +0100 +++ b/overlay/Makefile.am Sun Feb 14 23:28:02 2010 +0200 @@ -2,7 +2,7 @@ AM_CFLAGS = @GLOBAL_CFLAGS@ $(GTK_CFLAGS) INCLUDES = -I@top_srcdir@/include -AM_LDFLAGS = $(GTK_LIBS) +AM_LDFLAGS = $(GTK_LIBS) $(OVERLAY_LIBS) bin_PROGRAMS = autocal dxr3view noinst_HEADERS = autocal.h allblackbut.h overlay.h @@ -12,7 +12,7 @@ dxr3view_SOURCES = dxr3view.c overlay.c debug: - $(MAKE) CFLAGS="$(DEBUG_CFLAGS) $(GTK_LIBS)" + $(MAKE) CFLAGS="$(DEBUG_CFLAGS) $(GTK_LIBS) $(OVERLAY_LIBS)" mostlyclean-generic: -rm -f *~ \#* .*~ .\#* |