-static int rockchip_add_kms_item(struct driver *drv, const struct kms_item *item)
-{
- uint32_t i, j;
- uint64_t use_flags;
- struct combination *combo;
- struct format_metadata metadata;
-
- for (i = 0; i < drv_array_size(drv->combos); i++) {
- combo = (struct combination *)drv_array_at_idx(drv->combos, i);
- if (combo->format == item->format) {
- if (item->modifier == DRM_FORMAT_MOD_CHROMEOS_ROCKCHIP_AFBC) {
- use_flags = BO_USE_RENDERING | BO_USE_SCANOUT | BO_USE_TEXTURE;
- metadata.modifier = item->modifier;
- metadata.tiling = 0;
- metadata.priority = 2;
-
- for (j = 0; j < ARRAY_SIZE(texture_source_formats); j++) {
- if (item->format == texture_source_formats[j])
- use_flags &= ~BO_USE_RENDERING;
- }
-
- drv_add_combinations(drv, &item->format, 1, &metadata, use_flags);
- } else {
- combo->use_flags |= item->use_flags;
- }
- }
- }
-
- return 0;
-}
-