Commit Graph

1470 Commits

Author SHA1 Message Date
Jérôme Duval
1fb04337f5 * added pin capabilities and power support constants
* added a record stream, assigned it to input widgets: no recorded sound yet, though buffer cycling is ok


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26953 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-12 21:06:48 +00:00
Axel Dörfler
96e0e6d137 * Applied patch by Justin O'Dell: the 8168 MMIO region is obviously in the
third range, not the first.
* This finally closes #1853 again.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26904 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-09 20:57:46 +00:00
Axel Dörfler
46b2c7efd3 * Now uses different base addresses for mapping the registers depending on the
chipset. This should now finally fix bug #1853.
* Instead of reading values directly from the PCI config space, we now just use
  the pci_info structure to retrieve them (interrupt, and base address).
* Renamed alloc_mem() to alloc_contiguous() to make clearer what it does.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26886 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-09 09:43:19 +00:00
Axel Dörfler
8c5620e78f * Reverted last commit - not a good idea to provide untested patches. With the
patch applied, the card didn't work at all anymore.
* Minor 80-column/white space cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26879 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-08 15:37:43 +00:00
Stephan Aßmus
95d27b2afd Applied patch by "anxiety":
* Tracked down the problem[1] to the wrong offset being read from the pci config.
  Now matches Realtek's Linux driver. I couldn't find why it worked before as
  the value hasn't changed since the original version added to the repository.
  This is only verified with my own 8168 but I found no special logic in other
  drivers for 8167 or 8169.
[1] See #1853, "RTL8168 recognized but not working"
I don't have the hardware myself to test.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26873 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-08 10:43:08 +00:00
Jérôme Duval
8715a6ad9c * style cleanup
* avoid using read/write and block flags for mapping register memory


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26867 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-07 18:59:07 +00:00
Axel Dörfler
b0884f0cb8 * Fixed a ton of wrong usages of B_CONTIGUOUS + B_FULL_LOCK.
* The use of B_{READ|WRITE}_AREA throughout the drivers is surely alarming.
  Defining these flags means that *every user* application can access these
  buffers read/write, it becomes visible in userspace like any other memory
  (just shared among all apps). I would like to ask each driver maintainer
  to see if that is really wished here. If you only need one app to be able
  to access it, cloning the area would be more appropriate.
* I came across the use of B_ANY_KERNEL_BLOCK_ADDRESS a number of times. This
  is almost completely useless for most usages, as it tries to align the
  virtual to a multiple of the size of the area. It just makes the allocation
  more likely to fail. Please only use where appropriate, and please review
  your code.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26858 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-07 13:00:36 +00:00
Axel Dörfler
72ebbe4244 * Forgot to allocate the dma_resource before using it. Now scsi_cd works again.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26852 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-07 06:41:15 +00:00
Jérôme Duval
1708513ca8 * added an ALIGN macro for easing readability and use it for 128 alignments
* use HDAC_STREAM_POSITION register value to check the current buffer cycle in interrupt handler
* added B_FULL_LOCK flags for area allocation, not sure it's handled but at least more correct
* buffer descriptors now use a low and high address fields
* applied a byte mask on format
* enabled PCI bus mastering if not yet done
* the PCI space register TCSEL (Traffic Class Select Register, which sets PCI express QOS) is now reset to TC0 (clear 0-2 bits) as needed on some boards like mine to 
ensure good playback

