Acceso a bajo nivel a UICC de MB

Información general

El modelo de interfaz de banda ancha móvil revisión 1.0 o MBIM1 define una interfaz independiente del OEM e IHV entre un dispositivo host y un módem de datos móviles.

Una función MBIM1 incluye una tarjeta inteligente UICC y proporciona acceso a algunos de sus datos y su estado interno. Sin embargo, la tarjeta inteligente puede tener funcionalidades adicionales más allá de las definidas por la interfaz MBIM. Estas funcionalidades adicionales incluyen compatibilidad con un elemento seguro para las soluciones de pago móviles basadas en la comunicación de campo cercano o bien para el aprovisionamiento remoto de un perfil UICC completo.

En un dispositivo Windows habilitado para banda ancha móvil, la interfaz MBIM se usa además de la interfaz de capa de interfaz de radio (RIL). Una de las características que proporciona RIL es una interfaz para el acceso de bajo nivel a UICC. En este tema se describe un conjunto de extensiones de Microsoft en MBIM que describen esta funcionalidad adicional en la interfaz MBIM.

Las extensiones de Microsoft componen un conjunto de comandos de servicio de dispositivo (tanto Set como Query) y notificaciones. Estas extensiones no incluyen ningún nuevo uso de flujos de servicio de dispositivo.

Valores del servicio MBIM y CID

Nombre del servicio Identificador Único Universal (UUID) Valor UUID
Microsoft Low-Level UICC Access UUID_MS_UICC_LOW_LEVEL C2F6588E-F037-4BC9-8665-F4D44BD09367

En la tabla siguiente se especifica el código de comando para cada CID, así como si el CID admite solicitudes Set, Query o Event (notification). Consulte la sección individual de cada CID en este tema para obtener más información sobre sus parámetros, estructuras de datos y notificaciones.

CID Código de comando Establecer Consulta Notificar
MBIM_CID_MS_UICC_ATR 1 N Y N
MBIM_CID_MS_UICC_OPEN_CHANNEL 2 Y N N
MBIM_CID_MS_UICC_CLOSE_CHANNEL 3 Y N N
MBIM_CID_MS_UICC_APDU) 4 Y N N
MBIM_CID_MS_UICC_TERMINAL_CAPABILITY 5 Y Y N
MBIM_CID_MS_UICC_RESET 6 Y Y N

Códigos de estado

Los códigos de estado MBIM se definen en la sección 9.4.5 del estándar MBIM. Además, se definen los siguientes códigos de estado de error adicionales:

Código de estado Valor (hexadecimal) Descripción
MBIM_STATUS_MS_NO_LOGICAL_CHANNELS (No hay canales lógicos) 87430001 La apertura del canal lógico no se realizó correctamente porque no hay canales lógicos disponibles en uiCC (ya sea que no los admite o todos ellos están en uso).
MBIM_STATUS_MS_SELECT_FAILED 87430002 La apertura del canal lógico no se realizó correctamente porque se produjo un error en SELECT.
MBIM_STATUS_MS_INVALID_LOGICAL_CHANNEL 87430003 El número de canal lógico no es válido (no lo abrió MBIM_CID_MS_UICC_OPEN_CHANNEL).

MBIM_SUBSCRIBER_READY_STATE

Tipo Importancia Descripción
MBIMSubscriberReadyStateNoEsimProfile 7 La tarjeta está lista, pero no tiene perfiles habilitados.

Respuestas y estado de UICC

El UICC puede implementar una interfaz basada en caracteres o basada en registros, o ambas. Aunque el mecanismo específico es diferente, el resultado es que uiCC responde a cada comando con dos bytes de estado (denominado SW1 y SW2) y una respuesta (que puede estar vacía). 90 00 indica un estado de éxito normal. Sin embargo, si el UICC admite el Kit de Herramientas de Aplicaciones de Tarjeta y el UICC desea enviar un comando proactivo al terminal, se indicará un retorno exitoso mediante un estado de 91 XX (donde XX varía). La función MBIM, o terminal, es responsable de controlar este comando proactivo, igual que controlaría un comando proactivo recibido durante cualquier otra operación UICC (enviando un FETCH al UICC, controlando el comando proactivo o enviandolo al host con MBIM_CID_STK_PAC). Cuando el host de MBIM envía MBIM_CID_MS_UICC_OPEN_CHANNEL o MBIM_CID_MS_UICC_APDU debe considerar tanto 90 00 como 91 XX como estado normal.

