linux/drivers/net/ipa/ipa_qmi.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: GPL-2.0 */
   2
   3/* Copyright (c) 2018, The Linux Foundation. All rights reserved.
   4 * Copyright (C) 2018-2020 Linaro Ltd.
   5 */
   6#ifndef _IPA_QMI_H_
   7#define _IPA_QMI_H_
   8
   9#include <linux/types.h>
  10#include <linux/soc/qcom/qmi.h>
  11
  12struct ipa;
  13
  14/**
  15 * struct ipa_qmi - QMI state associated with an IPA
  16 * @client_handle       - used to send an QMI requests to the modem
  17 * @server_handle       - used to handle QMI requests from the modem
  18 * @initialized         - whether QMI initialization has completed
  19 * @indication_register_received - tracks modem request receipt
  20 * @init_driver_response_received - tracks modem response receipt
  21 */
  22struct ipa_qmi {
  23        struct qmi_handle client_handle;
  24        struct qmi_handle server_handle;
  25
  26        /* Information used for the client handle */
  27        struct sockaddr_qrtr modem_sq;
  28        struct work_struct init_driver_work;
  29
  30        /* Flags used in negotiating readiness */
  31        bool initial_boot;
  32        bool uc_ready;
  33        bool modem_ready;
  34        bool indication_requested;
  35        bool indication_sent;
  36};
  37
  38int ipa_qmi_setup(struct ipa *ipa);
  39void ipa_qmi_teardown(struct ipa *ipa);
  40
  41#endif /* !_IPA_QMI_H_ */
  42