Граф коммитов

495730 Коммитов

Автор SHA1 Сообщение Дата
Ben Skeggs eccf7e8ad2 drm/nouveau/msvld: separate from bsp
Switch to NVIDIA's name for the device.

The namespace of NVKM is being changed to nvkm_ instead of nouveau_,
which will be used for the DRM part of the driver.  This is being
done in order to make it very clear as to what part of the driver a
given symbol belongs to, and as a minor step towards splitting the
DRM driver out to be able to stand on its own (for virt).

Because there's already a large amount of churn here anyway, this is
as good a time as any to also switch to NVIDIA's device and chipset
naming to ease collaboration with them.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:17:44 +10:00
Ben Skeggs 5ce3bf3c72 drm/nouveau/mmu: rename from vmmgr (no binary change)
Switch to NVIDIA's name for the device.

The namespace of NVKM is being changed to nvkm_ instead of nouveau_,
which will be used for the DRM part of the driver.  This is being
done in order to make it very clear as to what part of the driver a
given symbol belongs to, and as a minor step towards splitting the
DRM driver out to be able to stand on its own (for virt).

Because there's already a large amount of churn here anyway, this is
as good a time as any to also switch to NVIDIA's device and chipset
naming to ease collaboration with them.

A comparison of objdump disassemblies proves no code changes.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:17:43 +10:00
Ben Skeggs ebb58dc2ef drm/nouveau/pmu: rename from pwr (no binary change)
Switch to NVIDIA's name for the device.

The namespace of NVKM is being changed to nvkm_ instead of nouveau_,
which will be used for the DRM part of the driver.  This is being
done in order to make it very clear as to what part of the driver a
given symbol belongs to, and as a minor step towards splitting the
DRM driver out to be able to stand on its own (for virt).

Because there's already a large amount of churn here anyway, this is
as good a time as any to also switch to NVIDIA's device and chipset
naming to ease collaboration with them.

A comparison of objdump disassemblies proves no code changes.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:17:43 +10:00
Ben Skeggs f3867f439f drm/nouveau/clk: rename from clock (no binary change)
Rename to match the Linux subsystem responsible for the same kind of
things.  Will be investigating how feasible it will be to expose the
GPU clock trees with it at some point.

The namespace of NVKM is being changed to nvkm_ instead of nouveau_,
which will be used for the DRM part of the driver.  This is being
done in order to make it very clear as to what part of the driver a
given symbol belongs to, and as a minor step towards splitting the
DRM driver out to be able to stand on its own (for virt).

Because there's already a large amount of churn here anyway, this is
as good a time as any to also switch to NVIDIA's device and chipset
naming to ease collaboration with them.

A comparison of objdump disassemblies proves no code changes.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:17:42 +10:00
Ben Skeggs c39f472e9f drm/nouveau: remove symlinks, move core/ to nvkm/ (no code changes)
The symlinks were annoying some people, and they're not used anywhere
else in the kernel tree.  The include directory structure has been
changed so that symlinks aren't needed anymore.

NVKM has been moved from core/ to nvkm/ to make it more obvious as to
what the directory is for, and as some minor prep for when NVKM gets
split out into its own module (virt) at a later date.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:15:10 +10:00
Alexandre Courbot 055a65d598 drm/nouveau: merge nouveau_platform.ko into nouveau.ko
Having the two modules separated causes various unneeded complications,
including having to export symbols accessed between the modules. Make
things simpler by compiling platform device support into nouveau.ko.
Platform device support remains optional and is only compiled on Tegra.

Signed-off-by: Alexandre Courbot <acourbot@nvidia.com>
Reviewed-by: Vince Hsu <vinceh@nvidia.com>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:15:09 +10:00
Maarten Lankhorst 4dc63933ea drm/nouveau: dont switch vt on suspend
Restore the nv50 cursor bo on resume, and load the lut in
nv50_display_display_init so it gets set on resume too.

Tested on a fermi and a curie.

Signed-off-by: Maarten Lankhorst <maarten.lankhorst@ubuntu.com>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:15:08 +10:00
Rickard Strandqvist 4d8bb03bce drm/nouveau/dispnv04: Remove some unused functions
Removes some functions that are not used anywhere:
nv04_display_late_takedown() nv04_display_early_init()

This was partially found by using a static code analysis program
called cppcheck.

Signed-off-by: Rickard Strandqvist <rickard_strandqvist@spectrumdigital.se>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:15:07 +10:00
Rickard Strandqvist 1119eef0fd drm/nouveau/gem: Remove unused function
Remove the function domain_to_ttm() that is not used anywhere.