Los comandos deben poder devolver respuestas de más de 256 bytes. Este mecanismo se describe en la sección 5.1.3 de la norma ISO/IEC 7816-4:2013. En este caso, la tarjeta devolverá palabras de estado SW1 SW2 con 61 XX, en lugar de 90 00, donde XX representa el número de bytes restantes, o 00 si quedan 256 bytes o más. El módem debe emitir una respuesta GET con el mismo byte de clase repetidamente hasta que se hayan recibido todos los datos. Esto se indicará con las palabras de estado final 90 00. La secuencia debe ser ininterrumpida dentro de un canal lógico específico. Los APDUs adicionales deberían manejarse en el módem y deberían ser transparentes para el host. Si se manipula en el host, no hay ninguna garantía de que alguna otra APDU pueda referirse asincrónicamente a la tarjeta durante la secuencia de APDUs.

Comparación con IHVRIL

Las secciones 5.2.3.3.10 a 5.2.3.3.14 de la especificación IHVRIL definen una interfaz similar en la que se basa esta especificación. Algunas diferencias incluyen:

  • La interfaz RIL no proporciona una manera de especificar mensajería segura. El comando MBIM para intercambiar la APDU lo especifica como un parámetro explícito.
  • La interfaz RIL no define claramente la interpretación del byte de clase dentro de APDU. La especificación MBIM indica que el byte de clase enviado desde el host debe estar presente, pero no se usa (y, en su lugar, la función MBIM construye este byte).
  • La interfaz RIL usa una función independiente para cerrar todos los canales UICC de un grupo, mientras que la interfaz MBIM lo consigue con argumentos de variantes en un único CID.
  • La relación entre el estado de error MBIM y el estado UICC (SW1 SW2) se define con más claridad que la relación entre los errores de RIL y el estado UICC.
  • La interfaz MBIM distingue el fallo en la asignación de un nuevo canal lógico del fallo al seleccionar una aplicación especificada.
  • La interfaz MBIM permite enviar los objetos de funcionalidad del terminal de módem para enviar a la tarjeta.

MBIM_CID_MS_UICC_ATR

La respuesta al restablecimiento (ATR) es la primera cadena de bytes enviada por uiCC después de realizar un restablecimiento. Describe las funcionalidades de la tarjeta, como el número de canales lógicos que admite. La función MBIM debe guardar el ATR cuando se recibe de UICC. Posteriormente, el host puede usar el comando MBIM_CID_MS_UICC_ATR para recuperar el ATR.

Parámetros

Tipo Establecer Consulta Notificación
Comando No aplicable Empty No aplicable
Respuesta No aplicable MBIM_MS_ATR_INFO No aplicable

Consulta

InformationBuffer de un mensaje de consulta está vacío.

Establecer

No aplicable.

Respuesta

El InformationBuffer de MBIM_COMMAND_DONE contiene la siguiente estructura MBIM_MS_ATR_INFO que describe la respuesta de reinicio para restablecer el UICC adjunto a esta función.

MBIM_MS_ATR_INFO

Offset Tamaño Campo Tipo Descripción
0 4 AtrSize TAMAÑO(0..33) Longitud de AtrData.
4 4 AtrOffset OFFSET El desplazamiento en bytes, calculado desde el inicio de esta estructura, hacia una matriz de bytes denominada AtrData que contiene los datos ATR.
8 AtrSize Búfer de Datos DATABUFFER Matriz de bytes AtrData .

Eventos no solicitados

No aplicable.

Códigos de estado

Se aplican los siguientes códigos de estado.

