[Bug 198459] x11-servers/xorg-server: Fails to detect most video cards on sparc64 in 11.0-CURRENT

classic Classic list List threaded Threaded
15 messages Options
Reply | Threaded
Open this post in threaded view
|

[Bug 198459] x11-servers/xorg-server: Fails to detect most video cards on sparc64 in 11.0-CURRENT

bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=198459

            Bug ID: 198459
           Summary: x11-servers/xorg-server: Fails to detect most video
                    cards on sparc64 in 11.0-CURRENT
           Product: Ports & Packages
           Version: Latest
          Hardware: sparc64
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: Individual Port(s)
          Assignee: [hidden email]
          Reporter: [hidden email]
                CC: [hidden email]
                CC: [hidden email]
             Flags: maintainer-feedback?([hidden email])
          Assignee: [hidden email]

xorg-server 1.14 on sparc64 in 11.0-CURRENT (r279210) fails to utilize some
graphics drivers.

Steps to reproduce: install 11.0-CURRENT on sparc64 with either an ATI Radeon
or Mach64 card and install the xorg-server and approprate drivers.  Run `Xorg
-configure` and attempt to launch an X server with the generated configuration.

Actual results: X server fails to launch; Xorg.0.log excerpts shown below.

Expected results: an X server launches and displays on the primary monitor.

Hardware: Sun Blade 1000

Software: Stock 11.0-CURRENT, GENERIC kernel, listed revision, ports built with
default options on 2014-March-04 with up-to-date tree.

x11-drivers/xf86-video-ati-ums and x11-drivers/xf86-video-mach64 both give
errors during `Xorg -configure` (mach64 example here, ati is identical except
for the driver name):

(EE) Unable to map mmio aperture.  Permission denied (13)
(WW) MACH64: Mach64 in slot 0:2:0 could not be detected!

When attempting to launch X.org with the generated xorg.conf, the server fails
to launch with message:

(EE) no screens found(EE)

Notes:
 - Card tested with ATI UMS driver = Sun XVR-100
 - Card tested with Mach64 driver = Sun PGX64

Troubleshooting steps taken:
 - Tried with both syscons and vt; the results are the same in each case
 - Tried rolling back to xorg-server 1.12.4 (including rebuild of drivers);
results are the same
 - Tried rolling back to xorg-server 1.7.7 (including reduild of drivers); the
server finds devices properly, but still fails to set up MMIO with the
"permission denied" error

Possibly related:
 - xf86-video-scfb allows the X server to start when using VT (not syscons),
but gives only a black screen.  The server restarts after a short time with a
memory error.  Exact message can be provided if needed.

--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
[hidden email] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-sparc64
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|

[Bug 198459] x11-servers/xorg-server: Fails to detect most video cards on sparc64 in 11.0-CURRENT

bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=198459

--- Comment #1 from [hidden email] ---
Typo: ports build on 2015-March-04, not 2014 as previously states

--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
[hidden email] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-sparc64
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|

[Bug 198459] x11-servers/xorg-server: Fails to detect most video cards on sparc64 in 11.0-CURRENT

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=198459

--- Comment #2 from [hidden email] ---
Found the offending syscall:

mmap(0x0,65536,PROT_READ|PROT_WRITE,MAP_SHARED,7,0x160000)

which returns EINVAL

--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
[hidden email] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-sparc64
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|

[Bug 198459] x11-servers/xorg-server: Fails to detect most video cards on sparc64 in 11.0-CURRENT

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=198459

Jean-Sebastien Pedron <[hidden email]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |[hidden email]

--- Comment #3 from Jean-Sebastien Pedron <[hidden email]> ---
Hi!

What are the PCI IDs of your video cards?

Maybe we can enable the Radeon kernel video driver on sparc64 (we are about to
do it for powerpc64), though I didn't look into it yet.

--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
[hidden email] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-sparc64
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|

[Bug 198459] x11-servers/xorg-server: Fails to detect most video cards on sparc64 in 11.0-CURRENT

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=198459