This was partially found by using a static code analysis program
called cppcheck.

Signed-off-by: Rickard Strandqvist <rickard_strandqvist@spectrumdigital.se>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:15:07 +10:00
Rickard Strandqvist 26b40d81d7 drm/nouveau/bo: Remove unused function
Remove the function nouveau_bo_rd16() that is not used anywhere.

This was partially found by using a static code analysis program
called cppcheck.

Signed-off-by: Rickard Strandqvist <rickard_strandqvist@spectrumdigital.se>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:15:06 +10:00
Vince Hsu 9f79b5ce12 drm/nouveau/clk: allow users to enable auto mode when loading driver
This patch adds one option for the boot config strings "NvClkMode*", so
that we can enable the "auto" mode when loading module.

Signed-off-by: Vince Hsu <vinceh@nvidia.com>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:15:05 +10:00
Vince Hsu 9f7fd620af drm/nouveau/pwr: add support for GK20A
This patch adds PWR support for GK20A. But instead of adding the PWR
features like firmware loading and communication with PMU firmware, we
add the DVFS (Dynamic Voltage and Frequency Scaling), which is one of
the PMU firmware's jobs on dGPUs, in this patch. This refers to the
idle signals provided by the NVIDIA hardware and tries to adjust the
performance level based on the calculated target. The reclocking policy
can be fine-tuned later when we have more real use cases.

Signed-off-by: Vince Hsu <vinceh@nvidia.com>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:15:04 +10:00
Vince Hsu 47e7df39d9 drm/nouveau/pwr: make nouveau_pwr_pgob() non-static
The platform device does not use the common nouveau_pwr_init() to initialize
the PWR, but it does need the .pgob() be assigned to avoid NULL pointer
dereference in graph/nve4.c.

Signed-off-by: Vince Hsu <vinceh@nvidia.com>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:15:03 +10:00
Vince Hsu f8a8546194 drm/nouveau/clk: allow non-blocking for nouveau_clock_astate()
There might be some callers of nouveau_clock_astate(), and they are from
inetrrupt context. So we must ensure that this function can be atomic in
that condition. This patch adds one parameter which is subsequently passed
to nouveau_pstate_calc(). Therefore we can choose whether we want to wait
for the pstate work's completion or not.

Signed-off-by: Vince Hsu <vinceh@nvidia.com>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:15:02 +10:00
Vince Hsu 9509ff759f drm/nouveau/mc: add missing braces
Several braces were misplaced unintentionally. That caused the msi handling
became part of the default case of the first switch statement. So add the
missing ones.

Signed-off-by: Vince Hsu <vinceh@nvidia.com>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:15:02 +10:00
Ben Skeggs 9ba8310647 drm/nv50-/kms: reject attempts at flipping to incompatible framebuffer
Looks like a userspace bug can trigger this somehow during a mode
switch, causing: EVO complaint -> semaphores get out of sync ->
entire display stalled.

We likely want to be even stricter than this (or at least deal
better if EVO rejects our request), but I'll save that for the
drm_plane/atomic conversion and just fix the bug that I already
know can be triggered.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:15:01 +10:00
Ben Skeggs 0ea5fe8a83 drm/nouveau/kms: default to panel scaling, except for fixed panels prior to nv50
On NV50 and up, we'll allow fixed panels to use EDID-provided modes
without the GPU scaler, and force scaling (even for NONE) otherwise.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:15:00 +10:00
Ben Skeggs 7d95216e1c drm/nouveau/kms: untangle connector property logic a little
Should be the same defaults as before, just easier to follow.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:14:59 +10:00
Ben Skeggs f0d15402a3 drm/nouveau/kms: avoid adding scaler-only modes the same as the panel's native mode
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:14:58 +10:00
Ben Skeggs 576f79116e drm/nv50-/kms: allow disabling of gpu scaling on fixed panels
The hilarious part is that, under X, this won't work anyway because the
server decides to construct its own modes for some reason.

Tested with modetest, which isn't quite as insane.  I'd hope that
wayland is more sensible.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:14:58 +10:00
Ben Skeggs a91d322120 drm/nv50-/kms: move identical scaler mode fixup code into a function
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:14:57 +10:00
Alexandre Courbot 495b21761a drm/nouveau: sgdma: add comment around suspiscious error handler
Common programming sense dictates that resources allocated by a function
are freed by this function should it fails, but this is not the case for
the allocated structure of nouveau_sgdma_create_ttm(). It seems that
n00b contributors attempt to fix this one like bugs flying towards a bug
zapper, so add a comment to hopefully prevent this from happening
anymore.

