@@ -84,6 +84,8 @@ class IoctlHelper {
8484 virtual bool setVmBoAdvise (Drm *drm, int32_t handle, uint32_t attribute, void *region) = 0;
8585 virtual bool setVmPrefetch (Drm *drm, uint64_t start, uint64_t length, uint32_t region) = 0;
8686 virtual uint32_t getDirectSubmissionFlag () = 0;
87+ virtual int32_t getMemRegionsIoctlVal () = 0;
88+ virtual int32_t getEngineInfoIoctlVal () = 0;
8789 virtual uint32_t getComputeSlicesIoctlVal () = 0;
8890 virtual std::unique_ptr<uint8_t []> prepareVmBindExt (const StackVec<uint32_t , 2 > &bindExtHandles) = 0;
8991 virtual uint64_t getFlagsForVmBind (bool bindCapture, bool bindImmediate, bool bindMakeResident) = 0;
@@ -113,7 +115,7 @@ class IoctlHelper {
113115 virtual bool isContextDebugSupported (Drm *drm) = 0;
114116 virtual int setContextDebugFlag (Drm *drm, uint32_t drmContextId) = 0;
115117 virtual bool isDebugAttachAvailable () = 0;
116- virtual unsigned int getIoctlRequestValue (DrmIoctl ioctlRequest) const = 0;
118+ virtual unsigned int getIoctlRequestValue (DrmIoctl ioctlRequest) = 0;
117119
118120 uint32_t createDrmContext (Drm &drm, const OsContext &osContext, uint32_t drmVmId);
119121
@@ -122,9 +124,6 @@ class IoctlHelper {
122124
123125 void fillExecBuffer (ExecBuffer &execBuffer, uintptr_t buffersPtr, uint32_t bufferCount, uint32_t startOffset, uint32_t size, uint64_t flags, uint32_t drmContextId);
124126 void logExecBuffer (const ExecBuffer &execBuffer, std::stringstream &logger);
125-
126- protected:
127- unsigned int getIoctlRequestValueBase (DrmIoctl ioctlRequest) const ;
128127};
129128
130129class IoctlHelperUpstream : public IoctlHelper {
@@ -145,6 +144,8 @@ class IoctlHelperUpstream : public IoctlHelper {
145144 bool setVmBoAdvise (Drm *drm, int32_t handle, uint32_t attribute, void *region) override ;
146145 bool setVmPrefetch (Drm *drm, uint64_t start, uint64_t length, uint32_t region) override ;
147146 uint32_t getDirectSubmissionFlag () override ;
147+ int32_t getMemRegionsIoctlVal () override ;
148+ int32_t getEngineInfoIoctlVal () override ;
148149 uint32_t getComputeSlicesIoctlVal () override ;
149150 std::unique_ptr<uint8_t []> prepareVmBindExt (const StackVec<uint32_t , 2 > &bindExtHandles) override ;
150151 uint64_t getFlagsForVmBind (bool bindCapture, bool bindImmediate, bool bindMakeResident) override ;
@@ -174,7 +175,7 @@ class IoctlHelperUpstream : public IoctlHelper {
174175 bool isContextDebugSupported (Drm *drm) override ;
175176 int setContextDebugFlag (Drm *drm, uint32_t drmContextId) override ;
176177 bool isDebugAttachAvailable () override ;
177- unsigned int getIoctlRequestValue (DrmIoctl ioctlRequest) const override ;
178+ unsigned int getIoctlRequestValue (DrmIoctl ioctlRequest) override ;
178179};
179180
180181template <PRODUCT_FAMILY gfxProduct>
@@ -188,7 +189,7 @@ class IoctlHelperImpl : public IoctlHelperUpstream {
188189
189190 uint32_t createGemExt (Drm *drm, const MemRegionsVec &memClassInstances, size_t allocSize, uint32_t &handle, std::optional<uint32_t > vmId) override ;
190191 std::vector<MemoryRegion> translateToMemoryRegions (const std::vector<uint8_t > ®ionInfo) override ;
191- unsigned int getIoctlRequestValue (DrmIoctl ioctlRequest) const override ;
192+ unsigned int getIoctlRequestValue (DrmIoctl ioctlRequest) override ;
192193};
193194
194195class IoctlHelperPrelim20 : public IoctlHelper {
@@ -209,6 +210,8 @@ class IoctlHelperPrelim20 : public IoctlHelper {
209210 bool setVmBoAdvise (Drm *drm, int32_t handle, uint32_t attribute, void *region) override ;
210211 bool setVmPrefetch (Drm *drm, uint64_t start, uint64_t length, uint32_t region) override ;
211212 uint32_t getDirectSubmissionFlag () override ;
213+ int32_t getMemRegionsIoctlVal () override ;
214+ int32_t getEngineInfoIoctlVal () override ;
212215 uint32_t getComputeSlicesIoctlVal () override ;
213216 std::unique_ptr<uint8_t []> prepareVmBindExt (const StackVec<uint32_t , 2 > &bindExtHandles) override ;
214217 uint64_t getFlagsForVmBind (bool bindCapture, bool bindImmediate, bool bindMakeResident) override ;
@@ -238,7 +241,7 @@ class IoctlHelperPrelim20 : public IoctlHelper {
238241 bool isContextDebugSupported (Drm *drm) override ;
239242 int setContextDebugFlag (Drm *drm, uint32_t drmContextId) override ;
240243 bool isDebugAttachAvailable () override ;
241- unsigned int getIoctlRequestValue (DrmIoctl ioctlRequest) const override ;
244+ unsigned int getIoctlRequestValue (DrmIoctl ioctlRequest) override ;
242245};
243246
244247} // namespace NEO
0 commit comments