Commit Graph

100 Commits

Author SHA1 Message Date
Chris Wilson 9f3fc9ec49 Allow selection of glamor as the default acceleration method
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=74162
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2014-01-28 21:56:23 +00:00
Chris Wilson 7e76f21a4d intel: Recognise gen8
Assign gen=8 to the Broadwell PCI IDs, no marketing names are known at
this point in time.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-12-11 21:39:40 +00:00
Chris Wilson 255025d8d3 intel: Tidy up driver identification string
Split the identification strings between the older integrated graphic
chipsets and the more recent integrated processor graphics. This helps
to emphasis the recent branding and should reduce confusion about which
processors are supported by the driver.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-12-04 11:56:44 +00:00
Chris Wilson 04d2cad65d Add identification strings for new Atoms
All of the new Atom (Baytrail) products ship with "HD Graphics".

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-11-12 14:43:56 +00:00
Chris Wilson a0476ee6d0 intel: Allow opening the device only through platform information
Only fail to open the device based on the PCI address, if and only if we
do not have sufficient platform information to find the correct system
device.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-10-03 16:15:22 +01:00
Chris Wilson a47f8683fe intel: Handle fallback probing without match_data
One extreme fallback path through the xf86PlatformProbe results in a
call without any match data. As we have a device by this point, we can
simply do a reverse match.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-10-03 16:15:22 +01:00
Chris Wilson 6c157a925f intel: Remove dependence upon having PciInfo
After some probing mechanisms, we may end up with a valid device without
knowing its PCI address a priori. Having a valid device, we can just
query it for the correct device id, and can safely abort any path that
requires PCI information that we don't have. (Those paths are not valid
under such hosting anyway - if it may be required, we could reconstruct
the address.)

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-10-03 16:13:38 +01:00
Chris Wilson 4685e79d11 intel: And restore PlatformProbe to working order
In the saga of the untested WIP patches for hosted device probing, was
the failure in logic to detect a valid device during probing. Yikes.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-10-03 14:42:45 +01:00
Chris Wilson 7978592048 intel: Pass the platform device along to the open routines
This allows us to pass along more metadata along with the platform
device in future. Currently we pass the device path, but in a hosted
environment we should be passing along the authorized fd from the host.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-10-02 18:24:47 +01:00
Chris Wilson dcf9b5ae18 intel: Compile fixes for base install of SLED11.sp3
Highlights of that distribution include xorg-xserver-1.6.5, kernel
3.0.76 and gcc-4.3.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-09-18 12:49:41 +01:00
Chris Wilson 6f49a413aa configure: Check for required UMS headers before enabling
Prevents the build failing with i810 if we can not find vgaHW.h

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-09-04 15:18:28 +01:00
Chris Wilson 8da8c88e99 intel: Check for HW_SKIP_CONSOLE before use
For the older xserver.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-12 13:12:21 +01:00
Chris Wilson b6b5c3f009 intel: Disable incompatible features whilst hosted
Start adding the infrastructure to disable direct hardware access if X
is being run under a system compositor (aka "hosted").

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-08-09 11:46:24 +01:00
Chris Wilson 208282d316 Suppress a bunch of compiler warnings for using constant strings
We want these allocated in ro memory even if the antique API complains.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-07-30 13:26:14 +01:00
Chris Wilson a12c352b56 intel: Remove some unused macros
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-07-28 14:49:07 +01:00
Chris Wilson 45d4e8dcf9 uxa: Clear up the common intel directory
Move all the UXA backend specifc files into their own subdirectory.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-07-28 14:49:07 +01:00
Chris Wilson ab28526ea4 intel: Only print the unique chipset names
When printing out the list of supported chipsets, remove the (many
times) repeated names as they are very confusing and obscure the product
name you may be searching for.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-07-28 14:49:06 +01:00
Chris Wilson 6fd37e644d intel: Replace the codename in the user facing string for unknown Haswell parts
For these parts we do not yet known the correct marketing name, so
replace our use of the codename with the generic term.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-07-28 14:49:06 +01:00
Chris Wilson 7567c99ee9 intel: Set the correct marketing names for Ironlake, Sandybridge and Ivybridge
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-07-28 14:49:06 +01:00
Chris Wilson 17873be335 intel: Remove the SDV from the list of identified chipsets
These devices are not for retail and so have no marketing names.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-07-28 14:49:06 +01:00
Chris Wilson 4c6871684b intel: Cross-check an unnamed chipset against the list of known PCI-IDs
If we recognise the PCI-ID but do not have a marketing name for it, it
means we are deliberating ignoring it - presumably because it is an
engineering sample. In this case, we do not want to print out a warning
into the logfile so replace the "Unknown chipset" with some info
about the future product.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-07-28 14:49:06 +01:00
Chris Wilson b6bcb7ae20 intel: Source our PCI IDs table from the copy in the kernel
Rather than duplicating the information we already use in the kernel, we
can reuse the pci-id tables so long as we apply a little fuzz.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-07-28 14:49:06 +01:00
Chris Wilson 282507af8e intel: Move the validation of the KMS device into the open routine
Currently we leak the fd should we open the device node and decide that
is not a GEM/KMS kernel driver. The simplest way to perform the cleanup
upon failure is to move the checking for GEM/KMS into the device open
routine.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-07-02 09:38:07 +01:00
Chris Wilson 9eabe28a40 Tidy version query for i915.ko
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-06-23 07:33:56 +01:00
Chris Wilson 7ec0378b64 sna: Only open the /dev/dri/cardX device once
Merge the device open in the main driver with the probing so that we can
open the path explicitly passed in by the PlatformProbe and keep that fd
around for the main driver and so avoid a later search.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-06-23 07:33:56 +01:00
Rodrigo Vivi 45c09bfe58 Add more correct names for Haswell.
As we find out more of the final product names for Haswell chipsets, we
need to update the user visible identification strings.

