| // Copyright 2026 The ChromiumOS Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| syntax = "proto3"; |
| |
| package chromeos.recovery; |
| |
| option go_package = "go.chromium.org/infra/cros/recovery/internal/components/cros/cellular;cellular"; |
| |
| // ModemInfo is a simplified version of the JSON output from ModemManager |
| // used to retrieve modem connection state information. |
| message ModemInfo { |
| ModemData modem = 1 [json_name = "modem"]; |
| } |
| |
| |
| // ModemData aggregates 3GPP and generic modem metadata. |
| message ModemData { |
| G3PPInfo g3pp = 1 [json_name = "3gpp"]; |
| GenericInfo generic = 2 [json_name = "generic"]; |
| } |
| |
| // G3PPInfo contains cellular identifiers such as IMEI. |
| message G3PPInfo { |
| string imei = 1 [json_name = "imei"]; |
| } |
| |
| // GenericInfo contains general modem information and status. |
| message GenericInfo { |
| string active_sim_slot = 1 [json_name = "primary-sim-slot"]; |
| string state = 2 [json_name = "state"]; |
| string sim = 3 [json_name = "sim"]; |
| repeated string sim_slots = 4 [json_name = "sim-slots"]; |
| repeated string own_numbers = 5 [json_name = "own-numbers"]; |
| } |