Commit Graph

119 Commits

Author SHA1 Message Date
Philippe Houdoin
59e1220c9b Now building, sorry, will build the net stack driver addon as "net_stack_driver"
instead of the too shorter "stack", which incidently fix a target dependency issue
with the STL stack header.
Wait. No. It's the reverse! :-)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1063 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-16 19:55:54 +00:00
Axel Dörfler
6829a19b3f Now bfs_write() also don't trigger any notifications during write access
on uncached files (might be needed for the VM file).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1062 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-16 16:09:36 +00:00
Axel Dörfler
a00ac4bc29 bfs_write() called Volume::WriteCachedBlocksIfNecessary() also on uncached
files which might cause troubles with the VM file.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1061 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-16 16:06:22 +00:00
Axel Dörfler
d801dfdd1c Added CachedBlock::BlockSize(), and CachedBlock::BlockShift() methods as
suggested by Mike Nordell.
Some code cleanups, added a comment in Inode::SetFileSize() to point out
that Stream<Cache>::WriteAt() denies growing the file size its own.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1060 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-16 16:03:05 +00:00
Axel Dörfler
850b731e4d Some small cleanups.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1059 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-16 15:13:54 +00:00
Axel Dörfler
fb34ad79d7 Added a missing check of the return value of a cached write in
Inode::FillGapWithZeros(), pointed out by Mike Nordell.
Note, that function is currently not used.
Some smaller cleanups.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1058 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-16 15:13:23 +00:00
Axel Dörfler
502d10e3ff Mike Nordell pointed me to the fact that BufferPool::ReleaseBuffers() didn't
free anything if it couldn't acquire the semaphore.
That allowed me to get aware of a possible bug in the destructor :-)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1057 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-16 15:07:36 +00:00
Ingo Weinhold
35c2a0d5f7 Commented out subdir stack, as it currently doesn't build anyway.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1046 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-15 20:58:51 +00:00
Axel Dörfler
b8cb2cade8 B_CUR_FS_API_VERSION must be 2 on R5; so you need to build it on Dano if
you want to use it for booting Dano.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1030 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-14 01:10:33 +00:00
Axel Dörfler
ccc09203a5 Added power management functions to support Dano (needed to boot Dano using
our file system):
- added bfs_wake_vnode(), and bfs_suspend_vnode()
- bumped B_CUR_FS_API_VERSION to 3 as needed for Dano

It should now be able to boot Dano with our BFS, although I haven't tested
it. The information was gained using some degree of reverse engineering...
It won't be part of the BFS implementation for OpenBeOS (that won't run on R5
anymore) :-)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1010 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-11 01:03:35 +00:00
Axel Dörfler
f1e38490eb If debugging is disabled and the "release build" of BFS is done, optimization
is no only "-O1", since gcc obviously produces bad code if compiled with more.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@996 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-08 17:08:45 +00:00
Axel Dörfler
a130fd5520 Inode::SetFileSize() now doesn't allow changing the file size of uncached
files anymore (only Inode::WriteAt() denied it before).
Introduced a BFS_NAME define to be able to switch easier between "obfs",
and "bfs".
bfs_write_stat() didn't return the error code if Inode::SetFileSize() failed;
instead, it always reported success.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@995 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-08 15:25:23 +00:00
Philippe Houdoin
085d0da283 Remove the misplaced current/src/add-ons/net/Jamfile and add the missing
current/src/add-ons/kernel/drivers/net/Jamfile so the network stack driver
will access to build party.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@992 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-07 23:21:28 +00:00
Axel Dörfler
b98d9a335a Fixed two bugs in the block allocator:
- the maximum number of blocks a block_run can cover is 65535 not 65536
- allocations over a block boundary in the block bitmap always failed due
  to a incorrectly handled status

