Page MenuHomeFreeBSD

Enabling v-PCI in FreeBSD in ARM64 Hyper-V second patch
ClosedPublic

Authored by schakrabarti_microsoft.com on Jan 5 2023, 5:28 PM.
Tags
None
Referenced Files
Unknown Object (File)
Mon, Dec 16, 11:14 PM
Unknown Object (File)
Oct 19 2024, 1:35 PM
Unknown Object (File)
Oct 19 2024, 1:35 PM
Unknown Object (File)
Oct 19 2024, 1:35 PM
Unknown Object (File)
Oct 19 2024, 1:15 PM
Unknown Object (File)
Oct 3 2024, 9:53 PM
Unknown Object (File)
Oct 2 2024, 11:07 PM
Unknown Object (File)
Oct 2 2024, 7:31 PM

Details

Summary

This patch does remaining enablement in hyperv vpci driver to work on arm64 Hyper-V.
For that it required to use PCI protocol 1.4 and corresponding different PCI message handling.
Also new MSI allocation, MSI-X mapping, release.

Test Plan

Tested on Hyper-V x86 gen1, gen2 and ARM64 gen2.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

kpraveen.lkml_gmail.com added inline comments.
sys/dev/hyperv/pcib/vmbus_pcib.c
168

Can we reorder this

PCI_PROTOCOL_VERSION_1_1,
PCI_PROTOCOL_VERSION_1_4
1909

Can we just put like this below and other places as applicable

#if defined(__aarch64__)
	return (intr_alloc_msi(pcib, dev, ACPI_MSI_XREF, count, maxcount, irqs));
#else
	return (PCIB_ALLOC_MSI(device_get_parent(pcib), dev, count, maxcount,
	    irqs));
#endif
schakrabarti_microsoft.com added inline comments.
sys/dev/hyperv/pcib/vmbus_pcib.c
168

This is intentional, to have PCI_PROTOCOL_VERSION_1_4 to be negotiated before PCI_PROTOCOL_VERSION_1_1.

There are some style changes which I will correct when commit.

This revision is now accepted and ready to land.Feb 1 2023, 4:45 PM