1.. SPDX-License-Identifier: GFDL-1.1-no-invariants-or-later 2 3.. _v4l2-meta-fmt-vsp1-hgo: 4 5******************************* 6V4L2_META_FMT_VSP1_HGO ('VSPH') 7******************************* 8 9Renesas R-Car VSP1 1-D Histogram Data 10 11 12Description 13=========== 14 15This format describes histogram data generated by the Renesas R-Car VSP1 1-D 16Histogram (HGO) engine. 17 18The VSP1 HGO is a histogram computation engine that can operate on RGB, YCrCb 19or HSV data. It operates on a possibly cropped and subsampled input image and 20computes the minimum, maximum and sum of all pixels as well as per-channel 21histograms. 22 23The HGO can compute histograms independently per channel, on the maximum of the 24three channels (RGB data only) or on the Y channel only (YCbCr only). It can 25additionally output the histogram with 64 or 256 bins, resulting in four 26possible modes of operation. 27 28- In *64 bins normal mode*, the HGO operates on the three channels independently 29 to compute three 64-bins histograms. RGB, YCbCr and HSV image formats are 30 supported. 31- In *64 bins maximum mode*, the HGO operates on the maximum of the (R, G, B) 32 channels to compute a single 64-bins histogram. Only the RGB image format is 33 supported. 34- In *256 bins normal mode*, the HGO operates on the Y channel to compute a 35 single 256-bins histogram. Only the YCbCr image format is supported. 36- In *256 bins maximum mode*, the HGO operates on the maximum of the (R, G, B) 37 channels to compute a single 256-bins histogram. Only the RGB image format is 38 supported. 39 40**Byte Order.** 41All data is stored in memory in little endian format. Each cell in the tables 42contains one byte. 43 44.. flat-table:: VSP1 HGO Data - 64 Bins, Normal Mode (792 bytes) 45 :header-rows: 2 46 :stub-columns: 0 47 48 * - Offset 49 - :cspan:`4` Memory 50 * - 51 - [31:24] 52 - [23:16] 53 - [15:8] 54 - [7:0] 55 * - 0 56 - 57 - R/Cr/H max [7:0] 58 - 59 - R/Cr/H min [7:0] 60 * - 4 61 - 62 - G/Y/S max [7:0] 63 - 64 - G/Y/S min [7:0] 65 * - 8 66 - 67 - B/Cb/V max [7:0] 68 - 69 - B/Cb/V min [7:0] 70 * - 12 71 - :cspan:`4` R/Cr/H sum [31:0] 72 * - 16 73 - :cspan:`4` G/Y/S sum [31:0] 74 * - 20 75 - :cspan:`4` B/Cb/V sum [31:0] 76 * - 24 77 - :cspan:`4` R/Cr/H bin 0 [31:0] 78 * - 79 - :cspan:`4` ... 80 * - 276 81 - :cspan:`4` R/Cr/H bin 63 [31:0] 82 * - 280 83 - :cspan:`4` G/Y/S bin 0 [31:0] 84 * - 85 - :cspan:`4` ... 86 * - 532 87 - :cspan:`4` G/Y/S bin 63 [31:0] 88 * - 536 89 - :cspan:`4` B/Cb/V bin 0 [31:0] 90 * - 91 - :cspan:`4` ... 92 * - 788 93 - :cspan:`4` B/Cb/V bin 63 [31:0] 94 95.. flat-table:: VSP1 HGO Data - 64 Bins, Max Mode (264 bytes) 96 :header-rows: 2 97 :stub-columns: 0 98 99 * - Offset 100 - :cspan:`4` Memory 101 * - 102 - [31:24] 103 - [23:16] 104 - [15:8] 105 - [7:0] 106 * - 0 107 - 108 - max(R,G,B) max [7:0] 109 - 110 - max(R,G,B) min [7:0] 111 * - 4 112 - :cspan:`4` max(R,G,B) sum [31:0] 113 * - 8 114 - :cspan:`4` max(R,G,B) bin 0 [31:0] 115 * - 116 - :cspan:`4` ... 117 * - 260 118 - :cspan:`4` max(R,G,B) bin 63 [31:0] 119 120.. flat-table:: VSP1 HGO Data - 256 Bins, Normal Mode (1032 bytes) 121 :header-rows: 2 122 :stub-columns: 0 123 124 * - Offset 125 - :cspan:`4` Memory 126 * - 127 - [31:24] 128 - [23:16] 129 - [15:8] 130 - [7:0] 131 * - 0 132 - 133 - Y max [7:0] 134 - 135 - Y min [7:0] 136 * - 4 137 - :cspan:`4` Y sum [31:0] 138 * - 8 139 - :cspan:`4` Y bin 0 [31:0] 140 * - 141 - :cspan:`4` ... 142 * - 1028 143 - :cspan:`4` Y bin 255 [31:0] 144 145.. flat-table:: VSP1 HGO Data - 256 Bins, Max Mode (1032 bytes) 146 :header-rows: 2 147 :stub-columns: 0 148 149 * - Offset 150 - :cspan:`4` Memory 151 * - 152 - [31:24] 153 - [23:16] 154 - [15:8] 155 - [7:0] 156 * - 0 157 - 158 - max(R,G,B) max [7:0] 159 - 160 - max(R,G,B) min [7:0] 161 * - 4 162 - :cspan:`4` max(R,G,B) sum [31:0] 163 * - 8 164 - :cspan:`4` max(R,G,B) bin 0 [31:0] 165 * - 166 - :cspan:`4` ... 167 * - 1028 168 - :cspan:`4` max(R,G,B) bin 255 [31:0] 169