Código de estado Descripción
MBIM_STATUS_SUCCESS Estado de MBIM básico definido para todos los comandos.
MBIM_STATUS_BUSY Estado de MBIM básico definido para todos los comandos.
MBIM_STATUS_FAILURE Estado de MBIM básico definido para todos los comandos.
MBIM_STATUS_NO_DEVICE_SUPPORT Estado de MBIM básico definido para todos los comandos.
MBIM_STATUS_SIM_NOT_INSERTED No se puede realizar la operación UICC porque falta la UICC.
MBIM_STATUS_BAD_SIM No se puede realizar la operación UICC porque uiCC está en estado de error.
MBIM_STATUS_NOT_INITIALIZED No se puede realizar la operación UICC porque el UICC aún no se ha inicializado completamente.

MBIM_CID_MS_UICC_OPEN_CHANNEL

El host usa el comando MBIM_CID_MS_UICC_OPEN_CHANNEL para solicitar que la función abra un nuevo canal lógico en la tarjeta UICC y seleccione una aplicación UICC especificada (especificada por su identificador de aplicación).

La función implementa este comando MBIM mediante una secuencia de comandos UICC:

  1. La función envía un comando MANAGE CHANNEL al UICC, como se describe en la sección 11.1.1.17 de la especificación técnica de ETSI TS 102 221, para crear un nuevo canal lógico. Si se produce un error en este comando, la función devuelve el estado MBIM_STATUS_MS_NO_LOGICAL_CHANNELS con SW1 SW2 y no realiza ninguna acción adicional.
  2. Si el comando MANAGE CHANNEL se realiza correctamente, la UICC informa del número del nuevo canal lógico a la función. La función envía un comando SELECT [por nombre] donde P1 = 04, como se describe en la sección 11.1.1 de la especificación técnica de ETSI TS 102 221. Si esta operación falla, la función envía un comando MANAGE CHANNEL al UICC para cerrar el canal lógico y devuelve el estado MBIM_STATUS_MS_SELECT_FAILED con SW1 SW2 del SELECT.
  3. Si el comando SELECT se ejecuta correctamente, la función registra el número de canal lógico y el grupo de canales especificado por el host para referencia futura. A continuación, devolverá el número de canal lógico, SW1 SW2 de SELECT y la respuesta de SELECT al host.

Parámetros

Operación Establecer Consulta Notificación
Comando MBIM_MS_SET_UICC_OPEN_CHANNEL No aplicable No aplicable
Respuesta MBIM_MS_UICC_OPEN_CHANNEL_INFO No aplicable No aplicable

Consulta

No aplicable.

Establecer

El InformationBuffer de MBIM_COMMAND_MSG contiene la siguiente estructura MBIM_MS_SET_UICC_OPEN_CHANNEL.

MBIM_MS_SET_UICC_OPEN_CHANNEL

Offset Tamaño Campo Tipo Descripción
0 4 AppIdSize SIZE(0..32) Tamaño del identificador de aplicación (AppId).
4 4 AppIdOffset OFFSET Desplazamiento en bytes, calculado desde el principio de esta estructura, a una matriz de bytes denominada AppId que define el AppId que debe ser SELECTED.
8 4 SeleccionarP2Arg UINT32(0..255) Argumento P2 para el comando SELECT.
12 4 ChannelGroup UINT32 Valor de etiqueta que identifica el grupo de canales de este canal.
16 AppIdSize Búfer de Datos DATABUFFER Matriz de bytes AppId .

Respuesta

El InformationBuffer de MBIM_COMMAND_DONE contiene la siguiente estructura MBIM_MS_UICC_OPEN_CHANNEL_INFO.

MBIM_MS_UICC_OPEN_CHANNEL_INFO

