fectypes

package
v0.0.0-...-8c81107 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 22, 2024 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Overview

Package v1 contains API Schema definitions for the sriovfec v1 API group +kubebuilder:object:generate=true +groupName=sriovfec.intel.com

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "sriovfec.intel.com", Version: "v1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

This section is empty.

Types

type ACC100BBDevConfig

type ACC100BBDevConfig struct {
	PFMode bool `json:"pfMode"`
	// +kubebuilder:validation:Minimum=16
	// +kubebuilder:validation:Maximum=16
	NumVfBundles int `json:"numVfBundles"`
	// +kubebuilder:validation:Minimum=1024
	// +kubebuilder:validation:Maximum=1024
	MaxQueueSize int              `json:"maxQueueSize"`
	Uplink4G     QueueGroupConfig `json:"uplink4G"`
	Downlink4G   QueueGroupConfig `json:"downlink4G"`
	Uplink5G     QueueGroupConfig `json:"uplink5G"`
	Downlink5G   QueueGroupConfig `json:"downlink5G"`
}

ACC100BBDevConfig specifies variables to configure ACC100 with

func (*ACC100BBDevConfig) DeepCopy

func (in *ACC100BBDevConfig) DeepCopy() *ACC100BBDevConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ACC100BBDevConfig.

func (*ACC100BBDevConfig) DeepCopyInto

