Commit Graph

1903 Commits

Author SHA1 Message Date
Philippe Houdoin
2226913b43 Fix header guard name.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33306 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-26 23:44:16 +00:00
Stephan Aßmus
8ac8a808e4 Patch by idefix:
* Use the correct interface index for the control transfer that sets a Wacom
  tablet into tablet mode.
* Check if the mode is indeed setup correctly.
* Retry switching the mode up to five times, as done in the Linux driver.

Thanks a bunch! As Michael has proposed in ticket #3744, the whole Wacom
driver should be merged into the existing HID driver framework (eventually).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33301 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-26 10:33:18 +00:00
Philippe Houdoin
6411e0d21f Removed duplicate kernel_cpp.h, now using the one in headers/private/kernel/util.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33300 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-26 08:14:22 +00:00
Philippe Houdoin
d0f3c92bb2 Fix usb_asix build under gcc4.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33297 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-25 17:03:14 +00:00
Philippe Houdoin
46b4cc5651 Unbreak acpi_thermal driver.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33281 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-24 23:47:10 +00:00
Jérôme Duval
b964c116d7 * handles correctly failures during setup
* style fixes
* fixed warnings


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33279 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-24 22:41:12 +00:00
Jérôme Duval
430889581a * handles correctly failures during setup
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33278 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-24 22:40:33 +00:00
Jérôme Duval
b5929aa12e * handles correctly failures during setup
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33277 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-24 22:39:59 +00:00
Jérôme Duval
65c7c7c383 * handles correctly failures during setup
* style fixes


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33276 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-24 22:39:38 +00:00
Jérôme Duval
b5d916002b * handles correctly failures during setup
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33275 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-24 22:38:11 +00:00
Rudolf Cornelissen
51e7cfd2bb modified head selection code for most NV40 architecture cards since their BIOSes behave differently. This should fix black or disabled screens if the secondary connector has a VGA screen while the first one is disconnected. verified on NV43, NV44, G71 and G72 over here. Bumped version to 1.05.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33255 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-23 19:17:35 +00:00
Michael Lotz
e65227c272 * Error out on the num events ioctl in case the device was removed, otherwise
the original BeOS input_server will fail to detect the error and never close
  the device.
* Remove the empty kernel_cpp header and use the one from kernel util instead.
* Add some missing headers for completeness.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33242 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-23 05:30:04 +00:00
Michael Lotz
ecd60dec1a Removing unused BeOS compatibility header.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33241 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-23 02:26:54 +00:00
Michael Lotz
8b6349fd32 * Add a missing result assign that would cause the synchronize ioctl to always
return an error.
* Properly use the name length instead of a hardcoded buffer size when composing
  the name of the raw device and ensure proper termination.
* Case new ioctls for Haiku as the target platform. Indeed this driver works
  fine on BeOS even though it was written natively for Haiku.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33240 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-23 02:16:47 +00:00