Offset Tamaño Campo Tipo Descripción
0 4 Estado BYTE[2] SW1 y SW2, en ese orden de bytes. Para obtener más información, consulta las notas siguientes a esta tabla.
4 4 Canal UINT32(0..19) Identificador del canal lógico. Si este miembro es 0, se produjo un error en la operación.
8 4 Longitud de respuesta SIZE(0..256) Longitud de la respuesta en bytes.
12 4 ResponseOffset OFFSET Desplazamiento en bytes, calculado desde el principio de esta estructura, hacia una matriz de bytes llamada Response que contiene la respuesta de SELECT.
16 - Búfer de Datos DATABUFFER Datos del array de bytes de respuesta.

Si el comando devuelve MBIM_STATUS_MS_NO_LOGICAL_CHANNELS, el campo Estado contendrá las palabras de estado UICC SW1 y SW2 del comando MANAGE CHANNEL y los campos restantes serán cero. Si el comando devuelve MBIM_STATUS_MS_SELECT_FAILED, el campo Estado contendrá las palabras de estado UICC SW1 y SW2 del comando SELECT y los campos restantes serán cero. Para cualquier otro estado, InformationBuffer estará vacío.

Eventos no solicitados

No aplicable.

Códigos de estado

Se aplican los siguientes códigos de estado:

Código de estado Descripción
MBIM_STATUS_SUCCESS Estado de MBIM básico definido para todos los comandos.
MBIM_STATUS_BUSY Estado de MBIM básico definido para todos los comandos.
MBIM_STATUS_FAILURE Estado de MBIM básico definido para todos los comandos.
MBIM_STATUS_NO_DEVICE_SUPPORT Estado de MBIM básico definido para todos los comandos.
MBIM_STATUS_SIM_NOT_INSERTED No se puede realizar la operación UICC porque falta la UICC.
MBIM_STATUS_BAD_SIM No se puede realizar la operación UICC porque uiCC está en estado de error.
MBIM_STATUS_NOT_INITIALIZED No se puede realizar la operación UICC porque el UICC aún no se ha inicializado completamente.
MBIM_STATUS_MS_NO_LOGICAL_CHANNELS Error al abrir el canal lógico porque no hay canales lógicos disponibles en uiCC (ya sea que no los admite o todos ellos están en uso).
ESTADO_MBIM_MS_SELECCIÓN_FALLIDA La apertura del canal lógico no se realizó correctamente porque se produjo un error en SELECT.

MBIM_CID_MS_UICC_CLOSE_CHANNEL

El host envía MBIM_CID_MS_UICC_CLOSE_CHANNEL a la función para cerrar un canal lógico en el UICC. El host puede especificar un número de canal o puede especificar un grupo de canales.

Si el host especifica un número de canal, la función debe comprobar si un MBIM_CID_MS_UICC_OPEN_CHANNEL anterior abrió este canal. Si es así, debe enviar un comando MANAGE CHANNEL al UICC para cerrar el canal, devolver un estado de MBIM_STATUS_SUCCESS y devolver el SW1 SW2 desde el MANAGE CHANNEL. Si no es así, no debe realizar ninguna acción y devolver el estado de error MBIM_STATUS_MS_INVALID_LOGICAL_CHANNEL.

Si el host especifica un grupo de canales, la función determina qué canales lógicos (si los hay) se abrieron con ese grupo de canales y envía un comando MANAGE CHANNEL al UICC para cada canal de este tipo. Devuelve un estado de MBIM_STATUS_SUCCESS con el SW1 SW2 del último CANAL MANAGE. Si no se ha cerrado ningún canal, devolverá 90 00.

Parámetros

Operación Establecer Consulta Notificación
Comando MBIM_MS_SET_UICC_CLOSE_CHANNEL No aplicable No aplicable
Respuesta MBIM_MS_UICC_CLOSE_CHANNEL_INFO No aplicable No aplicable

Consulta

No aplicable.

Establecer

El InformationBuffer de MBIM_COMMAND_MSG contiene la estructura MBIM_MS_SET_UICC_CLOSE_CHANNEL siguiente.

MBIM_MS_SET_UICC_CLOSE_CHANNEL

