#
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>
|
#
bd7bb437 |
|
11-Apr-2023 |
Jérôme Duval <jerome.duval@gmail.com> |
PCI_x86: remove Change-Id: I54335b6390dc5e312225a3100fd88d4e49838d35 Reviewed-on: https://review.haiku-os.org/c/haiku/+/6331 Reviewed-by: Fredrik Holmqvist <fredrik.holmqvist@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>
|
#
cba67843 |
|
18-Feb-2022 |
Jérôme Duval <jerome.duval@gmail.com> |
pci: add set_powerstate and get_powerstate legacy hooks Change-Id: I827112ffb1a65ada99605671b112d8fd0e6db4b5 Reviewed-on: https://review.haiku-os.org/c/haiku/+/4976 Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org> Reviewed-by: waddlesplash <waddlesplash@gmail.com>
|
#
5ffbe7d7 |
|
30-Mar-2019 |
Augustin Cavalier <waddlesplash@gmail.com> |
Change all references to "__INTEL__" to "__i386__". They are functionally identical, but the former is a BeOS/Haiku-specfic macro that we include in the compiler specs, and the latter is defined by GCC.
|
#
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().
|
#
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.
|
#
63cffb7e |
|
07-May-2011 |
Michael Lotz <mmlr@mlotz.ch> |
Add a way to store a new interrupt_line value to the PCI module. It both updates the cached pci_info and writes the new value into PCI config space. Drivers using either mechanism to enumerate devices will therefore get the updated value. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41364 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
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
|
#
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().
|
#
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.
|
#
63cffb7ee364813e37e50b40444a2c071952f92d |
|
07-May-2011 |
Michael Lotz <mmlr@mlotz.ch> |
Add a way to store a new interrupt_line value to the PCI module. It both updates the cached pci_info and writes the new value into PCI config space. Drivers using either mechanism to enumerate devices will therefore get the updated value. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41364 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
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
|