func (in *ACC100BBDevConfig) DeepCopyInto(out *ACC100BBDevConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BBDevConfig

type BBDevConfig struct {
	N3000  *N3000BBDevConfig  `json:"n3000,omitempty"`
	ACC100 *ACC100BBDevConfig `json:"acc100,omitempty"`
}

BBDevConfig is a struct containing configuration for various FEC cards

func (*BBDevConfig) DeepCopy

func (in *BBDevConfig) DeepCopy() *BBDevConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BBDevConfig.

func (*BBDevConfig) DeepCopyInto

func (in *BBDevConfig) DeepCopyInto(out *BBDevConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type N3000BBDevConfig

type N3000BBDevConfig struct {
	// +kubebuilder:validation:Enum=FPGA_5GNR;FPGA_LTE
	NetworkType string `json:"networkType"`
	PFMode      bool   `json:"pfMode"`
	// +kubebuilder:validation:Minimum=0
	FLRTimeOut int            `json:"flrTimeout"`
	Downlink   UplinkDownlink `json:"downlink"`
	Uplink     UplinkDownlink `json:"uplink"`
}

N3000BBDevConfig specifies variables to configure N3000 with

func (*N3000BBDevConfig) DeepCopy

func (in *N3000BBDevConfig) DeepCopy() *N3000BBDevConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new N3000BBDevConfig.

func (*N3000BBDevConfig) DeepCopyInto

func (in *N3000BBDevConfig) DeepCopyInto(out *N3000BBDevConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeConfig

type NodeConfig struct {
	// Name of the node
	NodeName string `json:"nodeName"`
	// List of physical functions (cards) configs
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	PhysicalFunctions []PhysicalFunctionConfig `json:"physicalFunctions"`
}

func (*NodeConfig) DeepCopy

func (in *NodeConfig) DeepCopy() *NodeConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeConfig.

func (*NodeConfig) DeepCopyInto

func (in *NodeConfig) DeepCopyInto(out *NodeConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeInventory

type NodeInventory struct {
	SriovAccelerators []SriovAccelerator `json:"sriovAccelerators,omitempty"`
}

func (*NodeInventory) DeepCopy

func (in *NodeInventory) DeepCopy() *NodeInventory

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeInventory.

func (*NodeInventory) DeepCopyInto

func (in *NodeInventory) DeepCopyInto(out *NodeInventory)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PhysicalFunctionConfig

type PhysicalFunctionConfig struct {
	// PCIAdress is a Physical Functions's PCI address that will be configured according to this spec
	// +kubebuilder:validation:Pattern=`^[a-fA-F0-9]{4}:[a-fA-F0-9]{2}:[01][a-fA-F0-9]\.[0-7]$`
	PCIAddress string `json:"pciAddress"`
	// PFDriver to bound the PFs to
	PFDriver string `json:"pfDriver"`
	// VFDriver to bound the VFs to
	VFDriver string `json:"vfDriver"`
	// VFAmount is an amount of VFs to be created
	// +kubebuilder:validation:Minimum=0
	VFAmount int `json:"vfAmount"`
	// BBDevConfig is a config for PF's queues
	BBDevConfig BBDevConfig `json:"bbDevConfig"`
}

PhysicalFunctionConfig defines a possible configuration of a single Physical Function (PF), i.e. card

func (*PhysicalFunctionConfig) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PhysicalFunctionConfig.

func (*PhysicalFunctionConfig) DeepCopyInto

func (in *PhysicalFunctionConfig) DeepCopyInto(out *PhysicalFunctionConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type QueueGroupConfig

type QueueGroupConfig struct {
	// +kubebuilder:validation:Minimum=0
	// +kubebuilder:validation:Maximum=8
	NumQueueGroups int `json:"numQueueGroups"`
	// +kubebuilder:validation:Minimum=16
	// +kubebuilder:validation:Maximum=16
	NumAqsPerGroups int `json:"numAqsPerGroups"`
	// +kubebuilder:validation:Minimum=4
	// +kubebuilder:validation:Maximum=4
	AqDepthLog2 int `json:"aqDepthLog2"`
}

func (*QueueGroupConfig) DeepCopy

func (in *QueueGroupConfig) DeepCopy() *QueueGroupConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new QueueGroupConfig.

func (*QueueGroupConfig) DeepCopyInto

func (in *QueueGroupConfig) DeepCopyInto(out *QueueGroupConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SriovAccelerator

type SriovAccelerator struct {
	VendorID   string `json:"vendorID"`
	DeviceID   string `json:"deviceID"`
	PCIAddress string `json:"pciAddress"`
	Driver     string `json:"driver"`
	MaxVFs     int    `json:"maxVirtualFunctions"`
	VFs        []VF   `json:"virtualFunctions"`
}

func (*SriovAccelerator) DeepCopy

func (in *SriovAccelerator) DeepCopy() *SriovAccelerator

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SriovAccelerator.

func (*SriovAccelerator) DeepCopyInto

func (in *SriovAccelerator) DeepCopyInto(out *SriovAccelerator)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SriovFecClusterConfig

type SriovFecClusterConfig struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   SriovFecClusterConfigSpec   `json:"spec,omitempty"`
	Status SriovFecClusterConfigStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="SyncStatus",type=string,JSONPath=`.status.syncStatus` +kubebuilder:unservedversion SriovFecClusterConfig is the Schema for the sriovfecclusterconfigs API +operator-sdk:csv:customresourcedefinitions:displayName="SriovFecClusterConfig",resources={{SriovFecNodeConfig,v1,node}}

func (*SriovFecClusterConfig) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SriovFecClusterConfig.

func (*SriovFecClusterConfig) DeepCopyInto

func (in *SriovFecClusterConfig) DeepCopyInto(out *SriovFecClusterConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SriovFecClusterConfig) DeepCopyObject

func (in *SriovFecClusterConfig) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type SriovFecClusterConfigList

type SriovFecClusterConfigList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []SriovFecClusterConfig `json:"items"`
}

SriovFecClusterConfigList contains a list of SriovFecClusterConfig

func (*SriovFecClusterConfigList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SriovFecClusterConfigList.

func (*SriovFecClusterConfigList) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SriovFecClusterConfigList) DeepCopyObject

func (in *SriovFecClusterConfigList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type SriovFecClusterConfigSpec

type SriovFecClusterConfigSpec struct {
	// List of node configurations
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	Nodes     []NodeConfig `json:"nodes"`
	DrainSkip bool         `json:"drainSkip,omitempty"`
}

SriovFecClusterConfigSpec defines the desired state of SriovFecClusterConfig

func (*SriovFecClusterConfigSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SriovFecClusterConfigSpec.

func (*SriovFecClusterConfigSpec) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SriovFecClusterConfigStatus

type SriovFecClusterConfigStatus struct {
	// Indicates the synchronization status of the CR
	// +operator-sdk:csv:customresourcedefinitions:type=status
	SyncStatus    SyncStatus `json:"syncStatus,omitempty"`
	LastSyncError string     `json:"lastSyncError,omitempty"`
}

SriovFecClusterConfigStatus defines the observed state of SriovFecClusterConfig

func (*SriovFecClusterConfigStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SriovFecClusterConfigStatus.

func (*SriovFecClusterConfigStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SriovFecNodeConfig

type SriovFecNodeConfig struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   SriovFecNodeConfigSpec   `json:"spec,omitempty"`
	Status SriovFecNodeConfigStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Configured",type=string,JSONPath=`.status.conditions[?(@.type=="Configured")].reason` +kubebuilder:unservedversion SriovFecNodeConfig is the Schema for the sriovfecnodeconfigs API +operator-sdk:csv:customresourcedefinitions:displayName="SriovFecNodeConfig",resources={{SriovFecNodeConfig,v1,node}}

func (*SriovFecNodeConfig) DeepCopy

func (in *SriovFecNodeConfig) DeepCopy() *SriovFecNodeConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SriovFecNodeConfig.

func (*SriovFecNodeConfig) DeepCopyInto

func (in *SriovFecNodeConfig) DeepCopyInto(out *SriovFecNodeConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SriovFecNodeConfig) DeepCopyObject

func (in *SriovFecNodeConfig) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type SriovFecNodeConfigList

type SriovFecNodeConfigList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []SriovFecNodeConfig `json:"items"`
}

SriovFecNodeConfigList contains a list of SriovFecNodeConfig

func (*SriovFecNodeConfigList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SriovFecNodeConfigList.

func (*SriovFecNodeConfigList) DeepCopyInto

func (in *SriovFecNodeConfigList) DeepCopyInto(out *SriovFecNodeConfigList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*SriovFecNodeConfigList) DeepCopyObject

func (in *SriovFecNodeConfigList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type SriovFecNodeConfigSpec

type SriovFecNodeConfigSpec struct {
	// List of PhysicalFunctions configs
	// +operator-sdk:csv:customresourcedefinitions:type=spec
	PhysicalFunctions []PhysicalFunctionConfig `json:"physicalFunctions"`
	DrainSkip         bool                     `json:"drainSkip,omitempty"`
}

SriovFecNodeConfigSpec defines the desired state of SriovFecNodeConfig

func (*SriovFecNodeConfigSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SriovFecNodeConfigSpec.

func (*SriovFecNodeConfigSpec) DeepCopyInto

func (in *SriovFecNodeConfigSpec) DeepCopyInto(out *SriovFecNodeConfigSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SriovFecNodeConfigStatus

type SriovFecNodeConfigStatus struct {
	// Provides information about device update status
	Conditions []metav1.Condition `json:"conditions,omitempty"`
	// Provides information about FPGA inventory on the node
	// +operator-sdk:csv:customresourcedefinitions:type=status
	Inventory NodeInventory `json:"inventory,omitempty"`
}

SriovFecNodeConfigStatus defines the observed state of SriovFecNodeConfig

func (*SriovFecNodeConfigStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SriovFecNodeConfigStatus.

func (*SriovFecNodeConfigStatus) DeepCopyInto

func (in *SriovFecNodeConfigStatus) DeepCopyInto(out *SriovFecNodeConfigStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SyncStatus

type SyncStatus string
var (
	// InProgressSync indicates that the synchronization of the CR is in progress
	InProgressSync SyncStatus = "InProgress"
	// SucceededSync indicates that the synchronization of the CR succeeded
	SucceededSync SyncStatus = "Succeeded"
	// FailedSync indicates that the synchronization of the CR failed
	FailedSync SyncStatus = "Failed"
	// IgnoredSync indicates that the CR is ignored
	IgnoredSync SyncStatus = "Ignored"
)
type UplinkDownlink struct {
	// +kubebuilder:validation:Minimum=0
	Bandwidth int `json:"bandwidth"`
	// +kubebuilder:validation:Minimum=0
	LoadBalance int                  `json:"loadBalance"`
	Queues      UplinkDownlinkQueues `json:"queues"`
}

func (*UplinkDownlink) DeepCopy

func (in *UplinkDownlink) DeepCopy() *UplinkDownlink

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UplinkDownlink.

func (*UplinkDownlink) DeepCopyInto

func (in *UplinkDownlink) DeepCopyInto(out *UplinkDownlink)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UplinkDownlinkQueues

type UplinkDownlinkQueues struct {
	// +kubebuilder:validation:Minimum=0
	// +kubebuilder:validation:Maximum=32
	VF0 int `json:"vf0"`
	// +kubebuilder:validation:Minimum=0
	// +kubebuilder:validation:Maximum=32
	VF1 int `json:"vf1"`
	// +kubebuilder:validation:Minimum=0
	// +kubebuilder:validation:Maximum=32
	VF2 int `json:"vf2"`
	// +kubebuilder:validation:Minimum=0
	// +kubebuilder:validation:Maximum=32
	VF3 int `json:"vf3"`
	// +kubebuilder:validation:Minimum=0
	// +kubebuilder:validation:Maximum=32
	VF4 int `json:"vf4"`
	// +kubebuilder:validation:Minimum=0
	// +kubebuilder:validation:Maximum=32
	VF5 int `json:"vf5"`
	// +kubebuilder:validation:Minimum=0
	// +kubebuilder:validation:Maximum=32
	VF6 int `json:"vf6"`
	// +kubebuilder:validation:Minimum=0
	// +kubebuilder:validation:Maximum=32
	VF7 int `json:"vf7"`
}

func (*UplinkDownlinkQueues) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UplinkDownlinkQueues.

func (*UplinkDownlinkQueues) DeepCopyInto

func (in *UplinkDownlinkQueues) DeepCopyInto(out *UplinkDownlinkQueues)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*UplinkDownlinkQueues) String

func (udq *UplinkDownlinkQueues) String() string

type VF

type VF struct {
	PCIAddress string `json:"pciAddress"`
	Driver     string `json:"driver"`
	DeviceID   string `json:"deviceID"`
}

func (*VF) DeepCopy

func (in *VF) DeepCopy() *VF

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VF.

func (*VF) DeepCopyInto

func (in *VF) DeepCopyInto(out *VF)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL