03 Oct, 2016

1 commit


05 Sep, 2016

1 commit

  • A workaround for a warning introduced a use of the NO_IRQ
    macro that should have been gone for a long time.

    It is clear from the code that the value cannot actually
    be used, but apparently there was a configuration at
    some point that caused a warning, so instead of just
    reverting that patch, this rearranges the code in a way that
    the warning cannot reappear.

    Signed-off-by: Arnd Bergmann
    Fixes: 6ef41cf6f721 ("dmaengine :ipu: change ipu_irq_handler() to remove compile warning")
    Signed-off-by: Vinod Koul

    Arnd Bergmann
     

08 Aug, 2016

1 commit

  • This is in preperation of moving to a callback that provides results to the
    callback for the transaction. The conversion will maintain current behavior
    and the driver must convert to new callback mechanism at a later time in
    order to receive results.

    Signed-off-by: Dave Jiang
    Reviewed-by: Lars-Peter Clausen
    Signed-off-by: Vinod Koul

    Dave Jiang
     

16 Sep, 2015

1 commit

  • Most interrupt flow handlers do not use the irq argument. Those few
    which use it can retrieve the irq number from the irq descriptor.

    Remove the argument.

    Search and replace was done with coccinelle and some extra helper
    scripts around it. Thanks to Julia for her help!

    Signed-off-by: Thomas Gleixner
    Cc: Julia Lawall
    Cc: Jiang Liu

    Thomas Gleixner
     

28 Aug, 2015

1 commit


20 Aug, 2015

1 commit

  • set_irq_flags is ARM specific with custom flags which have genirq
    equivalents. Convert drivers to use the genirq interfaces directly, so we
    can kill off set_irq_flags. The translation of flags is as follows:

    IRQF_VALID -> !IRQ_NOREQUEST
    IRQF_PROBE -> !IRQ_NOPROBE
    IRQF_NOAUTOEN -> IRQ_NOAUTOEN

    For IRQs managed by an irqdomain, the irqdomain core code handles clearing
    and setting IRQ_NOREQUEST already, so there is no need to do this in
    .map() functions and we can simply remove the set_irq_flags calls. Some
    users also modify IRQ_NOPROBE and this has been maintained although it
    is not clear that is really needed. There appears to be a great deal of
    blind copy and paste of this code.

    Signed-off-by: Rob Herring
    Cc: Dan Williams
    Cc: Vinod Koul
    Cc: dmaengine@vger.kernel.org
    Signed-off-by: Vinod Koul

    Rob Herring
     

06 Aug, 2015

2 commits


16 Jul, 2015

2 commits


22 Dec, 2014

1 commit


20 Oct, 2014

1 commit


25 Jul, 2014

1 commit

  • Commit - 653e67f7e5: "dmaengine: inherit debug settings from the subsystem
    for subdirectories" introduced debug option for subdirectories too
    This exposed issue with ipu driver not using return value

    For now just warn users about it

    Reported-by: kbuild test robot
    Signed-off-by: Vinod Koul

    Vinod Koul
     

13 Nov, 2013

1 commit

  • This resolves a number of warnings such as the below when building with
    64-bit dma_addr_t on arm:

    drivers/dma/ipu/ipu_idmac.c:1235:2: warning: format '%x' expects argument
    of type 'unsigned int', but argument 5 has type 'dma_addr_t' [-Wformat=]

    ..by upcasting to u64 and using %llx.

    Signed-off-by: Olof Johansson
    Signed-off-by: Vinod Koul

    Olof Johansson
     

25 Aug, 2013

1 commit


05 Aug, 2013

1 commit


15 Apr, 2013

2 commits

  • Since commit 84c1e63c12 (dma: Remove erroneous __exit and __exit_p() references)
    the following section mismatch happens:

    WARNING: drivers/built-in.o(.text+0x20f94): Section mismatch in reference from the function ipu_remove() to the function .exit.text:ipu_idmac_exit()
    The function ipu_remove() references a function in an exit section.
    Often the function ipu_idmac_exit() has valid usage outside the exit section
    and the fix is to remove the __exit annotation of ipu_idmac_exit.

    Remove the '__exit' annotation from ipu_idmac_exit in order to fix it.

    Signed-off-by: Fabio Estevam
    Acked-by: Maxin B. John
    Signed-off-by: Vinod Koul

    Fabio Estevam
     
  • Removing the annotation with __exit and referencing with __exit_p()
    present in dma driver module remove hooks.

    Part of the __devexit and __devexit_p() purge.

    Signed-off-by: Maxin B. John
    Acked-by: Linus Walleij
    Signed-off-by: Vinod Koul

    Maxin B. John
     