Offset Tamaño Campo Tipo Descripción
0 4 Canal UINT32(0..19) Si no es cero, especifica el canal que se va a cerrar. Si es cero, especifica que se cerrarán los canales asociados a ChannelGroup .
4 4 ChannelGroup UINT32 Si Channel es cero, especifica un valor de etiqueta y se cierran todos los canales con esta etiqueta. Si Channel no es cero, se omite este campo.

Respuesta

El InformationBuffer de MBIM_COMMAND_DONE contiene la siguiente estructura MBIM_MS_UICC_CLOSE_CHANNEL_INFO.

MBIM_MS_UICC_CLOSE_CHANNEL_INFO

Offset Tamaño Campo Tipo Descripción
0 4 Estado BYTE[2] SW1 y SW2 del último CANAL MANAGE ejecutado por la función en nombre de este comando.

Eventos no solicitados

No aplicable.

Códigos de estado

Código de estado Descripción
MBIM_STATUS_SUCCESS Estado de MBIM básico tal como se define para todos los comandos.
MBIM_STATUS_BUSY Estado de MBIM básico tal como se define para todos los comandos.
MBIM_STATUS_FAILURE Estado de MBIM básico tal como se define para todos los comandos.
MBIM_STATUS_NO_DEVICE_SUPPORT Estado de MBIM básico definido para todos los comandos.
MBIM_STATUS_SIM_NOT_INSERTED No se puede realizar la operación UICC porque falta la UICC.
MBIM_STATUS_BAD_SIM No se puede realizar la operación UICC porque uiCC está en estado de error.
MBIM_STATUS_NOT_INITIALIZED No se puede realizar la operación UICC porque el UICC aún no se ha inicializado completamente.
MBIM_STATUS_MS_INVALID_LOGICAL_CHANNEL (Estado MBIM que indica un canal lógico inválido) El número de canal lógico no es válido (es decir, no se abrió con MBIM_CID_MS_UICC_OPEN_CHANNEL).

MBIM_CID_MS_UICC_APDU

El host usa MBIM_CID_MS_UICC_APDU para enviar un comando APDU a un canal lógico especificado en uiCC y recibir la respuesta. La función MBIM debe asegurarse de que el canal lógico se haya abierto previamente con MBIM_CID_MS_UICC_OPEN_CHANNEL y fallar con el estado MBIM_STATUS_MS_INVALID_LOGICAL_CHANNEL en caso contrario.

El host debe enviar una APDU completa a la función. La APDU se puede enviar con un valor de byte de clase definido en la primera definición interindustrial de la sección 4 de la norma ISO/IEC 7816-4:2013, o en la definición extendida de la sección 10.1.1 de la especificación técnica ETSI TS 102 221. La APDU se puede enviar sin mensajería segura o con mensajería segura. El encabezado de comando no está autenticado. El host especifica el tipo de clase de byte, el número de canal lógico y la mensajería segura junto con el APDU.

El primer byte del comando APDU es el byte de clase, codificado según lo definido por la sección 4 de la norma ISO/IEC 7816-4:2013 o la sección 10.1.1 de la especificación técnica ETSI TS 102 221. El host puede enviar bytes de clase 0X, 4X, 6X, 8X, CX o EX. Sin embargo, la función no pasa este byte directamente al UICC. En su lugar, antes de enviar la APDU a la UICC, la función reemplazará el primer byte del host por un nuevo byte de clase (codificado como se define en la sección 4 de la norma ISO/IEC 7816-4:2013 o sección 10.1.1 de la especificación técnica de ETSI TS 102 221) según los valores Type, Channel y SecureMessaging especificados por el host:

Byte (clase) Descripción
0X 7816-4 interindustria, 1 <= canal <= 3, codifica la seguridad en un nibble bajo si procede
4X 7816-4 interindustria, 4 <= canal <= 19, sin mensajería segura
6X 7816-4 interindustria, 4 <= canal <= 19, seguro (encabezado no autenticado)
8X 102 221 extendido, 1<= canal <= 3, codifica la seguridad en el nibble bajo si es relevante.
Experiencia del Cliente (CX) 102 221 extendido, 4 <= canal <= 19, sin mensajería segura
EX 102 221 extendido, 4 <= canal <= 19, seguro (encabezado no autenticado)

