#
629f071b |
|
27-Feb-2024 |
X512 <danger_mail@list.ru> |
pci: extend MSI interrupt vector number to 32 bits Also increase MSI message data size to 32 bits according to PCIe spec. Remove 0xff check for MSI interrupts because it is potentially valid interrupt vector number. Reject 0xff only for legacy pin interrupts. - MSI-X supports up to 2048 interrupts per device that do not fit to `uint8`. - Non-x86 systems may use separate interrupt vector ranges for hard-wired interrupts and MSI interrupts so `uint8` is not enough to represent all of them. Change-Id: Iaf9ffb197ec23db0f97ffe3ea756d28d7bfc8705 Reviewed-on: https://review.haiku-os.org/c/haiku/+/7433 Reviewed-by: waddlesplash <waddlesplash@gmail.com> Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
|
#
fabb71cc |
|
15-Jan-2024 |
Augustin Cavalier <waddlesplash@gmail.com> |
PCI: Support more than 6 PCI memory ranges. Also use the standard kernel-wide constants for IO or memory space rather than defining new ones, as well as the PCI constants for address types. Change-Id: Iad03f7666ad5121a5c9a398339aa1a191339a1d1 Reviewed-on: https://review.haiku-os.org/c/haiku/+/7336 Reviewed-by: waddlesplash <waddlesplash@gmail.com>
|
#
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>
|
#
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>
|
#
c4f5ebc3 |
|
21-Mar-2020 |
Jérôme Duval <jerome.duval@gmail.com> |
PCI: add set_powerstate and get_powerstate hooks Change-Id: I8e32b5fccba3461cdb1b0c6e81b15705b2be1c57 Reviewed-on: https://review.haiku-os.org/c/haiku/+/2447 Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
|
#
16bb99fd |
|
21-Nov-2017 |
François Revol <revol@free.fr> |
PCI: fix ram_address() to use phys_addr_t Since it handles physical address it should really be this. It's not like many drivers actually used it anyway. It shouldn't harm compatibility, drivers calling it with only 32bit would leave garbage in the higher bits but since on x86 it's a noop anyway, it would end up in the MSB register tha's ignored because it expects a 32bit result.
|
#
b027a0a2 |
|
24-Jun-2013 |
Jérôme Duval <jerome.duval@gmail.com> |
pci: change offset type to uint16 in config space API. * The config space is larger than 255, we need to use an uint16 to access offsets superior or equal to 256. The current API only proposes an uint8 for this. This change switches the offset parameter to the uint16 type. Axel hinted that the used values are the same with such a change (the doc says sign extended to 2 or 4 bytes). I checked with GCC2 and it's indeed the case when inspecting the memory. With GCC4, instructions are the same on function call. * prints info about extended capabilities. * struct pci_module_info and struct pci_device_module_info are extended with pci_find_extended_capability().
|
#
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
|
#
3f8d7bce |
|
17-Feb-2007 |
Marcus Overhagen <marcusoverhagen@gmail.com> |
added PCI capability support to bus api git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20151 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
ebb02063 |
|
16-Jan-2007 |
Marcus Overhagen <marcusoverhagen@gmail.com> |
Fixed documentation, uint16 was wrong and doesn't work. Also checked other usage of this items, but they are already correct. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19836 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
41f7459c |
|
06-Feb-2006 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Added a get_pci_info() to pci_device_module_info. It was a bit too complicated to get a pci_info for a given pci_device before. The function is not very efficiently implemented, but I didn't see how to do that without more intrusive changes. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16267 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
|
#
b83a8af4 |
|
11-Jan-2005 |
Axel Dörfler <axeld@pinc-software.de> |
First roll of renames: pnp_node_hamdle is now device_node_handle, pnp_node_attr is now device_attr, pnp_bus_info bus_module_info, pnp_driver_info driver_module_info, ... Small cleanup (more would be needed, but this has time). git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10670 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
0d59a3d2 |
|
06-Jun-2004 |
Axel Dörfler <axeld@pinc-software.de> |
More headers for the new modules and PnP/device system - note, this is a work in progress; the name as well as the contents will change :-) git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7769 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
b027a0a2f750e957f109e9e872662aca67b4336f |
|
24-Jun-2013 |
Jérôme Duval <jerome.duval@gmail.com> |
pci: change offset type to uint16 in config space API. * The config space is larger than 255, we need to use an uint16 to access offsets superior or equal to 256. The current API only proposes an uint8 for this. This change switches the offset parameter to the uint16 type. Axel hinted that the used values are the same with such a change (the doc says sign extended to 2 or 4 bytes). I checked with GCC2 and it's indeed the case when inspecting the memory. With GCC4, instructions are the same on function call. * prints info about extended capabilities. * struct pci_module_info and struct pci_device_module_info are extended with pci_find_extended_capability().
|
#
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
|
#
3f8d7bce7cf1ee993d381b2ce315352ca234c81b |
|
17-Feb-2007 |
Marcus Overhagen <marcusoverhagen@gmail.com> |
added PCI capability support to bus api git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20151 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
ebb02063bd6b9af302d69cbba3e27be8c0bf1b8e |
|
16-Jan-2007 |
Marcus Overhagen <marcusoverhagen@gmail.com> |
Fixed documentation, uint16 was wrong and doesn't work. Also checked other usage of this items, but they are already correct. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19836 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
41f7459c2371473d388062bbec52dd235aeab9ba |
|
06-Feb-2006 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Added a get_pci_info() to pci_device_module_info. It was a bit too complicated to get a pci_info for a given pci_device before. The function is not very efficiently implemented, but I didn't see how to do that without more intrusive changes. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16267 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
|
#
b83a8af4e0129415c27a1d12fd38ec145caebaf2 |
|
11-Jan-2005 |
Axel Dörfler <axeld@pinc-software.de> |
First roll of renames: pnp_node_hamdle is now device_node_handle, pnp_node_attr is now device_attr, pnp_bus_info bus_module_info, pnp_driver_info driver_module_info, ... Small cleanup (more would be needed, but this has time). git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10670 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
0d59a3d2a9729c34163c19f8ab2b91adf39844c2 |
|
06-Jun-2004 |
Axel Dörfler <axeld@pinc-software.de> |
More headers for the new modules and PnP/device system - note, this is a work in progress; the name as well as the contents will change :-) git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7769 a95241bf-73f2-0310-859d-f6bbb57e9c96
|