Signed-off-by: Alexandre Courbot <acourbot@nvidia.com>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:14:56 +10:00
Alexandre Courbot 2474ae2942 drm/nouveau: sgdma: remove unused nouveau_sgdma_be::dev
nouveau_sgdma_be::dev is only set once during init and never used
anywhere, so remove it.

Signed-off-by: Alexandre Courbot <acourbot@nvidia.com>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:14:55 +10:00
Ben Skeggs ec0e55420d drm/nouveau/core: object.engine is always a nouveau_engine now
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:14:54 +10:00
Ben Skeggs 8000fb2191 drm/nouveau/core: can now assume client/device object tree based on object.engine
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:14:54 +10:00
Ben Skeggs bdda4703f1 drm/nouveau/disp: outp/conns do not have an engine
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:14:53 +10:00
Ben Skeggs c272d86e70 drm/nouveau/bar: barobjs may not have an engine
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:14:52 +10:00
Ben Skeggs 9d18cdbb09 drm/nouveau/fb: ram impl does not have an engine
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:14:51 +10:00
Ben Skeggs 8c237fdf11 drm/nouveau/i2c: pad/ports do not have an engine
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:14:50 +10:00
Ben Skeggs 3532c37017 drm/nouveau/instmem: instobjs may not have an engine
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:14:49 +10:00
Ben Skeggs 490d595f32 drm/nouveau/core: fix subdev/engine/device lookup to not require engine pointer
It's about to not be valid for objects that aren't in the client
object tree.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:14:48 +10:00
Ben Skeggs a38f37a7e0 drm/nouveau/core: uninline subdev/engine/device lookup functions
These are a tad more complex than a direct cast with paranoia safeties.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:14:48 +10:00
Ben Skeggs 0527a04fe8 drm/nouveau/core: prepare printk for NULL engine pointer on device object tree
The [  SUBDEV] specified in log output will be a bit different for
children of a subdev now.  Previously this reports whatever subdev
is specified by object.engine, now it reports the subdev that owns
the object (so, up object.parent somewhere).

Later patches will append object and class identifiers to messages,
which will help clarify where it's coming from.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:14:47 +10:00
Ben Skeggs e138c7d8fc drm/nouveau/core: drop the pointer value in debug printk output
Makes the output slightly less useful, in that objects with the same
class handle can't be distinguished from each other now.

Upcoming commits will name objects with user-readable strings to fix
this problem.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:14:46 +10:00
Ben Skeggs 95fb6dd728 drm/nouveau/i2c: fix some blatant abuse
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:14:45 +10:00
Ben Skeggs 8d90d1ef88 drm/gf100-/bar: don't fill in bar->alloc until after all vm setup done
gpuobj has a condition of (bar && bar->alloc) around usage to avoid
some nasty ordering issues (which, i've now been reminded to add a
todo about fixing...) between bar and vm.

The bar->alloc part of the condition isn't currently necessary (it
used to be, another change made bar always NULL where it matters),
so we got lucky.  That won't be the case for much longer.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:14:44 +10:00
Ben Skeggs 6f5cee5b57 drm/nouveau/core: rename parent to handle, use parent for nouveau_parent
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:14:44 +10:00
Ben Skeggs 587f7a5b7c drm/nouveau/core: rename subclass.base to subclass.superclass
Makes things a bit more readable.  This is specially important now as
upcoming commits are going to be gradually removing the use of macros
for down-casts, in favour of compile-time checking.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:14:43 +10:00
Ben Skeggs 2f4a58e852 drm/nouveau/subdev: always upcast through nouveau_subdev()/nouveau_engine()
Has additional safeties for one.  For two, needed for an upcoming
commit that removes abuse of nouveau_object.engine.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:14:42 +10:00
Ben Skeggs 4534a2af58 drm/nouveau/fb: remove some (now) unnecessary hacks
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
2015-01-22 12:14:42 +10:00
Dave Airlie 281d1bbd34 Merge remote-tracking branch 'origin/master' into drm-next
Backmerge Linus tree after rc5 + drm-fixes went in.

There were a few amdkfd conflicts I wanted to avoid,
and Ben requested this for nouveau also.

