2021-05-26 19:09:36 +00:00
|
|
|
#ifndef __NVIF_FIFO_H__
|
|
|
|
#define __NVIF_FIFO_H__
|
|
|
|
#include <nvif/device.h>
|
|
|
|
|
2021-10-02 16:09:28 +00:00
|
|
|
/* Returns mask of runlists that support a NV_DEVICE_INFO_RUNLIST_ENGINES_* type. */
|
2021-05-26 19:09:36 +00:00
|
|
|
u64 nvif_fifo_runlist(struct nvif_device *, u64 engine);
|
|
|
|
|
|
|
|
/* CE-supporting runlists (excluding GRCE, if others exist). */
|
|
|
|
static inline u64
|
|
|
|
nvif_fifo_runlist_ce(struct nvif_device *device)
|
|
|
|
{
|
2021-10-02 16:09:28 +00:00
|
|
|
u64 runmgr = nvif_fifo_runlist(device, NV_DEVICE_HOST_RUNLIST_ENGINES_GR);
|
|
|
|
u64 runmce = nvif_fifo_runlist(device, NV_DEVICE_HOST_RUNLIST_ENGINES_CE);
|
2021-05-26 19:09:36 +00:00
|
|
|
if (runmce && !(runmce &= ~runmgr))
|
|
|
|
runmce = runmgr;
|
|
|
|
return runmce;
|
|
|
|
}
|
|
|
|
#endif
|