La función devolverá el estado, SW1 SW2 y la respuesta del UICC al host.

Parámetros

Operación Establecer Consulta Notificación
Comando MBIM_MS_SET_UICC_APDU No aplicable No aplicable
Respuesta MBIM_MS_UICC_APDU_INFO No aplicable No aplicable

Consulta

No aplicable.

Establecer

El InformationBuffer de MBIM_COMMAND_MSG contiene la siguiente estructura MBIM_MS_SET_UICC_APDU.

MBIM_MS_SET_UICC_APDU

Offset Tamaño Campo Tipo Descripción
0 4 Canal UINT32(1..19) Especifica el canal en el que se enviará la APDU.
4 4 Mensajería Segura MBIM_MS_UICC_SECURE_MESSAGING Especifica si la APDU se intercambia mediante mensajería segura.
8 4 Tipo MBIM_MS_UICC_CLASS_BYTE_TYPE Especifica el tipo de definición de bytes para la clase.
12 4 TamañoDeComando UINT32(0..261) Longitud del comando en bytes.
16 4 CommandOffset OFFSET El desplazamiento en bytes, calculado desde el principio de esta estructura, hacia una matriz de bytes llamada denominada Command que contiene la APDU.
20 - Búfer de Datos DATABUFFER La matriz de bytes Command.

La estructura MBIM_MS_SET_UICC_APDU usa las siguientes estructuras de datos MBIM_MS_UICC_SECURE_MESSAGING y MBIM_MS_UICC_CLASS_BYTE_TYPE.

MBIM_MS_UICC_SECURE_MESSAGING
Tipo Importancia Descripción
MBIMM Mensajería Segura UICC Ninguna 0 Sin mensajería segura.
MBIMMsUiccSecureMessagingNoHdrAuth 1 Mensajería segura, encabezado de comando no autenticado.
MBIM_MS_UICC_CLASS_BYTE_TYPE
Tipo Importancia Descripción
MBIMMsUiccInterindustry 0 Se define según la primera definición de interindustria en ISO 7816-4.
MBIMMsUiccExtended 1 Se define según la definición extendida en ETSI 102 221.

Respuesta

El InformationBuffer de MBIM_COMMAND_DONE contiene la siguiente estructura MBIM_MS_UICC_APDU_INFO.

MBIM_MS_UICC_APDU_INFO

Offset Tamaño Campo Tipo Descripción
0 4 Estado BYTE[2] Las palabras de estado SW1 y SW2 que resultan del comando.
4 4 Longitud de respuesta TAMAÑO Longitud de la respuesta en bytes.
8 4 ResponseOffset OFFSET Desplazamiento en bytes, calculado desde el principio de esta estructura, hacia una matriz de bytes llamada Response que contiene la respuesta de SELECT.
12 - Búfer de Datos DATABUFFER Matriz de bytes de Respuesta.

Eventos no solicitados

No aplicable.

Códigos de estado

Se aplican los siguientes códigos de estado:

Código de estado Descripción
MBIM_STATUS_SUCCESS Estado de MBIM básico definido para todos los comandos.
MBIM_STATUS_BUSY Estado de MBIM básico definido para todos los comandos.
MBIM_STATUS_FAILURE Estado de MBIM básico definido para todos los comandos.
MBIM_STATUS_NO_DEVICE_SUPPORT Estado de MBIM básico definido para todos los comandos.
MBIM_STATUS_SIM_NOT_INSERTED No se puede realizar la operación UICC porque falta la UICC.
MBIM_STATUS_BAD_SIM No se puede realizar la operación UICC porque uiCC está en estado de error.
MBIM_STATUS_NOT_INITIALIZED No se puede realizar la operación UICC porque el UICC aún no se ha inicializado completamente.
MBIM_STATUS_MS_INVALID_LOGICAL_CHANNEL El número de canal lógico no es válido (es decir, no se abrió con MBIM_CID_MS_UICC_OPEN_CHANNEL).

