bmi.h 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. /*
  2. * Copyright (c) 2013-2016 The Linux Foundation. All rights reserved.
  3. *
  4. * Previously licensed under the ISC license by Qualcomm Atheros, Inc.
  5. *
  6. *
  7. * Permission to use, copy, modify, and/or distribute this software for
  8. * any purpose with or without fee is hereby granted, provided that the
  9. * above copyright notice and this permission notice appear in all
  10. * copies.
  11. *
  12. * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
  13. * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
  14. * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
  15. * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
  16. * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
  17. * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
  18. * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
  19. * PERFORMANCE OF THIS SOFTWARE.
  20. */
  21. /*
  22. * This file was originally distributed by Qualcomm Atheros, Inc.
  23. * under proprietary terms before Copyright ownership was assigned
  24. * to the Linux Foundation.
  25. */
  26. /* ================================================================ */
  27. /* BMI declarations and prototypes */
  28. /* */
  29. /* ================================================================= */
  30. #ifndef _BMI_H_
  31. #define _BMI_H_
  32. #include "bmi_msg.h"
  33. #include "qdf_trace.h"
  34. #include "ol_if_athvar.h"
  35. #include "hif.h"
  36. struct ol_context;
  37. QDF_STATUS ol_cds_init(qdf_device_t qdf_dev, void *hif_ctx);
  38. void ol_cds_free(void);
  39. /**
  40. * struct hif_config_info - Place Holder for hif confiruation
  41. * @enable_uart_print: UART Print
  42. * @enable_self_recovery: Self Recovery
  43. * @enable_fw_log: To Enable FW LOG
  44. * @enable_lpass_support: LPASS support
  45. * @enable_ramdump_collection: Ramdump Collection
  46. *
  47. * Structure for holding ini parameters.
  48. */
  49. struct ol_config_info {
  50. bool enable_uart_print;
  51. bool enable_self_recovery;
  52. bool enable_fw_log;
  53. bool enable_lpass_support;
  54. bool enable_ramdump_collection;
  55. };
  56. void ol_init_ini_config(struct ol_context *ol_ctx,
  57. struct ol_config_info *cfg);
  58. void bmi_cleanup(struct ol_context *scn);
  59. QDF_STATUS bmi_done(struct ol_context *ol_ctx);
  60. void bmi_target_ready(struct hif_opaque_softc *scn, void *cfg_ctx);
  61. QDF_STATUS bmi_download_firmware(struct ol_context *ol_ctx);
  62. #endif /* _BMI_H_ */