Commit Graph

21910 Commits

Author SHA1 Message Date
Jérôme Duval
c3948f5dd4 ipro1000 doesn't build on ppc
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23021 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-29 20:10:31 +00:00
Axel Dörfler
b7ac21f6cb * Updated the driver to the FreeBSD 7 version.
* Made it compile - not yet tested (but I do have the hardware).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23020 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-29 19:12:20 +00:00
Axel Dörfler
080b265acd Completely renovated the FreeBSD compatibility layer:
* Removed NETDEV() and DEVNET() macros and functionality.
* The exported devices are now attached to ifnet objects only, therefore, the
  ifnet object now has the receive queue, and everything else a device could
  need.
* There is now a root device where everything else is attached, it currently
  only holds the pci_info structure, so it's more or less a PCI child.
* This simplified the device handling a bit everywhere.
* We now attach drivers already in init_driver() - this is needed as drivers
  may publish more than one interface when being attached.
* Implemented device_delete_child(), device_attach() (which bus_generic_attach()
  now uses), device_is_attached(), and device_is_alive().
* Therefore, if_initname() does now the actual job of registering the devices.
* On open, if_init() is called which comes pretty close to what our open()
  is supposed to do.
* Updated ukphy.c to the one from FreeBSD 7 where used (we should probably
  move that into the compat layer, anyway).
* The MII driver array must now be NULL terminated; therefore you don't need
  to specify the count anymore.
* Moved PCI code from compat.c to bus.c.
* Moved the driver code from device.c to driver.c.
* Removed superfluous init_compat_layer() function.
* Fixed a few bugs, a few things weren't brought down correctly.
* The rtl8139 interrupt routine now checks if it really was the cause of the
  interrupt - this code is not tested, either, it may not work (which would
  then require a work-around like I did for the 3com driver).
* The HAIKU_PROTECT_INTR_REGISTER in the rtl8139 driver was pretty much useless
  which is why I removed it.
* Probably introduced a lot of new bugs, though - I haven't tested this code
  at all yet. It will probably just crash :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23019 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-29 18:56:03 +00:00
Stefano Ceccherini
423e822abe Only enlarge the menus if there's a submenu symbol (regression). Fixes
bug #1647.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23018 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-28 22:19:24 +00:00
Axel Dörfler
b26de2e398 Some additions from FreeBSD 7 code.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23017 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-28 22:16:55 +00:00
Axel Dörfler
78f45b048f Added e1000phy code to marvell_yukon driver. The driver is still not functional,
though - it's a bit more complex, and needs a better compatibility layer.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23016 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-28 22:13:48 +00:00
Stephan Aßmus
af65a961b9 * I don't know what's going on, but with this change, I can boot Haiku again
on my P35 with JMircon controller. I still have the "pci fixup" disabled
  though. Without this change, I could boot until the blue desktop background
  with cursor, but all the apps were in frozen state and would not display
  on screen (F12 worked and showed Tracker and so on as running teams, but
  I could not even move the mouse)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23015 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-28 18:38:34 +00:00
