- 16 2月, 2016 1 次提交
-
-
由 Bjorn Helgaas 提交于
Most arches have an asm/gpio.h that merely includes linux/gpio.h. The others select ARCH_HAVE_CUSTOM_GPIO_H, and when that's selected, linux/gpio.h includes asm/gpio.h. Therefore, code should include linux/gpio.h instead of including asm/gpio.h directly. Remove includes of asm/gpio.h, adding an include of linux/gpio.h when necessary. This is a follow-on to 7563bbf8 ("gpiolib/arches: Centralise bolierplate asm/gpio.h"). Signed-off-by: NBjorn Helgaas <bhelgaas@google.com> Acked-by: NThomas Gleixner <tglx@linutronix.de> Acked-by: NArnd Bergmann <arnd@arndb.de> Acked-by: NAlexandre Courbot <acourbot@nvidia.com> Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
-
- 23 1月, 2016 1 次提交
-
-
由 Al Viro 提交于
parallel to mutex_{lock,unlock,trylock,is_locked,lock_nested}, inode_foo(inode) being mutex_foo(&inode->i_mutex). Please, use those for access to ->i_mutex; over the coming cycle ->i_mutex will become rwsem, with ->lookup() done with it held only shared. Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
-
- 18 1月, 2016 1 次提交
-
-
由 Robert Jarzmik 提交于
As seen by Julia, the initial allocation memory is not checked anymore after commit "video: fbdev: pxafb: initial devicetree conversion". Introduce back the removed test. Reported-by: NJulia Lawall <julia.lawall@lip6.fr> Signed-off-by: NRobert Jarzmik <robert.jarzmik@free.fr> Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
-
- 11 1月, 2016 7 次提交
-
-
由 Vladimir Zapolskiy 提交于
If pwm is requested by legacy pwm_request() and if the following backlight_device_register() call fails, add pwm_free() clean-up. Signed-off-by: NVladimir Zapolskiy <vladimir_zapolskiy@mentor.com> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Arnd Bergmann 提交于
A recent patch I did fixed two potential uses of uninitialized variables in the adp8870 and adp8860 drivers. Unfortunately, I missed another one: drivers/video/backlight/adp8860_bl.c: In function 'adp8860_bl_ambient_light_level_show': drivers/video/backlight/adp8860_bl.c:570:11: warning: 'reg_val' may be used uninitialized in this function This does the same change as before in one additional function, and also changes the check for the return value in a way that avoids another false positive warning with a similar message. Signed-off-by: NArnd Bergmann <arnd@arndb.de> Fixes: 6be3a5a9cd91 ("backlight: adp88x0: Fix uninitialized variable use") Acked-by: NMichael Hennerich <michael.hennerich@analog.com> Acked-by: NJingoo Han <jingoohan1@gmail.com> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Stefan Agner 提交于
There are situations where the backlight should be on at boot time (e.g. if the boot loader already turned the display on). The DT bindings specify the "default-on" property for that purpose. Currently, the initial state of the GPIO at request time is always set to logical off (high or low depending on whether it is an active high or low GPIO). Since the GPIO is requested as an output, the GPIO will be driven low for a short period of time, which leads to a flickering display in the above use-case. Initialize the GPIO depending on the default-on property to be logical on or off. Signed-off-by: NStefan Agner <stefan@agner.ch> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Philipp Zabel 提交于
Commit ee65ad0e2a9e ("backlight: pwm_bl: Avoid backlight flicker when probed from DT") tries to dereference the device of_node pointer unconditionally, causing a NULL pointer dereference on non-dt platforms. Fix it by replacing the phandle variable with a node variable and by checking that for NULL before dereferencing it. Reported-by: NRobert Jarzmik <robert.jarzmik@free.fr> Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de> Acked-by: NThierry Reding <thierry.reding@gmail.com> Tested-by: NRobert Jarzmik <robert.jarzmik@free.fr> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Enric Balletbo i Serra 提交于
The device table is required to load modules based on modaliases. Signed-off-by: NEnric Balletbo i Serra <enric.balletbo@collabora.com> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Philipp Zabel 提交于
If the driver is probed from the device tree, and there is a phandle property set on it, and the enable GPIO is already configured as output, and the backlight is currently disabled, keep it disabled. If all these conditions are met, assume there will be some other driver that can enable the backlight at the appropriate time. Signed-off-by: NPhilipp Zabel <p.zabel@pengutronix.de> Reviewed-by: NChristian Gmeiner <christian.gmeiner@gmail.com> Tested-by: NHeiko Stuebner <heiko@sntech.de> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
由 Arnd Bergmann 提交于
gcc correctly warns about both the adp8860 and adp8870 backlight drivers using an uninitialized variable in their error handling path: drivers/video/backlight/adp8870_bl.c: In function 'adp8870_bl_ambient_light_zone_store': drivers/video/backlight/adp8870_bl.c:811:11: warning: 'reg_val' may be used uninitialized in this function This changes the code to only write back the data if it was correctly read to start with. As a side-note, the drivers are mostly identical, so I think they should really be merged into one file to avoid having to fix every bug twice. Signed-off-by: NArnd Bergmann <arnd@arndb.de> Acked-by: NMichael Hennerich <michael.hennerich@analog.com> Signed-off-by: NLee Jones <lee.jones@linaro.org>
-
- 07 1月, 2016 1 次提交
-
-
由 Linus Walleij 提交于
This makes the driver use the data pointer added to the gpio_chip to store a pointer to the state container instead of relying on container_of(). Cc: Florian Tobias Schandinat <FlorianSchandinat@gmx.de> Acked-by: NTomi Valkeinen <tomi.valkeinen@ti.com> Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
-
- 05 1月, 2016 1 次提交
-
-
由 Linus Walleij 提交于
As we want gpio_chip .get() calls to be able to return negative error codes and propagate to drivers, we need to go over all drivers and make sure their return values are clamped to [0,1]. We do this by using the ret = !!(val) design pattern. Cc: Florian Tobias Schandinat <FlorianSchandinat@gmx.de> Acked-by: NTomi Valkeinen <tomi.valkeinen@ti.com> Signed-off-by: NLinus Walleij <linus.walleij@linaro.org>
-
- 29 12月, 2015 28 次提交
-
-
由 Tomi Valkeinen 提交于
Now that omapfb has its own copy of omapdss and display drivers, we can move omapdss and display drivers which omapdrm uses to omapdrm's directory. We also need to change the main drm Makefile so that omapdrm directory is always entered, because omapdss has a file that can't be built as a module. Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com> Acked-by: NDave Airlie <airlied@gmail.com> Acked-by: NRob Clark <robdclark@gmail.com>
-
由 Tomi Valkeinen 提交于
VRFB is only used by omapfb, so we can move it under omapfb's directory. Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com> Acked-by: NDave Airlie <airlied@gmail.com> Acked-by: NRob Clark <robdclark@gmail.com>
-
由 Tomi Valkeinen 提交于
omapfb's private copy of omapdss is now ready to be used. This patch makes omapfb use its private omapdss and display drivers, and also makes omap_vout (which uses omapfb) to depend on omapfb. Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com> Acked-by: NDave Airlie <airlied@gmail.com> Acked-by: NRob Clark <robdclark@gmail.com>
-
由 Tomi Valkeinen 提交于
We need to change the config symbols of omapfb's private copy of the panel and encoder drivers so that we won't have config symbol conflicts. This patch changes the symbols from the panel and encoder drivers using simple replacement of DISPLAY_* to FB_OMAP2*. Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com> Acked-by: NDave Airlie <airlied@gmail.com> Acked-by: NRob Clark <robdclark@gmail.com>
-
由 Tomi Valkeinen 提交于
We need to change the config symbols of omapfb's private copy of omapdss so that we won't have config symbol conflicts. This patch changes the symbols from omapdss using simple replacement of CONFIG_OMAP* to CONFIG_FB_OMAP*. Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com> Acked-by: NDave Airlie <airlied@gmail.com> Acked-by: NRob Clark <robdclark@gmail.com>
-
由 Tomi Valkeinen 提交于
This patch makes a copy of the omapdss driver and the omap panel & encoder drivers for omapfb. The purpose is to separate omapdrm and omapfb drivers from each other. Note that this patch only does a direct copy of the files without any other modifications. The files are not yet used. The original files are in: drivers/video/fbdev/omap2/dss/ drivers/video/fbdev/omap2/displays-new/ Here's a more detailed explanation about this and the following patches, from the introduction mail of the patch series: A short background on the current status. We have the following entities: * omapdss, located in drivers/video/fbdev/omap2/dss/. This is a driver for the display subsystem IPs used on OMAP (and related) SoCs. It offers only a kernel internal API, and does not implement anything for fbdev or drm. * omapdss panels and encoders, located in drivers/video/fbdev/omap2/displays-new/. These are panel and external encoder drivers, which use APIs offered by omapdss driver. These also don't implement anything for fbdev or drm. * omapdrm, located in drivers/gpu/drm/omapdrm/. This is a drm driver, which uses omapdss and the panel/encoder drivers to operate the hardware. * omapfb, located in drivers/video/fbdev/omap2/omapfb/. This is an fbdev driver, which uses omapdss and the panel/encoder drivers to operate the hardware. * omap_vout, located in drivers/media/platform/omap/. This is a v4l2 driver, which uses omapdss and omapfb to implement a v4l2 API for the video overlays. So, on the top level, we have either omapdrm, or omapfb+omap_vout. Both of those use the same low level drivers. Without going to the historical details why the architecture is like that, I think it's finally time to change that. The situation with omapfb+omap_vout is that it still works, but no new features have been added for a long time, and I want to keep it working as it's still being used. At some point in the future I'd like to remove omapfb and omap_vout altogether. Omapdrm, on the other hand, is being actively developed. Sharing the low level parts with omapfb makes that development more difficult than it should be. It also "hides" half of the development, as everything happening in the low level parts resides under fbdev directory, not in the drm directory. I've been wanting to clean this up for a long time, but I haven't figured out a very good way to do it. I still haven't, but here's the best way I have come up with. This series makes a full copy of the low level parts, omapdss and panel/encoder drivers. Both omapfb+omap_vout and omapdrm will have their own versions. The copy omapfb+omap_vout get is a new copy, and the copy that omapdrm gets is just the current files moved. This way git will associate the omapdrm version with the old files. The omapfb+omap_vout versions won't be touched unless there are some big issues there. The omapdrm versions can be refactored and cleaned up, as the omapfb support code is no longer needed. We can perhaps also merge omapdss and omapdrm into the same kernel module. This series only does the copy, and the absolutely necessary parts. No further cleanups are done yet. Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com> Acked-by: NDave Airlie <airlied@gmail.com> Acked-by: NRob Clark <robdclark@gmail.com>
-
由 Tomi Valkeinen 提交于
At the moment omapfb and omapdrm can be compiled at the same time, if both are modules. However, they can't be both loaded, as they use the same hardware. This has been mostly for compile testing. To make it clear that omapfb and omapdrm are mutually exclusive drivers, this patch makes omapfb available only if omapdrm is disabled. Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com> Acked-by: NDave Airlie <airlied@gmail.com> Acked-by: NRob Clark <robdclark@gmail.com>
-
由 Uwe Kleine-König 提交于
gpiod_set_value_cansleep is a noop when the passed descriptor is NULL. So there is no need to duplicate the check for NULL; just call the function unconditionally instead. Signed-off-by: NUwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
-
由 Uwe Kleine-König 提交于
This makes .disable operate in reverse order compared to .enable. Signed-off-by: NUwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
-
由 Dan Carpenter 提交于
The WARN() macro has to take a condition. The current code will just print the stack trace and the function name instead of the intended warning message. Signed-off-by: NDan Carpenter <dan.carpenter@oracle.com> Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
-
由 Julia Lawall 提交于
Device node iterators perform an of_node_put on each iteration, so putting an of_node_put before a continue results in a double put. A simplified version of the semantic match that finds this problem is as follows (http://coccinelle.lip6.fr): // <smpl> @@ expression root,e; local idexpression child; iterator i; @@ i(..., child, ...) { ... when != of_node_get(child) * of_node_put(child); ... * continue; } // </smpl> Signed-off-by: NJulia Lawall <Julia.Lawall@lip6.fr> Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
-
由 Luis de Bethencourt 提交于
Boolean tests do not need explicit comparison to true or false. Signed-off-by: NLuis de Bethencourt <luisbg@osg.samsung.com> Acked-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
-
由 Dan Carpenter 提交于
DSI_IRQ_SYNC_LOST was ORed twice so we can remove one. Signed-off-by: NDan Carpenter <dan.carpenter@oracle.com> Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
-
由 Tomi Valkeinen 提交于
All the output drivers check for 'out' being NULL, but it can never be NULL. Remove the check. Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com> Acked-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com>
-
由 Tomi Valkeinen 提交于
A bunch of dispc functions are only used inside dispc, so we can make them static. Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com> Acked-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com>
-
由 Tomi Valkeinen 提交于
dss_feat_get_supported_displays() and dss_feat_get_supported_outputs() are not used outside omapdss, but are exported. We can thus remove the export and move the declarations to the omapdss internal header. Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com> Acked-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com>
-
由 Tomi Valkeinen 提交于
The functions dispc_ovl_set_fifo_threshold and dispc_ovl_compute_fifo_thresholds are exported, but not declared in public headers, and thus are not used outside omapdss. So we can remove the EXPORT_SYMBOL()s. Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com> Acked-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com>
-
由 Tomi Valkeinen 提交于
dispc_wb_setup() handles configuration only for mem-to-mem case. This patch adds the necessary configuration to handle also display capture mode. We need to set CAPTUREMODE to 0 (continuous capture), and WBDELAYCOUNT according to the vertical timings of the display, so that the WB FIFO has time to flush before the next frame starts. Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
-
由 Tomi Valkeinen 提交于
In mem-to-mem mode WB CAPTUREMODE needs to be set to 1 (capture one frame). Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
-
由 Tomi Valkeinen 提交于
The color conversion coefficients for RGB to YUV conversion (used with writeback) don't result in the correct result. This patch sets the correct coefficients. Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
-
由 Tomi Valkeinen 提交于
When doing mem-to-mem writeback, there's no pixelclock. However, the code that calculates scaling factors check that there is a pixel clock. We can just skip the check when doing mem-to-mem writeback. Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
-
由 Tomi Valkeinen 提交于
Mflag thresholds for all pipelines are set in dispc_init_mflag(), but we are missing that for WB pipeline. Add WB configuration. Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
-
由 Tomi Valkeinen 提交于
Fifo thresholds for all pipelines are set in dispc_init_fifos(), but we are missing it for WB pipeline. Add that. Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
-
由 Tomi Valkeinen 提交于
Burst size for all pipelines is set in dispc_configure_burst_sizes(), but we are missing WB pipe. So add that. Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
-
由 Tomi Valkeinen 提交于
Add handling of OMAP_DSS_CHANNEL_WB to dispc_ovl_set_channel_out() and dispc_ovl_get_channel_out(). Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
-
由 Tomi Valkeinen 提交于
Refactor dispc_ovl_get_channel_out() to a bit cleaner form, which makes it easier to add support for writeback in the following patch. Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
-
由 Tomi Valkeinen 提交于
At the moment we have a function to get the number of writeback pipelines supported. However, the function is used in a wrong way, causing a wrong pipeline to get configured when trying to use WB. Also, we only have a single writeback pipeline on any of the DSS versions. To fix and simplify this, create a 'has_writeback' flag into the dispc driver, and after checking the flag, use OMAP_DSS_WB pipeline explicitly when calling the configuration functions. Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
-
由 Tomi Valkeinen 提交于
OMAP5+ DSS has a writeback pipeline, but this was not specified in the features list for OMAP5 DSS. Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
-