Si la función puede enviar la APDU al UICC, devuelve MBIM_STATUS_SUCCESS junto con las palabras de estado SW1 SW2 y la respuesta del UICC (si existe). El host debe examinar el estado (SW1 SW2) para determinar si el comando APDU se realizó correctamente en uiCC o el motivo por el que se produjo un error.

MBIM_CID_MS_UICC_TERMINAL_CAPABILITY

El host envía MBIM_CID_MS_UICC_TERMINAL_CAPABILITY para informar al módem sobre las funcionalidades del host. La APDU DE CAPACIDAD TERMINAL, especificada en la sección 11.1.19 de la especificación técnica ETSI TS 102 221, debe enviarse a la tarjeta antes de que se seleccione la primera aplicación (si se admite). Por lo tanto, el host no puede enviar directamente la APDU DE CAPACIDAD TERMINAL, sino que envía el comando MBIM_CID_MS_UICC_TERMINAL_CAPABILITY que contiene uno o más objetos de capacidad de terminal que serán almacenados de forma persistente por el módem. En la siguiente inserción o restablecimiento de tarjeta, después del ATR, el módem seleccionaría la MF y comprobaría si se admite LA FUNCIONALIDAD TERMINAL. Si es así, el módem enviaría la APDU DE FUNCIONALIDAD DE TERMINAL con la información especificada por el comando MBIM_CID_MS_UICC_TERMINAL_CAPABILITY, así como cualquier información generada por el módem.

Parámetros

Operación Establecer Consulta Notificación
Comando MBIM_MS_SET_UICC_TERMINAL_CAPABILITY Empty No aplicable
Respuesta No aplicable MBIM_MS_TERMINAL_CAPABILITY_INFO No aplicable

Consulta

InformationBuffer será null y InformationBufferLength será cero.

Establecer

El BufferDeInformación del MBIM_COMMAND_MSG contiene la siguiente estructura MBIM_MS_SET_UICC_TERMINAL_CAPABILITY.

MBIM_MS_SET_UICC_TERMINAL_CAPABILITY

Offset Tamaño Campo Tipo Descripción
0 4 ElementCount UINT32 Recuento de elementos de objetos de funcionalidad de terminal.
4 8*EC CapabilityList OL_PAIR_LIST Una lista de pares de desplazamiento-longitud para cada objeto de capacidad del terminal TLV.
4+8*EC - Búfer de Datos DATABUFFER Matriz de bytes del objeto de funcionalidad de terminal real TLV.

Respuesta

Las respuestas contendrán el comando SET exacto con los últimos objetos de funcionalidad de terminal enviados al módem. Por lo tanto, MBIM_MS_TERMINAL_CAPABILITY_INFO es idéntico a MBIM_MS_SET_UICC_TERMINAL_CAPABILITY.

MBIM_MS_TERMINAL_CAPABILITY_INFO

Offset Tamaño Campo Tipo Descripción
0 4 ElementCount UINT32 Recuento de elementos de objetos de funcionalidad de terminal.
4 8*EC CapabilityList OL_PAIR_LIST Una lista de pares de desplazamiento-longitud para cada objeto de capacidad del terminal TLV.
4+8*EC - Búfer de Datos DATABUFFER Matriz de bytes del objeto de funcionalidad de terminal real TLV.

Eventos no solicitados

No aplicable.

Códigos de estado

Código de estado Descripción
MBIM_STATUS_SUCCESS Estado de MBIM básico definido para todos los comandos.
MBIM_STATUS_BUSY Estado de MBIM básico definido para todos los comandos.
MBIM_STATUS_FAILURE Estado de MBIM básico definido para todos los comandos.
MBIM_STATUS_NO_DEVICE_SUPPORT Estado de MBIM básico definido para todos los comandos.
MBIM_STATUS_SIM_NOT_INSERTED No se puede realizar la operación UICC porque falta la UICC.
MBIM_STATUS_BAD_SIM No se puede realizar la operación UICC porque uiCC está en estado de error.
MBIM_STATUS_NOT_INITIALIZED No se puede realizar la operación UICC porque el UICC aún no se ha inicializado completamente.
MBIM_STATUS_MS_INVALID_LOGICAL_CHANNEL El número de canal lógico no es válido (es decir, no se abrió con MBIM_CID_MS_UICC_OPEN_CHANNEL).

