summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2015-02-04Merge branches '3.20/fbdev' and '3.20/omapdss' into for-nextTomi Valkeinen
Merge fbdev topic branches
2015-02-04omapfb: Return error code when applying overlay settings failsPeter Meerwald
the check of the return code is missing, user space does not get notified about the error condition: omapdss OVERLAY error: overlay 2 horizontally not inside the display area (403 + 800 >= 800) omapdss APPLY error: failed to apply settings: illegal configuration. Signed-off-by: Peter Meerwald <pmeerw@pmeerw.net> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-02-04OMAPDSS: DPI: DRA7xx supportTomi Valkeinen
Add support for DRA7xx DPI output. DRA7xx has three DPI outputs, each of which gets its input from a DISPC channel. However, DRA72x has only one video PLL, and DRA74x has two video PLLs. In both cases the video PLLs need to be shared between multiple outputs. The driver doesn't handle this at the moment. Also, DRA7xx requires configuring CONTROL module bits to route the clock from the PLL to the used DISPC channel. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-02-04OMAPDSS: HDMI: Add DRA7xx supportTomi Valkeinen
Add support for DRA7xx to the HDMI driver. The HDMI block on DRA7xx is the same as on OMAP5, except we need to enable and disable the HDMI PLL via the CONTROL module. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-02-04OMAPDSS: DISPC: program dispc polarities to control moduleTomi Valkeinen
On DRA7xx, DISPC needs to write output signal polarities not only to a DISPC register, like for all earlier DSS versions, but to control module's CTRL_CORE_SMA_SW_1 register. This patch adds support to write the polarities to control module. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-02-04OMAPDSS: DISPC: Add DRA7xx supportTomi Valkeinen
Add DRA7xx support to DISPC driver. The DISPC block is the same as on OMAP5, except the PLL's used for clocking are "videoX", not "dsiX". Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-02-04OMAPDSS: Add Video PLLs for DRA7xxTomi Valkeinen
DRA7xx SoCs have one (DRA72x) or two (DRA74x) video PLLs. They are basically the same as DSI PLLs on OMAPs, but without the rest of the DSI hardware. The video PLLs also require some configuration via the CONTROL module. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-02-04OMAPDSS: Add functions for external control of PLLTomi Valkeinen
Add functions which configure the control module register CTRL_CORE_DSS_PLL_CONTROL found in DRA7xx SoCs. This register configures whether the PLL registers are accessed internally by DSS, or externally using OCP2SCP interface. They also configure muxes which route the PLL output to a particular LCD overlay manager within DSS. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-02-04OMAPDSS: DSS: Add DRA7xx base supportTomi Valkeinen
Add base support for DRA7xx to DSS core. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-02-04Doc/DT: Add DT binding doc for DRA7xx DSSTomi Valkeinen
Add device tree binding documentation for DRA7xx display subsystem. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> Cc: devicetree@vger.kernel.org
2015-02-04OMAPDSS: add define for DRA7xx HW versionTomi Valkeinen
Add define for DRA7xx DSS version. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-02-04OMAPDSS: encoder-tpd12s015: Fix race issue with LS_OETomi Valkeinen
A race issue has been observed with the encoder-tpd12s015 driver, which leads to errors when trying to read EDID. This has only now been observed, as OMAP4 and OMAP5 boards used SoC's GPIOs for LS_OE GPIO. On dra7-evm boards, the LS_OE is behind a i2c controlled GPIO expander, which increases the time to set the LS_OE. This patch simplifies the handling of the LS_OE gpio in the driver by removing the interrupt handling totally. The only time we actually need to enable LS_OE is when we are reading the EDID, and thus we can just set and clear the LS_OE gpio inside the read_edid() function. This also has the additional benefit of very slightly decreasing the power consumption. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-02-04OMAPDSS: OMAP5: fix digit output's allowed mgrsTomi Valkeinen
The OMAP5 HW supports directing DIGIT channel to DPI output, but the driver doesn't support that. However, we have marked that configuration as possible in the dss features, so in certain cases the driver tries to use that configuration, leading to broken display. Fix the problem by allowing DIGIT channel to go only to HDMI output. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-02-04OMAPDSS: constify port arraysTomi Valkeinen
The port arrays are constant data, so set them as 'const'. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-02-04OMAPDSS: PLL: add dss_pll_wait_reset_done()Tomi Valkeinen
Add a helper function to wait until the PLL's reset is done. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-02-04OMAPDSS: Add enum dss_pll_idTomi Valkeinen
In some cases we need global identifiers for the DSS PLLs, for example when configuring clock muxing on DRA7. For this purpose let's add a 'enum dss_pll_id'. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-01-30video: fbdev: fix sys_copyareaMans Rullgard
The sys_copyarea() function performs the same operation as cfb_copyarea() but using normal memory access instead of I/O accessors. Since the introduction of sys_copyarea(), there have been two fixes to cfb_copyarea(): - 00a9d699 ("framebuffer: fix cfb_copyarea") - 5b789da8 ("framebuffer: fix screen corruption when copying") This patch incorporates the fixes into sys_copyarea() as well. Signed-off-by: Mans Rullgard <mans@mansr.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-01-30video/mmpfb: allow modular buildArnd Bergmann
The frame buffer core can be a module, which means any fb drivers should be able to build as modules too. This turns mmpfb into a tristate option to allow that and fix a possible randconfig build error. drivers/built-in.o: In function `modes_setup': :(.text+0x11b34): undefined reference to `fb_videomode_to_modelist' :(.text+0x11b5c): undefined reference to `fb_videomode_to_var' Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-01-30fb: via: turn gpiolib and i2c selects into dependenciesArnd Bergmann
Device driver should not directly select subsystems. In this case we get build warnings like warning: (ARCH_REQUIRE_GPIOLIB && PINCTRL_AT91 && PINCTRL_NOMADIK && MFD_TC6393XB && FB_VIA) selects GPIOLIB which has unmet direct dependencies (ARCH_WANT_OPTIONAL_GPIOLIB || ARCH_REQUIRE_GPIOLIB) which we can avoid using the normal 'depends on' statement. Also, this patch makes it possible for DRM drivers to have a dependency on GPIOLIB without getting circular Kconfig dependencies. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-01-30fbdev: ssd1307fb: return proper error code if write command failsPrabhakar Lad
this patch fixes ssd1307fb_ssd1306_init() function to return proper error codes in case of failures. Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-01-27fbdev: fix CVT vertical front and back porch valuesTomi Valkeinen
CVT v1.1 spec says: "the vertical front porch shall in all cases be fixed to 3 lines". The code in fbcvt.c instead sets the _back_ porch to 3 (plus margin). After swapping cvt.v_front_porch and cvt.v_back_porch the resulting timings were in line with CVT timings in VESA DMT spec. The bug seems to be more than 9 years old, but I presume it has not been noticed as usually the video timings come from the EDID or from the timing tables in fbdev, and probably swapped values for vfp and vbp work fine for most of the displays. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com> Acked-by: David Ung <davidu@nvidia.com> Cc: Antonino A. Daplas <adaplas@gmail.com>
2015-01-26video: hgafb: remove unneeded comparisonSudip Mukherjee
var->yoffset is of the type __u32, hence the comparison will always be false. Signed-off-by: Sudip Mukherjee <sudip@vectorindia.org> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-01-26fbcon: Remove unused vblank cursor codeScot Doyle
commit 1fa0b29f3a43 ("fbdev: Kill Atari vblank cursor blinking") rendered vbl_cursor_cnt and therefore CURSOR_DRAW_DELAY unused in fbcon.c, so remove them. Signed-off-by: Scot Doyle <lkml14@scotdoyle.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-01-19video: fbdev: Fix sparse warning messagesDavid Ung
Use NULL instead of 0 for the last entry of dmt_modes struct. Supresses "sparse: Using plain integer as NULL pointer" warning. Signed-off-by: David Ung <davidu@nvidia.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-01-15video: fbdev: Validate mode timing against monspecDavid Ung
fbmon may generate mode timings that are out of spec of the monitor. eg DELL U2410 has a max clock 170mhz but advertises a resolutions of 1920x1200@60 in its Standard Timings using 2byte code of D1 00. When this is looked up in the DMT table it gives it a 193mhz clock. Although the DELL monitor supports 1920x1200@60, it can only run with reduced timings at 154mhz or DMT id 0x44 which has no STD 2byte code. This patch checks to see if the mode can be supported by the monitor by comparing against monspecs.dclkmax. Signed-off-by: David Ung <davidu@nvidia.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-01-15video: fbdev: Check Standard Timing against DMTDavid Ung
Add the VESA Display Monitor Timing (DMT) table. During parsing of Standard Timings, it compare the 2 byte STD code with DMT to see what the VESA mode should be. If there is no entry in the vesa_modes table or no match found, it fallsback to the GTF timings. Signed-off-by: David Ung <davidu@nvidia.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-01-15video: fbdev: Add additional vesa modesDavid Ung
Add high resolution modes to vesa_modes struct. Signed-off-by: David Ung <davidu@nvidia.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-01-15fbdev: ssd1307fb: set default height if not found in DT nodeLad, Prabhakar
this patch sets the default height if its not found in DT. Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com> Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-01-15fbdev: ssd1307fb: drop unused function ssd1307fb_write_data()Lad, Prabhakar
this patch drops the unused function ssd1307fb_write_data(). Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com> Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-01-13video: Drop superfluous "select VT_HW_CONSOLE_BINDING"Geert Uytterhoeven
commit 765d5b9c2b72f5b99722cdfcf4bf8f88c556cf92 ("fbdev: fbcon: select VT_HW_CONSOLE_BINDING") made FRAMEBUFFER_CONSOLE always select VT_HW_CONSOLE_BINDING, but forgot to remove select VT_HW_CONSOLE_BINDING if FRAMEBUFFER_CONSOLE from the individual drivers' sections that already did this before. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-01-13console/dummy: Move screen size selection from CPP to KconfigGeert Uytterhoeven
PA-RISC already handled the dummy console screen size selection in Kconfig, so generalize this to other platforms. ARM keeps on using screen_info, which is filled in by platform-specific code, or from ATAGS. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-01-13video: vt8500lcdfb: remove unneeded continueSudip Mukherjee
continue is not needed at the end of a for loop, also removed the braces which were no longer required. Signed-off-by: Sudip Mukherjee <sudip@vectorindia.org> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-01-13fbdev: savage: remove unused variableSudip Mukherjee
vga_in8() was storing the return value in tmp, but that return value was never used again. so it should be safe to remove those variables. Signed-off-by: Sudip Mukherjee <sudip@vectorindia.org> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-01-13fbdev: geocode: remove unneeded NULL checkSudip Mukherjee
the check for info is not required as we are checking it immediately after gxfb_init_fbinfo() and lxfb_init_fbinfo() and returnig -ENOMEM if it is NULL. Signed-off-by: Sudip Mukherjee <sudip@vectorindia.org> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-01-13fbdev: omap2: Fix typo in tvc_probe_pdataRasmus Villemoes
Assigning ddata->invert_polarity to itself is not very useful; the context suggests that the right-hand side should have been pdata->invert_polarity. Signed-off-by: Rasmus Villemoes <linux@rasmusvillemoes.dk> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-01-13fbdev: vgastate: remove trailing whitespacesAsaf Vertz
Fixed a coding style error, trailing whitespace. Signed-off-by: Asaf Vertz <asaf.vertz@tandemg.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-01-13video: ocfb: Fix data type warningQiang Chen
When allocate framebuffer memory using dma_alloc_coherent(), we'd better use dma_addr_t instead of phys_addr_t. Because the address we got in fact is DMA or bus address for the platform. This patch also fixes below build warning: drivers/video/fbdev/ocfb.c:335:2: warning: passing argument 3 of ‘dma_alloc_attrs’ from incompatible pointer type [enabled by default] Signed-off-by: Qiang Chen <qiang2.chen@sonymobile.com> Acked-by: Stefan Kristiansson <stefan.kristiansson@saunalahti.fi> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-01-13Documentation: DT: Add documentation for ti,opa362 bindingsMarek Belisko
Signed-off-by: Marek Belisko <marek@goldelico.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-01-13video: omapdss: Add opa362 driverMarek Belisko
opa362 is amplifier for video and can be connected to the tvout pads of the OMAP3. It has one gpio control for enable/disable of the output (high impedance). Signed-off-by: H. Nikolaus Schaller <hns@goldelico.com> Signed-off-by: Marek Belisko <marek@goldelico.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-01-13fbdev: geocode: remove unneeded NULL checkSudip Mukherjee
the check for info is not required as we are checking it immediately after gx1fb_init_fbinfo() and returnig -ENOMEM if it is NULL. Signed-off-by: Sudip Mukherjee <sudip@vectorindia.org> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-01-13atyfb: mark DMI system id table as __initconstMathias Krause
We can mark the DMI system id table as __initconst by using a helper variable that'll tell us if we need to unregister the reboot notifier in atyfb_exit() instead of matching the DMI system id again. This frees up ~680 bytes of runtime memory, the DMI table occupies. Signed-off-by: Mathias Krause <minipli@googlemail.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
2015-01-11linux 3.19-rc4v3.19-rc4Linus Torvalds
2015-01-11Merge branch 'fixes' of git://ftp.arm.linux.org.uk/~rmk/linux-armLinus Torvalds
Pull ARM fixes from Russell King: "Three small fixes from over the Christmas period, and wiring up the new execveat syscall for ARM" * 'fixes' of git://ftp.arm.linux.org.uk/~rmk/linux-arm: ARM: 8275/1: mm: fix PMD_SECT_RDONLY undeclared compile error ARM: 8253/1: mm: use phys_addr_t type in map_lowmem() for kernel mem region ARM: 8249/1: mm: dump: don't skip regions ARM: wire up execveat syscall
2015-01-11Merge branch 'x86-urgent-for-linus' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip Pull x86 fixes from Ingo Molnar: "Misc fixes: two vdso fixes, two kbuild fixes and a boot failure fix with certain odd memory mappings" * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: x86, vdso: Use asm volatile in __getcpu x86/build: Clean auto-generated processor feature files x86: Fix mkcapflags.sh bash-ism x86: Fix step size adjustment during initial memory mapping x86_64, vdso: Fix the vdso address randomization algorithm
2015-01-11Merge branch 'sched-urgent-for-linus' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip Pull scheduler fixes from Ingo Molnar: "Misc fixes: group scheduling corner case fix, two deadline scheduler fixes, effective_load() overflow fix, nested sleep fix, 6144 CPUs system fix" * 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: sched/fair: Fix RCU stall upon -ENOMEM in sched_create_group() sched/deadline: Avoid double-accounting in case of missed deadlines sched/deadline: Fix migration of SCHED_DEADLINE tasks sched: Fix odd values in effective_load() calculations sched, fanotify: Deal with nested sleeps sched: Fix KMALLOC_MAX_SIZE overflow during cpumask allocation
2015-01-11Merge branch 'perf-urgent-for-linus' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip Pull perf fixes from Ingo Molnar: "Mostly tooling fixes, but also some kernel side fixes: uncore PMU driver fix, user regs sampling fix and an instruction decoder fix that unbreaks PEBS precise sampling" * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: perf/x86/uncore/hsw-ep: Handle systems with only two SBOXes perf/x86_64: Improve user regs sampling perf: Move task_pt_regs sampling into arch code x86: Fix off-by-one in instruction decoder perf hists browser: Fix segfault when showing callchain perf callchain: Free callchains when hist entries are deleted perf hists: Fix children sort key behavior perf diff: Fix to sort by baseline field by default perf list: Fix --raw-dump option perf probe: Fix crash in dwarf_getcfi_elf perf probe: Fix to fall back to find probe point in symbols perf callchain: Append callchains only when requested perf ui/tui: Print backtrace symbols when segfault occurs perf report: Show progress bar for output resorting
2015-01-11Merge branch 'locking-urgent-for-linus' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip Pull locking fixes from Ingo Molnar: "A liblockdep fix and a mutex_unlock() mutex-debugging fix" * 'locking-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: mutex: Always clear owner field upon mutex_unlock() tools/liblockdep: Fix debug_check thinko in mutex destroy
2015-01-11mm: fix corner case in anon_vma endless growing preventionKonstantin Khlebnikov
Fix for BUG_ON(anon_vma->degree) splashes in unlink_anon_vmas() ("kernel BUG at mm/rmap.c:399!") caused by commit 7a3ef208e662 ("mm: prevent endless growth of anon_vma hierarchy") Anon_vma_clone() is usually called for a copy of source vma in destination argument. If source vma has anon_vma it should be already in dst->anon_vma. NULL in dst->anon_vma is used as a sign that it's called from anon_vma_fork(). In this case anon_vma_clone() finds anon_vma for reusing. Vma_adjust() calls it differently and this breaks anon_vma reusing logic: anon_vma_clone() links vma to old anon_vma and updates degree counters but vma_adjust() overrides vma->anon_vma right after that. As a result final unlink_anon_vmas() decrements degree for wrong anon_vma. This patch assigns ->anon_vma before calling anon_vma_clone(). Signed-off-by: Konstantin Khlebnikov <koct9i@gmail.com> Reported-and-tested-by: Chris Clayton <chris2553@googlemail.com> Reported-and-tested-by: Oded Gabbay <oded.gabbay@amd.com> Reported-and-tested-by: Chih-Wei Huang <cwhuang@android-x86.org> Acked-by: Rik van Riel <riel@redhat.com> Acked-by: Vlastimil Babka <vbabka@suse.cz> Cc: Daniel Forrest <dan.forrest@ssec.wisc.edu> Cc: Michal Hocko <mhocko@suse.cz> Cc: stable@vger.kernel.org # to match back-porting of 7a3ef208e662 Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2015-01-11mm: Don't count the stack guard page towards RLIMIT_STACKLinus Torvalds
Commit fee7e49d4514 ("mm: propagate error from stack expansion even for guard page") made sure that we return the error properly for stack growth conditions. It also theorized that counting the guard page towards the stack limit might break something, but also said "Let's see if anybody notices". Somebody did notice. Apparently android-x86 sets the stack limit very close to the limit indeed, and including the guard page in the rlimit check causes the android 'zygote' process problems. So this adds the (fairly trivial) code to make the stack rlimit check be against the actual real stack size, rather than the size of the vma that includes the guard page. Reported-and-tested-by: Chih-Wei Huang <cwhuang@android-x86.org> Cc: Jay Foad <jay.foad@gmail.com> Cc: stable@kernel.org # to match back-porting of fee7e49d4514 Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2015-01-11Merge branch 'core/urgent' into locking/urgent, to collect all pending ↵Ingo Molnar
locking fixes Signed-off-by: Ingo Molnar <mingo@kernel.org>