Conflicts:
	drivers/gpu/drm/amd/amdkfd/Makefile
	drivers/gpu/drm/amd/amdkfd/kfd_chardev.c
	drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager.c
	drivers/gpu/drm/amd/amdkfd/kfd_priv.h
	drivers/gpu/drm/amd/include/kgd_kfd_interface.h
	drivers/gpu/drm/i915/intel_runtime_pm.c
	drivers/gpu/drm/radeon/radeon_kfd.c
2015-01-22 10:44:41 +10:00
Dave Airlie bfa55bd499 Merge branch 'drm-sti-next-add-dvo' of git://git.linaro.org/people/benjamin.gaignard/kernel into drm-next
This patch enable the last big hardware feature of my driver: the
connector for panel.
Like for HMDI and HDA, Digital Video Out (DVO) create brige, encoder
and connector
drm objects.

* 'drm-sti-next-add-dvo' of git://git.linaro.org/people/benjamin.gaignard/kernel:
  drm: sti: add DVO output connector
2015-01-22 09:59:25 +10:00
Dave Airlie c0d2792b2a Merge tag 'atmel-hlcdc-drm-3.20' of https://github.com/bbrezillon/linux-at91 into drm-next
Add atmel HLCDC driver.

* tag 'atmel-hlcdc-drm-3.20' of https://github.com/bbrezillon/linux-at91:
  drm: add DT bindings documentation for atmel-hlcdc-dc driver
  drm: add Atmel HLCDC Display Controller support
  drm: panel: simple-panel: add bus format information for foxlink panel
  drm: panel: simple-panel: add support for bus_format retrieval
  drm: add bus_formats and num_bus_formats fields to drm_display_info
2015-01-22 09:48:02 +10:00
Dave Airlie ca1130de2a Merge tag 'drm-amdkfd-next-2015-01-21' of git://people.freedesktop.org/~gabbayo/linux into drm-next
- Infrastructure work in amdkfd to prepare for VI support. This work mainly
  includes separating modules into ASIC-specific functionality, adding
  new properties that are relevant for VI, making sure that shared code is
  reused, etc.

- Improve mechanism of submitting packets to HIQ (the kernel queue that amdkfd
  uses to issue commands to the GPU). The driver used to verify that each CS
  was read by the GPU. However, this proved to be both unnecessary and erroneous.
  Therefore, we cancelled this verification.

- Moved initialization of compute VMIDs into radeon driver

- Various minor fixes

* tag 'drm-amdkfd-next-2015-01-21' of git://people.freedesktop.org/~gabbayo/linux: (22 commits)
  drm/amdkfd: Fix description of sched_policy module parameter
  drm/amdkfd: Remove sync_with_hw() from amdkfd
  drm/amdkfd: Remove unused function busy_wait()
  drm/amdkfd: Replace cpu_relax() with schedule() in DQM
  drm/amdkfd: Fix for-loop when allocating HQD (non-HWS)
  drm/amdkfd: Add initial VI support for KQ
  drm/amdkfd: Encapsulate KQ functions in ops structure
  drm/amdkfd: Add initial VI support for DQM
  drm/amdkfd: Encapsulate DQM functions in ops structure
  drm/amdkfd: Don't BUG on freeing GART sub-allocation
  drm/amdkfd: Fix logic of destroy_queue_nocpsch()
  MAINTAINERS: Update amdkfd files
  drm/amdkfd: Change MQD manager to be H/W specific
  drm/amdkfd: Add asic property to kfd_device_info
  drm/amdkfd: Make KFD_MQD_TYPE enum types H/W agnostic
  drm/amdkfd: Add new VI-specific queue properties
  drm/radeon: Use new cik_structs.h file
  drm/amdkfd: Don't include header files from radeon
  drm/amd: Put cik structures in a common place
  drm/radeon: Don't use relative paths in #include
  ...
