15 Nov, 2011
10 commits
-
this patch addes exynos_drm_gem_init() creating and initialzing a gem.
allocation functions could use this function to create new gem and
it changes size type of exynos_drm_gem_create structure to 64bit
and also corrects comments to exynos_drm_gem_create structure.Signed-off-by: Inki Dae
Signed-off-by: Kyungmin Park -
Signed-off-by: Seung-Woo Kim
Signed-off-by: Inki Dae
Signed-off-by: Kyungmin Park -
crtc dpms is called as destroying attached fb so dpms off sould be processed.
crtc dpms also can be called after crtc is detached from encoder so pipe value
of manager is used to find display controller for this caseSigned-off-by: Joonyoung Shim
Signed-off-by: Seung-Woo Kim
Signed-off-by: Inki Dae
Signed-off-by: Kyungmin Park -
drm_framebuffer already has width and height so they are meaningless as
parameters when updating fb_info.Signed-off-by: Seung-Woo Kim
Signed-off-by: Inki Dae
Signed-off-by: Kyungmin Park -
during recreating exynos_drm_fbdev as a new display device probes,
fb_helper is reinitialized but kernel fb is not changed
so kernel_fb_list should be restored after fb_helper is reinitialized.Signed-off-by: Joonyoung Shim
Signed-off-by: Inki Dae
Signed-off-by: Kyungmin Park -
exynos_drm_display has function pointes so exynos_drm_display_ops is better
to describe.Signed-off-by: Inki Dae
Signed-off-by: Kyungmin Park -
connector contains some contents for display controller so the connector also
should be able to access controller through manager.Signed-off-by: Inki Dae
Signed-off-by: Seung-Woo Kim
Signed-off-by: Kyungmin Park -
missing members are added into converting function between timing and display
mode and refresh rate of display mode is calculated by drm mode function.Signed-off-by: Seung-Woo Kim
Signed-off-by: Inki Dae
Signed-off-by: Kyungmin Park -
hdmi display in exynos supports hotplug event and interlace scan mode
Signed-off-by: Seung-Woo Kim
Signed-off-by: Inki Dae
Signed-off-by: Kyungmin Park -
this patch adds kms poll infrastructure to handle hotplug detection event
Signed-off-by: Seung-Woo Kim
Signed-off-by: Inki Dae
Signed-off-by: Kyungmin Park
14 Nov, 2011
1 commit
-
commit 27641c3f (drm/vblank: Add support for precise vblank
timestamping) adds preempt_disable()/enable() around a spin locked
section with the comments:* Disable preemption, so vblank_time_lock is held as short as
* possible, even under a kernel with PREEMPT_RT patches./* Disable preemption while holding vblank_time_lock. Do
* it explicitely to guard against PREEMPT_RT kernel.Just that this has never been tested on a RT kernel which would have
granted that nonsense with a might_sleep() warning because
dev->vblank_time_lock is converted to a "sleeping" spinlock on RT.So this is activly wrong on RT and superflous on mainline. Remove it.
Signed-off-by: Thomas Gleixner
Acked-by: Mario Kleiner
Signed-off-by: Dave Airlie
13 Nov, 2011
1 commit
-
I missed the combios path when I updated the atombios pm code.
Reported by amarsh04 on IRC.
Signed-off-by: Alex Deucher
Signed-off-by: Dave Airlie
11 Nov, 2011
21 commits
-
On newer chips the number of clock modes per power state varies.
Signed-off-by: Alex Deucher
Signed-off-by: Dave Airlie -
Avoid a lot of extra loops through the pm state array.
Signed-off-by: Alex Deucher
Signed-off-by: Dave Airlie -
The new power tables need to be handled differently when setting
up the profiles.Signed-off-by: Alex Deucher
Signed-off-by: Dave Airlie -
It's already called via the DPMS functions.
Signed-off-by: Alex Deucher
Signed-off-by: Dave Airlie -
Signed-off-by: Inki Dae
Signed-off-by: Kyungmin Park
Signed-off-by: Dave Airlie -
Fix kconfig unmet dependency warning. BACKLIGHT_CLASS_DEVICE depends on
BACKLIGHT_LCD_SUPPORT, so select the latter along with the former.warning: (DRM_RADEON_KMS && DRM_I915 && STUB_POULSBO && FB_BACKLIGHT && PANEL_SHARP_LS037V7DW01 && PANEL_ACX565AKM && USB_APPLEDISPLAY && FB_OLPC_DCON && ASUS_LAPTOP && SONY_LAPTOP && THINKPAD_ACPI && EEEPC_LAPTOP && ACPI_ASUS && ACPI_CMPC && SAMSUNG_Q10) selects BACKLIGHT_CLASS_DEVICE which has unmet direct dependencies (HAS_IOMEM && BACKLIGHT_LCD_SUPPORT)
Signed-off-by: Randy Dunlap
Cc: David Airlie
Signed-off-by: Andrew Morton
Signed-off-by: Dave Airlie -
* 'drm-nouveau-fixes' of git://git.freedesktop.org/git/nouveau/linux-2.6:
drm/nouveau: Fix bandwidth calculation for DisplayPort
drm/nouveau: by default use low bpp framebuffer on low memory cards
drm/nv10: Change the BO size threshold determining the memory placement range.
drm/nvc0: enable acceleration for nvc1 by default
drm/nvc0/gr: fixup the mmio list register writes for 0xc1
drm/nvc1: hacky workaround to fix accel issues
drm/nvc0/gr: fix some bugs in grctx generation
drm/nvc0: enable acceleration on 0xc8 by default
drm/nvc0/vram: skip disabled PBFB subunits
drm/nv40/pm: fix issues on igp chipsets, which don't have memory
drm/nouveau: testing the wrong variable
drm/nvc0/vram: storage type 0xc3 is not compressed
drm/nv50: fix stability issue on NV86.
drm/nouveau: initialize chan->fence.lock before use
drm/nv50/vram: fix incorrect detection of bank count on newer chipsets
drm/nv50/gr: typo fix, how about we not reset fifo during graph init?
drm/nv50/bios: fixup mpll programming from the init table parser
drm/nouveau: fix oops if i2c bus not found in nouveau_i2c_identify()
drm: make sure drm_vblank_init() has been called before touching vbl_lock -
during the review of the fix for locks problems in drm_wait_vblank,
a couple of false concerns were raised about how the drm_vblank_get
and drm_vblank_put are used in this function; it turned out that the
code is correct and that it cannot be simplifiedadd a few comments to explain non-obvious flows in the code,
to prevent "false alarms" in the futurev2: incorporate comments received from Daniel Vetter
Signed-off-by: Ilija Hadzic
Reviewed-by: Daniel Vetter
Signed-off-by: Dave Airlie -
radeon_benchmark_do_move() returns an int so "time" should be int
too. Making it unsigned breaks the error handling.Signed-off-by: Dan Carpenter
Signed-off-by: Dave Airlie -
drm_wait_vblank must be DRM_UNLOCKED because otherwise it
will grab the drm_global_mutex and then go to sleep until the vblank
event it is waiting for. That can wreck havoc in the windowing system
because if one process issues this ioctl, it will block all other
processes for the duration of all vblanks between the current and the
one it is waiting for. In some cases it can block the entire windowing
system.v2: incorporate comments received from Daniel Vetter and
Michel Daenzer.v3/v4: after a lengty discussion with Daniel Vetter, it was concluded
that the only thing not yet protected with locks and atomic
ops is the write to dev->last_vblank_wait. It's only used in a
debug file in proc, and the current code already employs no
correct locking: the proc file only takes dev->struct_mutex,
whereas drm_wait_vblank implicitly took the drm_global_mutex.
Given all this, it's not worth bothering to try to fix
the locks at this time.Signed-off-by: Ilija Hadzic
Reviewed-by: Daniel Vetter
Signed-off-by: Dave Airlie -
As Exynos DRM is merged at mainline. Also update the maintainer entry.
Signed-off-by: Kyungmin Park
Signed-off-by: Dave Airlie -
We restore the CRTC, encoder, and connector configurations, but if the
mode set failed, the attached display may have been turned off, so we
need to try set_config again to restore things to the way they were.Signed-off-by: Jesse Barnes
Reviewed-by: Alex Deucher
Signed-off-by: Dave Airlie -
Can happen when there is no DP panel attached, confusing
users. Make it debug only.Signed-off-by: Alex Deucher
Cc: stable@kernel.org
Signed-off-by: Dave Airlie -
slow-work got killed in commit 181a51f6e0. This means that since v2.6.36
there is no Kconfig symbol SLOW_WORK. Apparently selecting that symbol
is a nop. Drop that select.Signed-off-by: Paul Bolle
Signed-off-by: Dave Airlie -
Nouveau, when configured with debugfs, creates debugfs files for every
channel, so structure holding list of files needs to be protected from
simultaneous changes by multiple threads.Without this patch it's possible to hit kernel oops in
drm_debugfs_remove_files just by running a couple of xterms with
looped glxinfo.Signed-off-by: Marcin Slusarz
Reviewed-by: Daniel Vetter
Signed-off-by: Dave Airlie -
This hunk seems to have gotten lost when I rebased the patch.
Reported-by: Sylvain Bertrand
Signed-off-by: Alex Deucher
Signed-off-by: Dave Airlie -
This was only the case if the GPU reset was triggered from the CS ioctl,
otherwise other processes could happily enter the CS ioctl and wreak havoc
during the GPU reset.This is a little complicated because the GPU reset can be triggered from the
CS ioctl, in which case we're already holding the mutex, or from other call
paths, in which case we need to lock the mutex. AFAICT the mutex API doesn't
allow recursive locking or finding out the mutex owner, so we need to handle
this with helper functions which allow recursive locking from the same
process.Signed-off-by: Michel Dänzer
Reviewed-by: Jerome Glisse
Signed-off-by: Dave Airlie -
Fixes Coverity buffer not null terminated defect.
Signed-off-by: Vinson Lee
Signed-off-by: Dave Airlie -
Snooping code expects this to be the case.
Signed-off-by: Jakob Bornecrantz
Reviewed-by: Thomas Hellstrom
Signed-off-by: Dave Airlie -
Signed-off-by: Jakob Bornecrantz
Reviewed-by: Thomas Hellstrom
Signed-off-by: Dave Airlie -
Signed-off-by: Jakob Bornecrantz
Reviewed-by: Thomas Hellstrom
Signed-off-by: Dave Airlie
10 Nov, 2011
7 commits
-
Ported from the equivalent fix in drm-intel-next:
http://cgit.freedesktop.org/~keithp/linux/commit/?h=drm-intel-next&id=cd9dde44f47501394b9f0715b6a36a92aa74c0d0
Signed-off-by: Adam Jackson
Signed-off-by: Ben Skeggs -
Framebuffer's BPP is not that important but can waste significant part
of memory on low-VRAM cards. Lower it to 8bpp on < 32MB cards and to
16bpp on 64MB cards. It can still be overridden by video= option.Signed-off-by: Marcin Slusarz
Signed-off-by: Ben Skeggs -
Fixes the framebuffer memory allocation failure seen on some
low-memory cards, followed by X refusing to start.https://bugs.freedesktop.org/show_bug.cgi?id=42384
Reported-by: Chris Paulson-Ellis
Signed-off-by: Francisco Jerez
Signed-off-by: Ben Skeggs -
Signed-off-by: Ben Skeggs
-
Signed-off-by: Ben Skeggs
-
Signed-off-by: Ben Skeggs
-
Most serious is for chips with only 1 TPC, we'd get stuck in an infinite
loop. The fix here will slightly change the setup for all other chipsets
too, but, it shouldn't matter too much, and this all needs figuring out
and likely redone anyway.Signed-off-by: Ben Skeggs