Playback is finally working correctly here on ICH8 HDA!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26847 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-06 20:04:51 +00:00
Axel Dörfler
65f1e8eceb * Ported scsi_cd, too, still untested.
* This should have been part of r26828, although it did not break the build :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26829 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-05 21:15:28 +00:00
Axel Dörfler
24593e2c79 * First baby steps in letting our drivers use the new I/O request/scheduler
architecture: for now, we do this on the lowest layer only, therefore all
  requests are handled synchronously (ie. in the scheduler's thread).
* Instead of using the block_io module, scsi_disk (and scsi_cd) are now
  exporting a device on their own, and use an I/O scheduler with an appropriate
  DMA resource.
* There are still lots of TODOs, and it can easily panic - don't update if
  you intend to demo Haiku.
* scsi_periph now only has an io() function that get an io_operation, instead
  of the previous read/write functions, moved preferred CCB size from those
  functions into the device registration.
* Changed all scsi_periph files to C++.
* scsi_cd ported, too, but untested.
* Removed block_io from image - it will be removed completely soon.
* Temporarily commented an ASSERT() in the ATA bus manager (in case you use
  it); it's sometimes triggered by the code now, and I haven't yet looked into
  the issue -- doesn't seem to harm, at least.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26828 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-05 21:11:51 +00:00
François Revol
6ac63f933f - fix warning
- fix build (weird ioctl name)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26811 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-04 23:18:03 +00:00
Oliver Ruiz Dorantes
5c78f79f3a Fix gcc4 build (using __FUNCTION__), and more whitespaces cleanups...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26804 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-04 20:13:03 +00:00
Oliver Ruiz Dorantes
859039e124 Cleaning whitespaces/tabs and styling
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26803 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-04 20:03:23 +00:00
Oliver Ruiz Dorantes
8976dbe878 - First steps for SCO connections
- Some styling 
(Mika Lindqvist)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26799 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-04 17:14:06 +00:00
Oliver Ruiz Dorantes
e16deeff23 Fix: Returning always error at submitting acl RX frames(Mika Lindqvist)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26688 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-30 16:51:06 +00:00
Oliver Ruiz Dorantes
2011fa73d0 Fix the setting of special flags for bcm2035 device
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26666 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-28 19:19:09 +00:00
Oliver Ruiz Dorantes
71f38a2743 - Fix the calculation of the expected size of a packet
- Enabling all net_buffers code & ACL
- Asume contiguusness for outgoing packets
- Fix incorrect cleaning of btDevices
- Posting ACL data to the net_device Kernel module.

Sumarizing this enables ACL tranmision mode in the driver which starts to be "real network data" of the bt protocols not configuration as we had before



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26638 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-25 19:43:56 +00:00
Oliver Ruiz Dorantes
e54b6bb39a Make the local devices register in some module of the Kernel land... for the moment as bridge for l2cap
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26613 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-24 20:41:11 +00:00
Stephan Aßmus
bee04bfed9 mmlr + stippi:
Hide USB errors better from the upper layers: Only try the "clear feature"
command if the error is B_DEV_STALLED. On other errors, the clear feature
was likely to fail, as it should only be used on stalled devices. Errors
intended to be ignored were thus not ignored because of the "clear feature"
failure.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26555 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-22 00:27:01 +00:00
Stephan Aßmus
6df047777a * Cleanup for 80 char per line limit.
* Don't spam the syslog when the device was not a Wacom.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26553 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-21 23:16:48 +00:00
Michael Lotz
2293ed6941 Add missing string.h that would otherwise soon break the build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26453 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 22:17:29 +00:00
Jérôme Duval
06688259b6 fix alignment
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26446 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-16 17:36:27 +00:00
Oliver Tappe
b0387fe2bb Fix problem with openssh failing to connect to OpenSolaris and Zeta servers:
* we need to initialize c_ospeed and c_ispeed, as a value of 0 means 
  'hangup' - which is not a good default, I suppose


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26426 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-15 15:09:32 +00:00
Stephan Aßmus
fc53a63149 * On some systems, switching the resolution in VESA mode during
runtime did not work and gave a "General System Error".
  Jan Kloetzke provided a temporary work around, the area
  which the BIOS can access is enlarged, although according to
  specs, this should not be needed.
* After switching modes in the VESA driver, turn on write
  combining for the frame buffer area. This gives a huge speed
  boost for all graphics drawing. Only people for which mode
  changes did not work were using the full speed since the
  VESA mode switching support was added.
* Cleanup in the Jamfile, some header directories were included
  multiple times.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26395 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-12 19:33:03 +00:00
Fredrik Modeen
326767870b unsuccessfully effort to move emuxkigamport to the emuxki audio driver where it belongs. The sound got distorted when the joystick was used.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26391 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-12 10:55:44 +00:00
Fredrik Modeen
0996e64efd Driver for USB Joystick SBLive and audigy. Work in progress. Right now the USB driver don't work.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26390 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-12 10:31:24 +00:00
Oliver Ruiz Dorantes
674e234e11 - Reorder and fix the uninitialization of a device.
- Fix some null pointer bugs
- Mark the removed device to avoid killing it twice in the uninit hook (Mika Lindqvist)
* More things might be still missing in the uninit context 



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26382 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-11 18:18:43 +00:00
Jérôme Duval
6d3c6e761a reduced buffer size: with 4096, no buffer is received by the multiaudio addon
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26349 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-09 23:14:57 +00:00
Oliver Ruiz Dorantes
d04eb939af -Move the launching of the Local Device to an IOCTL from the open hook to be more compatible with the net_stack
-Implement Launch method in the accesors regarding previous comment
-Fix KDL at removing device



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26345 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-09 17:01:30 +00:00
Jérôme Duval
3787196a5a * some methods to access stream registers were defined with wrong types
* use HDAC_BIDIR_STREAM_OFFSET and HDAC_OUTPUT_STREAM_OFFSET when applicable
* use a PAGE_ALIGN macro


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26330 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-08 21:48:50 +00:00
Jérôme Duval
81a7dedd6b init buffer_cycle
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26321 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-08 16:41:52 +00:00
Jérôme Duval
b5f75a7ec8 forgot to close the stream before deletion
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26310 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-07 20:45:54 +00:00
Jérôme Duval
df709516a0 moved stateStatus read/write out of the interrupt handler
added some error verbose


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26282 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-06 19:20:03 +00:00
Oliver Ruiz Dorantes
848c65ab3e Fix EOL
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26229 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-02 20:59:57 +00:00
Jérôme Duval
72401b8f9e PAGE_SIZE is defined in Haiku limits.h
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26225 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-02 19:13:13 +00:00
Michael Lotz
5c5b7a5760 While the comment was correct with regards to collecting the semaphore after
the cancel, it wasn't actually done. This could bring a device out of sync in
the case timeouts actually happened (which shouldn't be a commen case).
Fixed that and increased the timeout to 2 seconds in favor of slower devices.
Might need some fine tuning later still.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26197 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-07-01 19:21:59 +00:00
Jérôme Duval
bf48050249 setup register cache after the codec id is known
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26168 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-29 20:47:01 +00:00
Ingo Weinhold
66b9ba2a0b * The VERASE char (the one generated by backspace) is 0x7f.
* With output processing enabled, replace the VERASE char by
  BS SPACE BS instead of VERASE SPACE VERASE.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26135 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-26 13:11:17 +00:00
François Revol
94b31b08db Don't check for not-intel when you mean ppc!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26101 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-23 14:13:42 +00:00
Michael Lotz
6cf7524447 Add comment explaining the reason for retrying capacity reads.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26083 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-22 18:32:02 +00:00
Michael Lotz
27b95d52b8 Impose a one second timeout on all usb_disk data transfers. This should avoid
hanging systems on boot, but probably just hides a problem somewhere else, as
the transfers should timeout on their own if the device doesn't respond.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26082 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-22 15:07:49 +00:00
Michael Lotz
717b5b78ce Retry reading the capacity up to three times. The first try might only yield a
unit attention telling us that the device or media status changed, which is
expected.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26081 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-22 15:02:35 +00:00
Michael Lotz
57e81ac7d8 Properly initialize the device_hooks in the null and console drivers to include
the select/deselect/readv/writev hooks. Not that it would matter as the static
memory there is cleared to 0 anyway.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26080 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-22 13:37:08 +00:00
François Revol
1e4285015c Better handle incorrect io ranges, it should only be fixed for PC (around 0x3f0).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26055 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-21 00:35:07 +00:00
François Revol
71c84a02ee Rename floppy target to pc_floppy, add to the build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26053 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-20 23:14:18 +00:00
François Revol
476618a00e Move the floppy driver to disk/floppy/pc_floppy, it will be named pc_floppy, as it handles PC-style controllers, but not only PCs have those, so it doesn't belong to arch anymore.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26052 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-20 23:05:19 +00:00
François Revol
01cf5d4907 Prepare for move.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26051 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-20 23:01:16 +00:00
François Revol
8942de6c0d Make the floppy driver buildable again... even under Haiku.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26050 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-20 22:58:15 +00:00
Axel Dörfler
14a3b510e8 Fixed network boot.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25990 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-17 09:28:00 +00:00
Jérôme Duval
6ae6d56c27 added debug output for accessed codec registers in case of timeout
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25978 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-16 22:05:53 +00:00
Michael Lotz
50320b5500 Implement B_EJECT_DEVICE and B_LOAD_MEDIA through the START_STOP_UNIT SCSI
command.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25955 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-14 20:51:55 +00:00
Oliver Ruiz Dorantes
43f36da804 - Follow directions from mmlr regarding ticket 2353. Do not resubmit if the transfers are already cancelled.
- As more cleaning still needs to be done regarding this subject the ticket is not yet closed 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25944 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-12 19:42:21 +00:00
François Revol
12f3292615 - change KLSI init the way it's done by the linux driver
- do not count usb headers as part of count returned by write(), else we might end up writing more than the passed amount :)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25939 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-12 13:44:49 +00:00
Rudolf Cornelissen
730ebb158c removed all pre-NV20 refs, removed all TVout stuff except clearing some flags, re-enabled force_ws option, force_ws is now default true, pgm_panel is now default false.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25929 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-11 18:14:15 +00:00
Rudolf Cornelissen
6fafa6bf00 removed PIO mode acceleration completely.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25907 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-10 17:56:12 +00:00
Rudolf Cornelissen
7d4cfc1251 removed all references to G80 and newer cards. Bumped version to 0.85 and updated docs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25904 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-10 11:10:31 +00:00
Rudolf Cornelissen
ea72734485 added verified support for Nvidia GeForce 6150 Go (NFORCE4 Integr.GPU) on behalf of Dustin Howett. Thanks for your work on this.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25902 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-10 10:45:54 +00:00
Rudolf Cornelissen
9e06ba69cc re-enabled force-WS option, but changed default to being true. Also modified default setting for program panel to being false since this may provide a higher chance for a working panel outthere. If people experience trouble please let me know.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25900 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-10 10:39:03 +00:00
Jérôme Duval
8af7752eff fix dependency
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25891 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-09 20:45:19 +00:00
Jérôme Duval
b93be9caa8 added a driver for ACPI lid: only detection is implemented, and not sure a dev entry is needed
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25890 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-09 20:42:53 +00:00
Rudolf Cornelissen
50d3d63701 updated settings file
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25878 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-09 15:36:54 +00:00
Rudolf Cornelissen
9c6e0a8061 renamed nvidia.settings
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25876 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-09 15:17:02 +00:00
Rudolf Cornelissen
abeca8acc6 kerneldriver for nvidia gpgpu driver
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25875 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-09 14:54:32 +00:00
Rudolf Cornelissen
f31163e967 probably/hopefully fixed auich driver for many systems: note that the codec_access_semaphore will NOT be reset on certain systems if an illegal/non existing register was accessed before. We need to do the access anyway to get such systems working. I hope someone can create a more extensive entry in syslog here to identify the offending access as that can be done AFAICT. This will help improve the driver later on because the non-existing-register accesses could be removed. Anyhow: I think the change I just did should remain, as it makes the driver more fault-tolerant to faults in itself (or hardware). Lowered the wait time to 1mS btw as that should suffice big_time. My Dell Inspiron C610 laptop with ICH3-M and Crystal CS4205 now works perfectly. No sound at all before.. Fix found in Linux-2.6.17/sound/pci/intel8x0m.c. Hope no-one is offended by my 'intrusion' here. Bye.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25852 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-07 19:28:27 +00:00
Jérôme Duval
765e53019a acpi_ns_dump was merged into acpi_busman
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25851 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-07 18:39:30 +00:00
Jérôme Duval
22dcb7a5bf Converted acpi_thermal to new driver architecture
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25850 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-07 18:33:58 +00:00
Michael Lotz
a92156e1cf Initialize the mutex before using it.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25830 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-06 20:36:23 +00:00
Michael Lotz
e109130a10 Fix a deadlock when removing a mass storage device that had active transfers.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25829 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-06 20:30:58 +00:00
Michael Lotz
7d9e7cab36 Also use the interface index when generating the report descriptor dump.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25814 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-05 23:29:26 +00:00
Michael Lotz
9bdf88b686 Even though there is a space after that backslash GCC4 complains...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25813 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-05 23:28:39 +00:00
Axel Dörfler
84a1454548 * Fixed warnings, and turned off debugging output.
* This fixes bug #2274.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25796 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 19:06:57 +00:00
Axel Dörfler
d16ddc579c * The boot loader now passes on its EDID info to the kernel, and that will
be put into a boot_item in frame_buffer_console_init().
* The VESA driver now supports gettings the EDID information as well; this
  is necessary now, since the app_server no longer takes over the mode the
  boot loader had chosen.
* Note, we might want to do this via vm86 instead in the future, and remove
  the kernel part again.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25786 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-03 15:17:59 +00:00
Ingo Weinhold
1c8de8581b * Added optional spinlock contention measurement feature. Enabled when
B_DEBUG_SPINLOCK_CONTENTION is defined to 1. It typedefs spinlock to a
  structure (thus breaking BeOS binary compatibility), containing a
  counter which is incremented whenever a thread has to wait for the
  spinlock.
* Added macros for spinlock initialization and access and changed
  code using spinlocks accordingly. This breaks compilation for BeOS --
  the macros should be defined in the respective compatibility wrappers.
* Added generic syscall to get the spinlock counters for the thread and
  the team spinlocks.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25752 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-06-02 02:04:12 +00:00
Axel Dörfler
3736cb7d04 * Ported scsi_cd to the new driver architecture.
* Added legacy_sata and scsi_cd back to the image.
* Minor cleanup in scsi_disk.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25739 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-31 16:09:31 +00:00
Axel Dörfler
fc128a4c76 * Made block_io.h usable from C++ (which doesn't like "typedef a *a" anymore).
* Renamed scsi_dsk to scsi_disk.
* Joined all scsi_disk sources together to a single scsi_disk.cpp file.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25737 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-31 11:59:02 +00:00
François Revol
c61ea1148f Fix gcc4 error about lvalue... this doesn't look clean anyway.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25698 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-29 11:59:34 +00:00
Ingo Weinhold
2b07b8e0f1 * Replaced all instances of benaphores in the kernel code by mutexes.
* Removed kernel benaphores.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25690 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-29 02:08:23 +00:00
Ingo Weinhold
b0f5179aa5 * Changed recursive_lock to use a mutex instead of a semaphore.
* Adjusted code using recursive locks respectively. The initialization
  cannot fail anymore, and it is possible to use recursive locks in the
  early boot process (even uninitialized, if in BSS), which simplifies
  things a little.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25687 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-28 23:12:36 +00:00
Oliver Ruiz Dorantes
96f4720393 Add into compilation remaining bluetooth components:
- server
- command tools
- H2 transport driver

Patch by Adrien Destugues and Andreas Faerber



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25685 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-28 21:33:22 +00:00
Axel Dörfler
9f16184577 Patch by Jan Klötzke with minor changes by myself:
* Use vm86 mode to call the VESA BIOS to do the actual mode switching by
  providing an ioctl in the vesa driver.
* Fix vm86.h.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25680 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-28 10:48:01 +00:00
Michael Lotz
3c72cf643a Fix extern/static declaration of usb_hid_device_* functions. Should fix GCC4 build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25665 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-26 18:15:13 +00:00
Axel Dörfler
368167ede8 * Integration of the new driver architecture.
* Moved devfs from fs/ to device_manager/, and separated the legacy driver
  support from it.
* Removed fast_log module.
* There are a couple of (temporary) regressions, though:
  - legacy SATA and ISA IDE support is disabled, the drivers haven't been
    ported yet.
  - The not yet used ATA bus manager hasn't been ported yet, either.
  - AHCI changes have not been tested.
  - the listdev command has been removed from the build (as it currently
    doesn't work anymore).
  - device manager generated IDs currently are not freed anymore when a device
    node is removed.
  - generic drivers can't yet use the new driver architecture.
  - simple busses that do not support device types won't work yet.
  - legacy driver publishing/unpublishing (ie. what USB needs) has not been
    tested, and may be broken.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25662 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-26 16:52:27 +00:00
Michael Lotz
32ab216c85 * Check for the removed case before doing any transfers.
* Cancel possibly active transfers when removed.
* Do not interpret the transfer buffer in case of an error or removal.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25658 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-25 22:29:41 +00:00
Michael Lotz
9e48bf8e42 Rewriting the usb_hid driver. It has now gotten a driver part and a device part
structured into the HIDDevice base class and KeyboardDevice and MouseDevice
subclasses. This can be extended easily to support more device types like game
controllers, joysticks and other HID devices. The parsing code remains untouched
while the interpretation code has been integrated into the device classes.
The driver should work much the same way as before including the boot protocol
only keyboard limitation. On the other hand composite devices that combine
multiple devices should now work, as long as they expose those devices as two
seperate interfaces.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25657 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-25 22:01:08 +00:00
Marcus Overhagen
ad36dc4f21 Set the correct SCSI data direction mask.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25651 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-24 21:46:30 +00:00
Ingo Weinhold
91890a3258 * Moved the allocation of the static ch_randgen structure from the
open() hook to init_driver(). Unlike commented the structure was not
  allocated lazily, but with every open(), and thus leaked.
* Replaced static semaphore by a mutex.
* Reordered includes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25631 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-23 22:18:58 +00:00
Jérôme Duval
905b181d73 always clear resume interrupts
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25616 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-22 20:11:36 +00:00
Michael Lotz
77cc55629c Add missing api_version to usb_ecm.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25615 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-22 18:46:06 +00:00
Jérôme Duval
dd07c0feb8 disable channels before installing the handler
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25592 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-21 20:52:59 +00:00
Jérôme Duval
9727e26555 revert my changes
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25589 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-21 18:49:52 +00:00
Axel Dörfler
35db13ea5a * Replaced the old s3savage driver with the new s3 driver, both written by
Gerald Zajac. Thanks a lot!
* Also put it on the image by default.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25583 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-20 21:09:49 +00:00
Jérôme Duval
0f0fba6373 wait for codec reset before attaching the codec
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25574 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-20 17:07:50 +00:00
Jérôme Duval
6ca824a7aa wait on codec power up
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25566 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-19 21:42:44 +00:00
Jérôme Duval
8eadf4d51f patch from Michael Weirauch: cast before shifting vendor id. thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25563 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-19 18:07:51 +00:00
Jérôme Duval
127da0271b fix the stereo enhancement list
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25562 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-19 17:20:00 +00:00
Ingo Weinhold
fbe0c27a94 axeld + bonefish:
Changed condition variables so that it is allowed to block (e.g. lock
mutexes etc.) between Add() and Wait(). This fixes #2059, since the
block writer used them this way and could thusly fail to wait for a
condition variable, causing a temporary stack object to be used past its
lifetime.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25525 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-17 10:21:37 +00:00
Michael Lotz
f940ec3d9c Fix the GCC4 build the other way around. Remove the unnecessary forward
declarations and make the functions static again.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25510 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-15 12:27:20 +00:00
Maurice Kalinowski
8f65f279f2 gcc4 build fix.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25505 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-15 10:46:25 +00:00
Jérôme Duval
c27f3926a0 * updated ac97 code with the one from Marcus' ich driver
* merged existing quirks (reversed amp enable and ad1981b)
testing is welcome!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25497 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-14 20:03:29 +00:00