Giter Club home page Giter Club logo

xf86-video-opentegra's People

Contributors

airlied avatar alexdeucher avatar bartsch avatar cgwalters avatar cyndis avatar digetx avatar gfxstrand avatar jamesasimmons avatar jwrdegoede avatar keith-packard avatar kusma avatar kwizart avatar lynxeye-dev avatar mattst88 avatar memsize avatar nwnk avatar okias avatar saschahauer avatar thierryreding avatar tiwai avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

xf86-video-opentegra's Issues

(guess) musl incompatibility

make[3]: Entering directory '/home/pmos/build/src/xf86-video-opentegra-038906aeb104e50fa111d88a9d5def627d1dbca3/src'
  CC       opentegra_drv_la-common_helpers.lo
  CC       opentegra_drv_la-dri2.lo
  CC       opentegra_drv_la-driver.lo
  CC       opentegra_drv_la-drmmode_display.lo
  CC       opentegra_drv_la-vblank.lo
  CC       opentegra_drv_la-drm_plane.lo
  CC       opentegra_drv_la-xv.lo
  CC       exa/opentegra_drv_la-exa.lo
  CC       gpu/opentegra_drv_la-gr3d.lo
In file included from gpu/gr3d.h:30,
                 from gpu/gr3d.c:24:
./tegradrm/opentegra_lib.h:91:56: error: unknown type name 'time_t'; did you mean 'size_t'?
   91 | void drm_tegra_bo_cache_cleanup(struct drm_tegra *drm, time_t time);
      |                                                        ^~~~~~
      |                                                        size_t
make[3]: *** [Makefile:817: gpu/opentegra_drv_la-gr3d.lo] Error 1
make[3]: *** Waiting for unfinished jobs....
In file included from exa/tegra_exa.c:37,
                 from exa/exa.c:24:
exa/mm_fridge.c: In function 'tegra_exa_mm_compress_pixmap':
exa/mm_fridge.c:277:19: warning: unused variable 'compressed_bound' [-Wunused-variable]
  277 |     unsigned long compressed_bound;
      |                   ^~~~~~~~~~~~~~~~
exa/mm_fridge.c: In function 'tegra_exa_mm_decompress_pixmap':
exa/mm_fridge.c:432:23: warning: unused variable 'exa' [-Wunused-variable]
  432 |     struct tegra_exa *exa = tegra->exa;
      |                       ^~~
In file included from exa/tegra_exa.c:41,
                 from exa/exa.c:24:
exa/pixmap.c: In function 'tegra_exa_destroy_freelist_pixmap':
exa/pixmap.c:81:10: warning: variable 'released_data' set but not used [-Wunused-but-set-variable]
   81 |     bool released_data;
      |          ^~~~~~~~~~~~~
make[3]: Leaving directory '/home/pmos/build/src/xf86-video-opentegra-038906aeb104e50fa111d88a9d5def627d1dbca3/src'
make[2]: *** [Makefile:522: all] Error 2
make[2]: Leaving directory '/home/pmos/build/src/xf86-video-opentegra-038906aeb104e50fa111d88a9d5def627d1dbca3/src'
make[1]: *** [Makefile:520: all-recursive] Error 1
make[1]: Leaving directory '/home/pmos/build/src/xf86-video-opentegra-038906aeb104e50fa111d88a9d5def627d1dbca3'
make: *** [Makefile:431: all] Error 2

whole CI log: https://gitlab.com/alpine-mobile/pmaports/-/jobs/1163164694 (fails on both armhf & armv7)

Test results on Toshiba AC100/error messages

Testing xf86-video-opentegra on AC100 with mainline/stable kernel 5.1.1, Arch Linux ARM.
Driver and assocated mesa etc. built on AC100 using AUR packages from aa13q.
Kernel has CONFIG_ARM_TEGRA_STAGING enabled or the driver won't load.
Some CFLAG adjustment (remove -fno-plt) was needed to allow xf86-video-opentegra load-time 'undefined symbol' errors.
glxgears improves from 27 with modesetting driver to 66fps.

