[haiku-bugs] Re: [Haiku] #10404: Intel(R) GMA 950 doesn't work with Intel Extreme driver and with Vesa driver.

  • From: "pulkomandy" <trac@xxxxxxxxxxxx>
  • Date: Tue, 14 Jan 2014 07:13:51 -0000

#10404: Intel(R) GMA 950 doesn't work with Intel Extreme driver and with Vesa
driver.
----------------------------------------------+-------------------------
   Reporter:  walera                          |      Owner:  axeld
       Type:  bug                             |     Status:  new
   Priority:  high                            |  Milestone:  R1
  Component:  Drivers/Graphics/intel_extreme  |    Version:  R1/alpha4.1
 Resolution:                                  |   Keywords:
 Blocked By:                                  |   Blocking:
Has a Patch:  0                               |   Platform:  x86
----------------------------------------------+-------------------------

Comment (by pulkomandy):

 Things look fine on the video driver initialization and mode setting side.
 However I noticed this:

 {{{
 2263    KERN: add_memory_type_range(5414, 0xc0000000, 0x10000000, 0)
 2264    KERN: set MTRRs to:
 2265    KERN:   mtrr:  0: base: 0xc0000000, size: 0x40000000, type: 0
 2266    KERN: remove_memory_type_range(86, 0xc0000000, 0x300000, 1)
 2267    KERN: set MTRRs to:
 2268    KERN:   mtrr:  0: base: 0xc0000000, size: 0x40000000, type: 0
 2269    KERN: add_memory_type_range(5414, 0xc0000000, 0x10000000, 1)
 2270    KERN: set MTRRs to:
 2271    KERN:   mtrr:  0: base: 0xcf691000, size:     0x1000, type: 0
 2272    KERN:   mtrr:  1: base: 0xcf697000, size:     0x1000, type: 0
 2273    KERN:   mtrr:  2: base: 0xcf698000, size:     0x1000, type: 0
 2274    KERN:   mtrr:  3: base: 0xd0000000, size: 0x10000000, type: 0
 2275    KERN:   mtrr:  4: base: 0xe0000000, size: 0x20000000, type: 0
 2276    KERN:   mtrr:  5: base: 0xc0000000, size: 0x40000000, type: 1
 2277    KERN: loaded driver /boot/system/add-
 ons/kernel/drivers/dev/net/pegasus
 2278    KERN: add_memory_type_range(5422, 0x90000, 0x70000, 0)
 2279    KERN: set MTRRs to:
 2280    KERN:   mtrr:  0: base:    0x90000, size:    0x10000, type: 0
 2281    KERN:   mtrr:  1: base:    0xa0000, size:    0x20000, type: 0
 2282    KERN:   mtrr:  2: base:    0xc0000, size:    0x40000, type: 0
 2283    KERN:   mtrr:  3: base: 0xd0000000, size: 0x10000000, type: 0
 2284    KERN:   mtrr:  4: base: 0xe0000000, size: 0x20000000, type: 0
 2285    KERN:   mtrr:  5: base: 0xc0000000, size: 0x40000000, type: 1
 2286    KERN: update_mtrrs(): Succeeded setting MTRRs after ignoring
 uncacheable ranges up to size 0x1000.
 2287    KERN: remove_memory_type_range(5422, 0x90000, 0x70000, 0)
 2288    KERN: set MTRRs to:
 2289    KERN:   mtrr:  0: base: 0xcf691000, size:     0x1000, type: 0
 2290    KERN:   mtrr:  1: base: 0xcf697000, size:     0x1000, type: 0
 2291    KERN:   mtrr:  2: base: 0xcf698000, size:     0x1000, type: 0
 2292    KERN:   mtrr:  3: base: 0xd0000000, size: 0x10000000, type: 0
 2293    KERN:   mtrr:  4: base: 0xe0000000, size: 0x20000000, type: 0
 2294    KERN:   mtrr:  5: base: 0xc0000000, size: 0x40000000, type: 1
 }}}

 There seem to be not enough MTRRs to set the complete memory caching map
 somewhere during video init, then the problem goes away as a range is
 unmapped.

 Is this a 64-bit machine? I think in 64-bit mode, a better system can be
 used for setting this, avoiding the limitation. If it isn't, maybe we'll
 have to fix our MTRR allocation code again.

--
Ticket URL: <http://dev.haiku-os.org/ticket/10404#comment:3>
Haiku <http://dev.haiku-os.org>
Haiku - the operating system.

Other related posts: