xref: /linux/drivers/gpu/drm/arm/display/include/malidp_product.h (revision 8dd06ef34b6e2f41b29fbf5fc1663780f2524285)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * (C) COPYRIGHT 2018 ARM Limited. All rights reserved.
4  * Author: James.Qian.Wang <james.qian.wang@arm.com>
5  *
6  */
7 #ifndef _MALIDP_PRODUCT_H_
8 #define _MALIDP_PRODUCT_H_
9 
10 /* Product identification */
11 #define MALIDP_CORE_ID(__product, __major, __minor, __status) \
12 	((((__product) & 0xFFFF) << 16) | (((__major) & 0xF) << 12) | \
13 	(((__minor) & 0xF) << 8) | ((__status) & 0xFF))
14 
15 #define MALIDP_CORE_ID_PRODUCT_ID(__core_id) ((__u32)(__core_id) >> 16)
16 #define MALIDP_CORE_ID_MAJOR(__core_id)      (((__u32)(__core_id) >> 12) & 0xF)
17 #define MALIDP_CORE_ID_MINOR(__core_id)      (((__u32)(__core_id) >> 8) & 0xF)
18 #define MALIDP_CORE_ID_STATUS(__core_id)     (((__u32)(__core_id)) & 0xFF)
19 
20 /* Mali-display product IDs */
21 #define MALIDP_D71_PRODUCT_ID	0x0071
22 #define MALIDP_D32_PRODUCT_ID	0x0032
23 
24 union komeda_config_id {
25 	struct {
26 		__u32	max_line_sz:16,
27 			n_pipelines:2,
28 			n_scalers:2, /* number of scalers per pipeline */
29 			n_layers:3, /* number of layers per pipeline */
30 			n_richs:3, /* number of rich layers per pipeline */
31 			reserved_bits:6;
32 	};
33 	__u32 value;
34 };
35 
36 #endif /* _MALIDP_PRODUCT_H_ */
37