You can subscribe to this list here.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(135) |
Nov
(123) |
Dec
(83) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(244) |
Feb
(72) |
Mar
(221) |
Apr
(91) |
May
(104) |
Jun
(93) |
Jul
(78) |
Aug
(1) |
Sep
(1) |
Oct
(29) |
Nov
(98) |
Dec
(20) |
2003 |
Jan
|
Feb
(21) |
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
(18) |
Sep
(18) |
Oct
(23) |
Nov
(12) |
Dec
(6) |
2004 |
Jan
(2) |
Feb
(32) |
Mar
|
Apr
(12) |
May
(11) |
Jun
(11) |
Jul
|
Aug
(9) |
Sep
|
Oct
(15) |
Nov
|
Dec
|
2005 |
Jan
|
Feb
(2) |
Mar
(11) |
Apr
(6) |
May
(1) |
Jun
(9) |
Jul
(7) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
2006 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2007 |
Jan
|
Feb
(2) |
Mar
|
Apr
(25) |
May
(2) |
Jun
|
Jul
(5) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2008 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2009 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2010 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(13) |
Oct
|
Nov
(2) |
Dec
(2) |
2011 |
Jan
|
Feb
|
Mar
(10) |
Apr
(10) |
May
(1) |
Jun
(6) |
Jul
|
Aug
(2) |
Sep
(5) |
Oct
|
Nov
|
Dec
|
From: James S. <jsi...@us...> - 2001-11-13 19:38:25
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/usb In directory usw-pr-cvs1:/tmp/cvs-serv3798/drivers/usb Modified Files: Config.in Log Message: Synced to 2.4.14 Index: Config.in =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/usb/Config.in,v retrieving revision 1.17 retrieving revision 1.18 diff -u -d -r1.17 -r1.18 --- Config.in 2001/10/29 00:11:00 1.17 +++ Config.in 2001/11/13 19:38:22 1.18 @@ -16,7 +16,6 @@ define_bool CONFIG_USB_BANDWIDTH n fi bool ' Long timeout for slow-responding devices (some MGE Ellipse UPSes)' CONFIG_USB_LONG_TIMEOUT - bool ' Large report fetching for "broken" devices (some APC UPSes)' CONFIG_USB_LARGE_CONFIG fi comment 'USB Controllers' |
From: James S. <jsi...@us...> - 2001-11-13 19:38:25
|
Update of /cvsroot/linuxconsole/ruby/linux/fs In directory usw-pr-cvs1:/tmp/cvs-serv3798/fs Modified Files: Config.in Log Message: Synced to 2.4.14 Index: Config.in =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/fs/Config.in,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- Config.in 2001/10/15 01:13:17 1.4 +++ Config.in 2001/11/13 19:38:22 1.5 @@ -41,6 +41,7 @@ tristate 'ISO 9660 CDROM file system support' CONFIG_ISO9660_FS dep_mbool ' Microsoft Joliet CDROM extensions' CONFIG_JOLIET $CONFIG_ISO9660_FS +dep_mbool ' Transparent decompression extension' CONFIG_ZISOFS $CONFIG_ISO9660_FS tristate 'Minix fs support' CONFIG_MINIX_FS @@ -131,6 +132,24 @@ # for fs/nls/Config.in define_bool CONFIG_NCPFS_NLS n define_bool CONFIG_SMB_FS n +fi + +# +# Do we need the compression support? +# +if [ "$CONFIG_ZISOFS" = "y" ]; then + define_tristate CONFIG_ZISOFS_FS $CONFIG_ISO9660_FS +else + define_tristate CONFIG_ZISOFS_FS n +fi +if [ "$CONFIG_CRAMFS" = "y" -o "$CONFIG_ZISOFS_FS" = "y" ]; then + define_tristate CONFIG_ZLIB_FS_INFLATE y +else + if [ "$CONFIG_CRAMFS" = "m" -o "$CONFIG_ZISOFS_FS" = "m" ]; then + define_tristate CONFIG_ZLIB_FS_INFLATE m + else + define_tristate CONFIG_ZLIB_FS_INFLATE n + fi fi mainmenu_option next_comment |
From: James S. <jsi...@us...> - 2001-11-13 19:38:25
|
Update of /cvsroot/linuxconsole/ruby/linux/arch/ppc/kernel In directory usw-pr-cvs1:/tmp/cvs-serv3798/arch/ppc/kernel Modified Files: prep_setup.c Log Message: Synced to 2.4.14 Index: prep_setup.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/arch/ppc/kernel/prep_setup.c,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- prep_setup.c 2001/10/29 00:10:58 1.6 +++ prep_setup.c 2001/11/13 19:38:22 1.7 @@ -1,5 +1,5 @@ /* - * BK Id: SCCS/s.prep_setup.c 1.36 09/08/01 15:47:42 paulus + * BK Id: SCCS/s.prep_setup.c 1.41 10/18/01 11:16:28 trini */ /* * linux/arch/ppc/kernel/setup.c @@ -79,8 +79,9 @@ extern void rs_nvram_write_val(int addr, unsigned char val); extern void ibm_prep_init(void); + extern void prep_find_bridges(void); -extern char saved_command_line[256]; +extern char saved_command_line[]; int _prep_type; @@ -108,7 +109,7 @@ EXPORT_SYMBOL(ppc_cs4232_dma2); #endif -int __prep +static int __prep prep_get_cpuinfo(char *buffer) { extern char *Motherboard_map_name; @@ -118,11 +119,11 @@ #endif #ifdef CONFIG_SMP -#define CD(X) (cpu_data[n].X) +#define CD(X) (cpu_data[n].X) #else #define CD(X) (X) #endif - + len = sprintf(buffer,"machine\t\t: PReP %s\n",Motherboard_map_name); @@ -138,9 +139,10 @@ goto no_l2; } len += sprintf(buffer+len,"%sKb,", - (((*(unsigned char *)0x8000080d)>>2)&1)?"512":"256"); + (((*(unsigned char *)0x8000080d)>>2)&1) + ? "512" : "256"); len += sprintf(buffer+len,"%ssync\n", - ((*(unsigned char *)0x8000080d)>>7) ? "":"a"); + ((*(unsigned char *)0x8000080d)>>7) ? "" : "a"); break; case _PREP_Motorola: len += sprintf(buffer+len,"L2\t\t: "); @@ -161,26 +163,26 @@ break; default: len += sprintf(buffer+len, "%x\n", - *((unsigned char *)CACHECRBA)); + *((unsigned char *)CACHECRBA)); } len += sprintf(buffer+len,",parity %s", - (*((unsigned char *)CACHECRBA) & L2CACHE_PARITY) ? - "enabled" : "disabled"); - + (*((unsigned char *)CACHECRBA) & L2CACHE_PARITY) + ? "enabled" : "disabled"); + len += sprintf(buffer+len, " SRAM:"); switch ( ((*((unsigned char *)CACHECRBA) & 0xf0) >> 4) & ~(0x3) ) { case 1: len += sprintf(buffer+len, - "synchronous,parity,flow-through\n"); + "synchronous,parity,flow-through\n"); break; case 2: len += sprintf(buffer+len,"asynchronous,no parity\n"); break; case 3: len += sprintf(buffer+len,"asynchronous,parity\n"); break; default:len += sprintf(buffer+len, - "synchronous,pipelined,no parity\n"); + "synchronous,pipelined,no parity\n"); break; } break; @@ -201,17 +203,17 @@ for ( i = 0 ; (res->ActualNumMemories) && (i < MAX_MEMS) ; i++ ) { if ( res->Memories[i].SIMMSize != 0 ) - len += sprintf(buffer+len,"%d:%ldM ",i, - (res->Memories[i].SIMMSize > 1024) ? - res->Memories[i].SIMMSize>>20 : - res->Memories[i].SIMMSize); + len += sprintf(buffer+len,"%d:%ldM ", i, + (res->Memories[i].SIMMSize > 1024) ? + res->Memories[i].SIMMSize>>20 : + res->Memories[i].SIMMSize); } len += sprintf(buffer+len,"\n"); return len; #endif } -void __init +static void __init prep_setup_arch(void) { unsigned char reg; @@ -264,20 +266,19 @@ break; } - /* Read in NVRAM data */ - init_prep_nvram(); - - /* if no bootargs, look in NVRAM */ - if ( cmd_line[0] == '\0' ) { - char *bootargs; - bootargs = prep_nvram_get_var("bootargs"); - if (bootargs != NULL) { - strcpy(cmd_line, bootargs); + /* Read in NVRAM data */ + init_prep_nvram(); - /* again.. */ - strcpy(saved_command_line, cmd_line); - } - } + /* if no bootargs, look in NVRAM */ + if ( cmd_line[0] == '\0' ) { + char *bootargs; + bootargs = prep_nvram_get_var("bootargs"); + if (bootargs != NULL) { + strcpy(cmd_line, bootargs); + /* again.. */ + strcpy(saved_command_line, cmd_line); + } + } #ifdef CONFIG_SOUND_CS4232 /* @@ -290,11 +291,11 @@ if ( _machine == _MACH_prep ) { extern struct card_info snd_installed_cards[]; - struct card_info *snd_ptr; + struct card_info *snd_ptr; for ( snd_ptr = snd_installed_cards; - snd_ptr < &snd_installed_cards[num_sound_cards]; - snd_ptr++ ) + snd_ptr < &snd_installed_cards[num_sound_cards]; + snd_ptr++ ) { if ( snd_ptr->card_type == SNDCARD_CS4232 ) { @@ -308,7 +309,7 @@ if ( _prep_type == _PREP_IBM ) { snd_ptr->config.io_base = 0x530; - snd_ptr->config.irq = 5; + snd_ptr->config.irq = 5; snd_ptr->config.dma = ppc_cs4232_dma = 1; /* this is wrong - but leave it for now */ snd_ptr->config.dma2 = ppc_cs4232_dma2 = 7; @@ -328,15 +329,6 @@ ibm_prep_init(); break; } - -#ifdef CONFIG_VGA_CONSOLE - /* remap the VGA memory */ - vgacon_remap_base = 0xf0000000; - /*vgacon_remap_base = ioremap(0xc0000000, 0xba000);*/ - conswitchp = &vga_con; -#elif defined(CONFIG_DUMMY_CONSOLE) - conswitchp = &dummy_con; -#endif } /* @@ -344,17 +336,23 @@ * This allows for a faster boot as we do not need to calibrate the * decrementer against another clock. This is important for embedded systems. */ -void __init prep_res_calibrate_decr(void) +static int __init +prep_res_calibrate_decr(void) { -#ifdef CONFIG_PREP_RESIDUAL - unsigned long freq, divisor=4; +#ifdef CONFIG_PREP_RESIDUAL + unsigned long freq, divisor = 4; - freq = res->VitalProductData.ProcessorBusHz; - printk("time_init: decrementer frequency = %lu.%.6lu MHz\n", - (freq/divisor)/1000000, (freq/divisor)%1000000); - tb_ticks_per_jiffy = freq / HZ / divisor; - tb_to_us = mulhwu_scale_factor(freq/divisor, 1000000); + if ( res->VitalProductData.ProcessorBusHz ) { + freq = res->VitalProductData.ProcessorBusHz; + printk("time_init: decrementer frequency = %lu.%.6lu MHz\n", + (freq/divisor)/1000000, + (freq/divisor)%1000000); + tb_to_us = mulhwu_scale_factor(freq/divisor, 1000000); + tb_ticks_per_jiffy = freq / HZ / divisor; + return 0; + } else #endif + return 1; } /* @@ -370,10 +368,8 @@ static volatile int calibrate_steps __initdata = 3; static unsigned tbstamp __initdata = 0; -void __init -prep_calibrate_decr_handler(int irq, - void *dev, - struct pt_regs *regs) +static void __init +prep_calibrate_decr_handler(int irq, void *dev, struct pt_regs *regs) { unsigned long t, freq; int step=--calibrate_steps; @@ -384,44 +380,54 @@ } else { freq = (t - tbstamp)*HZ; printk("time_init: decrementer frequency = %lu.%.6lu MHz\n", - freq/1000000, freq%1000000); + freq/1000000, freq%1000000); tb_ticks_per_jiffy = freq / HZ; tb_to_us = mulhwu_scale_factor(freq, 1000000); } } -void __init prep_calibrate_decr(void) +static void __init +prep_calibrate_decr(void) { - unsigned long flags; + int res; + /* Try and get this from the residual data. */ + res = prep_res_calibrate_decr(); - save_flags(flags); + /* If we didn't get it from the residual data, try this. */ + if ( res ) { + unsigned long flags; + + save_flags(flags); #define TIMER0_COUNT 0x40 #define TIMER_CONTROL 0x43 - /* set timer to periodic mode */ - outb_p(0x34,TIMER_CONTROL);/* binary, mode 2, LSB/MSB, ch 0 */ - /* set the clock to ~100 Hz */ - outb_p(LATCH & 0xff , TIMER0_COUNT); /* LSB */ - outb(LATCH >> 8 , TIMER0_COUNT); /* MSB */ - - if (request_irq(0, prep_calibrate_decr_handler, 0, "timer", NULL) != 0) - panic("Could not allocate timer IRQ!"); - __sti(); - while ( calibrate_steps ) /* nothing */; /* wait for calibrate */ - restore_flags(flags); - free_irq( 0, NULL); -} + /* set timer to periodic mode */ + outb_p(0x34,TIMER_CONTROL);/* binary, mode 2, LSB/MSB, ch 0 */ + /* set the clock to ~100 Hz */ + outb_p(LATCH & 0xff , TIMER0_COUNT); /* LSB */ + outb(LATCH >> 8 , TIMER0_COUNT); /* MSB */ + if (request_irq(0, prep_calibrate_decr_handler, 0, "timer", NULL) != 0) + panic("Could not allocate timer IRQ!"); + __sti(); + /* wait for calibrate */ + while ( calibrate_steps ) + ; + restore_flags(flags); + free_irq( 0, NULL); + } +} -static long __init mk48t59_init(void) { +static long __init +mk48t59_init(void) { unsigned char tmp; tmp = ppc_md.nvram_read_val(MK48T59_RTC_CONTROLB); if (tmp & MK48T59_RTC_CB_STOP) { printk("Warning: RTC was stopped, date will be wrong.\n"); ppc_md.nvram_write_val(MK48T59_RTC_CONTROLB, - tmp & ~MK48T59_RTC_CB_STOP); + tmp & ~MK48T59_RTC_CB_STOP); /* Low frequency crystal oscillators may take a very long * time to startup and stabilize. For now just ignore the * the issue, but attempting to calibrate the decrementer @@ -441,12 +447,13 @@ * the RTC registers have just been set up in the right state by the * preceding routine. */ -void __init mk48t59_calibrate_decr(void) +static void __init +mk48t59_calibrate_decr(void) { unsigned long freq; unsigned long t1; - unsigned char save_control; - long i; + unsigned char save_control; + long i; unsigned char sec; @@ -454,7 +461,7 @@ save_control = ppc_md.nvram_read_val(MK48T59_RTC_CONTROLB); ppc_md.nvram_write_val(MK48T59_RTC_CONTROLA, - (save_control & (~MK48T59_RTC_CB_STOP))); + (save_control & (~MK48T59_RTC_CB_STOP))); /* Now make sure the read bit is off so the value will change. */ save_control = ppc_md.nvram_read_val(MK48T59_RTC_CONTROLA); @@ -471,27 +478,26 @@ * stamp with a loop count as parameter would be the solution. */ for (i = 0 ; i < 1000000 ; i++) { /* may take up to 1 second... */ - t1 = get_tbl(); - if (ppc_md.nvram_read_val(MK48T59_RTC_SECONDS) != sec) { - break; - } + t1 = get_tbl(); + if (ppc_md.nvram_read_val(MK48T59_RTC_SECONDS) != sec) { + break; + } } sec = ppc_md.nvram_read_val(MK48T59_RTC_SECONDS); for (i = 0 ; i < 1000000 ; i++) { /* Should take up 1 second... */ - freq = get_tbl()-t1; - if (ppc_md.nvram_read_val(MK48T59_RTC_SECONDS) != sec) { - break; - } + freq = get_tbl()-t1; + if (ppc_md.nvram_read_val(MK48T59_RTC_SECONDS) != sec) + break; } printk("time_init: decrementer frequency = %lu.%.6lu MHz\n", - freq/1000000, freq%1000000); + freq/1000000, freq%1000000); tb_ticks_per_jiffy = freq / HZ; tb_to_us = mulhwu_scale_factor(freq, 1000000); } -void __prep +static void __prep prep_restart(char *cmd) { unsigned long i = 10000; @@ -510,33 +516,7 @@ panic("restart failed\n"); } -/* - * This function will restart a board regardless of port 92 functionality - */ -void __prep -prep_direct_restart(char *cmd) -{ - u32 jumpaddr=0xfff00100; - u32 defaultmsr=MSR_IP; - - /* - * This will ALWAYS work regardless of port 92 - * functionality - */ - __cli(); - - __asm__ __volatile__("\n\ - mtspr 26, %1 /* SRR0 */ \n\ - mtspr 27, %0 /* SRR1 */ \n\ - rfi" - : - : "r" (defaultmsr), "r" (jumpaddr)); - /* - * Not reached - */ -} - -void __prep +static void __prep prep_halt(void) { unsigned long flags; @@ -602,7 +582,7 @@ udelay(100); /* important: let controller recover */ } -void __prep +static void __prep prep_power_off(void) { if ( _prep_type == _PREP_IBM) { @@ -627,19 +607,19 @@ } } -int __prep +static int __prep prep_setup_residual(char *buffer) { - int len = 0; + int len = 0; /* PREP's without residual data will give incorrect values here */ len += sprintf(len+buffer, "clock\t\t: "); #ifdef CONFIG_PREP_RESIDUAL if ( res->ResidualLength ) len += sprintf(len+buffer, "%ldMHz\n", - (res->VitalProductData.ProcessorHz > 1024) ? - res->VitalProductData.ProcessorHz>>20 : - res->VitalProductData.ProcessorHz); + (res->VitalProductData.ProcessorHz > 1024) ? + res->VitalProductData.ProcessorHz>>20 : + res->VitalProductData.ProcessorHz); else #endif /* CONFIG_PREP_RESIDUAL */ len += sprintf(len+buffer, "???\n"); @@ -647,7 +627,7 @@ return len; } -u_int __prep +static unsigned int __prep prep_irq_cannonicalize(u_int irq) { if (irq == 2) @@ -660,29 +640,29 @@ } } -int __prep +static int __prep prep_get_irq(struct pt_regs *regs) { return i8259_irq(smp_processor_id()); } -void __init +static void __init prep_init_IRQ(void) { int i; if (OpenPIC_Addr != NULL) openpic_init(1, NUM_8259_INTERRUPTS, 0, -1); - for ( i = 0 ; i < NUM_8259_INTERRUPTS ; i++ ) - irq_desc[i].handler = &i8259_pic; - i8259_init(); + for ( i = 0 ; i < NUM_8259_INTERRUPTS ; i++ ) + irq_desc[i].handler = &i8259_pic; + i8259_init(); } #if defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_IDE_MODULE) /* * IDE stuff. */ -int __prep +static int __prep prep_ide_default_irq(ide_ioreg_t base) { switch (base) { @@ -696,7 +676,7 @@ } } -ide_ioreg_t __prep +static ide_ioreg_t __prep prep_ide_default_io_base(int index) { switch (index) { @@ -705,17 +685,17 @@ case 2: return 0x1e8; case 3: return 0x168; default: - return 0; + return 0; } } -int __prep +static int __prep prep_ide_check_region(ide_ioreg_t from, unsigned int extent) { - return check_region(from, extent); + return check_region(from, extent); } -void __prep +static void __prep prep_ide_request_region(ide_ioreg_t from, unsigned int extent, const char *name) @@ -723,14 +703,14 @@ request_region(from, extent, name); } -void __prep +static void __prep prep_ide_release_region(ide_ioreg_t from, unsigned int extent) { release_region(from, extent); } -void __init +static void __init prep_ide_init_hwif_ports (hw_regs_t *hw, ide_ioreg_t data_port, ide_ioreg_t ctrl_port, int *irq) { ide_ioreg_t reg = data_port; @@ -743,7 +723,7 @@ if (ctrl_port) { hw->io_ports[IDE_CONTROL_OFFSET] = ctrl_port; } else { - hw->io_ports[IDE_CONTROL_OFFSET] = hw->io_ports[IDE_DATA_OFFSET] + 0x206; + hw->io_ports[IDE_CONTROL_OFFSET] = hw->io_ports[IDE_DATA_OFFSET] + 0x206; } if (irq != NULL) *irq = 0; @@ -752,7 +732,7 @@ #ifdef CONFIG_SMP /* PReP (MTX) support */ -static int +static int __init smp_prep_probe(void) { extern int mot_multi; @@ -766,7 +746,7 @@ return 1; } -static void +static void __init smp_prep_kick_cpu(int nr) { *(unsigned long *)KERNELBASE = nr; @@ -774,14 +754,14 @@ printk("CPU1 reset, waiting\n"); } -static void +static void __init smp_prep_setup_cpu(int cpu_nr) { if (OpenPIC_Addr) do_openpic_setup_cpu(); } -static struct smp_ops_t prep_smp_ops = { +static struct smp_ops_t prep_smp_ops __prepdata = { smp_openpic_message_pass, smp_prep_probe, smp_prep_kick_cpu, @@ -795,7 +775,8 @@ * this will likely stay separate from the pmac. * -- Cort */ -unsigned long __init prep_find_end_of_memory(void) +static unsigned long __init +prep_find_end_of_memory(void) { unsigned long total = 0; extern unsigned int boot_mem_size; @@ -806,15 +787,14 @@ if (total == 0 && boot_mem_size != 0) total = boot_mem_size; - - if (total == 0) { + else if (total == 0) { /* * I need a way to probe the amount of memory if the residual * data doesn't contain it. -- Cort */ total = 0x02000000; printk(KERN_INFO "Ramsize from residual data was 0" - " -- defaulting to %ldM\n", total>>20); + " -- defaulting to %ldM\n", total>>20); } return (total); @@ -825,16 +805,17 @@ * the io areas. RAM was mapped by mapin_ram(). * -- Cort */ -void __init prep_map_io(void) +static void __init +prep_map_io(void) { io_block_mapping(0x80000000, PREP_ISA_IO_BASE, 0x10000000, _PAGE_IO); io_block_mapping(0xf0000000, PREP_ISA_MEM_BASE, 0x08000000, _PAGE_IO); } -void __init +static void __init prep_init2(void) { -#ifdef CONFIG_NVRAM +#ifdef CONFIG_NVRAM request_region(PREP_NVRAM_AS0, 0x8, "nvram"); #endif request_region(0x20,0x20,"pic1"); @@ -847,7 +828,7 @@ void __init prep_init(unsigned long r3, unsigned long r4, unsigned long r5, - unsigned long r6, unsigned long r7) + unsigned long r6, unsigned long r7) { #ifdef CONFIG_PREP_RESIDUAL RESIDUAL *old_res = (RESIDUAL *)(r3 + KERNELBASE); @@ -856,7 +837,7 @@ if ( r3 ) { memcpy((void *)res,(void *)(r3+KERNELBASE), - sizeof(RESIDUAL)); + sizeof(RESIDUAL)); } #endif @@ -869,7 +850,7 @@ #endif /* CONFIG_BLK_DEV_INITRD */ /* Copy cmd_line parameters */ - if ( r6) + if ( r6 ) { *(char *)(r7 + KERNELBASE) = 0; strcpy(cmd_line, (char *)(r6 + KERNELBASE)); @@ -892,7 +873,7 @@ _prep_type = _PREP_Motorola; } else /* assume motorola if no residual (netboot?) */ -#endif +#endif { _prep_type = _PREP_Motorola; } @@ -915,8 +896,7 @@ ppc_md.set_rtc_time = mc146818_set_rtc_time; ppc_md.get_rtc_time = mc146818_get_rtc_time; ppc_md.calibrate_decr = prep_calibrate_decr; - } - else { + } else { ppc_md.set_rtc_time = mk48t59_set_rtc_time; ppc_md.get_rtc_time = mk48t59_get_rtc_time; ppc_md.calibrate_decr = mk48t59_calibrate_decr; @@ -927,12 +907,12 @@ ppc_md.setup_io_mappings = prep_map_io; #if defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_IDE_MODULE) - ppc_ide_md.default_irq = prep_ide_default_irq; - ppc_ide_md.default_io_base = prep_ide_default_io_base; - ppc_ide_md.ide_check_region = prep_ide_check_region; - ppc_ide_md.ide_request_region = prep_ide_request_region; - ppc_ide_md.ide_release_region = prep_ide_release_region; - ppc_ide_md.ide_init_hwif = prep_ide_init_hwif_ports; + ppc_ide_md.default_irq = prep_ide_default_irq; + ppc_ide_md.default_io_base = prep_ide_default_io_base; + ppc_ide_md.ide_check_region = prep_ide_check_region; + ppc_ide_md.ide_request_region = prep_ide_request_region; + ppc_ide_md.ide_release_region = prep_ide_release_region; + ppc_ide_md.ide_init_hwif = prep_ide_init_hwif_ports; #endif #ifdef CONFIG_SMP |
From: James S. <jsi...@us...> - 2001-11-13 19:38:25
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers In directory usw-pr-cvs1:/tmp/cvs-serv3798/drivers Modified Files: Makefile Log Message: Synced to 2.4.14 Index: Makefile =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/Makefile,v retrieving revision 1.22 retrieving revision 1.23 diff -u -d -r1.22 -r1.23 --- Makefile 2001/11/07 09:52:26 1.22 +++ Makefile 2001/11/13 19:38:22 1.23 @@ -10,7 +10,7 @@ message/i2o message/fusion scsi md ieee1394 pnp isdn atm \ fc4 net/hamradio i2c l3 acpi bluetooth serial -subdir-y := parport char block net sound misc media cdrom video # hotplug +subdir-y := parport char block net sound misc media cdrom video subdir-m := $(subdir-y) |
From: James S. <jsi...@us...> - 2001-11-13 19:38:25
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/char In directory usw-pr-cvs1:/tmp/cvs-serv3798/drivers/char Modified Files: Config.in Makefile misc.c tty_io.c vt_ioctl.c Log Message: Synced to 2.4.14 Index: Config.in =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/char/Config.in,v retrieving revision 1.29 retrieving revision 1.30 diff -u -d -r1.29 -r1.30 --- Config.in 2001/11/02 00:57:43 1.29 +++ Config.in 2001/11/13 19:38:22 1.30 @@ -202,6 +202,8 @@ source drivers/char/pcmcia/Config.in fi -tristate 'ACP Modem (Mwave) support' CONFIG_MWAVE +if [ "$CONFIG_X86" = "y" ]; then + tristate 'ACP Modem (Mwave) support' CONFIG_MWAVE +fi endmenu Index: Makefile =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/char/Makefile,v retrieving revision 1.30 retrieving revision 1.31 diff -u -d -r1.30 -r1.31 --- Makefile 2001/11/02 00:57:43 1.30 +++ Makefile 2001/11/13 19:38:22 1.31 @@ -85,6 +85,7 @@ obj-$(CONFIG_NVRAM) += nvram.o endif obj-$(CONFIG_TOSHIBA) += toshiba.o +obj-$(CONFIG_I8K) += i8k.o obj-$(CONFIG_DS1620) += ds1620.o obj-$(CONFIG_INTEL_RNG) += i810_rng.o Index: misc.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/char/misc.c,v retrieving revision 1.15 retrieving revision 1.16 diff -u -d -r1.15 -r1.16 --- misc.c 2001/11/02 00:57:43 1.15 +++ misc.c 2001/11/13 19:38:22 1.16 @@ -71,6 +71,7 @@ extern int ds1286_init(void); extern int pmu_device_init(void); extern int tosh_init(void); +extern int i8k_init(void); static int misc_read_proc(char *buf, char **start, off_t offset, int len, int *eof, void *private) @@ -271,6 +272,9 @@ #endif #ifdef CONFIG_TOSHIBA tosh_init(); +#endif +#ifdef CONFIG_I8K + i8k_init(); #endif if (devfs_register_chrdev(MISC_MAJOR,"misc",&misc_fops)) { printk("unable to get major %d for misc devices\n", Index: tty_io.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/char/tty_io.c,v retrieving revision 1.36 retrieving revision 1.37 diff -u -d -r1.36 -r1.37 --- tty_io.c 2001/10/06 16:11:13 1.36 +++ tty_io.c 2001/11/13 19:38:22 1.37 @@ -2342,9 +2342,6 @@ #ifdef CONFIG_SERIAL_TX3912 tx3912_rs_init(); #endif -#ifdef CONFIG_COMPUTONE - ip2_init(); -#endif #ifdef CONFIG_ROCKETPORT rp_init(); #endif Index: vt_ioctl.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/char/vt_ioctl.c,v retrieving revision 1.62 retrieving revision 1.63 diff -u -d -r1.62 -r1.63 --- vt_ioctl.c 2001/10/17 17:00:13 1.62 +++ vt_ioctl.c 2001/11/13 19:38:22 1.63 @@ -1455,6 +1455,23 @@ switch_screen(new_vc, old_vc); /* + * This can't appear below a successful kill_proc(). If it did, + * then the *blank_screen operation could occur while X, having + * received acqsig, is waking up on another processor. This + * condition can lead to overlapping accesses to the VGA range + * and the framebuffer (causing system lockups). + * + * To account for this we duplicate this code below only if the + * controlling process is gone and we've called reset_vc. + */ + if (old_vc_mode != new_vc->vc_mode) { + if (new_vc->vc_mode == KD_TEXT) + unblank_screen(new_vc->display_fg); + else + do_blank_screen(new_vc); + } + + /* * If this new console is under process control, send it a signal * telling it that it has acquired. Also check if it has died and * clean up (similar to logic employed in change_console()) @@ -1475,19 +1492,12 @@ * this outside of VT_PROCESS but there is no single process * to account for and tracking tty count may be undesirable. */ - reset_vc(new_vc); + if (old_vc_mode != new_vc->vc_mode) { + if (new_vc->vc_mode == KD_TEXT) + unblank_screen(new_vc->display_fg); + else + do_blank_screen(new_vc); } - } - - /* - * We do this here because the controlling process above may have - * gone, and so there is now a new vc_mode - */ - if (old_vc_mode != new_vc->vc_mode) { - if (new_vc->vc_mode == KD_TEXT) { - unblank_screen(new_vc->display_fg); - } else - do_blank_screen(new_vc); } /* |
From: James S. <jsi...@us...> - 2001-11-13 19:38:25
|
Update of /cvsroot/linuxconsole/ruby/linux/arch/ppc In directory usw-pr-cvs1:/tmp/cvs-serv3798/arch/ppc Modified Files: config.in Log Message: Synced to 2.4.14 Index: config.in =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/arch/ppc/config.in,v retrieving revision 1.20 retrieving revision 1.21 diff -u -d -r1.20 -r1.21 --- config.in 2001/10/06 16:11:12 1.20 +++ config.in 2001/11/13 19:38:22 1.21 @@ -1,4 +1,4 @@ -# BK Id: SCCS/s.config.in 1.40 08/24/01 20:31:47 paulus +# BK Id: SCCS/s.config.in 1.43 10/16/01 15:18:50 trini # # For a description of the syntax of this configuration file, # see Documentation/kbuild/config-language.txt. @@ -46,6 +46,8 @@ if [ "$CONFIG_6xx" = "y" -o "$CONFIG_POWER3" = "y" -o \ "$CONFIG_POWER4" = "y" ]; then define_bool CONFIG_PPC_STD_MMU y +else + define_bool CONFIG_PPC_STD_MMU n fi if [ "$CONFIG_8260" = "y" ]; then @@ -66,6 +68,7 @@ "RPX-Lite CONFIG_RPXLITE \ RPX-Classic CONFIG_RPXCLASSIC \ BSE-IP CONFIG_BSEIP \ + FADS CONFIG_FADS \ TQM823L CONFIG_TQM823L \ TQM850L CONFIG_TQM850L \ TQM855L CONFIG_TQM855L \ @@ -74,6 +77,7 @@ TQM860 CONFIG_TQM860 \ SPD823TS CONFIG_SPD823TS \ IVMS8 CONFIG_IVMS8 \ + IVML24 CONFIG_IVML24 \ SM850 CONFIG_SM850 \ MBX CONFIG_MBX \ WinCept CONFIG_WINCEPT" RPX-Lite @@ -95,12 +99,7 @@ Synergy-Gemini CONFIG_GEMINI" CHRP/PowerMac/PReP fi -if [ "$CONFIG_PPC64BRIDGE" != "y" ]; then - bool 'Workarounds for PPC601 bugs' CONFIG_PPC601_SYNC_FIX -fi - -if [ "$CONFIG_POWER3" = "n" -a "$CONFIG_POWER4" = "n" -a \ - "$CONFIG_6xx" = "n" ]; then +if [ "$CONFIG_PPC_STD_MMU" != "y" ]; then define_bool CONFIG_ALL_PPC n fi @@ -183,6 +182,10 @@ else bool 'Generic /dev/rtc emulation' CONFIG_GEN_RTC fi +fi + +if [ "$CONFIG_ALL_PPC" = "y" -a "$CONFIG_POWER3" = "n" ] ; then + bool 'Workarounds for PPC601 bugs' CONFIG_PPC601_SYNC_FIX fi if [ "$CONFIG_ALL_PPC" = "y" ]; then |
From: James S. <jsi...@us...> - 2001-11-13 19:38:25
|
Update of /cvsroot/linuxconsole/ruby/linux/arch/i386/kernel In directory usw-pr-cvs1:/tmp/cvs-serv3798/arch/i386/kernel Modified Files: setup.c Log Message: Synced to 2.4.14 Index: setup.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/arch/i386/kernel/setup.c,v retrieving revision 1.29 retrieving revision 1.30 diff -u -d -r1.29 -r1.30 --- setup.c 2001/10/29 00:10:58 1.29 +++ setup.c 2001/11/13 19:38:22 1.30 @@ -226,8 +226,7 @@ #define SIO_PM_GP_EN 0x80 -static void -visws_get_board_type_and_rev(void) +static void __init visws_get_board_type_and_rev(void) { int raw; @@ -399,7 +398,7 @@ } } -void __init add_memory_region(unsigned long long start, +static void __init add_memory_region(unsigned long long start, unsigned long long size, int type) { int x = e820.nr_map; @@ -664,7 +663,7 @@ */ #define LOWMEMSIZE() (0x9f000) -void __init setup_memory_region(void) +static void __init setup_memory_region(void) { char *who = "BIOS-e820"; @@ -696,7 +695,7 @@ } /* setup_memory_region */ -static inline void parse_mem_cmdline (char ** cmdline_p) +static void __init parse_mem_cmdline (char ** cmdline_p) { char c = ' ', *to = command_line, *from = COMMAND_LINE; int len = 0; @@ -1251,11 +1250,11 @@ /* * Read Cyrix DEVID registers (DIR) to get more detailed info. about the CPU */ -static void do_cyrix_devid(unsigned char *dir0, unsigned char *dir1) +static void __init do_cyrix_devid(unsigned char *dir0, unsigned char *dir1) { unsigned char ccr2, ccr3; unsigned long flags; - + /* we test for DEVID by checking whether CCR3 is writable */ local_irq_save(flags); ccr3 = getCx86(CX86_CCR3); @@ -1291,7 +1290,7 @@ * Actually since bugs.h doesnt even reference this perhaps someone should * fix the documentation ??? */ -unsigned char Cx86_dir0_msb __initdata = 0; +static unsigned char Cx86_dir0_msb __initdata = 0; static char Cx86_model[][9] __initdata = { "Cx486", "Cx486", "5x86 ", "6x86", "MediaGX ", "6x86MX ", @@ -1324,7 +1323,7 @@ static void __init check_cx686_slop(struct cpuinfo_x86 *c) { unsigned long flags; - + if (Cx86_dir0_msb == 3) { unsigned char ccr3, ccr5; @@ -1491,6 +1490,248 @@ return; } +#ifdef CONFIG_X86_OOSTORE + +static u32 __init power2(u32 x) +{ + u32 s=1; + while(s<=x) + s<<=1; + return s>>=1; +} + +/* + * Set up an actual MCR + */ + +static void __init winchip_mcr_insert(int reg, u32 base, u32 size, int key) +{ + u32 lo, hi; + + hi = base & ~0xFFF; + lo = ~(size-1); /* Size is a power of 2 so this makes a mask */ + lo &= ~0xFFF; /* Remove the ctrl value bits */ + lo |= key; /* Attribute we wish to set */ + wrmsr(reg+MSR_IDT_MCR0, lo, hi); + mtrr_centaur_report_mcr(reg, lo, hi); /* Tell the mtrr driver */ +} + +/* + * Figure what we can cover with MCR's + * + * Shortcut: We know you can't put 4Gig of RAM on a winchip + */ + +static u32 __init ramtop(void) /* 16388 */ +{ + int i; + u32 top = 0; + u32 clip = 0xFFFFFFFFUL; + + for (i = 0; i < e820.nr_map; i++) { + unsigned long start, end; + + if (e820.map[i].addr > 0xFFFFFFFFUL) + continue; + /* + * Don't MCR over reserved space. Ignore the ISA hole + * we frob around that catastrophy already + */ + + if (e820.map[i].type == E820_RESERVED) + { + if(e820.map[i].addr >= 0x100000UL && e820.map[i].addr < clip) + clip = e820.map[i].addr; + continue; + } + start = e820.map[i].addr; + end = e820.map[i].addr + e820.map[i].size; + if (start >= end) + continue; + if (end > top) + top = end; + } + /* Everything below 'top' should be RAM except for the ISA hole. + Because of the limited MCR's we want to map NV/ACPI into our + MCR range for gunk in RAM + + Clip might cause us to MCR insufficient RAM but that is an + acceptable failure mode and should only bite obscure boxes with + a VESA hole at 15Mb + + The second case Clip sometimes kicks in is when the EBDA is marked + as reserved. Again we fail safe with reasonable results + */ + + if(top>clip) + top=clip; + + return top; +} + +/* + * Compute a set of MCR's to give maximum coverage + */ + +static int __init winchip_mcr_compute(int nr, int key) +{ + u32 mem = ramtop(); + u32 root = power2(mem); + u32 base = root; + u32 top = root; + u32 floor = 0; + int ct = 0; + + while(ct<nr) + { + u32 fspace = 0; + + /* + * Find the largest block we will fill going upwards + */ + + u32 high = power2(mem-top); + + /* + * Find the largest block we will fill going downwards + */ + + u32 low = base/2; + + /* + * Don't fill below 1Mb going downwards as there + * is an ISA hole in the way. + */ + + if(base <= 1024*1024) + low = 0; + + /* + * See how much space we could cover by filling below + * the ISA hole + */ + + if(floor == 0) + fspace = 512*1024; + else if(floor ==512*1024) + fspace = 128*1024; + + /* And forget ROM space */ + + /* + * Now install the largest coverage we get + */ + + if(fspace > high && fspace > low) + { + winchip_mcr_insert(ct, floor, fspace, key); + floor += fspace; + } + else if(high > low) + { + winchip_mcr_insert(ct, top, high, key); + top += high; + } + else if(low > 0) + { + base -= low; + winchip_mcr_insert(ct, base, low, key); + } + else break; + ct++; + } + /* + * We loaded ct values. We now need to set the mask. The caller + * must do this bit. + */ + + return ct; +} + +static void __init winchip_create_optimal_mcr(void) +{ + int i; + /* + * Allocate up to 6 mcrs to mark as much of ram as possible + * as write combining and weak write ordered. + * + * To experiment with: Linux never uses stack operations for + * mmio spaces so we could globally enable stack operation wc + * + * Load the registers with type 31 - full write combining, all + * writes weakly ordered. + */ + int used = winchip_mcr_compute(6, 31); + + /* + * Wipe unused MCRs + */ + + for(i=used;i<8;i++) + wrmsr(MSR_IDT_MCR0+i, 0, 0); +} + +static void __init winchip2_create_optimal_mcr(void) +{ + u32 lo, hi; + int i; + + /* + * Allocate up to 6 mcrs to mark as much of ram as possible + * as write combining, weak store ordered. + * + * Load the registers with type 25 + * 8 - weak write ordering + * 16 - weak read ordering + * 1 - write combining + */ + + int used = winchip_mcr_compute(6, 25); + + /* + * Mark the registers we are using. + */ + + rdmsr(MSR_IDT_MCR_CTRL, lo, hi); + for(i=0;i<used;i++) + lo|=1<<(9+i); + wrmsr(MSR_IDT_MCR_CTRL, lo, hi); + + /* + * Wipe unused MCRs + */ + + for(i=used;i<8;i++) + wrmsr(MSR_IDT_MCR0+i, 0, 0); +} + +/* + * Handle the MCR key on the Winchip 2. + */ + +static void __init winchip2_unprotect_mcr(void) +{ + u32 lo, hi; + u32 key; + + rdmsr(MSR_IDT_MCR_CTRL, lo, hi); + lo&=~0x1C0; /* blank bits 8-6 */ + key = (lo>>17) & 7; + lo |= key<<6; /* replace with unlock key */ + wrmsr(MSR_IDT_MCR_CTRL, lo, hi); +} + +static void __init winchip2_protect_mcr(void) +{ + u32 lo, hi; + + rdmsr(MSR_IDT_MCR_CTRL, lo, hi); + lo&=~0x1C0; /* blank bits 8-6 */ + wrmsr(MSR_IDT_MCR_CTRL, lo, hi); +} + +#endif + static void __init init_centaur(struct cpuinfo_x86 *c) { enum { @@ -1534,6 +1775,19 @@ fcr_clr=DPDC; printk(KERN_NOTICE "Disabling bugged TSC.\n"); clear_bit(X86_FEATURE_TSC, &c->x86_capability); +#ifdef CONFIG_X86_OOSTORE + winchip_create_optimal_mcr(); + /* Enable + write combining on non-stack, non-string + write combining on string, all types + weak write ordering + + The C6 original lacks weak read order + + Note 0x120 is write only on Winchip 1 */ + + wrmsr(MSR_IDT_MCR_CTRL, 0x01F0001F, 0); +#endif break; case 8: switch(c->x86_mask) { @@ -1549,11 +1803,37 @@ } fcr_set=ECX8|DSMC|DTLOCK|EMMX|EBRPRED|ERETSTK|E2MMX|EAMD3D; fcr_clr=DPDC; +#ifdef CONFIG_X86_OOSTORE + winchip2_unprotect_mcr(); + winchip2_create_optimal_mcr(); + rdmsr(MSR_IDT_MCR_CTRL, lo, hi); + /* Enable + write combining on non-stack, non-string + write combining on string, all types + weak write ordering + */ + lo|=31; + wrmsr(MSR_IDT_MCR_CTRL, lo, hi); + winchip2_protect_mcr(); +#endif break; case 9: name="3"; fcr_set=ECX8|DSMC|DTLOCK|EMMX|EBRPRED|ERETSTK|E2MMX|EAMD3D; fcr_clr=DPDC; +#ifdef CONFIG_X86_OOSTORE + winchip2_unprotect_mcr(); + winchip2_create_optimal_mcr(); + rdmsr(MSR_IDT_MCR_CTRL, lo, hi); + /* Enable + write combining on non-stack, non-string + write combining on string, all types + weak write ordering + */ + lo|=31; + wrmsr(MSR_IDT_MCR_CTRL, lo, hi); + winchip2_protect_mcr(); +#endif break; case 10: name="4"; |
From: James S. <jsi...@us...> - 2001-11-13 19:38:24
|
Update of /cvsroot/linuxconsole/ruby/linux/arch/i386 In directory usw-pr-cvs1:/tmp/cvs-serv3798/arch/i386 Modified Files: config.in Log Message: Synced to 2.4.14 Index: config.in =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/arch/i386/config.in,v retrieving revision 1.28 retrieving revision 1.29 diff -u -d -r1.28 -r1.29 --- config.in 2001/10/29 00:10:57 1.28 +++ config.in 2001/11/13 19:38:21 1.29 @@ -149,6 +149,7 @@ define_bool CONFIG_X86_USE_PPRO_CHECKSUM y fi tristate 'Toshiba Laptop support' CONFIG_TOSHIBA +tristate 'Dell Inspiron 8000 support' CONFIG_I8K tristate '/dev/cpu/microcode - Intel IA32 CPU microcode support' CONFIG_MICROCODE tristate '/dev/cpu/*/msr - Model-specific register support' CONFIG_X86_MSR |
From: James S. <jsi...@us...> - 2001-11-13 19:38:24
|
Update of /cvsroot/linuxconsole/ruby/linux/arch/alpha/kernel In directory usw-pr-cvs1:/tmp/cvs-serv3798/arch/alpha/kernel Modified Files: setup.c Log Message: Synced to 2.4.14 Index: setup.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/arch/alpha/kernel/setup.c,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- setup.c 2001/10/15 01:13:16 1.4 +++ setup.c 2001/11/13 19:38:21 1.5 @@ -87,8 +87,6 @@ int alpha_using_srm; #endif -unsigned char aux_device_present = 0xaa; - #define N(a) (sizeof(a)/sizeof(a[0])) static struct alpha_machine_vector *get_sysvec(long, long, long); @@ -1041,7 +1039,8 @@ static char cpu_names[][8] = { "EV3", "EV4", "Simulate", "LCA4", "EV5", "EV45", "EV56", - "EV6", "PCA56", "PCA57", "EV67", "EV68CB", "EV68AL" + "EV6", "PCA56", "PCA57", "EV67", "EV68CB", "EV68AL", + "EV68CX", "EV7", "EV79", "EV69" }; struct percpu_struct *cpu; |
From: James S. <jsi...@us...> - 2001-11-13 19:38:24
|
Update of /cvsroot/linuxconsole/ruby/linux/arch/alpha In directory usw-pr-cvs1:/tmp/cvs-serv3798/arch/alpha Modified Files: config.in Log Message: Synced to 2.4.14 Index: config.in =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/arch/alpha/config.in,v retrieving revision 1.20 retrieving revision 1.21 diff -u -d -r1.20 -r1.21 --- config.in 2001/10/15 01:13:16 1.20 +++ config.in 2001/11/13 19:38:21 1.21 @@ -217,6 +217,10 @@ bool 'Symmetric multi-processing support' CONFIG_SMP fi +if [ "$CONFIG_SMP" = "y" ]; then + define_bool CONFIG_HAVE_DEC_LOCK y +fi + if [ "$CONFIG_EXPERIMENTAL" = "y" ]; then bool 'Discontiguous Memory Support' CONFIG_DISCONTIGMEM if [ "$CONFIG_DISCONTIGMEM" = "y" ]; then |
From: James S. <jsi...@us...> - 2001-11-13 19:38:24
|
Update of /cvsroot/linuxconsole/ruby/linux/Documentation/DocBook In directory usw-pr-cvs1:/tmp/cvs-serv3798/Documentation/DocBook Modified Files: Makefile Log Message: Synced to 2.4.14 Index: Makefile =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/Documentation/DocBook/Makefile,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- Makefile 2001/10/15 01:13:16 1.5 +++ Makefile 2001/11/13 19:38:21 1.6 @@ -8,7 +8,7 @@ HTML := $(patsubst %.sgml, %, $(BOOKS)) IMG-parportbook := parport-share.fig parport-multi.fig parport-structure.fig EPS-parportbook := $(patsubst %.fig, %.eps, $(IMG-parportbook)) -JPG-parportbook := $(patsubst %.fig, %.jpeg, $(IMG-parportbook)) +PNG-parportbook := $(patsubst %.fig, %.png, $(IMG-parportbook)) C-procfs-example = procfs_example.sgml books: $(BOOKS) @@ -26,8 +26,8 @@ %.eps: %.fig fig2dev -Leps $< $@ -%.jpeg: %.fig - fig2dev -Ljpeg $< $@ +%.png: %.fig + fig2dev -Lpng $< $@ %.sgml: %.c echo "<programlisting>" > $@ @@ -129,8 +129,8 @@ $(TOPDIR)/scripts/kernel-doc -man $^ | \ $(PERL) $(TOPDIR)/scripts/split-man $(TOPDIR)/Documentation/man -parportbook: $(JPG-parportbook) -parportbook.ps parportbook.pdf: $(EPS-parportbook) +parportbook parportbook.pdf: $(PNG-parportbook) +parportbook.ps: $(EPS-parportbook) parportbook.sgml: parportbook.tmpl $(TOPDIR)/drivers/parport/init.c $(TOPDIR)/scripts/docgen $(TOPDIR)/drivers/parport/init.c <$< >$@ @@ -144,7 +144,7 @@ rm -f core *~ rm -f $(BOOKS) rm -f $(DVI) $(AUX) $(TEX) $(LOG) $(OUT) - rm -f $(JPG-parportbook) $(EPS-parportbook) + rm -f $(PNG-parportbook) $(EPS-parportbook) rm -f $(C-procfs-example) mrproper: clean @@ -172,7 +172,7 @@ exit 1) rm -rf $@ db2html $< - if [ ! -z "$(JPG-$@)" ]; then cp $(JPG-$@) $@; fi + if [ ! -z "$(PNG-$@)" ]; then cp $(PNG-$@) $@; fi # # we could have our own dependency generator |
From: James S. <jsi...@us...> - 2001-11-13 19:38:24
|
Update of /cvsroot/linuxconsole/ruby/linux In directory usw-pr-cvs1:/tmp/cvs-serv3798 Modified Files: Makefile Log Message: Synced to 2.4.14 Index: Makefile =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/Makefile,v retrieving revision 1.39 retrieving revision 1.40 diff -u -d -r1.39 -r1.40 --- Makefile 2001/10/29 00:10:57 1.39 +++ Makefile 2001/11/13 19:38:21 1.40 @@ -1,6 +1,6 @@ VERSION = 2 PATCHLEVEL = 4 -SUBLEVEL = 13 +SUBLEVEL = 14 EXTRAVERSION = -ruby KERNELRELEASE=$(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION) |
From: johann d. <jd...@us...> - 2001-11-13 19:18:34
|
Update of /cvsroot/linuxconsole/ruby/linux/include/linux In directory usw-pr-cvs1:/tmp/cvs-serv30426 Modified Files: input.h Log Message: Attack and fade levels in ff_effect are now unsigned. Index: input.h =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/include/linux/input.h,v retrieving revision 1.54 retrieving revision 1.55 diff -u -d -r1.54 -r1.55 --- input.h 2001/10/27 14:44:17 1.54 +++ input.h 2001/11/13 19:18:31 1.55 @@ -522,9 +522,9 @@ struct ff_shape { __u16 attack_length; /* Duration of attack (ms) */ - __s16 attack_level; /* Level at beginning of attack */ + __u16 attack_level; /* Level at beginning of attack */ __u16 fade_length; /* Duration of fade (ms) */ - __s16 fade_level; /* Level at end of fade */ + __u16 fade_level; /* Level at end of fade */ }; /* FF_CONSTANT */ |
From: Paul M. <le...@us...> - 2001-11-13 02:09:22
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/video In directory usw-pr-cvs1:/tmp/cvs-serv28890 Modified Files: fbmem.c Added Files: tx3912fb.c tx3912fb.h Log Message: Added tx3912fb driver port by Dean Scott. --- NEW FILE: tx3912fb.c --- /* * linux/drivers/video/tx3912fb.c * * Copyright (C) 1999 Harald Koerfgen * Copyright (C) 2001 Steven Hill (sj...@re...) * Copyright (C) 2001 Dean Scott (de...@th...) * * This file is subject to the terms and conditions of the GNU General Public * License. See the file COPYING in the main directory of this archive for * more details. * * Framebuffer for LCD controller in TMPR3912/05 and PR31700 processors */ #include <linux/module.h> #include <linux/kernel.h> #include <linux/errno.h> #include <linux/string.h> #include <linux/tty.h> #include <linux/delay.h> #include <linux/interrupt.h> #include <linux/init.h> #include <linux/pm.h> #include <linux/fb.h> #include <asm/bootinfo.h> #include <asm/uaccess.h> #include <linux/config.h> #include "tx3912fb.h" /* * Frame buffer, palette and console structures */ static struct fb_info fb_info; static u32 pseudo_palette[17]; static struct fb_fix_screeninfo tx3912fb_fix __initdata = { TX3912FB_NAME, (unsigned long) NULL, 0, FB_TYPE_PACKED_PIXELS, 0, FB_VISUAL_TRUECOLOR, 0, 1, 1, 1, (unsigned long) NULL, 0, FB_ACCEL_NONE }; static int tx3912fb_setcolreg(u_int regno, u_int red, u_int green, u_int blue, u_int transp, struct fb_info *info) { if (regno > 255) return 1; red >>= 8; green >>= 8; blue >>= 8; switch (info->var.bits_per_pixel) { case 8: red &= 0xe000; green &= 0xe000; blue &= 0xc000; ((u8 *)(info->pseudo_palette))[regno] = (red >> 8) | (green >> 11) | (blue >> 14); break; } return 0; } /* * Frame buffer operations structure used by console driver */ static struct fb_ops tx3912fb_ops = { owner: THIS_MODULE, fb_setcolreg: tx3912fb_setcolreg, fb_fillrect: cfb_fillrect, fb_copyarea: cfb_copyarea, fb_imageblit: cfb_imageblit, }; /* * Initialization of the framebuffer */ int __init tx3912fb_init(void) { /* Stop the video logic when frame completes */ VidCtrl1 |= ENFREEZEFRAME; IntClear1 |= INT1_LCDINT; while (!(IntStatus1 & INT1_LCDINT)); /* Disable the video logic */ VidCtrl1 &= ~(ENVID | DISPON); udelay(200); /* Set start address for DMA transfer */ VidCtrl3 = tx3912fb_paddr & (TX3912_VIDCTRL3_VIDBANK_MASK | TX3912_VIDCTRL3_VIDBASEHI_MASK); /* Set end address for DMA transfer */ VidCtrl4 = (tx3912fb_paddr + tx3912fb_size + 1) & TX3912_VIDCTRL4_VIDBASELO_MASK; /* Set the pixel depth */ switch (tx3912fb_info.bits_per_pixel) { case 1: /* Monochrome */ VidCtrl1 &= ~TX3912_VIDCTRL1_BITSEL_MASK; tx3912fb_fix.visual = FB_VISUAL_MONO10; break; case 4: /* 4-bit gray */ VidCtrl1 &= ~TX3912_VIDCTRL1_BITSEL_MASK; VidCtrl1 |= TX3912_VIDCTRL1_4BIT_GRAY; tx3912fb_fix.visual = FB_VISUAL_TRUECOLOR; break; case 8: /* 8-bit color */ VidCtrl1 &= ~TX3912_VIDCTRL1_BITSEL_MASK; VidCtrl1 |= TX3912_VIDCTRL1_8BIT_COLOR; tx3912fb_fix.visual = FB_VISUAL_TRUECOLOR; break; case 2: default: /* 2-bit gray */ VidCtrl1 &= ~TX3912_VIDCTRL1_BITSEL_MASK; VidCtrl1 |= TX3912_VIDCTRL1_2BIT_GRAY; tx3912fb_fix.visual = FB_VISUAL_PSEUDOCOLOR; break; } /* Unfreeze video logic and enable DF toggle */ VidCtrl1 &= ~(ENFREEZEFRAME | DFMODE); udelay(200); /* Clear the framebuffer */ memset((void *) tx3912fb_vaddr, 0xff, tx3912fb_size); udelay(200); /* Enable the video logic */ VidCtrl1 |= (DISPON | ENVID); tx3912fb_fix.smem_start = tx3912fb_vaddr; tx3912fb_fix.smem_len = tx3912fb_size; fb_info.node = -1; fb_info.fbops = &tx3912fb_ops; fb_info.flags = FBINFO_FLAG_DEFAULT; fb_info.var = tx3912fb_info; fb_info.fix = tx3912fb_fix; fb_info.pseudo_palette = pseudo_palette; if (register_framebuffer(&fb_info) < 0) return -EINVAL; return 0; } static void __exit tx3912fb_exit(void) { unregister_framebuffer(&fb_info); } #ifdef MODULE module_init(tx3912fb_init); module_exit(tx3912fb_exit); MODULE_LICENSE("GPL"); #endif --- NEW FILE: tx3912fb.h --- /* * linux/drivers/video/tx3912fb.h * * Copyright (C) 2001 Steven Hill (sj...@re...) * * This file is subject to the terms and conditions of the GNU General Public * License. See the file COPYING in the main directory of this archive for * more details. * * Includes for TMPR3912/05 and PR31700 LCD controller registers */ #include <asm/tx3912.h> #define VidCtrl1 REG_AT(0x028) #define VidCtrl2 REG_AT(0x02C) #define VidCtrl3 REG_AT(0x030) #define VidCtrl4 REG_AT(0x034) #define VidCtrl5 REG_AT(0x038) #define VidCtrl6 REG_AT(0x03C) #define VidCtrl7 REG_AT(0x040) #define VidCtrl8 REG_AT(0x044) #define VidCtrl9 REG_AT(0x048) #define VidCtrl10 REG_AT(0x04C) #define VidCtrl11 REG_AT(0x050) #define VidCtrl12 REG_AT(0x054) #define VidCtrl13 REG_AT(0x058) #define VidCtrl14 REG_AT(0x05C) /* Video Control 1 Register */ #define LINECNT 0xffc00000 #define LINECNT_SHIFT 22 #define LOADDLY BIT(21) #define BAUDVAL (BIT(20) | BIT(19) | BIT(18) | BIT(17) | BIT(16)) #define BAUDVAL_SHIFT 16 #define VIDDONEVAL (BIT(15) | BIT(14) | BIT(13) | BIT(12) | BIT(11) | BIT(10) | BIT(9)) #define VIDDONEVAL_SHIFT 9 #define ENFREEZEFRAME BIT(8) #define TX3912_VIDCTRL1_BITSEL_MASK 0x000000c0 #define TX3912_VIDCTRL1_2BIT_GRAY 0x00000040 #define TX3912_VIDCTRL1_4BIT_GRAY 0x00000080 #define TX3912_VIDCTRL1_8BIT_COLOR 0x000000c0 #define BITSEL_SHIFT 6 #define DISPSPLIT BIT(5) #define DISP8 BIT(4) #define DFMODE BIT(3) #define INVVID BIT(2) #define DISPON BIT(1) #define ENVID BIT(0) /* Video Control 2 Register */ #define VIDRATE_MASK 0xffc00000 #define VIDRATE_SHIFT 22 #define HORZVAL_MASK 0x001ff000 #define HORZVAL_SHIFT 12 #define LINEVAL_MASK 0x000001ff /* Video Control 3 Register */ #define TX3912_VIDCTRL3_VIDBANK_MASK 0xfff00000 #define TX3912_VIDCTRL3_VIDBASEHI_MASK 0x000ffff0 /* Video Control 4 Register */ #define TX3912_VIDCTRL4_VIDBASELO_MASK 0x000ffff0 /* * Begin platform specific configurations */ #if defined(CONFIG_NINO_4MB) || defined(CONFIG_NINO_8MB) #define FB_X_RES 240 #define FB_Y_RES 320 #if defined(CONFIG_FBCON_CFB4) #define FB_BPP 4 #else #if defined(CONFIG_FBCON_CFB2) #define FB_BPP 2 #else #define FB_BPP 1 #endif #endif #define FB_IS_GREY 1 #define FB_IS_INVERSE 0 #endif #ifdef CONFIG_NINO_16MB #define FB_X_RES 240 #define FB_Y_RES 320 #define FB_BPP 8 #define FB_IS_GREY 0 #define FB_IS_INVERSE 0 #endif /* * Define virtual resolutions if necessary */ #ifndef FB_X_VIRTUAL_RES #define FB_X_VIRTUAL_RES FB_X_RES #endif #ifndef FB_Y_VIRTUAL_RES #define FB_Y_VIRTUAL_RES FB_Y_RES #endif /* * Framebuffer address and size */ u_long tx3912fb_paddr = 0; u_long tx3912fb_vaddr = 0; u_long tx3912fb_size = (FB_X_RES * FB_Y_RES * FB_BPP / 8); /* * Framebuffer info structure */ static struct fb_var_screeninfo tx3912fb_info = { FB_X_RES, FB_Y_RES, FB_X_VIRTUAL_RES, FB_Y_VIRTUAL_RES, 0, 0, FB_BPP, FB_IS_GREY, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, 0, FB_ACTIVATE_NOW, -1, -1, 0, 20000, 64, 64, 32, 32, 64, 2, 0, FB_VMODE_NONINTERLACED, {0,0,0,0,0,0} }; /* * Framebuffer name */ static char TX3912FB_NAME[16] = "tx3912fb"; Index: fbmem.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/video/fbmem.c,v retrieving revision 1.53 retrieving revision 1.54 diff -u -d -r1.53 -r1.54 --- fbmem.c 2001/10/10 16:31:16 1.53 +++ fbmem.c 2001/11/13 02:09:18 1.54 @@ -128,6 +128,7 @@ extern int sisfb_setup(char*); extern int stifb_init(void); extern int stifb_setup(char*); +extern int tx3912fb_init(void); extern int radeonfb_init(void); extern int radeonfb_setup(char*); extern int sstfb_init(void); @@ -318,6 +319,9 @@ #endif #ifdef CONFIG_FB_VR4181 { "vr4181fb", vr4181fb_init, NULL }, +#endif +#ifdef CONFIG_FB_TX3912 + { "tx3912", tx3912fb_init, NULL }, #endif /* |
From: johann d. <jd...@us...> - 2001-11-10 09:46:22
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/input In directory usw-pr-cvs1:/tmp/cvs-serv16209 Modified Files: iforce-main.c iforce-usb.c Log Message: Added Guillemot Force Feedback Racing Wheel. Index: iforce-main.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/iforce-main.c,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- iforce-main.c 2001/10/28 19:10:24 1.4 +++ iforce-main.c 2001/11/10 09:46:19 1.5 @@ -54,6 +54,7 @@ { 0x05ef, 0x8884, "AVB Mag Turbo Force", btn_wheel, abs_wheel, ff_iforce }, { 0x05ef, 0x8888, "AVB Top Shot Force Feedback Racing Wheel", btn_avb_tw, abs_wheel, ff_iforce }, { 0x06f8, 0x0001, "Guillemot Race Leader Force Feedback", btn_wheel, abs_wheel, ff_iforce }, + { 0x06f8, 0x0004, "Guillemot Force Feedback Racing Wheel", btn_wheel, abs_wheel, ff_iforce }, { 0x0000, 0x0000, "Unknown I-Force Device [%04x:%04x]", btn_joystick, abs_joystick, ff_iforce } }; Index: iforce-usb.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/iforce-usb.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- iforce-usb.c 2001/10/16 21:05:57 1.2 +++ iforce-usb.c 2001/11/10 09:46:19 1.3 @@ -151,6 +151,7 @@ { USB_DEVICE(0x05ef, 0x8884) }, /* AVB Mag Turbo Force */ { USB_DEVICE(0x05ef, 0x8888) }, /* AVB Top Shot FFB Racing Wheel */ { USB_DEVICE(0x06f8, 0x0001) }, /* Guillemot Race Leader Force Feedback */ + { USB_DEVICE(0x06f8, 0x0004) }, /* Guillemot Force Feedback Racing Wheel */ { } /* Terminating entry */ }; |
From: johann d. <jd...@us...> - 2001-11-10 09:45:12
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/input In directory usw-pr-cvs1:/tmp/cvs-serv15836 Modified Files: iforce-ff.c Log Message: Small fix concerning attack and fade level. Those are unsigned values. Index: iforce-ff.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/iforce-ff.c,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- iforce-ff.c 2001/10/28 19:10:24 1.5 +++ iforce-ff.c 2001/11/10 09:45:09 1.6 @@ -130,11 +130,11 @@ data[2] = LO(attack_duration); data[3] = HI(attack_duration); - data[4] = HIFIX80(initial_level); + data[4] = HI(initial_level); data[5] = LO(fade_duration); data[6] = HI(fade_duration); - data[7] = HIFIX80(final_level); + data[7] = HI(final_level); iforce_send_packet(iforce, FF_CMD_SHAPE, data); |
From: James S. <jsi...@us...> - 2001-11-07 19:43:55
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/video In directory usw-pr-cvs1:/tmp/cvs-serv11491 Added Files: fbgen2.c Log Message: Added wrapper so people can test rubyifed fbdev drivers on standard 2.4.X trees. I still need to add a fbcon-accel.c wrapper as well. --- NEW FILE: fbgen2.c --- /* * linux/drivers/video/fbgen2.c -- Generic routines for frame buffer devices * * Created 27 June 2001 by "Crazy" James Simmons <jsi...@tr...> * * 2001 - Documented with DocBook * - Brad Douglas <br...@ne...> * * This file is subject to the terms and conditions of the GNU General Public * License. See the file COPYING in the main directory of this archive * for more details. */ #include <linux/module.h> #include <linux/string.h> #include <linux/tty.h> #include <linux/fb.h> #include <linux/malloc.h> #include <asm/uaccess.h> #include <asm/io.h> #include <video/fbcon.h> /** * fbgen_set_disp - set generic display * @con: virtual console number * @info: generic frame buffer info structure * * Sets a display on virtual console @con for device @info. * */ void fbgen2_set_disp(int con, struct fb_info *info) { struct display *display; if (con >= 0) display = &fb_display[con]; else display = info->disp; /* used during initialization */ display->screen_base = info->screen_base; display->var = info->var; display->visual = info->fix.visual; display->type = info->fix.type; display->type_aux = info->fix.type_aux; display->ypanstep = info->fix.ypanstep; display->ywrapstep = info->fix.ywrapstep; display->line_length = info->fix.line_length; if (info->blank || info->fix.visual == FB_VISUAL_PSEUDOCOLOR || info->fix.visual == FB_VISUAL_DIRECTCOLOR) display->can_soft_blank = 1; else display->can_soft_blank = 0; #if 0 /* FIXME: generic inverse is not supported yet */ display->inverse = (info->fix.visual==FB_VISUAL_MONO01 ? !inverse : inverse); #else display->inverse = info->fix.visual == FB_VISUAL_MONO01; #endif switch (info->var.bits_per_pixel) { #ifdef FBCON_HAS_CFB4 case 4: display->dispsw = &fbcon_cfb4; break; #endif #ifdef FBCON_HAS_CFB8 case 8: display->dispsw = &fbcon_cfb8; break; #endif #ifdef FBCON_HAS_CFB16 case 12: case 16: display->dispsw = &fbcon_cfb16; display->dispsw_data = info->pseudo_palette; break; #endif #ifdef FBCON_HAS_CFB32 case 32: display->dispsw = &fbcon_cfb32; display->dispsw_data = info->pseudo_palette; break; #endif default: display->dispsw = &fbcon_dummy; break; } } /* ---- `Generic' versions of the frame buffer device operations ----------- */ /** * fbgen_get_fix - get fixed part of display * @fix: fb_fix_screeninfo structure * @con: virtual console number * @info: frame buffer info structure * * Get the fixed information part of the display and place it * into @fix for virtual console @con on device @info. * * Returns negative errno on error, or zero on success. * */ int fbgen_get_fix(struct fb_fix_screeninfo *fix, int con, struct fb_info *info) { *fix = info->fix; return 0; } /** * fbgen_get_var - get user defined part of display * @var: fb_var_screeninfo structure * @con: virtual console number * @info: frame buffer info structure * * Get the user defined part of the display and place it into @var * for virtual console @con on device @info. * * Returns negative errno on error, or zero for success. * */ int fbgen_get_var(struct fb_var_screeninfo *var, int con, struct fb_info *info) { if (con == info->currcon) var = &info->var; else var = &fb_display[con].var; return 0; } /** * fbgen_set_var - set the user defined part of display * @var: fb_var_screeninfo user defined part of the display * @con: virtual console number * @info: frame buffer info structure * * Set the user defined part of the display as dictated by @var * for virtual console @con on device @info. * * Returns negative errno on error, or zero for success. * */ int fbgen_set_var(struct fb_var_screeninfo *var, int con, struct fb_info *info) { struct fb_bitfield oldred, oldgreen, oldblue, oldalpha; int oldbpp, err; if (memcmp(&info->var, var, sizeof(var)) || con < 0) { if ((err = info->fbops->fb_check_var(var, info))) return err; if (var->activate & FB_ACTIVATE_ALL) info->disp->var = *var; if ((var->activate & FB_ACTIVATE_MASK) == FB_ACTIVATE_NOW) { oldbpp = info->var.bits_per_pixel; oldred = info->var.red; oldblue = info->var.blue; oldgreen = info->var.green; oldalpha = info->var.transp; if (info->fbops->fb_set_par) info->fbops->fb_set_par(info); info->var = *var; fbgen2_set_disp(con, info); if (info->changevar) (*info->changevar)(con); if (oldbpp != var->bits_per_pixel || memcmp(&oldred,&info->var.red,sizeof(oldred)) || memcmp(&oldgreen,&info->var.green,sizeof(oldgreen)) || memcmp(&oldblue, &info->var.blue, sizeof(oldblue)) || memcmp(&oldalpha,&info->var.transp,sizeof(oldalpha))){ if ((err = fb_alloc_cmap(&info->cmap, 0, 0))) return err; fb_set_cmap(&info->cmap, 1, info->fbops->fb_setcolreg, info); } } var->activate = 0; } return 0; } /** * fbgen_get_cmap - get the colormap * @cmap: frame buffer colormap structure * @kspc: boolean, 0 copy local, 1 put_user() function * @con: virtual console number * @info: frame buffer info structure * * Gets the colormap for virtual console @con and places it into * @cmap for device @info. * * Returns negative errno on error, or zero for success. * */ int fbgen_get_cmap(struct fb_cmap *cmap, int kspc, int con, struct fb_info *info) { struct fb_cmap *dcmap; if (con == info->currcon) dcmap = &info->cmap; else dcmap = &fb_display[con].cmap; fb_copy_cmap(dcmap, cmap, kspc ? 0 : 2); return 0; } /** * fbgen_set_cmap - set the colormap * @cmap: frame buffer colormap structure * @kspc: boolean, 0 copy local, 1 get_user() function * @con: virtual console number * @info: frame buffer info structure * * Sets the colormap @cmap for virtual console @con on * device @info. * * Returns negative errno on error, or zero for success. * */ int fbgen_set_cmap(struct fb_cmap *cmap, int kspc, int con, struct fb_info *info) { struct fb_cmap *dcmap; int err = 0; if (con == info->currcon) dcmap = &info->cmap; else dcmap = &fb_display[con].cmap; /* no colormap allocated? */ if (!dcmap->len) err = fb_alloc_cmap(dcmap, 256, 0); if (!err && con == info->currcon) err = fb_set_cmap(cmap, kspc, info->fbops->fb_setcolreg, info); if (!err) fb_copy_cmap(cmap, dcmap, kspc ? 0 : 1); return err; } /** * fbgen_update_var - update user defined part of display * @con: virtual console number * @info: frame buffer info structure * * Updates the user defined part of the display ('var' * structure) on virtual console @con for device @info. * This function is called by fbcon.c. * * Returns negative errno on error, or zero for success. * */ int fbgen_update_var(int con, struct fb_info *info) { int err = 0; if (info->fbops->fb_pan_display) err = info->fbops->fb_pan_display(&fb_display[con].var,con,info); return err; } /** * fbgen_switch - switch to a different virtual console. * @con: virtual console number * @info: frame buffer info structure * * Switch to virtuall console @con on device @info. * * Returns zero. * */ int fbgen_switch(int con, struct fb_info *info) { struct display *disp; struct fb_cmap *cmap; if (con == info->currcon) return 0; if (info->currcon >= 0) { disp = fb_display + info->currcon; /* * Save the old colormap and video mode. */ disp->var = info->var; if (disp->cmap.len) fb_copy_cmap(&info->cmap, &disp->cmap, 0); } info->currcon = con; disp = fb_display + con; if (disp->cmap.len) cmap = &disp->cmap; else cmap = fb_default_cmap(1 << disp->var.bits_per_pixel); fb_copy_cmap(cmap, &info->cmap, 0); info->var = disp->var; info->var.activate = FB_ACTIVATE_NOW; fbgen_set_var(&info->var, con, info); return 0; } |
From: Vojtech P. <vo...@us...> - 2001-11-07 19:02:58
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/input In directory usw-pr-cvs1:/tmp/cvs-serv32008 Modified Files: hid-core.c Log Message: Fix physical maximum as well. Index: hid-core.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/hid-core.c,v retrieving revision 1.32 retrieving revision 1.33 diff -u -d -r1.32 -r1.33 --- hid-core.c 2001/11/07 08:12:49 1.32 +++ hid-core.c 2001/11/07 19:02:56 1.33 @@ -321,7 +321,10 @@ return 0; case HID_GLOBAL_ITEM_TAG_PHYSICAL_MAXIMUM: - parser->global.physical_maximum = item_sdata(item); + if (parser->global.physical_minimum < 0) + parser->global.physical_maximum = item_sdata(item); + else + parser->global.physical_maximum = item_udata(item); return 0; case HID_GLOBAL_ITEM_TAG_UNIT_EXPONENT: |
From: Romain D. <do...@us...> - 2001-11-07 10:19:23
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/video In directory usw-pr-cvs1:/tmp/cvs-serv17865 Modified Files: fbcon.c Log Message: fix to 'fbcon_setup' Index: fbcon.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/video/fbcon.c,v retrieving revision 1.56 retrieving revision 1.57 diff -u -d -r1.56 -r1.57 --- fbcon.c 2001/10/29 00:11:00 1.56 +++ fbcon.c 2001/11/07 10:19:20 1.57 @@ -166,12 +166,14 @@ static int __init fbcon_setup(char *options) { + char *this_opt; if (!options || !*options) return 0; while (this_opt = strsep(&options, ",")) { - if (!strncmp(options, "font:", 5)) - strcpy(fontname, options+5); + if (!strncmp(this_opt, "font:", 5)) + strcpy(fontname, this_opt+5); + } return 0; } |
From: Romain D. <do...@us...> - 2001-11-07 09:52:29
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers In directory usw-pr-cvs1:/tmp/cvs-serv9911 Modified Files: Makefile Log Message: comment 'ssi' from drivers/Makefile, directory doesn't exist in regular 2.4.13 ; also typo (subdif <-> subdir) Index: Makefile =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/Makefile,v retrieving revision 1.21 retrieving revision 1.22 diff -u -d -r1.21 -r1.22 --- Makefile 2001/11/07 09:47:01 1.21 +++ Makefile 2001/11/07 09:52:26 1.22 @@ -47,7 +47,7 @@ subdir-$(CONFIG_ACPI) += acpi subdir-$(CONFIG_BLUEZ) += bluetooth -subdif-$(CONFIG_SSI) += ssi +# subdir-$(CONFIG_SSI) += ssi include $(TOPDIR)/Rules.make |
From: Romain D. <do...@us...> - 2001-11-07 09:47:04
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers In directory usw-pr-cvs1:/tmp/cvs-serv8488 Modified Files: Makefile Log Message: put back 'l3' in mod-subdirs Index: Makefile =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/Makefile,v retrieving revision 1.20 retrieving revision 1.21 diff -u -d -r1.20 -r1.21 --- Makefile 2001/11/07 09:41:50 1.20 +++ Makefile 2001/11/07 09:47:01 1.21 @@ -8,7 +8,7 @@ mod-subdirs := dio mtd sbus macintosh usb input telephony sgi ide \ message/i2o message/fusion scsi md ieee1394 pnp isdn atm \ - fc4 net/hamradio i2c acpi bluetooth serial # l3 + fc4 net/hamradio i2c l3 acpi bluetooth serial subdir-y := parport char block net sound misc media cdrom video # hotplug subdir-m := $(subdir-y) |
From: Romain D. <do...@us...> - 2001-11-07 09:41:52
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers In directory usw-pr-cvs1:/tmp/cvs-serv6886 Modified Files: Makefile Log Message: comment 'l3' from drivers/Makefile, directory doesn't exist in regular 2.4.13 Index: Makefile =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/Makefile,v retrieving revision 1.19 retrieving revision 1.20 diff -u -d -r1.19 -r1.20 --- Makefile 2001/11/07 09:35:32 1.19 +++ Makefile 2001/11/07 09:41:50 1.20 @@ -43,7 +43,7 @@ # CONFIG_HAMRADIO can be set without CONFIG_NETDEVICE being set -- ch subdir-$(CONFIG_HAMRADIO) += net/hamradio subdir-$(CONFIG_I2C) += i2c -subdir-$(CONFIG_L3) += l3 +# subdir-$(CONFIG_L3) += l3 subdir-$(CONFIG_ACPI) += acpi subdir-$(CONFIG_BLUEZ) += bluetooth |
From: Romain D. <do...@us...> - 2001-11-07 09:35:35
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers In directory usw-pr-cvs1:/tmp/cvs-serv5089 Modified Files: Makefile Log Message: comment 'l3' from drivers/Makefile, directory doesn't exist in regular 2.4.13 Index: Makefile =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/Makefile,v retrieving revision 1.18 retrieving revision 1.19 diff -u -d -r1.18 -r1.19 --- Makefile 2001/11/07 09:32:59 1.18 +++ Makefile 2001/11/07 09:35:32 1.19 @@ -8,7 +8,7 @@ mod-subdirs := dio mtd sbus macintosh usb input telephony sgi ide \ message/i2o message/fusion scsi md ieee1394 pnp isdn atm \ - fc4 net/hamradio i2c l3 acpi bluetooth serial + fc4 net/hamradio i2c acpi bluetooth serial # l3 subdir-y := parport char block net sound misc media cdrom video # hotplug subdir-m := $(subdir-y) |
From: Romain D. <do...@us...> - 2001-11-07 09:33:02
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers In directory usw-pr-cvs1:/tmp/cvs-serv4112 Modified Files: Makefile Log Message: comment 'hotplug' from drivers/Makefile, directory doesn't exist in regular 2.4.13 Index: Makefile =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/Makefile,v retrieving revision 1.17 retrieving revision 1.18 diff -u -d -r1.17 -r1.18 --- Makefile 2001/11/02 00:57:43 1.17 +++ Makefile 2001/11/07 09:32:59 1.18 @@ -10,7 +10,7 @@ message/i2o message/fusion scsi md ieee1394 pnp isdn atm \ fc4 net/hamradio i2c l3 acpi bluetooth serial -subdir-y := parport char block net sound misc media cdrom video hotplug +subdir-y := parport char block net sound misc media cdrom video # hotplug subdir-m := $(subdir-y) |
From: Vojtech P. <vo...@us...> - 2001-11-07 09:01:20
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/input In directory usw-pr-cvs1:/tmp/cvs-serv23311 Modified Files: hid-input.c Log Message: Better hat fix. Index: hid-input.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/input/hid-input.c,v retrieving revision 1.17 retrieving revision 1.18 diff -u -d -r1.17 -r1.18 --- hid-input.c 2001/11/07 08:12:49 1.17 +++ hid-input.c 2001/11/07 09:01:18 1.18 @@ -58,7 +58,7 @@ static struct { __s32 x; __s32 y; -} hid_hat_to_axis[] = {{ 0,-1}, { 1,-1}, { 1, 0}, { 1, 1}, { 0, 1}, {-1, 1}, {-1, 0}, {-1,-1}}; +} hid_hat_to_axis[] = {{ 0, 0}, { 0,-1}, { 1,-1}, { 1, 0}, { 1, 1}, { 0, 1}, {-1, 1}, {-1, 0}, {-1,-1}}; static void hidinput_configure_usage(struct hid_device *device, struct hid_field *field, struct hid_usage *usage) { @@ -337,8 +337,8 @@ int *quirks = &hid->quirks; if (usage->hat_min != usage->hat_max) { - value = (value - usage->hat_min) * 8 / (usage->hat_max - usage->hat_min + 1); - if (value > 8) value = 8; + value = (value - usage->hat_min) * 8 / (usage->hat_max - usage->hat_min + 1) + 1; + if (value < 0 || value > 8) value = 0; input_event(input, usage->type, usage->code , hid_hat_to_axis[value].x); input_event(input, usage->type, usage->code + 1, hid_hat_to_axis[value].y); return; |