Announcement

Collapse
No announcement yet.

Matrox DRM/KMS Driver Gets New Hardware Support In Linux 4.3

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #11
    Originally posted by Drago View Post
    Just to answer some peoples questions in advance: Matrox chips are extremely popular on the server boards. That is why David ( thus RedHat ) are investing in this old chipset.
    It's not really supporting an "old" chipset, Matrox have been producing new revisions of the G200 server chips fairly often. These patches add support some new ones found in upcoming server lines.

    Dave

    Comment


    • #12
      Thanks David. These G200 are rewinding me back to my youth, with Half-Life 1, Kingpin, etc. Can you elaborate what is the difference between the old and new revisions of the chip?

      Comment


      • #13
        Originally posted by Drago View Post
        Thanks David. These G200 are rewinding me back to my youth, with Half-Life 1, Kingpin, etc. Can you elaborate what is the difference between the old and new revisions of the chip?

        As I said these G200 are nothing like the G200 of your youth. Matrox just grabbed pieces of the same design to make their life easier. The only change across all the G200 server changes have been clock programming related, newer chips allow for larger modes, I haven't confirmed but I'm guessing the latest chips allow you to plug slightly larger monitors in or some such. They may also ship with more than the 2MB of VRAM.

        Dave.

        Comment


        • #14
          Originally posted by airlied View Post
          As I said these G200 are nothing like the G200 of your youth. Matrox just grabbed pieces of the same design to make their life easier. The only change across all the G200 server changes have been clock programming related, newer chips allow for larger modes, I haven't confirmed but I'm guessing the latest chips allow you to plug slightly larger monitors in or some such. They may also ship with more than the 2MB of VRAM.
          Quite a bit more. My G200EH (part of a HP MicroServer Gen8's iLO4) appears to have the maximum 16MB (+8MB Pseudo-DMA window?). This is said to be sufficient for two frame buffers of 32-bit 1280x1024 (even with +16-bit Z-buffer), or unbuffered 32-bit 1600x1200. Or a 1600x1200 single 1600x1200 32-bit with 32-bit Z-buffer, if you want to go crazy.

          I'm using it for 1280x1024 8-bit 75Mhz, because filling that memory seems to be more of a challenge - 8-bit offers 4x text scrolling speed over 32-bit, partly because the server has a somewhat anaemic 2.3Ghz Ivy Bridge dual-core Celeron.

          I wonder if the DMA engine still works and might improve this vs. having the host CPU do all the heavy lifting. The MGA-G200 specification's section on ILOAD programming looks interesting.

          01:00.1 VGA compatible controller: Matrox Electronics Systems Ltd. MGA G200EH (prog-if 00 [VGA controller])
          Subsystem: Hewlett-Packard Company iLO4
          Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr+ Stepping- SERR- FastB2B- DisINTx-
          Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
          Interrupt: pin B routed to IRQ 16
          Region 0: Memory at f9000000 (32-bit, prefetchable) [size=16M]
          Region 1: Memory at fbee0000 (32-bit, non-prefetchable) [size=16K]
          Region 2: Memory at fb000000 (32-bit, non-prefetchable) [size=8M]
          [virtual] Expansion ROM at 000c0000 [disabled] [size=128K]
          Capabilities: [a8] Power Management version 3
          -- Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
          -- Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
          Capabilities: [b0] MSI: Enable- Count=1/1 Maskable- 64bit+
          -- Address: 0000000000000000 Data: 0000
          Capabilities: [c0] Express (v1) Legacy Endpoint, MSI 00
          -- DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s unlimited, L1 unlimited
          -- ExtTag- AttnBtn- AttnInd- PwrInd- RBE+ FLReset-
          -- DevCtl: Report errors: Correctable- Non-Fatal+ Fatal+ Unsupported-
          -- RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop-
          -- MaxPayload 128 bytes, MaxReadReq 128 bytes
          -- DevSta: CorrErr- UncorrErr- FatalErr- UnsuppReq+ AuxPwr- TransPend-
          -- LnkCap: Port #0, Speed 2.5GT/s, Width x1, ASPM L0s, Exit Latency L0s <4us, L1 <4us
          -- ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp-
          -- LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- CommClk-
          -- ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
          -- LnkSta: Speed 2.5GT/s, Width x1, TrErr- Train- SlotClk- DLActive- BWMgmt- ABWMgmt-
          Kernel driver in use: mgag200
          It's not clear to me whether the BusMaster flag is always set correctly - the same iLO4 chip on a DL380e Gen8 has BusMaster+ with Latency: 0, Cache Line Size: 64 bytes.

          And here for comparison is a DL120 Gen6 with iLO-100:
          24:00.0 VGA compatible controller: Matrox Electronics Systems Ltd. MGA G200e [Pilot] ServerEngines (SEP1) (rev 02) (prog-if 00 [VGA controller])
          Subsystem: Hewlett-Packard Company ProLiant DL140 G3
          Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr+ Stepping- SERR+ FastB2B- DisINTx-
          Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort+ <MAbort- >SERR- <PERR- INTx-
          Latency: 0, Cache Line Size: 32 bytes
          Interrupt: pin A routed to IRQ 10
          Region 0: Memory at de000000 (32-bit, prefetchable) [size=16M]
          Region 1: Memory at df800000 (32-bit, non-prefetchable) [size=16K]
          Region 2: Memory at df000000 (32-bit, non-prefetchable) [size=8M]
          [virtual] Expansion ROM at 000c0000 [disabled] [size=128K]
          Capabilities: [dc] Power Management version 2
          -- Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
          -- Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
          Capabilities: [e4] Express (v1) Legacy Endpoint, MSI 00
          -- DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s <64ns, L1 <1us
          -- ExtTag- AttnBtn- AttnInd- PwrInd- RBE- FLReset-
          -- DevCtl: Report errors: Correctable- Non-Fatal- Fatal- Unsupported-
          -- RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop-
          -- MaxPayload 128 bytes, MaxReadReq 128 bytes
          -- DevSta: CorrErr+ UncorrErr- FatalErr- UnsuppReq+ AuxPwr- TransPend-
          -- LnkCap: Port #0, Speed 2.5GT/s, Width x1, ASPM L0s, Exit Latency L0s <64ns, L1 <1us
          -- ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp-
          -- LnkCtl: ASPM Disabled; RCB 64 bytes Disabled- CommClk+
          -- ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
          -- LnkSta: Speed 2.5GT/s, Width x1, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
          Capabilities: [54] MSI: Enable- Count=1/1 Maskable- 64bit-
          -- Address: 00000000 Data: 0000

          Comment

          Working...
          X