12 Jan, 2013

1 commit


08 Jan, 2013

1 commit


15 Oct, 2012

1 commit

  • The header ipu.h really belongs to dma subsystem rather than imx
    platform. Rename it to ipu-dma.h and put it into include/linux/dma/.

    Signed-off-by: Shawn Guo
    Acked-by: Guennadi Liakhovetski
    Acked-by: Sascha Hauer
    Acked-by: Arnd Bergmann
    Cc: Vinod Koul
    Cc: Florian Tobias Schandinat
    Cc: linux-media@vger.kernel.org
    Cc: linux-fbdev@vger.kernel.org

    Shawn Guo
     

01 Jul, 2012

1 commit

  • The struct ipu_platform_data is used by platform code to pass
    MXC_IPU_IRQ_START to ipu-core driver. We can save it by having
    ipu-core driver call irq_alloc_descs to get the irq_base.

    Signed-off-by: Shawn Guo
    Acked-by: Vinod Koul
    Acked-by: Sascha Hauer
    Acked-by: Dong Aisheng

    Shawn Guo
     

25 Apr, 2012

1 commit


21 Mar, 2012

1 commit


13 Mar, 2012

5 commits


08 Dec, 2011

1 commit

  • The burstsize (npb in struct chan_param_mem) is set in
    ipu_ch_param_set_size() once. The number of allowed
    pixels in a burst depend on the pixel format and the
    rotation mode. For 16bit formats 16 pixels are allowed
    whereas for 32bit formats only 8 pixels are allowed.
    Set these values correctly in ipu_ch_param_set_size()
    and do not overwrite them afterwards.
    We do not support rotation right now, so ignore this
    case.
    This patch fixes the wrong burstsize setting of 16 pixels
    for 32bpp.

    Signed-off-by: Sascha Hauer
    Signed-off-by: Vinod Koul

    Sascha Hauer
     

17 Nov, 2011

1 commit


07 Nov, 2011

1 commit

  • * 'modsplit-Oct31_2011' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux: (230 commits)
    Revert "tracing: Include module.h in define_trace.h"
    irq: don't put module.h into irq.h for tracking irqgen modules.
    bluetooth: macroize two small inlines to avoid module.h
    ip_vs.h: fix implicit use of module_get/module_put from module.h
    nf_conntrack.h: fix up fallout from implicit moduleparam.h presence
    include: replace linux/module.h with "struct module" wherever possible
    include: convert various register fcns to macros to avoid include chaining
    crypto.h: remove unused crypto_tfm_alg_modname() inline
    uwb.h: fix implicit use of asm/page.h for PAGE_SIZE
    pm_runtime.h: explicitly requires notifier.h
    linux/dmaengine.h: fix implicit use of bitmap.h and asm/page.h
    miscdevice.h: fix up implicit use of lists and types
    stop_machine.h: fix implicit use of smp.h for smp_processor_id
    of: fix implicit use of errno.h in include/linux/of.h
    of_platform.h: delete needless include
    acpi: remove module.h include from platform/aclinux.h
    miscdevice.h: delete unnecessary inclusion of module.h
    device_cgroup.h: delete needless include
    net: sch_generic remove redundant use of
    net: inet_timewait_sock doesnt need
    ...

    Fix up trivial conflicts (other header files, and removal of the ab3550 mfd driver) in
    - drivers/media/dvb/frontends/dibx000_common.c
    - drivers/media/video/{mt9m111.c,ov6650.c}
    - drivers/mfd/ab3550-core.c
    - include/linux/dmaengine.h

    Linus Torvalds
     

04 Nov, 2011

1 commit


01 Nov, 2011

1 commit


27 Oct, 2011

