mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-24 13:21:05 +00:00
78afd0ab38
This patch just adds the plumbing to allow for baked in blocklist rules or the downloadable blocklist to prevent certain configurations from getting WebGPU. It does not add any rules. It also changes us from allowing WebGPU only in nightly, including tests, to not release and not beta. This allows try to run the WebGPU tests as expected, since even try builds forked from mozilla-central are not considered nightly builds by CI (or so it seems). Differential Revision: https://phabricator.services.mozilla.com/D141682
92 lines
2.0 KiB
Plaintext
92 lines
2.0 KiB
Plaintext
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*-
|
|
* vim: sw=2 ts=8 et :
|
|
*/
|
|
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
include "mozilla/GfxMessageUtils.h";
|
|
|
|
using struct DxgiAdapterDesc from "mozilla/D3DMessageUtils.h";
|
|
using struct mozilla::null_t from "mozilla/ipc/IPCCore.h";
|
|
using mozilla::gfx::FeatureStatus from "gfxTelemetry.h";
|
|
using mozilla::gfx::BackendType from "mozilla/gfx/Types.h";
|
|
using mozilla::gfx::IntSize from "mozilla/gfx/Point.h";
|
|
using gfxImageFormat from "mozilla/gfx/Types.h";
|
|
using mozilla::gfx::D3D11Checks::VideoFormatOption from "mozilla/gfx/D3D11Checks.h";
|
|
using mozilla::gfx::D3D11Checks::VideoFormatOptionSet from "mozilla/gfx/D3D11Checks.h";
|
|
|
|
namespace mozilla {
|
|
namespace gfx {
|
|
|
|
struct D3D11DeviceStatus
|
|
{
|
|
bool isWARP;
|
|
bool textureSharingWorks;
|
|
uint32_t featureLevel;
|
|
DxgiAdapterDesc adapter;
|
|
int32_t sequenceNumber;
|
|
VideoFormatOptionSet formatOptions;
|
|
};
|
|
|
|
struct DevicePrefs
|
|
{
|
|
FeatureStatus hwCompositing;
|
|
FeatureStatus d3d11Compositing;
|
|
FeatureStatus oglCompositing;
|
|
FeatureStatus useD2D1;
|
|
FeatureStatus d3d11HwAngle;
|
|
};
|
|
|
|
struct ContentDeviceData
|
|
{
|
|
DevicePrefs prefs;
|
|
D3D11DeviceStatus d3d11;
|
|
uint8_t[] cmsOutputProfileData;
|
|
};
|
|
|
|
// Represents the state of a feature that has failed to initialize.
|
|
struct FeatureFailure
|
|
{
|
|
FeatureStatus status;
|
|
nsCString message;
|
|
nsCString failureId;
|
|
};
|
|
|
|
struct GPUDeviceData
|
|
{
|
|
// If a feature state has changed from Enabled -> Failure, these will be non-
|
|
// null.
|
|
FeatureFailure? d3d11Compositing;
|
|
FeatureFailure? oglCompositing;
|
|
D3D11DeviceStatus? gpuDevice;
|
|
};
|
|
|
|
union GfxVarValue
|
|
{
|
|
BackendType;
|
|
bool;
|
|
gfxImageFormat;
|
|
IntSize;
|
|
nsCString;
|
|
nsString;
|
|
int32_t;
|
|
float;
|
|
};
|
|
|
|
struct GfxVarUpdate
|
|
{
|
|
uint32_t index;
|
|
GfxVarValue value;
|
|
};
|
|
|
|
struct GfxInfoFeatureStatus
|
|
{
|
|
int32_t feature;
|
|
int32_t status;
|
|
nsCString failureId;
|
|
};
|
|
|
|
} // namespace gfx
|
|
} // namespace mozilla
|