drv_sci_spi.h 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. /*
  2. * Copyright (c) 2006-2021, RT-Thread Development Team
  3. *
  4. * SPDX-License-Identifier: Apache-2.0
  5. *
  6. * Change Logs:
  7. * Date Author Notes
  8. * 2021-08-23 Mr.Tiger first version
  9. * 2022-12-7 Vandoul ADD sci spi
  10. */
  11. #ifndef __DRV_SCI_SPI_H__
  12. #define __DRV_SCI_SPI_H__
  13. #include <rtthread.h>
  14. #include <rtdevice.h>
  15. #include "hal_data.h"
  16. #include "board.h"
  17. #include <rthw.h>
  18. #include <drv_common.h>
  19. #include <drv_config.h>
  20. #ifdef __cplusplus
  21. extern "C" {
  22. #endif
  23. #if defined(R_SCI_SPI_H) || defined(R_SCI_B_SPI_H)
  24. struct ra_sci_spi_handle
  25. {
  26. const char bus_name[RT_NAME_MAX];
  27. const spi_cfg_t *spi_cfg_t;
  28. #ifdef R_SCI_B_SPI_H
  29. const sci_b_spi_instance_ctrl_t *spi_ctrl_t;
  30. #else
  31. const sci_spi_instance_ctrl_t *spi_ctrl_t;
  32. #endif
  33. };
  34. struct ra_sci_spi
  35. {
  36. rt_uint32_t cs_pin;
  37. struct ra_sci_spi_handle *ra_spi_handle_t;
  38. struct rt_spi_configuration *rt_spi_cfg_t;
  39. struct rt_spi_bus bus;
  40. };
  41. #endif
  42. rt_err_t rt_hw_sci_spi_device_attach(const char *bus_name, const char *device_name, rt_base_t cs_pin);
  43. #ifdef __cplusplus
  44. }
  45. #endif
  46. /* stm32 spi dirver class */
  47. #endif /*__DRV_SPI_H__ */