Re: [PATCH] drm/doc/rfc: SR-IOV support on the new Xe driver
On 15/11/2023 20:42, Michal Wajdeczko wrote: On 15.11.2023 11:00, Tvrtko Ursulin wrote: On 14/11/2023 16:55, Michal Wajdeczko wrote: On 14.11.2023 13:37, Tvrtko Ursulin wrote: On 10/11/2023 18:22, Michal Wajdeczko wrote: The Single Root I/O Virtualization (SR-IOV) extension to the PCI Express (PCIe) specification suite is supported starting from 12th generation of Intel Graphics processors. This RFC aims to explain how do we want to add support for SR-IOV to the new Xe driver and to propose related additions to the sysfs. Signed-off-by: Michal Wajdeczko Cc: Oded Gabbay Cc: Rodrigo Vivi Cc: Joonas Lahtinen Cc: Tvrtko Ursulin Cc: Daniel Vetter --- Documentation/gpu/rfc/index.rst | 5 + Documentation/gpu/rfc/sysfs-driver-xe-sriov | 501 Documentation/gpu/rfc/xe_sriov.rst | 192 3 files changed, 698 insertions(+) create mode 100644 Documentation/gpu/rfc/sysfs-driver-xe-sriov create mode 100644 Documentation/gpu/rfc/xe_sriov.rst diff --git a/Documentation/gpu/rfc/index.rst b/Documentation/gpu/rfc/index.rst index e4f7b005138d..fc5bc447f30d 100644 --- a/Documentation/gpu/rfc/index.rst +++ b/Documentation/gpu/rfc/index.rst @@ -35,3 +35,8 @@ host such documentation: .. toctree:: xe.rst + +.. toctree:: + :maxdepth: 1 + + xe_sriov.rst diff --git a/Documentation/gpu/rfc/sysfs-driver-xe-sriov b/Documentation/gpu/rfc/sysfs-driver-xe-sriov new file mode 100644 index ..77748204dd83 --- /dev/null +++ b/Documentation/gpu/rfc/sysfs-driver-xe-sriov @@ -0,0 +1,501 @@ +.. Documentation/ABI/testing/sysfs-driver-xe-sriov +.. +.. Intel Xe driver ABI (SR-IOV extensions) +.. + The Single Root I/O Virtualization (SR-IOV) extension to + the PCI Express (PCIe) specification suite is supported + starting from 12th generation of Intel Graphics processors. + + This document describes Xe driver specific additions. + + For description of generic SR-IOV sysfs attributes see + "Documentation/ABI/testing/sysfs-bus-pci" document. + + /sys/bus/pci/drivers/xe/BDF/ + ├── sriov_auto_provisioning + │ ├── admin_mode + │ ├── enabled + │ ├── reset_defaults + │ ├── resources + │ │ ├── default_contexts_quota + │ │ ├── default_doorbells_quota + │ │ ├── default_ggtt_quota + │ │ └── default_lmem_quota + │ ├── scheduling + │ │ ├── default_exec_quantum_ms + │ │ └── default_preempt_timeout_us + │ └── monitoring + │ ├── default_cat_error_count + │ ├── default_doorbell_time_us + │ ├── default_engine_reset_count + │ ├── default_h2g_time_us + │ ├── default_irq_time_us + │ └── default_page_fault_count From the department of bike-shedding, one alternative could be to have a directory called defaults which avoids having to have the default_ prefix on everything under it. like this ? /sys/bus/pci/drivers/xe/BDF/ ├── sriov_auto_provisioning │ ├── admin_mode │ ├── enabled │ └── defaults │ ├── resources │ │ ├── contexts_quota │ │ ├── doorbells_quota │ │ ├── ggtt_quota │ │ └── lmem_quota │ ├── scheduling │ │ ├── exec_quantum_ms │ │ └── preempt_timeout_us │ └── monitoring │ ├── cat_error_count │ ├── doorbell_time_us │ ├── engine_reset_count │ ├── h2g_time_us │ ├── irq_time_us │ └── page_fault_count Looks better to me but it may be just a matter of taste so I was just roughly outlining an alternative. another proposal (to avoid clash with '.defaults' used elsewhere for different purposes): /sys/bus/pci/drivers/xe/BDF/ ├── sriov_auto_provisioning │ ├── admin_mode │ ├── enabled │ └── template │ ├── resources │ │ ├── guc_contexts_quota │ │ ├── guc_doorbells_quota │ │ ├── ggtt_quota │ │ └── lmem_quota │ ├── scheduling │ │ ├── guc_exec_quantum_ms │ │ └── guc_preempt_timeout_us │ └── monitoring │ ├── cat_error_count │ ├── engine_reset_count │ ├── guc_doorbell_time_us │ ├── guc_h2g_time_us │ ├── guc_irq_time_us │ └── page_fault_count Looks good to me. + + /sys/bus/pci/drivers/xe/BDF/ + ├── sriov_extensions Should this be xe_sriov_extensions or if not doesn't it need agreement to reserve the keyword in Documentation/ABI/testing/sysfs-bus-pci? Sriov_auto_provisioning too I guess. I didn't spot in ABI documents any driver specific additions to device that were using extra prefix, nor the "reservation" placeholders. but if we want to go with a prefix, then maybe all our
Re: [PATCH] drm/doc/rfc: SR-IOV support on the new Xe driver
On 15.11.2023 11:00, Tvrtko Ursulin wrote: > > On 14/11/2023 16:55, Michal Wajdeczko wrote: >> On 14.11.2023 13:37, Tvrtko Ursulin wrote: >>> On 10/11/2023 18:22, Michal Wajdeczko wrote: The Single Root I/O Virtualization (SR-IOV) extension to the PCI Express (PCIe) specification suite is supported starting from 12th generation of Intel Graphics processors. This RFC aims to explain how do we want to add support for SR-IOV to the new Xe driver and to propose related additions to the sysfs. Signed-off-by: Michal Wajdeczko Cc: Oded Gabbay Cc: Rodrigo Vivi Cc: Joonas Lahtinen Cc: Tvrtko Ursulin Cc: Daniel Vetter --- Documentation/gpu/rfc/index.rst | 5 + Documentation/gpu/rfc/sysfs-driver-xe-sriov | 501 Documentation/gpu/rfc/xe_sriov.rst | 192 3 files changed, 698 insertions(+) create mode 100644 Documentation/gpu/rfc/sysfs-driver-xe-sriov create mode 100644 Documentation/gpu/rfc/xe_sriov.rst diff --git a/Documentation/gpu/rfc/index.rst b/Documentation/gpu/rfc/index.rst index e4f7b005138d..fc5bc447f30d 100644 --- a/Documentation/gpu/rfc/index.rst +++ b/Documentation/gpu/rfc/index.rst @@ -35,3 +35,8 @@ host such documentation: .. toctree:: xe.rst + +.. toctree:: + :maxdepth: 1 + + xe_sriov.rst diff --git a/Documentation/gpu/rfc/sysfs-driver-xe-sriov b/Documentation/gpu/rfc/sysfs-driver-xe-sriov new file mode 100644 index ..77748204dd83 --- /dev/null +++ b/Documentation/gpu/rfc/sysfs-driver-xe-sriov @@ -0,0 +1,501 @@ +.. Documentation/ABI/testing/sysfs-driver-xe-sriov +.. +.. Intel Xe driver ABI (SR-IOV extensions) +.. + The Single Root I/O Virtualization (SR-IOV) extension to + the PCI Express (PCIe) specification suite is supported + starting from 12th generation of Intel Graphics processors. + + This document describes Xe driver specific additions. + + For description of generic SR-IOV sysfs attributes see + "Documentation/ABI/testing/sysfs-bus-pci" document. + + /sys/bus/pci/drivers/xe/BDF/ + ├── sriov_auto_provisioning + │ ├── admin_mode + │ ├── enabled + │ ├── reset_defaults + │ ├── resources + │ │ ├── default_contexts_quota + │ │ ├── default_doorbells_quota + │ │ ├── default_ggtt_quota + │ │ └── default_lmem_quota + │ ├── scheduling + │ │ ├── default_exec_quantum_ms + │ │ └── default_preempt_timeout_us + │ └── monitoring + │ ├── default_cat_error_count + │ ├── default_doorbell_time_us + │ ├── default_engine_reset_count + │ ├── default_h2g_time_us + │ ├── default_irq_time_us + │ └── default_page_fault_count >>> >>> From the department of bike-shedding, one alternative could be to >>> have a >>> directory called defaults which avoids having to have the default_ >>> prefix on everything under it. >> >> like this ? >> >> /sys/bus/pci/drivers/xe/BDF/ >> ├── sriov_auto_provisioning >> │ ├── admin_mode >> │ ├── enabled >> │ └── defaults >> │ ├── resources >> │ │ ├── contexts_quota >> │ │ ├── doorbells_quota >> │ │ ├── ggtt_quota >> │ │ └── lmem_quota >> │ ├── scheduling >> │ │ ├── exec_quantum_ms >> │ │ └── preempt_timeout_us >> │ └── monitoring >> │ ├── cat_error_count >> │ ├── doorbell_time_us >> │ ├── engine_reset_count >> │ ├── h2g_time_us >> │ ├── irq_time_us >> │ └── page_fault_count > > Looks better to me but it may be just a matter of taste so I was just > roughly outlining an alternative. another proposal (to avoid clash with '.defaults' used elsewhere for different purposes): /sys/bus/pci/drivers/xe/BDF/ ├── sriov_auto_provisioning │ ├── admin_mode │ ├── enabled │ └── template │ ├── resources │ │ ├── guc_contexts_quota │ │ ├── guc_doorbells_quota │ │ ├── ggtt_quota │ │ └── lmem_quota │ ├── scheduling │ │ ├── guc_exec_quantum_ms │ │ └── guc_preempt_timeout_us │ └── monitoring │ ├── cat_error_count │ ├── engine_reset_count │ ├── guc_doorbell_time_us │ ├── guc_h2g_time_us │ ├── guc_irq_time_us │ └── page_fault_count > >>> + + /sys/bus/pci/drivers/xe/BDF/ + ├── sriov_extensions >>>
Re: [PATCH] drm/doc/rfc: SR-IOV support on the new Xe driver
Hi Michal, kernel test robot noticed the following build warnings: [auto build test WARNING on drm-misc/drm-misc-next] [also build test WARNING on drm/drm-next drm-exynos/exynos-drm-next drm-intel/for-linux-next drm-intel/for-linux-next-fixes drm-tip/drm-tip linus/master v6.7-rc1 next-20231115] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Michal-Wajdeczko/drm-doc-rfc-SR-IOV-support-on-the-new-Xe-driver/2023-022816 base: git://anongit.freedesktop.org/drm/drm-misc drm-misc-next patch link: https://lore.kernel.org/r/20231110182231.1730-1-michal.wajdeczko%40intel.com patch subject: [PATCH] drm/doc/rfc: SR-IOV support on the new Xe driver reproduce: (https://download.01.org/0day-ci/archive/20231115/202311152144.cn5cuzqv-...@intel.com/reproduce) If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot | Closes: https://lore.kernel.org/oe-kbuild-all/202311152144.cn5cuzqv-...@intel.com/ All warnings (new ones prefixed by >>): >> Warning: Documentation/gpu/rfc/sysfs-driver-xe-sriov references a file that >> doesn't exist: Documentation/ABI/testing/sysfs-driver-xe-sriov -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
Re: [PATCH] drm/doc/rfc: SR-IOV support on the new Xe driver
On 14/11/2023 16:55, Michal Wajdeczko wrote: On 14.11.2023 13:37, Tvrtko Ursulin wrote: On 10/11/2023 18:22, Michal Wajdeczko wrote: The Single Root I/O Virtualization (SR-IOV) extension to the PCI Express (PCIe) specification suite is supported starting from 12th generation of Intel Graphics processors. This RFC aims to explain how do we want to add support for SR-IOV to the new Xe driver and to propose related additions to the sysfs. Signed-off-by: Michal Wajdeczko Cc: Oded Gabbay Cc: Rodrigo Vivi Cc: Joonas Lahtinen Cc: Tvrtko Ursulin Cc: Daniel Vetter --- Documentation/gpu/rfc/index.rst | 5 + Documentation/gpu/rfc/sysfs-driver-xe-sriov | 501 Documentation/gpu/rfc/xe_sriov.rst | 192 3 files changed, 698 insertions(+) create mode 100644 Documentation/gpu/rfc/sysfs-driver-xe-sriov create mode 100644 Documentation/gpu/rfc/xe_sriov.rst diff --git a/Documentation/gpu/rfc/index.rst b/Documentation/gpu/rfc/index.rst index e4f7b005138d..fc5bc447f30d 100644 --- a/Documentation/gpu/rfc/index.rst +++ b/Documentation/gpu/rfc/index.rst @@ -35,3 +35,8 @@ host such documentation: .. toctree:: xe.rst + +.. toctree:: + :maxdepth: 1 + + xe_sriov.rst diff --git a/Documentation/gpu/rfc/sysfs-driver-xe-sriov b/Documentation/gpu/rfc/sysfs-driver-xe-sriov new file mode 100644 index ..77748204dd83 --- /dev/null +++ b/Documentation/gpu/rfc/sysfs-driver-xe-sriov @@ -0,0 +1,501 @@ +.. Documentation/ABI/testing/sysfs-driver-xe-sriov +.. +.. Intel Xe driver ABI (SR-IOV extensions) +.. + The Single Root I/O Virtualization (SR-IOV) extension to + the PCI Express (PCIe) specification suite is supported + starting from 12th generation of Intel Graphics processors. + + This document describes Xe driver specific additions. + + For description of generic SR-IOV sysfs attributes see + "Documentation/ABI/testing/sysfs-bus-pci" document. + + /sys/bus/pci/drivers/xe/BDF/ + ├── sriov_auto_provisioning + │ ├── admin_mode + │ ├── enabled + │ ├── reset_defaults + │ ├── resources + │ │ ├── default_contexts_quota + │ │ ├── default_doorbells_quota + │ │ ├── default_ggtt_quota + │ │ └── default_lmem_quota + │ ├── scheduling + │ │ ├── default_exec_quantum_ms + │ │ └── default_preempt_timeout_us + │ └── monitoring + │ ├── default_cat_error_count + │ ├── default_doorbell_time_us + │ ├── default_engine_reset_count + │ ├── default_h2g_time_us + │ ├── default_irq_time_us + │ └── default_page_fault_count From the department of bike-shedding, one alternative could be to have a directory called defaults which avoids having to have the default_ prefix on everything under it. like this ? /sys/bus/pci/drivers/xe/BDF/ ├── sriov_auto_provisioning │ ├── admin_mode │ ├── enabled │ └── defaults │ ├── resources │ │ ├── contexts_quota │ │ ├── doorbells_quota │ │ ├── ggtt_quota │ │ └── lmem_quota │ ├── scheduling │ │ ├── exec_quantum_ms │ │ └── preempt_timeout_us │ └── monitoring │ ├── cat_error_count │ ├── doorbell_time_us │ ├── engine_reset_count │ ├── h2g_time_us │ ├── irq_time_us │ └── page_fault_count Looks better to me but it may be just a matter of taste so I was just roughly outlining an alternative. + + /sys/bus/pci/drivers/xe/BDF/ + ├── sriov_extensions Should this be xe_sriov_extensions or if not doesn't it need agreement to reserve the keyword in Documentation/ABI/testing/sysfs-bus-pci? Sriov_auto_provisioning too I guess. I didn't spot in ABI documents any driver specific additions to device that were using extra prefix, nor the "reservation" placeholders. but if we want to go with a prefix, then maybe all our additions at device level should have one, including already added tileT: tile0 -> xe_tile0 or even to match existing mei file we should use "xe." prefix instead: xe.sriov_auto_provisioning xe.sriov_extension xe.tile0 xe.mei-gsc... I don't know really - I assumed since there are common sriov_ prefix controls at the PCI level, that adding driver specific things using the same namespace might require agreement from the PCI core folks. Perhaps a topic to consult the respestive mailing list(s). + │ ├── monitoring_period_ms + │ ├── strict_scheduling_enabled + │ ├── pf + │ │ ├── device -> ../../../BDF + │ │ ├── priority + │ │ ├── tile0 + │ │ │ ├── gt0 + │ │ │ │ ├── exec_quantum_ms + │ │ │ │ ├── preempt_timeout_us + │ │ │ │ └── thresholds + │ │ │ │ ├── cat_error_count + │ │ │ │ ├──
Re: [PATCH] drm/doc/rfc: SR-IOV support on the new Xe driver
On 14.11.2023 14:22, Vivi, Rodrigo wrote: > On Tue, 2023-11-14 at 12:37 +, Tvrtko Ursulin wrote: >> >> On 10/11/2023 18:22, Michal Wajdeczko wrote: >>> The Single Root I/O Virtualization (SR-IOV) extension to the PCI >>> Express (PCIe) specification suite is supported starting from 12th >>> generation of Intel Graphics processors. >>> >>> This RFC aims to explain how do we want to add support for SR-IOV >>> to the new Xe driver and to propose related additions to the sysfs. >>> >>> Signed-off-by: Michal Wajdeczko >>> Cc: Oded Gabbay >>> Cc: Rodrigo Vivi >>> Cc: Joonas Lahtinen >>> Cc: Tvrtko Ursulin >>> Cc: Daniel Vetter >>> --- >>> Documentation/gpu/rfc/index.rst | 5 + >>> Documentation/gpu/rfc/sysfs-driver-xe-sriov | 501 >>> >>> Documentation/gpu/rfc/xe_sriov.rst | 192 >>> 3 files changed, 698 insertions(+) >>> create mode 100644 Documentation/gpu/rfc/sysfs-driver-xe-sriov >>> create mode 100644 Documentation/gpu/rfc/xe_sriov.rst >>> >>> diff --git a/Documentation/gpu/rfc/index.rst >>> b/Documentation/gpu/rfc/index.rst >>> index e4f7b005138d..fc5bc447f30d 100644 >>> --- a/Documentation/gpu/rfc/index.rst >>> +++ b/Documentation/gpu/rfc/index.rst >>> @@ -35,3 +35,8 @@ host such documentation: >>> .. toctree:: >>> >>> xe.rst >>> + >>> +.. toctree:: >>> + :maxdepth: 1 >>> + >>> + xe_sriov.rst >>> diff --git a/Documentation/gpu/rfc/sysfs-driver-xe-sriov >>> b/Documentation/gpu/rfc/sysfs-driver-xe-sriov >>> new file mode 100644 >>> index ..77748204dd83 >>> --- /dev/null >>> +++ b/Documentation/gpu/rfc/sysfs-driver-xe-sriov >>> @@ -0,0 +1,501 @@ >>> +.. Documentation/ABI/testing/sysfs-driver-xe-sriov >>> +.. >>> +.. Intel Xe driver ABI (SR-IOV extensions) >>> +.. >>> + The Single Root I/O Virtualization (SR-IOV) extension to >>> + the PCI Express (PCIe) specification suite is supported >>> + starting from 12th generation of Intel Graphics processors. >>> + >>> + This document describes Xe driver specific additions. >>> + >>> + For description of generic SR-IOV sysfs attributes see >>> + "Documentation/ABI/testing/sysfs-bus-pci" document. >>> + >>> + /sys/bus/pci/drivers/xe/BDF/ >>> + ├── sriov_auto_provisioning >>> + │ ├── admin_mode >>> + │ ├── enabled >>> + │ ├── reset_defaults >>> + │ ├── resources >>> + │ │ ├── default_contexts_quota >>> + │ │ ├── default_doorbells_quota >>> + │ │ ├── default_ggtt_quota >>> + │ │ └── default_lmem_quota >>> + │ ├── scheduling >>> + │ │ ├── default_exec_quantum_ms >>> + │ │ └── default_preempt_timeout_us >>> + │ └── monitoring >>> + │ ├── default_cat_error_count >>> + │ ├── default_doorbell_time_us >>> + │ ├── default_engine_reset_count >>> + │ ├── default_h2g_time_us >>> + │ ├── default_irq_time_us >>> + │ └── default_page_fault_count >> >> From the department of bike-shedding, one alternative could be to >> have >> a directory called defaults which avoids having to have the default_ >> prefix on everything under it. > > good idea. probably with a '.' prefix to make it hidden like we have > for other stuff already. > > '.defaults' but then we will be inconsistent as in this 'other stuff' we use ".defaults" directory to hold RO attributes with min/default/max values, while here we wanted to define RW attributes that will be applied to VFs maybe ".template" instead ? > >> >>> + >>> + /sys/bus/pci/drivers/xe/BDF/ >>> + ├── sriov_extensions >> >> Should this be xe_sriov_extensions or if not doesn't it need >> agreement >> to reserve the keyword in Documentation/ABI/testing/sysfs-bus-pci? >> Sriov_auto_provisioning too I guess. >> >>> + │ ├── monitoring_period_ms >>> + │ ├── strict_scheduling_enabled >>> + │ ├── pf >>> + │ │ ├── device -> ../../../BDF >>> + │ │ ├── priority >>> + │ │ ├── tile0 >>> + │ │ │ ├── gt0 >>> + │ │ │ │ ├── exec_quantum_ms >>> + │ │ │ │ ├── preempt_timeout_us >>> + │ │ │ │ └── thresholds >>> + │ │ │ │ ├── cat_error_count >>> + │ │ │ │ ├── doorbell_time_us >>> + │ │ │ │ ├── engine_reset_count >>> + │ │ │ │ ├── h2g_time_us >>> + │ │ │ │ ├── irq_time_us >>> + │ │ │ │ └── page_fault_count >>> + │ │ │ └── gtX >>> + │ │ └── tileT >>> + │ ├── vf1 >>> + │ │ ├── device -> ../../../BDF+1 >>> + │ │ ├── stop >>> + │ │ ├── tile0 >>> + │ │ │ ├── ggtt_quota >>> + │ │ │ ├── lmem_quota >>> + │ │ │ ├── gt0 >>> + │ │ │ │ ├── contexts_quota >>> + │ │ │ │ ├── doorbells_quota >>> + │ │ │ │ ├── exec_quantum_ms >>> + │ │ │ │ ├── preempt_timeout_us >>> + │ │ │ │ └── thresholds >>> + │ │ │ │ ├── cat_error_count
Re: [PATCH] drm/doc/rfc: SR-IOV support on the new Xe driver
On 14.11.2023 13:37, Tvrtko Ursulin wrote: > > On 10/11/2023 18:22, Michal Wajdeczko wrote: >> The Single Root I/O Virtualization (SR-IOV) extension to the PCI >> Express (PCIe) specification suite is supported starting from 12th >> generation of Intel Graphics processors. >> >> This RFC aims to explain how do we want to add support for SR-IOV >> to the new Xe driver and to propose related additions to the sysfs. >> >> Signed-off-by: Michal Wajdeczko >> Cc: Oded Gabbay >> Cc: Rodrigo Vivi >> Cc: Joonas Lahtinen >> Cc: Tvrtko Ursulin >> Cc: Daniel Vetter >> --- >> Documentation/gpu/rfc/index.rst | 5 + >> Documentation/gpu/rfc/sysfs-driver-xe-sriov | 501 >> Documentation/gpu/rfc/xe_sriov.rst | 192 >> 3 files changed, 698 insertions(+) >> create mode 100644 Documentation/gpu/rfc/sysfs-driver-xe-sriov >> create mode 100644 Documentation/gpu/rfc/xe_sriov.rst >> >> diff --git a/Documentation/gpu/rfc/index.rst >> b/Documentation/gpu/rfc/index.rst >> index e4f7b005138d..fc5bc447f30d 100644 >> --- a/Documentation/gpu/rfc/index.rst >> +++ b/Documentation/gpu/rfc/index.rst >> @@ -35,3 +35,8 @@ host such documentation: >> .. toctree:: >> xe.rst >> + >> +.. toctree:: >> + :maxdepth: 1 >> + >> + xe_sriov.rst >> diff --git a/Documentation/gpu/rfc/sysfs-driver-xe-sriov >> b/Documentation/gpu/rfc/sysfs-driver-xe-sriov >> new file mode 100644 >> index ..77748204dd83 >> --- /dev/null >> +++ b/Documentation/gpu/rfc/sysfs-driver-xe-sriov >> @@ -0,0 +1,501 @@ >> +.. Documentation/ABI/testing/sysfs-driver-xe-sriov >> +.. >> +.. Intel Xe driver ABI (SR-IOV extensions) >> +.. >> + The Single Root I/O Virtualization (SR-IOV) extension to >> + the PCI Express (PCIe) specification suite is supported >> + starting from 12th generation of Intel Graphics processors. >> + >> + This document describes Xe driver specific additions. >> + >> + For description of generic SR-IOV sysfs attributes see >> + "Documentation/ABI/testing/sysfs-bus-pci" document. >> + >> + /sys/bus/pci/drivers/xe/BDF/ >> + ├── sriov_auto_provisioning >> + │ ├── admin_mode >> + │ ├── enabled >> + │ ├── reset_defaults >> + │ ├── resources >> + │ │ ├── default_contexts_quota >> + │ │ ├── default_doorbells_quota >> + │ │ ├── default_ggtt_quota >> + │ │ └── default_lmem_quota >> + │ ├── scheduling >> + │ │ ├── default_exec_quantum_ms >> + │ │ └── default_preempt_timeout_us >> + │ └── monitoring >> + │ ├── default_cat_error_count >> + │ ├── default_doorbell_time_us >> + │ ├── default_engine_reset_count >> + │ ├── default_h2g_time_us >> + │ ├── default_irq_time_us >> + │ └── default_page_fault_count > > From the department of bike-shedding, one alternative could be to have a > directory called defaults which avoids having to have the default_ > prefix on everything under it. like this ? /sys/bus/pci/drivers/xe/BDF/ ├── sriov_auto_provisioning │ ├── admin_mode │ ├── enabled │ └── defaults │ ├── resources │ │ ├── contexts_quota │ │ ├── doorbells_quota │ │ ├── ggtt_quota │ │ └── lmem_quota │ ├── scheduling │ │ ├── exec_quantum_ms │ │ └── preempt_timeout_us │ └── monitoring │ ├── cat_error_count │ ├── doorbell_time_us │ ├── engine_reset_count │ ├── h2g_time_us │ ├── irq_time_us │ └── page_fault_count > >> + >> + /sys/bus/pci/drivers/xe/BDF/ >> + ├── sriov_extensions > > Should this be xe_sriov_extensions or if not doesn't it need agreement > to reserve the keyword in Documentation/ABI/testing/sysfs-bus-pci? > Sriov_auto_provisioning too I guess. I didn't spot in ABI documents any driver specific additions to device that were using extra prefix, nor the "reservation" placeholders. but if we want to go with a prefix, then maybe all our additions at device level should have one, including already added tileT: tile0 -> xe_tile0 or even to match existing mei file we should use "xe." prefix instead: xe.sriov_auto_provisioning xe.sriov_extension xe.tile0 xe.mei-gsc... > >> + │ ├── monitoring_period_ms >> + │ ├── strict_scheduling_enabled >> + │ ├── pf >> + │ │ ├── device -> ../../../BDF >> + │ │ ├── priority >> + │ │ ├── tile0 >> + │ │ │ ├── gt0 >> + │ │ │ │ ├── exec_quantum_ms >> + │ │ │ │ ├── preempt_timeout_us >> + │ │ │ │ └── thresholds >> + │ │ │ │ ├── cat_error_count >> + │ │ │ │ ├── doorbell_time_us >> + │ │ │ │ ├── engine_reset_count >> + │ │ │ │ ├── h2g_time_us >> + │ │ │ │ ├── irq_time_us >> + │ │ │ │
Re: [PATCH] drm/doc/rfc: SR-IOV support on the new Xe driver
On Tue, 2023-11-14 at 12:37 +, Tvrtko Ursulin wrote: > > On 10/11/2023 18:22, Michal Wajdeczko wrote: > > The Single Root I/O Virtualization (SR-IOV) extension to the PCI > > Express (PCIe) specification suite is supported starting from 12th > > generation of Intel Graphics processors. > > > > This RFC aims to explain how do we want to add support for SR-IOV > > to the new Xe driver and to propose related additions to the sysfs. > > > > Signed-off-by: Michal Wajdeczko > > Cc: Oded Gabbay > > Cc: Rodrigo Vivi > > Cc: Joonas Lahtinen > > Cc: Tvrtko Ursulin > > Cc: Daniel Vetter > > --- > > Documentation/gpu/rfc/index.rst | 5 + > > Documentation/gpu/rfc/sysfs-driver-xe-sriov | 501 > > > > Documentation/gpu/rfc/xe_sriov.rst | 192 > > 3 files changed, 698 insertions(+) > > create mode 100644 Documentation/gpu/rfc/sysfs-driver-xe-sriov > > create mode 100644 Documentation/gpu/rfc/xe_sriov.rst > > > > diff --git a/Documentation/gpu/rfc/index.rst > > b/Documentation/gpu/rfc/index.rst > > index e4f7b005138d..fc5bc447f30d 100644 > > --- a/Documentation/gpu/rfc/index.rst > > +++ b/Documentation/gpu/rfc/index.rst > > @@ -35,3 +35,8 @@ host such documentation: > > .. toctree:: > > > > xe.rst > > + > > +.. toctree:: > > + :maxdepth: 1 > > + > > + xe_sriov.rst > > diff --git a/Documentation/gpu/rfc/sysfs-driver-xe-sriov > > b/Documentation/gpu/rfc/sysfs-driver-xe-sriov > > new file mode 100644 > > index ..77748204dd83 > > --- /dev/null > > +++ b/Documentation/gpu/rfc/sysfs-driver-xe-sriov > > @@ -0,0 +1,501 @@ > > +.. Documentation/ABI/testing/sysfs-driver-xe-sriov > > +.. > > +.. Intel Xe driver ABI (SR-IOV extensions) > > +.. > > + The Single Root I/O Virtualization (SR-IOV) extension to > > + the PCI Express (PCIe) specification suite is supported > > + starting from 12th generation of Intel Graphics processors. > > + > > + This document describes Xe driver specific additions. > > + > > + For description of generic SR-IOV sysfs attributes see > > + "Documentation/ABI/testing/sysfs-bus-pci" document. > > + > > + /sys/bus/pci/drivers/xe/BDF/ > > + ├── sriov_auto_provisioning > > + │ ├── admin_mode > > + │ ├── enabled > > + │ ├── reset_defaults > > + │ ├── resources > > + │ │ ├── default_contexts_quota > > + │ │ ├── default_doorbells_quota > > + │ │ ├── default_ggtt_quota > > + │ │ └── default_lmem_quota > > + │ ├── scheduling > > + │ │ ├── default_exec_quantum_ms > > + │ │ └── default_preempt_timeout_us > > + │ └── monitoring > > + │ ├── default_cat_error_count > > + │ ├── default_doorbell_time_us > > + │ ├── default_engine_reset_count > > + │ ├── default_h2g_time_us > > + │ ├── default_irq_time_us > > + │ └── default_page_fault_count > > From the department of bike-shedding, one alternative could be to > have > a directory called defaults which avoids having to have the default_ > prefix on everything under it. good idea. probably with a '.' prefix to make it hidden like we have for other stuff already. '.defaults' > > > + > > + /sys/bus/pci/drivers/xe/BDF/ > > + ├── sriov_extensions > > Should this be xe_sriov_extensions or if not doesn't it need > agreement > to reserve the keyword in Documentation/ABI/testing/sysfs-bus-pci? > Sriov_auto_provisioning too I guess. > > > + │ ├── monitoring_period_ms > > + │ ├── strict_scheduling_enabled > > + │ ├── pf > > + │ │ ├── device -> ../../../BDF > > + │ │ ├── priority > > + │ │ ├── tile0 > > + │ │ │ ├── gt0 > > + │ │ │ │ ├── exec_quantum_ms > > + │ │ │ │ ├── preempt_timeout_us > > + │ │ │ │ └── thresholds > > + │ │ │ │ ├── cat_error_count > > + │ │ │ │ ├── doorbell_time_us > > + │ │ │ │ ├── engine_reset_count > > + │ │ │ │ ├── h2g_time_us > > + │ │ │ │ ├── irq_time_us > > + │ │ │ │ └── page_fault_count > > + │ │ │ └── gtX > > + │ │ └── tileT > > + │ ├── vf1 > > + │ │ ├── device -> ../../../BDF+1 > > + │ │ ├── stop > > + │ │ ├── tile0 > > + │ │ │ ├── ggtt_quota > > + │ │ │ ├── lmem_quota > > + │ │ │ ├── gt0 > > + │ │ │ │ ├── contexts_quota > > + │ │ │ │ ├── doorbells_quota > > + │ │ │ │ ├── exec_quantum_ms > > + │ │ │ │ ├── preempt_timeout_us > > + │ │ │ │ └── thresholds > > + │ │ │ │ ├── cat_error_count > > + │ │ │ │ ├── doorbell_time_us > > + │ │ │ │ ├── engine_reset_count > > + │ │ │ │ ├── h2g_time_us > > + │ │ │ │ ├── irq_time_us > > + │ │ │ │ └── page_fault_count > > + │ │ │ └── gtX > > + │ │ └── tileT > > + │
Re: [PATCH] drm/doc/rfc: SR-IOV support on the new Xe driver
On 10/11/2023 18:22, Michal Wajdeczko wrote: The Single Root I/O Virtualization (SR-IOV) extension to the PCI Express (PCIe) specification suite is supported starting from 12th generation of Intel Graphics processors. This RFC aims to explain how do we want to add support for SR-IOV to the new Xe driver and to propose related additions to the sysfs. Signed-off-by: Michal Wajdeczko Cc: Oded Gabbay Cc: Rodrigo Vivi Cc: Joonas Lahtinen Cc: Tvrtko Ursulin Cc: Daniel Vetter --- Documentation/gpu/rfc/index.rst | 5 + Documentation/gpu/rfc/sysfs-driver-xe-sriov | 501 Documentation/gpu/rfc/xe_sriov.rst | 192 3 files changed, 698 insertions(+) create mode 100644 Documentation/gpu/rfc/sysfs-driver-xe-sriov create mode 100644 Documentation/gpu/rfc/xe_sriov.rst diff --git a/Documentation/gpu/rfc/index.rst b/Documentation/gpu/rfc/index.rst index e4f7b005138d..fc5bc447f30d 100644 --- a/Documentation/gpu/rfc/index.rst +++ b/Documentation/gpu/rfc/index.rst @@ -35,3 +35,8 @@ host such documentation: .. toctree:: xe.rst + +.. toctree:: + :maxdepth: 1 + + xe_sriov.rst diff --git a/Documentation/gpu/rfc/sysfs-driver-xe-sriov b/Documentation/gpu/rfc/sysfs-driver-xe-sriov new file mode 100644 index ..77748204dd83 --- /dev/null +++ b/Documentation/gpu/rfc/sysfs-driver-xe-sriov @@ -0,0 +1,501 @@ +.. Documentation/ABI/testing/sysfs-driver-xe-sriov +.. +.. Intel Xe driver ABI (SR-IOV extensions) +.. +The Single Root I/O Virtualization (SR-IOV) extension to +the PCI Express (PCIe) specification suite is supported +starting from 12th generation of Intel Graphics processors. + +This document describes Xe driver specific additions. + +For description of generic SR-IOV sysfs attributes see +"Documentation/ABI/testing/sysfs-bus-pci" document. + +/sys/bus/pci/drivers/xe/BDF/ +├── sriov_auto_provisioning +│ ├── admin_mode +│ ├── enabled +│ ├── reset_defaults +│ ├── resources +│ │ ├── default_contexts_quota +│ │ ├── default_doorbells_quota +│ │ ├── default_ggtt_quota +│ │ └── default_lmem_quota +│ ├── scheduling +│ │ ├── default_exec_quantum_ms +│ │ └── default_preempt_timeout_us +│ └── monitoring +│ ├── default_cat_error_count +│ ├── default_doorbell_time_us +│ ├── default_engine_reset_count +│ ├── default_h2g_time_us +│ ├── default_irq_time_us +│ └── default_page_fault_count From the department of bike-shedding, one alternative could be to have a directory called defaults which avoids having to have the default_ prefix on everything under it. + +/sys/bus/pci/drivers/xe/BDF/ +├── sriov_extensions Should this be xe_sriov_extensions or if not doesn't it need agreement to reserve the keyword in Documentation/ABI/testing/sysfs-bus-pci? Sriov_auto_provisioning too I guess. +│ ├── monitoring_period_ms +│ ├── strict_scheduling_enabled +│ ├── pf +│ │ ├── device -> ../../../BDF +│ │ ├── priority +│ │ ├── tile0 +│ │ │ ├── gt0 +│ │ │ │ ├── exec_quantum_ms +│ │ │ │ ├── preempt_timeout_us +│ │ │ │ └── thresholds +│ │ │ │ ├── cat_error_count +│ │ │ │ ├── doorbell_time_us +│ │ │ │ ├── engine_reset_count +│ │ │ │ ├── h2g_time_us +│ │ │ │ ├── irq_time_us +│ │ │ │ └── page_fault_count +│ │ │ └── gtX +│ │ └── tileT +│ ├── vf1 +│ │ ├── device -> ../../../BDF+1 +│ │ ├── stop +│ │ ├── tile0 +│ │ │ ├── ggtt_quota +│ │ │ ├── lmem_quota +│ │ │ ├── gt0 +│ │ │ │ ├── contexts_quota +│ │ │ │ ├── doorbells_quota +│ │ │ │ ├── exec_quantum_ms +│ │ │ │ ├── preempt_timeout_us +│ │ │ │ └── thresholds +│ │ │ │ ├── cat_error_count +│ │ │ │ ├── doorbell_time_us +│ │ │ │ ├── engine_reset_count +│ │ │ │ ├── h2g_time_us +│ │ │ │ ├── irq_time_us +│ │ │ │ └── page_fault_count +│ │ │ └── gtX +│ │ └── tileT +│ └── vfN +.. + + +What: /sys/bus/pci/drivers/xe/.../sriov_auto_provisioning/ +Date: 2024 +KernelVersion: TBD +Contact: intel...@lists.freedesktop.org +Description: + This directory appears on the device when: + +- device supports SR-IOV, and +- device is a Physical Function (PF), and +- xe driver supports SR-IOV PF on given device, and +- xe driver supports automatic VFs provisioning. + + This directory is used as a root for all attributes related to + automatic provisioning of SR-IOV Physical Function (PF) and/or +
Re: [Intel-xe] [PATCH] drm/doc/rfc: SR-IOV support on the new Xe driver
On 14.11.2023 11:08, Francois Dugast wrote: > On Fri, Nov 10, 2023 at 07:22:31PM +0100, Michal Wajdeczko wrote: >> The Single Root I/O Virtualization (SR-IOV) extension to the PCI >> Express (PCIe) specification suite is supported starting from 12th >> generation of Intel Graphics processors. >> >> This RFC aims to explain how do we want to add support for SR-IOV >> to the new Xe driver and to propose related additions to the sysfs. >> >> Signed-off-by: Michal Wajdeczko >> Cc: Oded Gabbay >> Cc: Rodrigo Vivi >> Cc: Joonas Lahtinen >> Cc: Tvrtko Ursulin >> Cc: Daniel Vetter >> --- >> Documentation/gpu/rfc/index.rst | 5 + >> Documentation/gpu/rfc/sysfs-driver-xe-sriov | 501 >> Documentation/gpu/rfc/xe_sriov.rst | 192 >> 3 files changed, 698 insertions(+) >> create mode 100644 Documentation/gpu/rfc/sysfs-driver-xe-sriov >> create mode 100644 Documentation/gpu/rfc/xe_sriov.rst >> >> diff --git a/Documentation/gpu/rfc/index.rst >> b/Documentation/gpu/rfc/index.rst >> index e4f7b005138d..fc5bc447f30d 100644 >> --- a/Documentation/gpu/rfc/index.rst >> +++ b/Documentation/gpu/rfc/index.rst >> @@ -35,3 +35,8 @@ host such documentation: >> .. toctree:: >> >> xe.rst >> + >> +.. toctree:: >> + :maxdepth: 1 >> + >> + xe_sriov.rst >> diff --git a/Documentation/gpu/rfc/sysfs-driver-xe-sriov >> b/Documentation/gpu/rfc/sysfs-driver-xe-sriov >> new file mode 100644 >> index ..77748204dd83 >> --- /dev/null >> +++ b/Documentation/gpu/rfc/sysfs-driver-xe-sriov >> @@ -0,0 +1,501 @@ >> +.. Documentation/ABI/testing/sysfs-driver-xe-sriov >> +.. >> +.. Intel Xe driver ABI (SR-IOV extensions) >> +.. >> +The Single Root I/O Virtualization (SR-IOV) extension to >> +the PCI Express (PCIe) specification suite is supported >> +starting from 12th generation of Intel Graphics processors. >> + >> +This document describes Xe driver specific additions. >> + >> +For description of generic SR-IOV sysfs attributes see >> +"Documentation/ABI/testing/sysfs-bus-pci" document. >> + >> +/sys/bus/pci/drivers/xe/BDF/ >> +├── sriov_auto_provisioning >> +│ ├── admin_mode >> +│ ├── enabled >> +│ ├── reset_defaults >> +│ ├── resources >> +│ │ ├── default_contexts_quota >> +│ │ ├── default_doorbells_quota >> +│ │ ├── default_ggtt_quota >> +│ │ └── default_lmem_quota >> +│ ├── scheduling >> +│ │ ├── default_exec_quantum_ms >> +│ │ └── default_preempt_timeout_us >> +│ └── monitoring >> +│ ├── default_cat_error_count >> +│ ├── default_doorbell_time_us >> +│ ├── default_engine_reset_count >> +│ ├── default_h2g_time_us >> +│ ├── default_irq_time_us >> +│ └── default_page_fault_count >> + >> +/sys/bus/pci/drivers/xe/BDF/ >> +├── sriov_extensions >> +│ ├── monitoring_period_ms >> +│ ├── strict_scheduling_enabled >> +│ ├── pf >> +│ │ ├── device -> ../../../BDF >> +│ │ ├── priority >> +│ │ ├── tile0 >> +│ │ │ ├── gt0 >> +│ │ │ │ ├── exec_quantum_ms >> +│ │ │ │ ├── preempt_timeout_us >> +│ │ │ │ └── thresholds >> +│ │ │ │ ├── cat_error_count >> +│ │ │ │ ├── doorbell_time_us >> +│ │ │ │ ├── engine_reset_count >> +│ │ │ │ ├── h2g_time_us >> +│ │ │ │ ├── irq_time_us >> +│ │ │ │ └── page_fault_count >> +│ │ │ └── gtX >> +│ │ └── tileT >> +│ ├── vf1 >> +│ │ ├── device -> ../../../BDF+1 >> +│ │ ├── stop >> +│ │ ├── tile0 >> +│ │ │ ├── ggtt_quota >> +│ │ │ ├── lmem_quota >> +│ │ │ ├── gt0 >> +│ │ │ │ ├── contexts_quota >> +│ │ │ │ ├── doorbells_quota >> +│ │ │ │ ├── exec_quantum_ms >> +│ │ │ │ ├── preempt_timeout_us >> +│ │ │ │ └── thresholds >> +│ │ │ │ ├── cat_error_count >> +│ │ │ │ ├── doorbell_time_us >> +│ │ │ │ ├── engine_reset_count >> +│ │ │ │ ├── h2g_time_us >> +│ │ │ │ ├── irq_time_us >> +│ │ │ │ └── page_fault_count >> +│ │ │ └── gtX >> +│ │ └── tileT >> +│ └── vfN >> +.. >> + >> + >> +What: /sys/bus/pci/drivers/xe/.../sriov_auto_provisioning/ >> +Date: 2024 >> +KernelVersion: TBD >> +Contact:intel...@lists.freedesktop.org >> +Description: >> +This directory appears on the device when: >> + >> + - device supports SR-IOV, and >> + - device is a Physical Function (PF), and >> + - xe driver supports SR-IOV PF on given device, and >> + - xe driver supports automatic VFs provisioning. >> + >> +This directory is used as a root for all attributes related
Re: [Intel-xe] [PATCH] drm/doc/rfc: SR-IOV support on the new Xe driver
On Fri, Nov 10, 2023 at 07:22:31PM +0100, Michal Wajdeczko wrote: > The Single Root I/O Virtualization (SR-IOV) extension to the PCI > Express (PCIe) specification suite is supported starting from 12th > generation of Intel Graphics processors. > > This RFC aims to explain how do we want to add support for SR-IOV > to the new Xe driver and to propose related additions to the sysfs. > > Signed-off-by: Michal Wajdeczko > Cc: Oded Gabbay > Cc: Rodrigo Vivi > Cc: Joonas Lahtinen > Cc: Tvrtko Ursulin > Cc: Daniel Vetter > --- > Documentation/gpu/rfc/index.rst | 5 + > Documentation/gpu/rfc/sysfs-driver-xe-sriov | 501 > Documentation/gpu/rfc/xe_sriov.rst | 192 > 3 files changed, 698 insertions(+) > create mode 100644 Documentation/gpu/rfc/sysfs-driver-xe-sriov > create mode 100644 Documentation/gpu/rfc/xe_sriov.rst > > diff --git a/Documentation/gpu/rfc/index.rst b/Documentation/gpu/rfc/index.rst > index e4f7b005138d..fc5bc447f30d 100644 > --- a/Documentation/gpu/rfc/index.rst > +++ b/Documentation/gpu/rfc/index.rst > @@ -35,3 +35,8 @@ host such documentation: > .. toctree:: > > xe.rst > + > +.. toctree:: > + :maxdepth: 1 > + > + xe_sriov.rst > diff --git a/Documentation/gpu/rfc/sysfs-driver-xe-sriov > b/Documentation/gpu/rfc/sysfs-driver-xe-sriov > new file mode 100644 > index ..77748204dd83 > --- /dev/null > +++ b/Documentation/gpu/rfc/sysfs-driver-xe-sriov > @@ -0,0 +1,501 @@ > +.. Documentation/ABI/testing/sysfs-driver-xe-sriov > +.. > +.. Intel Xe driver ABI (SR-IOV extensions) > +.. > +The Single Root I/O Virtualization (SR-IOV) extension to > +the PCI Express (PCIe) specification suite is supported > +starting from 12th generation of Intel Graphics processors. > + > +This document describes Xe driver specific additions. > + > +For description of generic SR-IOV sysfs attributes see > +"Documentation/ABI/testing/sysfs-bus-pci" document. > + > +/sys/bus/pci/drivers/xe/BDF/ > +├── sriov_auto_provisioning > +│ ├── admin_mode > +│ ├── enabled > +│ ├── reset_defaults > +│ ├── resources > +│ │ ├── default_contexts_quota > +│ │ ├── default_doorbells_quota > +│ │ ├── default_ggtt_quota > +│ │ └── default_lmem_quota > +│ ├── scheduling > +│ │ ├── default_exec_quantum_ms > +│ │ └── default_preempt_timeout_us > +│ └── monitoring > +│ ├── default_cat_error_count > +│ ├── default_doorbell_time_us > +│ ├── default_engine_reset_count > +│ ├── default_h2g_time_us > +│ ├── default_irq_time_us > +│ └── default_page_fault_count > + > +/sys/bus/pci/drivers/xe/BDF/ > +├── sriov_extensions > +│ ├── monitoring_period_ms > +│ ├── strict_scheduling_enabled > +│ ├── pf > +│ │ ├── device -> ../../../BDF > +│ │ ├── priority > +│ │ ├── tile0 > +│ │ │ ├── gt0 > +│ │ │ │ ├── exec_quantum_ms > +│ │ │ │ ├── preempt_timeout_us > +│ │ │ │ └── thresholds > +│ │ │ │ ├── cat_error_count > +│ │ │ │ ├── doorbell_time_us > +│ │ │ │ ├── engine_reset_count > +│ │ │ │ ├── h2g_time_us > +│ │ │ │ ├── irq_time_us > +│ │ │ │ └── page_fault_count > +│ │ │ └── gtX > +│ │ └── tileT > +│ ├── vf1 > +│ │ ├── device -> ../../../BDF+1 > +│ │ ├── stop > +│ │ ├── tile0 > +│ │ │ ├── ggtt_quota > +│ │ │ ├── lmem_quota > +│ │ │ ├── gt0 > +│ │ │ │ ├── contexts_quota > +│ │ │ │ ├── doorbells_quota > +│ │ │ │ ├── exec_quantum_ms > +│ │ │ │ ├── preempt_timeout_us > +│ │ │ │ └── thresholds > +│ │ │ │ ├── cat_error_count > +│ │ │ │ ├── doorbell_time_us > +│ │ │ │ ├── engine_reset_count > +│ │ │ │ ├── h2g_time_us > +│ │ │ │ ├── irq_time_us > +│ │ │ │ └── page_fault_count > +│ │ │ └── gtX > +│ │ └── tileT > +│ └── vfN > +.. > + > + > +What:/sys/bus/pci/drivers/xe/.../sriov_auto_provisioning/ > +Date:2024 > +KernelVersion: TBD > +Contact: intel...@lists.freedesktop.org > +Description: > + This directory appears on the device when: > + > + - device supports SR-IOV, and > + - device is a Physical Function (PF), and > + - xe driver supports SR-IOV PF on given device, and > + - xe driver supports automatic VFs provisioning. > + > + This directory is used as a root for all attributes related to > + automatic provisioning of SR-IOV Physical Function (PF) and/or > + Virtual Functions (VFs). > + > + > +What: >
[PATCH] drm/doc/rfc: SR-IOV support on the new Xe driver
The Single Root I/O Virtualization (SR-IOV) extension to the PCI Express (PCIe) specification suite is supported starting from 12th generation of Intel Graphics processors. This RFC aims to explain how do we want to add support for SR-IOV to the new Xe driver and to propose related additions to the sysfs. Signed-off-by: Michal Wajdeczko Cc: Oded Gabbay Cc: Rodrigo Vivi Cc: Joonas Lahtinen Cc: Tvrtko Ursulin Cc: Daniel Vetter --- Documentation/gpu/rfc/index.rst | 5 + Documentation/gpu/rfc/sysfs-driver-xe-sriov | 501 Documentation/gpu/rfc/xe_sriov.rst | 192 3 files changed, 698 insertions(+) create mode 100644 Documentation/gpu/rfc/sysfs-driver-xe-sriov create mode 100644 Documentation/gpu/rfc/xe_sriov.rst diff --git a/Documentation/gpu/rfc/index.rst b/Documentation/gpu/rfc/index.rst index e4f7b005138d..fc5bc447f30d 100644 --- a/Documentation/gpu/rfc/index.rst +++ b/Documentation/gpu/rfc/index.rst @@ -35,3 +35,8 @@ host such documentation: .. toctree:: xe.rst + +.. toctree:: + :maxdepth: 1 + + xe_sriov.rst diff --git a/Documentation/gpu/rfc/sysfs-driver-xe-sriov b/Documentation/gpu/rfc/sysfs-driver-xe-sriov new file mode 100644 index ..77748204dd83 --- /dev/null +++ b/Documentation/gpu/rfc/sysfs-driver-xe-sriov @@ -0,0 +1,501 @@ +.. Documentation/ABI/testing/sysfs-driver-xe-sriov +.. +.. Intel Xe driver ABI (SR-IOV extensions) +.. +The Single Root I/O Virtualization (SR-IOV) extension to +the PCI Express (PCIe) specification suite is supported +starting from 12th generation of Intel Graphics processors. + +This document describes Xe driver specific additions. + +For description of generic SR-IOV sysfs attributes see +"Documentation/ABI/testing/sysfs-bus-pci" document. + +/sys/bus/pci/drivers/xe/BDF/ +├── sriov_auto_provisioning +│ ├── admin_mode +│ ├── enabled +│ ├── reset_defaults +│ ├── resources +│ │ ├── default_contexts_quota +│ │ ├── default_doorbells_quota +│ │ ├── default_ggtt_quota +│ │ └── default_lmem_quota +│ ├── scheduling +│ │ ├── default_exec_quantum_ms +│ │ └── default_preempt_timeout_us +│ └── monitoring +│ ├── default_cat_error_count +│ ├── default_doorbell_time_us +│ ├── default_engine_reset_count +│ ├── default_h2g_time_us +│ ├── default_irq_time_us +│ └── default_page_fault_count + +/sys/bus/pci/drivers/xe/BDF/ +├── sriov_extensions +│ ├── monitoring_period_ms +│ ├── strict_scheduling_enabled +│ ├── pf +│ │ ├── device -> ../../../BDF +│ │ ├── priority +│ │ ├── tile0 +│ │ │ ├── gt0 +│ │ │ │ ├── exec_quantum_ms +│ │ │ │ ├── preempt_timeout_us +│ │ │ │ └── thresholds +│ │ │ │ ├── cat_error_count +│ │ │ │ ├── doorbell_time_us +│ │ │ │ ├── engine_reset_count +│ │ │ │ ├── h2g_time_us +│ │ │ │ ├── irq_time_us +│ │ │ │ └── page_fault_count +│ │ │ └── gtX +│ │ └── tileT +│ ├── vf1 +│ │ ├── device -> ../../../BDF+1 +│ │ ├── stop +│ │ ├── tile0 +│ │ │ ├── ggtt_quota +│ │ │ ├── lmem_quota +│ │ │ ├── gt0 +│ │ │ │ ├── contexts_quota +│ │ │ │ ├── doorbells_quota +│ │ │ │ ├── exec_quantum_ms +│ │ │ │ ├── preempt_timeout_us +│ │ │ │ └── thresholds +│ │ │ │ ├── cat_error_count +│ │ │ │ ├── doorbell_time_us +│ │ │ │ ├── engine_reset_count +│ │ │ │ ├── h2g_time_us +│ │ │ │ ├── irq_time_us +│ │ │ │ └── page_fault_count +│ │ │ └── gtX +│ │ └── tileT +│ └── vfN +.. + + +What: /sys/bus/pci/drivers/xe/.../sriov_auto_provisioning/ +Date: 2024 +KernelVersion: TBD +Contact: intel...@lists.freedesktop.org +Description: + This directory appears on the device when: + +- device supports SR-IOV, and +- device is a Physical Function (PF), and +- xe driver supports SR-IOV PF on given device, and +- xe driver supports automatic VFs provisioning. + + This directory is used as a root for all attributes related to + automatic provisioning of SR-IOV Physical Function (PF) and/or + Virtual Functions (VFs). + + +What: /sys/bus/pci/drivers/xe/.../sriov_auto_provisioning/enabled +Date: 2024 +KernelVersion: TBD +Contact: intel...@lists.freedesktop.org +Description: + (RW) bool (0, 1) + + This file represents configuration flag for the automatic VFs + (un)provisioning that could be performed by the PF. + +