Rudolf Cornelissen
7629e48591 fixed default driversettings to be correct when an empty nvidia.settings file is provided. error reported by tigerdog in bug #2948.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33206 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-20 13:31:43 +00:00
Gerasim Troeglazov
1720217701 Change interface name from atl1 to attansic_l1. Add driver to the image.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33160 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-17 23:52:49 +00:00
Gerasim Troeglazov
7d3b9fd6c3 Update to actual AGE driver version. (Tested on real hardware - work fine)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33158 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-17 05:38:11 +00:00
Gerasim Troeglazov
68710d6a76 Attanstic/Atheros L1 Gigabit Ethernet [1969:1048] driver for Haiku. Port of FreeBSD driver from: http://people.freebsd.org/~yongari/age.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33154 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-16 12:47:30 +00:00
Rudolf Cornelissen
19e5e222ee improved modeline scaling for digitally connected screens. This fixes shifted output on screen mostly happening on 640x480 resolution, due to missing CRTC SYNC pulses (ticket #4442). Bumped version to 1.04.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33150 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-16 08:24:30 +00:00
Philippe Houdoin
1c7f3645ac Fixed typo, spotted by korli.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33137 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-14 19:57:14 +00:00
Michael Lotz
57301f6e20 We do not yet support frame sizes this large. This makes the ipw2100 driver
usable under Haiku.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33130 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-14 08:07:00 +00:00
Philippe Houdoin
bfa9be00c4 Apply Pete Goodeve patch, provided in #4463:
* add output support
 * fix variable lenght input: all usb_midi_event_packet bytes were 
   always returned before.
Missing features are:
 * multiport support (input from any ports are read and merged currently, 
 so beware to connect only one port!)
 * non-standard USB midi adapters, like my Roland UM-2 which don't advertize 
   themselves as Audio / Midi stream class/subclass.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33126 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-14 03:56:49 +00:00
Jérôme Duval
8c393635e2 * prints the stream fifo size
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33121 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-13 22:07:48 +00:00
Jérôme Duval
ba4d7ed20d * added input selector controls
* increased responses count
* only unmute active inputs on mixer widgets


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33120 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-13 21:58:22 +00:00
Michael Pfeiffer
c89ef3848e Start of implementation of USB printer port based on USB_disk.
-alphabranch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33060 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-11 06:17:13 +00:00
Jérôme Duval
ea9f99f3fb try to align the offset to be more compliant
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33047 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-10 22:55:02 +00:00
Jérôme Duval
561c00c9c3 prints out stream status errors
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33046 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-10 22:03:37 +00:00
Jérôme Duval
e9fab5adbc fixed es1370 build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33041 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-10 20:27:10 +00:00
Jérôme Duval
1cab92ade6 try at workaround early playback interrupts on non intel.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33011 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-08 22:49:32 +00:00
Jérôme Duval
bd7b0937db the float format is not supposed to be selected yet, as we don't support the float format in multi_audio.
dump more audio formats in hda.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32971 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-06 19:22:01 +00:00
Rudolf Cornelissen
19a34ea09c added disabling of spread spectrum-ing DAC clocks on NV30 and later: my laptop display nolonger shivers on the secondary output. version is 1.03. +alphabranch.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32965 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-06 14:42:11 +00:00
Rudolf Cornelissen
148077d71e the previous commit shifted the PLLsel problem from digitally connected screens to analog connected screens apparantly. That is now fixed and both should work OK. Bumped version to 1.01. +alphabranch.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32958 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-06 10:20:42 +00:00
Rudolf Cornelissen
faed7a30d4 fixed PLL selection trouble on GF6xxx and 7xxx cards with a little help from the nouveau project and a lot of testing. Now dualhead should work on most of these cards, and now you should nolonger be presented with a 'out of range' message on your DVI connected screen if the boot splash screen is at a lower-than-native resolution for your screen. This hopefully fixes bugs #1557, #2780, #2948 and #4321. Bumped version to 1.00. Yes. +alphabranch.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32946 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-05 16:02:20 +00:00
Jérôme Duval
e21d12516e the flag means no snoop
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32924 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-03 21:21:13 +00:00
François Revol
7e26ad5af7 Add functions to the old-style PCI bus manager to reserve a device from an old-style driver for exclusive use. This should help making OSS and native audio drivers mutually exclusive. Used in es1370 and hda drivers as examples. OSS must still be fixed to use it too though.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32899 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-09-01 23:56:02 +00:00
Rudolf Cornelissen
aa41802fa6 added support for ID 0x02e0 (Nvidia GeForce 7600 GT), closing bug #2465. +alphabranch.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32868 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-31 18:01:36 +00:00
Michael Lotz
88861a8888 Also test for the "no medium persent" case and don't tell B_DEV_MEDIA_CHANGED in
such a case as that would try to read info about a non-present medium.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32862 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-31 15:08:38 +00:00
Rudolf Cornelissen
ec591ad2fa memory size detection rewrite also fixes black_screen on some GF6xxx types. +alphabranch BTW
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32846 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-31 09:03:35 +00:00
Rudolf Cornelissen
fa42e59564 rewrote memory size detection. This should fix black screen at app_server startup on a number of GF7xxx cards (humdinger's for instance). updated docs, bumped version to 0.98.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32845 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-31 08:55:02 +00:00
Rudolf Cornelissen
42529205ad added support for haiku specific driverhook GET_PREFERRED_DISPLAY_MODE. Now laptops and other systems where EDID fails but a screen is digitally connected should also come up in their native modes from first system boot on.Updated docs. Bumped version to 0.97. +alphabranch
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32765 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-27 20:26:31 +00:00
Michael Lotz
5fa8a19786 Actually don't report any failures of the TUR command, as for devices with no
media present they will always fail with the no media or media changed errors.
+alphabranch


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32732 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-27 01:41:07 +00:00
Michael Lotz
de9aa21e08 If the device tells us that it doesn't support the Test Unit Ready (TUR) command,
don't try to use it for media status polling. In those cases we'll assume a
fixed device with no exchangable medias and therefore always return B_OK.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32731 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-27 01:38:20 +00:00
Oliver Ruiz Dorantes
3f664b99dc - Schedule event interrupt transfer with the maximun possible event size, => reduces the number of callbacks for bigger packages
- Add debug options for dumping incoming usb buffers
- Styling



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32721 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-26 17:50:41 +00:00
Jérôme Duval
8ddc0909e1 added an id with reversed_eamp_polarity on
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32637 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-23 18:09:23 +00:00
Rudolf Cornelissen
9b53cf03cd implemented haiku-specific hook GET_ACCELERANT_DEVICE_INFO. Haiku's screen prefs panel now indicates the brand name of the screen and only offers fully compatible modes for a connected screen if I understand it correctly. Note: currently only working for analog connected screens, digital connected screens coming up next. Updated docs, bumped version to 0.96.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32627 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-23 08:48:58 +00:00
Michael Lotz
7f5799140f Enlarge the timeout for data transfers. It was 2 seconds before and under a bit
of load, when using large enough block sizes or when simply having a slow device
this is by far not enough. It is now at 15 seconds, which should reduce timeout
problems to those cases where the device actually get's stuck (because of us
doing something wrong).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32615 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-22 16:12:36 +00:00
Jérôme Duval
1f5d96afb8 we now print a warning message in the log when the interrupt comes in the second half of a buffer: this should mean the interrupt comes earlier than expected.
Please report such warnings, they can help to investigate timing issues with some hda codecs.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32589 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-21 21:55:40 +00:00
Philippe Houdoin
4271a1354c Style cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32588 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-21 21:50:30 +00:00
Philippe Houdoin
6059eef66a Better use user_memcpy() to return battery [extended] info to userland caller.
Also add some paranoid checks: ACPI BIOSes implementation can be... wild.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32584 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-21 20:29:00 +00:00
Michael Lotz
c9c3b32d3b Rework incoming report handling. We need to notify all reports when one comes in
because all reports schedule transfers on the same endpoint and therefore need
to possibly reschedule. Previously if we got a report that we didn't listen on
all further reports would stop, because noone would schedule a new transfer.
This fixes extra keys not working on my natural keyboard.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32580 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-21 18:46:24 +00:00
Michael Lotz
40b708f776 Do not base the device number on the device count. Fixes bug #4267.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32474 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-17 17:51:26 +00:00
François Revol
e5b9797ec1 Fix signedness warnings.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32460 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-17 13:39:03 +00:00
Axel Dörfler
b2a75cf56c * Fixed mixup of the VGA compatibility layer - if the bit is set, it means the
device is not compatible, after all.
* No longer accept color changes if the mode is not an 8 bit one. I think that
  BWindowScreen does that after changing the mode, so that is messes up the
  colors, at least that's the theory, will test on real iron now.
* Use VGA as a fallback if setting the palette via VBE failed. This brings back
  the colors for ParticlesII in Qemu (but not in VirtualBox, which seems to be
  completely broken in this regard).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32359 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-14 14:30:01 +00:00
Axel Dörfler
2384335649 * Changed the way the device type is tested/set. There shouldn't be any functional
changes.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32353 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-14 13:02:52 +00:00
Axel Dörfler
bb693d7764 * Added VESA capabilities field to the kernel args.
* The vesa driver no longer uses VGA programming if the chip does not support
  VGA compatibility.
* The VESA driver now tries to set the DAC to 8 bits per color gun.
* In VESA modes, the driver no longer tries to use VGA programming; introduced
  the new vesa_set_indexed_colors() that is now used for palette programming.
  This should fix wrong colors of 8 bit BWindowScreen users with VESA on real
  hardware (emulators usually didn't mind either way).
* Note that the app_server needs to maintain a palette per 8 bit screen, as
  right now, the colors are garbled after a workspace switch. Stefano, are you
  looking into that already?


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32347 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-14 09:49:28 +00:00
Axel Dörfler
f7be7fea76 * Setting the depth to 1 for VGA mode in frame_buffer_console_init() was not
a good idea; it didn't have any consequences in there, but actually broke
  the app_server's support for the VGA mode.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32181 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-07 11:07:14 +00:00
François Revol
17a815e0ad Add pc_serial to the build. No, it's not yet usable in Haiku.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32089 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-08-03 17:30:18 +00:00
Clemens Zeidler
09596a6bbc Remove some debug output and disable debug output.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31986 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-30 17:52:34 +00:00
Michael Lotz
0fa107fd5d Don't spam for expected error returns. We do repeat key handling through
timeouts, so B_TIMED_OUT is expected at this point.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31974 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-30 15:18:45 +00:00
Jérôme Duval
a4df31984d actually publish input and output formats and rates
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31945 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-29 22:16:14 +00:00
Michael Lotz
3b1e4fd549 Fix pointer access. Thanks to Blub for spotting, I would've certainly spent a
lot of time finding this one!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31940 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-29 20:36:54 +00:00
Axel Dörfler
533cba7eff bonefish + axeld:
* Reverted r31809 as it introduced a race condition; if the I/O request had been
  notified, it could already been deleted at that point.
* Instead, we need to notify the request in each file system/driver that uses
  it. Added new notify_io_request() function that does that exactly.
* Added a TODO comment to the userlandfs where the request notification needs
  a bit more thought.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31903 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-29 12:16:15 +00:00
Jérôme Duval
d936f5e31f * now uses only one buffer_ready semaphore, this way the buffer exchange is done asap, useful when rates/formats are different between playback and record.
* checked what offsets my hardware my hardware really had: it affected only playback, and was 192 for 16 bits and 256 for 20/24 bits. With these values, playback and record are crystal clear. 
As I can't find any references for such offset values anywhere, sorry it's not supposed to work out of the box on all hardware. Maybe we could adjust the offset at runtime.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31875 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-28 22:36:13 +00:00
Jérôme Duval
4489296bf4 * dumps format and rates supported by audio group, input and output widgets.
Damn my hardware only supports 20bits input, though this explains why it doesn't work with 24bits input..


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31867 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-28 21:39:11 +00:00
Michael Lotz
49f0ed06ee * A more scalable way of initializing the LED items to NULL.
* Tiny coding style cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31861 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-28 21:04:01 +00:00
François Revol
c2bf32c770 Some links about a card I'm interested in...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31840 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-28 08:21:23 +00:00
Michael Lotz
92781ad394 Actually the index values cannot be larger than 16 bits as otherwise they would
cross usage page boundaries.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31839 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-28 01:14:55 +00:00
Michael Lotz
ab1a1f9423 * Allow key-like items from the consumer page to be recognized as well.
* Make the key arrays take the full range of possible index values (32-bits).
* Forward all unmapped keys with their HID usage as keycode.
* Remove some superflous debug output.

With this many of the extra keys on keyboards should be forwarded as unmapped
keys. An application could now watch for them (B_UNMAPPED_KEY{UP|DOWN} messages)
and interpret them based on their keycode which matches the HID usage.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31838 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-28 01:05:15 +00:00
Michael Lotz
55ae61312c Add disabled debug-helper to dump all reports of a device.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31793 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-27 01:29:10 +00:00
Michael Lotz
6522cd6090 Remove unused variable.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31792 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-27 01:28:35 +00:00
Michael Lotz
8e1857f795 * Completely rework the USB HID driver to make use of the HID framework
introduced earlier.
* Reworked the previous device classes to make them ProtocolHandlers handling
  their respective input_server <-> driver protocol.
* Implement setting report item data and building/sending reports based on that.
* Remove the old HID parsing code.

This enables us to use all HID devices as we now parse and use the HID
descriptors/reports. Non-boot-porotocol devices should therefore work.

The next step will be to implement a generic input/output framework in userland
that can communicate with a generic protocol handler in usb_hid. This will then
enable applications to make use of all the non-mapped HID stuff directly.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31790 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-27 00:35:21 +00:00
Axel Dörfler
1ad5198c09 * Reset keyboard state when an emergency key has been processed - it's likely
that we lost a few keystrokes, and would make keys (like SysReq) stick.
  Thanks to Rene for the note!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31688 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-22 08:02:51 +00:00
Clemens Zeidler
387cda1a6a Move watching part from the driver cookie to a device cookie.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31680 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-21 19:18:56 +00:00
Axel Dörfler
14aeff5f47 * The SysReq key was determined incorrectly - you have to press Alt, not Ctrl to
turn Print-Screen into SysReq. Now, getting into the debugger works via USB
  keyboards as well.
* I switched the break/pause key detection to Alt, too, although I could not
  find any such mechanism on PS/2 keyboards. Someone knows better how to deal
  with this one? (the key actually produces two scancodes, 0x1d + 0x45 on PS/2
  keyboards)
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31670 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-21 11:42:42 +00:00
Axel Dörfler
cf2a64ba52 * Added untested supported for the new emergency keys. Will test next.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31668 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-21 09:25:36 +00:00
Michael Lotz
0aea5c18d4 Make that queue_request() call into a clear_feature() call, as that's how it was
probably meant to be. The call as it was made no sense at all, as it hardcoded
the endpoint number and tried to supply data to a non-data request. It also
wasn't using a synchronous call, possibly triggering the callback function with
an incompletely set-up device structure, depending on how quickly the request
would return. This caused bug #4107.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31666 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-21 02:00:46 +00:00
Axel Dörfler
8ef9253a59 * Fixed relative include.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31659 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-20 20:33:35 +00:00
Michael Lotz
63d557f06f Fixing random GCC4 warnings. Mostly missing consts, some parentheses, some braces... Should all be harmless and not change anything.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31600 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-16 02:42:03 +00:00
Clemens Zeidler
34fc10ad1f Work in progress of the battery driver.
TODO: 
- Move watching stuff from driver to device cookie so it can be used by multiple instances. 
- Find out why we only get notified about AC / battery changes.
- Fetch _BMD info.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31483 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-09 16:42:30 +00:00
Clemens Zeidler
8c042be3d7 - Fix the timeout from millisecond to our microsecond spin/ wait functions.
- The timeout in Wait was ignored because B_RELATIVE_TIMEOUT was missing.
- Some cleanup.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31482 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-09 16:25:54 +00:00
Oliver Ruiz Dorantes
8fe1949531 Patch by Monni, wrong debug output for btCoreData module pointer
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31449 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-07 21:45:46 +00:00
Ingo Weinhold
ce3bb4fb88 Don't perform input processing when writing to the slave end (output written to
terminal was interpreted like input). Fixes #2409.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31417 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-07-06 11:39:49 +00:00
Jérôme Duval
05218580c7 * fix warnings
* add usb_midi to the image


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31342 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-30 19:07:26 +00:00
Rudolf Cornelissen
9e347ade99 now checking for max. resolution on analog screens as well as on digital screens. Resolutions above 'native' resolutions are nolonger accepted. Bumped version to 0.94, updated docs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31292 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-28 15:22:31 +00:00
Clemens Zeidler
4b8f258bfe - Forgot to set a timeout in Wait.
- Fix build if TRACE is enabled.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31215 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-23 21:08:40 +00:00
Rudolf Cornelissen
63e909772d added DDC/EDID widescreen detection for analog connected screens. Switched off the force widescreen option so autodetection is actually used. This should fix non-ws DVI connected screens displaying black screens or shutting off on non-native modes. Bumped version to 0.93.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31213 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-23 20:52:30 +00:00
Clemens Zeidler
75a666aa95 Embedded Controller driver, used the BSD driver as base. Thanks to Ithamar for pointing out that I need this driver to read the acpi battery status which now works for me (driver coming soon).
My laptop now really switch off on shutdown :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31102 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-18 18:30:06 +00:00
Jérôme Duval
2dcab9c100 delete miidevs headers occurrences and have the drivers use the common generated miidevs header.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31092 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-17 18:40:11 +00:00
Oliver Ruiz Dorantes
3ae24dffb1 - Cancelling pending transfers at close hook while it is still plugged preventing any resubmittion, this is related ticket 2353
- Free device in correct hook

This allows closing and reopening the bluetooth_server keeping bluetooth functionality



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31053 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-14 19:51:29 +00:00
Oliver Ruiz Dorantes
a1163de83e - Long events were locking the bluetooth server, as events can be more than 256 counting with the header.
- Add debug more information in H2 driver and Command Status event
- Change name of port for posting events(former was too long)



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31036 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-13 19:17:10 +00:00
Jérôme Duval
d0cb410d51 updated mii, msk to freebsd current
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31018 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-12 18:47:22 +00:00
Axel Dörfler
bfd4c59b63 * Added DPMS support to the VESA driver, in case the hardware/BIOS supports it.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30974 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-05 13:03:05 +00:00
Rene Gollent
80829ec813 Imported Gerald Zajac's ATI Mach64 / Rage driver and removed the old GPL-only mach64 driver that wasn't even part of the image anyways. Thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30962 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-06-05 02:50:25 +00:00
Rudolf Cornelissen
80b01907d9 modified GPU Ptimer programming which according to nouveau should fix LVDS panel programming in some cases. Bumped version to 0.91. If this update brings trouble, let me know... Sorry about the empty commit message before btw.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30868 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-26 18:46:00 +00:00
Michael Lotz
5ba33c51f2 * Integrate reports/items some more.
* Reorganize how items are added to collections.
* Make collections useful for enumeration through that.
* Added printing out of collections, reports and report items for easier
  verification of report parsing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30821 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-21 15:53:52 +00:00
Rudolf Cornelissen
fa0fea5f25 fixed acceleration engine crashes on at least G72 cards by powering up a new part of the engine. This fixes acc on Geforce 7300/7400/7500 cards, and closes tickets #927, #1535 and #3482. In order to test this you need to go back to Haiku R30277 at least since app_server nolonger uses acceleration. Acceleration code was synced to Xfree86 4.8.0. and no chances were found. Bumped version to 0.90, updated docs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30783 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-17 20:37:20 +00:00
Oliver Ruiz Dorantes
1343446530 Style cleanup(or not making it worse), fix some statistics(Monni)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30767 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-15 22:11:19 +00:00
Rudolf Cornelissen
52bba50d36 re-enabled ID 0x0141, Geforce FX 6600, since the card is confirmed working OK by me. If someone encounters trouble, contact me.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30754 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-13 19:01:08 +00:00
Stephan Aßmus
94aabcd393 * Fix by Cyan: Do the offset calculation taking the rate base into account.
Fixes using the HDA driver with frame rates based on 44100Hz.
* Automatic white space cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30704 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-11 08:05:51 +00:00
Michael Lotz
aaeffcf7a6 Adding missing license headers.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30665 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-07 22:23:14 +00:00
Michael Lotz
e7fcf08d76 Adding a complete HID parser and report handling facility. This is generic code,
so should be reusable for bluethooth HID as well (which is the same). The only
missing part so far is the logical collections that would allow nicer
enumeration of the report structure but is otherwise not useful. It should
support all of the HID specs except for usage aliases (even long items that
aren't actually defined should just work if they ever are). Not integrated into
the USB specific device framework and there are no actual drivers making use
of provided functionallity. The parsing was tested and works for all of the 3
devices I had available, but actual interpretation of data is not tested as the
driver side is missing. Will close that gap as a next step and then port the
mouse and keyboard drivers to that framework. Eventually a generic driver that
makes unknown fields available to userland apps in some way should be fairly
easy to implement with that.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30664 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-07 22:16:50 +00:00
Rudolf Cornelissen
7c9776248b updated docs: added id 0x01d7 which is confirmed operational by two users, and fixed id 0x1d8 which lacked laptop indication.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30627 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-04 18:58:38 +00:00
Rudolf Cornelissen
e9caec2c66 added Andrea's card 01d7: G72M [Quadro NVS 110M/GeForce Go 7300]
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30598 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-03 07:40:22 +00:00
Rudolf Cornelissen
bb0ac35825 added partial DDC/EDID support using the accelerants common staticlibrary. Only dumping config, monitor info to logfile. logfiles are welcome as the CRTC/DAC to I2Cport relationchip is not known by me yet. Bumped version to 0.89.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30553 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-02 09:58:11 +00:00
Rudolf Cornelissen
ce6115a180 added support for all HDTV modes video overlay for all GeForce cards that have overlay support. TNT1/2/2-M64 users remain in bitmap mode: the overlay engine there can't handle above DVD quality. Bumped version to 0.88.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30535 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-01 15:05:43 +00:00
Rudolf Cornelissen
a6cde944e6 fixed (at least NV34) card hanging after failed boot-time kernel VESA modeswitch. Updated docs. Bumped version to 0.87.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30531 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-05-01 10:09:22 +00:00
Clemens Zeidler
9d7af84b45 - Fix a bug in the speedstep driver, now the cookie is initialized in open so multiple watching clients don't interfere any more.
- Cleanup and smaller issues in the preferences app.
- Add driver and preferences to the image.

The driver supports some Pentium M and VIA Centaur CPUs (1000 to 2100 Mhz) and need acpi to detect the cpu device, so you have to enable acpi in the kernel setting file to test it.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30234 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-18 08:42:33 +00:00
Michael Lotz
ac0a972985 Adding mode sense command to retrieve the write protected status. Doesn't work
yet, so not enabled for now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30082 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-04-09 20:47:10 +00:00
Oliver Ruiz Dorantes
937bccdbde Avoid destroying the descriptors at closing devices. Thhis allow quitting and relaunching the bluetooth_server without losing functionality
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29641 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-21 22:27:13 +00:00
Oliver Ruiz Dorantes
49c80ab55d - Add KDL command to check driver memory usage
- Use the fetching function to get snetbuffers => reduced memory leaks& usage, used only 4 buffers per device



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29629 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-21 16:01:34 +00:00
Oliver Ruiz Dorantes
a99504cae3 - Fix the snbuffers recycling mechanism. Park function was not parking if the queue was empty at first instance. Fetching caused corruption freeing the previous buffer of the best matching one.
- Add debug methods



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29628 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-21 15:35:22 +00:00
Axel Dörfler
3601f762ed * Turned off buffer exchange debug output.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29541 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-15 10:13:28 +00:00
Jérôme Duval
85db3c9778 * cleanup
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29529 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-14 18:40:52 +00:00
Jérôme Duval
b06fce1203 * remove ac97 code
* style clean up


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29528 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-14 18:34:40 +00:00
Jérôme Duval
0db1930895 * update codec list
* move codec dump in ac97


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29527 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-14 18:28:09 +00:00
Jérôme Duval
18f6b63cd2 fix the build with ac97 code
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29524 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-14 17:18:19 +00:00
Jérôme Duval
7979b1cf49 * factorized ac97 code for auich auvia geode drivers
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29523 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-14 16:52:11 +00:00
Ingo Weinhold
aa4ba93e25 * Renamed src/system/kernel/device_manager/io_requests.{h,cpp} to
IORequest.{h,cpp}.
* Introduced public <io_requests.h> header. Currently it only declares the
  single function BFS uses.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29446 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-08 17:30:37 +00:00
Axel Dörfler
afe5aa6692 * Since JMicron generously send me one of their ethernet cards to add support
to Haiku for them, I finally got around taking a look at their FreeBSD
  drivers, and imported them into our repository.
* They don't compile yet -- looks like our FreeBSD compatibility layer needs
  some further improvements.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29445 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-08 16:46:12 +00:00
Jérôme Duval
81201a4349 * switch to PCI register IO
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29440 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-08 14:29:45 +00:00
Stephan Aßmus
0bd93b7def * Use a default buffer frame count that is adapted to the sample rate
of the audio group. This is supposed to keep the latency about the same
  regardless of sample rate and lessen the requirements on the system
  performance when using higher sample rates. Currently the multi-audio
  addon uses the highest available rate.
* Added TODO about the highest sample rate seemingly being forgotten in one
  place.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29421 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-07 10:23:52 +00:00
Rudolf Cornelissen
6042b7b665 added 'block_acc' option in nvidia.settings to completely disable the acceleration engine. This lets my G72 run (not crash) for the first time when enabled. Note: Haiku becomes very slow in drawing in 32bit mode when the driver is running this way compared to vesa mode. I am assuming this is because of (too) fine-grained calling of the engine management functions. Never saw this effect AFAIK in BeOS.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29381 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-03-02 19:55:03 +00:00
François Revol
bbc84914d4 Working version of the driver. At least it does seem to work with my onboard com port, but not the OxfordSemi PCI card I have here. Still requires tty_manager, and config_manager too, so won't work in Haiku yet. Needs cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29328 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-27 00:15:20 +00:00
Jérôme Duval
b5aca78a04 * compute offset based on vendor (32 for non intel) and sample rate
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29327 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-26 23:27:28 +00:00
Jérôme Duval
346ae57c93 * Stream interrupts seem to arrive too early on most HDA chips:
we adjust buffer descriptors to take this into account. It defaults to one sample, but it should depend also on the sample rate or the chip vendor.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29322 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-25 19:12:23 +00:00
Michael Lotz
6eba063647 * Added simplified possibility to schedule UHCI transfers from within KDL.
* Added debugger commands to resolve usb_ids to pipes.
* Adjusted the physical memory allocator to be usable in a slimmed down mode
  when running inside the kernel debugger.
* Implemented USB keyboard support for KDL through a kernel debugger add-on.
* Added kgetc() and made use of it where previously individual methods were used
  to ensure that reading characters always goes through the kernel debugger
  add-ons and the other methods.

This has some preconditions to meet though:
1) The keyboard must be in the boot protocol (currently the case but needs to
   be revisited once we have a full usb_hid).
2) The keyboard must be attached to a UHCI root port (i.e. not use EHCI or OHCI,
   also not through hubs unless those are USB 1.1).
