1 // SPDX-License-Identifier: GPL-2.0 2 /* 3 * Support for Intel Camera Imaging ISP subsystem. 4 * Copyright (c) 2015, Intel Corporation. 5 */ 6 7 #include "sh_css_stream_format.h" 8 #include <ia_css_stream_format.h> 9 sh_css_stream_format_2_bits_per_subpixel(enum atomisp_input_format format)10unsigned int sh_css_stream_format_2_bits_per_subpixel( 11 enum atomisp_input_format format) 12 { 13 unsigned int rval; 14 15 switch (format) { 16 case ATOMISP_INPUT_FORMAT_RGB_444: 17 rval = 4; 18 break; 19 case ATOMISP_INPUT_FORMAT_RGB_555: 20 rval = 5; 21 break; 22 case ATOMISP_INPUT_FORMAT_RGB_565: 23 case ATOMISP_INPUT_FORMAT_RGB_666: 24 case ATOMISP_INPUT_FORMAT_RAW_6: 25 rval = 6; 26 break; 27 case ATOMISP_INPUT_FORMAT_RAW_7: 28 rval = 7; 29 break; 30 case ATOMISP_INPUT_FORMAT_YUV420_8_LEGACY: 31 case ATOMISP_INPUT_FORMAT_YUV420_8: 32 case ATOMISP_INPUT_FORMAT_YUV422_8: 33 case ATOMISP_INPUT_FORMAT_RGB_888: 34 case ATOMISP_INPUT_FORMAT_RAW_8: 35 case ATOMISP_INPUT_FORMAT_BINARY_8: 36 case ATOMISP_INPUT_FORMAT_USER_DEF1: 37 case ATOMISP_INPUT_FORMAT_USER_DEF2: 38 case ATOMISP_INPUT_FORMAT_USER_DEF3: 39 case ATOMISP_INPUT_FORMAT_USER_DEF4: 40 case ATOMISP_INPUT_FORMAT_USER_DEF5: 41 case ATOMISP_INPUT_FORMAT_USER_DEF6: 42 case ATOMISP_INPUT_FORMAT_USER_DEF7: 43 case ATOMISP_INPUT_FORMAT_USER_DEF8: 44 rval = 8; 45 break; 46 case ATOMISP_INPUT_FORMAT_YUV420_10: 47 case ATOMISP_INPUT_FORMAT_YUV422_10: 48 case ATOMISP_INPUT_FORMAT_RAW_10: 49 rval = 10; 50 break; 51 case ATOMISP_INPUT_FORMAT_RAW_12: 52 rval = 12; 53 break; 54 case ATOMISP_INPUT_FORMAT_RAW_14: 55 rval = 14; 56 break; 57 case ATOMISP_INPUT_FORMAT_RAW_16: 58 case ATOMISP_INPUT_FORMAT_YUV420_16: 59 case ATOMISP_INPUT_FORMAT_YUV422_16: 60 rval = 16; 61 break; 62 default: 63 rval = 0; 64 break; 65 } 66 67 return rval; 68 } 69