/arch/arm/mach-fsm/include/mach/msm_reqs.h

https://bitbucket.org/sammyz/iscream_thunderc-2.6.35-rebase · C++ Header · 102 lines · 51 code · 10 blank · 41 comment · 0 complexity · c05a3224d470eeb584079f296a2d9ab3 MD5 · raw file

  1. /* Copyright (c) 2010, Code Aurora Forum. All rights reserved.
  2. *
  3. * Redistribution and use in source and binary forms, with or without
  4. * modification, are permitted provided that the following conditions are met:
  5. * * Redistributions of source code must retain the above copyright
  6. * notice, this list of conditions and the following disclaimer.
  7. * * Redistributions in binary form must reproduce the above copyright
  8. * notice, this list of conditions and the following disclaimer in the
  9. * documentation and/or other materials provided with the distribution.
  10. * * Neither the name of Code Aurora nor
  11. * the names of its contributors may be used to endorse or promote
  12. * products derived from this software without specific prior written
  13. * permission.
  14. *
  15. * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
  16. * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  17. * IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
  18. * NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
  19. * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
  20. * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
  21. * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
  22. * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
  23. * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
  24. * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
  25. * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  26. *
  27. */
  28. #ifndef __ARCH_ARM_MACH_MSM_REQS_H
  29. #define __ARCH_ARM_MACH_MSM_REQS_H
  30. #include <linux/kernel.h>
  31. enum system_bus_flow_ids {
  32. MSM_AXI_FLOW_INVALID = 0,
  33. MSM_AXI_FLOW_APPLICATION_LOW,
  34. MSM_AXI_FLOW_APPLICATION_MED,
  35. MSM_AXI_FLOW_APPLICATION_HI,
  36. MSM_AXI_FLOW_APPLICATION_MAX,
  37. MSM_AXI_FLOW_VIDEO_PLAYBACK_LOW,
  38. MSM_AXI_FLOW_VIDEO_PLAYBACK_MED,
  39. MSM_AXI_FLOW_VIDEO_PLAYBACK_HI,
  40. MSM_AXI_FLOW_VIDEO_PLAYBACK_MAX,
  41. MSM_AXI_FLOW_VIDEO_RECORD_LOW,
  42. MSM_AXI_FLOW_VIDEO_RECORD_MED,
  43. MSM_AXI_FLOW_VIDEO_RECORD_HI,
  44. MSM_AXI_FLOW_GRAPHICS_LOW,
  45. MSM_AXI_FLOW_GRAPHICS_MED,
  46. MSM_AXI_FLOW_GRAPHICS_HI,
  47. MSM_AXI_FLOW_VIEWFINDER_LOW,
  48. MSM_AXI_FLOW_VIEWFINDER_MED,
  49. MSM_AXI_FLOW_VIEWFINDER_HI,
  50. MSM_AXI_FLOW_LAPTOP_DATA_CALL,
  51. MSM_AXI_FLOW_APPLICATION_DATA_CALL,
  52. MSM_AXI_FLOW_GPS,
  53. MSM_AXI_FLOW_TV_OUT_LOW,
  54. MSM_AXI_FLOW_TV_OUT_MED,
  55. MSM_AXI_FLOW_ILCDC_WVGA,
  56. MSM_AXI_FLOW_VOYAGER_DEFAULT,
  57. MSM_AXI_FLOW_2D_GPU_HIGH,
  58. MSM_AXI_FLOW_3D_GPU_HIGH,
  59. MSM_AXI_FLOW_CAMERA_PREVIEW_HIGH,
  60. MSM_AXI_FLOW_CAMERA_SNAPSHOT_12MP,
  61. MSM_AXI_FLOW_CAMERA_RECORDING_720P,
  62. MSM_AXI_FLOW_JPEG_12MP,
  63. MSM_AXI_FLOW_MDP_LCDC_WVGA_2BPP,
  64. MSM_AXI_FLOW_MDP_MDDI_WVGA_2BPP,
  65. MSM_AXI_FLOW_MDP_DTV_720P_2BPP,
  66. MSM_AXI_FLOW_VIDEO_RECORDING_720P,
  67. MSM_AXI_FLOW_VIDEO_PLAYBACK_720P,
  68. MSM_AXI_FLOW_MDP_TVENC_720P_2BPP,
  69. MSM_AXI_FLOW_VIDEO_PLAYBACK_WVGA,
  70. MSM_AXI_FLOW_VIDEO_PLAYBACK_QVGA,
  71. MSM_AXI_FLOW_VIDEO_RECORDING_QVGA,
  72. MSM_AXI_NUM_FLOWS,
  73. };
  74. #define MSM_REQ_DEFAULT_VALUE 0
  75. /**
  76. * msm_req_add - Creates an NPA request and returns a handle. Non-blocking.
  77. * @req_name: Name of the request
  78. * @res_name: Name of the NPA resource the request is for
  79. */
  80. void *msm_req_add(char *res_name, char *client_name);
  81. /**
  82. * msm_req_update - Updates an existing NPA request. May block.
  83. * @req: Request handle
  84. * @value: Request value
  85. */
  86. int msm_req_update(void *req, s32 value);
  87. /**
  88. * msm_req_remove - Removes an existing NPA request. May block.
  89. * @req: Request handle
  90. */
  91. int msm_req_remove(void *req);
  92. #endif /* __ARCH_ARM_MACH_MSM_REQS_H */