Axel Dörfler
6b09666034 The compatibility layer was calling if_init() too early, I've now moved it to the compat_open()
function.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23014 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-28 17:00:33 +00:00
Axel Dörfler
8fce87ae34 * device_add_child() now also works for sub-drivers, needed by the marvell_yukon driver.
* The device path is currently inherited from its parent which might be revised later on (nameunit
  is not y


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23013 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-28 16:59:35 +00:00
Axel Dörfler
1ab7a518e9 Added fallback MII to the marvell_yukon driver.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23012 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-28 16:50:48 +00:00
Axel Dörfler
6244441ad4 * Made the debugger command "team_images" a bit more useful: it now accepts a
team ID argument, instead of only being able to dump the images of the current
  team.
* The debugger commands are now now also built-in without the DEBUG flag set
  (for now).
* _get_next_image_info() now also supports the B_SYSTEM_TEAM constant.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23011 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-28 11:56:06 +00:00
Ingo Weinhold
78fc510a76 The behavior of pthread_getspecific() when called with an invalid key is
undefined as per Open Group Base Specs. Commented out the code block. It
doesn't do what the preceding comment suggests anyway. In fact the whole
test doesn't quite do what the comment in the header promises.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23010 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-28 00:14:41 +00:00
Ingo Weinhold
92ab20b3a4 Added a list of death_entry's to the teams structure. It stores the
exit status of (non-main) threads of a team. Fixes bug #1644.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23009 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-28 00:07:32 +00:00
François Revol
d61a403741 Fix build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23008 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-27 22:32:31 +00:00
Axel Dörfler
7f30afa46c * Renamed old ipro1000 driver to beos_ipro1000, as it's still valuable for BeOS R5
and later (should be moved somewhere else, though).
* Renamed FreeBSD's Intel PRO 1000 driver (known as "em" in BSD) to ipro1000 which
  also puts it on the image, instead of the old one.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23007 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-27 16:38:20 +00:00
Axel Dörfler
5845b6ecc5 * The boot loader now remembers the bytes per row as told by the graphics card, and
passes that information on to the kernel. This should fix wrong bytes per row with
  certain resolutions and graphics cards.
* The boot loader now recognizes 15 bit modes that are advertised as 16 bit modes.
  This should fix wrong colors in 16 bit modes on some cards.
* Reenabled setting MTRR for VESA mode - don't remember why I disabled it, but it
  works fine on my test machines.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23006 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-27 16:33:19 +00:00
Ingo Weinhold
18007c8e32 The pthread_*() functions don't set errno, but return the error code
directly. Hence perror() doesn't print anything useful.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23005 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-27 15:29:47 +00:00
Ingo Weinhold
c63bdde05e Correctly return errors.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23004 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-27 15:27:52 +00:00
Axel Dörfler
3ae3b04bce * The boot loader (bios_ia32 only) now duplicates everything that goes to the
serial output, and puts it into the new kernel_args::debug_output field.
* syslog_init() will now check if there is anything in kernel_args::debug_output
  and will put that into the syslog buffer.
* dump_block() now also prints an offset.
* Fixed warning in mmu.cpp.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23003 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-27 12:59:34 +00:00
Ingo Weinhold
04f08f4f65 Patch by Vasilis Kaoutsis:
* Added pthreads posix test suite tests to run script and image.
* Improved output for said tests.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23002 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-26 23:25:59 +00:00
Axel Dörfler
da744139fa Fixed setting up an interrupt using the new filter method: INTR_FAST doesn't
have to be set in this case.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23001 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-26 21:47:22 +00:00
Axel Dörfler
d0007186e5 The fs_shell cache implementation had the same problem as our real cache
until r22998 - but since this was the only implementation, its consequences
were much more likely.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23000 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-26 16:02:10 +00:00
Axel Dörfler
bade8d7b70 The MediaAddonServer destructor was never called, thanks Stippi!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22999 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-26 14:29:55 +00:00
Axel Dörfler
9ff70e7468 read_from_file() and write_to_file() did not take the pageOffset into account.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22998 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-26 13:38:32 +00:00
Axel Dörfler
3891a797aa * Now checks if the media_server is running in ReadyToRun(), and quits itself
if not. This fixes bug #323.
* Now uses find_directory() instead of hard-coded add-on paths.
* A few more error checks.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22997 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-26 12:22:53 +00:00
François Revol
01d9afe0d9 Add OpenSound media node to the image, as the one included in the opensound zip is built with gcc2 and won't load with gcc4 builds.
Hope having both doesn't do nasty things on gcc2 builds.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22996 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-25 18:15:43 +00:00
François Revol
2318ec87fd gcc4 fix
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22995 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-25 17:48:46 +00:00
Oliver Ruiz Dorantes
15bf869553 Remove fetched item in the recycle list
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22994 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-25 16:48:20 +00:00
Axel Dörfler
8b4ee93be6 Build fix; fbsd_ether.c did not compile anymore (but was not recompiled since
the wrong header was included).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22993 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-25 12:11:36 +00:00
Axel Dörfler
ecbcc47480 Added FreeBSD 7 driver for the Marvell Yukon chips. Compiles, but is otherwise
completely untested yet.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22992 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-25 11:31:51 +00:00
Axel Dörfler
239239c8a0 * Updated the FreeBSD compatibility layer for network drivers to FreeBSD 7
(RELENG_7_BP).
* There are many white spots, though, most notable PCI MSI(-X) support, and
  jumbo frames.
* Fixed removing interrupts for the INTR_FAST case. Since FreeBSD 7 added
  a new interrupt "filter" mechanism, we can finally report if the interface
  was handled by a device or not (though only very few devices support this
  yet).
* Updated the 3com, rtl8139, e1000, and via_rhine drivers to the latest code
  base. They all compile, but I haven't tested them after the changes yet!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22991 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-25 11:29:29 +00:00
Axel Dörfler
3721f6df39 Minor update; even though the TODO file isn't that long anymore, it doesn't
hurt to have it in the repository.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22990 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-24 15:43:46 +00:00
Axel Dörfler
b304ba4bef Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22989 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-24 15:38:05 +00:00
Axel Dörfler
96bc573e6e Include <be_apps/Tracker/Background.h> specifically, instead of adding the
header directory.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22988 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-24 15:35:07 +00:00
Axel Dörfler
3b54b5c49e * Renamed "Store Current" to "Snapshot Current", and "Restore Saved" to
"Restore Snapshot".
* Implemented a simple undo/redo.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22987 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-24 14:36:13 +00:00
Marcus Overhagen
91b75ef2fd gcc4 build fix
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22986 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-24 11:20:38 +00:00
Salvatore Benedetto
187574cf69 * Small clean up
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22985 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-23 14:01:17 +00:00
Axel Dörfler
684f9b91a8 * Now reports a proper error when the attribute file is empty (instead of just
printing the usage info).
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22984 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-23 13:45:05 +00:00
Salvatore Benedetto
30cb1cfbb6 * Added SetAltInterface method which allows to set an alternate interface for the device
* Added InitEndpoint and ClearEndpoint to avoid code duplication
* Usual clean up


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22983 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-23 12:55:59 +00:00
Salvatore Benedetto
c62d18ceff * Removed #ifndef HAIKU_TARGET_PLATFORM_HAIKU in InitKernelAccess and PreparKernelAccess as it made those fuctions useless in HAIKU, and those
functions are needed to pass data back to the user space buffer.
* Fixed Jamfile


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22982 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-23 12:19:49 +00:00
Salvatore Benedetto
e1070961a3 * Added some checks on parameters passed
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22981 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-23 12:01:43 +00:00
Salvatore Benedetto
6dfeac892b * Fixed init part of the controller
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22980 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-22 23:25:37 +00:00
Stefano Ceccherini
3177ae7785 small cleanup at the code I looked at
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22979 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-22 13:05:06 +00:00
Stefano Ceccherini
cb752f1822 xdiff -> xDiff, useHorz -> useHorizontal...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22978 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-22 10:56:27 +00:00
Stefano Ceccherini
c9dcf7979b BTextView::_ScrollToOffset() just didn't work correctly most of the
times, since xdiff and ydiff didn't take the point returned by 
PointAt() into account. Thanks to Andrea Anzani for noticing this.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22977 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-22 10:53:53 +00:00
Michael Lotz
e4ef0f13b7 Since the interval is now part of the general pipe info we don't have to cast the pipe to an interrupt one anymore.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22976 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-22 05:35:13 +00:00
Ingo Weinhold
ff7cf84b89 In case of writing a partial block, the complete block is first read
into a buffer. The size of the S/G list for that buffer is now
temporarily set to the block size for the read request. This works
around the problem that the IDE bus manager would erroneously request
DMA for the complete buffer (32 KB), but issue a read request only for
one block, thus, after a few timeouts and bus resets, needing to resort
to PIO mode. Fixes bugs #985 and #1176.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22975 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-22 00:40:40 +00:00
François Revol
7579aad575 Fix extra token at end of #endif
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22974 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-21 22:57:33 +00:00
Michael Lotz
10b0646422 Implemented split transactions for control and bulk pipes in EHCI.
With this it is possible to use low/fullspeed (USB 1.1) devices below USB 2.0 Hubs.
Note though that you cannot yet use mice or keyboards attached to USB 2.0 Hubs as split transactions for interrupt pipes are still missing.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22973 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-21 19:21:21 +00:00
Michael Lotz
072c28ded5 * Redesign the Pipe constructor to only take the parent object
* All other init is done in InitCommon() which only needs to be present in the base class
* Adding the hub port a device is attached to to the Device class
* Add hub port and hub address to the Pipe class (will be used for split transactions in EHCI)
* Update the root hubs to reflect the changes to hub creation

Sadly we need pipes that do not belong to devices (default pipe for addressing and to get initial device descriptor). Therefore we cannot resolve hub address and port from the parent device.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22972 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-11-21 19:15:16 +00:00