Descripción general
RMA significa Autorización de Devolución de Mercancía. Esto ocurre cuando se produce un problema en un dispositivo que no puede ser resuelto por el usuario final, y el usuario decide devolver el dispositivo al centro de servicio del dispositivo para su diagnóstico y reparación.
Por lo general, es difícil para un centro de servicio ejecutar cualquier tipo de herramientas de diagnóstico o programas de reparación que no estén firmados por Google, debido al arranque verificado y la protección contra escritura de Chrome OS. Para solucionar estos problemas, el socio de reparación necesitará un RMA shim. Esta herramienta está firmada por Google y permite a un socio ejecutar sus propios programas de diagnóstico personalizados para comprobar y verificar los componentes.
La imagen del shim está diseñada para ser una combinación de componentes del paquete de fábrica de Chrome OS preexistentes, e incluye lo siguiente:
- Shim de instalación de fábrica
- Imagen de lanzamiento (FSI)
- Imagen de prueba
- Kit de herramienta de fábrica
- Paquete HWID
- Otros componentes opcionales (firmware, script completo, etc.)
RMA shims individuales vs. RMA shims universales
Aunque son extremadamente útiles, el problema de los RMA shims regulares para placas de señal es que son específicos para el modelo de placa base. Esto puede dificultar la gestión de las imágenes de los shims en unidades USB físicas.
Este problema puede resolverse creando un shim Universal. Un shim Universal puede contener múltiples RMA shims para diferentes placas, lo que facilita la gestión y distribución de las imágenes.
La contrapartida es que los shims universales pueden ser bastante grandes, ya que el shim de cada placa necesitará alrededor de 3 GB de almacenamiento. Por lo tanto, un shim universal que contenga 3 placas necesitará tener un tamaño total de 9 - 10 GB.
¿Qué programa se necesita?
image_tool es el programa necesario para gestionar los RMA shims. Este puede descargarse del repositorio público de fábrica usando los siguientes comandos.
$ git clone https://chromium.googlesource.com/chromiumos/platform/factory $ cd factory/
La herramienta se encontrará en setup/image_tool. Se recomienda encarecidamente que el usuario sincronice el repositorio git periódicamente para asegurarse de obtener la versión más reciente. Esto puede hacerse con el siguiente comando...
$ git pull
Una vez descargado el repositorio de fábrica, puedes ejecutar la prueba unitaria para los comandos de RMA para asegurarte de que los comandos se ejecutan correctamente en tu equipo usando...
$ py/tools/image_tool_rma_unittest.py
Ajustar la lista de pruebas de RMA en el kit de herramienta de fábrica
La lista de pruebas de RMA es diferente de la lista de pruebas utilizada en la línea de fabricación de fábrica. Por ejemplo, no habrá un servidor de fábrica durante el proceso de RMA. Por eso necesitaremos una lista de pruebas diferente para la RMA.
El proceso recomendado para crear una lista de pruebas es crear una lista que herede de generic_rma.test_list.json. Esto debería encargarse de los ajustes generales de RMA, como desactivar el servidor de fábrica y activar rma_mode, además de añadir las pruebas de fábrica al grupo RMAFFT.
{
"inherit": [
"generic_rma.test_list"
],
"label": "Lista de pruebas de RMA para <project>",
"definitions": {
"RMAFFT": {
"subtests": [
...
...
]
}
}
}
También se recomienda cambiar los siguientes ajustes...
- Las pruebas de fábrica en los centros de servicio se ejecutan con ciclos de prueba reducidos. Por ejemplo, reduce la duración de la prueba de esfuerzo de 4 horas a 10 minutos.
- Verifica que todas las placas base de repuesto utilizadas en los centros de servicio completen las pruebas SMT.
- Verifica que todas las placas base de repuesto tengan un código de registro que se grabó en RW_VPD durante el proceso de fábrica antes de enviar las placas a los centros de servicio.
- Habla con el OEM para finalizar los elementos de prueba para el proceso de RMA.
- No modifiques ni elimines ningún elemento GRT (Prueba Requerida por Google).
- Asegúrate de que la protección contra escritura del firmware esté activada (lo cual debería ser cierto si
constants.phaseestá configurado como PVT).
Combinar los componentes del paquete de fábrica en la imagen del RMA shim
Una vez que los componentes del paquete estén listos, puedes combinar los componentes en una sola imagen de RMA shim. La imagen de RMA shim puede crearse a partir del paquete de fábrica usando el comando image_tool rma create:
$ setup/image_tool rma create
--board BOARD
--factory_shim path/to/factory_install_shim.bin
--test_image path/to/chromiumos_test_image.bin
--toolkit path/to/install_factory_toolkit.run
--release_image path/to/chromiumos_image.bin
--hwid path/to/hwid_bundle.sh
--output rma_image.bin
El comando puede simplificarse siempre que todos los componentes se pongan en sus directorios bundle adecuados (release_image/, test_image/, etc.):
$ setup/image_tool rma create
--board BOARD
--output rma_image.bin
Además, también podemos especificar la lista de pruebas activa cuando creamos un RMA shim. De esta manera, no necesitaremos modificar el active_test_list.json en el kit de herramienta de fábrica
$ setup/image_tool rma create
--board BOARD
--output rma_image.bin
--active_test_list rma_main
Crear un RMA shim Universal
podemos crear un RMA shim Universal usando el comando image_tool rma merge.
$ setup/image_tool rma merge
-i soraka.bin scarlet.bin
-o universal.bin
Para eliminar una imagen de salida generada previamente, deberás especificar la opción -f:
$ setup/image_tool rma merge
-i soraka.bin scarlet.bin
-o universal.bin -f
Actualizar tu RMA shim Universal
el comando image_tool rma merge admite la fusión de shims universales. Si hay placas duplicadas, se le preguntará al usuario qué placa desea utilizar. Esta función puede utilizarse para actualizar una placa en un shim universal utilizando el RMA shim de placa única actualizado.
$ setup/image_tool rma merge
-i universal.bin soraka_new.bin
-o universal_new.bin
Escaneando 2 archivos de imagen de entrada...
La placa soraka tiene más de una entrada.
========================================================================
(1)
Desde universal.bin
board : soraka
install_shim : 10323.39.28
release_image : 10575.37.0 (Official Build) dev-channel soraka
test_image : 10323.39.24 (Official Build) dev-channel soraka test
toolkit : soraka Factory Toolkit 10323.39.24
firmware : Google_Soraka.10431.32.0;Google_Soraka.10431.48.0
hwid : None
complete : None
toolkit_config: None
lsb_factory : lsb_factory
========================================================================
(2)
Desde soraka_new.bin
board : soraka
install_shim : 10323.39.31
release_image : 10575.37.0 (Official Build) dev-channel soraka
test_image : 10323.39.24 (Official Build) dev-channel soraka test
toolkit : soraka Factory Toolkit 10323.39.24
firmware : Google_Soraka.10431.32.0;Google_Soraka.10431.48.0
hwid : None
complete : None
toolkit_config: None
lsb_factory : lsb_factory
========================================================================
Por favor, selecciona una opción [1-2]:
Usar el RMA shim
Flashea el ram_image.bin a una unidad USB, e iníciala con el modo desarrollador activado y tu dispositivo en modo recuperación.
Cómo flashear la imagen del shim a una unidad USB
Usa el comando dd para flashear la imagen del shim a tu dispositivo de almacenamiento, reemplazando /dev/sdx con el nombre de tu dispositivo de almacenamiento.
$ sudo dd if=rma_image.bin of=/dev/sdX bs=8M iflag=fullblock oflag=dsync
Si tienes el entorno de desarrollo de SO en tu dispositivo, entonces puedes usar el comando ``cross flash`` en chroot.
$ cros flash usb:// rma_image.bin
Cómo iniciar desde el RMA shim usando equipos portátiles (clamshells)
- Entra en modo recuperación.
- Presiona
CTRL + Dpara activar el interruptor de desarrollador. - Presiona
ENTERpara confirmar. - Entra de nuevo en modo recuperación (no hace falta esperar a que se borren los datos).
- Inserta y arranca desde el lápiz USB con
rma_image.bin.
Cómo iniciar desde el RMA shim en una tableta
- Entra en modo recuperación.
- Presiona
VOL_UP + VOL_DOWNpara mostrar el menú de recuperación. - Presiona
VOL_UPoVOL_DOWNpara mover el cursor a “Confirmar desactivación de verificación de SO”, y presionaPOWERpara seleccionarlo. - Entra de nuevo en modo recuperación (no hace falta esperar a que se borren los datos).
- Inserta y arranca desde el lápiz USB con
rma_image.bin.
Navegar por el menú del RMA shim
El RMA shim tiene un menú que permite al usuario seleccionar diferentes acciones, las cuales están documentadas en el archivo README. Si un usuario crea un RMA shim mediante el comando image_tool rma create, la herramienta añadirá la marca RMA_AUTORUN=1 al archivo lab-factory. Esto establecerá las acciones por defecto en el menú.
Comandos adicionales de RMA.
Hay otros comandos de image_tool que pueden facilitar la verificación y modificación de tus RMA shims. Puedes encontrar descripciones detalladas usando el argumento --help para otros comandos. Por ejemplo...
$ setup/image_tool rma show --help
Imprimir los componentes del paquete en un RMA shim
El comando image_tool rma show puede imprimir la versión del componente en tu RMA shim
$ setup/image_tool rma show -i soraka.bin Este RMA shim contiene las placas: soraka ======================================================================== board : soraka install_shim : 10323.39.31 release_image : 10575.37.0 (Official Build) dev-channel soraka test_image : 10323.39.24 (Official Build) dev-channel soraka test toolkit : soraka Factory Toolkit 10323.39.24 firmware : Google_Soraka.10431.32.0;Google_Soraka.10431.48.0 hwid : None complete : None toolkit_config: cb5b52296cd4fcb0418b6879c0acc32b lsb_factory : d2c9d6a7d32ee3b1279c2b0b27244727 ========================================================================
El mismo comando también puede utilizarse para RMA shims Universales.
$ setup/image_tool rma show -i universal.bin Este RMA shim contiene las placas: soraka scarlet ======================================================================== board : soraka install_shim : 10323.39.31 release_image : 10575.37.0 (Official Build) dev-channel soraka test_image : 10323.39.24 (Official Build) dev-channel soraka test toolkit : soraka Factory Toolkit 10323.39.24 firmware : Google_Soraka.10431.32.0;Google_Soraka.10431.48.0 hwid : None complete : None toolkit_config: cb5b52296cd4fcb0418b6879c0acc32b lsb_factory : d2c9d6a7d32ee3b1279c2b0b27244727 ======================================================================== board : scarlet install_shim : 10211.68.0 release_image : 10575.67.0 (Official Build) stable-channel scarlet test_image : 10211.53.0 (Official Build) dev-channel scarlet test toolkit : scarlet Factory Toolkit 10211.53.0 firmware : Google_Scarlet.10388.26.0 hwid : None complete : None toolkit_config: None lsb_factory : c82d4c1f831bf20d7cdc70138fe4ef72 ========================================================================
Reemplazar los componentes del paquete en un RMA shim
El comando image_tool rma replace puede sustituir componentes que están en tu RMA shim. Por ejemplo, puedes sustituir el paquete HWID por uno nuevo:
$ setup/image_tool rma replace -i rma_image.bin --hwid new_hwid_bundle.sh
El argumento --board será necesario si quieres sustituir algo en un shim Universal.
$ setup/image_tool rma replace -i universal.bin
--board soraka --hwid new_hwid_bundle.sh
Este comando también puede sustituir release_image, test_image, toolkit, factory_shim, firmware, hwid, complete_script y toolkit_config.
Extraer un RMA shim de placa única de tu shim universal
El comando image_tool rma extract puede utilizarse para extraer un RMA shim de placa única de tu shim universal.
$ setup/image_tool rma extract -i universal.bin -o extract.bin Escaneando archivo de imagen de entrada... Por favor, selecciona una placa para extraer. ======================================================================== (1) board : soraka install_shim : 10323.39.31 release_image : 10575.37.0 (Official Build) dev-channel soraka test_image : 10323.39.24 (Official Build) dev-channel soraka test toolkit : soraka Factory Toolkit 10323.39.24 firmware : Google_Soraka.10431.32.0;Google_Soraka.10431.48.0 hwid : None complete : None toolkit_config: cb5b52296cd4fcb0418b6879c0acc32b lsb_factory : d2c9d6a7d32ee3b1279c2b0b27244727 ======================================================================== (2) board : scarlet install_shim : 10211.68.0 release_image : 10575.67.0 (Official Build) stable-channel scarlet test_image : 10211.53.0 (Official Build) dev-channel scarlet test toolkit : scarlet Factory Toolkit 10211.53.0 firmware : Google_Scarlet.10388.26.0 hwid : None complete : None toolkit_config: None lsb_factory : c82d4c1f831bf20d7cdc70138fe4ef72 ======================================================================== Por favor, selecciona una opción [1-2]:
Cómo editar la configuración de lab-factory en tu RMA shim
El comando image_tool edit_lsb puede modificar la configuración lsb-factory, como la marca RMA_AUTORUN.
$ setup/image_tool edit_lsb -i rma_image.bin Configuración LSB actual: ======================================================================== CHROMEOS_AUSERVER=http://... CHROMEOS_DEVSERVER=http://... FACTORY_INSTALL=1 HTTP_SERVER_OVERRIDE=true FACTORY_INSTALL_FROM_USB=1 RMA_AUTORUN=true ======================================================================== (1) Modificar la dirección del servidor de fábrica de Chrome OS. (2) Modificar la configuración de corte (cutoff) en cros payload (solo para dispositivos antiguos). (3) Activar/desactivar el aviso de completado en el RMA shim. (4) Activar/desactivar la ejecución automática (autorun) en el RMA shim. (q) Salir sin guardar los cambios. (w) Aplicar los cambios y salir. Por favor, selecciona una opción [1-4, q, w]:
adicionalmente puedes usar
$ setup/image_tool edit_lsb -i universal.bin --board soraka
Cómo editar la configuración del kit de herramienta en un RMA shim
El comando image_tool edit_toolkit_config puede modificar la configuración del kit de herramienta, como la lista de pruebas activa y la configuración de corte.
$ setup/image_tool edit_toolkit_config -i rma_image.bin
Configuración del kit de herramienta:
========================================================================
{
"cutoff": {
"CUTOFF_BATTERY_MAX_PERCENTAGE": 90,
"CUTOFF_BATTERY_MIN_PERCENTAGE": 60,
"CUTOFF_METHOD": "battery_cutoff",
"CUTOFF_AC_STATE": "remove_ac"
},
"active_test_list": {
"id": "main_rma"
}
}
========================================================================
(1) Modificar la lista de pruebas activa.
(2) Modificar las constantes de la lista de pruebas.
(3) Modificar la configuración de corte.
(q) Salir sin guardar los cambios.
(w) Aplicar los cambios y salir.
Por favor, selecciona una opción [1-3, q, w]:
adicionalmente puedes usar
$ setup/image_tool edit_toolkit_config -i universal.bin --board soraka
Desempaquetar y volver a empaquetar el kit de herramienta en un RMA shim
El comando image_tool payload toolkit puede desempaquetar y volver a empaquetar el kit de herramienta de fábrica en un RMA shim.
$ setup/image_tool payload toolkit -i rma_image.bin --unpack toolkit_path (Edita algunos archivos en toolkit_path/ ...) $ setup/image_tool payload toolkit -i rma_image.bin --repack toolkit_path
o
$ setup/image_tool payload toolkit
-i universal.bin --board soraka --unpack toolkit_path
(Edita algunos archivos en toolkit_path/ ...)
$ setup/image_tool payload toolkit
-i universal.bin --board soraka --repack toolkit_path
Información adicional
Un agradecimiento especial a estos traductores:
100%
¡ Translation Bot nos está ayudando a reparar el mundo! ¿Quieres contribuir?
Empezar a traducir ›
0 comentarios