mirror of
https://chromium.googlesource.com/crosvm/crosvm
synced 2025-02-05 18:20:34 +00:00
rutabaga_gfx: Expose "fake" capset for minigbm
minigbm virtgpu_cross_domain backend checks for this capset. Eventually once this check is removed in minigbm (once everyone is using the context-types arg to control whether cross-domain is exposed) we can drop the dummy capset. But we need it for now. BUG=b:230100768 TEST=gfxbench, android games in arcvm Change-Id: I7c955c365f439806c797d1d38daef2e1c9b3079f Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3608703 Auto-Submit: Rob Clark <robdclark@chromium.org> Tested-by: kokoro <noreply+kokoro@google.com> Reviewed-by: Daniel Verkamp <dverkamp@chromium.org>
This commit is contained in:
parent
d570dc761f
commit
82c5129590
1 changed files with 14 additions and 1 deletions
|
@ -218,7 +218,7 @@ struct RutabagaCapsetInfo {
|
||||||
pub name: &'static str,
|
pub name: &'static str,
|
||||||
}
|
}
|
||||||
|
|
||||||
const RUTABAGA_CAPSETS: [RutabagaCapsetInfo; 6] = [
|
const RUTABAGA_CAPSETS: [RutabagaCapsetInfo; 7] = [
|
||||||
RutabagaCapsetInfo {
|
RutabagaCapsetInfo {
|
||||||
capset_id: RUTABAGA_CAPSET_VIRGL,
|
capset_id: RUTABAGA_CAPSET_VIRGL,
|
||||||
component: RutabagaComponentType::VirglRenderer,
|
component: RutabagaComponentType::VirglRenderer,
|
||||||
|
@ -244,6 +244,11 @@ const RUTABAGA_CAPSETS: [RutabagaCapsetInfo; 6] = [
|
||||||
component: RutabagaComponentType::CrossDomain,
|
component: RutabagaComponentType::CrossDomain,
|
||||||
name: "cross-domain",
|
name: "cross-domain",
|
||||||
},
|
},
|
||||||
|
RutabagaCapsetInfo {
|
||||||
|
capset_id: 30,
|
||||||
|
component: RutabagaComponentType::CrossDomain,
|
||||||
|
name: "minigbm-cross-domain",
|
||||||
|
},
|
||||||
RutabagaCapsetInfo {
|
RutabagaCapsetInfo {
|
||||||
capset_id: RUTABAGA_CAPSET_DRM,
|
capset_id: RUTABAGA_CAPSET_DRM,
|
||||||
component: RutabagaComponentType::VirglRenderer,
|
component: RutabagaComponentType::VirglRenderer,
|
||||||
|
@ -259,6 +264,13 @@ pub fn calculate_context_mask(context_names: Vec<String>) -> u64 {
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// TODO remove once
|
||||||
|
// https://android-review.googlesource.com/c/platform/external/minigbm/+/2101455
|
||||||
|
// is picked back to rvc-arc branch:
|
||||||
|
if context_mask & (1 << RUTABAGA_CAPSET_DRM) != 0 {
|
||||||
|
context_mask |= 1 << 30;
|
||||||
|
}
|
||||||
|
|
||||||
context_mask
|
context_mask
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -989,6 +1001,7 @@ impl RutabagaBuilder {
|
||||||
let cross_domain = CrossDomain::init(self.channels)?;
|
let cross_domain = CrossDomain::init(self.channels)?;
|
||||||
rutabaga_components.insert(RutabagaComponentType::CrossDomain, cross_domain);
|
rutabaga_components.insert(RutabagaComponentType::CrossDomain, cross_domain);
|
||||||
push_capset(RUTABAGA_CAPSET_CROSS_DOMAIN);
|
push_capset(RUTABAGA_CAPSET_CROSS_DOMAIN);
|
||||||
|
push_capset(30);
|
||||||
}
|
}
|
||||||
|
|
||||||
Ok(Rutabaga {
|
Ok(Rutabaga {
|
||||||
|
|
Loading…
Reference in a new issue