Commit Graph

76 Commits

Author SHA1 Message Date
David Reid
0c1eef852d Add pools to the build
Remove some duplicated build options
Comment out the beos section as it's not really of interest to people
not working on the modules/device code :)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@320 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-19 01:23:24 +00:00
David Reid
90bc2d5f53 Big change to the way that PCI works.
- make pci into a true module now.
- the pci module builds and keeps a linked list of devices it finds, with
  a filled in pci_info structure
- pci module detects (at runtime) whcih config mech to use, though to date
  only mech 1 is implemented
- pci module does sanity check and warns if it fails
- config manager loads pci module and calls get_nth_pci_info to iterate
  through the list printing details
- pci is no longer called directly from the bus init function

there is still lots to do and I've tried to make sure that there are plenty
of comments in the pci.c file. I've also left the previous code in
place until we move on a little further when it will be removed.

This has been working with no problems on my system and doesn't change
any functionality as we don't have any devices that need PCI in our build
yet.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@319 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-19 01:20:15 +00:00
David Reid
9843673aa8 Add the random_test app
Move the building of the test apps into this dir's Jamfile as it seems
to make more sense that way. I'll be removing them from the one in
kernel shortly.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@318 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-19 01:12:36 +00:00
Axel Dörfler
63c5cc0aa1 Removed the big hack called vnode_to_path(), and replaced it with the real
thing dir_vnode_to_path().
But beware, it's not yet working correctly - will fix it later, I have no
time anymore.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@315 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-18 21:06:02 +00:00
Axel Dörfler
5213b70b42 Fixed a warning I introduced earlier.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@313 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-18 20:42:52 +00:00
Axel Dörfler
4bb2d8915b Implemented geist's recent change to mutexes - they are now no longer
benaphores; benaphores aren't that beneficial in kernel land, the benaphores
are a way to reduce the number of kernel calls.
They can now only be released by the same thread who originally acquired it.

Included other changes geist (change 1499) did to a) fix some bugs, and
b) reflect the changes made to the mutexes.
Cleaned the files a bit up, all the commented dprintf()s in elf.c are now
deactivated through a macro.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@311 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-18 19:21:40 +00:00
Axel Dörfler
de8acfc621 Fixed the messed up indentation (8 spaces instead of tabs)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@309 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-18 15:03:13 +00:00
Axel Dörfler
eb0471173e The kernel will now call arch_cpu_idle() in its main loop.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@308 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-18 14:19:53 +00:00
Axel Dörfler
3d4008e5e4 Added the arch_cpu_idle() call to all platforms, though only x86 really
implements it yet (from freston).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@307 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-18 14:19:14 +00:00
lillo
92622c9c58 adding environmental variables support
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@305 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-18 14:07:56 +00:00
lillo
0ba337c0a4 adding environmental variables support
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@304 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-18 13:59:03 +00:00
Axel Dörfler
a4f9f99fb0 Incorporated freston's changes to the stage 2 boot process which mainly
"fixes" (at least changes :-)) the calculation of the processor speed.

Also included some of geist's earlier changes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@303 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-18 13:53:46 +00:00
Axel Dörfler
8bcee3b317 Added another subtle change from geist.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@302 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-18 13:31:55 +00:00
Philippe Houdoin
2c24125957 dbg_add_command() changed into BeOS compatible add_debugger_command().
remove_debugger_command() added.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@289 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-17 22:07:37 +00:00
Axel Dörfler
16ba498087 Applied change 1505 of the NewOS repository: added the -p option to makeflop
to be able to pad to the floppy block size.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@285 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-17 19:42:44 +00:00
David Reid
19111f404e Use the defined values from bootdir.h. This was part of an experiment to
increase the length of names we can use for adding things to the floopy,
but it didn't work. Still, these changes seem to make sense.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@284 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-17 19:37:28 +00:00
beveloper
08b993b215 remove use of unterminated strings
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@283 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-17 18:29:41 +00:00
David Reid
333119344a Another attempt to fix the module loading problem. I've also added
a load of comments explaining why it does the things it does.

In the get_module code we now correctly
call the init function, which was being missed before if we got
the module via search_module.

If people can test and confirm this works. It works here and has solved
all the issues I was trying to fix.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@276 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-17 16:08:53 +00:00
Ingo Weinhold
c551f3cdad Added alias floppy for $(OBOS_FLOPPY).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@275 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-17 13:29:58 +00:00
David Reid
b0bdff5216 Small fix to prevent a segfault.
Provide more info when a duplicate module name is detected during a scan.
Remove some code we no longer use.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@274 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-17 12:51:48 +00:00
David Reid
d2c1ff9a7d Few changes...
- add a lot of comments
- only lookup symbols as needed to keep the paths thru the function
  as small as possible
- add comments about the problems we have and give some idea about what
  needs fixing and what then needs removal from this file
