All of lore.kernel.org
 help / color / mirror / Atom feed
* XVR-500 additional pci ids
@ 2010-02-26  1:55 Dennis Gilmore
  2010-02-26  5:58 ` David Miller
                   ` (21 more replies)
  0 siblings, 22 replies; 23+ messages in thread
From: Dennis Gilmore @ 2010-02-26  1:55 UTC (permalink / raw)
  To: sparclinux

[-- Attachment #1: Type: text/plain, Size: 425 bytes --]

While testing Fedora 12 install media I noticed that the video card in my 
SB2000 wasnt working.  after doing a serial console install i decided to dig 
into why.  It seems that the pci id for it is missing.  there was a propossed 
patch back in 2008 http://marc.info/?l=linux-sparc&m=122816564110952&w=2  Im 
doing a test build now  but was wondering if there was some reson that the 
patch is not accepted.

Dennis

[-- Attachment #2: This is a digitally signed message part. --]
[-- Type: application/pgp-signature, Size: 198 bytes --]

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: XVR-500 additional pci ids
  2010-02-26  1:55 XVR-500 additional pci ids Dennis Gilmore
@ 2010-02-26  5:58 ` David Miller
  2010-02-27  9:05 ` Frans van Berckel
                   ` (20 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: David Miller @ 2010-02-26  5:58 UTC (permalink / raw)
  To: sparclinux

From: Dennis Gilmore <dennis@ausil.us>
Date: Thu, 25 Feb 2010 19:55:15 -0600

> While testing Fedora 12 install media I noticed that the video card in my 
> SB2000 wasnt working.  after doing a serial console install i decided to dig 
> into why.  It seems that the pci id for it is missing.  there was a propossed 
> patch back in 2008 http://marc.info/?l=linux-sparc&m\x122816564110952&w=2  Im 
> doing a test build now  but was wondering if there was some reson that the 
> patch is not accepted.

I'll take care of this, it just slipped through the cracks, that's
all.

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: XVR-500 additional pci ids
  2010-02-26  1:55 XVR-500 additional pci ids Dennis Gilmore
  2010-02-26  5:58 ` David Miller
@ 2010-02-27  9:05 ` Frans van Berckel
  2010-02-27  9:59 ` David Miller
                   ` (19 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: Frans van Berckel @ 2010-02-27  9:05 UTC (permalink / raw)
  To: sparclinux

Reading the Sparc64 OpenSolaris xwindow forum list last year about
closed drivers pointed up a open BSD driver for Wildcat fb cards.

http://www.openbsd.org/cgi-bin/cvsweb/xenocara/driver/xf86-video-wildcatfb/

Did you know this BSD sources are available? Are you able to port it
into the kernel?

Thanks,


Frans van Berckel

On Thu, 2010-02-25 at 21:58 -0800, David Miller wrote:
> From: Dennis Gilmore <dennis@ausil.us>
> Date: Thu, 25 Feb 2010 19:55:15 -0600
> 
> > While testing Fedora 12 install media I noticed that the video card in my 
> > SB2000 wasnt working.  after doing a serial console install i decided to dig 
> > into why.  It seems that the pci id for it is missing.  there was a propossed 
> > patch back in 2008 http://marc.info/?l=linux-sparc&m\x122816564110952&w=2  Im 
> > doing a test build now  but was wondering if there was some reson that the 
> > patch is not accepted.
> 
> I'll take care of this, it just slipped through the cracks, that's
> all.


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: XVR-500 additional pci ids
  2010-02-26  1:55 XVR-500 additional pci ids Dennis Gilmore
  2010-02-26  5:58 ` David Miller
  2010-02-27  9:05 ` Frans van Berckel
@ 2010-02-27  9:59 ` David Miller
  2010-03-02  8:20 ` Frans van Berckel
                   ` (18 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: David Miller @ 2010-02-27  9:59 UTC (permalink / raw)
  To: sparclinux

From: Frans van Berckel <fberckel@xs4all.nl>
Date: Sat, 27 Feb 2010 10:05:26 +0100

> Reading the Sparc64 OpenSolaris xwindow forum list last year about
> closed drivers pointed up a open BSD driver for Wildcat fb cards.
> 
> http://www.openbsd.org/cgi-bin/cvsweb/xenocara/driver/xf86-video-wildcatfb/
> 
> Did you know this BSD sources are available? Are you able to port it
> into the kernel?

You should be able to use the plain ole' 'fbdev' driver under X.

It can drive any card that has a drivers/video driver under Linux.


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: XVR-500 additional pci ids
  2010-02-26  1:55 XVR-500 additional pci ids Dennis Gilmore
                   ` (2 preceding siblings ...)
  2010-02-27  9:59 ` David Miller
@ 2010-03-02  8:20 ` Frans van Berckel
  2010-03-11  2:24 ` David Miller
                   ` (17 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: Frans van Berckel @ 2010-03-02  8:20 UTC (permalink / raw)
  To: sparclinux

Sorry, i did link the wrong BSD sources. I wasn't looking for Xorg
support yet. But I wanne get my XVR-1200 supported by the kernel.

For what I found out this BSD kernel driver does. Because they did
extend the acceleration code to handle XVR-600 and XVR-1200. It's based
on the driver you created. The sources are available here.

http://www.openbsd.org/cgi-bin/cvsweb/src/sys/arch/sparc64/dev/ifb.c

Now I know you are very busy these day's, so leave it on for now. Or if
someone els wanna look into it?

Thanks,


Frans van Berckel

On Sat, 2010-02-27 at 01:59 -0800, David Miller wrote:
> From: Frans van Berckel <fberckel@xs4all.nl>
> Date: Sat, 27 Feb 2010 10:05:26 +0100
> 
> > Reading the Sparc64 OpenSolaris xwindow forum list last year about
> > closed drivers pointed up a open BSD driver for Wildcat fb cards.
> > 
> > http://www.openbsd.org/cgi-bin/cvsweb/xenocara/driver/xf86-video-wildcatfb/
> > 
> > Did you know this BSD sources are available? Are you able to port it
> > into the kernel?
> 
> You should be able to use the plain ole' 'fbdev' driver under X.
> 
> It can drive any card that has a drivers/video driver under Linux.
> 
> --
> To unsubscribe from this list: send the line "unsubscribe sparclinux" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html



^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: XVR-500 additional pci ids
  2010-02-26  1:55 XVR-500 additional pci ids Dennis Gilmore
                   ` (3 preceding siblings ...)
  2010-03-02  8:20 ` Frans van Berckel
@ 2010-03-11  2:24 ` David Miller
  2010-03-11  8:30 ` Frans van Berckel
                   ` (16 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: David Miller @ 2010-03-11  2:24 UTC (permalink / raw)
  To: sparclinux

From: Frans van Berckel <fberckel@xs4all.nl>
Date: Tue, 02 Mar 2010 09:20:39 +0100

> But I wanne get my XVR-1200 supported by the kernel.

Can you get me "prtconf -pv" or "lspci" output with the card
installed?

I think just adding the matching PCI device ID to the driver should
allow the card to work just fine.

So if someone can get me the PCI device ID for these other XVR-*
cards, I can add them to the driver.

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: XVR-500 additional pci ids
  2010-02-26  1:55 XVR-500 additional pci ids Dennis Gilmore
                   ` (4 preceding siblings ...)
  2010-03-11  2:24 ` David Miller
@ 2010-03-11  8:30 ` Frans van Berckel
  2010-03-11 16:16 ` David Miller
                   ` (15 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: Frans van Berckel @ 2010-03-11  8:30 UTC (permalink / raw)
  To: sparclinux

[-- Attachment #1: Type: text/plain, Size: 583 bytes --]

Thanks for asking. Attaching XVR 1000 (SUNW,gfb) prtconf -pv.


Frans van Berckel

On Wed, 2010-03-10 at 18:24 -0800, David Miller wrote:
> From: Frans van Berckel <fberckel@xs4all.nl>
> Date: Tue, 02 Mar 2010 09:20:39 +0100
> 
> > But I wanne get my XVR-1200 supported by the kernel.
> 
> Can you get me "prtconf -pv" or "lspci" output with the card
> installed?
> 
> I think just adding the matching PCI device ID to the driver should
> allow the card to work just fine.
> 
> So if someone can get me the PCI device ID for these other XVR-*
> cards, I can add them to the driver.


[-- Attachment #2: xvr-1000-prtconf-pv.txt --]
[-- Type: text/plain, Size: 36401 bytes --]

System Configuration:  Sun Microsystems  sun4u
Memory size: 2048 Megabytes
System Peripherals (PROM Nodes):

Node 0xf0029b10
    .node:  f0029b10
    banner-name: 'Sun Blade 2000/1000 (UltraSPARC-III+) '
    idprom:  01830003.ba5b86cb.11192003.5b86cb10.00000000.00000000.00000000.00000000
    model: 'SUNW,501-6230'
    energystar-v3:  
    scsi-initiator-id:  00000007
    stick-frequency:  004c4b40
    clock-frequency:  08a48640
    breakpoint-trap:  0000007f
    #size-cells:  00000002
    name: 'SUNW,Sun-Blade-1000'
    device_type: 'gptwo'

    Node 0xf002ce58
        .node:  f002ce58
        name: 'packages'

        Node 0xf00485cc
            .node:  f00485cc
            name: 'SUNW,builtin-drivers'

        Node 0xf0053e1c
            .node:  f0053e1c
            disk-write-fix:  
            name: 'deblocker'

        Node 0xf00542f8
            .node:  f00542f8
            name: 'disk-label'

        Node 0xf0054c30
            .node:  f0054c30
            iso6429-1983-colors:  
            name: 'terminal-emulator'

        Node 0xf0058be8
            .node:  f0058be8
            name: 'obp-tftp'

        Node 0xf0060958
            .node:  f0060958
            source: '/flashprom:'
            name: 'dropins'

        Node 0xf007d324
            .node:  f007d324
            name: 'kbd-translator'

    Node 0xf002cec8
        .node:  f002cec8
        bootargs:  00
        bootpath: '/pci@8,600000/SUNW,qlc@4/fp@0,0/disk@w21000004cfa36c64,0:a'
        mmu:  fff73a78
        memory:  fff73c78
        stdout:  fff19420
        stdin:  fff059c0
        stdout-#lines:  00000022
        name: 'chosen'

    Node 0xf002cf34
        .node:  f002cf34
        version: 'OBP 4.5.21 2003/02/24 17:23'
        model: 'SUNW,4.5'
        aligned-allocator:  
        relative-addressing:  
        name: 'openprom'

        Node 0xf002cfc4
            .node:  f002cfc4
            name: 'client-services'

    Node 0xf002d06c
        .node:  f002d06c
        test-args:  
        diag-passes: '1'
        enclosure-type: '540-3256-15'
        banner-name: 'Sun Blade 2000/1000'
        energystar-enabled?: 'true'
        pcia-probe-list: '4,1'
        pcib-probe-list: '5,6,1,2,3,4'
        local-mac-address?: 'false'
        fcode-debug?: 'false'
        silent-mode?: 'false'
        scsi-initiator-id: '7'
        oem-logo:  
        oem-logo?: 'false'
        oem-banner:  
        oem-banner?: 'false'
        ansi-terminal?: 'true'
        screen-#columns: '80'
        screen-#rows: '34'
        ttyb-rts-dtr-off: 'false'
        ttyb-ignore-cd: 'true'
        ttya-rts-dtr-off: 'false'
        ttya-ignore-cd: 'true'
        ttyb-mode: '19200,8,n,1,-'
        ttya-mode: '9600,8,n,1,-'
        output-device: 'screen:r1440x900x60'
        input-device: 'keyboard'
        load-base: '16384'
        auto-boot?: 'true'
        boot-command: 'boot'
        diag-file:  
        diag-device: 'disk net'
        boot-file:  
        boot-device: 'disk cdrom net'
        use-nvramrc?: 'false'
        nvramrc:  
        security-mode: 'none'
        security-password:  
        security-#badlogins: '0'
        #power-cycles: '164'
        diag-script: 'none'
        diag-level: 'min'
        diag-switch?: 'false'
        error-reset-recovery: 'boot'
        name: 'options'

    Node 0xf002d0dc
        .node:  f002d0dc
        screen: '/upa@8,480000/SUNW,gfb@0,0'
        mouse: '/pci@8,700000/usb@5,3/mouse@2'
        keyboard: '/pci@8,700000/usb@5,3/keyboard@1'
        disk1: '/pci@8,600000/SUNW,qlc@4/fp@0,0/disk@2,0'
        disk0: '/pci@8,600000/SUNW,qlc@4/fp@0,0/disk@1,0'
        disk: '/pci@8,600000/SUNW,qlc@4/fp@0,0/disk@1,0'
        scsi: '/pci@8,600000/SUNW,qlc@4'
        net: '/pci@8,700000/network@5,1:'
        cdrom: '/pci@8,700000/scsi@6/disk@6,0:f'
        tape: '/pci@8,700000/scsi@6,1/tape@4,0'
        tape1: '/pci@8,700000/scsi@6,1/tape@5,0'
        tape0: '/pci@8,700000/scsi@6,1/tape@4,0'
        beep: '/pci@8,700000/ebus@5/beep@1,32'
        floppy: '/pci@8,700000/ebus@5/floppy'
        ttyb: '/pci@8,700000/ebus@5/serial@1,400000:b'
        ttya: '/pci@8,700000/ebus@5/serial@1,400000:a'
        name: 'aliases'

    Node 0xf003e110
        .node:  f003e110
        reg:  00000000.00000000.00000000.80000000
        available:  00000000.7fe6e000.00000000.0001e000.00000000.7fda8000.00000000.000b6000.00000000.7fd94000.00000000.00010000.00000000.7fd82000.00000000.0000e000.00000000.7f000000.00000000.00c7e000.00000000.00000000.00000000.7effe000
        name: 'memory'

    Node 0xf003e6f4
        .node:  f003e6f4
        translations:  00000000.fff70000.00000000.00010000.80000000.7ff700b6.00000000.fff64000.00000000.0000c000.80000000.7ff580b6.00000000.fff5e000.00000000.00002000.800007ff.fff8008e.00000000.fff4c000.00000000.00002000.800007ff.fff8008e.00000000.fff4a000.00000000.00002000.800007ff.fff8008e.00000000.fff48000.00000000.00002000.800007ff.ee00208e.00000000.fff46000.00000000.00002000.80000000.7ff540b6.00000000.fff44000.00000000.00002000.800007fe.7e30008e.00000000.fff42000.00000000.00002000.80000000.7effe0b6.00000000.fff40000.00000000.00002000.80000000.7ff500b6.00000000.fff3e000.00000000.00002000.800007fe.7e30008e.00000000.fff3c000.00000000.00002000.800007fe.7e30008e.00000000.fff3a000.00000000.00002000.800007fe.7e00008e.00000000.fff38000.00000000.00002000.800007fe.7e00008e.00000000.fff36000.00000000.00002000.80000000.7ff420b6.00000000.fff34000.00000000.00002000.800007fe.7e00008e.00000000.fff32000.00000000.00002000.80000000.7ff400b6.00000000.fff30000.00000000.00002000.800007fe.7e30008e.00000000.fff2e000.00000000.00002000.800007fe.7e30008e.00000000.fff2c000.00000000.00002000.800007fe.7e72008e.00000000.fff2a000.00000000.00002000.80000000.7ff360b6.00000000.fff28000.00000000.00002000.800007ff.ec00208e.00000000.fff26000.00000000.00002000.800007fe.0012208e.00000000.fff22000.00000000.00004000.80000000.7ff280b6.00000000.fff20000.00000000.00002000.800007f8.0020008e.00000000.fff1e000.00000000.00002000.800007f8.0021008e.00000000.fff1c000.00000000.00002000.800007f8.0080608e.00000000.fff18000.00000000.00004000.80000000.7fda40b6.00000000.fff14000.00000000.00002000.80000400.0440008e.00000000.fff12000.00000000.00002000.80000400.0448008e.00000000.fff10000.00000000.00002000.800007fe.0100008e.00000000.fff0a000.00000000.00006000.80000000.7fe960b6.00000000.fff08000.00000000.00002000.80000000.7ff660b6.00000000.fff04000.00000000.00004000.80000000.7fe9e0b6.00000000.fff00000.00000000.00004000.80000000.7fe920b6.00000000.feffe000.00000000.00002000.80000000.7fe900b6.00000000.fef7e000.00000000.00042000.80000000.7fee40b6.00000000.fef66000.00000000.00018000.800007f8.0082808e.00000000.fef46000.00000000.00020000.800007f8.7000008e.00000000.feef0000.00000000.00010000.80000400.0470008e.00000000.feeee000.00000000.00002000.80000400.0441008e.00000000.feeec000.00000000.00002000.80000400.0440008e.00000000.feee8000.00000000.00004000.80000000.7ff4c0b6.00000000.feed6000.00000000.00010000.80000400.0460008e.00000000.feed4000.00000000.00002000.80000400.0441008e.00000000.feed2000.00000000.00002000.80000400.0440008e.00000000.feece000.00000000.00004000.80000000.7ff480b6.00000000.faecc000.00000000.04000000.800007f8.0400008e.00000000.fadcc000.00000000.00100000.80000000.7fc7e0b6.00000000.f00ce000.00000000.00002000.80000000.7fe9c0b6.00000000.f00cc000.00000000.00002000.80000000.7fea40b6.00000000.f00ca000.00000000.00002000.80000000.7fea60b6.00000000.f00c8000.00000000.00002000.80000000.7fea20b6.00000000.f00c6000.00000000.00002000.80000000.7feac0b6.00000000.f00c4000.00000000.00002000.80000000.7feae0b6.00000000.f00c2000.00000000.00002000.80000000.7fd900b6.00000000.f00c0000.00000000.00002000.80000000.7fd7e0b6.00000000.f00be000.00000000.00002000.80000000.7fd800b6.00000000.f00bc000.00000000.00002000.80000000.7fd920b6.00000000.f00ba000.00000000.00002000.80000000.7fea80b6.00000000.f00b8000.00000000.00002000.80000000.7feaa0b6.00000000.f00b6000.00000000.00002000.80000000.7feb40b6.00000000.f00b4000.00000000.00002000.80000000.7feb00b6.00000000.f00b2000.00000000.00002000.80000000.7feb20b6.00000000.f00b0000.00000000.00002000.80000000.7febc0b6.00000000.f00ae000.00000000.00002000.80000000.7febe0b6.00000000.f00ac000.00000000.00002000.80000000.7feba0b6.00000000.f00aa000.00000000.00002000.80000000.7fec00b6.00000000.f00a8000.00000000.00002000.80000000.7fec20b6.00000000.f00a6000.00000000.00002000.80000000.7fec40b6.00000000.f00a4000.00000000.00002000.80000000.7fed60b6.00000000.f00a2000.00000000.00002000.80000000.7fed80b6.00000000.f00a0000.00000000.00002000.80000000.7feda0b6.00000000.f009e000.00000000.00002000.80000000.7fedc0b6.00000000.f009c000.00000000.00002000.80000000.7fede0b6.00000000.f009a000.00000000.00002000.80000000.7fee00b6.00000000.f0098000.00000000.00002000.80000000.7fee20b6.00000000.f0096000.00000000.00002000.80000000.7ff260b6.00000000.f0094000.00000000.00002000.80000000.7ff2c0b6.00000000.f0092000.00000000.00002000.80000000.7ff2e0b6.00000000.f0090000.00000000.00002000.80000000.7ff300b6.00000000.f008e000.00000000.00002000.80000000.7ff320b6.00000000.f008c000.00000000.00002000.80000000.7ff340b6.00000000.f008a000.00000000.00002000.80000000.7ff560b6.00000000.f0088000.00000000.00002000.80000000.7ff380b6.00000000.f0084000.00000000.00004000.80000000.7ff3a0b6.00000000.f0082000.00000000.00002000.80000000.7ff3e0b6.00000000.f0080000.00000000.00002000.80000000.7ff440b6.00000000.f0000000.00000000.00080000.80000000.7ff800b6.00000000.413ee000.00000000.02c12000.80000000.017ee036.00000000.40000000.00000000.00c00000.80000000.00400036.00000000.00002000.00000000.00bfe000.80000000.00002036
        existing:  00000000.00000000.00000800.00000000.fffff800.00000000.00000800.00000000
        available:  fffff800.00000000.000007fc.00000000.00000001.00000000.000007ff.00000000.00000000.ffff0000.00000000.0000e000.00000000.00000000.00000000.f0000000.00000000.fff16000.00000000.00002000.00000000.fefc0000.00000000.0003e000.00000000.fef00000.00000000.00046000.00000000.feee6000.00000000.00002000.00000000.feecc000.00000000.00002000.00000000.f0800000.00000000.0a5cc000
        page-size:  00002000
        name: 'virtual-memory'

    Node 0xf006bd10
        .node:  f006bd10
        clock-divisors:  00000001.00000002.00000020
        sparc-version:  00000009
        #dtlb-entries:  00000010
        dcache-associativity:  00000004
        dcache-line-size:  00000020
        dcache-size:  00010000
        #itlb-entries:  00000010
        icache-associativity:  00000004
        icache-line-size:  00000020
        icache-size:  00008000
        cpuid:  00000000
        portid:  00000000
        reg:  00000400.00000000.00000000.00010000
        device_type: 'cpu'
        manufacturer#:  0000003e
        implementation#:  00000015
        mask#:  00000023
        ecache-associativity:  00000002
        ecache-line-size:  00000200
        ecache-size:  00800000
        clock-frequency:  3c7fabc0
        name: 'SUNW,UltraSPARC-III+'

    Node 0xf006c544
        .node:  f006c544
        memory-layout:  4a303130.30000000.4a303230.32000000.4a303330.34000000.4a303430.36000000.4a303130.31000000.4a303230.33000000.4a303330.35000000.4a303430.37000000.010055aa.55000000.55aa5500.00015a00.55aafffa.95aaffff.ffaa55aa.ffffff79.0292f6f9.e40055aa.55000000.55aa5500.00015a00.55aafffa.95aaffff.ffaa55aa.ffffff79.0292f6f9.e40055aa.55000000.55aa5500.00015a00.55aafffa.95aaffff.ffaa55aa.ffffff79.0292f6f9.e40055aa.55000000.55aa5500.00015a00.55aafffa.95aaffff.ffaa55aa.ffffff79.0292f6f9.e4050505.05797979.63635962.0a171616.160a790a.7e7e7e7e.0a0c0d0e.0f161718.19202122.23202122.23202122.232a2b2c.2d2a2b2c.2d4c4d4e.4f565758.59565758.59565758.60616260.616a6b6c.6d0c0d0e.0f0c0d0e.0f0c0d0e.0f181917.18191718.19202122.232a2b2c.2d2a2b2c.2d4c4d4e.4f4c4d4e.4f4c4d4e.4f565758.59606162.63606162.636a6b6c.6d6a6b6c.6d6a6b6c.6d040404.04787878.d7d7cdd6.098b8a8a.8a097809.7d7d7d7d.09808182.838a8b8c.8d949596.97949596.97949596.979e9fa0.a19e9fa0.a1c0c1c2.c3cacbcc.cdcacbcc.cdcacbcc.d4d5d6d4.d5dedfe0.e1808182.83808182.83808182.838c8d8b.8c8d8b8c.8d949596.979e9fa0.a19e9fa0.a1c0c1c2.c3c0c1c2.c3c0c1c2.c3cacbcc.cdd4d5d6.d7d4d5d6.d7dedfe0.e1dedfe0.e1dedfe0.e1030303.03777777.68685e67.081c1b1b.1b080877.7c7c7c7c.08111213.141b1c1d.1e252627.28252627.28252627.28474849.4a474849.4a515253.545b5c5d.5e5b5c5d.5e5b5c5d.65666765.666f7071.72111213.14111213.14111213.141d1e1c.1d1e1c1d.1e252627.28474849.4a474849.4a515253.54515253.54515253.545b5c5d.5e656667.68656667.686f7071.726f7071.726f7071.72020202.02767676.dcdcd2db.07908f8f.8f077607.7b7b7b7b.07858687.888f9091.92999a9b.9c999a9b.9c999a9b.9cbbbcbd.bebbbcbd.bec5c6c7.c8cfd0d1.d2cfd0d1.d2cfd0d1.d9dadbd9.dae3e4e5.e6858687.88858687.88858687.88919290.91929091.92999a9b.9cbbbcbd.bebbbcbd.bec5c6c7.c8c5c6c7.c8c5c6c7.c8cfd0d1.d2d9dadb.dcd9dadb.dce3e4e5.e6e3e4e5.e6e3e4e5.e600
        compatible:  53554e57.2c556c74.72615350.4152432d.4949492c.6d630053.554e572c.6d6300
        portid:  00000000
        reg:  00000400.00400000.00000000.00000048
        device_type: 'memory-controller'
        name: 'memory-controller'

    Node 0xf006c678
        .node:  f006c678
        available:  81000000.00000000.00000500.00000000.0000fb00.82000000.00000000.0012c000.00000000.002d4000.82000000.00000000.02000000.00000000.7a000000
        reg:  00000400.04700000.00000000.00018000.00000400.04410000.00000000.00000050.000007ff.ee000000.00000000.00000100
        ranges:  00000000.00000000.00000000.000007ff.ee000000.00000000.01000000.01000000.00000000.00000000.000007ff.ef000000.00000000.01000000.02000000.00000000.00000000.000007fe.00000000.00000001.00000000.03000000.00000000.00000000.000007fe.00000000.00000001.00000000
        ino-bitmap:  f3fff000.001fecff
        interrupt-map:  00000800.00000000.00000000.00000001.f006c678.0000000c.00000800.00000000.00000000.00000002.f006c678.0000000d.00000800.00000000.00000000.00000003.f006c678.0000000e.00000800.00000000.00000000.00000004.f006c678.0000000f.00001000.00000000.00000000.00000001.f006c678.00000010.00001000.00000000.00000000.00000002.f006c678.00000011.00001000.00000000.00000000.00000003.f006c678.00000012.00001000.00000000.00000000.00000004.f006c678.00000013.00001800.00000000.00000000.00000001.f006c678.00000014.00001800.00000000.00000000.00000002.f006c678.00000015.00001800.00000000.00000000.00000003.f006c678.00000016.00001800.00000000.00000000.00000004.f006c678.00000017.00002800.00000000.00000000.00000002.f006c678.0000001d.00002800.00000000.00000000.00000003.f006c678.0000001e.00002800.00000000.00000000.00000004.f006c678.0000001f.00003000.00000000.00000000.00000001.f006c678.00000018.00003000.00000000.00000000.00000002.f006c678.00000019
        interrupt-map-mask:  00fff800.00000000.00000000.00000007
        #interrupt-cells:  00000001
        slot-names:  0000001c.50434920.34005043.49203300.50434920.3200
        interrupts:  00000033.00000030.00000031.00000034.00000026
        clock-frequency:  01f78a40
        bus-range:  00000000.00000000
        bus-parity-generated:  
        no-probe-list: '0'
        compatible: 'pci108e,8001'
        name: 'pci'
        device_type: 'pci'
        #address-cells:  00000003
        #size-cells:  00000002
        implementation#:  0000002a
        version#:  00000007
        portid:  00000008

        Node 0xf007e070
            .node:  f007e070
            interrupt-map:  00000001.0000002e.00000001.f006c678.00000023.00000001.00000030.00000001.f006c678.00000023.00000001.00200000.00000001.f006c678.00000020.00000001.00200000.00000002.f006c678.00000021.00000001.00300070.00000001.f006c678.00000024.00000001.003023f0.00000001.f006c678.00000025.00000001.00300278.00000001.f006c678.0000001c.00000001.00400000.00000001.f006c678.00000022
            interrupt-map-mask:  0000001f.00ffffff.00000003
            #interrupt-cells:  00000001
            ranges:  00000000.00000000.82002810.00000000.7d000000.01000000.00000001.00000000.82002814.00000000.7e000000.00800000
            reg:  00002800.00000000.00000000.00000000.00000000.02002810.00000000.00000000.00000000.01000000.02002814.00000000.00000000.00000000.00800000
            #size-cells:  00000001
            #address-cells:  00000002
            name: 'ebus'
            max-latency:  00000019
            min-grant:  0000000a
            class-code:  00068000
            revision-id:  00000001
            devsel-speed:  00000001
            fast-back-to-back:  
            device-id:  00001100
            vendor-id:  0000108e

            Node 0xf007f474
                .node:  f007f474
                model: 'SUNW,525-1807'
                reg:  00000000.00000000.00200000
                version:  4f425020.342e352e.32312032.3030332f.30322f32.34203137.3a323300.504f5354.20342e37.2e342032.3030322f.31322f32.33203137.3a303400
                name: 'flashprom'

            Node 0xf00800cc
                .node:  f00800cc
                reg:  00000001.00000000.00100000
                name: 'bbc'

            Node 0xf008015c
                .node:  f008015c
                reg:  00000001.0000000e.0000001b.00000001.00728000.00000004.00000001.0030002e.00000002.00000001.00300600.00000008
                compatible:  65627573.2d70706d.0053554e.572c6262.632d7070.6d00
                name: 'ppm'

            Node 0xf00803b8
                .node:  f00803b8
                interrupts:  00000001
                reg:  00000001.0000002e.00000002.00000001.0000002d.00000001
                compatible: 'SUNW,bbc-i2c'
                #size-cells:  00000000
                #address-cells:  00000002
                name: 'i2c'

                Node 0xf00814d4
                    .node:  f00814d4
                    reg:  00000001.000000a0
                    compatible: 'i2c-at24c64'
                    name: 'dimm-fru'

                Node 0xf0081590
                    .node:  f0081590
                    reg:  00000001.000000a4
                    compatible: 'i2c-at24c64'
                    name: 'dimm-fru'

                Node 0xf008164c
                    .node:  f008164c
                    reg:  00000001.000000a8
                    compatible: 'i2c-at24c64'
                    name: 'dimm-fru'

                Node 0xf0081708
                    .node:  f0081708
                    reg:  00000001.000000ac
                    compatible: 'i2c-at24c64'
                    name: 'dimm-fru'

                Node 0xf00817c4
                    .node:  f00817c4
                    reg:  00000000.000000a0
                    compatible: 'i2c-at24c64'
                    device_type: 'nvram'
                    name: 'nvram'

                Node 0xf0081e5c
                    .node:  f0081e5c
                    device_type: 'idprom'
                    reg:  00000000.000000a0
                    name: 'idprom'

            Node 0xf00823e0
                .node:  f00823e0
                interrupts:  00000001
                reg:  00000001.00000030.00000002
                compatible: 'SUNW,bbc-i2c'
                #size-cells:  00000000
                #address-cells:  00000002
                name: 'i2c'

                Node 0xf00834f0
                    .node:  f00834f0
                    reg:  00000000.000000a0
                    compatible: 'i2c-at24c64'
                    name: 'cpu-fru'

                Node 0xf00835ac
                    .node:  f00835ac
                    reg:  00000000.00000052
                    compatible: 'i2c-max1617'
                    name: 'temperature'

                Node 0xf008366c
                    .node:  f008366c
                    reg:  00000000.00000048
                    compatible: 'i2c-tda8444'
                    name: 'fan-control'

                Node 0xf008372c
                    .node:  f008372c
                    reg:  00000000.00000040
                    compatible: 'i2c-scm001'
                    name: 'card-reader'

                Node 0xf00837ec
                    .node:  f00837ec
                    reg:  00000000.000000a8
                    compatible: 'i2c-at24c64'
                    name: 'motherboard-fru'

                Node 0xf0083da0
                    .node:  f0083da0
                    revision-id:  00000012
                    reg:  00000000.00000060
                    compatible: 'i2c-firei'
                    name: 'i2c-bridge'

            Node 0xf0084030
                .node:  f0084030
                reg:  00000001.00000032.00000006
                compatible: 'SUNW,bbc-beep'
                name: 'beep'

            Node 0xf00840f0
                .node:  f00840f0
                model: 'SUNW,CS4231g'
                aux2: 'none'
                aux1: 'loopback'
                interrupts:  00000001.00000002
                dma-model: 'eb2dma'
                reg:  00000001.00200000.00000100.00000001.00702000.00000010.00000001.00704000.00000010.00000001.00722000.00000004
                compatible: 'SUNW,CS4231'
                name: 'audio'

            Node 0xf00842e8
                .node:  f00842e8
                address:  fff30070
                reg:  00000001.00300070.00000002
                compatible: 'ds1287'
                model: 'ds1287'
                name: 'rtc'
                interrupts:  00000001

            Node 0xf0084b80
                .node:  f0084b80
                reg:  00000001.00300600.00000008
                compatible: 'ns87317-gpio'
                name: 'gpio'

            Node 0xf0084e50
                .node:  f0084e50
                address:  fff2e700
                reg:  00000001.00300700.00000002
                compatible: 'ns87317-pmc'
                name: 'pmc'

            Node 0xf0084ffc
                .node:  f0084ffc
                interrupts:  00000001
                status: 'disabled'
                reg:  00000001.003023f0.00000008.00000001.00706000.00000010.00000001.00720000.00000004
                device_type: 'block'
                compatible: 'fdthree'
                name: 'floppy'

            Node 0xf0086ae0
                .node:  f0086ae0
                reg:  00000001.00300278.00000010.00000001.0030002e.00000002.00000001.00700000.00000010
                compatible:  6e733837.3331372d.65637070.00656370.7000
                name: 'parallel'
                interrupts:  00000001

            Node 0xf0086c30
                .node:  f0086c30
                port-b-ignore-cd:  
                port-a-ignore-cd:  
                reg:  00000001.00400000.00000080
                compatible:  73616238.32353332.00736500
                device_type: 'serial'
                name: 'serial'
                interrupts:  00000001

        Node 0xf00ac3c0
            .node:  f00ac3c0
            assigned-addresses:  82002910.00000000.00100000.00000000.00020000.82002930.00000000.00400000.00000000.00400000
            shared-pins: 'mii'
            interrupts:  00000002
            model: 'SUNW,pci-eri'
            version: '1.10'
            compatible:  70636931.3038652c.31313031.2e310070.63693130.38652c31.31303100.70636963.6c617373.2c303230.30303000.70636963.6c617373.2c303230.3000
            device_type: 'network'
            address-bits:  00000030
            max-frame-size:  00004000
            reg:  00002900.00000000.00000000.00000000.00000000.02002910.00000000.00000000.00000000.00008000
            name: 'network'
            fast-back-to-back:  
            devsel-speed:  00000001
            class-code:  00020000
            latency-timer:  00000040
            cache-line-size:  00000010
            max-latency:  00000005
            min-grant:  0000000a
            revision-id:  00000001
            device-id:  00001101
            vendor-id:  0000108e

        Node 0xf00b4588
            .node:  f00b4588
            assigned-addresses:  82002a10.00000000.00120000.00000000.00002000.82002a14.00000000.00122000.00000000.00002000.82002a30.00000000.00800000.00000000.00400000
            reg:  00002a00.00000000.00000000.00000000.00000000.02002a10.00000000.00000000.00000000.00002000.02002a14.00000000.00000000.00000000.00002000.02002a30.00000000.00000000.00000000.00400000
            compatible:  70636931.3038652c.31313032.2e313030.31007063.69313038.652c3131.30320070.6369636c.6173732c.30633030.31300070.6369636c.6173732c.30633030.00
            name: 'firewire'
            power-managed?:  
            interrupts:  00000003
            fast-back-to-back:  
            devsel-speed:  00000001
            class-code:  000c0010
            latency-timer:  00000040
            cache-line-size:  00000010
            max-latency:  00000005
            min-grant:  0000000a
            revision-id:  00000001
            device-id:  00001102
            vendor-id:  0000108e

        Node 0xf00b48e0
            .node:  f00b48e0
            assigned-addresses:  82002b10.00000000.01000000.00000000.01000000.82002b30.00000000.00c00000.00000000.00400000
            sunw,find-fcode:  f00b9c30
            maximum-frame#:  0000ffff
            reg:  00002b00.00000000.00000000.00000000.00000000.02002b10.00000000.00000000.00000000.01000000
            #size-cells:  00000000
            #address-cells:  00000001
            compatible:  70636931.3038652c.31313033.2e310070.63693130.38652c31.31303300.70636963.6c617373.2c306330.33313000.70636963.6c617373.2c306330.3300
            name: 'usb'
            interrupts:  00000004
            fast-back-to-back:  
            devsel-speed:  00000001
            class-code:  000c0310
            latency-timer:  00000040
            cache-line-size:  00000010
            max-latency:  00000005
            min-grant:  0000000a
            revision-id:  00000001
            device-id:  00001103
            vendor-id:  0000108e

            Node 0xf00ba94c
                .node:  f00ba94c
                keyboard:  
                endpoints: '0,1'
                compatible:  75736234.33302c35.2e313033.00757362.3433302c.35007573.62696634.33302c63.6c617373.332e312e.31007573.62696634.33302c63.6c617373.332e3100.75736269.66343330.2c636c61.73733300.75736269.662c636c.61737333.2e312e31.00757362.69662c63.6c617373.332e3100.75736269.662c636c.61737333.00
                name: 'keyboard'
                reg:  00000001
                low-speed:  
                assigned-address:  00000002

            Node 0xf00c0070
                .node:  f00c0070
                mouse:  
                endpoints: '0,1'
                compatible:  75736234.33302c31.30302e31.30350075.73623433.302c3130.30007573.62696634.33302c63.6c617373.332e312e.32007573.62696634.33302c63.6c617373.332e3100.75736269.66343330.2c636c61.73733300.75736269.662c636c.61737333.2e312e32.00757362.69662c63.6c617373.332e3100.75736269.662c636c.61737333.00
                name: 'mouse'
                reg:  00000002
                low-speed:  
                assigned-address:  00000003

        Node 0xf00c2284
            .node:  f00c2284
            assigned-addresses:  81003010.00000000.00000300.00000000.00000100.82003014.00000000.00124000.00000000.00002000.82003018.00000000.00126000.00000000.00002000
            device_type: 'scsi-2'
            clock-frequency:  02625a00
            reg:  00003000.00000000.00000000.00000000.00000000.01003010.00000000.00000000.00000000.00000100.02003014.00000000.00000000.00000000.00002000.02003018.00000000.00000000.00000000.00002000
            name: 'scsi'
            compatible:  70636931.3030302c.662e3337.00706369.31303030.2c660070.6369636c.6173732c.30313030.30300070.6369636c.6173732c.30313030.00
            devsel-speed:  00000001
            class-code:  00010000
            interrupts:  00000001
            latency-timer:  00000040
            cache-line-size:  00000010
            max-latency:  00000040
            min-grant:  00000011
            revision-id:  00000037
            device-id:  0000000f
            vendor-id:  00001000

            Node 0xf00c68b8
                .node:  f00c68b8
                device_type: 'block'
                compatible: 'sd'
                name: 'disk'

            Node 0xf00c7440
                .node:  f00c7440
                device_type: 'byte'
                compatible: 'st'
                name: 'tape'

        Node 0xf00c81a4
            .node:  f00c81a4
            assigned-addresses:  81003110.00000000.00000400.00000000.00000100.82003114.00000000.00128000.00000000.00002000.82003118.00000000.0012a000.00000000.00002000
            device_type: 'scsi-2'
            clock-frequency:  02625a00
            reg:  00003100.00000000.00000000.00000000.00000000.01003110.00000000.00000000.00000000.00000100.02003114.00000000.00000000.00000000.00002000.02003118.00000000.00000000.00000000.00002000
            name: 'scsi'
            compatible:  70636931.3030302c.662e3337.00706369.31303030.2c660070.6369636c.6173732c.30313030.30300070.6369636c.6173732c.30313030.00
            devsel-speed:  00000001
            class-code:  00010000
            interrupts:  00000002
            latency-timer:  00000040
            cache-line-size:  00000010
            max-latency:  00000040
            min-grant:  00000011
            revision-id:  00000037
            device-id:  0000000f
            vendor-id:  00001000

            Node 0xf00cc7d8
                .node:  f00cc7d8
                device_type: 'block'
                compatible: 'sd'
                name: 'disk'

            Node 0xf00cd360
                .node:  f00cd360
                device_type: 'byte'
                compatible: 'st'
                name: 'tape'

    Node 0xf0075220
        .node:  f0075220
        available:  81000000.00000000.00000400.00000000.0000fc00.82000000.00000000.00102000.00000000.0001e000.82000000.00000000.00140000.00000000.7eec0000
        ino-bitmap:  0000003f.00000000
        interrupt-map:  00000800.00000000.00000000.00000001.f0075220.00000000.00000800.00000000.00000000.00000002.f0075220.00000001.00000800.00000000.00000000.00000003.f0075220.00000002.00000800.00000000.00000000.00000004.f0075220.00000003.00002000.00000000.00000000.00000001.f0075220.00000004
        interrupt-map-mask:  00fff800.00000000.00000000.00000007
        #interrupt-cells:  00000001
        reg:  00000400.04600000.00000000.00018000.00000400.04410000.00000000.00000050.000007ff.ec000000.00000000.00000100
        ranges:  00000000.00000000.00000000.000007ff.ec000000.00000000.01000000.01000000.00000000.00000000.000007ff.ed000000.00000000.01000000.02000000.00000000.00000000.000007fd.00000000.00000001.00000000.03000000.00000000.00000000.000007fd.00000000.00000001.00000000
        66mhz-capable:  
        slot-names:  00000002.50434920.3100
        interrupts:  00000032.00000030.00000031.00000034.00000027
        clock-frequency:  03ef1480
        bus-range:  00000000.00000000
        bus-parity-generated:  
        no-probe-list: '0'
        compatible: 'pci108e,8001'
        name: 'pci'
        device_type: 'pci'
        #address-cells:  00000003
        #size-cells:  00000002
        implementation#:  0000002a
        version#:  00000007
        portid:  00000008

        Node 0xf00a6444
            .node:  f00a6444
            assigned-addresses:  81002010.00000000.00000300.00000000.00000100.82002014.00000000.00100000.00000000.00002000.82002030.00000000.00120000.00000000.00020000
            port-wwn:  21000003.ba5b86cb
            node-wwn:  21000003.ba5b86cb
            reg:  00002000.00000000.00000000.00000000.00000000.01002010.00000000.00000000.00000000.00000100.02002014.00000000.00000000.00000000.00001000
            compatible:  70636931.3037372c.32323030.2e350070.63693130.37372c32.32303000.70636963.6c617373.2c303130.30303000.70636963.6c617373.2c303130.3000
            manufacturer: 'QLGC'
            #size-cells:  00000000
            #address-cells:  00000002
            device_type: 'scsi-fcp'
            name: 'SUNW,qlc'
            version: 'ISP2200 FC-AL Host Adapter Driver: 1.12 01/01/16'
            66mhz-capable:  
            fast-back-to-back:  
            devsel-speed:  00000001
            class-code:  00010000
            interrupts:  00000001
            latency-timer:  00000040
            cache-line-size:  00000010
            max-latency:  00000000
            min-grant:  00000040
            revision-id:  00000005
            device-id:  00002200
            vendor-id:  00001077

            Node 0xf00aad44
                .node:  f00aad44
                #size-cells:  00000000
                #address-cells:  00000004
                reg:  00000000.00000000
                device_type: 'fp'
                name: 'fp'

                Node 0xf00ab440
                    .node:  f00ab440
                    device_type: 'block'
                    compatible: 'ssd'
                    name: 'disk'

    Node 0xf007c12c
        .node:  f007c12c
        clock-frequency:  07270e00
        ranges:  000001c0.00000000.000007f8.00000000.00000002.00000000.000001c2.00000000.000007fa.00000000.00000002.00000000
        reg:  00000400.04480000.00000000.00000020.00000400.04706000.00000000.00000010.00000400.04708000.00000000.00000010
        #size-cells:  00000002
        #address-cells:  00000002
        portid:  00000008
        compatible: 'upa64s'
        power-managed?:  
        device_type: 'upa'
        name: 'upa'

        Node 0xf008b73c
            .node:  f008b73c
            width:  00000500
            height:  00000400
            vertical-frequency:  0000003c
            active-video-channel#:  00000002
            character-set: 'ISO8859-1'
            status: 'okay'
            edid-source:  31337733.00686431.3500
            edid:  00000000.00000000.00000000.00000000.00000000.00000000.00000000.00000000.00000000.00000000.00000000.00000000.00000000.00000000.00000000.00000000.00000000.00000000.00000000.00000000.00000000.00000000.00000000.00000000.00000000.00000000.00000000.00000000.00000000.00000000.00000000.00000000.00ffffff.ffffff00.26cd0256.e8c90000.29110103.68312078.2a9510a6.5444a125.145054bf.ef80714f.81808140.814f810f.95009040.b3002139.9030621a.274068b0.3600ea40.1100001c.000000ff.00303538.38314d37.41353136.38380000.00fd0037.4b1e5011.000a2020.20202020.000000fc.00504c32.32303157.0a202020.2020004a
            #video-channels:  00000002
            plink-mfg:  00000001
            plink-dev:  00000006
            plink-rev:  00000000
            daughtercard-present:  
            encoder-id:  00000002
            3dram64-id:  01c08000.01c08000.01c08000.01c08000.01c08000.01c08000.01c08000.01c08000.01c08000.01c08000.01c08000.01c08000.01c08000.01c08000.01c08000.01c08000
            3dram64-config:  00000010
            xchip-id:  00000001
            fbc3-sdram-size:  10000000
            fbc3-id:  00000002
            cafe-id:  00001101
            cafe-mcode:  00000013
            cafe-rdram-size:  02000000
            cafe-rdram-id:  ffffffff.ffffffff.ffffffff.ffffffff
            board-type:  00000002
            upa-interrupt-slave:  
            interrupts:  00000005
            upa-portid:  00000000
            reg:  000001c0.00000000.00000000.00040000.000001c0.00200000.00000000.00002000.000001c0.00210000.00000000.00002000.000001c0.00300000.00000000.00020000.000001c0.00806000.00000000.00002000.000001c0.00828000.00000000.00018000.000001c0.04000000.00000000.04000000.000001c0.08000000.00000000.08000000.000001c0.70000000.00000000.10000000
            version: '@(#) gfb.fth 1.15 02/01/28 '
            device-name: 'Sun XVR-1000 Graphics Accelerator, model D256'
            sunw,lpm-ranges:  00000019.00000019.0000001e.00000021.00000023.00000033.00000028.0000003f
            device_type: 'display'
            model: 'SUNW,501-5865'
            name: 'SUNW,gfb'

    Node 0xf007d244
        .node:  f007d244
        portid:  00000008
        reg:  00000400.04410050.00000000.00000008
        compatible:  6770322d.70706d00.73706d00
        name: 'ppm'


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: XVR-500 additional pci ids
  2010-02-26  1:55 XVR-500 additional pci ids Dennis Gilmore
                   ` (5 preceding siblings ...)
  2010-03-11  8:30 ` Frans van Berckel
@ 2010-03-11 16:16 ` David Miller
  2010-03-11 17:58 ` David Miller
                   ` (14 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: David Miller @ 2010-03-11 16:16 UTC (permalink / raw)
  To: sparclinux

From: Frans van Berckel <fberckel@xs4all.nl>
Date: Thu, 11 Mar 2010 09:30:31 +0100

> Thanks for asking. Attaching XVR 1000 (SUNW,gfb) prtconf -pv.

We were talking about XVR-1200, and this isn't an XVR-1200, it's not
even a PCI card.

It does occupy a PCI slot because it is so huge, but it actually
operates out of the UPA slot.

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: XVR-500 additional pci ids
  2010-02-26  1:55 XVR-500 additional pci ids Dennis Gilmore
                   ` (6 preceding siblings ...)
  2010-03-11 16:16 ` David Miller
@ 2010-03-11 17:58 ` David Miller
  2010-03-12  7:45 ` Frans van Berckel
                   ` (13 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: David Miller @ 2010-03-11 17:58 UTC (permalink / raw)
  To: sparclinux

From: David Miller <davem@davemloft.net>
Date: Thu, 11 Mar 2010 08:16:01 -0800 (PST)

> From: Frans van Berckel <fberckel@xs4all.nl>
> Date: Thu, 11 Mar 2010 09:30:31 +0100
> 
>> Thanks for asking. Attaching XVR 1000 (SUNW,gfb) prtconf -pv.
> 
> We were talking about XVR-1200, and this isn't an XVR-1200, it's not
> even a PCI card.
> 
> It does occupy a PCI slot because it is so huge, but it actually
> operates out of the UPA slot.

Anyways, here is a quick attempt at a driver for this card:

sparc64: Add very basic XVR-1000 framebuffer driver.

Signed-off-by: David S. Miller <davem@davemloft.net>
---
 drivers/video/Kconfig      |   12 +++
 drivers/video/Makefile     |    1 +
 drivers/video/sunxvr1000.c |  228 ++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 241 insertions(+), 0 deletions(-)
 create mode 100644 drivers/video/sunxvr1000.c

diff --git a/drivers/video/Kconfig b/drivers/video/Kconfig
index 5a5c303..a5755b8 100644
--- a/drivers/video/Kconfig
+++ b/drivers/video/Kconfig
@@ -909,6 +909,18 @@ config FB_XVR2500
 	  mostly initialized the card already.  It is treated as a
 	  completely dumb framebuffer device.
 
+config FB_XVR1000
+	bool "Sun XVR-1000 support"
+	depends on SPARC64
+	select FB_CFB_FILLRECT
+	select FB_CFB_COPYAREA
+	select FB_CFB_IMAGEBLIT
+	help
+	  This is the framebuffer device for the Sun XVR-1000 and similar
+	  graphics cards.  The driver only works on sparc64 systems where
+	  the system firmware has mostly initialized the card already.  It
+	  is treated as a completely dumb framebuffer device.
+
 config FB_PVR2
 	tristate "NEC PowerVR 2 display support"
 	depends on FB && SH_DREAMCAST
diff --git a/drivers/video/Makefile b/drivers/video/Makefile
index 4ecb30c..8c9a357 100644
--- a/drivers/video/Makefile
+++ b/drivers/video/Makefile
@@ -79,6 +79,7 @@ obj-$(CONFIG_FB_N411)             += n411.o
 obj-$(CONFIG_FB_HGA)              += hgafb.o
 obj-$(CONFIG_FB_XVR500)           += sunxvr500.o
 obj-$(CONFIG_FB_XVR2500)          += sunxvr2500.o
+obj-$(CONFIG_FB_XVR1000)          += sunxvr1000.o
 obj-$(CONFIG_FB_IGA)              += igafb.o
 obj-$(CONFIG_FB_APOLLO)           += dnfb.o
 obj-$(CONFIG_FB_Q40)              += q40fb.o
diff --git a/drivers/video/sunxvr1000.c b/drivers/video/sunxvr1000.c
new file mode 100644
index 0000000..8066e88
--- /dev/null
+++ b/drivers/video/sunxvr1000.c
@@ -0,0 +1,228 @@
+/* sunxvr1000.c: Sun XVR-1000 driver for sparc64 systems
+ *
+ * Copyright (C) 2010 David S. Miller (davem@davemloft.net)
+ */
+
+#include <linux/module.h>
+#include <linux/kernel.h>
+#include <linux/slab.h>
+#include <linux/fb.h>
+#include <linux/init.h>
+#include <linux/of_device.h>
+
+struct gfb_info {
+	struct fb_info		*info;
+
+	char __iomem		*fb_base;
+	unsigned long		fb_base_phys;
+
+	struct device_node	*of_node;
+
+	unsigned int		width;
+	unsigned int		height;
+	unsigned int		depth;
+	unsigned int		fb_size;
+
+	u32			pseudo_palette[16];
+};
+
+static int __devinit gfb_get_props(struct gfb_info *gp)
+{
+	gp->width = of_getintprop_default(gp->of_node, "width", 0);
+	gp->height = of_getintprop_default(gp->of_node, "height", 0);
+	gp->depth = of_getintprop_default(gp->of_node, "depth", 32);
+
+	if (!gp->width || !gp->height) {
+		printk(KERN_ERR "gfb: Critical properties missing for %s\n",
+		       gp->of_node->full_name);
+		return -EINVAL;
+	}
+
+	return 0;
+}
+
+static int gfb_setcolreg(unsigned regno,
+			 unsigned red, unsigned green, unsigned blue,
+			 unsigned transp, struct fb_info *info)
+{
+	u32 value;
+
+	if (regno < 16) {
+		red >>= 8;
+		green >>= 8;
+		blue >>= 8;
+
+		value = (blue << 24) | (green << 16) | (red << 8);
+		((u32 *)info->pseudo_palette)[regno] = value;
+	}
+
+	return 0;
+}
+
+static struct fb_ops gfb_ops = {
+	.owner			= THIS_MODULE,
+	.fb_setcolreg		= gfb_setcolreg,
+	.fb_fillrect		= cfb_fillrect,
+	.fb_copyarea		= cfb_copyarea,
+	.fb_imageblit		= cfb_imageblit,
+};
+
+static int __devinit gfb_set_fbinfo(struct gfb_info *gp)
+{
+	struct fb_info *info = gp->info;
+	struct fb_var_screeninfo *var = &info->var;
+
+	info->flags = FBINFO_DEFAULT;
+	info->fbops = &gfb_ops;
+	info->screen_base = gp->fb_base;
+	info->screen_size = gp->fb_size;
+
+	info->pseudo_palette = gp->pseudo_palette;
+
+	/* Fill fix common fields */
+	strlcpy(info->fix.id, "gfb", sizeof(info->fix.id));
+        info->fix.smem_start = gp->fb_base_phys;
+        info->fix.smem_len = gp->fb_size;
+        info->fix.type = FB_TYPE_PACKED_PIXELS;
+	if (gp->depth = 32 || gp->depth = 24)
+		info->fix.visual = FB_VISUAL_TRUECOLOR;
+	else
+		info->fix.visual = FB_VISUAL_PSEUDOCOLOR;
+
+	var->xres = gp->width;
+	var->yres = gp->height;
+	var->xres_virtual = var->xres;
+	var->yres_virtual = var->yres;
+	var->bits_per_pixel = gp->depth;
+
+	var->red.offset = 0;
+	var->red.length = 8;
+	var->green.offset = 8;
+	var->green.length = 8;
+	var->blue.offset = 16;
+	var->blue.length = 8;
+	var->transp.offset = 0;
+	var->transp.length = 0;
+
+	if (fb_alloc_cmap(&info->cmap, 256, 0)) {
+		printk(KERN_ERR "gfb: Cannot allocate color map.\n");
+		return -ENOMEM;
+	}
+
+        return 0;
+}
+
+static int __devinit gfb_probe(struct of_device *op,
+			       const struct of_device_id *match)
+{
+	struct device_node *dp = op->node;
+	struct fb_info *info;
+	struct gfb_info *gp;
+	int err;
+
+	info = framebuffer_alloc(sizeof(struct gfb_info), &op->dev);
+	if (!info) {
+		printk(KERN_ERR "gfb: Cannot allocate fb_info\n");
+		err = -ENOMEM;
+		goto err_out;
+	}
+
+	gp = info->par;
+	gp->info = info;
+	gp->of_node = dp;
+
+	gp->fb_base_phys = op->resource[6].start;
+
+	err = gfb_get_props(gp);
+	if (err)
+		goto err_release_fb;
+
+	/* Framebuffer length is the same regardless of resolution. */
+	info->fix.line_length = 16384;
+	gp->fb_size = info->fix.line_length * gp->height;
+
+	gp->fb_base = of_ioremap(&op->resource[6], 0,
+				 gp->fb_size, "gfb fb");
+	if (!gp->fb_base)
+		goto err_release_fb;
+
+	err = gfb_set_fbinfo(gp);
+	if (err)
+		goto err_unmap_fb;
+
+	printk("gfb: Found device at %s\n", dp->full_name);
+
+	err = register_framebuffer(info);
+	if (err < 0) {
+		printk(KERN_ERR "gfb: Could not register framebuffer %s\n",
+		       dp->full_name);
+		goto err_unmap_fb;
+	}
+
+	dev_set_drvdata(&op->dev, info);
+
+	return 0;
+
+err_unmap_fb:
+	of_iounmap(&op->resource[6], gp->fb_base, gp->fb_size);
+
+err_release_fb:
+        framebuffer_release(info);
+
+err_out:
+	return err;
+}
+
+static int __devexit gfb_remove(struct of_device *op)
+{
+	struct fb_info *info = dev_get_drvdata(&op->dev);
+	struct gfb_info *gp = info->par;
+
+	unregister_framebuffer(info);
+
+	iounmap(gp->fb_base);
+
+	of_iounmap(&op->resource[6], gp->fb_base, gp->fb_size);
+
+        framebuffer_release(info);
+
+	dev_set_drvdata(&op->dev, NULL);
+
+	return 0;
+}
+
+static const struct of_device_id gfb_match[] = {
+	{
+		.name = "SUNW,gfb",
+	},
+	{},
+};
+MODULE_DEVICE_TABLE(of, ffb_match);
+
+static struct of_platform_driver gfb_driver = {
+	.name		= "gfb",
+	.match_table	= gfb_match,
+	.probe		= gfb_probe,
+	.remove		= __devexit_p(gfb_remove),
+};
+
+static int __init gfb_init(void)
+{
+	if (fb_get_options("gfb", NULL))
+		return -ENODEV;
+
+	return of_register_driver(&gfb_driver, &of_bus_type);
+}
+
+static void __exit gfb_exit(void)
+{
+	of_unregister_driver(&gfb_driver);
+}
+
+module_init(gfb_init);
+module_exit(gfb_exit);
+
+MODULE_DESCRIPTION("framebuffer driver for Sun XVR-1000 graphics");
+MODULE_AUTHOR("David S. Miller <davem@davemloft.net>");
+MODULE_VERSION("1.0");
+MODULE_LICENSE("GPL");
-- 
1.6.6.1


^ permalink raw reply related	[flat|nested] 23+ messages in thread

* Re: XVR-500 additional pci ids
  2010-02-26  1:55 XVR-500 additional pci ids Dennis Gilmore
                   ` (7 preceding siblings ...)
  2010-03-11 17:58 ` David Miller
@ 2010-03-12  7:45 ` Frans van Berckel
  2010-03-12  7:54 ` Frans van Berckel
                   ` (12 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: Frans van Berckel @ 2010-03-12  7:45 UTC (permalink / raw)
  To: sparclinux

On Thu, 2010-03-11 at 08:16 -0800, David Miller wrote:
> From: Frans van Berckel <fberckel@xs4all.nl>
> Date: Thu, 11 Mar 2010 09:30:31 +0100
> 
> > Thanks for asking. Attaching XVR 1000 (SUNW,gfb) prtconf -pv.
> 
> We were talking about XVR-1200, and this isn't an XVR-1200, it's not
> even a PCI card.
> 
> It does occupy a PCI slot because it is so huge, but it actually
> operates out of the UPA slot.

That's true ... gonna try to post the XVR-1200 later on as well.

Thanks,


Frans van Berckel



^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: XVR-500 additional pci ids
  2010-02-26  1:55 XVR-500 additional pci ids Dennis Gilmore
                   ` (8 preceding siblings ...)
  2010-03-12  7:45 ` Frans van Berckel
@ 2010-03-12  7:54 ` Frans van Berckel
  2010-03-12  8:07 ` David Miller
                   ` (11 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: Frans van Berckel @ 2010-03-12  7:54 UTC (permalink / raw)
  To: sparclinux

On Thu, 2010-03-11 at 09:58 -0800, David Miller wrote:
> From: David Miller <davem@davemloft.net>
> Date: Thu, 11 Mar 2010 08:16:01 -0800 (PST)
> 
> > From: Frans van Berckel <fberckel@xs4all.nl>
> > Date: Thu, 11 Mar 2010 09:30:31 +0100
> > 
> >> Thanks for asking. Attaching XVR 1000 (SUNW,gfb) prtconf -pv.
> > 
> > We were talking about XVR-1200, and this isn't an XVR-1200, it's not
> > even a PCI card.
> > 
> > It does occupy a PCI slot because it is so huge, but it actually
> > operates out of the UPA slot.
> 
> Anyways, here is a quick attempt at a driver for this card:
> 
> sparc64: Add very basic XVR-1000 framebuffer driver.

Oh that sound rely nice, wanne say thank you! Gonna test this XVR 1000
patch later on and will report the results.



Frans van Berckel


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: XVR-500 additional pci ids
  2010-02-26  1:55 XVR-500 additional pci ids Dennis Gilmore
                   ` (9 preceding siblings ...)
  2010-03-12  7:54 ` Frans van Berckel
@ 2010-03-12  8:07 ` David Miller
  2010-03-12  8:08 ` David Miller
                   ` (10 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: David Miller @ 2010-03-12  8:07 UTC (permalink / raw)
  To: sparclinux

From: Frans van Berckel <fberckel@xs4all.nl>
Date: Fri, 12 Mar 2010 08:45:50 +0100

> On Thu, 2010-03-11 at 08:16 -0800, David Miller wrote:
>> From: Frans van Berckel <fberckel@xs4all.nl>
>> Date: Thu, 11 Mar 2010 09:30:31 +0100
>> 
>> > Thanks for asking. Attaching XVR 1000 (SUNW,gfb) prtconf -pv.
>> 
>> We were talking about XVR-1200, and this isn't an XVR-1200, it's not
>> even a PCI card.
>> 
>> It does occupy a PCI slot because it is so huge, but it actually
>> operates out of the UPA slot.
> 
> That's true ... gonna try to post the XVR-1200 later on as well.

Thank you.

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: XVR-500 additional pci ids
  2010-02-26  1:55 XVR-500 additional pci ids Dennis Gilmore
                   ` (10 preceding siblings ...)
  2010-03-12  8:07 ` David Miller
@ 2010-03-12  8:08 ` David Miller
  2010-03-13 10:09 ` Frans van Berckel
                   ` (9 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: David Miller @ 2010-03-12  8:08 UTC (permalink / raw)
  To: sparclinux

From: Frans van Berckel <fberckel@xs4all.nl>
Date: Fri, 12 Mar 2010 08:54:39 +0100

>> sparc64: Add very basic XVR-1000 framebuffer driver.
> 
> Oh that sound rely nice, wanne say thank you! Gonna test this XVR 1000
> patch later on and will report the results.

I look forward to it :-)

If people have the other expert3d variants in their systems (XVR-600,
etc.) prtconf output would be appreciated.

That way I can make sure the driver at least tries to cover all cases.

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: XVR-500 additional pci ids
  2010-02-26  1:55 XVR-500 additional pci ids Dennis Gilmore
                   ` (11 preceding siblings ...)
  2010-03-12  8:08 ` David Miller
@ 2010-03-13 10:09 ` Frans van Berckel
  2010-03-13 10:29 ` Frans van Berckel
                   ` (8 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: Frans van Berckel @ 2010-03-13 10:09 UTC (permalink / raw)
  To: sparclinux

On Fri, 2010-03-12 at 00:08 -0800, David Miller wrote:
> From: Frans van Berckel <fberckel@xs4all.nl>
> Date: Fri, 12 Mar 2010 08:54:39 +0100
> 
> >> sparc64: Add very basic XVR-1000 framebuffer driver.
> > 
> > Oh that sound rely nice, wanne say thank you! Gonna test this XVR 1000
> > patch later on and will report the results.
> 
> I look forward to it :-)

Did i do patch wrong, if the driver is not showing up in menuconfig?


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: XVR-500 additional pci ids
  2010-02-26  1:55 XVR-500 additional pci ids Dennis Gilmore
                   ` (12 preceding siblings ...)
  2010-03-13 10:09 ` Frans van Berckel
@ 2010-03-13 10:29 ` Frans van Berckel
  2010-03-13 11:05 ` Frans van Berckel
                   ` (7 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: Frans van Berckel @ 2010-03-13 10:29 UTC (permalink / raw)
  To: sparclinux

On Fri, 2010-03-12 at 00:08 -0800, David Miller wrote:
> From: Frans van Berckel <fberckel@xs4all.nl>
> Date: Fri, 12 Mar 2010 08:54:39 +0100
> 
> >> sparc64: Add very basic XVR-1000 framebuffer driver.
> > 
> > Oh that sound rely nice, wanne say thank you! Gonna test this XVR 1000
> > patch later on and will report the results.
> 
> I look forward to it :-)

Getting a compile error ...

> Arch sparc is not supported with CONFIG_FTRACE_MCOUNT_RECORD at /usr/src/linux-source-2.6-next-git/scripts/recordmcount.pl line 356.
> make[5]: *** [drivers/char/tty_ioctl.o] Error 2
> make[4]: *** [drivers/char] Error 2
> make[3]: *** [drivers] Error 2

On line #280
} elsif ($arch eq "sparc64") {

Does it got to be instead?
} elsif ($arch eq "sparc") {


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: XVR-500 additional pci ids
  2010-02-26  1:55 XVR-500 additional pci ids Dennis Gilmore
                   ` (13 preceding siblings ...)
  2010-03-13 10:29 ` Frans van Berckel
@ 2010-03-13 11:05 ` Frans van Berckel
  2010-03-13 11:48 ` Frans van Berckel
                   ` (6 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: Frans van Berckel @ 2010-03-13 11:05 UTC (permalink / raw)
  To: sparclinux

On Fri, 2010-03-12 at 00:08 -0800, David Miller wrote:
> From: Frans van Berckel <fberckel@xs4all.nl>
> Date: Fri, 12 Mar 2010 08:54:39 +0100
> 
> >> sparc64: Add very basic XVR-1000 framebuffer driver.
> > 
> > Oh that sound rely nice, wanne say thank you! Gonna test this XVR 1000
> > patch later on and will report the results.
> 
> I look forward to it :-)

I am not wanne dislike perl in general today, bud is it possible, one of
the scripts is un-setting the LC_ALL value? 

It's because i set my environment LC_ALL="C" and perl -V:d_setlocale
echo's d_setlocale='define'; but it's still warning on.

If not it's somewhere in Debian and out of the scoop of this list!

make[3]: Entering directory `/usr/src/linux-source-2.6-next-git'
  CHK     include/linux/version.h
  CHK     include/generated/utsrelease.h
  CALL    scripts/checksyscalls.sh
<stdin>:1527:2: warning: #warning syscall fanotify_init not implemented
<stdin>:1531:2: warning: #warning syscall fanotify_mark not implemented
<stdin>:1535:2: warning: #warning syscall getprlimit not implemented
<stdin>:1539:2: warning: #warning syscall setprlimit not implemented
  HOSTCC  scripts/genksyms/genksyms.o
  SHIPPED scripts/genksyms/lex.c
  SHIPPED scripts/genksyms/parse.h
  SHIPPED scripts/genksyms/keywords.c
  HOSTCC  scripts/genksyms/lex.o
  SHIPPED scripts/genksyms/parse.c
  HOSTCC  scripts/genksyms/parse.o
  HOSTLD  scripts/genksyms/genksyms
  CC      scripts/mod/empty.o
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
	LANGUAGE = "en",
	LC_ALL = (unset),
	LC_CTYPE = "C",
	LC_COLLATE = "C",
	LC_MESSANGES = "C",
	LC_LANG = "C",
	LC_NUMERIC = "C",
	LANG = "en"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: XVR-500 additional pci ids
  2010-02-26  1:55 XVR-500 additional pci ids Dennis Gilmore
                   ` (14 preceding siblings ...)
  2010-03-13 11:05 ` Frans van Berckel
@ 2010-03-13 11:48 ` Frans van Berckel
  2010-03-13 17:57 ` Frans van Berckel
                   ` (5 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: Frans van Berckel @ 2010-03-13 11:48 UTC (permalink / raw)
  To: sparclinux

On Sat, 2010-03-13 at 11:09 +0100, Frans van Berckel wrote:
> On Fri, 2010-03-12 at 00:08 -0800, David Miller wrote:
> > From: Frans van Berckel <fberckel@xs4all.nl>
> > Date: Fri, 12 Mar 2010 08:54:39 +0100
> >  
> > > Oh that sound rely nice, wanne say thank you! Gonna test this XVR 1000
> > > patch later on and will report the results.
> > 
> > I look forward to it :-)
> 
> Did i do patch wrong, if the driver is not showing up in menuconfig?

Sorry ... that's just me, solved now.


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: XVR-500 additional pci ids
  2010-02-26  1:55 XVR-500 additional pci ids Dennis Gilmore
                   ` (15 preceding siblings ...)
  2010-03-13 11:48 ` Frans van Berckel
@ 2010-03-13 17:57 ` Frans van Berckel
  2010-03-13 18:42 ` Frans van Berckel
                   ` (4 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: Frans van Berckel @ 2010-03-13 17:57 UTC (permalink / raw)
  To: sparclinux

[-- Attachment #1: Type: text/plain, Size: 680 bytes --]

On Fri, 2010-03-12 at 00:08 -0800, David Miller wrote:
> From: Frans van Berckel <fberckel@xs4all.nl>
> Date: Fri, 12 Mar 2010 08:54:39 +0100
> 
> >> sparc64: Add very basic XVR-1000 framebuffer driver.
> > 
> > Oh that sound rely nice, wanne say thank you! Gonna test this XVR 1000
> > patch later on and will report the results.
> 
> I look forward to it :-)

It boot's! 

[    0.000000] OF stdout device
is: /upa@8,480000/SUNW,gfb@0,0:r1440x900x60

Next the screen is switching into blue letters, it scrolls on and on, as
expected. At the end it prints a blinking cursor. It freezes the cursor.
But the system goes on and is still accessible with ssh.

Attaching the dmesg ...

[-- Attachment #2: dmesg-sun4u-xvr-1000-build.txt --]
[-- Type: text/plain, Size: 13122 bytes --]

[    0.000000] PROMLIB: Sun IEEE Boot Prom 'OBP 4.5.21 2003/02/24 17:23'
[    0.000000] PROMLIB: Root node compatible: 
[    0.000000] Initializing cgroup subsys cpuset
[    0.000000] Linux version 2.6.34-rc1-kernelbuilder-next-20100309+ (root@deblnxsrv251) (gcc version 4.4.3 (Ubuntu 4.4.3-3ubuntu1) ) #1 SMP Sat Mar 13 13:22:22 CET 2010
[    0.000000] bootconsole [earlyprom0] enabled
[    0.000000] ARCH: SUN4U
[    0.000000] Ethernet address: 00:03:ba:5b:86:cb
[    0.000000] Kernel: Using 2 locked TLB entries for main kernel image.
[    0.000000] Remapping the kernel... done.
[    0.000000] OF stdout device is: /upa@8,480000/SUNW,gfb@0,0:r1440x900x60
[    0.000000] PROM: Built device tree with 67248 bytes of memory.
[    0.000000] Top of RAM: 0x7fe8c000, Total RAM: 0x7fd6e000
[    0.000000] Memory hole size: 1MB
[    0.000000] [0000010000000000-fffff80000c00000] page_structs=131072 node=0 entry=0/0
[    0.000000] [0000010000000000-fffff80001000000] page_structs=131072 node=0 entry=1/0
[    0.000000] [0000010000800000-fffff80001400000] page_structs=131072 node=0 entry=2/0
[    0.000000] [0000010000800000-fffff80001800000] page_structs=131072 node=0 entry=3/0
[    0.000000] Zone PFN ranges:
[    0.000000]   Normal   0x00000000 -> 0x0003ff46
[    0.000000] Movable zone start PFN for each node
[    0.000000] early_node_map[6] active PFN ranges
[    0.000000]     0: 0x00000000 -> 0x0003f7ff
[    0.000000]     0: 0x0003f800 -> 0x0003fe3e
[    0.000000]     0: 0x0003fec0 -> 0x0003fec8
[    0.000000]     0: 0x0003feca -> 0x0003fed2
[    0.000000]     0: 0x0003fed4 -> 0x0003ff2f
[    0.000000]     0: 0x0003ff37 -> 0x0003ff46
[    0.000000] On node 0 totalpages: 261815
[    0.000000]   Normal zone: 2047 pages used for memmap
[    0.000000]   Normal zone: 0 pages reserved
[    0.000000]   Normal zone: 259768 pages, LIFO batch:15
[    0.000000] Booting Linux...
[    0.000000] PERCPU: Embedded 7 pages/cpu @fffff80001c00000 s25472 r8192 d23680 u4194304
[    0.000000] pcpu-alloc: s25472 r8192 d23680 u4194304 alloc=1*4194304
[    0.000000] pcpu-alloc: [0] 0 
[    0.000000] Built 1 zonelists in Node order, mobility grouping on.  Total pages: 259768
[    0.000000] Policy zone: Normal
[    0.000000] Kernel command line: root=/dev/sda5 ro
[    0.000000] PID hash table entries: 4096 (order: 2, 32768 bytes)
[    0.000000] Memory: 2061640k available (4400k kernel code, 1960k data, 352k init) [fffff80000000000,000000007fe8c000]
[    0.000000] SLUB: Genslabs=15, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=16
[    0.000000] Hierarchical RCU implementation.
[    0.000000] NR_IRQS:255
[    0.000000] clocksource: mult[c8000000] shift[24]
[    0.000000] clockevent: mult[147ae14] shift[32]
[    0.000000] Console: colour dummy device 80x25
[    0.000000] console [tty0] enabled, bootconsole disabled
[   64.907919] Calibrating delay using timer specific routine.. 10.00 BogoMIPS (lpj=20019)
[   64.908048] Security Framework initialized
[   64.908085] SELinux:  Disabled at boot.
[   64.908453] Dentry cache hash table entries: 262144 (order: 8, 2097152 bytes)
[   64.915461] Inode-cache hash table entries: 131072 (order: 7, 1048576 bytes)
[   64.918881] Mount-cache hash table entries: 512
[   64.919420] Initializing cgroup subsys ns
[   64.919442] Initializing cgroup subsys devices
[   64.919458] Initializing cgroup subsys freezer
[   64.919471] Initializing cgroup subsys net_cls
[   64.919525] ftrace: allocating 14094 entries in 28 pages
[   64.926441] Brought up 1 CPUs
[   64.926880] devtmpfs: initialized
[   64.927444] regulator: core version 0.5
[   64.927579] NET: Registered protocol family 16
[   64.930787] Testing NMI watchdog ... OK.
[   65.010805] Performance events: Supported PMU type is 'ultra3+'
[   65.011370] /pci@8,700000: SCHIZO PCI Bus Module ver[7:0]
[   65.011391] /pci@8,700000: PCI IO[7ffef000000] MEM[7fe00000000]
[   65.015463] PCI: Scanning PBM /pci@8,700000
[   65.015984] pci 0000:00:06.0: supports D1 D2
[   65.016047] pci 0000:00:06.1: supports D1 D2
[   65.016677] /pci@8,600000: SCHIZO PCI Bus Module ver[7:0]
[   65.016697] /pci@8,600000: PCI IO[7ffed000000] MEM[7fd00000000]
[   65.020731] PCI: Scanning PBM /pci@8,600000
[   65.022520] bio: create slab <bio-0> at 0
[   65.022885] vgaarb: loaded
[   65.023425] NetLabel: Initializing
[   65.023442] NetLabel:  domain hash size = 128
[   65.023457] NetLabel:  protocols = UNLABELED CIPSOv4
[   65.023516] NetLabel:  unlabeled traffic allowed by default
[   65.023697] /pci@8,700000/ebus@5/rtc@1,300070: RTC regs at 0x7fe7e300070
[   65.024096] Switching to clocksource stick
[   65.030246] NET: Registered protocol family 2
[   65.030515] IP route cache hash table entries: 65536 (order: 6, 524288 bytes)
[   65.032508] TCP established hash table entries: 262144 (order: 9, 4194304 bytes)
[   65.046063] TCP bind hash table entries: 65536 (order: 7, 1048576 bytes)
[   65.049467] TCP: Hash tables configured (established 262144 bind 65536)
[   65.049490] TCP reno registered
[   65.049523] UDP hash table entries: 1024 (order: 2, 32768 bytes)
[   65.049676] UDP-Lite hash table entries: 1024 (order: 2, 32768 bytes)
[   65.050062] NET: Registered protocol family 1
[   65.050163] PCI: CLS 64 bytes, default 64
[   65.050335] Trying to unpack rootfs image as initramfs...
[   65.471748] Freeing initrd memory: 8315k freed
[   65.472988] audit: initializing netlink socket (disabled)
[   65.473040] type=2000 audit(0.648:1): initialized
[   65.545468] HugeTLB registered 4 MB page size, pre-allocated 0 pages
[   65.550558] VFS: Disk quotas dquot_6.5.2
[   65.550745] Dquot-cache hash table entries: 1024 (order 0, 8192 bytes)
[   65.552121] fuse init (API version 7.13)
[   65.552415] msgmni has been set to 4042
[   65.553300] alg: No test for stdrng (krng)
[   65.553356] io scheduler noop registered
[   65.553376] io scheduler deadline registered
[   65.553617] io scheduler cfq registered (default)
[   65.554199] gfb: Found device at /upa@8,480000/SUNW,gfb@0,0
[   65.594553] Console: switching to colour frame buffer device 160x64
[   65.638376] [drm] Initialized drm 1.1.0 20060810
[   65.638985] f0086c30: ttyS0 at MMIO 0x7fe7e400000 (irq = 12) is a SAB82532 V3.2
[   65.639403] f0086c30: ttyS1 at MMIO 0x7fe7e400040 (irq = 12) is a SAB82532 V3.2
[   65.642905] brd: module loaded
[   65.644599] loop: module loaded
[   65.644860] Fixed MDIO Bus: probed
[   65.645141] sungem.c:v0.98 8/24/03 David S. Miller (davem@redhat.com)
[   65.646337] PHY ID: 18074c1, addr: 0
[   65.647187] eth0: Sun GEM (PCI) 10/100/1000BaseT Ethernet 00:03:ba:5b:86:cb
[   65.647518] eth0: Found Generic MII PHY
[   65.647743] tun: Universal TUN/TAP device driver, 1.6
[   65.647983] tun: (C) 1999-2004 Max Krasnyansky <maxk@qualcomm.com>
[   65.648654] mice: PS/2 mouse device common for all mice
[   65.649181] input: Sparc BBC Speaker as /devices/root/f006c678/f007e070/f0084030/input/input0
[   65.649955] rtc_cmos rtc_cmos: rtc core: registered rtc_cmos as rtc0
[   65.650272] rtc0: no alarms, 114 bytes nvram
[   65.651404] TCP cubic registered
[   65.651568] NET: Registered protocol family 17
[   65.652070] registered taskstats version 1
[   65.652538] rtc_cmos rtc_cmos: setting system clock to 2010-03-13 17:24:24 UTC (1268501064)
[   65.691746] udev: starting version 151
[   65.937621] SCSI subsystem initialized
[   66.019562] usbcore: registered new interface driver usbfs
[   66.019868] usbcore: registered new interface driver hub
[   66.152338] PCI: Enabling device: (0000:00:06.0), cmd 147
[   66.153490] sym0: <875> rev 0x37 at pci 0000:00:06.0 irq 16
[   66.240731] sym0: No NVRAM, ID 7, Fast-20, SE, parity checking
[   66.248099] sym0: SCSI BUS has been reset.
[   66.248313] scsi0 : sym-2.2.3
[   66.270752] QLogic Fibre Channel HBA Driver: 8.03.02-k1
[   66.271044] PCI: Enabling device: (0001:00:04.0), cmd 3
[   66.271063] qla2xxx 0001:00:04.0: Found an ISP2200, irq 20, iobase 0x000007fd00100000
[   66.283977] usbcore: registered new device driver usb
[   66.290351] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[   66.299077] qla2xxx 0001:00:04.0: Configuring PCI space...
[   66.307746] qla2xxx 0001:00:04.0: Configure NVRAM parameters...
[   66.410602] qla2xxx 0001:00:04.0: Inconsistent NVRAM detected: checksum=0x0 id=
[   66.410946] qla2xxx 0001:00:04.0: Falling back to functioning (yet invalid -- WWPN) defaults.
[   66.428638] qla2xxx 0001:00:04.0: Verifying loaded RISC code...
[   66.438341] PCI: Enabling device: (0000:00:06.1), cmd 147
[   66.439509] sym1: <875> rev 0x37 at pci 0000:00:06.1 irq 17
[   66.535783] sym1: No NVRAM, ID 7, Fast-20, SE, parity checking
[   66.552491] sym1: SCSI BUS has been reset.
[   66.562233] scsi2 : sym-2.2.3
[   66.572617] qla2xxx 0001:00:04.0: firmware: requesting ql2200_fw.bin
[   66.645274] ohci1394: fw-host0: OHCI-1394 1.0 (PCI): IRQ=[14]  MMIO=[7fe00120000-7fe001207ff]  Max Packet=[2048]  IR/IT contexts=[4/4]
[   66.661466] ohci_hcd 0000:00:05.3: OHCI Host Controller
[   66.672576] ohci_hcd 0000:00:05.3: new USB bus registered, assigned bus number 1
[   66.683961] ohci_hcd 0000:00:05.3: irq 15, io mem 0x7fe01000000
[   66.752577] hub 1-0:1.0: USB hub found
[   66.764120] hub 1-0:1.0: 4 ports detected
[   67.100227] usb 1-1: new low speed USB device using ohci_hcd and address 2
[   67.312017] input: HID 0430:0100 as /devices/root/f006c678/pci0000:00/0000:00:05.3/usb1/1-1/1-1:1.0/input/input1
[   67.324761] generic-usb 0003:0430:0100.0001: input,hidraw0: USB HID v1.10 Mouse [HID 0430:0100] on usb-0000:00:05.3-1/input0
[   67.337848] usbcore: registered new interface driver usbhid
[   67.351039] usbhid: USB HID core driver
[   67.420228] usb 1-2: new low speed USB device using ohci_hcd and address 3
[   67.594671] input: HID 0430:0005 as /devices/root/f006c678/pci0000:00/0000:00:05.3/usb1/1-2/1-2:1.0/input/input2
[   67.609055] generic-usb 0003:0430:0005.0002: input,hidraw1: USB HID v1.00 Keyboard [HID 0430:0005] on usb-0000:00:05.3-2/input0
[   67.932445] ieee1394: Host added: ID:BUS[0-00:1023]  GUID[0003bafffe5b86cb]
[   68.044422] eth0: Link is up at 100 Mbps, full-duplex.
[   71.001376] scsi 0:0:6:0: CD-ROM            TOSHIBA  DVD-ROM SD-M1401 1007 PQ: 0 ANSI: 2
[   71.015994] scsi target0:0:6: Beginning Domain Validation
[   71.032295] scsi target0:0:6: FAST-20 SCSI 20.0 MB/s ST (50 ns, offset 16)
[   71.048224] scsi target0:0:6: Domain Validation skipping write tests
[   71.062989] scsi target0:0:6: Ending Domain Validation
[   73.457807] sr0: scsi3-mmc drive: 40x/40x cd/rw xa/form2 cdda tray
[   73.472601] Uniform CD-ROM driver Revision: 3.20
[   73.487495] sr 0:0:6:0: Attached scsi CD-ROM sr0
[   73.501968] sr 0:0:6:0: Attached scsi generic sg0 type 5
[   77.420288] qla2xxx 0001:00:04.0: Allocated (252 KB) for firmware dump...
[   77.560226] qla2xxx 0001:00:04.0: LIP reset occurred (f8e8).
[   77.575035] scsi1 : qla2xxx
[   77.590390] qla2xxx 0001:00:04.0: 
[   77.590394]  QLogic Fibre Channel HBA Driver: 8.03.02-k1
[   77.590398]   QLogic QLA22xx - 
[   77.590400]   ISP2200: PCI (66 MHz) @ 0001:00:04.0 hdma-, host#=1, fw=2.02.08 TP
[   77.647535] qla2xxx 0001:00:04.0: LIP occurred (f8e8).
[   77.662023] qla2xxx 0001:00:04.0: LOOP UP detected (1 Gbps).
[   78.581442] scsi 1:0:0:0: Direct-Access     SEAGATE  ST336605FSUN36G  0638 PQ: 0 ANSI: 3
[   78.596840] scsi 1:0:0:0: Attached scsi generic sg1 type 0
[   78.635907] sd 1:0:0:0: [sda] 71132959 512-byte logical blocks: (36.4 GB/33.9 GiB)
[   78.653014] sd 1:0:0:0: [sda] Write Protect is off
[   78.667483] sd 1:0:0:0: [sda] Mode Sense: db 00 10 08
[   78.671866] sd 1:0:0:0: [sda] Write cache: disabled, read cache: enabled, supports DPO and FUA
[   78.696847]  sda: sda1 sda2 sda3 sda4 sda5 sda6
[   78.732469] sd 1:0:0:0: [sda] Attached SCSI disk
[   79.450624] kjournald starting.  Commit interval 5 seconds
[   79.465589] EXT3-fs (sda5): mounted filesystem with ordered data mode
[   83.596381] Adding 891592k swap on /dev/sda4.  Priority:-1 extents:1 across:891592k 
[   83.678536] udev: starting version 151
[   83.875017] EXT3-fs (sda5): using internal journal
[   84.549903] kjournald starting.  Commit interval 5 seconds
[   84.561101] EXT3-fs (sda6): using internal journal
[   84.561121] EXT3-fs (sda6): mounted filesystem with ordered data mode
[   84.569637] eth0: Link is up at 100 Mbps, full-duplex.
[   84.569648] eth0: Pause is disabled
[   84.671821] plymouthd[170]: segfault at 0 ip 00000000f7e3f790 (rpc 00000000f7bd5eb0) sp 00000000ffa213e0 error 30001 in libc-2.11.1.so[f7db0000+168000]
[   85.209528] NET: Registered protocol family 10
[   85.210677] lo: Disabled Privacy Extensions
[   85.527599] RPC: Registered udp transport module.
[   85.527610] RPC: Registered tcp transport module.
[   85.527617] RPC: Registered tcp NFSv4.1 backchannel transport module.
[   85.937900] Installing knfsd (copyright (C) 1996 okir@monad.swb.de).
[   86.475976] svc: failed to register lockdv1 RPC service (errno 47).
[   86.478863] NFSD: Using /var/lib/nfs/v4recovery as the NFSv4 state recovery directory
[   86.487283] NFSD: starting 90-second grace period
[   95.916219] eth0: no IPv6 routers present

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: XVR-500 additional pci ids
  2010-02-26  1:55 XVR-500 additional pci ids Dennis Gilmore
                   ` (16 preceding siblings ...)
  2010-03-13 17:57 ` Frans van Berckel
@ 2010-03-13 18:42 ` Frans van Berckel
  2010-03-13 19:12 ` David Miller
                   ` (3 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: Frans van Berckel @ 2010-03-13 18:42 UTC (permalink / raw)
  To: sparclinux

On Sat, 2010-03-13 at 18:57 +0100, Frans van Berckel wrote:
> On Fri, 2010-03-12 at 00:08 -0800, David Miller wrote: 
> > 
> > I look forward to it :-)
> 
> It boot's! 
> 
> [    0.000000] OF stdout device
> is: /upa@8,480000/SUNW,gfb@0,0:r1440x900x60
> 
> Next the screen is switching into blue letters, it scrolls on and on, as
> expected. At the end it prints a blinking cursor. It freezes the cursor.
> But the system goes on and is still accessible with ssh.
> 
> Attaching the dmesg ...

It does not freeze. It's a init switch but did not install Xorg.  With a
Alt-F1 I can switch the consoles and being able to login.


^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: XVR-500 additional pci ids
  2010-02-26  1:55 XVR-500 additional pci ids Dennis Gilmore
                   ` (17 preceding siblings ...)
  2010-03-13 18:42 ` Frans van Berckel
@ 2010-03-13 19:12 ` David Miller
  2010-03-13 19:19 ` David Miller
                   ` (2 subsequent siblings)
  21 siblings, 0 replies; 23+ messages in thread
From: David Miller @ 2010-03-13 19:12 UTC (permalink / raw)
  To: sparclinux

From: Frans van Berckel <fberckel@xs4all.nl>
Date: Sat, 13 Mar 2010 18:57:28 +0100

> Next the screen is switching into blue letters, it scrolls on and on, as
> expected. At the end it prints a blinking cursor. It freezes the cursor.
> But the system goes on and is still accessible with ssh.

So once the kernel switches from the PROM console output and
into the framebuffer driver, the characters printed are blue?

What color is the screen background when this happens?

^ permalink raw reply	[flat|nested] 23+ messages in thread

* Re: XVR-500 additional pci ids
  2010-02-26  1:55 XVR-500 additional pci ids Dennis Gilmore
                   ` (18 preceding siblings ...)
  2010-03-13 19:12 ` David Miller
@ 2010-03-13 19:19 ` David Miller
  2010-03-13 21:33 ` Frans van Berckel
  2010-03-14  0:21 ` David Miller
  21 siblings, 0 replies; 23+ messages in thread
From: David Miller @ 2010-03-13 19:19 UTC (permalink / raw)
  To: sparclinux

From: David Miller <davem@davemloft.net>
Date: Sat, 13 Mar 2010 11:12:41 -0800 (PST)

> From: Frans van Berckel <fberckel@xs4all.nl>
> Date: Sat, 13 Mar 2010 18:57:28 +0100
> 
>> Next the screen is switching into blue letters, it scrolls on and on, as
>> expected. At the end it prints a blinking cursor. It freezes the cursor.
>> But the system goes on and is still accessible with ssh.
> 
> So once the kernel switches from the PROM console output and
> into the framebuffer driver, the characters printed are blue?
> 
> What color is the screen background when this happens?

Meanwhile I think I know what the problem is, please try
this patch on top of what you have:

diff --git a/drivers/video/sunxvr1000.c b/drivers/video/sunxvr1000.c
index 8066e88..a8248c0 100644
--- a/drivers/video/sunxvr1000.c
+++ b/drivers/video/sunxvr1000.c
@@ -52,7 +52,7 @@ static int gfb_setcolreg(unsigned regno,
 		green >>= 8;
 		blue >>= 8;
 
-		value = (blue << 24) | (green << 16) | (red << 8);
+		value = (blue << 16) | (green << 8) | red;
 		((u32 *)info->pseudo_palette)[regno] = value;
 	}
 

^ permalink raw reply related	[flat|nested] 23+ messages in thread

* Re: XVR-500 additional pci ids
  2010-02-26  1:55 XVR-500 additional pci ids Dennis Gilmore
                   ` (19 preceding siblings ...)
  2010-03-13 19:19 ` David Miller
@ 2010-03-13 21:33 ` Frans van Berckel
  2010-03-14  0:21 ` David Miller
  21 siblings, 0 replies; 23+ messages in thread
From: Frans van Berckel @ 2010-03-13 21:33 UTC (permalink / raw)
  To: sparclinux

[-- Attachment #1: Type: text/plain, Size: 529 bytes --]

On Sat, 2010-03-13 at 11:19 -0800, David Miller wrote:
> From: David Miller <davem@davemloft.net>
> Date: Sat, 13 Mar 2010 11:12:41 -0800 (PST)
> > 
> > So once the kernel switches from the PROM console output and
> > into the framebuffer driver, the characters printed are blue?
> > 
> > What color is the screen background when this happens?
> 
> Meanwhile I think I know what the problem is, please try
> this patch on top of what you have:

Yes ... {being happy}

sunxvr1000
Acked-by: Frans van Berckel <fberckel@xs4all.nl>


[-- Attachment #2: sunxvr1000.patch --]
[-- Type: text/x-patch, Size: 7866 bytes --]

diff --git a/drivers/video/Kconfig b/drivers/video/Kconfig
index 5a5c303..a5755b8 100644
--- a/drivers/video/Kconfig
+++ b/drivers/video/Kconfig
@@ -909,6 +909,18 @@ config FB_XVR2500
          mostly initialized the card already.  It is treated as a
          completely dumb framebuffer device.
 
+config FB_XVR1000
+       bool "Sun XVR-1000 support"
+       depends on SPARC64
+       select FB_CFB_FILLRECT
+       select FB_CFB_COPYAREA
+       select FB_CFB_IMAGEBLIT
+       help
+         This is the framebuffer device for the Sun XVR-1000 and similar
+         graphics cards.  The driver only works on sparc64 systems where
+         the system firmware has mostly initialized the card already.  It
+         is treated as a completely dumb framebuffer device.
+
 config FB_PVR2
        tristate "NEC PowerVR 2 display support"
        depends on FB && SH_DREAMCAST
diff --git a/drivers/video/Makefile b/drivers/video/Makefile
index 4ecb30c..8c9a357 100644
--- a/drivers/video/Makefile
+++ b/drivers/video/Makefile
@@ -79,6 +79,7 @@ obj-$(CONFIG_FB_N411)             += n411.o
 obj-$(CONFIG_FB_HGA)              += hgafb.o
 obj-$(CONFIG_FB_XVR500)           += sunxvr500.o
 obj-$(CONFIG_FB_XVR2500)          += sunxvr2500.o
+obj-$(CONFIG_FB_XVR1000)          += sunxvr1000.o
 obj-$(CONFIG_FB_IGA)              += igafb.o
 obj-$(CONFIG_FB_APOLLO)           += dnfb.o
 obj-$(CONFIG_FB_Q40)              += q40fb.o
diff --git a/drivers/video/sunxvr1000.c b/drivers/video/sunxvr1000.c
new file mode 100644
index 0000000..8066e88
--- /dev/null
+++ b/drivers/video/sunxvr1000.c
@@ -0,0 +1,228 @@
+/* sunxvr1000.c: Sun XVR-1000 driver for sparc64 systems
+ *
+ * Copyright (C) 2010 David S. Miller (davem@davemloft.net)
+ */
+
+#include <linux/module.h>
+#include <linux/kernel.h>
+#include <linux/slab.h>
+#include <linux/fb.h>
+#include <linux/init.h>
+#include <linux/of_device.h>
+
+struct gfb_info {
+       struct fb_info          *info;
+
+       char __iomem            *fb_base;
+       unsigned long           fb_base_phys;
+
+       struct device_node      *of_node;
+
+       unsigned int            width;
+       unsigned int            height;
+       unsigned int            depth;
+       unsigned int            fb_size;
+
+       u32                     pseudo_palette[16];
+};
+
+static int __devinit gfb_get_props(struct gfb_info *gp)
+{
+       gp->width = of_getintprop_default(gp->of_node, "width", 0);
+       gp->height = of_getintprop_default(gp->of_node, "height", 0);
+       gp->depth = of_getintprop_default(gp->of_node, "depth", 32);
+
+       if (!gp->width || !gp->height) {
+               printk(KERN_ERR "gfb: Critical properties missing for %s\n",
+                      gp->of_node->full_name);
+               return -EINVAL;
+       }
+
+       return 0;
+}
+
+static int gfb_setcolreg(unsigned regno,
+                        unsigned red, unsigned green, unsigned blue,
+                        unsigned transp, struct fb_info *info)
+{
+       u32 value;
+
+       if (regno < 16) {
+               red >>= 8;
+               green >>= 8;
+               blue >>= 8;
+
+               value = (blue << 16) | (green << 8) | red;
+               ((u32 *)info->pseudo_palette)[regno] = value;
+       }
+
+       return 0;
+}
+
+static struct fb_ops gfb_ops = {
+       .owner                  = THIS_MODULE,
+       .fb_setcolreg           = gfb_setcolreg,
+       .fb_fillrect            = cfb_fillrect,
+       .fb_copyarea            = cfb_copyarea,
+       .fb_imageblit           = cfb_imageblit,
+};
+
+static int __devinit gfb_set_fbinfo(struct gfb_info *gp)
+{
+       struct fb_info *info = gp->info;
+       struct fb_var_screeninfo *var = &info->var;
+
+       info->flags = FBINFO_DEFAULT;
+       info->fbops = &gfb_ops;
+       info->screen_base = gp->fb_base;
+       info->screen_size = gp->fb_size;
+
+       info->pseudo_palette = gp->pseudo_palette;
+
+       /* Fill fix common fields */
+       strlcpy(info->fix.id, "gfb", sizeof(info->fix.id));
+        info->fix.smem_start = gp->fb_base_phys;
+        info->fix.smem_len = gp->fb_size;
+        info->fix.type = FB_TYPE_PACKED_PIXELS;
+       if (gp->depth == 32 || gp->depth == 24)
+               info->fix.visual = FB_VISUAL_TRUECOLOR;
+       else
+               info->fix.visual = FB_VISUAL_PSEUDOCOLOR;
+
+       var->xres = gp->width;
+       var->yres = gp->height;
+       var->xres_virtual = var->xres;
+       var->yres_virtual = var->yres;
+       var->bits_per_pixel = gp->depth;
+
+       var->red.offset = 0;
+       var->red.length = 8;
+       var->green.offset = 8;
+       var->green.length = 8;
+       var->blue.offset = 16;
+       var->blue.length = 8;
+       var->transp.offset = 0;
+       var->transp.length = 0;
+
+       if (fb_alloc_cmap(&info->cmap, 256, 0)) {
+               printk(KERN_ERR "gfb: Cannot allocate color map.\n");
+               return -ENOMEM;
+       }
+
+        return 0;
+}
+
+static int __devinit gfb_probe(struct of_device *op,
+                              const struct of_device_id *match)
+{
+       struct device_node *dp = op->node;
+       struct fb_info *info;
+       struct gfb_info *gp;
+       int err;
+
+       info = framebuffer_alloc(sizeof(struct gfb_info), &op->dev);
+       if (!info) {
+               printk(KERN_ERR "gfb: Cannot allocate fb_info\n");
+               err = -ENOMEM;
+               goto err_out;
+       }
+
+       gp = info->par;
+       gp->info = info;
+       gp->of_node = dp;
+
+       gp->fb_base_phys = op->resource[6].start;
+
+       err = gfb_get_props(gp);
+       if (err)
+               goto err_release_fb;
+
+       /* Framebuffer length is the same regardless of resolution. */
+       info->fix.line_length = 16384;
+       gp->fb_size = info->fix.line_length * gp->height;
+
+       gp->fb_base = of_ioremap(&op->resource[6], 0,
+                                gp->fb_size, "gfb fb");
+       if (!gp->fb_base)
+               goto err_release_fb;
+
+       err = gfb_set_fbinfo(gp);
+       if (err)
+               goto err_unmap_fb;
+
+       printk("gfb: Found device at %s\n", dp->full_name);
+
+       err = register_framebuffer(info);
+       if (err < 0) {
+               printk(KERN_ERR "gfb: Could not register framebuffer %s\n",
+                      dp->full_name);
+               goto err_unmap_fb;
+       }
+
+       dev_set_drvdata(&op->dev, info);
+
+       return 0;
+
+err_unmap_fb:
+       of_iounmap(&op->resource[6], gp->fb_base, gp->fb_size);
+
+err_release_fb:
+        framebuffer_release(info);
+
+err_out:
+       return err;
+}
+
+static int __devexit gfb_remove(struct of_device *op)
+{
+       struct fb_info *info = dev_get_drvdata(&op->dev);
+       struct gfb_info *gp = info->par;
+
+       unregister_framebuffer(info);
+
+       iounmap(gp->fb_base);
+
+       of_iounmap(&op->resource[6], gp->fb_base, gp->fb_size);
+
+        framebuffer_release(info);
+
+       dev_set_drvdata(&op->dev, NULL);
+
+       return 0;
+}
+
+static const struct of_device_id gfb_match[] = {
+       {
+               .name = "SUNW,gfb",
+       },
+       {},
+};
+MODULE_DEVICE_TABLE(of, ffb_match);
+
+static struct of_platform_driver gfb_driver = {
+       .name           = "gfb",
+       .match_table    = gfb_match,
+       .probe          = gfb_probe,
+       .remove         = __devexit_p(gfb_remove),
+};
+
+static int __init gfb_init(void)
+{
+       if (fb_get_options("gfb", NULL))
+               return -ENODEV;
+
+       return of_register_driver(&gfb_driver, &of_bus_type);
+}
+
+static void __exit gfb_exit(void)
+{
+       of_unregister_driver(&gfb_driver);
+}
+
+module_init(gfb_init);
+module_exit(gfb_exit);
+
+MODULE_DESCRIPTION("framebuffer driver for Sun XVR-1000 graphics");
+MODULE_AUTHOR("David S. Miller <davem@davemloft.net>");
+MODULE_VERSION("1.0");
+MODULE_LICENSE("GPL");

^ permalink raw reply related	[flat|nested] 23+ messages in thread

* Re: XVR-500 additional pci ids
  2010-02-26  1:55 XVR-500 additional pci ids Dennis Gilmore
                   ` (20 preceding siblings ...)
  2010-03-13 21:33 ` Frans van Berckel
@ 2010-03-14  0:21 ` David Miller
  21 siblings, 0 replies; 23+ messages in thread
From: David Miller @ 2010-03-14  0:21 UTC (permalink / raw)
  To: sparclinux

From: Frans van Berckel <fberckel@xs4all.nl>
Date: Sat, 13 Mar 2010 22:33:17 +0100

> On Sat, 2010-03-13 at 11:19 -0800, David Miller wrote:
>> From: David Miller <davem@davemloft.net>
>> Date: Sat, 13 Mar 2010 11:12:41 -0800 (PST)
>> > 
>> > So once the kernel switches from the PROM console output and
>> > into the framebuffer driver, the characters printed are blue?
>> > 
>> > What color is the screen background when this happens?
>> 
>> Meanwhile I think I know what the problem is, please try
>> this patch on top of what you have:
> 
> Yes ... {being happy}
> 
> sunxvr1000
> Acked-by: Frans van Berckel <fberckel@xs4all.nl>

Thanks for testing, I'll push this new driver around.

^ permalink raw reply	[flat|nested] 23+ messages in thread

end of thread, other threads:[~2010-03-14  0:21 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-02-26  1:55 XVR-500 additional pci ids Dennis Gilmore
2010-02-26  5:58 ` David Miller
2010-02-27  9:05 ` Frans van Berckel
2010-02-27  9:59 ` David Miller
2010-03-02  8:20 ` Frans van Berckel
2010-03-11  2:24 ` David Miller
2010-03-11  8:30 ` Frans van Berckel
2010-03-11 16:16 ` David Miller
2010-03-11 17:58 ` David Miller
2010-03-12  7:45 ` Frans van Berckel
2010-03-12  7:54 ` Frans van Berckel
2010-03-12  8:07 ` David Miller
2010-03-12  8:08 ` David Miller
2010-03-13 10:09 ` Frans van Berckel
2010-03-13 10:29 ` Frans van Berckel
2010-03-13 11:05 ` Frans van Berckel
2010-03-13 11:48 ` Frans van Berckel
2010-03-13 17:57 ` Frans van Berckel
2010-03-13 18:42 ` Frans van Berckel
2010-03-13 19:12 ` David Miller
2010-03-13 19:19 ` David Miller
2010-03-13 21:33 ` Frans van Berckel
2010-03-14  0:21 ` David Miller

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.