summaryrefslogtreecommitdiffstats
path: root/sys
Commit message (Collapse)AuthorAgeFilesLines
...
* Correctly setup the UND stack in cpu_set_upcall(), and the trapframe incognet2005-05-241-4/+5
| | | | cpu_thread_setup(), as done in cpu_fork().
* Don't set the default of kern.fallback_elf_brand to FreeBSD for arm, ascognet2005-05-241-4/+0
| | | | binutils now do the job for us
* - Try to avoid calling malloc() in bus_dmamap_create() and bus_dmamem_alloc()cognet2005-05-241-17/+65
| | | | | | for the dmamap by using static dmamaps. - Don't do anything for BUS_DMASYNC_PREREAD and BUS_DMASYNC_POSTWRITE in bus_dmamap_sync(), it's not needed anymore.
* Write back affected pages in pmap_qremove() as well. This removes the needcognet2005-05-242-6/+12
| | | | | | to change the DACR when switching to a kernel thread, thus making userland thread => kernel thread => same userland thread switch cheaper by totally avoiding data cache and TLB invalidation.
* Use a more sane value for HZ.cognet2005-05-241-2/+3
|
* Use asm versions of in_cksum() and friends.cognet2005-05-243-245/+18
|
* Since the BAT mapping was removed a long time back, it can'tgrehan2005-05-241-1/+6
| | | | | | | | | | | be assumed that modules are contiguous in memory (they're not) so don't blindly __syncicache start/end. In fact, don't bother syncing the icache for modules since the kernel will do it after fixing up relocations. This fixes the trap when loading modules at boot time. Reported by: orlando at break dot net
* Asm version of bswap16().cognet2005-05-241-5/+6
| | | | Obtained from: NetBSD
* Make sure we clean the RAS start address once we're done.cognet2005-05-241-0/+12
| | | | This fixes the random segfaults which occurs at high interrupts rate.
* Don't set the tuner type to TUNER_MT2032 if BKTR_OVERRIDE_TUNER is defined orcognet2005-05-241-1/+4
| | | | if hw.bt848.tuner has been set, so that we can force the tuner.
* Fix one more misuse of u_long when uint32_t is actually meant.cognet2005-05-241-1/+1
| | | | | Submitted by: oliver MFC after: 3 days
* - Move the REISERFS option in the MD NOTES file for i386, it doesn'tmux2005-05-242-6/+6
| | | | | | exist on other architectures yet. - While I'm here, fix the formatting of the options line. The keyword "options" should be followed by a space and then a tab, not 2 tabs.
* Copyout to userland if kern_sigaction succeedsps2005-05-241-2/+2
|
* Add new ral(4) and ural(4) drivers.damien2005-05-243-0/+6
| | | | Approved by: silby (mentor)
* Fix kiconv on the 64bit plathomes.imura2005-05-242-6/+7
| | | | | | | | | | | | | | - Correct idxp pointer to point the properly address of the each array of the kiconv character conversion tables, so that character conversion work properly when file systems are mounted with kiconv options. - The definition of ICONV_CSMAXDATALEN was also bogus because it was defined as if all machines were 32bit computers. Tested on: amd64 MFC after: 1 month
* Connect the ReiserFS filesystem to the modules build (i386 only).dumbbell2005-05-242-0/+13
| | | | Approved by: mux (mentor)
* Connect the ReiserFS filesystem to the build (i386 only).dumbbell2005-05-243-0/+18
| | | | Approved by: mux (mentor)
* Import of ReiserFS filesystem support (currently limited to read-only ondumbbell2005-05-2413-0/+6347
| | | | | | i386). Source code is under the GNU GPL license. Approved by: mux (mentor)
* Use low level constructs borrowed from interrupt threads to wait forups2005-05-235-26/+46
| | | | | work in proc0. Remove the TDP_WAKEPROC0 workaround.
* Rewrite of tcp_sack_option(). Kentaro Kurahone (NetBSD) pointed outps2005-05-232-64/+109
| | | | | | | | | | | | that if we sort the incoming SACK blocks, we can update the scoreboard in one pass of the scoreboard. The added overhead of sorting upto 4 sack blocks is much lower than traversing (potentially) large scoreboards multiple times. The code was updating the scoreboard with multiple passes over it (once for each sack option). The rewrite fixes that, reducing the complexity of the main loop from O(n^2) to O(n). Submitted by: Mohan Srinivasan, Noritoshi Demizu. Reviewed by: Raja Mukerji.
* Sync the style of these two files.obrien2005-05-232-15/+26
|
* Fix semantics of ph_busy_count == -1 to pass instead of block.mlaier2005-05-231-1/+3
| | | | | | PR: kern/81128 Submitted by: Joost Bekkers MFC-after: 2 weeks
* Remove local error variable, which leads to hiding error from returnglebius2005-05-231-1/+0
| | | | | | | | value. PR: kern/81371 Submitted by: Wojciech A. Koszek MFC after: 1 week
* Return EINVAL for incorrect hook names.glebius2005-05-231-3/+2
| | | | | PR: kern/81349 Submitted by: Wojciech A. Koszek
* This commit was generated by cvs2svn to compensate for changes in r146539,harti2005-05-233-4/+5
|\ | | | | | | which included commits to RCS files with non-trunk default branches.
| * Virgin import of NgATM kernel part 1.2harti2005-05-233-4/+5
| |
* | Add some debug code to diagnose root-on-mirror problems with recent -current.pjd2005-05-231-0/+3
| | | | | | | | Reported by: Daniel Eriksson
* | Make snd_maestro3(4) mpsafeyongari2005-05-231-84/+211
| | | | | | | | | | | | | | | | | | - Let m3_pchan_trigger()/m3_rchan_trigger() acquire lock and call m3_pchan_trigger_locked()/m3_rchan_trigger_locked() respectivly. - Mark interrupt handler INTR_MPSAFE. - Add locks in sound/channel interface. Tested by: nork
* | According to STP2002QFP User's Guide, it seems that driver shouldyongari2005-05-231-1/+4
| | | | | | | | | | | | | | | | | | | | | | program RXMAC to discard frames with SA field matching the stations's MAC address. Experimentation shows that HME receives its own frames when it operates at 10Mbps half-duplex. With this change HME runs at 10Mbps half-duplx should work with IPv6. (No more "DAD detected duplicate IPv6 address".) Reported by: jacques brierre <jbrierre AT bellsouth DOT net> Reviewed by: marius
* | Fix some of the problems Bruce observed with this code.peter2005-05-222-3/+4
| |
* | Protect fsid in freebsd4_getfsstat() in simlar way as it is done inpjd2005-05-222-6/+12
| | | | | | | | getfsstat().
* | The code is under '#ifdef not_that_way', but anyway:pjd2005-05-221-0/+3
| | | | | | | | - Add missing prison_check_mount() check.
* | Add missing jail.h include.pjd2005-05-221-0/+1
| |
* | This code seems to be dead, but anyway:pjd2005-05-221-3/+9
| | | | | | | | | | | | - Don't leak fsid. - Don't forget about prison_check_mount(). - Don't use additional variable when there is no need to.
* | If we need to hide fsid, kern_statfs()/kern_fstatfs() will do it for us,pjd2005-05-223-17/+8
| | | | | | | | | | | | | | | | | | so do not duplicate the code in cvtstatfs(). Note, that we now need to clear fsid in freebsd4_getfsstat(). This moves all security related checks from functions like cvtstatfs() and will allow to add more security related stuff (like statfs(2), etc. protection for jails) a bit easier.
* | Swap in can occur safely without Giant. Release Giant on entry toalc2005-05-221-3/+2
| | | | | | | | scheduler().
* | o Clear device-specific PCI register 0x41 (Retry Timeout) during attachdamien2005-05-223-20/+140
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | and on resume (reported to fix issues with ACPI) o Add monitor mode support o Add WPA (802.11i) support (not tested extensively though!) o Add a device specific sysctl to control the tx antenna (default to antenna diversity) o Fix sensitivity setting o Fix setting of the capinfo field when associating o Temporarly disable 802.11a channels scanning that was causing firmware panics with 2915ABG adapters until I find a better fix. This breaks 802.11a support. o Temporarly switch back to software WEP until I implement hardware encryption for AES and TKIP too. Approved by: silby (mentor)
* | Fix WPA (802.11i) support.damien2005-05-222-0/+24
| | | | | | | | Approved by: silby (mentor)
* | Clear device-specific PCI register 0x41 during attach and on resume.damien2005-05-221-0/+4
| | | | | | | | Appoved by: silby (mentor)
* | MFi386: set PMC vectorpeter2005-05-221-1/+6
| |
* | MFi386: remove commentpeter2005-05-221-3/+0
| |
* | Add PCI ID for BCM5789.silby2005-05-222-0/+3
| | | | | | | | Submitted by: S. Aeschbacher
* | Remove GIANT_REQUIRED from swapout_procs().alc2005-05-221-2/+0
| |
* | - Hook up machfb(4) to the sparc64 build, not enabled in GENERICmarius2005-05-213-2/+5
| | | | | | | | | | | | | | by default, yet. - Replace "graphics cards" with "framebuffers" in the description of creator(4) in order to make it uniform with the description of machfb(4) and the latter occur both on-board and as add-on cards.
* | Add machfb(4), a driver for ATI Mach64 graphics chips intended formarius2005-05-212-0/+1948
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | use with syscons(4) on sparc64. It's based on the respective NetBSD driver with some additional info (initialisation/hardware cursor) obtained from the Xorg 'ati' driver and some ideas taken from creator(4). ATI Mach64 chips ("ATI Rage") are quite common as low- end graphics chips in PCI-based sun4u machines and are used on-board in e.g. Blade 100 and a couple of OEM products. Most if not all of the Sun PGX add-on cards family (descriptions of the PGX32 are conflicting but most say it's a Rage Pro) are also based on these chips. Depending on the version of the OBP Mach64 cards destined for use in i386 machines also work in sun4u machines. The driver uses pixel mode with hardware acceleration as far as syscons(4) currently permits on sparc64 so text mode is already quite fast. The hardware cursor is used for the mouse pointer; for one because this is a "restriction" induced in syscons(4) on sparc64 by creator(4) and also because of issues with mapping the aperture when used as a low-level early during boot. Due to insufficiencies in the available documentation I didn't manage to get mode switch work properly (sync problems), yet. So for now this driver relies on the OBP having initialised a mode (as does creator(4)). On all of the tested machines is even true when using a serial console (and also not only when the OBP switched to a serial console because no keyboard is present). In general however the states the Mach64 chips are left in by the OBP vary a lot depending on the version of the OBP. This e.g. includes the aperture not being mapped in even when used as the console and the OBP just barfing when asked to map it. The latter is also the reason for the existence of this native driver in FreeBSD rather than taking an OFW frambuffer approach. Xorg is also happy to talk to these chips by mmap'ing them through this driver. For some hardware configs like on the Blade 100 a fix for the Xorg sparc64 MD bus code is however needed (added in version 6.8.2_2 of the xorg-server port). The video driver font loading and saving methods are not implemented, yet, as syscons(4) needs more work in that area to work viable on sparc64. With minor modifications machfb(4) would most likely also work on powerpc, when #ifdef'ing the OFW and possibly implementing mode setting probably also on the other archs. The latter is however not very practible at the moment as it would conflict with vga(4). Tested/developed with: Rage II+ add-on card on AX1105 and AXi board, AXe board (on-board Rage Pro) Additional testing by: marcel (Ultra 5 w/ on-board Rage Pro), scottl (Naturetech GENIALstation 777S w/ on-board Rage Mobility M1), Michiel Boland and Ilmar S. Habibulin (Blade 100 w/ on-board Rage XL)
* | Grab FBTYPE_NOTSUN3 and use it for FBTYPE_PCIMISC. The value matchesmarius2005-05-211-1/+1
| | | | | | | | the one used in NetBSD for FBTYPE_PCIMISC.
* | o creator(4):marius2005-05-215-245/+546
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Use register macros instead of magic values in the code. [1] - Check the return values of OF_getprop() and other stuff that actually can fail. - Let the unimplemented video driver methods return ENODEV rather than 0 so other code isn't tricked into thinking a certain operation was successfull. In case of e.g. the video driver creator_ioctl() this caused vidcontrol(1) to return random garbage information. Remove the TODO macros in the unimplemented video driver methods which did a printf("%s: unimplemented\n", __func__). Under certain circumstances these managed to invoke a printf() when a low-level console device wasn't attached, yet, causing a Fast Data Access MMU Miss. These macros were only really usefull for development anyway. - Set the struct video_adapter and struct video_info va_flags and vi_flags etc. as appropriate. - In creator_configure() don't rely on hitting the node which is the chosen console device first when searching the OFW tree for adapters compatible with this driver. Instead just check whether the chosen console device is a viable target for this driver. Targets that are not the console (including additional cards in multi-head configs) will be attached through creator_upa_attach(). I think this how the code in creator_configure() was actually meant to work. Honour the VIO_PROBE_ONLY flag and don't initialise and register the console device twice when creator_configure() is called a second time during sc_probe_unit(). Let creator_configure() return the number of the found adapters, i.e. 1 in case probing succeeds, as it's expected. The return values of video adapter configure functions however currently aren't checked so this doesn't make a difference at the moment. - In creator_upa_attach() don't rely on probing and attaching the adapter which is the console first, in case there are multiple adpaters and one of them is the console this could lead into using the video adapter unit 0 twice. - Make the check for DACs with inverted cursor control a bit more precise and actually honour that information when turning the cursor on or off. Add a helper function creator_cursor_enable() for this in order to keep code duplication low. [1] - Don't bother with faking a hardware cursor in case a device is the console. Apparently this was meant to start kernel output right after where the firmware left. In general this isn't worth the fuzz and also had no real effect as creator_set_mode() did clear the screen in any case, not just in case a device was not the console. - Implement creator_fill_rect() and use it to actually blank the display in creator_blank_display() when the mode is V_DISPLAY_BLANK, moving blanking the display out of creator_set_mode(). Use it also to implement creator_set_border() so the border can be re-drawn when switching to a VTY from X, exiting X, etc. (which leaves us with a black border most of the time). - Implement the video driver creator_ioctl(), moving the implementation of the IOCTL interface from the fbN CDEV version of creator_ioctl() into the video driver version and use the latter to implement the former. Use fb_commonioctl() to handle most of the FBIO IOCTLs. This gives programs like vidcontrol(1) which use the video driver creator_ioctl() a chance of working. Implement turning off the cursor via the FBIOSCURSOR IOCTL, which Xorg uses to in order to inform the OS that it's taking over the cursor. In creator_putm() check whether the cursor is enabled and (re-)install it if necessary, moving installing the cursor out of creator_init() and into a helper function creator_cursor_install(). This fixes the missing mouse pointer when switching to a VTY from X, exiting X, etc. - Some clean-up (remove unused/useless code, etc.). o sparc64/creator/creator_upa.c / sparc64/sparc64/sc_machdep.c: - Attach syscons(4) as an own pseudo-device on the nexus rather than directly in creator_upa_attach(), similiar to attaching syscons(4) as a pseudo-device on isa(4) on other archs. This makes it a whole lot easier to do the right thing in multi-head configs, especially with different types of graphics adapters. [2] - Set SC_AUTODETECT_KBD by default so USB keyboards work out of the box. [2] Based on/obtained from: Xorg 'ffb' driver [1] Based on/obtained from: FreeBSD/powerpc [2]
* | - Remove duplicate FBSDID.marius2005-05-213-13/+3
| | | | | | | | - Start copyright comments with /*- where missing.
* | - Not every architecture defaults to a black background (e.g. sparc64marius2005-05-211-9/+9
| | | | | | | | | | | | | | uses white) so base the color of the border on SC_NORM_ATTR rather than hardcoding BG_BLACK. - Use SC_DRIVER_NAME rather than hardcoding 'sc' in message strings (see also sys/dev/syscons/syscons.h rev. 1.82).
* | On sparc64 use 'syscons' rather than 'sc' for SC_DRIVER_NAME somarius2005-05-211-0/+8
| | | | | | | | | | | | | | syscons(4) and its pseudo-devices don't get confused (including by other device drivers) with the system controller devices which are also termed 'sc' in the OFW tree (and which we probably want to interface with hwpmc(4) one day).
OpenPOWER on IntegriCloud