Some gui applications (ex: Midori) fail to draw screen correctly with:

grate_screen_get_param: unsupported parameter: 159
(repeats multiple times)
grate_screen_get_param: unsupported parameter: 159
WebKitWebProcess: grate_resource.c:200: grate_screen_resource_create: Assertion `format >= 0' failed.

Strange behavior of startx (xorg-server) on aarch64 devices

I know it doesn't belong here, but as a developer, maybe you'll help me.

Machine: Jetson TX2 (Tegra186) Kernel: 5.17.4 aarch64

After successful compilation and installation of xorg-server ver. 21.1.3 I have an interesting problem. I use startx. The first time you use startx, it starts without a problem. After logging out, I will run startx for the second time. No problem. When I try it after the third X will no longer run and the error message "AddScreen / ScreenInit failed for driver 0" will appear in xorg.log. After the system restarts, the situation repeats. Twice okay. Third - "AddScreen / ScreenInit failed for driver 0".

Question: Where should I start to address this issue?

I have the same installed on an x86 machine. I have no problem here.

libturbojpeg dependency instead of libturbojpeg0

Can you please change debian/control for xserver-xorg-video-opentegra to depend on libturbojpeg0 instead of libturbojpeg ?

Source package already depends on libturbojpeg0-dev and libturbojpeg doesn't exists on Debian, so rebuild packages won't install without manually changing debian/control and rebuilding.

README is outdated

@okias, can you explain in the README why the git repo lives here and not on freedesktop.org?

The master development code repository can be found at:

   git://anongit.freedesktop.org/git/xorg/driver/xf86-video-tegra

   http://cgit.freedesktop.org/xorg/driver/xf86-video-tegra

These links are dead.

Also since you are upstream, how about tagging releases? 🙂

Driver ABI update?

A recent xorg-server update on arch linux generated conflicts with xf86-video-opentegra-git from AUR, so I updated the package conflict X-ABI-VIDEODRV_VERSION. This driver installs fine now, but it seems to be missing symbols, preventing xorg from loading it. The error message for xorg server version 1.21.1.3 reads:
Failed to load /usr/lib/xorg/modules/drivers/opentegra_drv.so: /usr/lib/xorg/modules/drivers/opentegra_drv.so: undefined symbol: exaDriverFini
Maybe implementing exaDriverFini is enough to get the driver running again?

'dri2.h' declared in 'driver.h' not found

In file included from /tmp/portage/x11-drivers/xf86-video-opentegra-9999/work/xf86-video-opentegra-9999/src/dri2.c:1:0:
/tmp/portage/x11-drivers/xf86-video-opentegra-9999/work/xf86-video-opentegra-9999/src/driver.h:96:18: fatal error: dri2.h: No such file or directory
In file included from /tmp/portage/x11-drivers/xf86-video-opentegra-9999/work/xf86-video-opentegra-9999/src/common_helpers.c:23:0:
/tmp/portage/x11-drivers/xf86-video-opentegra-9999/work/xf86-video-opentegra-9999/src/driver.h:96:18: fatal error: dri2.h: No such file or directory
In file included from /tmp/portage/x11-drivers/xf86-video-opentegra-9999/work/xf86-video-opentegra-9999/src/driver.c:32:0:
/tmp/portage/x11-drivers/xf86-video-opentegra-9999/work/xf86-video-opentegra-9999/src/driver.h:96:18: fatal error: dri2.h: No such file or directory
compilation terminated.
compilation terminated.
compilation terminated.
make[2]: *** [Makefile:513: dri2.lo] Error 1
make[2]: *** Waiting for unfinished jobs....
make[2]: *** [Makefile:513: common_helpers.lo] Error 1
make[2]: *** [Makefile:513: driver.lo] Error 1
make[2]: Leaving directory '/tmp/portage/x11-drivers/xf86-video-opentegra-9999/work/xf86-video-opentegra-9999_build/src'
make[1]: *** [Makefile:502: all-recursive] Error 1
make[1]: Leaving directory '/tmp/portage/x11-drivers/xf86-video-opentegra-9999/work/xf86-video-opentegra-9999_build'
make: *** [Makefile:413: all] Error 2

I found dri2.h in xcb, is it a PATH declaration issue?

Driver causes memory-controller related issues

Installing this driver on a tegra30 based tablet (corresponding package for postmarketOS: link) apparently poses an issue to the embedded memory controller.
Linux version is: 5.12.0-rc2-00208-ga74e6a014c9d-dirty
Examples for error messages are:
tegra-mc 7000f000.memory-controller: idxsrd2: read @0x00801000: EMEM address decode error (EMEM decode error) (Addresses sometimes vary)
and
tegra_mc_irq: n callbacks suppressed (replace n by a two place decimal number).
A bunch of these would be spit out every now and then.
The screen output also indicates that something is going wrong: on the desktop some horizontal stripes of icons are rendered correctly while others are not (or are missing entirely).
Any ideas on what might be the cause(es) of this issue?

Both tegra dc outputs are required?

I'm running the current master branch (feac058). The device is the Ouya running Alpine Linux and xfce4.

When the second tegra dc node is disabled in device tree, there is a crash in the opentegra driver. It is easy to reproduce by rapidly changing the xfce4 theme or a system font size/dpi.

The crash does not happen when both tegra dc devices are enabled. I guess it is makes no difference to have them both enabled. I thought it was safe to disable the second dc because there is no way to use a secondary display on this device anyways.

backtrace from the crash:

#0  drmmode_crtc_map_rotate_bo (scrn=scrn@entry=0x65d840, crtc_num=crtc_num@entry=1) at drmmode_display.c:1471
#1  0xb6649c5c in TegraEXAModifyPixmapHeader (pPixmap=0xa00eb0, width=6, height=8, depth=8, bitsPerPixel=8, devKind=-1, pPixData=0xa43ca4) at exa.c:424
#2  0xb6af7f8c in exaModifyPixmapHeader_driver (pPixmap=0xa00eb0, width=6, height=8, depth=8, bitsPerPixel=8, devKind=-1, pPixData=0xa43ca4) at exa_driver.c:162
#3  0x00534dae in GetScratchPixmapHeader (pScreen=pScreen@entry=0x661360, width=width@entry=6, height=height@entry=8, depth=depth@entry=8,
    bitsPerPixel=bitsPerPixel@entry=8, devKind=devKind@entry=-1, pPixData=pPixData@entry=0xa43ca4) at pixmap.c:65
#4  0x0059c7d0 in ProcRenderAddGlyphs (client=<optimized out>) at render.c:1102
#5  0x00523872 in Dispatch () at dispatch.c:478
#6  0x00525f44 in dix_main (argc=10, argv=0xbecdfe44, envp=<optimized out>) at main.c:276
#7  0xb6f71e4e in libc_start_main_stage2 (main=0x5186f5 <main>, argc=10, argv=0xbecdfe44) at src/env/__libc_start_main.c:94
#8  0x0051873c in _start_c (p=<optimized out>) at crt/crt1.c:18
#9  0x00518710 in _start () at render.c:2060

struct tegra_stream has no member named fence

/tmp/portage/x11-drivers/xf86-video-opentegra-9999/work/xf86-video-opentegra-9999/src/tegra_stream.c: In function ���tegra_stream_cleanup���:
/tmp/portage/x11-drivers/xf86-video-opentegra-9999/work/xf86-video-opentegra-9999/src/tegra_stream.c:78:32: error: ���struct tegra_stream��� has no member named ���fence���
drm_tegra_fence_free(stream->fence);
^
/tmp/portage/x11-drivers/xf86-video-opentegra-9999/work/xf86-video-opentegra-9999/src/tegra_stream.c:82:11: error: ���struct tegra_stream��� has no member named ���fence���
stream->fence = NULL;
^

opentegra for tegra 186

Opentegra does not currently support tegra 186.
It is being considered with support for the future.

Tearing

Is there a way to get around screen tearing?

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.