Both bugs could prevent BFS to create the VM swap file which led BeOS to
stop booting under certain circumstances.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@989 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-07 02:44:42 +00:00
beveloper
90abd04b34 Change int into status_t, and other changes for better BeOS type compatiblitly.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@975 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-03 02:19:22 +00:00
Axel Dörfler
35931182a2 Finally implemented growing in the double indirect range.
Tested, and works - we are now feature complete (and now for the bugs... :-)).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@974 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-03 02:10:34 +00:00
beveloper
f817f7d9ac convert int into status_t
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@971 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-03 01:28:31 +00:00
beveloper
5813c3dff5 correct a few names.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@957 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-02 14:37:38 +00:00
beveloper
0170038a31 better codec detection and allow codec specific functions
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@950 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-09-01 21:23:57 +00:00
Philippe Houdoin
0e29915606 Ooops, forgot these initial network kernel stack protocoles modules Jamfiles...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@935 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-29 08:08:58 +00:00
Philippe Houdoin
5de6083d95 Network stack kernel modules moved to /current tree.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@934 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-29 08:07:10 +00:00
Philippe Houdoin
c374d17e22 Changes in the network kernel modules source tree: removing misnamed and/or misplaced
old one.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@933 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-29 07:36:01 +00:00
Philippe Houdoin
c5b60ec4fd The network stack "kernel" modules was previously misplaced under the
misnamed /current/src/add-ons/net directory.
Should be into /current/src/add-ons/kernel/network, as they are *kernel* modules add-ons
and as they all share the "network/" prefix in their respective module names.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@932 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-29 07:23:59 +00:00
Philippe Houdoin
0fce772df1 Moving the network stack driver (/dev/net/stack) from old /net_kit/source/driver/
to /current repository


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@894 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-27 07:34:55 +00:00
beveloper
fd93cc35b3 reverted the latest change
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@888 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-26 14:49:16 +00:00
beveloper
32ffa52615 This solve some problems where the driver seemed to work, but you couldn't
hear any sound. Looks like certain chipsets use the optional aux output,
instead of line out


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@887 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-26 14:48:24 +00:00
Axel Dörfler
2d38e3f603 The beginning of letting a stream grow into the double indirect range.
Not yet finished, nor tested, but almost complete :)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@849 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-21 15:52:21 +00:00
Axel Dörfler
bc62229fce Volume::Free(), and BlockAllocator::Free() now pass the block_run by value
rather than by reference.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@848 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-21 15:51:03 +00:00
Axel Dörfler
ba04be1db0 Fixed the dirent.d_reclen calculation - define KEEP_WRONG_DIRENT_RECLEN to
enable the old and compatible behaviour (on BeOS R5, all available file
systems seem to do that wrong).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@826 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-19 13:31:04 +00:00
beveloper
33d6854bee changed codec detection and special ICH4 handling
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@793 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-17 19:59:33 +00:00
beveloper
15ea765d53 Change debugging routines, add more ICH4 support, add tertiary codec support.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@769 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-15 21:33:17 +00:00
beveloper
6c3c3848cc This should fix problems with ICH4 chipsets.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@768 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-15 13:54:21 +00:00
Axel Dörfler
ba5530fdc9 Now only "jam install" triggers the installation of bfs (in this directory only).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@756 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-13 22:50:45 +00:00
Axel Dörfler
8a1faae799 Fixed the build process of bfs; -g and -O2 don't mix well together...
To enable debug output, type:
$ DEBUG=1 jam
Also, it's now automatically installed in /boot/home/config/add-ons/kernel/file_systems


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@751 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-13 22:10:06 +00:00
Axel Dörfler
ae38c6e93d Fixed a bug that could lead to the wrong last_modified time in an inode;
bfs_close() updated the last_modified time & index, but it didn't write
the inode back to disk.
Furthermore, bfs_write() should have already updated the last_modified
time, not bfs_close.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@725 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-12 21:49:03 +00:00
Axel Dörfler
e238bce6f5 BufferPool::ReleaseBuffers() didn't set fFirstFree correctly.
Setting uncached access to a file no longer returns an error (if it succeeds).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@716 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-12 16:55:12 +00:00
Axel Dörfler
ee77e6d68f Implemented uncached access for files (untested though).
Uses a template class to provide generic access to the file.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@715 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-12 16:29:46 +00:00
Axel Dörfler
6a2e071075 Fixed compilation (stupid me :-).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@709 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-11 21:41:12 +00:00
Axel Dörfler
beddff0f56 Replaced opendir.c with directory.c, implemented chdir(), fchdir(), and
getcwd().
Introduced new xyz(int fd, char *path, ...) style of functions for
sys_setcwd(), and sys_write_stat().
Added missing sys_fstat(). Removed duplicated prototypes in syscalls.h
Fixed some minor bugs.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@669 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-09 20:20:28 +00:00
Axel Dörfler
533bfa8744 Updated Jamfile to compile "bfs" rather than "befs"
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@644 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-08 01:34:27 +00:00
Axel Dörfler
40f7fd6cf3 Implemented the basics to allow uncached file access under BeOS.
This is needed for the VM swap file and if you want to mount disk images
located on the BFS volume.
There is now a BufferPool class that manages a pool of buffers, so that
Inode::ReadAt()/Inode::WriteAt() can access a file without having to use
the cache or malloc()/free().
The real uncached file access is not yet implemented, though.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@643 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-08 01:23:04 +00:00
Axel Dörfler
e57d105cfe Moved the befs/ directory and contents to bfs/ (hey, this is not linux :-).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@642 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-07 23:25:01 +00:00
Axel Dörfler
c42ee13401 Initial revision
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@639 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-07 23:14:13 +00:00
Axel Dörfler
f7bfd5f065 The '|' character didn't work (fixed by geist).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@594 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-05 07:09:37 +00:00
beveloper
08d3f7d47c Add user friendly debugging, and enable an external amplifier.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@525 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-28 22:16:23 +00:00
beveloper
01f8c701b9 removed volatile statements that should not be used with functions
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@364 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-21 10:56:08 +00:00
beveloper
2d3138349f Installing an interrupt handler in init_hardware() without
removing it is bad. Other small changes, too.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@358 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-21 00:41:56 +00:00
David Reid
bcfd132286 Change to the way that interrupts are called. These now are the correct
calls for the recent changes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@349 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-19 18:36:14 +00:00
David Reid
161de6e63c Add the ps2mouse.h header next to the code it deals with. It's not used
anywhere else...


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@346 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-19 18:27:48 +00:00
David Reid
fd2ee3a598 Change to the interrupt handler return values.
Also, the style police have visited ps2mouse.c


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@338 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-19 16:02:58 +00:00
Tyler Dauwalder
2de17bd3e8 Ooops :-)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@293 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-18 01:09:06 +00:00
Tyler Dauwalder
aad997bd6c Finished migrating Storage Kit tests to new framework.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@292 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-18 01:03:19 +00:00
David Reid
1a615d2c90 Some tidy up for the drivers we now include and load.
- add api_version to keyboard and ps2mouse
- remove some excessive debugging comments from random
- add back the last 2 NULL's for the device_hooks structure now we
  actaully define them (iovec's are now available)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@273 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-17 12:13:24 +00:00
Ingo Weinhold
921de64350 Use R5KernelAddon instead of Addon.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@248 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-15 17:13:41 +00:00
Ingo Weinhold
58efc9d865 Renamed KernelAddon to R5KernelAddon to avoid confusion.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@224 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-14 17:31:49 +00:00
Ingo Weinhold
ca7ccc86cd Added compiling defines and debug flag. Now KernelAddon is used instead of Addon.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@223 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-14 16:40:01 +00:00
David Reid
fdb1688888 OK, add the new files this time! CVS is behaving strangely for me at the
moment :(


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@173 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-12 23:49:47 +00:00
David Reid
2bf4a34fc2 Add the keyboard and ps2mouse driver here as dveice drivers instead of having
them statically linked.
Adjust some of the headers for the Drivers change.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@172 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-12 23:49:04 +00:00
David Reid
2dcaf9a76a This may not be liked by some, but we do have archictecture dependancies on
some of our device drivers, and this should help keep them nicely
isolated from each other.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@171 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-12 23:46:20 +00:00
David Reid
fb8aa06112 Add a random/urandom driver (NB not yet working)
Add ibuild rules for Marcus's AC97 driver to the openbeos build, ithat
will allow it to be built for OpenBeOS. At present they don't work
due to missing headers, but aftre a succesful build this can be
uncommented and it will build and OpenBeOS will try to laod it.
This will provide a nice test case
as Marcus has provided the source! Thanks.
Added the null, zero & digit drivers here and they will be removed from
kernel/drivers

NB this has shown that drivers are not being handled correctly by
devfs. I would have tried to look at it but as it falls under the remit
of vfs I won't touch it.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@147 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-12 19:19:30 +00:00
Ingo Weinhold
673398074f Added creation of a symlink from the driver bin dir to the "real" dir.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@144 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-12 18:48:28 +00:00
beveloper
9bd6befeb5 the publish_devices export in Drivers.h needs to be fixed, too.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@140 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-12 16:06:43 +00:00
beveloper
dc03e28f18 removed warnigs, spelling errors, added prototypes
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@139 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-12 15:48:55 +00:00
beveloper
a967837dbf adding the ICH AC97 audio driver into the build
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@109 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-12 00:42:06 +00:00
beveloper
7e38b69c49 fix compiler warnings
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@108 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-12 00:39:37 +00:00
beveloper
af9bf37038 BeOS Sound Driver for Intel ICH AC'97 Link interface
Inital checkin of version 1.0, as published on BeBits.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@70 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-11 00:12:08 +00:00
Ingo Weinhold
1c2a7bcee4 Regardless of whether or not the dir is renamed to bfs, here is a Jamfile. It doesn't compile on my machine, but I remember having heard something about a Be header file missing a declaration.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@55 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-10 20:31:53 +00:00
ejakowatz
5f281ed502 Well, I couldn't go to bed without making *something* build ... ;)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-09 13:40:32 +00:00
ejakowatz
52a3801208 It is accomplished ...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-09 12:24:59 +00:00