#
a23ac85f |
|
19-Mar-2023 |
X512 <danger_mail@list.ru> |
bus_managers/pci: split PCI controller to separate add-on busses/pci/x86: add Other add-ons are in following commits. Change-Id: I7a77bfaef0e8995917b4b54c8369d7075533ec26 Reviewed-on: https://review.haiku-os.org/c/haiku/+/6220 Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org> Reviewed-by: waddlesplash <waddlesplash@gmail.com>
|
#
97b7c771 |
|
19-Mar-2023 |
X512 <danger_mail@list.ru> |
bus_managers/pci: move MSI handling to generic code Change-Id: I6194838b7b46222f720fc328bb4512fdb88a9c8a Reviewed-on: https://review.haiku-os.org/c/haiku/+/6222 Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
|
#
e942269a |
|
12-Dec-2022 |
X512 <danger_mail@list.ru> |
pci: generic MSI interrupts support Change-Id: Ib4fd23f6bca867a2b428bf2651234d719ee08672 Reviewed-on: https://review.haiku-os.org/c/haiku/+/6221 Reviewed-by: waddlesplash <waddlesplash@gmail.com> Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
|
#
c4eec9f1 |
|
01-Oct-2021 |
Augustin Cavalier <waddlesplash@gmail.com> |
Distinguish KERNEL_ARCH_DIR from KERNEL_ARCH. On x86_64, the KERNEL_ARCH should really be "x86_64", but it was "x86" as the architecture sources/headers directory is shared between 32 and 64 bit. Should not be a functional change on any platform outside x86_64.
|
#
b0944c78 |
|
01-Aug-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
More work towards hybrid support * All packaging architecture dependent variables do now have a respective suffix and are set up for each configured packaging architecture, save for the kernel and boot loader variables, which are still only set up for the primary architecture. For convenience TARGET_PACKAGING_ARCH, TARGET_ARCH, TARGET_LIBSUPC++, and TARGET_LIBSTDC++ are set to the respective values for the primary packaging architecture by default. * Introduce a set of MultiArch* rules to help with building targets for multiple packaging architectures. Generally the respective targets are (additionally) gristed with the packaging architecture. For libraries the additional grist is usually omitted for the primary architecture (e.g. libroot.so and <x86>libroot.so for x86_gcc2/x86 hybrid), so that Jamfiles for targets built only for the primary architecture don't need to be changed. * Add multi-arch build support for all targets needed for the stage 1 cross devel package as well as for libbe (untested).
|
#
12bd7812 |
|
19-Jul-2012 |
Alex Smith <alex@alex-smith.me.uk> |
Ported PCI module to x86_64. Uses the x86 architecture code, made fixes to printf formats and a couple of 64-bit fixes. Only potentially intrusive change is that I've changed PCI.h to use uint32 rather than ulong. I don't see any way this would cause any issues, though.
|
#
2548ea21 |
|
13-Apr-2010 |
Michael Lotz <mmlr@mlotz.ch> |
* Add the framework for adding an arch specific module to the PCI bus_manager. * Implement such a module for x86 which currently exports only an MSI API. * Implement the PCI part for configuring and enabling MSIs. * Some automatic whitespace cleanup. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36223 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
16e27556 |
|
18-Oct-2009 |
Stephan Aßmus <superstippi@gmx.de> |
I didn't realize the generated headers are re-used elsewhere and located like that. But I didn't think of any better solution either... Hopefully these are all, but I will find out once I built a complete image. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33641 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
69dddbde |
|
18-Jul-2008 |
Michael Lotz <mmlr@mlotz.ch> |
Initial work towards supporting IO APICs. This cannot work for PCI interrupts though until we use ACPI for proper PCI IRQ routing through the IO APIC. Therefore the IO APIC code path is not yet enabled and the IO APIC isn't used. ISA interrupts would work though, as would PCI interrupts if you'd hardcode them for your specific configuration. Note that this change also modifies some parts in the bootloader and in the PIC setup to make local APICs available even on non-SMP systems. This causes APIC timers to be used instead the normal PIT if it is available (also on non-SMP configurations). Also fixes some general errors in SMP and PIC code as well as some code cleanup. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26492 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
368167ed |
|
26-May-2008 |
Axel Dörfler <axeld@pinc-software.de> |
* Integration of the new driver architecture. * Moved devfs from fs/ to device_manager/, and separated the legacy driver support from it. * Removed fast_log module. * There are a couple of (temporary) regressions, though: - legacy SATA and ISA IDE support is disabled, the drivers haven't been ported yet. - The not yet used ATA bus manager hasn't been ported yet, either. - AHCI changes have not been tested. - the listdev command has been removed from the build (as it currently doesn't work anymore). - device manager generated IDs currently are not freed anymore when a device node is removed. - generic drivers can't yet use the new driver architecture. - simple busses that do not support device types won't work yet. - legacy driver publishing/unpublishing (ie. what USB needs) has not been tested, and may be broken. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25662 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
65621982 |
|
10-Nov-2007 |
Marcus Overhagen <marcusoverhagen@gmail.com> |
New PCI quirk/fixup support. The Jmicron AHCI controller has a mode that combines IDE and AHCI functionality into a single PCI device at function 0. This happens when the controller is set in the BIOS to "basic" or "IDE" mode (but not in "RAID" or "AHCI" mode). To avoid needing two drivers to handle a single PCI device, we switch to the multifunction (split device) AHCI mode. This will set PCI device at function 0 to AHCI, and PCI device at function 1 to IDE controller. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22868 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
91b1b84a |
|
13-Nov-2006 |
Jérôme Duval <korli@users.berlios.de> |
factorized pcihdr.h search code git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19273 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
c49e0c68 |
|
18-Sep-2006 |
Jérôme Duval <korli@users.berlios.de> |
dropped a useless arg of the KernelAddon rule, hope I don't mess anything git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18879 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
6f896d56 |
|
25-Jan-2006 |
Jérôme Duval <korli@users.berlios.de> |
updated header search oops we removed useful fields in pcihdr.h ... sorry for breaking the build git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16084 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
338b8dc3 |
|
29-Oct-2005 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Merged changes from branch build_system_redesign at revision 14573. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14574 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
a10cf76e |
|
24-Jun-2005 |
Axel Dörfler <axeld@pinc-software.de> |
Renamed src/prefs to "preferences", as the directory is usually called in BeOS. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13263 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
6094d89f |
|
11-May-2005 |
Axel Dörfler <axeld@pinc-software.de> |
Merged branches/developer/axeld/driver_recognition changed r12307:12637 into trunk. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12638 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
900849fa |
|
13-Apr-2005 |
Axel Dörfler <axeld@pinc-software.de> |
Since objects/.../system/kernel is now a directory, the kernel target is now called kernel_${arch} like on disk. A "jam kernel" will still work, though. Also updated all those Jamfiles I forgot to update before. Since makehdimage now runs through (and even builds a working image), I guess most of the consequences of the "kernel/core" -> "system/kernel" rename task are solved. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12364 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
7c49936a |
|
15-Feb-2005 |
Jérôme Duval <korli@users.berlios.de> |
Simplified pci bus manager Jamfiles git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11384 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
ecd4e144 |
|
24-Nov-2004 |
Axel Dörfler <axeld@pinc-software.de> |
Different compilers produce differently sized binaries: removed the PCI bus manager from the floppy image - it's not really needed yet, and with all the debug output, it cuts some 300 kB from the final image. If you're floppy image did not work anymore in Bochs, try now. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10219 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
31db113e |
|
08-May-2004 |
Axel Dörfler <axeld@pinc-software.de> |
pci_info.cpp now expects pcihdr.h to be part of the Devices preferences app. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7463 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
322defd1 |
|
26-Jan-2004 |
Axel Dörfler <axeld@pinc-software.de> |
Accidently broke the build by allowing kernel_cpp.cpp to be built without having access to private/kernel. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6322 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
ee3ca5c2 |
|
29-Sep-2003 |
beveloper <beveloper@nowhere.fake> |
include new files and kernel C++ git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4859 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
92d054b3 |
|
17-Sep-2003 |
beveloper <beveloper@nowhere.fake> |
now really creates the pci bus manager git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4754 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
0ebeb0c0 |
|
17-Sep-2003 |
beveloper <beveloper@nowhere.fake> |
include pci on floppy git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4740 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
9452770b |
|
16-Sep-2003 |
beveloper <beveloper@nowhere.fake> |
added new pci bus manager git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4721 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
b0944c78b074a8110bd98e060415d0e8f38a7f65 |
|
01-Aug-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
More work towards hybrid support * All packaging architecture dependent variables do now have a respective suffix and are set up for each configured packaging architecture, save for the kernel and boot loader variables, which are still only set up for the primary architecture. For convenience TARGET_PACKAGING_ARCH, TARGET_ARCH, TARGET_LIBSUPC++, and TARGET_LIBSTDC++ are set to the respective values for the primary packaging architecture by default. * Introduce a set of MultiArch* rules to help with building targets for multiple packaging architectures. Generally the respective targets are (additionally) gristed with the packaging architecture. For libraries the additional grist is usually omitted for the primary architecture (e.g. libroot.so and <x86>libroot.so for x86_gcc2/x86 hybrid), so that Jamfiles for targets built only for the primary architecture don't need to be changed. * Add multi-arch build support for all targets needed for the stage 1 cross devel package as well as for libbe (untested).
|
#
12bd7812dd6b6eadb65789ca9fc2e270d7d66fd4 |
|
19-Jul-2012 |
Alex Smith <alex@alex-smith.me.uk> |
Ported PCI module to x86_64. Uses the x86 architecture code, made fixes to printf formats and a couple of 64-bit fixes. Only potentially intrusive change is that I've changed PCI.h to use uint32 rather than ulong. I don't see any way this would cause any issues, though.
|
#
2548ea219a5c97355b49de1523c8158887937220 |
|
13-Apr-2010 |
Michael Lotz <mmlr@mlotz.ch> |
* Add the framework for adding an arch specific module to the PCI bus_manager. * Implement such a module for x86 which currently exports only an MSI API. * Implement the PCI part for configuring and enabling MSIs. * Some automatic whitespace cleanup. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36223 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
16e27556080ff77e319b1b643fa13184a8343e8f |
|
18-Oct-2009 |
Stephan Aßmus <superstippi@gmx.de> |
I didn't realize the generated headers are re-used elsewhere and located like that. But I didn't think of any better solution either... Hopefully these are all, but I will find out once I built a complete image. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33641 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
69dddbdea163b79cfb464b4a1bc18e6533ab06ff |
|
18-Jul-2008 |
Michael Lotz <mmlr@mlotz.ch> |
Initial work towards supporting IO APICs. This cannot work for PCI interrupts though until we use ACPI for proper PCI IRQ routing through the IO APIC. Therefore the IO APIC code path is not yet enabled and the IO APIC isn't used. ISA interrupts would work though, as would PCI interrupts if you'd hardcode them for your specific configuration. Note that this change also modifies some parts in the bootloader and in the PIC setup to make local APICs available even on non-SMP systems. This causes APIC timers to be used instead the normal PIT if it is available (also on non-SMP configurations). Also fixes some general errors in SMP and PIC code as well as some code cleanup. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26492 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
368167ede8118f72da8c9ac5bb98ce9b46a8a639 |
|
26-May-2008 |
Axel Dörfler <axeld@pinc-software.de> |
* Integration of the new driver architecture. * Moved devfs from fs/ to device_manager/, and separated the legacy driver support from it. * Removed fast_log module. * There are a couple of (temporary) regressions, though: - legacy SATA and ISA IDE support is disabled, the drivers haven't been ported yet. - The not yet used ATA bus manager hasn't been ported yet, either. - AHCI changes have not been tested. - the listdev command has been removed from the build (as it currently doesn't work anymore). - device manager generated IDs currently are not freed anymore when a device node is removed. - generic drivers can't yet use the new driver architecture. - simple busses that do not support device types won't work yet. - legacy driver publishing/unpublishing (ie. what USB needs) has not been tested, and may be broken. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25662 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
65621982c96e3b6f3fddb26ab2776fa75ce0535b |
|
10-Nov-2007 |
Marcus Overhagen <marcusoverhagen@gmail.com> |
New PCI quirk/fixup support. The Jmicron AHCI controller has a mode that combines IDE and AHCI functionality into a single PCI device at function 0. This happens when the controller is set in the BIOS to "basic" or "IDE" mode (but not in "RAID" or "AHCI" mode). To avoid needing two drivers to handle a single PCI device, we switch to the multifunction (split device) AHCI mode. This will set PCI device at function 0 to AHCI, and PCI device at function 1 to IDE controller. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22868 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
91b1b84abd5d9c575e85d0d25c1a7515f5214e5c |
|
13-Nov-2006 |
Jérôme Duval <korli@users.berlios.de> |
factorized pcihdr.h search code git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19273 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
c49e0c68b013ebe90a3a48d5e98b5788ba2e6542 |
|
18-Sep-2006 |
Jérôme Duval <korli@users.berlios.de> |
dropped a useless arg of the KernelAddon rule, hope I don't mess anything git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18879 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
6f896d56e2b35a8e24bef228e2de15e63696bb1c |
|
25-Jan-2006 |
Jérôme Duval <korli@users.berlios.de> |
updated header search oops we removed useful fields in pcihdr.h ... sorry for breaking the build git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16084 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
338b8dc301721b1f472e8297a898d4eaa2f2ee3a |
|
29-Oct-2005 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Merged changes from branch build_system_redesign at revision 14573. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14574 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
a10cf76ef5b9e8c726ebc47183abd6943023cf8f |
|
24-Jun-2005 |
Axel Dörfler <axeld@pinc-software.de> |
Renamed src/prefs to "preferences", as the directory is usually called in BeOS. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13263 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
6094d89f2f0db00588b30428810e3cddc6b22731 |
|
11-May-2005 |
Axel Dörfler <axeld@pinc-software.de> |
Merged branches/developer/axeld/driver_recognition changed r12307:12637 into trunk. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12638 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
900849fa0dbc41731df2958c4670042786f7afc2 |
|
13-Apr-2005 |
Axel Dörfler <axeld@pinc-software.de> |
Since objects/.../system/kernel is now a directory, the kernel target is now called kernel_${arch} like on disk. A "jam kernel" will still work, though. Also updated all those Jamfiles I forgot to update before. Since makehdimage now runs through (and even builds a working image), I guess most of the consequences of the "kernel/core" -> "system/kernel" rename task are solved. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12364 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
7c49936aa628627720bb86f3a5d2bc28940fd7da |
|
15-Feb-2005 |
Jérôme Duval <korli@users.berlios.de> |
Simplified pci bus manager Jamfiles git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11384 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
ecd4e1445dda4a7aa36604109e233493ac36b893 |
|
24-Nov-2004 |
Axel Dörfler <axeld@pinc-software.de> |
Different compilers produce differently sized binaries: removed the PCI bus manager from the floppy image - it's not really needed yet, and with all the debug output, it cuts some 300 kB from the final image. If you're floppy image did not work anymore in Bochs, try now. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10219 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
31db113eb8b713846d6bd5b6d20488951b9959d7 |
|
08-May-2004 |
Axel Dörfler <axeld@pinc-software.de> |
pci_info.cpp now expects pcihdr.h to be part of the Devices preferences app. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7463 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
322defd113e8e009879507f361038de659cf5786 |
|
26-Jan-2004 |
Axel Dörfler <axeld@pinc-software.de> |
Accidently broke the build by allowing kernel_cpp.cpp to be built without having access to private/kernel. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6322 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
ee3ca5c2275580cb28753f658f96527b8643207f |
|
29-Sep-2003 |
beveloper <beveloper@nowhere.fake> |
include new files and kernel C++ git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4859 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
92d054b3eaf82cf74ceb2723b7e57e04fcd88384 |
|
17-Sep-2003 |
beveloper <beveloper@nowhere.fake> |
now really creates the pci bus manager git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4754 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
0ebeb0c0a8ce741cb348cf3106dfa511568d8d39 |
|
17-Sep-2003 |
beveloper <beveloper@nowhere.fake> |
include pci on floppy git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4740 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
9452770b5ccb9450eb2ea6acefc6faa81e8a1e32 |
|
16-Sep-2003 |
beveloper <beveloper@nowhere.fake> |
added new pci bus manager git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4721 a95241bf-73f2-0310-859d-f6bbb57e9c96
|