MBIM_CID_MS_UICC_RESET

El host envía MBIM_CID_MS_UICC_RESET a la función MBIM para restablecer uiCC o para consultar el estado de acceso directo de la función.

Cuando el host solicita que la función restablezca el UICC, especifica una acción de paso a través.

Si el host especifica la acción de acceso directo MBIMMsUICCPassThroughEnable, la función restablece el UICC y, tras la activación del UICC, trata al UICC como si estuviera en un modo de acceso directo que permite la comunicación entre el host y el UICC (incluso si el UICC no tiene ningún sistema de archivos UICC de Telecomunicaciones). La función no envía ninguna APDU a la tarjeta y no interfiere en ningún momento con la comunicación entre el host y el UICC.

Si el host especifica la acción de paso de MBIMMsUICCPassThroughDisable, la función restablece el UICC y, cuando el UICC se enciende, trata al UICC como un UICC normal de Telecom y se espera que esté presente un sistema de archivos de UICC de Telecom en el UICC.

Cuando el host consulta la función para determinar el estado del paso a través, si la función responde con el estado MBIMMsUICCPassThroughEnabled , significa que el modo de acceso directo está habilitado. Si la función responde con el estado MBIMMsUICCPassThroughDisabled , significa que el modo de acceso directo está deshabilitado.

Parámetros

Tipo Establecer Consulta Notificación
Comando MBIM_MS_SET_UICC_RESET Empty No aplicable
Respuesta MBIM_MS_UICC_RESET_INFO MBIM_MS_UICC_RESET_INFO No aplicable

Consulta

InformationBuffer será null y InformationBufferLength será cero.

Establecer

MBIM_SET_MS_UICC_RESET

La estructura MBIM_SET_MS_UICC_RESET contiene la acción de traspaso especificada por el host.

Offset Tamaño Campo Tipo Descripción
0 4 PassThroughAction MBIM_MS_UICC_PASSTHROUGH_ACTION Para obtener más información, consulta MBIM_MS_UICC_PASSTHROUGH_ACTION.

MBIM_MS_UICC_PASSTHROUGH_ACTION

La enumeración MBIM_MS_UICC_PASSTHROUGH_ACTION define los tipos de acciones de paso a través que el host puede especificar en la función MBIM.

Tipos Importancia
MBIMMsUiccPassThroughDisable 0
MBIMMsUiccPassThroughEnable 1

Respuesta

MBIM_MS_UICC_RESET_INFO

La estructura MBIM_MS_UICC_RESET_INFO contiene el estado de acceso directo de la función MBIM.

Offset Tamaño Campo Tipo Descripción
0 4 EstadoDePaso MBIM_MS_UICC_PASSTHROUGH_STATUS Para obtener más información, consulta MBIM_MS_UICC_PASSTHROUGH_STATUS.

MBIM_MS_UICC_PASSTHROUGH_STATUS

La enumeración MBIM_MS_UICC_PASSTHROUGH_STATUS define los tipos de estado de acceso directo que la función MBIM especifica para el host.

Tipos Importancia
MBIMMsUiccInhabilitaciónDePasoALoLargo 0
MBIMMsUiccPassThroughEnabled 1

Eventos no solicitados

No aplicable.

Códigos de estado

Código de estado Descripción
MBIM_STATUS_SUCCESS Estado de MBIM básico definido para todos los comandos.
MBIM_STATUS_BUSY El dispositivo está ocupado.
MBIM_STATUS_FAILURE Error en la operación.
MBIM_STATUS_NO_DEVICE_SUPPORT El dispositivo no admite esta operación.

OID_WWAN_UICC_RESET

El equivalente NDIS para MBIM_CID_MS_UICC_RESET es OID_WWAN_UICC_RESET.