bm_csi_ioctl.h 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. /*
  2. * Copyright (C) 2021 Alibaba Group Holding Limited
  3. * Author: liuyitong <yitong.lyt@alibaba-inc.com>
  4. *
  5. * This program is free software; you can redistribute it and/or modify
  6. * it under the terms of the GNU General Public License version 2 as
  7. * published by the Free Software Foundation.
  8. */
  9. #ifndef _BM_CSI_IOCTL_H_
  10. #define _BM_CSI_IOCTL_H_
  11. #include <linux/ioctl.h>
  12. enum {
  13. BMCSI_IOC_S_RESET = 0x100,
  14. BMCSI_IOC_S_POWER,
  15. BMCSI_IOC_G_POWER,
  16. BMCSI_IOC_S_CLOCK,
  17. BMCSI_IOC_G_CLOCK,
  18. BMCSI_IOC_S_STREAM,
  19. BMCSI_IOC_G_STREAM,
  20. BMCSI_IOC_S_FMT,
  21. BMCSI_IOC_G_FMT,
  22. BMCSI_IOC_S_VC_SELECT,
  23. BMCSI_IOC_G_VC_SELECT,
  24. BMCSI_IOC_IPI_START,
  25. BMCSI_IOC_IPI_STOP,
  26. BMCSI_IOC_S_LANE_CFG,
  27. BMCSI_IOC_S_HSA_CFG,
  28. BMCSI_IOC_S_HBP_CFG,
  29. BMCSI_IOC_S_HSD_CFG,
  30. BMCSI_IOC_WRITE_REG,
  31. BMCSI_IOC_READ_REG,
  32. BMCSI_IOC_SET_PIXCLK,
  33. BMCSI_IOC_GET_PIXCLK,
  34. BMCSI_IOC_MAX,
  35. };
  36. struct bm_csi_reg_t {
  37. unsigned int offset;
  38. unsigned int value;
  39. };
  40. struct csi_vc_select_context {
  41. unsigned int ipi_idx;
  42. unsigned int vc_ch;
  43. };
  44. #endif /* _BM_CSI_IOCTL_H_*/