Signed-off-by: Rodrigo Vivi <rodrigo.vivi@gmail.com>
2013-06-05 23:34:28 +01:00
Chris Wilson b507796679 Add the known marketing names for the performance Haswell parts
Start filling in the names for the parts that have been announced, the
Iris branded Haswell GT3 parts.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-05-28 23:16:31 +01:00
Rodrigo Vivi 3ee42de066 Adding more reserved PCI IDs for Haswell.
As Chris mentioned there is a tendency for us to find out more
PCI IDs only when users report. So let's add all new reserved Haswell IDs.
I didn't have better names for this reserved ids and didn't want to use rsvd1
and rsvd2 groups, so I decided to use "B" and "E" that stands for the last
id digit.

Cc: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@gmail.com>
2013-05-14 09:34:58 +01:00
Rodrigo Vivi ee96de8b1e Fix Haswell GT3 names.
When publishing first HSW ids we weren't allowed to use "GT3" codname.
But this is the correct codname and Mesa is using it already.
So to avoid people getting confused why in Mesa it is called GT3 and here
it is called GT2_PLUS let's fix this name in a standard and correct way.

Signed-off-by: Rodrigo Vivi <rodrigo.vivi@gmail.com>
2013-05-14 09:34:42 +01:00
Chris Wilson ab576a4265 Add all reserved PCI-IDs for Haswell
There is a tendency for a product to ship based on a 'reserved' PCI-ID
prior to us being notified about it. In other words, the first we find
out about such a product is when customers start complaining about their
shiny new hardware not being supported...

References: https://bugs.freedesktop.org/show_bug.cgi?id=63701
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-04-27 12:09:07 +01:00
Chris Wilson b84db39edb intel: Relax the has-kms test slightly
Do not rely on a fully populated set of CRTCs, but merely note that the
GETRESOURCES ioctl returns an error if KMS is not enabled.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-03-07 09:07:19 +00:00
Chris Wilson 43ba22ef4a Confirm that i915.ko has KMS enabled before binding to the device
If the kernel has the module, but the KMS module option is not enabled,
we cannot function. So after checking to see if the i915.ko is bound,
then querying whether it provides any KMS resources. If it has no CRTCs
attached, then we need to failover to the VESA/fbdev drivers. Note that
this should have been detected by drmCheckModesettingSupported()

References: https://bugs.freedesktop.org/show_bug.cgi?id=60987
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-02-17 09:32:59 +00:00
Chris Wilson 5c8084ef04 intel: Becareful not to match UMS against future generations
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-02-06 17:23:51 +00:00
Chris Wilson 9c80a0337e sna: ValleyView uses the same scanline registers as SandyBridge
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-02-05 14:56:10 +00:00
Chris Wilson 4c45e3fe45 intel: add more ValleyView PCI IDs
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2013-02-05 14:45:39 +00:00
Chris Wilson deb908fda7 intel: ODEV_ATTRIB_PATH is no longer printed, so kill the temporary variable
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-12-20 19:22:32 +00:00
Chris Wilson 1d2fa5731b Remove the default log message
Breaks compilation with xorg-1.13

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-12-06 22:15:09 +00:00
Chris Wilson 7f4d4afa62 Fix compilation of UMS probe following 13f47008ec
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-12-06 17:08:15 +00:00
Chris Wilson 13f47008ec Refactor the common probe methods for scrn construction
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-12-06 14:56:10 +00:00
Chris Wilson 5d6dd9c5a7 Convert generation counter to octal
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-30 12:12:49 +00:00
Chris Wilson 0cb8544dc1 Remove useless indirection of intel_chipsets
Once upon a time this was used to hide a compiler warning about a
pointer mismatch, now the compiler still warns about the cast, making
the indirect moot.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-11-18 12:50:44 +00:00
Chris Wilson 9fa6e4aa2d intel: Sanity check that the platform probes points to a i915.ko GEM device
References: https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-video-intel/+bug/1069031
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-10-21 12:48:06 +01:00
Chris Wilson a858afc66c Silence a couple of potential compiler warnings
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-23 13:49:40 +01:00
Chris Wilson 9326acc291 Allow compilation of a separate i810 driver
Allow --enable-ums-only as a counter-option to --enable-kms-only in case
the distribution wishes to enable a non-root KMS driver but also offer
a separate UMS driver for i81x.

On the second pass, use "--enable-ums-only --disable-uxa --disable-sna"
to get the trimmed down unaccelerated i810 support.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-23 13:41:55 +01:00
Chris Wilson fe78904a45 Add basic support for ValleyView
Bind to the ValleyView SDV for verifying the render routines.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-14 21:51:36 +01:00
Chris Wilson 15911f533d prime: Reorder probe messages so that the driver prefix is correct
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-11 14:59:53 +01:00
Chris Wilson 448808d8a4 prime: Allocate a GPU_SCREEN when not primary to fulfil the output sink role
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-07 14:37:38 +01:00
Chris Wilson 1f5d5a37e5 Add PlatformProbe to handle sharing of device entities
Reported-by: Nick Bowler <nbowler@draconx.ca>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=54561
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-05 17:17:58 +01:00
Chris Wilson ddde40afc0 sna: Harden against initialisation failures
References: https://bugs.freedesktop.org/show_bug.cgi?id=54561
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-09-05 16:48:44 +01:00
Dave Airlie 0768ac4d19 intel: add platform probing support.
This allows the driver to be loaded by the platform loading code.

Signed-off-by: Dave Airlie <airlied@redhat.com>
2012-09-03 12:25:07 +10:00