3) the usb_hid driver has to be opened for this to work. This means that for the
   time between initializing USB and when usb_hid is opened by the input_server
   there is no keyboard support.

Also note that this has no way of detecting hot-plug, meaning that you can't
re-attach your USB keyboard from the hub to the root port once in KDL.

On the bright side of things, since this is a non-destructive mechanism it is
possible to enter and leave KDL without loosing the USB state.

Tested OK in QEMU, not tested on real hardware yet, will see in a few minutes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29291 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-22 20:46:27 +00:00
Philippe Houdoin
bcd9a7e1d4 Implemented ETHER_GET_LINK_STATE and ETHER_SET_LINK_STATE_SEM for rtl8169.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29278 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-22 01:35:15 +00:00
Karsten Heimrich
44ec2ebd20 * update freebsd compat with stubbed eventhandler
* get e1000 to compile
* remove dev/em from the build (might be removed later on)
* tested on VirtualBox (gcc2,gcc4), VMware(gcc4) and natively on
  ThinkPad T500 (gcc4)

* courtesy of Michael Weirauch (emwe)



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29247 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-18 22:34:52 +00:00
Karsten Heimrich
ab64e1faa3 * integrate e1000 FreeBSD driver
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29246 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-18 20:52:02 +00:00
Jérôme Duval
5076aaf050 * some style improvements again (ie lower case variables as pointed by Axel)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29238 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-16 23:05:54 +00:00
Jérôme Duval
79d4b99e40 * fix get_mix()
* style improvements


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29237 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-16 19:09:34 +00:00
Jérôme Duval
10047d2e3d added codec reset
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29189 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-13 20:21:18 +00:00
Jérôme Duval
24283c487c * use macros when possible
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29188 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-12 23:55:58 +00:00
Jérôme Duval
8f7c075428 * add set volume knob control
* display subsystem vendor and device id


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29184 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-11 20:43:40 +00:00
Jérôme Duval
fa9ec9b16b fix beeper widget on more codecs
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29175 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-09 22:31:10 +00:00
Jérôme Duval
9aa5a49e97 * actually allocates and frees geode_multi struct
* also detect NS version of the chip


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29174 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-09 21:03:31 +00:00
Ithamar R. Adema
a6809d0e5c Do not enable interrupts on codec status change, since we do not handle those. This fixes the lockup on the EeePC, and follows the description in the HDA specs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29172 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-09 16:42:04 +00:00
Michael Lotz
3119d7c601 * Correctly handle the phantom state. In this state we don't have any valid key
information and we must not overwrite the last valid buffer. Otherwise we
  generate spurious key ups when entering and spurious key downs when leaving
  the phantom state.
* Implement getting/setting of keyboard repeat delay and rate so they become
  settable by the keyboard preferences.
* Rework repeat handling a bit. With a large enough repeat delay (i.e. bigger
  than the report interval of the device) we would never get the timeout case
  and therefore never start repeating.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29154 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-07 23:09:00 +00:00
Michael Lotz
d0eaec3086 Fix more operator precedence errors. These do not do what you'd expect at first
sight. The comparison operator takes precedence over the binary ones.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29121 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-01 23:24:55 +00:00
Stephan Aßmus
04428553b1 Specify direction flag in all calls of simple_exec(). Thanks, Marcus!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29108 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-02-01 13:58:40 +00:00
Michael Lotz
3c33e2749f Don't exit early when encountering an empty slot in the report. There seem to
be keyboards that leave gaps. It's not really specified in the docs, they only
say that the ordering of keys is indetermined. So I guess intermixing empty
slots is equally valid.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29106 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-01-31 23:04:09 +00:00
Oliver Ruiz Dorantes
bf144dad1c Publish transport driver in transport subfolder in devfs
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29088 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-01-29 22:06:52 +00:00
Michael Lotz
569eafd85e Disable KDL enter key in usb_hid. It's not usable yet and hitting it by accident without a way back kinda sucks...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29000 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-01-23 23:23:30 +00:00
Jérôme Duval
65641d7f8d ok.. seems I mixed up NS device id and AMD vendor id.
Both devices are now checked for.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28979 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-01-21 21:02:15 +00:00
François Revol
f62e434974 Fix error signedness, 10l for Oliver!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28964 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-01-20 02:22:57 +00:00
Michael Lotz
236ecca7da Fix missing mutex_unlock() in case of opening an already removed device.
Spotted by Mika Lindqvist, thanks!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28957 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-01-19 17:35:56 +00:00
Michael Lotz
a8b0095433 Style cleanup. Please at least try to...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28953 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-01-19 12:33:59 +00:00
François Revol
9c2491ccc4 Implement B_GET_ICON_NAME to return "devices/drive-removable-media-usb" as it seems correct as per the FreeDesktop.org Icon Naming Specification we agreed to use for now, cf. http://standards.freedesktop.org/icon-naming-spec/icon-naming-spec-latest.html
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28949 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-01-19 02:19:27 +00:00
Michael Lotz
9cad6c3632 Add ioctl cases for B_GET_ICON, B_GET_ICON_NAME and B_GET_VECTOR_ICON. The first
won't be implemented, the second currently isn't and the third is. This gets
rid of the frequent "unhandled ioctl" messages when using USB drives and also
adds the nice pendrive icon to the mount list when using USB storage devices.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28948 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-01-19 01:58:05 +00:00
Jérôme Duval
d14a541795 added an experimental geode audio driver
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28940 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-01-18 21:09:59 +00:00
Michael Lotz
8311b012d1 * Fix a lock leak in the eject/load ioctls. It did return directly without
unlocking the device again, causing deadlocks after unmounting a USB mass
  storage device.
* Synchronize on close again, but this time with proper locking of the device.
* Restructured usb_disk_synchronize() a bit and updated comments.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28934 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-01-18 14:30:03 +00:00
Michael Lotz
b289baf147 * The close hook did trigger a synchronize without locking the device. This
could have messed up the state of other transfers currently running on that
  device. Since devices are regularly opened/closed for enumeration/scanning
  from different threads, this could've easily lead to bad situations. I've
  removed the sync completely as it's not our task to issue it and because
  a close doesn't always correspond with an unmount at all.
* Retry receiving the command status wrapper also when another error than a
  stall is returned. The specs aren't too specific, but the graphic suggests
  this is a general recovery path.
* Do a reset in case there is an error during data transfer to start the next
  command from a clean state.
* Make sure we never acknowledge more data than we actually transfered. This
  is to make sure devices that return broken residue values do not mess up our
  transfers.
* Detect a few more cases of invalid and non-meaningful command status wrappers.
* If the device explicitly tells us that the sync command isn't supported don't
  try it a few more times. Only retry at most five times if an unspecific error
  is returned that could also come from another (temporary) error case.
* Add a bit more trace output.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28930 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-01-18 01:34:22 +00:00
Jérôme Duval
6dec91b4e8 use uint32 as temp variable, noticed by Marcus. Thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28914 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-01-15 23:01:45 +00:00
Jérôme Duval
07fbbf9b6e build fix
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28911 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-01-15 20:37:10 +00:00
Jérôme Duval
391bf22d79 try to complete snooping enablement
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28906 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-01-14 23:26:10 +00:00
Axel Dörfler
a7cf5bfcf6 * Forgot some debug output in the driver...
* Took the opportunity and cleaned up coding style problems in that file.
  Clemens, I hope you're reading :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28905 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-01-14 21:32:21 +00:00
