Merge "Simplify slicing related structs." am: df3a0dcaeb
am: d05c09e504
Original change: https://android-review.googlesource.com/c/platform/hardware/interfaces/+/1626964 MUST ONLY BE SUBMITTED BY AUTOMERGER Change-Id: I9ce6285fb11973d35a2cc520b8033619ca5c16a5
This commit is contained in:
commit
01650d6992
1 changed files with 14 additions and 44 deletions
|
@ -878,6 +878,11 @@ struct SliceInfo {
|
|||
* see: 3GPP TS 24.501 Section 9.11.2.8.
|
||||
*/
|
||||
int32_t mappedHplmnSD;
|
||||
|
||||
/**
|
||||
* Field to indicate the current status of the slice.
|
||||
*/
|
||||
SliceStatus status;
|
||||
};
|
||||
|
||||
/**
|
||||
|
@ -984,9 +989,9 @@ struct SlicingConfig {
|
|||
*/
|
||||
vec<UrspRule> urspRules;
|
||||
/**
|
||||
* Struct containing all NSSAIs (list of slice info).
|
||||
* List of all slices.
|
||||
*/
|
||||
Nssais nssais;
|
||||
vec<SliceInfo> sliceInfo;
|
||||
};
|
||||
|
||||
/**
|
||||
|
@ -1009,7 +1014,6 @@ struct UrspRule {
|
|||
vec<RouteSelectionDescriptor> routeSelectionDescriptor;
|
||||
};
|
||||
|
||||
|
||||
/**
|
||||
* This struct represents a single route selection descriptor as defined in
|
||||
* 3GPP TS 24.526.
|
||||
|
@ -1065,47 +1069,13 @@ safe_union OptionalSscMode {
|
|||
SscMode value;
|
||||
};
|
||||
|
||||
/**
|
||||
* This struct contains all NSSAIs (lists of slices).
|
||||
*/
|
||||
struct Nssais {
|
||||
/**
|
||||
* These are all the slices configured by the network. This includes allowed
|
||||
* and rejected slices, as well as slices that are neither allowed nor rejected
|
||||
* yet. Empty vector indicates that no slices are configured, and in that case
|
||||
* allowed and rejected vectors must be empty as well.
|
||||
*/
|
||||
vec<SliceInfo> configured;
|
||||
/**
|
||||
* These are all the slices that the UE is allowed to use. All these slices
|
||||
* must be configured as well. Empty vector indicates that no slices are
|
||||
* allowed yet.
|
||||
*/
|
||||
vec<SliceInfo> allowed;
|
||||
/**
|
||||
* These are all the slices that the UE is not allowed to use. All these slices
|
||||
* must be configured as well. Empty vector indicates that no slices are
|
||||
* rejected yet.
|
||||
*/
|
||||
vec<RejectedSliceInfo> rejected;
|
||||
/**
|
||||
* Default configured NSSAI
|
||||
*/
|
||||
vec<SliceInfo> defaultConfigured;
|
||||
};
|
||||
|
||||
/**
|
||||
* This struct represents a network slice rejected by the network. It contains a
|
||||
* rejectionCause corresponding to a rejected network slice.
|
||||
*/
|
||||
struct RejectedSliceInfo {
|
||||
SliceInfo sliceInfo;
|
||||
SliceRejectionCause rejectionCause;
|
||||
};
|
||||
|
||||
enum SliceRejectionCause : int32_t {
|
||||
NOT_AVAILABLE_IN_PLMN,
|
||||
NOT_AVAILABLE_IN_REG_AREA,
|
||||
enum SliceStatus : int32_t {
|
||||
UNKNOWN,
|
||||
CONFIGURED, // Configured but not allowed or rejected yet
|
||||
ALLOWED, // Allowed to be used
|
||||
REJECTED_NOT_AVAILABLE_IN_PLMN, // Rejected because not available in PLMN
|
||||
REJECTED_NOT_AVAILABLE_IN_REG_AREA, // Rejected because not available in reg area
|
||||
DEFAULT_CONFIGURED, // Considered valid when configured/allowed slices are not available
|
||||
};
|
||||
|
||||
/**
|
||||
|
|
Loading…
Reference in a new issue