)]}' { "commit": "d1d94b0129dccd226784633c60b7df90e8a051b5", "tree": "e9c537463ac44b464773db96857fbd1b5b5ebf61", "parents": [ "b253c3026c29d4231099d3cf8d984d25787793af" ], "author": { "name": "Marek Vasut", "email": "marex@denx.de", "time": "Thu Oct 07 23:41:17 2021 +0200" }, "committer": { "name": "Dave Airlie", "email": "airlied@redhat.com", "time": "Fri Oct 15 15:04:58 2021 +1000" }, "message": "drm/nouveau/fifo: Reinstate the correct engine bit programming\n\nCommit 64f7c698bea9 (\"drm/nouveau/fifo: add engine_id hook\") replaced\nfifo/chang84.c g84_fifo_chan_engine() call with an indirect call of\nfifo/g84.c g84_fifo_engine_id(). The G84_FIFO_ENGN_* values returned\nfrom the later g84_fifo_engine_id() are incremented by 1 compared to\nthe previous g84_fifo_chan_engine() return values.\n\nThis is fine either way for most of the code, except this one line\nwhere an engine bit programmed into the hardware is derived from the\nreturn value. Decrement the return value accordingly, otherwise the\nwrong engine bit is programmed into the hardware and that leads to\nthe following failure:\nnouveau 0000:01:00.0: gr: 00000030 [ILLEGAL_MTHD ILLEGAL_CLASS] ch 1 [003fbce000 DRM] subc 3 class 0000 mthd 085c data 00000420\n\nOn the following hardware:\nlspci -s 01:00.0\n01:00.0 VGA compatible controller: NVIDIA Corporation GT216GLM [Quadro FX 880M] (rev a2)\nlspci -ns 01:00.0\n01:00.0 0300: 10de:0a3c (rev a2)\n\nFixes: 64f7c698bea9 (\"drm/nouveau/fifo: add engine_id hook\")\nSigned-off-by: Marek Vasut \u003cmarex@denx.de\u003e\nCc: \u003cstable@vger.kernel.org\u003e # 5.12+\nCc: Ben Skeggs \u003cbskeggs@redhat.com\u003e\nCc: Karol Herbst \u003ckherbst@redhat.com\u003e\nCc: Lyude Paul \u003clyude@redhat.com\u003e\nReviewed-by: Karol Herbst \u003ckherbst@redhat.com\u003e\nReviewed-by: Ben Skeggs \u003cbskeggs@redhat.com\u003e\nSigned-off-by: Karol Herbst \u003ckherbst@redhat.com\u003e\nLink: https://patchwork.freedesktop.org/patch/msgid/20211007214117.231472-1-marex@denx.de\nSigned-off-by: Dave Airlie \u003cairlied@redhat.com\u003e\n", "tree_diff": [ { "type": "modify", "old_id": "353b77d9b3dcffe35f12172e36e24b75cd454950", "old_mode": 33188, "old_path": "drivers/gpu/drm/nouveau/nvkm/engine/fifo/chang84.c", "new_id": "3492c561f2cfc858c4f776e1fd3d754d0136d544", "new_mode": 33188, "new_path": "drivers/gpu/drm/nouveau/nvkm/engine/fifo/chang84.c" } ] }