1 commit

  • fixup usage of dma direction by introducing dma_transfer_direction,
    this patch moves dma/drivers/* to use new enum

    Cc: Jassi Brar
    Cc: Russell King
    Cc: Viresh Kumar
    Cc: Linus Walleij
    Cc: Nicolas Ferre
    Cc: Mika Westerberg
    Cc: H Hartley Sweeten
    Cc: Li Yang
    Cc: Zhang Wei
    Cc: Sascha Hauer
    Cc: Guennadi Liakhovetski
    Cc: Shawn Guo
    Cc: Yong Wang
    Cc: Tomoya MORINAGA
    Cc: Boojin Kim
    Cc: Barry Song
    Acked-by: Mika Westerberg
    Acked-by: Linus Walleij
    Acked-by: Viresh Kumar
    Acked-by: Nicolas Ferre
    Signed-off-by: Vinod Koul

    Vinod Koul
     

13 Sep, 2011

1 commit

  • The bank_lock can be taken in atomic context (irq handling)
    and therefore cannot be preempted on -rt - annotate it.

    In mainline this change documents the low level nature of
    the lock - otherwise there's no functional difference. Lockdep
    and Sparse checking will work as usual.

    Signed-off-by: Uwe Kleine-König
    Cc: kernel@pengutronix.de
    Cc: Guennadi Liakhovetski
    Cc: Dan Williams
    Link: http://lkml.kernel.org/r/1311949627-13260-1-git-send-email-u.kleine-koenig@pengutronix.de
    Signed-off-by: Thomas Gleixner
    Signed-off-by: Ingo Molnar

    Uwe Kleine-König
     

02 Aug, 2011

1 commit

  • * 'for-linus' of git://git.infradead.org/users/vkoul/slave-dma: (37 commits)
    Improve slave/cyclic DMA engine documentation
    dmaengine: pl08x: handle the rest of enums in pl08x_width
    DMA: PL08x: cleanup selection of burst size
    DMA: PL08x: avoid recalculating cctl at each prepare
    DMA: PL08x: cleanup selection of buswidth
    DMA: PL08x: constify plchan->cd and plat->slave_channels
    DMA: PL08x: separately store source/destination cctl
    DMA: PL08x: separately store source/destination slave address
    DMA: PL08x: clean up LLI debugging
    DMA: PL08x: select LLI bus only once per LLI setup
    DMA: PL08x: remove unused constants
    ARM: mxs-dma: reset after disable channel
    dma: intel_mid_dma: remove redundant pci_set_drvdata calls
    dma: mxs-dma: fix unterminated platform_device_id table
    dmaengine: pl330: make platform data optional
    dmaengine: imx-sdma: return proper error if kzalloc fails
    pch_dma: Fix CTL register access issue
    dmaengine: mxs-dma: skip request_irq for NO_IRQ
    dmaengine/coh901318: fix slave submission semantics
    dmaengine/ste_dma40: allow memory buswidth/burst to be configured
    ...

    Fix trivial whitespace conflict in drivers/dma/mv_xor.c

    Linus Torvalds
     

22 Jun, 2011

1 commit

  • Remove linux/mm.h inclusion from netdevice.h -- it's unused (I've checked manually).

    To prevent mm.h inclusion via other channels also extract "enum dma_data_direction"
    definition into separate header. This tiny piece is what gluing netdevice.h with mm.h
    via "netdevice.h => dmaengine.h => dma-mapping.h => scatterlist.h => mm.h".
    Removal of mm.h from scatterlist.h was tried and was found not feasible
    on most archs, so the link was cutoff earlier.

    Hope people are OK with tiny include file.

    Note, that mm_types.h is still dragged in, but it is a separate story.

    Signed-off-by: Alexey Dobriyan
    Signed-off-by: David S. Miller

    Alexey Dobriyan
     

06 Jun, 2011

1 commit


26 Mar, 2011

1 commit

  • Convert to the new irq chip functions and cleanup the name space.

    [ Guennadi reported: irq_data_get_chip_data is undefined. Yes, I screwed up.
    it needs to be irq_data_get_irq_chip_data ]

    Signed-off-by: Thomas Gleixner
    Tested-by: Guennadi Liakhovetski
    Cc: Dan Williams
    LKML-Reference:

    Thomas Gleixner