aboutsummaryrefslogtreecommitdiff
path: root/sys/alpha/include
Commit message (Collapse)AuthorAgeFilesLines
* Lots of changes, including:Doug Rabson1998-08-104-5/+44
| | | | | | | | | | | | | * Support for AlphaStation 200, 250, 255, 400 * Untested support for UDB, Multia, AXPpci33 (Noname) * Support for Personal Workstation 433a/433au, 500a/500au, 600a/600au (Miata) * Some minor fixes and improvements to interrupt handling. Submitted by: Andrew Gallatin <gallatin@cs.duke.edu> (AS200, Miata) Obtained from: NetBSD (some code for AS200, Miata, Noname) Notes: svn path=/head/; revision=38215
* Add some more useful macros.Doug Rabson1998-08-071-1/+7
| | | | | | | Submitted by: Andrew Gallatin <gallatin@cs.duke.edu> Notes: svn path=/head/; revision=38157
* Port syscons to the alpha. The driver itself has moved to sys/isa as it willDoug Rabson1998-08-065-3/+8
| | | | | | | | | | | | hopefully become a portable driver usable by all architectures. The api support files have had to be copied to sys/alpha/include since userland programs expect to find them in <machine/*.h>. All the revision history of the i386 syscons has been retained by a repository copy. Notes: svn path=/head/; revision=38138
* 1. Reorganized screen saver related code so that both the LKM screenKazutaka YOKOTA1998-08-031-2/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | saver and splash screen can all work properly with syscons. Note that the splash screen option (SC_SPLASH_SCREEN) does not work yet, as it requires additional code from msmith. - Reorganized the splash screen code to match the latest development in this area. - Delay screen switch in `switch_scr()' until the screen saver is stopped, if one is running, - Start the screen saver immediately, if any, when the `saver' key is pressed. (There will be another commit for `kbdcontrol' to support this keyword in the keymap file.) - Do not always stop the screen saver when mouse-related ioctls are called. Stop it only if the mouse is moved or buttons are clicked; don't stop it if any other mouse ioctls are called. 2. Added provision to write userland screen savers. (Contact me if you are interested in writing one.) - Added CONS_IDLE, CONS_SAVERMODE, and CONS_SAVERSTART ioctls to support userland screen savers. 3. Some code clean-ups. Notes: svn path=/head/; revision=38052
* Add definitions of EV56 INT1/INT2/INT4/INT8 memory spaces.Doug Rabson1998-07-311-1/+9
| | | | Notes: svn path=/head/; revision=37988
* Change load address to 0xfffffc0000300000 to help support AS200.Doug Rabson1998-07-301-2/+2
| | | | Notes: svn path=/head/; revision=37970
* Macros for accessing alpha sparse device ports and memory.Doug Rabson1998-07-271-0/+67
| | | | Notes: svn path=/head/; revision=37882
* Add sio support.Doug Rabson1998-07-222-2/+13
| | | | Notes: svn path=/head/; revision=37834
* Add platform functions for manipulating PCI irqs.Doug Rabson1998-07-221-0/+3
| | | | | | | Submitted by: Andrew Gallatin <gallatin@cs.duke.edu> Notes: svn path=/head/; revision=37833
* Add declaration of {aquire,release}_timer2().Doug Rabson1998-07-221-1/+3
| | | | Notes: svn path=/head/; revision=37832
* Add macros and chipset support for accessing device i/o memory on the alpha.Doug Rabson1998-07-222-2/+34
| | | | Notes: svn path=/head/; revision=37831
* Make ptrace work.Doug Rabson1998-07-152-2/+13
| | | | Notes: svn path=/head/; revision=37688
* Changed to the C9x draft spelling of the (unsigned) integral typeBruce Evans1998-07-141-8/+6
| | | | | | | | | | | suitable for holding object pointers (ptrint_t -> uintptr_t). Added corresponding signed type (intptr_t). Changed/added corresponding non-C9x types for function pointers to match. Don't use nonstandard types to implement these types, and don't comment on them in <machine/types.h>. Notes: svn path=/head/; revision=37629
* Overhaul the spl system so that it actually works properly.Doug Rabson1998-07-124-8/+8
| | | | Notes: svn path=/head/; revision=37598
* Implement intr_create/intr_connect.Doug Rabson1998-07-121-1/+8
| | | | Notes: svn path=/head/; revision=37590
* Implement promcncheckc.Doug Rabson1998-07-121-1/+1
| | | | Notes: svn path=/head/; revision=37589
* Add some generic interrupt dispatch code.Doug Rabson1998-07-121-113/+35
| | | | Notes: svn path=/head/; revision=37586
* Oops, forgot to modify the pointer-int typedefs from the i386 version.Bruce Evans1998-07-101-3/+3
| | | | Notes: svn path=/head/; revision=37541
* Added a kernel-only typedef (ptrint_t) giving an integral type that isBruce Evans1998-07-101-1/+7
| | | | | | | | | | | | | least unsuitable for holding an object pointer. This should have been used to fix warnings about casts between pointers and ints on alphas. Moved corresponding existing general typedef (fptrint_t) for function pointers from the i386 <machine/profile.h> to a kernel-only typedef in <machine/types.h>. Kludged libc/gmon/mcount.c so that it can still see this typedef. Notes: svn path=/head/; revision=37540
* Add the ability to suspend as well as hibernate to the system. ThisWarner Losh1998-07-061-1/+3
| | | | | | | | | | is the kernel part of my commits, the userlevel stuff will be done in a separate commit. Add the ability to suspend as well as hibernate to syscons. Create a new virtual key like hibernate for suspend. Update apm_bios.h to define more apm bios goodies. Notes: svn path=/head/; revision=37414
* Add support for kernel gdb.Doug Rabson1998-07-051-1/+1
| | | | Notes: svn path=/head/; revision=37405
* Add macros for byte/word sized load and store instructions.Doug Rabson1998-07-051-0/+76
| | | | Notes: svn path=/head/; revision=37401
* Add declaration of the NetBSD/alpha bootinfo.Doug Rabson1998-07-051-0/+59
| | | | Notes: svn path=/head/; revision=37400
* Make breakpoints and single-step work.Doug Rabson1998-06-281-4/+14
| | | | Notes: svn path=/head/; revision=37221
* Add a macro for testing the e_machine field of Elf64_Ehdr.Doug Rabson1998-06-281-1/+3
| | | | Notes: svn path=/head/; revision=37216
* Make uoff_t compile.Doug Rabson1998-06-271-2/+2
| | | | Notes: svn path=/head/; revision=37194
* The isa device configuration hook was especially useless here.Bruce Evans1998-06-171-11/+0
| | | | Notes: svn path=/head/; revision=37037
* Reviewed by: AmancioAmancio Hasty1998-06-141-1/+5
| | | | | | | | | | | | | | | | | | | | | Submitted by: Randall Hopper <rhh@ct.picker.com> The patch supports using the X10 Mouse Remote in both stand-alone and pass-through configurations, so you can plug your mouse and remote into the same serial port, use the mouse for X, and use the remote for other apps like Fxtv. For instance, we can now control fxtv via the remote control just like a TV : change channels, mute, increase volume, zoom video, freeze frame 8) The mouse events are channeled through the syscons/sysmouse I/F like normal, and the remote buttons are "syphoned off" to a UNIX-domain stream socket (defined as _PATH_MOUSEREMOTE in <machine/mouse.h>) for a remote-aware app to grab and use. For further info on the X10 Mouse Remote see: http://www.x10.com/products/x10_mk19a.htm Notes: svn path=/head/; revision=36991
* Added uoff_t.Bruce Evans1998-06-141-1/+5
| | | | Notes: svn path=/head/; revision=36978
* [Add missing files from previous commit]Doug Rabson1998-06-141-0/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Major changes to the generic device framework for FreeBSD/alpha: * Eliminate bus_t and make it possible for all devices to have attached children. * Support dynamically extendable interfaces for drivers to replace both the function pointers in driver_t and bus_ops_t (which has been removed entirely. Two system defined interfaces have been defined, 'device' which is mandatory for all devices and 'bus' which is recommended for all devices which support attached children. * In addition, the alpha port defines two simple interfaces 'clock' for attaching various real time clocks to the system and 'mcclock' for the many different variations of mc146818 clocks which can be attached to different alpha platforms. This eliminates two more function pointer tables in favour of the generic method dispatch system provided by the device framework. Future device interfaces may include: * cdev and bdev interfaces for devfs to use in replacement for specfs and the fixed interfaces bdevsw and cdevsw. * scsi interface to replace struct scsi_adapter (not sure how this works in CAM but I imagine there is something similar there). * various tailored interfaces for different bus types such as pci, isa, pccard etc. Notes: svn path=/head/; revision=36973
* Major changes to the generic device framework for FreeBSD/alpha:Doug Rabson1998-06-143-14/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Eliminate bus_t and make it possible for all devices to have attached children. * Support dynamically extendable interfaces for drivers to replace both the function pointers in driver_t and bus_ops_t (which has been removed entirely. Two system defined interfaces have been defined, 'device' which is mandatory for all devices and 'bus' which is recommended for all devices which support attached children. * In addition, the alpha port defines two simple interfaces 'clock' for attaching various real time clocks to the system and 'mcclock' for the many different variations of mc146818 clocks which can be attached to different alpha platforms. This eliminates two more function pointer tables in favour of the generic method dispatch system provided by the device framework. Future device interfaces may include: * cdev and bdev interfaces for devfs to use in replacement for specfs and the fixed interfaces bdevsw and cdevsw. * scsi interface to replace struct scsi_adapter (not sure how this works in CAM but I imagine there is something similar there). * various tailored interfaces for different bus types such as pci, isa, pccard etc. Notes: svn path=/head/; revision=36972
* Reimplement spl*() as function calls. Implement software interrupts.Doug Rabson1998-06-111-35/+28
| | | | Notes: svn path=/head/; revision=36897
* Add initial support for the FreeBSD/alpha kernel. This is very much aDoug Rabson1998-06-1027-158/+2201
| | | | | | | | | | | | | work in progress and has never booted a real machine. Initial development and testing was done using SimOS (see http://simos.stanford.edu for details). On the SimOS simulator, this port successfully reaches single-user mode and has been tested with loads as high as one copy of /bin/ls :-). Obtained from: partly from NetBSD/alpha Notes: svn path=/head/; revision=36849
* libtcl expects to see ieeefp.h definitions through this header.John Birrell1998-05-131-0/+2
| | | | Notes: svn path=/head/; revision=36025
* Add vm_ooffset_t and vm_pindex_t that FreeBSD uses (but NetBSD doesn't).John Birrell1998-03-231-1/+3
| | | | | | | | Ugh, this is for user code that looks into vm_map_entry. I'd shoot it but semi-automatic guns aren't legal here anymore. 8-( Notes: svn path=/head/; revision=34806
* Updates to reflect differences in what NetBSD does and what FreeBSDJohn Birrell1998-03-093-3/+25
| | | | | | | userland expects. Notes: svn path=/head/; revision=34370
* Import NetBSD/Alpha headers needed to get the FreeBSD userland to compileJohn Birrell1998-03-0914-0/+1241
| | | | | | | | | (and even run). These files don't necessarily make sense for a FreeBSD/Alpha kernel build. That will come later and these files will be changed accordingly. Notes: svn path=/cvs2svn/branches/JB/; revision=34368
* Add display of type KD_PIXEL.Poul-Henning Kamp1998-02-121-1/+2
| | | | Notes: svn path=/head/; revision=33279
* Fixed conflicts between <machine/console.h> and <machine/pcvt_ioctl.h>,Bruce Evans1998-02-031-16/+24
| | | | | | | | | | | | so that it is possible for kdump and truss to include them both. Use #defines from pcvt_ioctl.h in conflicting cases, since pcvt_ioctl.h gives a hint about the bogus third arg to _IO(). Ifdef the common typedefs. Export `struct key_t' from pcvt_ioctl.h so pcvt_ioctl.h is bug for bug compatible with console.h (now both are broken in C++ mode). Notes: svn path=/head/; revision=33042
* Suggested by: bdeJohn Birrell1998-01-201-1/+12
| | | | | | | | | | | | | Move sigjmp_buf and jmp_buf structure definitions to machine/setjmp.h so that i386 can continue to use int as the basic register type and alpha can use long. Bruce was concerned about possible differing alignment. I've left the definition of _JBLEN in machine/setjmp.h even though Bruce's example used the number directly. I don't know if any other code relies on _JBLEN, so I left it to avoid potential breakage. Notes: svn path=/head/; revision=32641
* Add a machine dependent header to size the jmpbuf instead of pilingJohn Birrell1998-01-101-0/+35
| | | | | | | machine dependencies in src/include/setjmp.h. Notes: svn path=/head/; revision=32409
* PAL codes needed for asm.hJohn Birrell1998-01-101-0/+93
| | | | Notes: svn path=/head/; revision=32406
* Header files which are linked from /usr/include to /usr/include/machine.John Birrell1998-01-106-1/+881
| | | | | | | | NetBSD's endian.h needs sys/types.h for the typedefs that are used to get htonl() correct when a long is 64 bits. Notes: svn path=/head/; revision=32404
* These are a few of the alpha machine dependent header files - the firstJohn Birrell1998-01-1011-0/+1419
| | | | | | | | | referenced by the build of user-space libraries. These files were obtained from NetBSD (with ansi.h being modified to reflect the FreeBSD off_t and pid_t implementation). Notes: svn path=/head/; revision=32387
* Added accent (dead) key support to syscons and kbdcontrol.Kazutaka YOKOTA1998-01-071-1/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | With a keymap with accent key definitions loaded to syscons, you press an accent key followed by a regular letter key to produce an accented letter. Press an accent key followed by the space bar to get the accent letter itself. Code is based on the ideas and work by jmrueda@diatel.upm.es and totii@est.is. PR: i386/4016 console.h - Defined structures and constants for accent (dead) keys. syscons.c, kbdtables.h - When an accent key is pressed, set the corresponding index to `accents'. If the next key is the space key, produce the accent char itself. Otherwise search the accent key map entry, indexed by `accents', for a matching pair of a regular char and an accented char. - Added ioctl functions to set and get the accent key map (PIO_DEADKEYMAP and GIO_DEADKEYMAP). Notes: svn path=/head/; revision=32315
* - Add support for the following mice to psm/moused/sysmouse:Kazutaka YOKOTA1997-12-072-50/+142
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MS IntelliMouse, Kensington Thinking Mouse, Genius NetScroll, Genius NetMouse, Genius NetMouse Pro, ALPS GlidePoint, ASCII MieMouse, Logitech MouseMan+, FirstMouse+ - The `psm' driver is made to recognize various models of PS/2 mice and enable their extra features so that their additional buttons and wheel/roller are recognized. The name of the detected model will be printed at boot time. - A set of new ioctl functions are added to the `psm', `mse' and `sysmouse' drivers so that the userland program (such as the X server) can query device information and change driver settings. - The wheel/roller movement is handled as the `Z' axis movement by the mouse drivers and the moused daemon. The Z axis movement may be mapped to another axis movement or buttons. - The mouse drivers support a new, standard mouse data format, MOUSE_PROTO_SYSMOUSE format which can encode x, y, and x axis movement and up to 10 buttons. /sys/i386/include/mouse.h - Added some fields to `mousestatus_t' to store Z axis movement and flag bits. - Added the field `model' to `mousehw_t' to store mouse model code. Defined model codes. - Extended `mousemode_t'. - Added new protocols and some constants for them. - Added new ioctl functions and structures. - Removed obsolete ioctl definitions. /sys/i386/include/console.h - Added `dz' field to the structure `mouse_data' to pass Z axis movement to `syscons/sysmouse'. - Removed LEFT_BUTTON, MIDDLE_BUTTON and RIGHT_BUTTON. Use button bits defined in `mouse.h' instead. /sys/i386/isa/psm.c - Added a set of functions to detect various mice which have additional features (wheel and buttons) unavailable in the standard PS/2 mouse. - Refined existing ioctl functions and added new ones. Most important of all is MOUSE_SETLEVEL which manipulates the output level of the driver. While the output level remains zero, the output from the `psm' driver is in the standard PS/2 mouse format (three bytes long). When the level is set to one, the `psm' driver will send data in the extended format. At the level two the driver uses the format which is native to the connected mouse is used. (Meaning that the output from the device is passed to the caller as is, unmodified.) The `psm' driver will pass such extended data format as is to the caller if the output level is two, but emulates the standard format if the output level is zero. - Added kernel configuration flags to set initial resolution (PSM_CONFIG_RESOLUTION) and acceleration (PSM_CONFIG_ACCEL). - Removed the compile options PSM_ACCEL, PSM_CHECKSYNC and PSM_EMULATION. Acceleration ratio is now specified by the kernel configuration flags stated above. Sync check logic is refined and now standard. The sync check can be turned off by the new kernel configuration flags PSM_CONFIG_NOCHECKSYNC (0x100). PSM_EMULATION has been of little use. - Summer clean up :-) Removed unused code and obsolete comments. /sys/i386/isa/mse.c - Created mseioctl() to deal with ioctl functions MOUSE_XXXX. Most importantly, the MOUSE_SETLEVEL ioctl will change the output format from the 5 byte format to the new, extended format so that the caller can take advantage of Z axis movement and additional buttons. - Use constants defined in `mouse.h' rather than magic numbers. /sys/i386/isa/syscons.c - Changed scioctl() to reflect the new `console.h' and some of the new ioctls defined in `mouse.h'. Most importantly, the MOUSE_SETLEVEL ioctl will change the `sysmouse' output format from the MouseSystems 5 byte format to the new, extended format so that the caller can take advantage of Z axis movement and additional buttons. - Added support for double/triple click actions of the left button and single click action of the right button in the virtual console. The left button double click will select a word under the mouse pointer. The triple click will select a line and the single click of the right button will extend the selected region to the current position of the mouse pointer. This will make the cut/paste support more compatible with xterm. /sys/i386/isa/kbdio.h - Added PSM_INTELLI_ID. Notes: svn path=/head/; revision=31603
* Rename MOUSE_GETINFO to MOUSE_GETHWINFO. The name collided with the oneKazutaka YOKOTA1997-10-191-2/+2
| | | | | | | | in console.h. Pointed out by bde. Notes: svn path=/head/; revision=30572
* Add a new keyboard mode K_CODE. Returns a single byte for each keySøren Schmidt1997-10-011-1/+2
| | | | | | | | | | | much like the scancode mode. However the keys that (for no good reason) returns extension codes etc, are translated into singlebyte codes. Needed by libvgl. This makes life ALOT easier, also the XFree86 folks could use this. Notes: svn path=/head/; revision=30043
* Always defines macros for PC-98 display.KATO Takenori1997-09-041-12/+6
| | | | Notes: svn path=/head/; revision=29098
* Yeah I'm back hacking syscons !!Søren Schmidt1997-08-081-1/+5
| | | | | | | | | | Add support for MODEX 320x240x256color with "unchained" adressing, giving access to all 256K on all VGA's, those with that much memory that is :) Also make sysmouse use the right resolution in graphics modes. Notes: svn path=/head/; revision=27990