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...> - 2002-05-06 17:30:03
|
Update of /cvsroot/linuxconsole/ruby/linux/arch/sparc64 In directory usw-pr-cvs1:/tmp/cvs-serv26626/linux/arch/sparc64 Modified Files: config.in Log Message: Synced against 2.5.14 Index: config.in =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/arch/sparc64/config.in,v retrieving revision 1.25 retrieving revision 1.26 diff -u -d -r1.25 -r1.26 --- config.in 22 Mar 2002 20:13:58 -0000 1.25 +++ config.in 6 May 2002 17:29:59 -0000 1.26 @@ -261,9 +261,7 @@ source drivers/usb/Config.in -if [ "$CONFIG_EXPERIMENTAL" = "y" ]; then - source net/bluetooth/Config.in -fi +source net/bluetooth/Config.in mainmenu_option next_comment comment 'Watchdog' |
From: James S. <jsi...@us...> - 2002-05-06 17:30:03
|
Update of /cvsroot/linuxconsole/ruby/linux/include/linux In directory usw-pr-cvs1:/tmp/cvs-serv26626/linux/include/linux Removed Files: kd.h Log Message: Synced against 2.5.14 --- kd.h DELETED --- |
From: James S. <jsi...@us...> - 2002-05-06 17:30:02
|
Update of /cvsroot/linuxconsole/ruby/linux/arch/arm In directory usw-pr-cvs1:/tmp/cvs-serv26626/linux/arch/arm Modified Files: config.in Log Message: Synced against 2.5.14 Index: config.in =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/arch/arm/config.in,v retrieving revision 1.24 retrieving revision 1.25 diff -u -d -r1.24 -r1.25 --- config.in 24 Apr 2002 18:56:49 -0000 1.24 +++ config.in 6 May 2002 17:29:59 -0000 1.25 @@ -613,9 +613,7 @@ source drivers/usb/Config.in -if [ "$CONFIG_EXPERIMENTAL" = "y" ]; then - source net/bluetooth/Config.in -fi +source net/bluetooth/Config.in mainmenu_option next_comment comment 'Kernel hacking' |
From: James S. <jsi...@us...> - 2002-05-06 17:30:02
|
Update of /cvsroot/linuxconsole/ruby In directory usw-pr-cvs1:/tmp/cvs-serv26626 Added Files: AGAINST-2.5.14 Removed Files: AGAINST-2.5.13 Log Message: Synced against 2.5.14 --- NEW FILE: AGAINST-2.5.14 --- --- AGAINST-2.5.13 DELETED --- |
From: James S. <jsi...@us...> - 2002-05-06 17:30:02
|
Update of /cvsroot/linuxconsole/ruby/linux/arch/ppc In directory usw-pr-cvs1:/tmp/cvs-serv26626/linux/arch/ppc Modified Files: config.in Log Message: Synced against 2.5.14 Index: config.in =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/arch/ppc/config.in,v retrieving revision 1.30 retrieving revision 1.31 diff -u -d -r1.30 -r1.31 --- config.in 24 Apr 2002 18:56:51 -0000 1.30 +++ config.in 6 May 2002 17:29:59 -0000 1.31 @@ -579,9 +579,7 @@ source drivers/usb/Config.in -if [ "$CONFIG_EXPERIMENTAL" = "y" ]; then - source net/bluetooth/Config.in -fi +source net/bluetooth/Config.in source lib/Config.in |
From: James S. <jsi...@us...> - 2002-05-06 17:30:02
|
Update of /cvsroot/linuxconsole/ruby/linux In directory usw-pr-cvs1:/tmp/cvs-serv26626/linux Modified Files: Makefile Log Message: Synced against 2.5.14 Index: Makefile =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/Makefile,v retrieving revision 1.56 retrieving revision 1.57 diff -u -d -r1.56 -r1.57 --- Makefile 3 May 2002 22:16:46 -0000 1.56 +++ Makefile 6 May 2002 17:29:59 -0000 1.57 @@ -1,6 +1,6 @@ VERSION = 2 PATCHLEVEL = 5 -SUBLEVEL = 13 +SUBLEVEL = 14 EXTRAVERSION = -ruby KERNELRELEASE=$(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION) |
From: James S. <jsi...@us...> - 2002-05-06 17:30:02
|
Update of /cvsroot/linuxconsole/ruby/linux/arch/i386 In directory usw-pr-cvs1:/tmp/cvs-serv26626/linux/arch/i386 Modified Files: config.in Log Message: Synced against 2.5.14 Index: config.in =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/arch/i386/config.in,v retrieving revision 1.40 retrieving revision 1.41 diff -u -d -r1.40 -r1.41 --- config.in 1 May 2002 18:07:49 -0000 1.40 +++ config.in 6 May 2002 17:29:59 -0000 1.41 @@ -382,9 +382,7 @@ source drivers/video/Config.in source drivers/usb/Config.in -if [ "$CONFIG_EXPERIMENTAL" = "y" ]; then - source net/bluetooth/Config.in -fi +source net/bluetooth/Config.in mainmenu_option next_comment comment 'Kernel hacking' |
From: James S. <jsi...@us...> - 2002-05-06 17:30:02
|
Update of /cvsroot/linuxconsole/ruby/linux/arch/ia64 In directory usw-pr-cvs1:/tmp/cvs-serv26626/linux/arch/ia64 Modified Files: config.in Log Message: Synced against 2.5.14 Index: config.in =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/arch/ia64/config.in,v retrieving revision 1.23 retrieving revision 1.24 diff -u -d -r1.23 -r1.24 --- config.in 1 May 2002 18:07:49 -0000 1.23 +++ config.in 6 May 2002 17:29:59 -0000 1.24 @@ -215,9 +215,7 @@ source lib/Config.in -if [ "$CONFIG_EXPERIMENTAL" = "y" ]; then - source net/bluetooth/Config.in -fi +source net/bluetooth/Config.in fi # !HP_SIM |
From: James S. <jsi...@us...> - 2002-05-06 17:30:02
|
Update of /cvsroot/linuxconsole/ruby/linux/arch/alpha In directory usw-pr-cvs1:/tmp/cvs-serv26626/linux/arch/alpha Modified Files: config.in Log Message: Synced against 2.5.14 Index: config.in =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/arch/alpha/config.in,v retrieving revision 1.29 retrieving revision 1.30 diff -u -d -r1.29 -r1.30 --- config.in 24 Apr 2002 18:56:49 -0000 1.29 +++ config.in 6 May 2002 17:29:59 -0000 1.30 @@ -355,9 +355,7 @@ source drivers/media/Config.in source drivers/video/Config.in -if [ "$CONFIG_EXPERIMENTAL" = "y" ]; then - source net/bluetooth/Config.in -fi +source net/bluetooth/Config.in mainmenu_option next_comment comment 'Kernel hacking' |
From: Brad M. <bra...@us...> - 2002-05-03 23:08:02
|
Update of /cvsroot/linuxconsole/ruby/web/htdocs/paper In directory usw-pr-cvs1:/tmp/cvs-serv6851 Modified Files: fbdev.html index.html Log Message: finished proofing what's here Index: fbdev.html =================================================================== RCS file: /cvsroot/linuxconsole/ruby/web/htdocs/paper/fbdev.html,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- fbdev.html 16 Apr 2002 19:45:13 -0000 1.3 +++ fbdev.html 3 May 2002 23:00:34 -0000 1.4 @@ -57,8 +57,8 @@ </H2> <P> - If you look at the current framebuffer console layer you will see alot -of replicated code and and huge of code handling tty/console functionality. + If you look at the current framebuffer console layer you will see a lot +of replicated code and and huge amount of code handling tty/console functionality. </P> @@ -77,13 +77,13 @@ struct vc_data to data in a device independent way in struct fb_info. Then various functions in struct fb_ops will be called to store the device dependent state in the par field in struct fb_info and to change the -hardware to that state. This allows a very clean seperation of the fbdev +hardware to that state. This allows a very clean separation of the fbdev layer from the console layer. It also allows one to use fbdev on its own -which is a bounus for embedded devices. The reason this approach works is -for each framebuffer device when used as a tty/console device is allocated +which is a bonus for embedded devices. The reason this approach works is +because each framebuffer device, when used as a tty/console device, is allocated a set of virtual terminals to it. Only one virtual terminal can be active per framebuffer device. We already have all the data we need in struct -vc_data so why store a bunch of colormaps and other fbdev specific data +vc_data so we shouldn't store a bunch of colormaps and other fbdev specific data per virtual terminal. </P> Index: index.html =================================================================== RCS file: /cvsroot/linuxconsole/ruby/web/htdocs/paper/index.html,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- index.html 12 Apr 2002 19:11:16 -0000 1.1 +++ index.html 3 May 2002 23:00:35 -0000 1.2 @@ -121,25 +121,25 @@ have very different needs and are very different from the classical PC. The initial Linux kernel code was designed on the standard PC which had a large influence on the code design. As Linux appears on new types of hardware devices -we begain to see limitations to some of the central designs. As Linux kept -evolving and expanding to new platforms hardware was encountered that didn't -fit the "PC" model. So instead often a extra interface of some kind either -userland or in kernel space was developed to compensate. +we began to see limitations of some of the central designs. As Linux kept +evolving and expanding to new platforms, hardware was encountered that didn't +fit the "PC" model. So instead often an extra interface of some kind, either +userland or in kernel space, was developed to compensate. <P> -One of the major areas of the kernel affected by this is the tty layer. Here we +One of the major areas of the kernel affected by this is the tty layer. Here we witness things like the classical definition for a virtual terminal starting to break down and the handling of complex human input devices addressed by the tty layer. Also for embedded devices size is critical especially when dealing with boot loaders which often make certain assumptions -or place certain limitations. Modular is also lacking. Often with modern embedded +or place certain limitations. Modularity is also lacking. Often with modern embedded devices we have removable pieces of hardware including things like keyboards -which where in a classic PC sense critical to have. +which were in a classic PC sense critical to have. <P> A major way of rethinking was needed to rework the tty layer. That way was to -reverse the flow of developement. The current way of thinking is expand the tty -features with new device interfaces that influence the behavior of the TTY. A +reverse the flow of development. The current way of thinking is to expand the tty +features with new device interfaces that influence the behavior of the TTY. An example of this is for a framebuffer console we use a /dev/fb interface to resize a tty device. The proper method to resize would be to use a standard that already exist i.e the POSIX tty ioctl call TIOCSWINSZ. |
From: Brad M. <bra...@us...> - 2002-05-03 22:50:22
|
Update of /cvsroot/linuxconsole/ruby/web/htdocs/paper In directory usw-pr-cvs1:/tmp/cvs-serv4312 Modified Files: intro.html Log Message: proofing pass Index: intro.html =================================================================== RCS file: /cvsroot/linuxconsole/ruby/web/htdocs/paper/intro.html,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- intro.html 15 Apr 2002 23:34:10 -0000 1.2 +++ intro.html 3 May 2002 22:50:19 -0000 1.3 @@ -57,26 +57,26 @@ </H1> <P> -Ten years when Linus started Linux the machine it was written on was a intel -machine with basic VGA support. Linux like other UNIX based operation systems +Ten years ago when Linus started Linux the machine it was written on was an Intel +machine with basic VGA support. Linux, like other UNIX based operation systems, developed a concept of a virtual terminal. In the old mainframe days the only way to access the mainframe was via a TTY (terminal teletype) device. They -basically where a monochrome, stylish green, display and a keyboard together -that connected to the mainframe by a serial line. With todays PC we still have +basically were a monochrome, stylish green, display and a keyboard together +that connected to the mainframe by a serial line. With today's PC we still have a monitor and a keyboard attached. So Linux simulates these type of TTYs. The -flexiablity of POSIX TTYs allows it to be applied to other types of hardware +flexibility of POSIX TTYs allows it to be applied to other types of hardware such as modems. <P> As you can see the TTY layer covers many types of pieces of hardware. Because it does cover so many types this presents very difficult issues. What we have seen is no clear boundaries between the various types of devices. You see -things pieces of tty/console code sprinckled through out various low level +things like pieces of tty/console code sprinckled throughout various low level drivers. This makes driver writing more complex than it needs to be. <P> -The second issue is the new types of hardware Linux has encountered. For -example is the Compaq iPAQ. It has a framebuffer display but no permenant +The second issue is the new types of hardware Linux has encountered. An +example is the Compaq iPAQ. It has a framebuffer display but no permanent keyboard. Having a built in VT makes no sense in this case. Having console code inside the framebuffer driver makes no sense. Have a pseudo keyboard make even less sense. @@ -84,33 +84,33 @@ <P> So the first step is to rework the lower device layers. Also in the process we form a uniform api for these layers. For various input devices we find we -are lacking a standard api. So for one part of the project we begain the +are lacking a standard api. So for one part of the project we began the task of porting every human input device over to a universal api. The api choosen was the input api implemented for the USB layer. This migrates the VT code for keyboard handling from a PC centeric keyboard design to a more -device indepedent format. +device independent format. <P> The second layer to rework is the framebuffer layer. The basic goal was to -removal all the console code out of the lower level drivers and make the -framebuffer layer be able to stand on it own to handle PDA type devices. +remove all the console code from the lower level drivers and make the +framebuffer layer be able to stand on its own to handle PDA type devices. <P> The final layer is the serial layer. The final goal is to model this layer -after the parport layer. Here we with have device interface independent layer +after the parport layer. Here we have a device interface independent layer and have device interfaces register with the core code. The reason for this -apporach is to deal with serial based input devices. Some platforms have serial -keyboards and it is unacceptable to have to run a unserland application just to -be able to use it via the tty layer. Again their is great code redundecy. +approach is to deal with serial based input devices. Some platforms have serial +keyboards and it is unacceptable to have to run a userland application just to +be able to use it via the tty layer. Again there is great code redundancy. <P> The final change was to the console layer itself. The main goal was to move away -from the VGA text mode centric design. Also another goal was to allow the console -and tty system more flexiable as I will point out later in this paper. +from the VGA text mode centric design. Also another goal was to make the console +and tty system more flexible as I will point out later in this paper. <P> This paper will examine designing and implementing a new tty layer that -is smaller, lighter weight and much more flexiable than the current system. +is smaller, lighter weight and much more flexible than the current system. <P> <HR> |
From: James S. <jsi...@us...> - 2002-05-03 22:16:50
|
Update of /cvsroot/linuxconsole/ruby/linux/arch/sparc In directory usw-pr-cvs1:/tmp/cvs-serv29603/linux/arch/sparc Modified Files: config.in Log Message: Synced against 2.5.13 Index: config.in =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/arch/sparc/config.in,v retrieving revision 1.26 retrieving revision 1.27 diff -u -d -r1.26 -r1.27 --- config.in 24 Apr 2002 18:56:51 -0000 1.26 +++ config.in 3 May 2002 22:16:46 -0000 1.27 @@ -36,6 +36,7 @@ define_bool CONFIG_SUN_IO y define_bool CONFIG_RWSEM_GENERIC_SPINLOCK y define_bool CONFIG_RWSEM_XCHGADD_ALGORITHM n +define_bool CONFIG_SUN_PM y bool 'Support for SUN4 machines (disables SUN4[CDM] support)' CONFIG_SUN4 if [ "$CONFIG_SUN4" != "y" ]; then |
From: James S. <jsi...@us...> - 2002-05-03 22:16:50
|
Update of /cvsroot/linuxconsole/ruby/linux/arch/ppc64/kernel In directory usw-pr-cvs1:/tmp/cvs-serv29603/linux/arch/ppc64/kernel Modified Files: chrp_setup.c iSeries_setup.c ioctl32.c open_pic.c setup.c Log Message: Synced against 2.5.13 Index: chrp_setup.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/arch/ppc64/kernel/chrp_setup.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- chrp_setup.c 16 Apr 2002 17:41:49 -0000 1.2 +++ chrp_setup.c 3 May 2002 22:16:46 -0000 1.3 @@ -56,7 +56,7 @@ #include <asm/irq.h> #include <asm/keyboard.h> #include <asm/init.h> -#include <asm/Naca.h> +#include <asm/naca.h> #include <asm/time.h> #include "local_irq.h" @@ -66,7 +66,6 @@ #include <asm/ppcdebug.h> extern volatile unsigned char *chrp_int_ack_special; -extern struct Naca *naca; void chrp_setup_pci_ptrs(void); void chrp_progress(char *, unsigned short); @@ -82,6 +81,9 @@ extern void pSeries_get_rtc_time(struct rtc_time *rtc_time); extern int pSeries_set_rtc_time(struct rtc_time *rtc_time); void pSeries_calibrate_decr(void); +static void fwnmi_init(void); +extern void SystemReset_FWNMI(void), MachineCheck_FWNMI(void); /* from head.S */ +int fwnmi_active; /* TRUE if an FWNMI handler is present */ kdev_t boot_dev; unsigned long virtPython0Facilities = 0; // python0 facility area (memory mapped io) (64-bit format) VIRTUAL address. @@ -144,6 +146,8 @@ printk("Boot arguments: %s\n", cmd_line); + fwnmi_init(); + /* Find and initialize PCI host bridges */ /* iSeries needs to be done much later. */ #ifndef CONFIG_PPC_ISERIES @@ -181,6 +185,23 @@ ppc_md.progress(UTS_RELEASE, 0x7777); } +/* Initialize firmware assisted non-maskable interrupts if + * the firmware supports this feature. + * + */ +static void __init fwnmi_init(void) +{ + long ret; + int ibm_nmi_register = rtas_token("ibm,nmi-register"); + if (ibm_nmi_register == RTAS_UNKNOWN_SERVICE) + return; + ret = rtas_call(ibm_nmi_register, 2, 1, NULL, + __pa((unsigned long)SystemReset_FWNMI), + __pa((unsigned long)MachineCheck_FWNMI)); + if (ret == 0) + fwnmi_active = 1; +} + /* Early initialization. Relocation is on but do not reference unbolted pages */ void __init pSeries_init_early(void) @@ -221,7 +242,7 @@ #endif /* CONFIG_BLK_DEV_INITRD */ #endif - ppc_md.ppc_machine = _machine; + ppc_md.ppc_machine = naca->platform; ppc_md.setup_arch = chrp_setup_arch; ppc_md.setup_residual = NULL; @@ -229,11 +250,9 @@ if(naca->interrupt_controller == IC_OPEN_PIC) { ppc_md.init_IRQ = openpic_init_IRQ; ppc_md.get_irq = openpic_get_irq; - ppc_md.post_irq = NULL; } else { ppc_md.init_IRQ = xics_init_IRQ; ppc_md.get_irq = xics_get_irq; - ppc_md.post_irq = NULL; } ppc_md.init_ras_IRQ = init_ras_IRQ; @@ -273,7 +292,7 @@ if (hex) udbg_printf("<chrp_progress> %s\n", s); - if (!rtas.base || (_machine != _MACH_pSeries)) + if (!rtas.base || (naca->platform != PLATFORM_PSERIES)) return; if (max_width == 0) { Index: iSeries_setup.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/arch/ppc64/kernel/iSeries_setup.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- iSeries_setup.c 16 Apr 2002 17:41:49 -0000 1.2 +++ iSeries_setup.c 3 May 2002 22:16:46 -0000 1.3 @@ -37,8 +37,8 @@ #include <asm/time.h> #include "iSeries_setup.h" -#include <asm/Naca.h> -#include <asm/Paca.h> +#include <asm/naca.h> +#include <asm/paca.h> #include <asm/iSeries/LparData.h> #include <asm/iSeries/HvCallHpt.h> #include <asm/iSeries/HvLpConfig.h> @@ -85,7 +85,6 @@ extern char _end[]; -extern struct Naca *naca; extern int rd_size; /* Defined in drivers/block/rd.c */ extern unsigned long klimit; extern unsigned long embedded_sysmap_start; @@ -296,7 +295,7 @@ initrd_start = (unsigned long)__va(naca->xRamDisk); initrd_end = initrd_start + naca->xRamDiskSize * PAGE_SIZE; initrd_below_start_ok = 1; // ramdisk in kernel space - ROOT_DEV = MKDEV( RAMDISK_MAJOR, 0 ); + ROOT_DEV = mk_kdev( RAMDISK_MAJOR, 0 ); if ( ((rd_size*1024)/PAGE_SIZE) < naca->xRamDiskSize ) rd_size = (naca->xRamDiskSize*PAGE_SIZE)/1024; @@ -305,7 +304,7 @@ #endif /* CONFIG_BLK_DEV_INITRD */ { - /* ROOT_DEV = MKDEV( VIODASD_MAJOR, 1 ); */ + /* ROOT_DEV = mk_kdev( VIODASD_MAJOR, 1 ); */ } iSeries_recal_tb = get_tb(); @@ -878,13 +877,13 @@ { if ( dprof_buffer ) { unsigned i; - for (i=0; i<maxPacas; ++i) { - xPaca[i].prof_shift = dprof_shift; - xPaca[i].prof_len = dprof_len-1; - xPaca[i].prof_buffer = dprof_buffer; - xPaca[i].prof_stext = (unsigned *)&_stext; + for (i=0; i<MAX_PACAS; ++i) { + paca[i].prof_shift = dprof_shift; + paca[i].prof_len = dprof_len-1; + paca[i].prof_buffer = dprof_buffer; + paca[i].prof_stext = (unsigned *)&_stext; mb(); - xPaca[i].prof_enabled = 1; + paca[i].prof_enabled = 1; } } } Index: ioctl32.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/arch/ppc64/kernel/ioctl32.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- ioctl32.c 16 Apr 2002 17:41:49 -0000 1.3 +++ ioctl32.c 3 May 2002 22:16:46 -0000 1.4 @@ -44,6 +44,7 @@ #include <linux/ppp_defs.h> #include <linux/if_ppp.h> #include <linux/if_pppox.h> +#include <linux/if_tun.h> #include <linux/mtio.h> #include <linux/cdrom.h> #include <linux/loop.h> @@ -102,20 +103,10 @@ #include <linux/usb.h> #include <linux/usbdevice_fs.h> #include <linux/nbd.h> +#include <linux/random.h> #include <asm/ppc32.h> #include <asm/ppcdebug.h> -/* Use this to get at 32-bit user passed pointers. - See sys_sparc32.c for description about these. */ -#define A(__x) ((unsigned long)(__x)) -#define AA(__x) \ -({ unsigned long __ret; \ - __asm__ ("clrldi %0, %0, 32" \ - : "=r" (__ret) \ - : "0" (__x)); \ - __ret; \ -}) - /* Aiee. Someone does not find a difference between int and long */ #define EXT2_IOC32_GETFLAGS _IOR('f', 1, int) #define EXT2_IOC32_SETFLAGS _IOW('f', 2, int) @@ -480,6 +471,7 @@ return -ENODEV; strcpy(ifr32.ifr_name, dev->name); + dev_put(dev); err = copy_to_user((struct ifreq32 *)arg, &ifr32, sizeof(struct ifreq32)); return (err ? -EFAULT : 0); @@ -1168,6 +1160,234 @@ return err; } +typedef struct sg_io_hdr32 { + s32 interface_id; /* [i] 'S' for SCSI generic (required) */ + s32 dxfer_direction; /* [i] data transfer direction */ + u8 cmd_len; /* [i] SCSI command length ( <= 16 bytes) */ + u8 mx_sb_len; /* [i] max length to write to sbp */ + u16 iovec_count; /* [i] 0 implies no scatter gather */ + u32 dxfer_len; /* [i] byte count of data transfer */ + u32 dxferp; /* [i], [*io] points to data transfer memory + or scatter gather list */ + u32 cmdp; /* [i], [*i] points to command to perform */ + u32 sbp; /* [i], [*o] points to sense_buffer memory */ + u32 timeout; /* [i] MAX_UINT->no timeout (unit: millisec) */ + u32 flags; /* [i] 0 -> default, see SG_FLAG... */ + s32 pack_id; /* [i->o] unused internally (normally) */ + u32 usr_ptr; /* [i->o] unused internally */ + u8 status; /* [o] scsi status */ + u8 masked_status; /* [o] shifted, masked scsi status */ + u8 msg_status; /* [o] messaging level data (optional) */ + u8 sb_len_wr; /* [o] byte count actually written to sbp */ + u16 host_status; /* [o] errors from host adapter */ + u16 driver_status; /* [o] errors from software driver */ + s32 resid; /* [o] dxfer_len - actual_transferred */ + u32 duration; /* [o] time taken by cmd (unit: millisec) */ + u32 info; /* [o] auxiliary information */ +} sg_io_hdr32_t; /* 64 bytes long (on sparc32) */ + +typedef struct sg_iovec32 { + u32 iov_base; + u32 iov_len; +} sg_iovec32_t; + +static int alloc_sg_iovec(sg_io_hdr_t *sgp, u32 uptr32) +{ + sg_iovec32_t *uiov = (sg_iovec32_t *) A(uptr32); + sg_iovec_t *kiov; + int i; + + sgp->dxferp = kmalloc(sgp->iovec_count * + sizeof(sg_iovec_t), GFP_KERNEL); + if (!sgp->dxferp) + return -ENOMEM; + memset(sgp->dxferp, 0, + sgp->iovec_count * sizeof(sg_iovec_t)); + + kiov = (sg_iovec_t *) sgp->dxferp; + for (i = 0; i < sgp->iovec_count; i++) { + u32 iov_base32; + if (__get_user(iov_base32, &uiov->iov_base) || + __get_user(kiov->iov_len, &uiov->iov_len)) + return -EFAULT; + + kiov->iov_base = kmalloc(kiov->iov_len, GFP_KERNEL); + if (!kiov->iov_base) + return -ENOMEM; + if (copy_from_user(kiov->iov_base, + (void *) A(iov_base32), + kiov->iov_len)) + return -EFAULT; + + uiov++; + kiov++; + } + + return 0; +} + +static int copy_back_sg_iovec(sg_io_hdr_t *sgp, u32 uptr32) +{ + sg_iovec32_t *uiov = (sg_iovec32_t *) A(uptr32); + sg_iovec_t *kiov = (sg_iovec_t *) sgp->dxferp; + int i; + + for (i = 0; i < sgp->iovec_count; i++) { + u32 iov_base32; + + if (__get_user(iov_base32, &uiov->iov_base)) + return -EFAULT; + + if (copy_to_user((void *) A(iov_base32), + kiov->iov_base, + kiov->iov_len)) + return -EFAULT; + + uiov++; + kiov++; + } + + return 0; +} + +static void free_sg_iovec(sg_io_hdr_t *sgp) +{ + sg_iovec_t *kiov = (sg_iovec_t *) sgp->dxferp; + int i; + + for (i = 0; i < sgp->iovec_count; i++) { + if (kiov->iov_base) { + kfree(kiov->iov_base); + kiov->iov_base = NULL; + } + kiov++; + } + kfree(sgp->dxferp); + sgp->dxferp = NULL; +} + +static int sg_ioctl_trans(unsigned int fd, unsigned int cmd, unsigned long arg) +{ + sg_io_hdr32_t *sg_io32; + sg_io_hdr_t sg_io64; + u32 dxferp32, cmdp32, sbp32; + mm_segment_t old_fs; + int err = 0; + + sg_io32 = (sg_io_hdr32_t *)arg; + err = __get_user(sg_io64.interface_id, &sg_io32->interface_id); + err |= __get_user(sg_io64.dxfer_direction, &sg_io32->dxfer_direction); + err |= __get_user(sg_io64.cmd_len, &sg_io32->cmd_len); + err |= __get_user(sg_io64.mx_sb_len, &sg_io32->mx_sb_len); + err |= __get_user(sg_io64.iovec_count, &sg_io32->iovec_count); + err |= __get_user(sg_io64.dxfer_len, &sg_io32->dxfer_len); + err |= __get_user(sg_io64.timeout, &sg_io32->timeout); + err |= __get_user(sg_io64.flags, &sg_io32->flags); + err |= __get_user(sg_io64.pack_id, &sg_io32->pack_id); + + sg_io64.dxferp = NULL; + sg_io64.cmdp = NULL; + sg_io64.sbp = NULL; + + err |= __get_user(cmdp32, &sg_io32->cmdp); + sg_io64.cmdp = kmalloc(sg_io64.cmd_len, GFP_KERNEL); + if (!sg_io64.cmdp) { + err = -ENOMEM; + goto out; + } + if (copy_from_user(sg_io64.cmdp, + (void *) A(cmdp32), + sg_io64.cmd_len)) { + err = -EFAULT; + goto out; + } + + err |= __get_user(sbp32, &sg_io32->sbp); + sg_io64.sbp = kmalloc(sg_io64.mx_sb_len, GFP_KERNEL); + if (!sg_io64.sbp) { + err = -ENOMEM; + goto out; + } + if (copy_from_user(sg_io64.sbp, + (void *) A(sbp32), + sg_io64.mx_sb_len)) { + err = -EFAULT; + goto out; + } + + err |= __get_user(dxferp32, &sg_io32->dxferp); + if (sg_io64.iovec_count) { + int ret; + + if ((ret = alloc_sg_iovec(&sg_io64, dxferp32))) { + err = ret; + goto out; + } + } else { + sg_io64.dxferp = kmalloc(sg_io64.dxfer_len, GFP_KERNEL); + if (!sg_io64.dxferp) { + err = -ENOMEM; + goto out; + } + if (copy_from_user(sg_io64.dxferp, + (void *) A(dxferp32), + sg_io64.dxfer_len)) { + err = -EFAULT; + goto out; + } + } + + /* Unused internally, do not even bother to copy it over. */ + sg_io64.usr_ptr = NULL; + + if (err) + return -EFAULT; + + old_fs = get_fs(); + set_fs (KERNEL_DS); + err = sys_ioctl (fd, cmd, (unsigned long) &sg_io64); + set_fs (old_fs); + + if (err < 0) + goto out; + + err = __put_user(sg_io64.pack_id, &sg_io32->pack_id); + err |= __put_user(sg_io64.status, &sg_io32->status); + err |= __put_user(sg_io64.masked_status, &sg_io32->masked_status); + err |= __put_user(sg_io64.msg_status, &sg_io32->msg_status); + err |= __put_user(sg_io64.sb_len_wr, &sg_io32->sb_len_wr); + err |= __put_user(sg_io64.host_status, &sg_io32->host_status); + err |= __put_user(sg_io64.driver_status, &sg_io32->driver_status); + err |= __put_user(sg_io64.resid, &sg_io32->resid); + err |= __put_user(sg_io64.duration, &sg_io32->duration); + err |= __put_user(sg_io64.info, &sg_io32->info); + err |= copy_to_user((void *)A(sbp32), sg_io64.sbp, sg_io64.mx_sb_len); + if (sg_io64.dxferp) { + if (sg_io64.iovec_count) + err |= copy_back_sg_iovec(&sg_io64, dxferp32); + else + err |= copy_to_user((void *)A(dxferp32), + sg_io64.dxferp, + sg_io64.dxfer_len); + } + if (err) + err = -EFAULT; + +out: + if (sg_io64.cmdp) + kfree(sg_io64.cmdp); + if (sg_io64.sbp) + kfree(sg_io64.sbp); + if (sg_io64.dxferp) { + if (sg_io64.iovec_count) { + free_sg_iovec(&sg_io64); + } else { + kfree(sg_io64.dxferp); + } + } + return err; +} + struct ppp_option_data32 { __kernel_caddr_t32 ptr; __u32 length; @@ -3066,13 +3286,12 @@ return rw_long(fd, AUTOFS_IOC_SETTIMEOUT, arg); } -#if 0 struct usbdevfs_ctrltransfer32 { - __u8 requesttype; - __u8 request; - __u16 value; - __u16 index; - __u16 length; + __u8 bRequestType; + __u8 bRequest; + __u16 wValue; + __u16 wIndex; + __u16 wLength; __u32 timeout; /* in milliseconds */ __u32 data; }; @@ -3102,14 +3321,14 @@ /* In usbdevice_fs, it limits the control buffer to a page, * for simplicity so do we. */ - if (!uptr || kctrl.length > PAGE_SIZE) + if (!uptr || kctrl.wLength > PAGE_SIZE) return -EINVAL; kptr = (void *)__get_free_page(GFP_KERNEL); - if ((kctrl.requesttype & 0x80) == 0) { + if ((kctrl.bRequestType & 0x80) == 0) { err = -EFAULT; - if (copy_from_user(kptr, uptr, kctrl.length)) + if (copy_from_user(kptr, uptr, kctrl.wLength)) goto out; } @@ -3121,8 +3340,8 @@ set_fs(old_fs); if (err >= 0 && - ((kctrl.requesttype & 0x80) != 0)) { - if (copy_to_user(uptr, kptr, kctrl.length)) + ((kctrl.bRequestType & 0x80) != 0)) { + if (copy_to_user(uptr, kptr, kctrl.wLength)) err = -EFAULT; } @@ -3457,7 +3676,6 @@ return err; } -#endif struct mtd_oob_buf32 { u32 start; @@ -3515,119 +3733,6 @@ return ((0 == ret) ? 0 : -EFAULT); } -struct sg_io_hdr_32 -{ - int interface_id; - int dxfer_direction; - unsigned char cmd_len; - unsigned char mx_sb_len; - unsigned short iovec_count; - unsigned int dxfer_len; - u32 dxferp; - u32 cmdp; - u32 sbp; - unsigned int timeout; - unsigned int flags; - int pack_id; - u32 usr_ptr; - unsigned char status; - unsigned char masked_status; - unsigned char msg_status; - unsigned char sb_len_wr; - unsigned short host_status; - unsigned short driver_status; - int resid; - unsigned int duration; - unsigned int info; -}; - -static int do_sg_io(unsigned int fd, unsigned int cmd, unsigned long arg) -{ - struct sg_io_hdr *sg = kmalloc(sizeof(struct sg_io_hdr), GFP_KERNEL); - struct sg_io_hdr_32 *sg_32 = (struct sg_io_hdr_32 *)arg; - u32 dxferp_32; - u32 cmdp_32; - u32 sbp_32; - u32 usr_ptr_32; - int ret = -EFAULT; - int err; - mm_segment_t old_fs = get_fs(); - - if (!sg) - return -ENOMEM; - - memset(sg, 0, sizeof(*sg)); - - err = copy_from_user(sg, sg_32, offsetof(struct sg_io_hdr, dxferp)); - err |= __get_user(dxferp_32, &sg_32->dxferp); - err |= __get_user(cmdp_32, &sg_32->cmdp); - err |= __get_user(sbp_32, &sg_32->sbp); - - if (err) - goto error; - - sg->dxferp = (void *)A(dxferp_32); - sg->cmdp = (void *)A(cmdp_32); - sg->sbp = (void *)A(sbp_32); - - err = __copy_from_user(&sg->timeout, &sg_32->timeout, - (long)&sg->usr_ptr - (long)&sg->timeout); - - err |= __get_user(usr_ptr_32, &sg_32->usr_ptr); - - if (err) - goto error; - - sg->usr_ptr = (void *)A(usr_ptr_32); - - err = __copy_from_user(&sg->status, &sg_32->status, - sizeof(struct sg_io_hdr) - - offsetof(struct sg_io_hdr, status)); - - if (err) - goto error; - - set_fs(KERNEL_DS); - ret = sys_ioctl(fd, cmd, (unsigned long)sg); - set_fs(old_fs); - - err = copy_to_user(sg_32, sg, offsetof(struct sg_io_hdr, dxferp)); - - dxferp_32 = (unsigned long)sg->dxferp; - cmdp_32 = (unsigned long)sg->cmdp; - sbp_32 = (unsigned long)sg->sbp; - err |= __put_user(dxferp_32, &sg_32->dxferp); - err |= __put_user(cmdp_32, &sg_32->cmdp); - err |= __put_user(sbp_32, &sg_32->sbp); - - if (err) { - ret = -EFAULT; - goto error; - } - - err = __copy_to_user(&sg_32->timeout, &sg->timeout, - (long)&sg->usr_ptr - (long)&sg->timeout); - - usr_ptr_32 = (unsigned long)sg->usr_ptr; - err |= __put_user(usr_ptr_32, &sg_32->usr_ptr); - - if (err) { - ret = -EFAULT; - goto error; - } - - err = __copy_to_user(&sg_32->status, &sg->status, - sizeof(struct sg_io_hdr) - - offsetof(struct sg_io_hdr, status)); - - if (err) - ret = -EFAULT; - -error: - kfree(sg); - return ret; -} - struct ioctl_trans { unsigned long cmd; unsigned long handler; @@ -3714,7 +3819,6 @@ */ COMPATIBLE_IOCTL(HDIO_GET_IDENTITY), COMPATIBLE_IOCTL(HDIO_SET_DMA), -COMPATIBLE_IOCTL(HDIO_SET_KEEPSETTINGS), COMPATIBLE_IOCTL(HDIO_SET_UNMASKINTR), COMPATIBLE_IOCTL(HDIO_SET_NOWERR), COMPATIBLE_IOCTL(HDIO_SET_32BIT), @@ -3805,6 +3909,7 @@ /* Big S */ COMPATIBLE_IOCTL(SCSI_IOCTL_GET_IDLUN), COMPATIBLE_IOCTL(SCSI_IOCTL_PROBE_HOST), +COMPATIBLE_IOCTL(SCSI_IOCTL_GET_PCI), COMPATIBLE_IOCTL(SCSI_IOCTL_DOORLOCK), COMPATIBLE_IOCTL(SCSI_IOCTL_DOORUNLOCK), COMPATIBLE_IOCTL(SCSI_IOCTL_TEST_UNIT_READY), @@ -3812,6 +3917,12 @@ COMPATIBLE_IOCTL(SCSI_IOCTL_TAGGED_DISABLE), COMPATIBLE_IOCTL(SCSI_IOCTL_GET_BUS_NUMBER), COMPATIBLE_IOCTL(SCSI_IOCTL_SEND_COMMAND), +/* Big T */ +COMPATIBLE_IOCTL(TUNSETNOCSUM), +COMPATIBLE_IOCTL(TUNSETDEBUG), +COMPATIBLE_IOCTL(TUNSETIFF), +COMPATIBLE_IOCTL(TUNSETPERSIST), +COMPATIBLE_IOCTL(TUNSETOWNER), /* Big V */ COMPATIBLE_IOCTL(VT_SETMODE), COMPATIBLE_IOCTL(VT_GETMODE), @@ -3888,6 +3999,11 @@ COMPATIBLE_IOCTL(SIOCDRARP), COMPATIBLE_IOCTL(SIOCADDDLCI), COMPATIBLE_IOCTL(SIOCDELDLCI), +COMPATIBLE_IOCTL(SIOCGMIIPHY), +COMPATIBLE_IOCTL(SIOCGMIIREG), +COMPATIBLE_IOCTL(SIOCSMIIREG), +COMPATIBLE_IOCTL(SIOCGIFVLAN), +COMPATIBLE_IOCTL(SIOCSIFVLAN), /* SG stuff */ COMPATIBLE_IOCTL(SG_SET_TIMEOUT), COMPATIBLE_IOCTL(SG_GET_TIMEOUT), @@ -4217,6 +4333,13 @@ COMPATIBLE_IOCTL(WDIOC_GETTEMP), COMPATIBLE_IOCTL(WDIOC_SETOPTIONS), COMPATIBLE_IOCTL(WDIOC_KEEPALIVE), +/* Big R */ +COMPATIBLE_IOCTL(RNDGETENTCNT), +COMPATIBLE_IOCTL(RNDADDTOENTCNT), +COMPATIBLE_IOCTL(RNDGETPOOL), +COMPATIBLE_IOCTL(RNDADDENTROPY), +COMPATIBLE_IOCTL(RNDZAPENTCNT), +COMPATIBLE_IOCTL(RNDCLEARPOOL), /* Bluetooth ioctls */ COMPATIBLE_IOCTL(HCIDEVUP), COMPATIBLE_IOCTL(HCIDEVDOWN), @@ -4261,13 +4384,6 @@ COMPATIBLE_IOCTL(NBD_PRINT_DEBUG), COMPATIBLE_IOCTL(NBD_SET_SIZE_BLOCKS), COMPATIBLE_IOCTL(NBD_DISCONNECT), -/* Remove *PRIVATE in 2.5 */ -COMPATIBLE_IOCTL(SIOCDEVPRIVATE), -COMPATIBLE_IOCTL(SIOCDEVPRIVATE+1), -COMPATIBLE_IOCTL(SIOCDEVPRIVATE+2), -COMPATIBLE_IOCTL(SIOCGMIIPHY), -COMPATIBLE_IOCTL(SIOCGMIIREG), -COMPATIBLE_IOCTL(SIOCSMIIREG), /* And these ioctls need translation */ HANDLE_IOCTL(MEMREADOOB32, mtd_rw_oob), HANDLE_IOCTL(MEMWRITEOOB32, mtd_rw_oob), @@ -4320,7 +4436,6 @@ HANDLE_IOCTL(0x1260, broken_blkgetsize), HANDLE_IOCTL(BLKSECTGET, w_long), HANDLE_IOCTL(BLKPG, blkpg_ioctl_trans), -HANDLE_IOCTL(HDIO_GET_KEEPSETTINGS, hdio_ioctl_trans), HANDLE_IOCTL(HDIO_GET_UNMASKINTR, hdio_ioctl_trans), HANDLE_IOCTL(HDIO_GET_DMA, hdio_ioctl_trans), HANDLE_IOCTL(HDIO_GET_32BIT, hdio_ioctl_trans), @@ -4336,6 +4451,7 @@ HANDLE_IOCTL(FDPOLLDRVSTAT32, fd_ioctl_trans), HANDLE_IOCTL(FDGETFDCSTAT32, fd_ioctl_trans), HANDLE_IOCTL(FDWERRORGET32, fd_ioctl_trans), +HANDLE_IOCTL(SG_IO,sg_ioctl_trans), HANDLE_IOCTL(PPPIOCGIDLE32, ppp_ioctl_trans), HANDLE_IOCTL(PPPIOCSCOMPRESS32, ppp_ioctl_trans), HANDLE_IOCTL(MTIOCGET32, mt_ioctl_trans), @@ -4430,15 +4546,12 @@ HANDLE_IOCTL(DRM32_IOCTL_DMA, drm32_dma), HANDLE_IOCTL(DRM32_IOCTL_RES_CTX, drm32_res_ctx), #endif /* DRM */ -#if 0 HANDLE_IOCTL(USBDEVFS_CONTROL32, do_usbdevfs_control), HANDLE_IOCTL(USBDEVFS_BULK32, do_usbdevfs_bulk), /*HANDLE_IOCTL(USBDEVFS_SUBMITURB32, do_usbdevfs_urb)*/ HANDLE_IOCTL(USBDEVFS_REAPURB32, do_usbdevfs_reapurb), HANDLE_IOCTL(USBDEVFS_REAPURBNDELAY32, do_usbdevfs_reapurb), HANDLE_IOCTL(USBDEVFS_DISCSIGNAL32, do_usbdevfs_discsignal), -#endif -HANDLE_IOCTL(SG_IO, do_sg_io), }; unsigned long ioctl32_hash_table[1024]; Index: open_pic.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/arch/ppc64/kernel/open_pic.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- open_pic.c 15 Mar 2002 18:28:12 -0000 1.1 +++ open_pic.c 3 May 2002 22:16:46 -0000 1.2 @@ -47,7 +47,6 @@ OpenPIC_SourcePtr ISU[OPENPIC_MAX_ISU]; static void openpic_end_irq(unsigned int irq_nr); -static void openpic_ack_irq(unsigned int irq_nr); static void openpic_set_affinity(unsigned int irq_nr, unsigned long cpumask); struct hw_interrupt_type open_pic = { @@ -56,14 +55,13 @@ NULL, openpic_enable_irq, openpic_disable_irq, - openpic_ack_irq, + NULL, openpic_end_irq, openpic_set_affinity }; #ifdef CONFIG_SMP static void openpic_end_ipi(unsigned int irq_nr); -static void openpic_ack_ipi(unsigned int irq_nr); static void openpic_enable_ipi(unsigned int irq_nr); static void openpic_disable_ipi(unsigned int irq_nr); @@ -73,9 +71,9 @@ NULL, openpic_enable_ipi, openpic_disable_ipi, - openpic_ack_ipi, + NULL, openpic_end_ipi, - 0 + NULL }; #endif /* CONFIG_SMP */ @@ -753,13 +751,6 @@ (sense ? OPENPIC_SENSE_LEVEL : 0)); } -/* No spinlocks, should not be necessary with the OpenPIC - * (1 register = 1 interrupt and we have the desc lock). - */ -static void openpic_ack_irq(unsigned int irq_nr) -{ -} - static void openpic_end_irq(unsigned int irq_nr) { if ((irq_desc[irq_nr].status & IRQ_LEVEL) != 0) @@ -772,10 +763,6 @@ } #ifdef CONFIG_SMP -static void openpic_ack_ipi(unsigned int irq_nr) -{ -} - static void openpic_end_ipi(unsigned int irq_nr) { /* IPIs are marked IRQ_PER_CPU. This has the side effect of Index: setup.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/arch/ppc64/kernel/setup.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- setup.c 16 Apr 2002 17:41:49 -0000 1.2 +++ setup.c 3 May 2002 22:16:46 -0000 1.3 @@ -32,8 +32,8 @@ #include <asm/elf.h> #include <asm/machdep.h> #include <asm/iSeries/LparData.h> -#include <asm/Naca.h> -#include <asm/Paca.h> +#include <asm/naca.h> +#include <asm/paca.h> #include <asm/ppcdebug.h> #include <asm/time.h> @@ -75,14 +75,11 @@ unsigned long r6, unsigned long r7); int parse_bootinfo(void); -int _machine = _MACH_unknown; - #ifdef CONFIG_MAGIC_SYSRQ unsigned long SYSRQ_KEY; #endif /* CONFIG_MAGIC_SYSRQ */ struct machdep_calls ppc_md; -struct Naca *naca; /* * Perhaps we can put the pmac screen_info[] here @@ -117,34 +114,11 @@ */ void ppcdbg_initialize(void) { unsigned long offset = reloc_offset(); - struct Naca *_naca = RELOC(naca); + struct naca_struct *_naca = RELOC(naca); _naca->debug_switch = PPC_DEBUG_DEFAULT; /* | PPCDBG_BUSWALK | PPCDBG_PHBINIT | PPCDBG_MM | PPCDBG_MMINIT | PPCDBG_TCEINIT | PPCDBG_TCE */; } -/* - * Initialize a set of PACA's, one for each processor. - * - * At this point, relocation is on, but we have not done any other - * setup of the mm subsystem. - */ -void paca_init(void) { -#if 0 - int processorCount = naca->processorCount, i; - struct Paca *paca[]; - - /* Put the array of paca's on a page boundary & allocate 1/2 page of */ - /* storage for each. */ - klimit += (PAGE_SIZE-1) & PAGE_MASK; - naca->xPaca = paca[0] = klimit; - klimit += ((PAGE_SIZE>>1) * processorCount); - - for(i=0; i<processorCount; i++) { - paca[0]->xPacaIndex = i; - } -#endif -} - /* * Do some initial setup of the system. The paramters are those which * were passed in from the bootloader. @@ -157,14 +131,15 @@ /* pSeries systems are identified in prom.c via OF. */ if ( itLpNaca.xLparInstalled == 1 ) - _machine = _MACH_iSeries; - switch (_machine) { - case _MACH_iSeries: + naca->platform = PLATFORM_ISERIES_LPAR; + + switch (naca->platform) { + case PLATFORM_ISERIES_LPAR: iSeries_init_early(); break; #ifdef CONFIG_PPC_PSERIES - case _MACH_pSeries: + case PLATFORM_PSERIES: pSeries_init_early(); #ifdef CONFIG_BLK_DEV_INITRD initrd_start = initrd_end = 0; @@ -172,7 +147,7 @@ parse_bootinfo(); break; - case _MACH_pSeriesLP: + case PLATFORM_PSERIES_LPAR: pSeriesLP_init_early(); #ifdef CONFIG_BLK_DEV_INITRD initrd_start = initrd_end = 0; @@ -243,15 +218,15 @@ udbg_puts("\n-----------------------------------------------------\n"); - if ( _machine & _MACH_pSeries ) { + if (naca->platform & PLATFORM_PSERIES) { finish_device_tree(); chrp_init(r3, r4, r5, r6, r7); } mm_init_ppc64(); - switch (_machine) { - case _MACH_iSeries: + switch (naca->platform) { + case PLATFORM_ISERIES_LPAR: iSeries_init(); break; default: @@ -299,14 +274,14 @@ return 0; #endif - pvr = xPaca[cpu_id].pvr; + pvr = paca[cpu_id].pvr; maj = (pvr >> 8) & 0xFF; min = pvr & 0xFF; seq_printf(m, "processor\t: %lu\n", cpu_id); seq_printf(m, "cpu\t\t: "); - pvr = xPaca[cpu_id].pvr; + pvr = paca[cpu_id].pvr; switch (PVR_VER(pvr)) { case PV_PULSAR: @@ -336,7 +311,7 @@ * Assume here that all clock rates are the same in a * smp system. -- Cort */ - if (_machine != _MACH_iSeries) { + if (naca->platform != PLATFORM_ISERIES_LPAR) { struct device_node *cpu_node; int *fp; @@ -563,6 +538,7 @@ ppc_md.setup_arch(); paging_init(); + sort_exception_table(); ppc_md.progress("setup_arch: exit", 0x3eab); } @@ -680,9 +656,9 @@ /* The parameter is the number of processors to share in processing lp events */ unsigned long i; unsigned long val = simple_strtoul( str, NULL, 0 ); - if ( ( val > 0 ) && ( val <= maxPacas ) ) { + if ( ( val > 0 ) && ( val <= MAX_PACAS ) ) { for ( i=1; i<val; ++i ) - xPaca[i].lpQueuePtr = xPaca[0].lpQueuePtr; + paca[i].lpQueuePtr = paca[0].lpQueuePtr; printk("lpevent processing spread over %ld processors\n", val); } else @@ -693,13 +669,13 @@ /* This should only be called on processor 0 during calibrate decr */ void setup_default_decr(void) { - struct Paca * paca = (struct Paca *)mfspr(SPRG3); + struct paca_struct *lpaca = get_paca(); if ( decr_overclock_set && !decr_overclock_proc0_set ) decr_overclock_proc0 = decr_overclock; - paca->default_decr = tb_ticks_per_jiffy / decr_overclock_proc0; - paca->next_jiffy_update_tb = get_tb() + tb_ticks_per_jiffy; + lpaca->default_decr = tb_ticks_per_jiffy / decr_overclock_proc0; + lpaca->next_jiffy_update_tb = get_tb() + tb_ticks_per_jiffy; } int set_decr_overclock_proc0( char * str ) |
From: James S. <jsi...@us...> - 2002-05-03 22:16:50
|
Update of /cvsroot/linuxconsole/ruby/linux/arch/sparc64/kernel In directory usw-pr-cvs1:/tmp/cvs-serv29603/linux/arch/sparc64/kernel Modified Files: ioctl32.c Log Message: Synced against 2.5.13 Index: ioctl32.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/arch/sparc64/kernel/ioctl32.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- ioctl32.c 16 Apr 2002 17:41:49 -0000 1.3 +++ ioctl32.c 3 May 2002 22:16:46 -0000 1.4 @@ -77,6 +77,7 @@ #include <asm/watchdog.h> #include <asm/module.h> #include <linux/soundcard.h> +#include <linux/lp.h> #include <linux/atm.h> #include <linux/atmarp.h> @@ -3917,6 +3918,8 @@ COMPATIBLE_IOCTL(TCSETSW) COMPATIBLE_IOCTL(TCSETSF) COMPATIBLE_IOCTL(TIOCLINUX) +COMPATIBLE_IOCTL(TIOCSTART) +COMPATIBLE_IOCTL(TIOCSTOP) /* Little t */ COMPATIBLE_IOCTL(TIOCGETD) COMPATIBLE_IOCTL(TIOCSETD) @@ -3943,6 +3946,7 @@ COMPATIBLE_IOCTL(TIOCGSERIAL) COMPATIBLE_IOCTL(TIOCSSERIAL) COMPATIBLE_IOCTL(TIOCSERGETLSR) +COMPATIBLE_IOCTL(TIOCSLTC) /* Big F */ COMPATIBLE_IOCTL(FBIOGTYPE) COMPATIBLE_IOCTL(FBIOSATTR) @@ -3977,7 +3981,6 @@ */ COMPATIBLE_IOCTL(HDIO_GET_IDENTITY) COMPATIBLE_IOCTL(HDIO_SET_DMA) -COMPATIBLE_IOCTL(HDIO_SET_KEEPSETTINGS) COMPATIBLE_IOCTL(HDIO_SET_UNMASKINTR) COMPATIBLE_IOCTL(HDIO_SET_NOWERR) COMPATIBLE_IOCTL(HDIO_SET_32BIT) @@ -4079,6 +4082,8 @@ COMPATIBLE_IOCTL(KIOCGRATE) /* Big S */ COMPATIBLE_IOCTL(SCSI_IOCTL_GET_IDLUN) +COMPATIBLE_IOCTL(SCSI_IOCTL_PROBE_HOST) +COMPATIBLE_IOCTL(SCSI_IOCTL_GET_PCI) COMPATIBLE_IOCTL(SCSI_IOCTL_DOORLOCK) COMPATIBLE_IOCTL(SCSI_IOCTL_DOORUNLOCK) COMPATIBLE_IOCTL(SCSI_IOCTL_TEST_UNIT_READY) @@ -4087,11 +4092,11 @@ COMPATIBLE_IOCTL(SCSI_IOCTL_GET_BUS_NUMBER) COMPATIBLE_IOCTL(SCSI_IOCTL_SEND_COMMAND) /* Big T */ -COMPATIBLE_IOCTL(TUNSETNOCSUM); -COMPATIBLE_IOCTL(TUNSETDEBUG); -COMPATIBLE_IOCTL(TUNSETIFF); -COMPATIBLE_IOCTL(TUNSETPERSIST); -COMPATIBLE_IOCTL(TUNSETOWNER); +COMPATIBLE_IOCTL(TUNSETNOCSUM) +COMPATIBLE_IOCTL(TUNSETDEBUG) +COMPATIBLE_IOCTL(TUNSETIFF) +COMPATIBLE_IOCTL(TUNSETPERSIST) +COMPATIBLE_IOCTL(TUNSETOWNER) /* Big V */ COMPATIBLE_IOCTL(VT_SETMODE) COMPATIBLE_IOCTL(VT_GETMODE) @@ -4243,6 +4248,7 @@ COMPATIBLE_IOCTL(PPPIOCSMRU) COMPATIBLE_IOCTL(PPPIOCSMAXCID) COMPATIBLE_IOCTL(PPPIOCGXASYNCMAP) +COMPATIBLE_IOCTL(LPGETSTATUS) COMPATIBLE_IOCTL(PPPIOCSXASYNCMAP) COMPATIBLE_IOCTL(PPPIOCXFERUNIT) COMPATIBLE_IOCTL(PPPIOCGNPMODE) @@ -4258,8 +4264,8 @@ COMPATIBLE_IOCTL(PPPIOCATTCHAN) COMPATIBLE_IOCTL(PPPIOCGCHAN) /* PPPOX */ -COMPATIBLE_IOCTL(PPPOEIOCSFWD); -COMPATIBLE_IOCTL(PPPOEIOCDFWD); +COMPATIBLE_IOCTL(PPPOEIOCSFWD) +COMPATIBLE_IOCTL(PPPOEIOCDFWD) /* CDROM stuff */ COMPATIBLE_IOCTL(CDROMPAUSE) COMPATIBLE_IOCTL(CDROMRESUME) @@ -4659,7 +4665,6 @@ HANDLE_IOCTL(FBIOGET_FSCREENINFO, fb_ioctl_trans) HANDLE_IOCTL(FBIOGETCMAP, fb_ioctl_trans) HANDLE_IOCTL(FBIOPUTCMAP, fb_ioctl_trans) -HANDLE_IOCTL(HDIO_GET_KEEPSETTINGS, hdio_ioctl_trans) HANDLE_IOCTL(HDIO_GET_UNMASKINTR, hdio_ioctl_trans) HANDLE_IOCTL(HDIO_GET_DMA, hdio_ioctl_trans) HANDLE_IOCTL(HDIO_GET_32BIT, hdio_ioctl_trans) @@ -4755,15 +4760,15 @@ HANDLE_IOCTL(PV_STATUS, do_lvm_ioctl) #endif /* LVM */ #if defined(CONFIG_DRM) || defined(CONFIG_DRM_MODULE) -HANDLE_IOCTL(DRM32_IOCTL_VERSION, drm32_version); -HANDLE_IOCTL(DRM32_IOCTL_GET_UNIQUE, drm32_getsetunique); -HANDLE_IOCTL(DRM32_IOCTL_SET_UNIQUE, drm32_getsetunique); -HANDLE_IOCTL(DRM32_IOCTL_ADD_MAP, drm32_addmap); -HANDLE_IOCTL(DRM32_IOCTL_INFO_BUFS, drm32_info_bufs); -HANDLE_IOCTL(DRM32_IOCTL_FREE_BUFS, drm32_free_bufs); -HANDLE_IOCTL(DRM32_IOCTL_MAP_BUFS, drm32_map_bufs); -HANDLE_IOCTL(DRM32_IOCTL_DMA, drm32_dma); -HANDLE_IOCTL(DRM32_IOCTL_RES_CTX, drm32_res_ctx); +HANDLE_IOCTL(DRM32_IOCTL_VERSION, drm32_version) +HANDLE_IOCTL(DRM32_IOCTL_GET_UNIQUE, drm32_getsetunique) +HANDLE_IOCTL(DRM32_IOCTL_SET_UNIQUE, drm32_getsetunique) +HANDLE_IOCTL(DRM32_IOCTL_ADD_MAP, drm32_addmap) +HANDLE_IOCTL(DRM32_IOCTL_INFO_BUFS, drm32_info_bufs) +HANDLE_IOCTL(DRM32_IOCTL_FREE_BUFS, drm32_free_bufs) +HANDLE_IOCTL(DRM32_IOCTL_MAP_BUFS, drm32_map_bufs) +HANDLE_IOCTL(DRM32_IOCTL_DMA, drm32_dma) +HANDLE_IOCTL(DRM32_IOCTL_RES_CTX, drm32_res_ctx) #endif /* DRM */ #if 0 HANDLE_IOCTL(RTC32_IRQP_READ, do_rtc_ioctl) |
From: James S. <jsi...@us...> - 2002-05-03 22:16:50
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/usb/input In directory usw-pr-cvs1:/tmp/cvs-serv29603/linux/drivers/usb/input Modified Files: hiddev.c Log Message: Synced against 2.5.13 Index: hiddev.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/usb/input/hiddev.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- hiddev.c 1 May 2002 18:07:50 -0000 1.3 +++ hiddev.c 3 May 2002 22:16:46 -0000 1.4 @@ -628,6 +628,7 @@ { struct hiddev *hiddev; int minor, i; + int retval; char devfs_name[16]; for (i = 0; i < hid->maxapplication; i++) @@ -637,7 +638,12 @@ if (i == hid->maxapplication) return -1; - if (usb_register_dev (&hiddev_driver, 1, &minor)) { + retval = usb_register_dev (&hiddev_driver, 1, &minor); + if (retval) { + if (retval != -ENODEV) { + err ("Not able to get a minor for this device."); + return -1; + } for (minor = 0; minor < HIDDEV_MINORS && hiddev_table[minor]; minor++); if (minor == HIDDEV_MINORS) { printk(KERN_ERR "hiddev: no more free hiddev devices\n"); |
From: James S. <jsi...@us...> - 2002-05-03 22:16:49
|
Update of /cvsroot/linuxconsole/ruby/linux/arch/ppc64 In directory usw-pr-cvs1:/tmp/cvs-serv29603/linux/arch/ppc64 Modified Files: config.in Log Message: Synced against 2.5.13 Index: config.in =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/arch/ppc64/config.in,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- config.in 24 Apr 2002 18:56:51 -0000 1.4 +++ config.in 3 May 2002 22:16:46 -0000 1.5 @@ -24,7 +24,6 @@ bool ' Distribute interrupts on all CPUs by default' CONFIG_IRQ_ALL_CPUS if [ "$CONFIG_PPC_PSERIES" = "y" ]; then bool ' Hardware multithreading' CONFIG_HMT - bool ' PCI Enhanced Error Handling' CONFIG_PPC_EEH fi fi define_bool CONFIG_PREEMPT n |
From: James S. <jsi...@us...> - 2002-05-03 22:16:48
|
Update of /cvsroot/linuxconsole/ruby/linux In directory usw-pr-cvs1:/tmp/cvs-serv29603/linux Modified Files: Makefile Log Message: Synced against 2.5.13 Index: Makefile =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/Makefile,v retrieving revision 1.55 retrieving revision 1.56 diff -u -d -r1.55 -r1.56 --- Makefile 1 May 2002 19:35:27 -0000 1.55 +++ Makefile 3 May 2002 22:16:46 -0000 1.56 @@ -1,6 +1,6 @@ VERSION = 2 PATCHLEVEL = 5 -SUBLEVEL = 12 +SUBLEVEL = 13 EXTRAVERSION = -ruby KERNELRELEASE=$(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION) @@ -143,7 +143,7 @@ DRIVERS-$(CONFIG_DRM) += drivers/char/drm/drm.o DRIVERS-$(CONFIG_NUBUS) += drivers/nubus/nubus.a DRIVERS-$(CONFIG_NET_FC) += drivers/net/fc/fc.o -DRIVERS-$(CONFIG_APPLETALK) += drivers/net/appletalk/appletalk.o +DRIVERS-$(CONFIG_DEV_APPLETALK) += drivers/net/appletalk/appletalk.o DRIVERS-$(CONFIG_TR) += drivers/net/tokenring/tr.o DRIVERS-$(CONFIG_WAN) += drivers/net/wan/wan.o DRIVERS-$(CONFIG_ARCNET) += drivers/net/arcnet/arcnetdrv.o |
From: James S. <jsi...@us...> - 2002-05-03 22:16:48
|
Update of /cvsroot/linuxconsole/ruby In directory usw-pr-cvs1:/tmp/cvs-serv29603 Added Files: AGAINST-2.5.13 Removed Files: AGAINST-2.5.12 Log Message: Synced against 2.5.13 --- NEW FILE: AGAINST-2.5.13 --- --- AGAINST-2.5.12 DELETED --- |
From: Rodrigo D. <rda...@us...> - 2002-05-03 18:47:16
|
Update of /cvsroot/linuxconsole/ruby/utils In directory usw-pr-cvs1:/tmp/cvs-serv2684/utils Modified Files: fftest.c Log Message: Fix for the types problem - uint16_t and similars are not exported outside the kernel. They were replaced by __u16 and similars. fftest and other utils should now compile OK. Index: fftest.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/utils/fftest.c,v retrieving revision 1.19 retrieving revision 1.20 diff -u -d -r1.19 -r1.20 --- fftest.c 23 Apr 2002 00:45:55 -0000 1.19 +++ fftest.c 3 May 2002 18:47:12 -0000 1.20 @@ -24,10 +24,6 @@ * Johann Deneux <de...@if...> */ -// Quick fix for #define mess -#define uint16_t unsigned short -#define uint32_t unsigned short - #include <stdio.h> #include <sys/types.h> #include <sys/stat.h> |
From: Rodrigo D. <rda...@us...> - 2002-05-03 18:47:16
|
Update of /cvsroot/linuxconsole/ruby/linux/include/linux In directory usw-pr-cvs1:/tmp/cvs-serv2684/linux/include/linux Modified Files: input.h Log Message: Fix for the types problem - uint16_t and similars are not exported outside the kernel. They were replaced by __u16 and similars. fftest and other utils should now compile OK. Index: input.h =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/include/linux/input.h,v retrieving revision 1.65 retrieving revision 1.66 diff -u -d -r1.65 -r1.66 --- input.h 15 Apr 2002 19:14:22 -0000 1.65 +++ input.h 3 May 2002 18:47:12 -0000 1.66 @@ -522,62 +522,62 @@ */ struct ff_replay { - uint16_t length; /* Duration of an effect in ms. All other times are also expressed in ms */ - uint16_t delay; /* Time to wait before to start playing an effect */ + __u16 length; /* Duration of an effect in ms. All other times are also expressed in ms */ + __u16 delay; /* Time to wait before to start playing an effect */ }; struct ff_trigger { - uint16_t button; /* Number of button triggering an effect */ - uint16_t interval; /* Time to wait before an effect can be re-triggered (ms) */ + __u16 button; /* Number of button triggering an effect */ + __u16 interval; /* Time to wait before an effect can be re-triggered (ms) */ }; struct ff_envelope { - uint16_t attack_length; /* Duration of attack (ms) */ - uint16_t attack_level; /* Level at beginning of attack */ - uint16_t fade_length; /* Duration of fade (ms) */ - uint16_t fade_level; /* Level at end of fade */ + __u16 attack_length; /* Duration of attack (ms) */ + __u16 attack_level; /* Level at beginning of attack */ + __u16 fade_length; /* Duration of fade (ms) */ + __u16 fade_level; /* Level at end of fade */ }; /* FF_CONSTANT */ struct ff_constant_effect { - int16_t level; /* Strength of effect. Negative values are OK */ + __s16 level; /* Strength of effect. Negative values are OK */ struct ff_envelope envelope; }; /* FF_RAMP */ struct ff_ramp_effect { - int16_t start_level; - int16_t end_level; + __s16 start_level; + __s16 end_level; struct ff_envelope envelope; }; /* FF_SPRING of FF_FRICTION */ struct ff_condition_effect { - uint16_t right_saturation; /* Max level when joystick is on the right */ - uint16_t left_saturation; /* Max level when joystick in on the left */ + __u16 right_saturation; /* Max level when joystick is on the right */ + __u16 left_saturation; /* Max level when joystick in on the left */ - int16_t right_coeff; /* Indicates how fast the force grows when the + __s16 right_coeff; /* Indicates how fast the force grows when the joystick moves to the right */ - int16_t left_coeff; /* Same for left side */ + __s16 left_coeff; /* Same for left side */ - uint16_t deadband; /* Size of area where no force is produced */ - int16_t center; /* Position of dead zone */ + __u16 deadband; /* Size of area where no force is produced */ + __s16 center; /* Position of dead zone */ }; /* FF_PERIODIC */ struct ff_periodic_effect { - uint16_t waveform; /* Kind of wave (sine, square...) */ - uint16_t period; /* in ms */ - int16_t magnitude; /* Peak value */ - int16_t offset; /* Mean value of wave (roughly) */ - uint16_t phase; /* 'Horizontal' shift */ + __u16 waveform; /* Kind of wave (sine, square...) */ + __u16 period; /* in ms */ + __s16 magnitude; /* Peak value */ + __s16 offset; /* Mean value of wave (roughly) */ + __u16 phase; /* 'Horizontal' shift */ struct ff_envelope envelope; /* Only used if waveform == FF_CUSTOM */ - uint32_t custom_len; /* Number of samples */ - int16_t *custom_data; /* Buffer of samples */ + __u32 custom_len; /* Number of samples */ + __s16 *custom_data; /* Buffer of samples */ /* Note: the data pointed by custom_data is copied by the driver. You can * therefore dispose of the memory after the upload/update */ }; @@ -588,22 +588,22 @@ by the heavy motor. */ struct ff_rumble_effect { - uint16_t strong_magnitude; /* Magnitude of the heavy motor */ - uint16_t weak_magnitude; /* Magnitude of the light one */ + __u16 strong_magnitude; /* Magnitude of the heavy motor */ + __u16 weak_magnitude; /* Magnitude of the light one */ }; /* * Structure sent through ioctl from the application to the driver */ struct ff_effect { - uint16_t type; + __u16 type; /* Following field denotes the unique id assigned to an effect. * If user sets if to -1, a new effect is created, and its id is returned in the same field * Else, the user sets it to the effect id it wants to update. */ - int16_t id; + __s16 id; - uint16_t direction; /* Direction. 0 deg -> 0x0000 (down) + __u16 direction; /* Direction. 0 deg -> 0x0000 (down) 90 deg -> 0x4000 (left) 180 deg -> 0x8000 (up) 270 deg -> 0xC000 (right) |
From: James S. <jsi...@us...> - 2002-05-01 19:35:32
|
Update of /cvsroot/linuxconsole/ruby In directory usw-pr-cvs1:/tmp/cvs-serv1343 Added Files: AGAINST-2.5.12 Removed Files: AGAINST-2.5.11 Log Message: Synced to 2.5.12. --- NEW FILE: AGAINST-2.5.12 --- --- AGAINST-2.5.11 DELETED --- |
From: James S. <jsi...@us...> - 2002-05-01 19:35:32
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/char In directory usw-pr-cvs1:/tmp/cvs-serv1343/linux/drivers/char Modified Files: Makefile Log Message: Synced to 2.5.12. Index: Makefile =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/char/Makefile,v retrieving revision 1.37 retrieving revision 1.38 diff -u -d -r1.37 -r1.38 --- Makefile 1 May 2002 18:07:50 -0000 1.37 +++ Makefile 1 May 2002 19:35:27 -0000 1.38 @@ -16,11 +16,10 @@ export-objs := vt.o keyboard.o sysrq.o \ misc.o pty.o random.o selection.o serial.o \ - sonypi.o tty_io.o tty_ioctl.o generic_serial.o rtc.o + sonypi.o tty_io.o tty_ioctl.o generic_serial.o rtc.o \ + ip2main.o mod-subdirs := ftape drm pcmcia - -SERIAL = serial.o ifeq ($(CONFIG_DECSTATION),y) SERIAL = decserial.o |
From: James S. <jsi...@us...> - 2002-05-01 19:35:32
|
Update of /cvsroot/linuxconsole/ruby/linux In directory usw-pr-cvs1:/tmp/cvs-serv1343/linux Modified Files: Makefile Log Message: Synced to 2.5.12. Index: Makefile =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/Makefile,v retrieving revision 1.54 retrieving revision 1.55 diff -u -d -r1.54 -r1.55 --- Makefile 1 May 2002 18:07:49 -0000 1.54 +++ Makefile 1 May 2002 19:35:27 -0000 1.55 @@ -1,6 +1,6 @@ VERSION = 2 PATCHLEVEL = 5 -SUBLEVEL = 11 +SUBLEVEL = 12 EXTRAVERSION = -ruby KERNELRELEASE=$(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION) |
From: James S. <jsi...@us...> - 2002-05-01 18:07:57
|
Update of /cvsroot/linuxconsole/ruby/linux/drivers/video In directory usw-pr-cvs1:/tmp/cvs-serv3020/linux/drivers/video Modified Files: fbcmap.c Log Message: Synced against 2.5.11 Index: fbcmap.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/drivers/video/fbcmap.c,v retrieving revision 1.10 retrieving revision 1.11 diff -u -d -r1.10 -r1.11 --- fbcmap.c 25 Nov 2001 05:14:14 -0000 1.10 +++ fbcmap.c 1 May 2002 18:07:50 -0000 1.11 @@ -295,7 +295,7 @@ blue++; if (transp) transp++; - if (info->fbops->fb_setcolreg(start++,hred,hgreen,hblue,htransp,info)) + if (info->fbops->fb_setcolreg(start++, hred, hgreen, hblue, htransp, info)) return 0; } return 0; |
From: James S. <jsi...@us...> - 2002-05-01 18:07:56
|
Update of /cvsroot/linuxconsole/ruby/linux/arch/ppc/platforms In directory usw-pr-cvs1:/tmp/cvs-serv3020/linux/arch/ppc/platforms Modified Files: chrp_setup.c pmac_setup.c pplus_setup.c prep_setup.c sandpoint_setup.c Log Message: Synced against 2.5.11 Index: chrp_setup.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/arch/ppc/platforms/chrp_setup.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- chrp_setup.c 16 Apr 2002 17:41:48 -0000 1.2 +++ chrp_setup.c 1 May 2002 18:07:49 -0000 1.3 @@ -415,33 +415,6 @@ ppc_md.progress(" Have fun! ", 0x7777); } -#if defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_IDE_MODULE) -/* - * IDE stuff. - */ - -static int __chrp -chrp_ide_check_region(ide_ioreg_t from, unsigned int extent) -{ - return check_region(from, extent); -} - -static void __chrp -chrp_ide_request_region(ide_ioreg_t from, - unsigned int extent, - const char *name) -{ - request_region(from, extent, name); -} - -static void __chrp -chrp_ide_release_region(ide_ioreg_t from, - unsigned int extent) -{ - release_region(from, extent); -} -#endif - /* * One of the main thing these mappings are needed for is so that * xmon can get to the serial port early on. We probably should @@ -534,12 +507,6 @@ #ifdef CONFIG_SMP ppc_md.smp_ops = &chrp_smp_ops; #endif /* CONFIG_SMP */ - -#if defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_IDE_MODULE) - ppc_ide_md.ide_check_region = chrp_ide_check_region; - ppc_ide_md.ide_request_region = chrp_ide_request_region; - ppc_ide_md.ide_release_region = chrp_ide_release_region; -#endif /* * Print the banner, then scroll down so boot progress Index: pmac_setup.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/arch/ppc/platforms/pmac_setup.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- pmac_setup.c 14 Mar 2002 22:32:22 -0000 1.1 +++ pmac_setup.c 1 May 2002 18:07:50 -0000 1.2 @@ -560,45 +560,6 @@ pmac_power_off(); } - -#if defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_IDE_MODULE) -/* - * IDE stuff. - */ -static int __pmac -pmac_ide_check_region(ide_ioreg_t from, unsigned int extent) -{ -#ifdef CONFIG_BLK_DEV_IDE_PMAC - if (pmac_ide_check_base(from) >= 0) - return 0; -#endif - return check_region(from, extent); -} - -static void __pmac -pmac_ide_request_region(ide_ioreg_t from, - unsigned int extent, - const char *name) -{ -#ifdef CONFIG_BLK_DEV_IDE_PMAC - if (pmac_ide_check_base(from) >= 0) - return; -#endif - request_region(from, extent, name); -} - -static void __pmac -pmac_ide_release_region(ide_ioreg_t from, - unsigned int extent) -{ -#ifdef CONFIG_BLK_DEV_IDE_PMAC - if (pmac_ide_check_base(from) >= 0) - return; -#endif - release_region(from, extent); -} -#endif /* defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_IDE_MODULE) */ - /* * Read in a property describing some pieces of memory. */ @@ -714,12 +675,6 @@ ppc_md.find_end_of_memory = pmac_find_end_of_memory; ppc_md.feature_call = pmac_do_feature_call; - -#if defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_IDE_MODULE) - ppc_ide_md.ide_check_region = pmac_ide_check_region; - ppc_ide_md.ide_request_region = pmac_ide_request_region; - ppc_ide_md.ide_release_region = pmac_ide_release_region; -#endif /* defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_IDE_MODULE) */ #ifdef CONFIG_BOOTX_TEXT ppc_md.progress = pmac_progress; Index: pplus_setup.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/arch/ppc/platforms/pplus_setup.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- pplus_setup.c 14 Mar 2002 22:32:22 -0000 1.1 +++ pplus_setup.c 1 May 2002 18:07:50 -0000 1.2 @@ -245,27 +245,6 @@ } } -static int -pplus_ide_check_region(ide_ioreg_t from, unsigned int extent) -{ - return check_region(from, extent); -} - -static void -pplus_ide_request_region(ide_ioreg_t from, - unsigned int extent, - const char *name) -{ - request_region(from, extent, name); -} - -static void -pplus_ide_release_region(ide_ioreg_t from, - unsigned int extent) -{ - release_region(from, extent); -} - static void __init pplus_ide_init_hwif_ports (hw_regs_t *hw, ide_ioreg_t data_port, ide_ioreg_t ctrl_port, int *irq) { @@ -510,9 +489,6 @@ #if defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_IDE_MODULE) ppc_ide_md.default_irq = pplus_ide_default_irq; ppc_ide_md.default_io_base = pplus_ide_default_io_base; - ppc_ide_md.ide_check_region = pplus_ide_check_region; - ppc_ide_md.ide_request_region = pplus_ide_request_region; - ppc_ide_md.ide_release_region = pplus_ide_release_region; ppc_ide_md.ide_init_hwif = pplus_ide_init_hwif_ports; #endif Index: prep_setup.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/arch/ppc/platforms/prep_setup.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- prep_setup.c 14 Mar 2002 22:32:22 -0000 1.1 +++ prep_setup.c 1 May 2002 18:07:50 -0000 1.2 @@ -74,6 +74,7 @@ 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[]; @@ -721,27 +722,6 @@ return 0; } } - -static int __prep -prep_ide_check_region(ide_ioreg_t from, unsigned int extent) -{ - return check_region(from, extent); -} - -static void __prep -prep_ide_request_region(ide_ioreg_t from, - unsigned int extent, - const char *name) -{ - request_region(from, extent, name); -} - -static void __prep -prep_ide_release_region(ide_ioreg_t from, - unsigned int extent) -{ - release_region(from, extent); -} #endif #ifdef CONFIG_SMP @@ -904,9 +884,6 @@ #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; #endif #ifdef CONFIG_SMP Index: sandpoint_setup.c =================================================================== RCS file: /cvsroot/linuxconsole/ruby/linux/arch/ppc/platforms/sandpoint_setup.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- sandpoint_setup.c 14 Mar 2002 22:32:22 -0000 1.1 +++ sandpoint_setup.c 1 May 2002 18:07:50 -0000 1.2 @@ -480,29 +480,6 @@ return sandpoint_ide_regbase[index]; } -static int -sandpoint_ide_check_region(ide_ioreg_t from, unsigned int extent) -{ - return check_region(from, extent); -} - -static void -sandpoint_ide_request_region(ide_ioreg_t from, - unsigned int extent, - const char *name) -{ - request_region(from, extent, name); - return; -} - -static void -sandpoint_ide_release_region(ide_ioreg_t from, - unsigned int extent) -{ - release_region(from, extent); - return; -} - static void __init sandpoint_ide_init_hwif_ports(hw_regs_t *hw, ide_ioreg_t data_port, ide_ioreg_t ctrl_port, int *irq) @@ -660,9 +637,6 @@ #if defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_IDE_MODULE) ppc_ide_md.default_irq = sandpoint_ide_default_irq; ppc_ide_md.default_io_base = sandpoint_ide_default_io_base; - ppc_ide_md.ide_check_region = sandpoint_ide_check_region; - ppc_ide_md.ide_request_region = sandpoint_ide_request_region; - ppc_ide_md.ide_release_region = sandpoint_ide_release_region; ppc_ide_md.ide_init_hwif = sandpoint_ide_init_hwif_ports; #endif |