Axel Dörfler
40890e97b3 * Committed Clemens Zeidler's Intel speedstep driver. Thanks a lot, Clemens!
This is a very welcome addition.
* There are a few issues, and maybe questionable decisions (like the dependence
  on ACPI), but I see no reason why it shouldn't be added in its current form
  already.
* Unfortunately, I could not test it yet, though, as the CPU of my laptop is
  not supported; will see if I can find a supported hardware, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28903 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-01-14 21:08:37 +00:00
Axel Dörfler
2fd04ff545 * Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28900 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-01-14 14:19:43 +00:00
Jérôme Duval
7f2d1a266e * for user_memcpy, use an on-stack structure and copy that at once, as suggested by Axel.
* apply to auvia, emuxki and echo*.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28887 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-01-11 22:55:55 +00:00
Jérôme Duval
6c16c42586 * style fixes
* use user_memcpy in buffer exchange for Haiku


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28861 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-01-08 23:45:16 +00:00
Jérôme Duval
b8ea3ce774 * fixed Haiku version of B_MULTI_GET_DESCRIPTION
* use user_memcpy for Haiku in buffer exchange, with interrupts enabled


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28860 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-01-08 23:39:02 +00:00
Jérôme Duval
74010f9911 * reading CORB_READ_POS_RESET as zero fails on some chips (ie nForce).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28849 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-01-06 19:25:34 +00:00
Jérôme Duval
5ddb65f007 * added missing dprintf for errors
* fix a warning and zeroed the controller struct


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28846 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-01-03 22:40:26 +00:00
Jérôme Duval
c71a6614e2 * try to enable EAPD on capable pin widgets
* added a pin capabilities attribute instead of input and output pin attributes
* added ATI and nVidia vendor ids definitions
* uses "mic in" and "line in" when pin colors are undefined


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28839 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-01-01 17:13:43 +00:00
Jérôme Duval
321e633fa4 Patch from tqh, modified by myself: enable PCIe snooping through vendor specific registers (ATI and nVidia).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28838 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-01-01 14:58:10 +00:00
Jérôme Duval
49cdd09be6 added missing label
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28780 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-12-05 20:05:51 +00:00
Ithamar R. Adema
6de5686743 Add network driver for Atheros AR8121/AR8113/AR8114 controllers to the build. These are used in the EeePC 901 and later.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28771 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-12-03 20:10:48 +00:00
Ithamar R. Adema
4a3ec9b6a4 add the acpi_lid driver to the build system; not in the image yet though...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28764 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-12-02 23:43:50 +00:00
Jérôme Duval
2735ebaeb1 * merge current nfe driver from FreeBSD
* now uses the generated miidevs header


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28761 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-12-02 17:52:30 +00:00
Ithamar R. Adema
8e9ff38303 Update Attansic L2 driver with latest source from FreeBSD, it is now fully functional!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28752 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-30 18:16:19 +00:00
imker
aa0c1702d5 Remove dec21143. It is not yet ready. Sorry.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28748 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-28 21:31:13 +00:00
imker
64b633ee6c Added usb_asix ro build queue.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28747 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-28 21:26:33 +00:00
imker
69988fd576 Driver for USB-to-Ethernet Adapters by ASIX.
It supports AX88172/AX88772/AX88178 models and clones.  


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28746 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-28 21:22:26 +00:00
Oliver Ruiz Dorantes
ea40c3030b - Use CoreData module for posting events
- Fix type field for reporting devices id
- Snooze before panic for non contiguous buffers
- Debug output buffers



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28737 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-27 19:02:52 +00:00
Jérôme Duval
16578b340e reworked mixer controls list build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28724 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-23 20:47:57 +00:00
Jérôme Duval
ed17f94af7 revised outputs naming
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28721 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-22 20:09:27 +00:00
Jérôme Duval
b990fd9244 fixed mixer for realtek 888 codec
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28719 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-22 14:46:25 +00:00
Jérôme Duval
e11c40c4e2 applied patch from PieterPanman for broadcom570x network chipsets. Thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28712 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-21 23:43:14 +00:00
Jérôme Duval
311781dfcc * uses the default output stream on all audio outputs (and all output paths)
* enable trace to debug mixer controls build


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28699 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-19 23:14:54 +00:00
Jérôme Duval
0e1e3de535 correctly identify the beeper for AD1988 codecs
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28698 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-19 22:48:32 +00:00
Jérôme Duval
34bda3ae2d introduced a widget inside the audio function group to extract widget node attributes and reuse functions.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28697 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-19 20:24:47 +00:00
Axel Dörfler
578dac0cf3 * tty_select() did not check for ICANON and therefore notified the select
listeners immediately if there was already something in the queue. Factored
  out a tty_readable() out of tty_notify_if_available() that tty_select()
  now uses.
* This fixes bug #3148.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28687 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-18 21:07:18 +00:00
François Revol
54cea88338 Fix m68k build. Please always have a fallback case in arch dependant code!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28685 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-17 23:49:14 +00:00
Jérôme Duval
3fa33c82a4 * store vendor, revision, stepping, revision, minor, major in the codec struct
* check specific node ids for nodes declared as inputs which are really beepers
* when unmuting/setting amp on the input amplifier, iterate on each input instead of only the first one
* also unmute/set amp on the output and input amplifiers for the input and output paths, respectively


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28683 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-17 22:45:04 +00:00
Jérôme Duval
8c3da8dd2c added a mixer interface
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28677 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-16 23:41:14 +00:00
Ingo Weinhold
6730553ae0 * Already set tty::lock() in init_driver(). This makes it always safe to
be used.
* Added tty::ref_count. Each cookie keeps a reference. Only when a
  cookie is freed the reference is surrendered. A tty is considered used
  as long as it is still referenced. This allows to access a tty through
  the cookie, even if it already has been closed.
