- Dec 10, 2019
-
-
Martin Kepplinger authored
-
Add the initial configuration for clocks that need default parent and rate setting. This is based on the vendor tree clock provider parents and rates configuration except this is doing the setup in dts rather then using clock consumer API in a clock provider driver. Note that by adding the initial rate setting for audio_pll1/audio_pll setting we need to remove it from imx8mq-librem5-devkit.dts imx8mq-librem5-devkit.dts Signed-off-by: Abel Vesa <abel.vesa@nxp.com> Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
-
Add a node for the eLCDIF controller, "disabled" by default. Signed-off-by: Guido Günther <agx@sigxcpu.org>
-
This adds initial support for the NWL MIPI DSI Host controller found on i.MX8 SoCs. It adds support for the i.MX8MQ but the same IP can be found on e.g. the i.MX8QXP. It has been tested on the Librem 5 devkit using mxsfb. Signed-off-by: Guido Günther <agx@sigxcpu.org> Co-developed-by: Robert Chiras <robert.chiras@nxp.com> Signed-off-by: Robert Chiras <robert.chiras@nxp.com> Tested-by: Robert Chiras <robert.chiras@nxp.com>
-
The Northwest Logic MIPI DSI IP core can be found in NXPs i.MX8 SoCs. Signed-off-by: Guido Günther <agx@sigxcpu.org> Tested-by: Robert Chiras <robert.chiras@nxp.com> Reviewed-by: Rob Herring <robh@kernel.org>
-
This fixes compilation on next-20191029
-
This reverts commit b45ce5e02284eaea622b507cf0a5e60affd4cd3c.
-
-
Bit 21 can alter the CTRL2_OUTSTANDING_REQS value right after the eLCDIF is enabled, since it comes up with default value of 1 (this behaviour has been seen on some imx8 platforms). In order to fix this, clear CTRL2_OUTSTANDING_REQS bits before setting its value. Signed-off-by: Robert Chiras <robert.chiras@nxp.com>
-
Currently, the enable of the axi clock return status is ignored, causing issues when the enable fails then we try to disable it. Therefore, it is better to check the return status and disable it only when enable succeeded. Also, remove the helper functions around clk_axi, since we can directly use the clk API function for enable/disable the clock. Those functions are already checking for NULL clk and returning 0 if that's the case. Signed-off-by: Robert Chiras <robert.chiras@nxp.com> Acked-by: Leonard Crestez <leonard.crestez@nxp.com>
-
The eLCDIF controller has control pin for the external LCD reset pin. Add support for it and assert this pin in enable and de-assert it in disable. Signed-off-by: Robert Chiras <robert.chiras@nxp.com>
-
Add new optional property 'max-memory-bandwidth', to limit the maximum bandwidth used by the MXSFB_DRM driver. Signed-off-by: Robert Chiras <robert.chiras@nxp.com>
-
Because of stability issues, we may want to limit the maximum bandwidth required by the MXSFB (eLCDIF) driver. Signed-off-by: Robert Chiras <robert.chiras@nxp.com>
-
Add mxsfb_atomic_helper_check to signal mode changed when bpp changed. This will trigger the execution of disable/enable on a modeset with different bpp than the current one. Signed-off-by: Mirela Rabulea <mirela.rabulea@nxp.com> Signed-off-by: Robert Chiras <robert.chiras@nxp.com>
-
Currently, the vblank support is not correctly implemented in MXSFB_DRM driver. The call to drm_vblank_init is made with mode_config.num_crtc which at that time is 0. Because of this, vblank is not activated, so there won't be any vblank event submitted. For example, when running modetest with the '-v' parameter will result in an astronomical refresh rate (10000+ Hz), because of that. Signed-off-by: Robert Chiras <robert.chiras@nxp.com>
-
Since version 4 of eLCDIF, there are some registers that can do transformations on the input data, like re-arranging the pixel components. By doing that, we can support more pixel formats. This patch adds support for X/ABGR and RGBX/A. Although, the local alpha is not supported by eLCDIF, the alpha pixel formats were added to the supported pixel formats but it will be ignored. This was necessary since there are systems (like Android) that requires such pixel formats. Also, add support for the following pixel formats: 16 bpp: RG16 ,BG16, XR15, XB15, AR15, AB15 Set the bus format based on input from the user and panel capabilities. Save the bus format in crtc->mode.private_flags, so the bridge can use it. Signed-off-by: Robert Chiras <robert.chiras@nxp.com> Signed-off-by: Mirela Rabulea <mirela.rabulea@nxp.com>
-
Use BIT(x) and GEN_MASK(h, l) for better representation the inside of various registers. Signed-off-by: Robert Chiras <robert.chiras@nxp.com>
-
Some of the registers, like LCDC_CTRL, CTRL2_OUTSTANDING_REQS and CTRL1_RECOVERY_ON_UNDERFLOW needs to be properly cleared/initialized for a better start and stop routine. Signed-off-by: Robert Chiras <robert.chiras@nxp.com>
-
Some of the existing registers in this controller are not defined, but also not used. Add them to the register definitions, so that they can be easily used in future improvements or fixes. Signed-off-by: Robert Chiras <robert.chiras@nxp.com>
-
Signed-off-by: Guido Günther <guido.gunther@puri.sm>
-
This changes the clock tree from to osc_25m 10 12 0 25000000 0 0 50000 video_pll1_ref_sel 1 1 0 25000000 0 0 50000 video_pll1_ref_div 1 1 0 5000000 0 0 50000 video_pll1 1 1 0 593999998 0 0 50000 video_pll1_bypass 1 1 0 593999998 0 0 50000 video_pll1_out 2 2 0 593999998 0 0 50000 dsi_phy_ref 1 1 0 23760000 0 0 50000 Signed-off-by: Guido Günther <agx@sigxcpu.org>
-
This enables the panel to turn the backlight on and off. Signed-off-by: Guido Günther <guido.gunther@puri.sm>
-
Enable LCD panel output by adding nodes for the NWL DSI host controller, the Rocktech panel and the eLCDIF display controller. Signed-off-by: Guido Günther <agx@sigxcpu.org>
-
Add a node for the Northwestlogic MIPI DSI IP core, "disabled" by default. Signed-off-by: Guido Günther <agx@sigxcpu.org>
-
Signed-off-by: Guido Günther <guido.gunther@puri.sm>
-
Signed-off-by: Guido Günther <guido.gunther@puri.sm>
-
Martin Kepplinger authored
-
This supports the Librem 5 and it's devkit
-
Martin Kepplinger authored
my devkit would stop with the following, exactly at the same time: [ 35.104345] PM: Adding info for No Bus:lo [ 35.327694] PM: Removing info for No Bus:lo [ 40.025566] 1v8_p: disabling [ 40.028468] 2v8_p: disabling [ 40.031406] buck1: disabling I'm not sure why. Others don't see this happening. if only buck1 is set to always-on, I get: [ 42.071568] buck2: disabling [ 42.075038] buck3: disabling and with buck1, buck2 and buck3 always-on I still get stopped at [ 42.071604] buck5: disabling
-
This message prints out on every dvfs transtion and fills the kernel log. Remove it. Signed-off-by: Angus Ainslie (Purism) <angus@akkea.ca>
-
Otherwise it breaks mipi (note by martin) should go upstream Signed-off-by: Guido Günther <guido.gunther@puri.sm>
-
This otherwise confuses mesa/drm which picks the wrong output.
-
(comment by martin) isn't this legacy just to make CI happy?
-
Somewhat based on the defconfig from Boundary Devices BSP. (comment by martin) isn't this legacy just to make CI happy?
-
-
Stephen Rothwell authored
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
-
Stephen Rothwell authored
-
Andi Kleen authored
The single caller passes a string to delta_ipc_open, which copies with a fixed size larger than the string. So it copies some random data after the original string the ro segment. If the string was at the end of a page it may fault. Just copy the string with a normal strcpy after clearing the field. Found by a LTO build (which errors out) because the compiler inlines the functions and can resolve the string sizes and triggers the compile time checks in memcpy. In function `memcpy', inlined from `delta_ipc_open.constprop' at linux/drivers/media/platform/sti/delta/delta-ipc.c:178:0, inlined from `delta_mjpeg_ipc_open' at linux/drivers/media/platform/sti/delta/delta-mjpeg-dec.c:227:0, inlined from `delta_mjpeg_decode' at linux/drivers/media/platform/sti/delta/delta-mjpeg-dec.c:403:0: /home/andi/lsrc/linux/include/linux/string.h:337:0: error: call to `__read_overflow2' declared with attribute error: detected read beyond size of object passed as 2nd parameter __read_overflow2(); Link: http://lkml.kernel.org/r/20171222001212.1850-1-andi@firstfloor.org Signed-off-by: Andi Kleen <ak@linux.intel.com> Cc: Hugues FRUCHET <hugues.fruchet@st.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
-
Andrew Morton authored
drivers/tty/serial/sh-sci.c: In function sci_dma_rx_submit: ./include/linux/spinlock.h:288:3: warning: flags may be used uninitialized in this function [-Wmaybe-uninitialized] _raw_spin_unlock_irqrestore(lock, flags); \ ^~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/tty/serial/sh-sci.c:1353:16: note: flags was declared here unsigned long flags; Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Cc: Jiri Slaby <jslaby@suse.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
-
Randy Dunlap authored
Add #include of <linux/pinctrl/machine.h> to fix build warnings in pinctrl-pxa2xx.c. Fixes these warnings: In file included from ../drivers/pinctrl/pxa/pinctrl-pxa2xx.c:24:0: ../drivers/pinctrl/pxa/../pinctrl-utils.h:36:8: warning: `enum pinctrl_map_type' declared inside parameter list [enabled by default] enum pinctrl_map_type type); ^ ../drivers/pinctrl/pxa/../pinctrl-utils.h:36:8: warning: its scope is only this definition or declaration, which is probably not what you want [enabled by default] Link: http://lkml.kernel.org/r/0024542e-cba9-8f13-6c18-32d0050a6007@infradead.org Signed-off-by: Randy Dunlap <rdunlap@infradead.org> Cc: Robert Jarzmik <robert.jarzmik@free.fr> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
-