Zephyr API Documentation 4.4.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
Cellular Driver Backend API

Topics

 Cellular modem helpers
 Implement vendor-specific cellular modem drivers using common chat, CMUX, PPP, and power-management support.

Data Structures

struct  cellular_driver_api
  Driver Operations Cellular driver operations More...

Typedefs

typedef int(* cellular_api_configure_networks) (const struct device *dev, const struct cellular_network *networks, uint8_t size)
 API for configuring networks.
typedef int(* cellular_api_get_supported_networks) (const struct device *dev, const struct cellular_network **networks, uint8_t *size)
 API for getting supported networks.
typedef int(* cellular_api_get_signal) (const struct device *dev, const enum cellular_signal_type type, int16_t *value)
 API for getting network signal strength.
typedef int(* cellular_api_get_modem_info) (const struct device *dev, const enum cellular_modem_info_type type, char *info, size_t size)
 API for getting modem information.
typedef int(* cellular_api_get_registration_status) (const struct device *dev, enum cellular_access_technology tech, enum cellular_registration_status *status)
 API for getting registration status.
typedef int(* cellular_api_set_apn) (const struct device *dev, const char *apn)
 API for programming APN.
typedef int(* cellular_api_set_callback) (const struct device *dev, cellular_event_mask_t mask, cellular_event_cb_t cb, void *user_data)
 API for registering an asynchronous callback.
typedef const struct cellular_stats *(* cellular_api_get_stats) (const struct device *dev)
 API for reading operational statistics.

Detailed Description

This group contains the API type definitions, callback signatures, and other helpers required to implement a Cellular driver.

Typedef Documentation

◆ cellular_api_configure_networks

typedef int(* cellular_api_configure_networks) (const struct device *dev, const struct cellular_network *networks, uint8_t size)

#include <zephyr/drivers/cellular.h>

API for configuring networks.

◆ cellular_api_get_modem_info

typedef int(* cellular_api_get_modem_info) (const struct device *dev, const enum cellular_modem_info_type type, char *info, size_t size)

#include <zephyr/drivers/cellular.h>

API for getting modem information.

◆ cellular_api_get_registration_status

typedef int(* cellular_api_get_registration_status) (const struct device *dev, enum cellular_access_technology tech, enum cellular_registration_status *status)

#include <zephyr/drivers/cellular.h>

API for getting registration status.

◆ cellular_api_get_signal

typedef int(* cellular_api_get_signal) (const struct device *dev, const enum cellular_signal_type type, int16_t *value)

#include <zephyr/drivers/cellular.h>

API for getting network signal strength.

◆ cellular_api_get_stats

typedef const struct cellular_stats *(* cellular_api_get_stats) (const struct device *dev)

#include <zephyr/drivers/cellular.h>

API for reading operational statistics.

◆ cellular_api_get_supported_networks

typedef int(* cellular_api_get_supported_networks) (const struct device *dev, const struct cellular_network **networks, uint8_t *size)

#include <zephyr/drivers/cellular.h>

API for getting supported networks.

◆ cellular_api_set_apn

typedef int(* cellular_api_set_apn) (const struct device *dev, const char *apn)

#include <zephyr/drivers/cellular.h>

API for programming APN.

◆ cellular_api_set_callback

typedef int(* cellular_api_set_callback) (const struct device *dev, cellular_event_mask_t mask, cellular_event_cb_t cb, void *user_data)

#include <zephyr/drivers/cellular.h>

API for registering an asynchronous callback.