* Fixed tty_deselect(). It was keeping registered select events when
  called after the cookie has been closed. The referenced select_sync
  structure would become invalid and later attempts to send select
  notifications for the tty could crash. Fixes #3126.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28651 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-14 16:29:40 +00:00
Jérôme Duval
e35981a931 fix the build and added a dependency on brgphy
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28637 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-12 22:36:48 +00:00
Jérôme Duval
be1f32a73c * removed miidevs.h as it's now generated
* added brgphy.c it seems to be useful for bcm570x


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28636 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-12 22:21:13 +00:00
Jérôme Duval
d8d2506553 filled glue holes to have broadcom570x compiles, reusing part of patches posted on bug #1590. Obviously untested.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28604 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-11 13:31:28 +00:00
Jérôme Duval
11d2eeb7eb updated bge to current
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28602 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-11 12:20:21 +00:00
Jérôme Duval
08de01cdab Added Broadcom BCM440x from FreeBSD (bfe). Compiles and even works.
I just added a check in bmtphy_probe() as ENXIO is negative on Haiku.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28597 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-10 23:03:18 +00:00
Axel Dörfler
ca8c99dd8f * Renamed broadcom_bcm570x driver to broadcom570x.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28539 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-06 22:51:31 +00:00
Rudolf Cornelissen
2644e08b78 (re)enabled settings file just like it ac97, modified es1370_play_inth to be same as ac97 auich to remove stuttering sound.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28482 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-03 19:36:31 +00:00
Rudolf Cornelissen
9fb04b9066 added a few registerdefines for codec, added unmute mixer output. ES1370, SB PCI128 now produces sound on haiku over here.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28465 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-11-02 16:29:20 +00:00
Stephan Aßmus
a6b4486702 * Do not continue in the loop when encountering B_INTERRUPTED from
acquire_sem_etc(), but treat it as an error instead. This allows
  to kill device polling threads in the input_server and prevents
  a busy loop in the kernel then. Before the input_server was shutting
  down devices upon quit (happens only when restarting it), this
  busy loop could also be observed, since then polling threads would
  be quit on exit of the team.
* Supply B_INFINITE_TIMEOUT for the MouseDevice instead of 0. Does not
  change anything, but was probably not intended.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28407 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-31 17:31:21 +00:00
Stephan Aßmus
9d42ec70c9 Several problems prevented USB HIDs to be opened, closed and reopened:
* The first problem was introduced by myself, when I added deleting the
  transfer semaphore in HIDDevice::Close(). Obviously, I should (re)create it
  in Open() then, or it won't work another time. (Open() is now the only place
  where it's created.)
* The second problem was when transfers have already been scheduled the
  last time the device was open, but never triggered yet. We need to reset the
  fTransferUnprocessed flag, or we won't schedule another transfer but
  wait on the transfer semaphore anyways in Control(). I also added
  canceling the usb transfers with the stack in Close().
* The remaining problems were specific to the KeyboardDevice, the repeat
  key stuff needs to be reset in Open(). I also added unsetting the repeat
  key when the key release is detected, but this should have already worked,
  because the semaphore timeout was reset to B_INFINITE_TIMEOUT.

One can now "/system/servers/input_server -q" and everything will be back
in working order. There may be some remaining problems in the Wacom driver
which I have not yet looked at.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28368 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-29 21:23:19 +00:00
Rudolf Cornelissen
ddcb4e528c es1370 compiles on haiku now. no functional change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28356 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-28 18:23:46 +00:00
Stephan Aßmus
dab68c33ed * When a device closes, delete the transfer semaphore, so that threads blocking
on it are unblocked and get an error.
* Make fOpen volatile to prevent unwanted caching effects when checking it from
  different threads. (?)
* Check IsOpen() in the KeyboardDevice class in more acquire_sem_etc() return
  cases, analogous to the MouseDevice class.

I am still getting a problem when relaunching input_server with the input_server
add-on thread that ioctl()s on a USB keyboard fd, which should have never fired
because it's a fake device from a KVM. After the first input_server instance is
gone, this thread keeps on busy looping in acquire_sem_etc()->switch_sem() from
within the ioctl() of the KeyboardDevice usb_hid driver. Still on it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28350 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-27 16:52:39 +00:00
Axel Dörfler
887be5801a * Don't try to update the DMAResource in case there is no medium (also saves
a panic when ejecting a disc, since updating DMAResource isn't implemented
  yet...).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28348 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-27 16:00:43 +00:00
Rene Gollent
1ad73b3187 Always call Radeon_InitCP ; it explicitly checks if acc_dma is set and skips
parts of the init sequence if that's not the case anyways. This correctly
initializes the engine lock and a few other things, fixing the deadlock in
ticket #2893. This also seems to result in somewhat improved graphics
performance, at least on my X800.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28295 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-23 13:59:05 +00:00
François Revol
5b89d754a5 shut up complaining for something not even Linux supports.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28267 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-21 19:01:44 +00:00
Ingo Weinhold
628808166c mmlr: On some keyboards another keycode maps to backslash.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28129 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-15 12:43:40 +00:00
Oliver Ruiz Dorantes
2c6619e446 Styling and define module path outside the driver
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28105 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-14 20:28:22 +00:00
Stefano Ceccherini
adc7239906 also rename the device from 're' to 'rtl81xx'
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28070 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-14 07:32:46 +00:00
Jérôme Duval
11f2701ecf we load settings on open(), changes are taken into account on media_server restarts
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27982 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-11 21:54:43 +00:00
Jérôme Duval
c019da3ccf moved the check for settings like sample rate, buffer count, buffer frames in open()
changes on auich.settings are now taken into account when restarting media_server


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27972 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-11 15:31:15 +00:00
François Revol
de398d21ff Remove that cirrus driver I never really started on. QEMU is getting vmware graphics support anyway now.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27970 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-11 15:05:11 +00:00
Jérôme Duval
00acef29d6 take sample rate from settings into account
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27964 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-10 23:43:56 +00:00
Stefano Ceccherini
40bab56b8f renamed 're' driver to rtl81xx. I hope it's clear enough. If not, just shout. Also disabled the ids for cards already supported by the native rtl8169 driver
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27887 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-06 12:05:14 +00:00
Axel Dörfler
c1379d357b Update for the S3 driver by Gerald:
* The hardware cursor is now disabled at 640x480 with a Virge VX (before it
  was just invisible).
* EDID info can now be read for all S3 chips.
* For the Savage IX, Savage MX, and SuperSavage chips the display is no 
  longer expanded to fill a laptop LCD display when the mode resolution is 
  less than the size of LCD display.
* Savage IX, Savage MX, and SuperSavage chips will now display mode 
  1400x1050 on a 1400x1050 laptop LCD display.  Previously the display was 
  blank at that resolution. 
* Previously about half the Savage chips would not draw properly at 
  1400x1050.  That is, the image was badly skewed and unusable.  All of 
  them now draw properly at 1400x1050.
