| /* SPDX-License-Identifier: GPL-2.0-only WITH Linux-syscall-note */ | |
| /* | |
| * RP1 PiSP Front End statistics definitions | |
| * | |
| * Copyright (C) 2021 - Raspberry Pi Ltd. | |
| * | |
| */ | |
| #ifndef _UAPI_PISP_FE_STATISTICS_H_ | |
| #define _UAPI_PISP_FE_STATISTICS_H_ | |
| #include <linux/types.h> | |
| #define PISP_FLOATING_STATS_NUM_ZONES 4 | |
| #define PISP_AGC_STATS_NUM_BINS 1024 | |
| #define PISP_AGC_STATS_SIZE 16 | |
| #define PISP_AGC_STATS_NUM_ZONES (PISP_AGC_STATS_SIZE * PISP_AGC_STATS_SIZE) | |
| #define PISP_AGC_STATS_NUM_ROW_SUMS 512 | |
| struct pisp_agc_statistics_zone { | |
| __u64 Y_sum; | |
| __u32 counted; | |
| __u32 pad; | |
| } __attribute__((packed)); | |
| struct pisp_agc_statistics { | |
| __u32 row_sums[PISP_AGC_STATS_NUM_ROW_SUMS]; | |
| /* | |
| * 32-bits per bin means an image (just less than) 16384x16384 pixels | |
| * in size can weight every pixel from 0 to 15. | |
| */ | |
| __u32 histogram[PISP_AGC_STATS_NUM_BINS]; | |
| struct pisp_agc_statistics_zone floating[PISP_FLOATING_STATS_NUM_ZONES]; | |
| } __attribute__((packed)); | |
| #define PISP_AWB_STATS_SIZE 32 | |
| #define PISP_AWB_STATS_NUM_ZONES (PISP_AWB_STATS_SIZE * PISP_AWB_STATS_SIZE) | |
| struct pisp_awb_statistics_zone { | |
| __u32 R_sum; | |
| __u32 G_sum; | |
| __u32 B_sum; | |
| __u32 counted; | |
| } __attribute__((packed)); | |
| struct pisp_awb_statistics { | |
| struct pisp_awb_statistics_zone zones[PISP_AWB_STATS_NUM_ZONES]; | |
| struct pisp_awb_statistics_zone floating[PISP_FLOATING_STATS_NUM_ZONES]; | |
| } __attribute__((packed)); | |
| #define PISP_CDAF_STATS_SIZE 8 | |
| #define PISP_CDAF_STATS_NUM_FOMS (PISP_CDAF_STATS_SIZE * PISP_CDAF_STATS_SIZE) | |
| struct pisp_cdaf_statistics { | |
| __u64 foms[PISP_CDAF_STATS_NUM_FOMS]; | |
| __u64 floating[PISP_FLOATING_STATS_NUM_ZONES]; | |
| } __attribute__((packed)); | |
| struct pisp_statistics { | |
| struct pisp_awb_statistics awb; | |
| struct pisp_agc_statistics agc; | |
| struct pisp_cdaf_statistics cdaf; | |
| } __attribute__((packed)); | |
| #endif /* _UAPI_PISP_FE_STATISTICS_H_ */ |