| /* SPDX-License-Identifier: GPL-2.0-only */ | |
| /* | |
| * Copyright (C) 2025 Icenowy Zheng <uwu@icenowy.me> | |
| */ | |
| #ifndef _VS_HWDB_H_ | |
| #define _VS_HWDB_H_ | |
| #include <linux/regmap.h> | |
| #include <linux/types.h> | |
| struct vs_formats { | |
| const u32 *primary_array; | |
| unsigned int primary_num; | |
| }; | |
| struct vs_chip_identity { | |
| u32 model; | |
| u32 revision; | |
| u32 customer_id; | |
| u32 display_count; | |
| /* | |
| * The hardware only supports square cursor planes, so this field | |
| * is both the maximum width and height in pixels. | |
| */ | |
| int32_t max_cursor_size; | |
| const struct vs_formats *formats; | |
| }; | |
| int vs_fill_chip_identity(struct regmap *regs, | |
| struct vs_chip_identity *ident); | |
| #endif /* _VS_HWDB_H_ */ |