compat-drivers: separate NOSTDINC_FLAGS include dir lines

This will make it easier to review changes to this variable
later.

Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
compat-drivers: force using include/drm for header namespace

Turns out DRM drivers use this:

 #include "drmP.h"

Instead of:

 #include <drm/drmP.h>

Withtout this change we are using the older kernel's header
file and not the one we are cherry pickng over from the kernel
we want to help backport.

Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
compat-drivers: address usage of intel_enable_gtt() for i915

Kernels older than 3.6 don't have intel_enable_gtt() exported
and most Linux distributions have CONFIG_AGP_INTEL as built-in
(y) and as such we don't bother to make it available as
modular here. The change to export intel_enable_gtt() was
made through commit 8ecd1a66 but previous to this the driver
never called intel_enable_gtt() so we can safely assume we
can do the same for older kernels.

There should be a way to export an intel_enable_gtt() for
kernels with CONFIG_AGP_INTEL as built-in but that itself
is a project.

commit 8ecd1a6615f0d9de6759aafe229bc1cc4ee99c7b
Author: Daniel Vetter <daniel.vetter@ffwll.ch>
Date:   Thu Jun 7 15:56:03 2012 +0200

    drm/i915: call intel_enable_gtt

    When drm/i915 is in control of the gtt, we need to call
    the enable function at all the relevant places ourselves.

    Reviewed-by: Jani Nikula <jani.nikula@linux.intel.com>
    Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>

This now goes with i915 run time tested against 3.2.0-3-amd64
and code extrated from linux-next next-20120926.

Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
compat-drivers: backport usage of shmem_truncate_range() on i915

Backport e2377fe0b -- this could likely be implemented
on compat.git but I'd much prefer a better review of that.
For now this stays as a patch.

commit e2377fe0b65e3c7577ff6df1701c56ef477d336f
Author: Hugh Dickins <hughd@google.com>
Date:   Mon Jun 27 16:18:19 2011 -0700

    drm/i915: use shmem_truncate_range

    The interface to ->truncate_range is changing very slightly: once "tmpfs:
    take control of its truncate_range" has been applied, this can be applied.
     For now there is only a slight inefficiency while this remains unapplied,
    but it will soon become essential for managing shmem's use of swap.

    Change i915_gem_object_truncate() to use shmem_truncate_range() directly:
    which should also spare i915 later change if we switch from
    inode_operations->truncate_range to file_operations->fallocate.

    Signed-off-by: Hugh Dickins <hughd@google.com>
    Cc: Christoph Hellwig <hch@infradead.org>
    Cc: Chris Wilson <chris@chris-wilson.co.uk>
    Cc: Keith Packard <keithp@keithp.com>
    Cc: Dave Airlie <airlied@redhat.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
compat-drivers: enable DRM drivers compilation

Ozan Çağlayan had done most of the work to suck in all
the DRM drivers but left out the enablement of compiling
the drm drivers. The DRM drivers were also not load
tested. This patch enables to test compilation by
renaming the DRM Kconfig options with a _COMPAT prefix
and enables compilation by default for the i915 drm
driver which I can test against at run time on my
laptop running on v3.2.

Users and developer can help enable older kernels
down to 3.0 (as this was the oldest supported target
kernel for DRM drivers) or other DRM drivers as they
are run time tested.

The admin-update.sh script is modified to now always
run by including the DRM code and patching it accordingly.
If you happen to only want networking code you can do so
by supplying the network argument to the script as follows:

./scripts/adming-update.sh network

This will disable taking in DRM code.

It should be noted that although only the i915 drm driver
is being enabled all other drivers except the following have
been test compiled to work down to v3.0.

-obj-$(CONFIG_COMPAT_DRM_TDFX)  += tdfx/
-obj-$(CONFIG_COMPAT_DRM_R128)  += r128/
-obj-$(CONFIG_COMPAT_DRM_MGA)   += mga/
-obj-$(CONFIG_COMPAT_DRM_SIS)   += sis/
-obj-$(CONFIG_COMPAT_DRM_SAVAGE)+= savage/
-obj-$(CONFIG_COMPAT_DRM_EXYNOS) +=exynos/
-obj-$(CONFIG_COMPAT_DRM_UDL) += udl/

Apart from the above drivers we should be able to enable the
other drivers as reports come in for run time testing on them.
As it is right now only the i915 goes run time tested -- by me.

Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>