- show the hooks pointer being passed to detect NULL pointers more
  quickly


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@272 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-17 12:10:38 +00:00
David Reid
fa10e022b1 Add some more comments.
Remove some debugging dprintf's we shouldn't need
The style police have paid a visit.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@271 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-17 12:06:58 +00:00
Axel Dörfler
cbe085bc5a Forgot some debug stuff...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@268 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-17 08:12:41 +00:00
Axel Dörfler
243d156e21 sys_seek() now returns the stream position as an off_t.
Minor bug fixes.
fd_close() now doesn't have to call remove_fd() anymore - it's now called
in user|sys_close(), fd_close() is now only called in the last put_fd().
Cleanup, improved debug output (without any warnings).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@266 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-17 07:55:51 +00:00
Axel Dörfler
b46f99148e sys_rstat() -> sys_read_stat()
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@265 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-17 07:52:08 +00:00
Philippe Houdoin
32ef543544 Run-time loaded versions of these keyboard and ps2mouse drivers are now
in 'keyboard' and 'ps2mouse' subdirectories of src/add-ons/kernel/drivers/arch/x86/,
making these old ones obsoletes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@253 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-16 19:28:20 +00:00
lillo
2b94bc7ba9 hopefully fixed the bochs debug issue
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@252 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-16 12:39:57 +00:00
Philippe Houdoin
a5da066045 We now don't forget to call drivers's init_driver() to init them completly.
Drivers who publish nothing are not keep loaded, too.
These are *hacks* until we have a real devfs dynamicly loading drivers...


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@251 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-16 07:54:56 +00:00
lillo
c4786ea6c4 Made bochs e9 hack switchable by configure
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@249 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-15 23:42:06 +00:00
Ingo Weinhold
4573543ca8 Removed third argument for SystemMain. Not longer needed.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@229 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-14 22:11:47 +00:00
lillo
8367bc2f55 small fix to make threads to return meaningful values on exit
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@218 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-14 13:34:00 +00:00
David Reid
82610abc62 Make some changes o the ISA nad PCI modules and add the start of a config
manager module. As time goes on we can start fleshing these out.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@217 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-14 10:36:32 +00:00
David Reid
7cf327ff5e ERR_NO_MEMORY -> ENOMEM
ERR_INVALID_ARGS -> EINVAL
CVSR_NOMEMO----------------------------------------------------------------


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@215 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-14 10:22:17 +00:00
David Reid
4b6ac4574c Remove the isa test case as it now works and maintaiing it was a waste of
time as we will have lots more cases to test with :)


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@214 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-14 10:17:26 +00:00
David Reid
f2c397eac9 ERR_NO_MEMORY -> ENOMEM
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@213 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-14 10:15:14 +00:00
David Reid
faf1362d13 Continue removing ERR_INVALID_ARGS in favour of EINVAL
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@212 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-14 10:14:29 +00:00
David Reid
dfc6d0bbbd Tidy up some error values we're passing. Essentially remove the ERR_SEM
errors, though these will need to be checked.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@211 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-14 10:10:22 +00:00
Axel Dörfler
16237a1692 The kernel will now be build again in the Jamfile (or was there a pressing
reason to disable it?)
Updated much code to reflect the changes in the VFS, including libc's open()
(you can now also create files using this function), and opendir().
Added the syscalls for sys_open_dir(), and sys_create_dir().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@210 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-14 05:18:21 +00:00
Axel Dörfler
3b120ea240 Updated the code to reflect the changes in the VFS.
Fixed some bugs in fd.c (how many more bugs can be in a small file like this? :-).
Added the syscalls for sys_open_dir(), and sys_create_dir().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@209 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-14 05:15:34 +00:00
Axel Dörfler
ea536d2ba4 Updated VFS, more POSIX like open/create, has now extra open_dir/create_dir
functions. sys_create() now returns an fd of the open file (some code in the
kernel shell already depend on this).
Moved the seek functions to fd.c.
Updated all internal file systems to a new and updated API.
vfs.c is not cleaned up well, but also has some bug fixes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@208 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-14 05:13:20 +00:00
David Reid
cdbcdb71d9 Marcus pointed this out! Thanks.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@176 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-13 00:55:02 +00:00
David Reid
d2ececb63c Modify the way that the drivers dir works. We now only build dev.c and
do everything from there. I'd liek to move this into the main kernel
once we figure out how to make the rest of our devices load at
run time without needing to have small headers to include their init
routines.

This is a step along the way, but at present the console modules
can't be loaded that way.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@174 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-12 23:52:01 +00:00
David Reid
1255f4f403 drivers.h is now Drivers.h
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@168 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-12 23:27:32 +00:00
David Reid
dcda4e36eb We no longer have any common drivers - they're now device drivers and found
in add-ons/kernel/drivers/common


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@161 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-12 20:50:49 +00:00
David Reid
fa81d8fc65 Digit isn't here anymore!
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@160 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-12 20:47:47 +00:00
David Reid
b1c8e50995 Renmove net stuff from the kernel.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@151 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-12 20:25:24 +00:00
David Reid
4ab9bc87a6 Add snooze!
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@150 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-12 20:24:28 +00:00
David Reid
100b0f973d Fix a couple of errors we no longer have (ain't regression wonderful)
Change to using device drivers for null, zero and digit
Small changes to the way we init devices.

NB the random driver has shown that devices are not being handled correctly,
   so this is something we'll ahve to live with until the vfs person fixes it.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@148 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-12 19:24:26 +00:00
beveloper
5667d23a37 fixed a bug
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@142 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-12 17:47:38 +00:00
David Reid
49dc88277f Remove sockettest as we're not doing sockets at the moment.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@135 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-07-12 14:55:28 +00:00