Giter VIP home page Giter VIP logo

Comments (10)

corngood avatar corngood commented on July 29, 2024

Damn, looks like more patches will be needed for 4.8, and it doesn't look like it's been done at https://github.com/Lucretia/vulkan-overlay (gentoo) yet.

I don't have much time to work on this at the moment, so I'd personally rather wait for 4.8 to be released, but if anyone wants to do a PR that doesn't break 4.7, I'll take it.

from archlinux-amdgpu-pro.

nathan-osman avatar nathan-osman commented on July 29, 2024

Some of the errors do look like easy fixes. I may take a stab at this.

from archlinux-amdgpu-pro.

nathan-osman avatar nathan-osman commented on July 29, 2024

The necessary changes are as follows (I haven't yet figured out how to properly apply a patch to the module source code):

  • amd/amdgpu/amdgpu_ttm.c:291 - remove no_wait_gpu parameter
  • amd/amdgpu/amdgpu_ttm.c:337, 370, & 432 - insert false after second parameter
  • amd/amdgpu/amdgpu_display.c:269 - change line to r = drm_crtc_vblank_get(crtc);
  • amd/amdgpu/amdgpu_display.c:294 - change line to r = drm_crtc_vblank_put(crtc);
  • amd/amdgpu/amdgpu_sa.c:430 - change %d to %lld
  • amd/amdgpu/dce_v8_0.c:2577, amd/amdgpu/dce_v10_0.c:2670, & amd/amdgpu/dce_v11_0.c:2680 - change return type to int
  • amd/amdgpu/dce_v8_0.c:2578, amd/amdgpu/dce_v10_0.c:2671, & amd/amdgpu/dce_v11_0.c:2681 - remove start parameter
  • amd/amdgpu/dce_v8_0.c:2581, amd/amdgpu/dce_v10_0.c:2674, & amd/amdgpu/dce_v11_0.c:2684 - change line to int i;
  • amd/amdgpu/dce_v8_0.c:2584, amd/amdgpu/dce_v10_0.c:2677, & amd/amdgpu/dce_v11_0.c:2687 - change line to for (i = 0; i < size; i++) {
  • amd/amdgpu/dce_v8_0.c:2589, amd/amdgpu/dce_v10_0.c:2682, & amd/amdgpu/dce_v11_0.c:2692 - add return 0;
  • amd/amdgpu/dce_v8_0.c:3375, amd/amdgpu/dce_v10_0.c:3371, & amd/amdgpu/dce_v11_0.c:3431 - change line to drm_crtc_send_vblank_event(&amdgpu_crtc->base, works->event);
  • amd/amdgpu/dce_v8_0.c:3379, amd/amdgpu/dce_v10_0.c:3375, & amd/amdgpu/dce_v11_0.c:3435 - change line to drm_crtc_vblank_put(&amdgpu_crtc->base);
  • amd/amdgpu/amdgpu_acp.c:424-446 - remove lines
  • amd/dal/amdgpu_dm/amdgpu_dm_types.c:982 - change return type to int
  • amd/dal/amdgpu_dm/amdgpu_dm_types.c:987 - remove line
  • amd/dal/amdgpu_dm/amdgpu_dm_types.c:994 - add return 0;
  • amd/dal/amdgpu_dm/amdgpu_dm_types.c:2221 - change function parameters to state, true
  • amd/dal/amdgpu_dm/amdgpu_dm.c:199 - change function to drm_crtc_send_vblank_event
  • amd/dal/amdgpu_dm/amdgpu_dm.c:200 - change line to &amdgpu_crtc->base,
  • amd/dal/amdgpu_dm/amdgpu_dm.c:201 - remove line
  • amd/backport/kcl_ttm.c:111 - change to bo->moving = NULL;

Note: this is to make the module compile - I have not tested it yet.

from archlinux-amdgpu-pro.

nathan-osman avatar nathan-osman commented on July 29, 2024

If someone can show me how to properly create a patch, I can convert my list of changes into something that can be applied more easily 😛

from archlinux-amdgpu-pro.

nathan-osman avatar nathan-osman commented on July 29, 2024

In the meantime, I have converted this into a diff so that it would be slightly easier to apply:

patch.txt

(Apparently GitHub doesn't like files with .diff extension.)

from archlinux-amdgpu-pro.

corngood avatar corngood commented on July 29, 2024

Thanks for the patch. A patch in that format is suitable to be dropped in the root of the project (e.g. as 0011-linux-4.8-fixes.patch. Then you just need to run build.sh to generate the PKGBUILD.

I think most of it will need to be wrapped in #if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 8, 0). Other than that, the only thing that concerns me is the removal of the contents of acp_resume. Why did you need to do that?

When you've tested it could you let me know how it went, and which GPU you used?

Cheers

from archlinux-amdgpu-pro.

NogradThGin avatar NogradThGin commented on July 29, 2024

I will work on a patch for 4.8 in this week i'm on 4.8 too and succeded to install DKMS for it (all working fine) using Linux 4.8 (Git version) + BFS/BFQ Patch and GCC CPU Optimizations Patch (kernel part).

The only thing is amdgpu folder is over 1000 lines modified (such a pain for creating a patch for all thing 🎯 )

I will do it anyway (first a "primitive" patch for make it work) (and second a full patch containing all modification on 4.8)

from archlinux-amdgpu-pro.

corngood avatar corngood commented on July 29, 2024

Do you think it's worth looking at the steamos version (#17)? It's possible the driver in (16.40) is compatible with newer kernels. It's kind of a long shot since I think SteamOS is on 4.1, but I haven't looked at it at all.

from archlinux-amdgpu-pro.

pattop avatar pattop commented on July 29, 2024

The removal of the contents of acp_resume is consistent with commit 39dd0f234fc37da071dadbd9b49fe800d62139b4 in linux.

I successfully built and ran a driver with these changes on an RX 480 under kernel 4.8.6 which worked fine.

Unfortunately it still doesn't help me run my Dell UP3214Q at 60Hz using MST :(

from archlinux-amdgpu-pro.

corngood avatar corngood commented on July 29, 2024

This will be fixed in 16.60, see #28

from archlinux-amdgpu-pro.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.