--- Comment #4 from [hidden email] ---
(In reply to Jean-Sebastien Pedron from comment #3)

`pciconf -lvb` entry for the Sun XVR-100:
-----------------------------------------
vgapci0@pci0:0:2:0:    class=0x030000 card=0x09081002 chip=0x51591002 rev=0x00
hdr=0x00
    vendor     = 'Advanced Micro Devices [AMD] nee ATI'
    device     = 'RV100 QY [Radeon 7000/VE]'
    class      = display
    subclass   = VGA
    bar   [10] = type Prefetchable Memory, range 32, base 0x8000000, size
134217728, enabled
    bar   [14] = type I/O Port, range 32, base 0x700, size 256, enabled
    bar   [18] = type Memory, range 32, base 0x160000, size 65536, enabled
-----------------------------------------

and `pciconf -lvb` for the Sun PGX64:
-------------------------------------
machfb0@pci1:0:1:0:    class=0x030000 card=0x00000000 chip=0x47521002 rev=0x27
hdr=0x00
    vendor     = 'Advanced Micro Devices [AMD] nee ATI'
    device     = 'Rage XL'
    class      = display
    subclass   = VGA
    bar   [10] = type Memory, range 32, base 0x1000000, size 16777216, enabled
    bar   [14] = type I/O Port, range 32, base 0x400, size 256, enabled
    bar   [18] = type Memory, range 32, base 0x102000, size 4096, enabled
-------------------------------------

and PCI probe lines from Xorg.0.log:
------------------------------------
[   494.844] (--) PCI: (0:0:2:0) 1002:5159:1002:0908 rev 0, Mem @
0x08000000/134217728, 0x00160000/65536, I/O @ 0x00000700/256, BIOS @
0x????????/65536
[   494.849] (--) PCI: (1:0:1:0) 1002:4752:0000:0000 rev 39, Mem @
0x01000000/16777216, 0x00102000/4096, I/O @ 0x00000400/256, BIOS @
0x????????/65536
------------------------------------

After some investigation with truss, I found that specifying the BusID in
Xorg.conf for both cards allowed me to get a bit farther.  In that case, I was
able to get a working display with the PGX64 only when using syscons.

The XVR-100 is, of course, not supported with syscons on sparc64 as there's no
framebuffer available for it.  When using vt as the console, attempts by X.org
to mmap either device returned errno 22 (EINVAL).

So, I've got a working display at the moment, but there are some take-away
items here:

 1 - It appears that the X.org mach64 and ati drivers do not work with vt on
sparc64, at least when not accelerated.  My guess (just speculation here) is
that vt isn't allow mmap'ing /dev/ttyv0.  Not sure if this is a
platform-specific bug / todo or intentional design.

 1a - If it's a platform-specific bug or to-do, then we can close this bug out
and I'll open a new one to get it fixed, and start coding away at that.

 1b - If it's intentional design, we need to document it somewhere that sparc64
users can easily get to it, like release notes or hardware notes.

 2 - I'd like to solicit the input and assistance of the FreeBSD DRI1 / DRI2
folks to determine a best path forward for supporting a wider variety of X.org
graphics options on sparc64.  Having just a single model of graphics card with
a paltry 8MB of RAM, unaccelerated, isn't going to cut it.  I'm more than
willing to code for this, but want to make sure it's done in a way that has
some longevity.

--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
[hidden email] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-sparc64
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|

[Bug 198459] x11-servers/xorg-server: Fails to detect most video cards on sparc64 in 11.0-CURRENT

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=198459

--- Comment #5 from Jean-Sebastien Pedron <[hidden email]> ---
(In reply to gmbroome from comment #4)
>  2 - I'd like to solicit the input and assistance of the FreeBSD DRI1
> / DRI2 folks to determine a best path forward for supporting a wider
> variety of X.org graphics options on sparc64.

I think the Radeon kernel driver is the best option here: if we get it to work,
the entire graphics stack and vt(4) will work. For instance, your Sun XVR-100
card is listed as supported.

I tried to build it on sparc64 and some APIs are missing. The first failure is
the lack of some atomic operations, such as atomic_swap_*.

Is this something you are willing to work on?

--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
[hidden email] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-sparc64
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|

[Bug 198459] x11-servers/xorg-server: Fails to detect most video cards on sparc64 in 11.0-CURRENT

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=198459

--- Comment #6 from [hidden email] ---
(In reply to Jean-Sebastien Pedron from comment #5)

Absolutely.  In fact, I'd already started tinkering with it before filing my
bug report.  I got DRM[1] to build on sparc64, fire up, and present
dev/dri/card* for the radeon and mach64 drivers but hadn't gotten much further.
 That, of course, still ran in to the failure to mmap /dev/ttyv0 on vt since
it's UMS.

Now that I've at least got a working display with the PGX64, even if it's very
underpowered, I'll redirect my efforts into getting DRM2 working on sparc64.
Is there a specific section under SVN projects for PPC64 DRM2 that I should be
looking at to see the work that's been done there so far?

Side note: IMHO it would still be a good idea to have some obvious, point-blank
note on the sparc64 page, in the interim (since vt is the default now), "hey,
your Xorg graphics drivers probably won't work with vt, and even on syscons you
may need to manually specify BusID info."  That might save future partygoers
some headache and confusion.

--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
[hidden email] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-sparc64
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|

[Bug 198459] x11-servers/xorg-server: Fails to detect most video cards on sparc64 in 11.0-CURRENT

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=198459

--- Comment #7 from Jean-Sebastien Pedron <[hidden email]> ---
Just to clarify, I only had "drm2" in my mind in my previous comments.

The work on powerpc64 happened in the DRM 3.8 update branch on GitHub:
https://github.com/dumbbell/freebsd/tree/kms-drm-update-38

Beside enabling the build, I think the only changes was this one:
https://github.com/dumbbell/freebsd/commit/7d324a7905741f8713d3236cd39d2e19f590c7d0

The following patch should be sufficient to enable the build of the DRM
subsystem on sparc64 (still talking about "drm2"):
https://people.freebsd.org/~dumbbell/graphics/drm-sparc64.a.patch

On Linux, the driver already works on powerpc, powerpc64 or sparc64 for that
matter. So most changes are required outside of it. For instance, powerpc lacks
 64bit atomic operations, that's why it's not enabled there.

FYI, I plan to commit the DRM 3.8 branch next week. So if you work on this, use
that branch, not vanilla HEAD.

--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
[hidden email] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-sparc64
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|

[Bug 198459] x11-servers/xorg-server: Fails to detect most video cards on sparc64 in 11.0-CURRENT

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=198459

--- Comment #8 from [hidden email] ---
(In reply to Jean-Sebastien Pedron from comment #7)

It looks like FreeBSD sparc64 doesn't have write combining support at the
moment... at least none of the sparc64 headers define it, like they do for ppc
and x86.  That might be a good place to start.

--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
[hidden email] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-sparc64
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|

[Bug 198459] x11-servers/xorg-server: Fails to detect most video cards on sparc64 in 11.0-CURRENT

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=198459

--- Comment #9 from [hidden email] ---
Update on Radeon DRM2+KMS support for sparc64; got the kernel modules to build,
load, and present device nodes.  It's now on to troubleshooting and fixing some
kernel panics when these new devices nodes are actually used by X.org (almost
certainly issues with the kernel changes rather than X, of course).

--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
[hidden email] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-sparc64
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|

[Bug 198459] x11-servers/xorg-server: Fails to detect most video cards on sparc64 in 11.0-CURRENT

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=198459

Jean-Sebastien Pedron <[hidden email]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|New                         |In Progress

--- Comment #10 from Jean-Sebastien Pedron <[hidden email]> ---
Thank you very much for working on this!

--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
[hidden email] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-sparc64
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|

[Bug 198459] x11-servers/xorg-server: Fails to detect most video cards on sparc64 in 11.0-CURRENT

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=198459

--- Comment #11 from [hidden email] ---
Update on Radeon DRM2+KMS support for sparc64; my development box has gone
AWOL.  It looks like the PCI controller memory corruption issue that's somewhat
endemic to the Blade 1000 and 2000 plus the Sun Fire systems using the same
line of system boards.  CPU and memory independently test fine, but any
attempts to access the first PCI bus now throw 'Uncorrectable ECC errors' which
means the system is non-bootable.

This project is on hold until I have extra $ to throw at a 15-year-old hobby
system.  Luckily, the refurb system boards aren't obnoxiously expensive.

--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
[hidden email] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-sparc64
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|

[Bug 198459] x11-servers/xorg-server: Fails to detect most video cards on sparc64 in 11.0-CURRENT

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=198459

Niclas Zeising <[hidden email]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |[hidden email]

--- Comment #12 from Niclas Zeising <[hidden email]> ---
Have you made any further progress on this?

Sparc64 is unfortunately a dying platform, and I don't have any hardware myself
to test this with.

--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
[hidden email] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-sparc64
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|

[Bug 198459] x11-servers/xorg-server: Fails to detect most video cards on sparc64 in 11.0-CURRENT

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=198459

--- Comment #13 from Niclas Zeising <[hidden email]> ---
Any updates?

--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
[hidden email] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-sparc64
To unsubscribe, send any mail to "[hidden email]"
Reply | Threaded
Open this post in threaded view
|

[Bug 198459] x11-servers/xorg-server: Fails to detect most video cards on sparc64 in 11.0-CURRENT

bugzilla-noreply
In reply to this post by bugzilla-noreply
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=198459

Niclas Zeising <[hidden email]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|---                         |Feedback Timeout
             Status|In Progress                 |Closed

--- Comment #14 from Niclas Zeising <[hidden email]> ---
Feedback timeout.
Feel free to reopen if you have new information.

--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
[hidden email] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-sparc64
To unsubscribe, send any mail to "[hidden email]"