From a48f263c533cc051b98199efce02c3bb33f37d8e Mon Sep 17 00:00:00 2001 From: Atsushi Nemoto Date: Mon, 12 Nov 2007 01:05:16 +0900 Subject: [PATCH] --- yaml --- r: 75285 b: refs/heads/master c: c4eee283e004751143fb81dbf4f8cfe7b8dcc970 h: refs/heads/master i: 75283: ae475dfd3b7fa6b8ea60e3a8a5d08aee76f28dc4 v: v3 --- [refs] | 2 +- trunk/arch/arm/mach-at91/board-ek.c | 9 --------- trunk/arch/arm/mach-pxa/pxa25x.c | 13 +------------ trunk/arch/mips/Kconfig | 4 ++-- trunk/drivers/media/video/bt8xx/bttv-driver.c | 4 +++- trunk/drivers/media/video/ivtv/ivtv-driver.c | 4 ---- trunk/drivers/media/video/ivtv/ivtv-i2c.c | 5 ++++- 7 files changed, 11 insertions(+), 30 deletions(-) diff --git a/[refs] b/[refs] index 9125c8e28b54..edbec1b9a307 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 89a30a8388c9592579f237bc06988808f2c454d4 +refs/heads/master: c4eee283e004751143fb81dbf4f8cfe7b8dcc970 diff --git a/trunk/arch/arm/mach-at91/board-ek.c b/trunk/arch/arm/mach-at91/board-ek.c index 53a5ef9e72ee..d05b1b2be9fb 100644 --- a/trunk/arch/arm/mach-at91/board-ek.c +++ b/trunk/arch/arm/mach-at91/board-ek.c @@ -109,15 +109,6 @@ static struct spi_board_info ek_spi_devices[] = { #endif }; -static struct i2c_board_info __initdata ek_i2c_devices[] = { - { - I2C_BOARD_INFO("ics1523", 0x26), - }, - { - I2C_BOARD_INFO("dac3550", 0x4d), - } -}; - #define EK_FLASH_BASE AT91_CHIPSELECT_0 #define EK_FLASH_SIZE 0x200000 diff --git a/trunk/arch/arm/mach-pxa/pxa25x.c b/trunk/arch/arm/mach-pxa/pxa25x.c index 9732d5d9466b..dcd81f8d0833 100644 --- a/trunk/arch/arm/mach-pxa/pxa25x.c +++ b/trunk/arch/arm/mach-pxa/pxa25x.c @@ -178,19 +178,13 @@ static void pxa25x_cpu_pm_save(unsigned long *sleep_save) SAVE(GAFR1_L); SAVE(GAFR1_U); SAVE(GAFR2_L); SAVE(GAFR2_U); - SAVE(ICMR); ICMR = 0; + SAVE(ICMR); SAVE(CKEN); SAVE(PSTR); - - /* Clear GPIO transition detect bits */ - GEDR0 = GEDR0; GEDR1 = GEDR1; GEDR2 = GEDR2; } static void pxa25x_cpu_pm_restore(unsigned long *sleep_save) { - /* ensure not to come back here if it wasn't intended */ - PSPR = 0; - /* restore registers */ RESTORE_GPLEVEL(0); RESTORE_GPLEVEL(1); RESTORE_GPLEVEL(2); RESTORE(GPDR0); RESTORE(GPDR1); RESTORE(GPDR2); @@ -201,12 +195,7 @@ static void pxa25x_cpu_pm_restore(unsigned long *sleep_save) RESTORE(GFER0); RESTORE(GFER1); RESTORE(GFER2); RESTORE(PGSR0); RESTORE(PGSR1); RESTORE(PGSR2); - PSSR = PSSR_RDH | PSSR_PH; - RESTORE(CKEN); - - ICLR = 0; - ICCR = 1; RESTORE(ICMR); RESTORE(PSTR); } diff --git a/trunk/arch/mips/Kconfig b/trunk/arch/mips/Kconfig index c6fc405a6c8e..291d368ffd28 100644 --- a/trunk/arch/mips/Kconfig +++ b/trunk/arch/mips/Kconfig @@ -992,8 +992,6 @@ config BOOT_ELF64 menu "CPU selection" -source "kernel/time/Kconfig" - choice prompt "CPU type" default CPU_R4X00 @@ -1768,6 +1766,8 @@ config NR_CPUS performance should round up your number of processors to the next power of two. +source "kernel/time/Kconfig" + # # Timer Interrupt Frequency Configuration # diff --git a/trunk/drivers/media/video/bt8xx/bttv-driver.c b/trunk/drivers/media/video/bt8xx/bttv-driver.c index 581a3c955739..c02d92deacd2 100644 --- a/trunk/drivers/media/video/bt8xx/bttv-driver.c +++ b/trunk/drivers/media/video/bt8xx/bttv-driver.c @@ -3063,10 +3063,11 @@ static int bttv_do_ioctl(struct inode *inode, struct file *file, struct video_mbuf *mbuf = arg; unsigned int i; + mutex_lock(&fh->cap.lock); retval = videobuf_mmap_setup(&fh->cap,gbuffers,gbufsize, V4L2_MEMORY_MMAP); if (retval < 0) - return retval; + goto fh_unlock_and_return; gbuffers = retval; memset(mbuf,0,sizeof(*mbuf)); @@ -3074,6 +3075,7 @@ static int bttv_do_ioctl(struct inode *inode, struct file *file, mbuf->size = gbuffers * gbufsize; for (i = 0; i < gbuffers; i++) mbuf->offsets[i] = i * gbufsize; + mutex_unlock(&fh->cap.lock); return 0; } case VIDIOCMCAPTURE: diff --git a/trunk/drivers/media/video/ivtv/ivtv-driver.c b/trunk/drivers/media/video/ivtv/ivtv-driver.c index 10d6faf8ccda..6d2dd8764f81 100644 --- a/trunk/drivers/media/video/ivtv/ivtv-driver.c +++ b/trunk/drivers/media/video/ivtv/ivtv-driver.c @@ -1076,10 +1076,6 @@ static int __devinit ivtv_probe(struct pci_dev *dev, ivtv_process_eeprom(itv); } - /* The mspx4xx chips need a longer delay for some reason */ - if (!(itv->hw_flags & IVTV_HW_MSP34XX)) - itv->i2c_algo.udelay = 5; - if (itv->std == 0) { itv->std = V4L2_STD_NTSC_M; } diff --git a/trunk/drivers/media/video/ivtv/ivtv-i2c.c b/trunk/drivers/media/video/ivtv/ivtv-i2c.c index 36e54f78aa2a..44678fe27a04 100644 --- a/trunk/drivers/media/video/ivtv/ivtv-i2c.c +++ b/trunk/drivers/media/video/ivtv/ivtv-i2c.c @@ -541,7 +541,7 @@ static const struct i2c_algo_bit_data ivtv_i2c_algo_template = { .setscl = ivtv_setscl_old, .getsda = ivtv_getsda_old, .getscl = ivtv_getscl_old, - .udelay = 10, + .udelay = 5, .timeout = 200, }; @@ -718,6 +718,9 @@ int init_ivtv_i2c(struct ivtv *itv) sizeof(struct i2c_adapter)); memcpy(&itv->i2c_algo, &ivtv_i2c_algo_template, sizeof(struct i2c_algo_bit_data)); + /* The mspx4xx chips need a longer delay for some reason */ + if (itv->hw_flags & IVTV_HW_MSP34XX) + itv->i2c_algo.udelay = 10; itv->i2c_algo.data = itv; itv->i2c_adap.algo_data = &itv->i2c_algo; }