diff --git a/ril/v1_4/IRil.idl b/ril/v1_4/IRil.idl
index d20470ee511b48ec1cf8e5c56df3fb7b746a2c4e..97e7398fdfc664b03318eb1009a111886487c0eb 100644
--- a/ril/v1_4/IRil.idl
+++ b/ril/v1_4/IRil.idl
@@ -45,6 +45,7 @@ package ohos.hdi.ril.v1_4;
import ohos.hdi.ril.v1_4.IRilCallback;
import ohos.hdi.ril.v1_3.IRil;
+import ohos.hdi.ril.v1_4.Types;
/**
* @brief Declares the request API of the RIL module.
@@ -68,5 +69,98 @@ interface IRil extends ohos.hdi.ril.v1_3.IRil {
* @version 1.0
*/
[oneway] SetCallback1_4([in] IRilCallback rilCallback);
+
+ /**
+ * @brief Send UePolicy Command result.
+ *
+ * @param slotId Card slot ID.
+ * @param serialId Serial ID of a request.
+ * @param msgbuffer
+ *
+ * @return Returns 0 if the operation is successful.
+ * @return Returns a non-0 value if the operation fails.
+ *
+ * @since 5.1
+ * @version 1.0
+ */
+ [oneway] SendUrspDecodeResult([in] int slotId, [in] int serialId,
+ [in] struct UePolicyDecodeResult uePolicyDecodeResult);
+
+ /**
+ * @brief Send UePolicy Section Identifier.
+ *
+ * @param slotId Card slot ID.
+ * @param serialId Serial ID of a request.
+ * @param msgbuffer
+ *
+ * @return Returns 0 if the operation is successful.
+ * @return Returns a non-0 value if the operation fails.
+ *
+ * @since 5.1
+ * @version 1.0
+ */
+ [oneway] SendUePolicySectionIdentifier([in] int slotId, [in] int serialId,
+ [in] struct UePolicySectionIdentifier uePolicySectionIdentifier);
+
+ /**
+ * @brief ImsRsdList.
+ *
+ * @param slotId Card slot ID.
+ * @param serialId Serial ID of a request.
+ * @param msgbuffer
+ *
+ * @return Returns 0 if the operation is successful.
+ * @return Returns a non-0 value if the operation fails.
+ *
+ * @since 5.1
+ * @version 1.0
+ */
+ [oneway] SendImsRsdList([in] int slotId, [in] int serialId, [in] struct ImsRsdList imsRsdList);
+
+ /**
+ * @brief GetNetworkSliceAllowedNssai.
+ *
+ * @param slotId Card slot ID.
+ * @param serialId Serial ID of a request.
+ * @param msgbuffer
+ *
+ * @return Returns 0 if the operation is successful.
+ * @return Returns a non-0 value if the operation fails.
+ *
+ * @since 5.1
+ * @version 1.0
+ */
+ [oneway] GetNetworkSliceAllowedNssai([in] int slotId, [in] int serialId,
+ [in] struct SyncAllowedNssaiInfo syncAllowedNssaiInfo);
+
+ /**
+ * @brief GetNetworkSliceEhplmn.
+ *
+ * @param slotId Card slot ID.
+ * @param serialId Serial ID of a request.
+ *
+ * @return Returns 0 if the operation is successful.
+ * @return Returns a non-0 value if the operation fails.
+ *
+ * @since 5.1
+ * @version 1.0
+ */
+ [oneway] GetNetworkSliceEhplmn([in] int slotId, [in] int serialId);
+
+ /**
+ * @brief Activates the packet data protocol (PDP) context.
+ *
+ * @param slotId Card slot ID.
+ * @param serialId Serial ID of a request.
+ * @param dataCallInfo Data service information with apn types. For details, see {@link DataCallInfoWithApnTypes}.
+ *
+ * @return Returns 0 if the operation is successful.
+ * @return Returns a non-0 value if the operation fails.
+ *
+ * @since 5.1
+ * @version 1.0
+ */
+ [oneway] ActivatePdpContextWithApnTypesforSlice([in] int slotId, [in] int serialId,
+ [in] struct DataCallInfoWithApnTypesforSlice dataCallInfo);
}
/** @} */
diff --git a/ril/v1_4/IRilCallback.idl b/ril/v1_4/IRilCallback.idl
index be2dc165a0720f7bc09bbc7fd5905027968f27fb..ae9f00fe8dd90d7e9fd21c2f5da9f5201fab1d1d 100644
--- a/ril/v1_4/IRilCallback.idl
+++ b/ril/v1_4/IRilCallback.idl
@@ -68,5 +68,44 @@ import ohos.hdi.ril.v1_4.Types;
*/
[oneway] GetCallListResponseExt([in] struct RilRadioResponseInfo responseInfo,
[in] struct CallInfoExtList callList);
+
+ /**
+ * @brief Reporting the ursp info.
+ *
+ * @param responseInfo Common response information, such as the card slot ID and request sequence ID. For details,
+ * see {@link RilRadioResponseInfo}.
+ * @param networksliceUrspInfo.
+ *
+ * @since 5.1
+ * @version 1.0
+ */
+ [oneway] NetworkSliceUrspRpt([in] struct RilRadioResponseInfo responseInfo,
+ [in] struct NetworkSliceUrspInfo networksliceUrspInfo);
+
+ /**
+ * @brief Reporting the allowed-nssai info.
+ *
+ * @param responseInfo Common response information, such as the card slot ID and request sequence ID. For details,
+ * see {@link RilRadioResponseInfo}.
+ * @param networksliceAllowedNssaiInfo.
+ *
+ * @since 5.1
+ * @version 1.0
+ */
+ [oneway] NetworkSliceAllowedNssaiRpt([in] struct RilRadioResponseInfo responseInfo,
+ [in] struct NetworkSliceAllowedNssaiInfo networksliceAllowedNssaiInfo);
+
+ /**
+ * @brief Reporting the ehplmn info.
+ *
+ * @param responseInfo Common response information, such as the card slot ID and request sequence ID. For details,
+ * see {@link RilRadioResponseInfo}.
+ * @param networksliceEhplmnInfo.
+ *
+ * @since 5.1
+ * @version 1.0
+ */
+ [oneway] NetworkSliceEhplmnRpt([in] struct RilRadioResponseInfo responseInfo,
+ [in] struct NetworkSliceEhplmnInfo networksliceEhplmnInfo);
}
/** @} */
\ No newline at end of file
diff --git a/ril/v1_4/Types.idl b/ril/v1_4/Types.idl
index 6b52bd799c1d49ea524edf7c161a3fcb2439a45d..1904e90edbdf5f65e7ff58795d81be2ccc7e25f2 100644
--- a/ril/v1_4/Types.idl
+++ b/ril/v1_4/Types.idl
@@ -136,4 +136,148 @@ struct CallInfoExtList {
* Call status information list
*/
List calls;
-};
\ No newline at end of file
+};
+
+/**
+ * @brief Defines ursp info.
+ */
+struct NetworkSliceUrspInfo {
+ List urspInfo;
+};
+
+/**
+ * @brief Defines allowednssai Info.
+ */
+struct NetworkSliceAllowedNssaiInfo {
+ List allowednssaiInfo;
+};
+
+/**
+ * @brief Defines ehplmn Info.
+ */
+struct NetworkSliceEhplmnInfo {
+ List ehplmnInfo;
+};
+
+/**
+ * @brief Defines the uepolicy decode result information.
+ */
+struct UePolicyDecodeResult {
+ List uePolicyDecodeResultInfo;
+};
+
+/**
+ * @brief Defines the ue policy state indication.
+ */
+struct UePolicySectionIdentifier {
+ List uePolicySectionIdentifierInfo;
+};
+
+/**
+ * @brief Defines the ims rsd list.
+ */
+struct ImsRsdList {
+ List imsRsdListInfo;
+};
+
+/**
+ * @brief Defines the SyncAllowedNssaiInfo.
+ */
+struct SyncAllowedNssaiInfo {
+ List syncAllowedNssaiInfo;
+};
+
+/**
+ * @brief Defines PDP context information with apn types for slice.
+ */
+struct DataProfileDataInfoWithApnTypesforSlice {
+ /**
+ * Request SN
+ */
+ int serial;
+
+ /**
+ * Data service type. The value 0 indicates the default data service,
+ * and the value 1 indicates the MMS data service.
+ */
+ int profileId;
+
+ /**
+ * Authentication mode:
+ *- 0: no authentication
+ *- 1: Password Authentication Protocol (PAP)
+ *- 2: Challenge Handshake Authentication Protocol (CHAP)
+ */
+ int authenticationType;
+
+ /**
+ * Access point name
+ */
+ String apn;
+
+ /**
+ * Protocol version
+ */
+ String protocol;
+
+ /**
+ * Roaming protocol version
+ */
+ String roamingProtocol;
+
+ /**
+ * Username
+ */
+ String userName;
+
+ /**
+ * Password
+ */
+ String password;
+
+ /**
+ * Supported APN types Bitmap
+ */
+ unsigned long supportedApnTypesBitmap;
+
+ String snssai;
+
+ int sscMode;
+};
+
+/**
+ * @brief Defines the data service information for slice.
+ */
+struct DataCallInfoWithApnTypesforSlice {
+ /**
+ * Request SN
+ */
+ int serial;
+
+ /**
+ * Radio access technology. For details, see {@link RilRadioTech}.
+ */
+ int radioTechnology;
+
+ /**
+ * Whether the PDP context is set for the modem
+ */
+ boolean modemCognitive;
+
+ /**
+ * Whether roaming is allowed. The value true indicates that roaming is allowed,
+ * and the value false indicates the opposite.
+ */
+ boolean roamingAllowed;
+
+ /**
+ * Whether the user is roaming. The value true indicates that the user is roaming,
+ * and the value false indicates the opposite.
+ */
+ boolean isRoaming;
+
+ /**
+ * PDP context information with apn types
+ */
+ struct DataProfileDataInfoWithApnTypesforSlice dataProfileInfo;
+ };
\ No newline at end of file