2015-01-22 09:44:46 +10:00
Linus Torvalds b942c653ae It's been reported that function tracing does not work on the sh architecture
because gcc 4.8 for superH does not support -m32, and the recordmcount.pl
 script adds "-m32" when re-compiling the object files with the mcount
 locations.
 
 I was not able to reproduce this problem, as it seems that -m32 works fine
 for my cross compiler gcc 4.6.3, but I have to assume that -m32 was
 deprecated somewhere between 4.6 and 4.8. As it still seems to compile
 fine without -m32, I have no reason not to add this patch, as having
 -m32 seems to cause trouble for others.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABAgAGBQJUv9sOAAoJEEjnJuOKh9ldPUIIAJle6R3v+53gylalVhOnn56f
 fQkONz1HvLteneBGTFG4xiwK6BJNeTOcLOQbCfBwNBZUjg7QG5eEU3wBG6DCZNIf
 Tc1DqB78Fx9HnI0wJby/VtgIMbTqvPsXta0J75g7EFXwaP8bUZFL1s6QmskKlFTf
 Gvhr93YP2SFawRf8Gy9AVCkLBSwU1T5y0IsQXPw49buNT+aWwoMWCNJb03rLfZYz
 MCNgTfQxf4aYK1EThvb8xurjD2rZkJmRc/LN37vj8M+2e9HoIitCd4O/doxEQtvK
 aFw7q/K23bFIXfjKoF1Yjk8hLoQZgCxruZwmZyxEEPtTGsUfNcSyfgpHTNeNDrk=
 =d6qd
 -----END PGP SIGNATURE-----

Merge tag 'trace-sh-3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace

Pull superh tracing fix from Steven Rostedt:
 "It's been reported that function tracing does not work on the sh
  architecture because gcc 4.8 for superH does not support -m32, and the
  recordmcount.pl script adds "-m32" when re-compiling the object files
  with the mcount locations.

  I was not able to reproduce this problem, as it seems that -m32 works
  fine for my cross compiler gcc 4.6.3, but I have to assume that -m32
  was deprecated somewhere between 4.6 and 4.8.  As it still seems to
  compile fine without -m32, I have no reason not to add this patch, as
  having -m32 seems to cause trouble for others"

* tag 'trace-sh-3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
  scripts/recordmcount.pl: There is no -m32 gcc option on Super-H anymore
2015-01-22 06:26:07 +12:00
Boris Brezillon 5b7e944ec8 drm: add DT bindings documentation for atmel-hlcdc-dc driver
The Atmel HLCDC (HLCD Controller) IP available on some Atmel SoCs (i.e.
at91sam9n12, at91sam9x5 family or sama5d3 family) provides a display
controller device.

The HLCDC block provides a single RGB output port, and only supports LCD
panels connection to LCD panels for now.

The atmel,panel property link the HLCDC RGB output with the LCD panel
connected on this port (note that the HLCDC RGB connector implementation
makes use of the DRM panel framework).

Connection to other external devices (DRM bridges) might be added later by
mean of a new atmel,xxx (atmel,bridge) property.

Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com>
Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-01-21 09:46:02 +01:00
Boris Brezillon 1a396789f6 drm: add Atmel HLCDC Display Controller support
The Atmel HLCDC (HLCD Controller) IP available on some Atmel SoCs (i.e.
at91sam9n12, at91sam9x5 family or sama5d3 family) provides a display
controller device.

This display controller supports at least one primary plane and might
provide several overlays and an hardware cursor depending on the IP
version.

At the moment, this driver only implements an RGB connector to interface
with LCD panels, but support for other kind of external devices might be
added later.

Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com>
Reviewed-by: Rob Clark <robdclark@gmail.com>
Tested-by: Anthony Harivel <anthony.harivel@emtrion.de>
Tested-by: Ludovic Desroches <ludovic.desroches@atmel.com>
Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>
2015-01-21 09:46:02 +01:00
Boris Brezillon bb276cb3a3 drm: panel: simple-panel: add bus format information for foxlink panel
Foxlink's fl500wvr00-a0t supports RGB888 format.

Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com>
Acked-by: Thierry Reding <treding@nvidia.com>
2015-01-21 09:45:56 +01:00
Boris Brezillon 795f7ab3a4 drm: panel: simple-panel: add support for bus_format retrieval
Provide a way to specify panel requirement in terms of supported media bus
format (particularly useful for panels connected to an RGB or LVDS bus).

Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com>
Acked-by: Thierry Reding <treding@nvidia.com>
2015-01-21 09:45:45 +01:00
Boris Brezillon b5571e9df6 drm: add bus_formats and num_bus_formats fields to drm_display_info
Add bus_formats and num_bus_formats fields and
drm_display_info_set_bus_formats helper function to specify the bus
formats supported by a given display.

This information can be used by display controller drivers to configure
the output interface appropriately (i.e. RGB565, RGB666 or RGB888 on raw
RGB or LVDS busses).

Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Philipp Zabel <p.zabel@pengutronix.de>
Acked-by: Thierry Reding <treding@nvidia.com>
2015-01-21 09:45:34 +01:00