Commit Graph

111 Commits

Author SHA1 Message Date
Chris Wilson abc9b3f575 Add Skylake PCI IDs
From kernel commit 72bbf0af0c76cbefe9cecbd2ed670b7555e03625
Author: Damien Lespiau <damien.lespiau@intel.com>
Date:   Wed Feb 13 15:27:37 2013 +0000

    drm/i915/skl: Add the Skylake PCI ids

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2014-09-26 09:22:50 +01:00
Chris Wilson f36b7a4aac intel: Use NOACCEL to avoid a symbol clash on old Xorg
Old Xorg xf86str.h defines NONE preventing us from using it within an
enum. Use NOACCEL instead.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2014-08-05 16:38:42 +01:00
Chris Wilson 997a5d2802 configure: Expose no acceleration by default (--with-default-accel=none)
Why? I am not sure, but it seems equally as valid as allowing the switch
to uxa/glamor as default. The runtime equivalent is Option "AccelMethod".

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2014-07-27 07:15:19 +01:00
Chris Wilson dcf9ce4a9f Fix compile failure on old Xorg with XF86_ALLOCATE_GPU_SCREEN
Sigh, a late fix was not compile checked against xorg-1.7.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2014-07-23 15:44:21 +01:00
Chris Wilson d6830190bc sna: Disable all outputs when initializing as a slaved output provider
When we are constructed as a slaved device, we need to disable all
outputs or else they are not correctly hooked into the master device
upon startup.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2014-07-23 11:04:54 +01:00
Damien Lespiau e6e5330857 intel: Use the i845 info structure for INTEL_I845G_IDS()
I assume the intention was to provide a different structure for each of
the gen 2 devices.

This doesn't change anything really.

Signed-off-by: Damien Lespiau <damien.lespiau@intel.com>
2014-06-30 21:20:27 +01:00
Rodrigo Vivi 43ad5dbc60 Add marketing names for Broadwell
Even the unknown/reserved ones will stay with HD Graphics.

v2: Add missing names to intel.man and README files as well. (Chris)

Cc: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
2014-06-24 20:54:30 +01:00
Chris Wilson d14d7efb28 intel: Add a note about the myriad places we have identifier strings
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2014-06-24 16:33:43 +01:00
Chris Wilson b21fc65b23 intel: Update PCI IDs for Cherryview
Copied from kernel commit 7d87a7f709650bde4d7d63117f25ee1c095da5dd
Author: Ville Syrjälä <ville.syrjala@linux.intel.com>
Date:   Wed Apr 9 18:19:04 2014 +0300

    srm/i915/chv: Add Cherryview PCI IDs

and also includes non-functional changes from

commit fd3c269f8ff940cc0fbb3b7f7e84c0572f6f759a
Author: Zhao Yakui <yakui.zhao@intel.com>
Date:   Thu Apr 17 10:37:35 2014 +0800

    drm/i915: Split the BDW device definition to prepare for dual BSD rings on BDW GT3

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2014-05-16 10:02:16 +01:00
Chris Wilson 59f2f4885d intel: Fix versioning of SUPPORTS_SERVER_FD
The current snapshot is 1.15.99.901, which means that the new feature
will first be available in 1.15.99.902.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2014-03-11 10:01:04 +00:00
Hans de Goede 28cab948f5 intel: Add support for server managed fds
In the post-modern world, the platform device nodes are handed to a
non-privileged Xserver by systemd/logind. We can then query the core for
our assigned fd rather than try to open the device for ourselves (which
would fail when trying to obtain DRM_MASTER status). A consequence is
that we then do not directly control DRM_MASTER status and must act as a
delegate of systemd.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2014-03-10 22:19:25 +00:00
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