* Some code was reorganized to remove unnecessary and redundant code.  


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27863 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-04 08:09:40 +00:00
Stefano Ceccherini
bf732017df if_re freebsd driver, adapted for the build by Francesco Piccinini. It
supports many Realtek based NIC which our own driver doesn't support 
(for example the RTL8101E). Thanks! Not added to the image yet, since it 
causes some problems on my laptop (but could well be caused by the 
freebsd compat layer, or by the scheduler)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27843 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-10-03 05:57:35 +00:00
Ingo Weinhold
bba1a2b132 * Check for 0 capacity in the read(), write(), and io() hooks. In this
case the cd_driver_info::io_scheduler field is not initialized and we
  shouldn't try to access it. No idea why, but this only crashed with
  the gcc4 build.
* Fixed warning with tracing enabled.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27762 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-27 21:22:22 +00:00
François Revol
717326c223 Add missing api_version.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27740 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-25 13:18:22 +00:00
Axel Dörfler
08facac73e * Fix for a "error values are positive" assumption in the RTL-8139 driver.
This should enable internal MII PHY detection again, thanks to Siarzhuk for
  finding this!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27702 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-23 08:49:16 +00:00
Jérôme Duval
07d143d4be <malloc.h> is no standard header
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27589 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-16 21:28:32 +00:00
Michael Lotz
b57520d4a9 * Don't leak the decoded instructions in case the device object cannot be
allocated.
* Remove accidentally added debug device id.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27461 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-12 18:02:07 +00:00
Michael Lotz
0a28b4e324 CID 1261: The "previous" list entry wasn't maintained, causing lost list items
when removing a non-first element.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27458 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-12 17:17:29 +00:00
Michael Lotz
11b9aad7f7 * Use new(std::nothrow) everywhere (NULL checks were already there).
* Fix a warning if trace output is not enabled.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27456 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-12 17:00:28 +00:00
Ryan Leavengood
bf2c508181 Fixed CID 1289: if name cannot be strdup'ed, we should delete entry before
returning B_NO_MEMORY;


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27435 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-12 06:30:07 +00:00
Michael Lotz
89dda28052 * Extend the usb_raw interface by alternate interface aware getters for
interfaces, endpoints and generic descriptors.
* Add getter for active interface index and simplify the count operation as
  it isn't misused to also get interface descriptors anymore.
* Refactor out some common code into helper functions.
* Adapt the USBKit to the changed/new interface.
* Change how alternate interfaces are exposed by USBKit by providing normal
  BUSBInterface objects for alternate interfaces that can easily be examined
  and used.
* Make BUSBInterface class aware of its alternate index and use the alternate
  aware usb_raw functionallity to build the endpoint and descriptor lists.
* Add ActiveAlternateIndex() to find out what alternate is currently active.
* Style cleanup of the USBKit classes, use std::nothrow everywhere and check
  all allocations. Simplify some code by removing optimization where the benefit
  is questionable.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27409 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-10 21:52:32 +00:00
Rene Gollent
ea0316d305 Updated RTL8139 driver to 7.0-RELEASE version.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27401 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-10 15:17:56 +00:00
Rene Gollent
204737b832 Patch by Dustin Howett: Add i945GME to the supported devices list (caveat: no overlay).
Thanks!



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27365 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-08 02:45:14 +00:00
Jérôme Duval
f0a85f978d * I misunderstood what means 24 bits B_AUDIO_INT (more than 2 years ago!): as audio data is left justified in a 32 bits container, we don't care much and convert as usual
32 bits data
* Echo audio driver doesn't support 24 bits in a 32 bits container as proposed by the media kit. We just manage 24 bits as 32 bits samples.
* The main benefit of this change is that the hda driver is now working with 24 bits samples (and 192khz).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27362 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-07 16:36:10 +00:00
Jérôme Duval
c991159a1b added missing 20bit case
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27361 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-07 16:26:44 +00:00
Jérôme Duval
56ff2527e9 * on freeing, only remove the device when it is removed
* check if the device is still opened when waiting for data


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27310 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-03 19:18:42 +00:00
Ithamar R. Adema
ed64c85f06 Attansic L2 Fast Ethernet driver for Haiku. Port of FreeBSD driver from:
http://www.SpringDaemons.com/stas/if_ae-1214569185.tar.bz2
(This is the wired NIC on the Asus EEE PC!)
NOTE: It is not in the image because it currently still crashes, will look into that soon.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27290 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-09-02 22:19:45 +00:00
Ingo Weinhold
025f7c3289 A DMABuffer doesn't have a fixed bounce buffer assigned anymore. We do
dynamically assign one when needed. Under the assumption that in most
cases a bounce buffer isn't needed, we can thus prepare a lot more
operations.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27185 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-24 16:57:31 +00:00
François Revol
3cdf783e2b Start of a PC-style serial port driver. For now it's mostly just copied parts of usb_serial, not yet usable.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27111 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-21 15:03:14 +00:00
Axel Dörfler
8e390e5ea7 * Removed icon support from scsi_periph.
* Removed B_GET_ICON support from scsi_disk, and scsi_cd. This won't be
  necessary anymore soon.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27029 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-18 11:02:05 +00:00
Axel Dörfler
58f14b4cc7 * Changed scsi_disk/scsi_cd to return FreeDesktop.org compatible icon names,
see http://www.freedesktop.org/wiki/Specifications/icon-naming-spec for more
  info.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27008 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-17 17:17:36 +00:00
Axel Dörfler
06ba3f0acb * Added two new ways to retrieve an icon from a device:
- B_GET_ICON_NAME: returns the name of an icon. This will then be read from
    a predefined location on disk (not yet implemented). This would also allow
    to add specifiers like "-boot", or "-fat|bfs|ntfs|...", and have special
    icons for those.
  - B_GET_VECTOR_ICON: retrieves the vector icon of a device, if any.
* get_device_icon(BBitmap*, ...) now supports other color spaces than B_CMAP8.
* Added get_device_icon(), BPartition::GetIcon(), and BVolume::GetIcon()
  variants that can also retrieve the icon data directly (like
  BNodeInfo::GetIcon()).
* Reenabled the previous BPartition::GetIcon(), based on a patch by
  Justin O'Dell - this fixes #1391.
* Tracker's MountMenu class now uses B_RGBA32 icons, instead of B_CMAP8.
* Added vector icon to scsi_disk, and scsi_cd. The former doesn't have any
  special removable icon, though.
* Header cleanup, added/updated license, whitespace cleanup.
* Marked deprecated/obsolete driver ioctls in Drivers.h.
* Removed OpenBeOS namespace in the headers I touched that still had them.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27001 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-17 11:27:07 +00:00
Axel Dörfler
70e2d4ac43 * Replaced the B_BLOCK_DEVICE_* defines with B_DMA_* defines that better match
our dma_restrictions structure (but we're using blocks instead of bytes,
  since unlike the block size, the restrictions attributes are constant).
* We might want to use blocks for the dma_restrictions structure as well in
  the future...
* Fixed another bug in the device_node variant of DMAResource::Init(): the max
  segment size was specified in blocks as well.
* Removed the "hardcode" block_io module and header.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26973 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-14 15:08:16 +00:00
Axel Dörfler
61b1a536e8 * Fixed the mix of bufferCount vs. max_segment_count with regards to
B_BLOCK_DEVICE_MAX_SG_BLOCKS as pointed out by Ingo.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26972 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-14 14:28:20 +00:00
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