]> rtime.felk.cvut.cz Git - zynq/linux.git/log
zynq/linux.git
10 years agowatchdog: zynq: XWDTPS_DEFAULT_TIMEOUT is setup in watchdog_device
Michal Simek [Tue, 12 Nov 2013 11:38:01 +0000 (12:38 +0100)]
watchdog: zynq: XWDTPS_DEFAULT_TIMEOUT is setup in watchdog_device

Default value is already setup in zyqn_wdt_device.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
10 years agowatchdog: zynq: Remove busy flag
Michal Simek [Tue, 12 Nov 2013 11:37:16 +0000 (12:37 +0100)]
watchdog: zynq: Remove busy flag

This variable is not used in any sensible way.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
10 years agowatchdog: zynq: Remove unneeded header
Michal Simek [Tue, 12 Nov 2013 11:35:48 +0000 (12:35 +0100)]
watchdog: zynq: Remove unneeded header

miscdevice shouldn't be used anymore.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
10 years agonet: xilinx_emacps: Fix PTP peer register offsets
Michal Simek [Tue, 12 Nov 2013 10:08:54 +0000 (11:08 +0100)]
net: xilinx_emacps: Fix PTP peer register offsets

Probably c&p error.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Acked-by: Punnaiah Choudary Kalluri <punnaia@xilinx.com>
10 years agowatchdog: zynq: Rename xwdtps to zynq_wdt
Michal Simek [Mon, 11 Nov 2013 17:52:28 +0000 (18:52 +0100)]
watchdog: zynq: Rename xwdtps to zynq_wdt

Rename all xwdtps occurences and use zynq.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
10 years agowatchdog: xilinx: Use xilinx_ prefix
Michal Simek [Mon, 11 Nov 2013 17:11:08 +0000 (18:11 +0100)]
watchdog: xilinx: Use xilinx_ prefix

For xilinx soft IPs xilinx_ prefix should be used
for functions and structures.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
10 years agowatchdog: xilinx: Fix OF binding
Michal Simek [Mon, 11 Nov 2013 16:17:55 +0000 (17:17 +0100)]
watchdog: xilinx: Fix OF binding

Use of_property_read_u32 functions to clean OF probing.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
10 years agowatchdog: xilinx: Fix all printk messages
Michal Simek [Mon, 11 Nov 2013 16:10:02 +0000 (17:10 +0100)]
watchdog: xilinx: Fix all printk messages

Use dev_ functions for printk messages.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
10 years agowatchdog: xilinx: Allocate private structure per device
Michal Simek [Mon, 11 Nov 2013 15:45:04 +0000 (16:45 +0100)]
watchdog: xilinx: Allocate private structure per device

Only one watchdog could be used by this driver.
Create driver private data structure and move there
all variables for one instance.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
10 years agowatchdog: xilinx: Move no_timeout to probe function
Michal Simek [Mon, 11 Nov 2013 16:05:05 +0000 (17:05 +0100)]
watchdog: xilinx: Move no_timeout to probe function

no_timeout should be local variable because it is used
only in probe function.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
10 years agowatchdog: xilinx: Simplify probe and remove functions
Michal Simek [Mon, 11 Nov 2013 15:47:29 +0000 (16:47 +0100)]
watchdog: xilinx: Simplify probe and remove functions

Use devm_ helper function to simplify probe and error path.
Move ioremap to the beginning of probe function.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
10 years agowatchdog: xilinx: Move control_status_reg to functions
Michal Simek [Mon, 11 Nov 2013 15:40:37 +0000 (16:40 +0100)]
watchdog: xilinx: Move control_status_reg to functions

control_status_reg is temp variables and should be
used locally by specific function.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
10 years agowatchdog: xilinx: Convert driver to the watchdog framework
Michal Simek [Mon, 11 Nov 2013 15:34:40 +0000 (16:34 +0100)]
watchdog: xilinx: Convert driver to the watchdog framework

- Remove uneeded headers, fops functions
- Use xilinx_wdt prefix in start/stop/keepalive functions
  and in new structures

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
---
MODULE_ALIAS_MISCDEV will be removed in next.

10 years agoUSB: c67x00: Clean probe function and OF binding
Michal Simek [Fri, 8 Nov 2013 13:09:15 +0000 (14:09 +0100)]
USB: c67x00: Clean probe function and OF binding

- Use devm_ helper function
- Fix OF binding
- Clear driver error path

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
10 years agodma: xilinx: vdma: Clean driver probe function
Michal Simek [Fri, 8 Nov 2013 12:07:29 +0000 (13:07 +0100)]
dma: xilinx: vdma: Clean driver probe function

- Remove unneeded error message for devm_kzalloc

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
10 years agodrm: xilinx: plane: Add the return code to xilinx_drm_plane_init_manager()
Hyun Kwon [Fri, 4 Oct 2013 22:18:59 +0000 (15:18 -0700)]
drm: xilinx: plane: Add the return code to xilinx_drm_plane_init_manager()

Add the return code to the proto type of xilinx_drm_plane_init_manager()
to detect the error from xilinx_drm_format().

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
Acked-by: Michal Simek <michal.simek@xilinx.com>
10 years agodrm: xilinx: drv: Add xilinx_drm_format()
Hyun Kwon [Fri, 4 Oct 2013 02:10:45 +0000 (19:10 -0700)]
drm: xilinx: drv: Add xilinx_drm_format()

Add xilinx_drm_format() which converts the xilinx video format to
the drm format. Replace the previously defined osd video format
with this function / formats. This function can be used by other
sub-drivers.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
10 years agodrm: xilinx: vtc: Remove xilinx_vtc_remove()
Hyun Kwon [Sat, 19 Oct 2013 01:10:50 +0000 (18:10 -0700)]
drm: xilinx: vtc: Remove xilinx_vtc_remove()

Remove xilinx_vtc_remove() as devm_* managed functions are used
in xilinx_vtc.c.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
10 years agodrm: xilinx: rgb2yuv: Remove xilinx_rgb2yuv_remove()
Hyun Kwon [Fri, 4 Oct 2013 01:53:20 +0000 (18:53 -0700)]
drm: xilinx: rgb2yuv: Remove xilinx_rgb2yuv_remove()

Remove xilinx_rgb2yuv_remove() as devm_* managed functions are used
in xilinx_rgb2yuv.c.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
10 years agodrm: xilinx: osd: Remove xilinx_osd_remove()
Hyun Kwon [Fri, 4 Oct 2013 01:49:31 +0000 (18:49 -0700)]
drm: xilinx: osd: Remove xilinx_osd_remove()

Remove xilinx_osd_remove() as devm_* managed functions are used
in xilinx_osd.c.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
10 years agodrm: xilinx: cresample: Remove xilinx_cresample_remove()
Hyun Kwon [Fri, 4 Oct 2013 01:44:51 +0000 (18:44 -0700)]
drm: xilinx: cresample: Remove xilinx_cresample_remove()

xilinx_cresample_remove() is not needed as devm_* managed functions are used.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
10 years agodrm: xilinx: plane: Check framebuffer format with plane format
Hyun Kwon [Fri, 4 Oct 2013 21:39:58 +0000 (14:39 -0700)]
drm: xilinx: plane: Check framebuffer format with plane format

In xilinx_drm_plane_mode_set(), check the framebuffer format
with the plane format before setting the plane with the framebuffer.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
Acked-by: Michal Simek <michal.simek@xilinx.com>
10 years agodrm: xilinx: plane: Remove unused formats variable
Hyun Kwon [Fri, 4 Oct 2013 21:37:11 +0000 (14:37 -0700)]
drm: xilinx: plane: Remove unused formats variable

Remove unused the xilinx_drm_plane_formats variable.
The plane format is detected based on the pipeline configuration,
instead of using static variables.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
Acked-by: Michal Simek <michal.simek@xilinx.com>
10 years agodrm: xilinx: crtc: Remove unneccessary labels
Hyun Kwon [Sat, 19 Oct 2013 01:08:43 +0000 (18:08 -0700)]
drm: xilinx: crtc: Remove unneccessary labels

Remove unnecessary labels.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
Acked-by: Michal Simek <michal.simek@xilinx.com>
10 years agozynq: Add drm/v4l2 dts and defconfig
Michal Simek [Fri, 8 Nov 2013 08:54:42 +0000 (09:54 +0100)]
zynq: Add drm/v4l2 dts and defconfig

Add new defconfig and dts file.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
10 years agov4l: xilinx: Add Video Remapper driver
Laurent Pinchart [Tue, 21 May 2013 16:08:09 +0000 (18:08 +0200)]
v4l: xilinx: Add Video Remapper driver

The remapper is a non-configurable IP core that remaps the video bus
data lines. The driver includes a list of mappings and exposes them
through the get and set media bus format operations.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Michal Simek <michal.simek@xilinx.com>
10 years agov4l: xilinx: Add Test Pattern Generator driver
Laurent Pinchart [Wed, 15 May 2013 14:36:56 +0000 (16:36 +0200)]
v4l: xilinx: Add Test Pattern Generator driver

The TPG generates multiple static or dynamic test patterns. The driver
currently hardcodes the pattern to the moving box pattern.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Michal Simek <michal.simek@xilinx.com>
10 years agozynq: defconfig: Synchronize defconfigs
Michal Simek [Fri, 8 Nov 2013 08:52:48 +0000 (09:52 +0100)]
zynq: defconfig: Synchronize defconfigs

New video IPs introduce new Kconfig option.
Fix affected defconfigs.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
10 years agov4l: xilinx: Add Xilinx Video IP core
Laurent Pinchart [Wed, 15 May 2013 14:36:19 +0000 (16:36 +0200)]
v4l: xilinx: Add Xilinx Video IP core

Xilinx Zynq platforms have no hardwired camera interface. Users create
camera pipelines in the FPGA fabric to suit their particular needs, by
instantiating video IP cores from a large library.

The Xilinx Video IP core is a framework that models a video pipeline
described in the device tree and expose the pipeline to userspace
through the media controller and V4L2 APIs.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Michal Simek <michal.simek@xilinx.com>
10 years agov4l: Add YUYV10 and YUYV12 on 24 bits bus formats
Laurent Pinchart [Fri, 17 May 2013 15:32:46 +0000 (17:32 +0200)]
v4l: Add YUYV10 and YUYV12 on 24 bits bus formats

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
10 years agov4l: Add RGB 8:8:8 media bus format on 24 and 32 bit busses
Laurent Pinchart [Wed, 15 May 2013 14:34:26 +0000 (16:34 +0200)]
v4l: Add RGB 8:8:8 media bus format on 24 and 32 bit busses

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
10 years agov4l: of: Add v4l2_of_parse_link() function
Laurent Pinchart [Fri, 17 May 2013 10:31:04 +0000 (12:31 +0200)]
v4l: of: Add v4l2_of_parse_link() function

The function fills a link data structure with the device node and port
number at both the local and remote ends of a link defined by one of its
endpoint nodes.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
10 years agov4l: of: Drop endpoint node reference in v4l2_of_get_remote_port()
Laurent Pinchart [Fri, 17 May 2013 10:31:04 +0000 (12:31 +0200)]
v4l: of: Drop endpoint node reference in v4l2_of_get_remote_port()

The v4l2_of_get_remote_port() function acquires a reference to an
endpoint node through a phandle and then returns the node's parent,
without dropping the reference to the endpoint node. Fix it.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
10 years agov4l: of: Remove struct v4l2_of_endpoint remote field
Laurent Pinchart [Fri, 17 May 2013 10:31:04 +0000 (12:31 +0200)]
v4l: of: Remove struct v4l2_of_endpoint remote field

The field isn't set when parsing the endpoint. Remove it.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
10 years agov4l: of: Return an int in v4l2_of_parse_endpoint()
Laurent Pinchart [Fri, 17 May 2013 10:31:04 +0000 (12:31 +0200)]
v4l: of: Return an int in v4l2_of_parse_endpoint()

When CONFIG_OF is not defined the v4l2_of_parse_endpoint() function is
defined as a stub that returns -ENOSYS. Make the real function return an
integer as well to be able to differentiate between the two cases.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
10 years agov4l: of: Drop acquired reference to node when getting next endpoint
Laurent Pinchart [Wed, 3 Jul 2013 02:05:51 +0000 (23:05 -0300)]
v4l: of: Drop acquired reference to node when getting next endpoint

The of_get_child_by_name() function takes a reference to the node it
returns. Make sure to drop it when looking for the ports node in
v4l2_of_get_next_endpoint().

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
10 years agov4l: of: Use of_get_child_by_name()
Laurent Pinchart [Wed, 3 Jul 2013 02:04:25 +0000 (23:04 -0300)]
v4l: of: Use of_get_child_by_name()

Replace a manual loop through child nodes with a call to
of_get_child_by_name().

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
10 years agov4l2-async: Use proper list head for iteration over registered subdevs
Sylwester Nawrocki [Wed, 31 Jul 2013 16:10:18 +0000 (13:10 -0300)]
v4l2-async: Use proper list head for iteration over registered subdevs

This fixes regression introduced in commit b426b3a660c85faf6e1ca1c92c6d
[media] V4L: Merge struct v4l2_async_subdev_list with struct v4l2_subdev

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
10 years agov4l: async: Make it safe to unregister unregistered notifier
Laurent Pinchart [Wed, 3 Jul 2013 10:49:06 +0000 (07:49 -0300)]
v4l: async: Make it safe to unregister unregistered notifier

Calling v4l2_async_notifier_unregister() on a notifier that hasn't been
registered leads to a crash. To simplify drivers, make it safe to
unregister a notifier that has not been registered.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Tested-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Acked-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
10 years agoV4L: Merge struct v4l2_async_subdev_list with struct v4l2_subdev
Sylwester Nawrocki [Mon, 22 Jul 2013 11:01:33 +0000 (08:01 -0300)]
V4L: Merge struct v4l2_async_subdev_list with struct v4l2_subdev

By integrating the v4l2-async API internals a bit more with
the core overall the v4l2-async code becomes a bit simpler
and easier to follow.
Acked-and-tested-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
10 years agoV4L: Rename subdev field of struct v4l2_async_notifier
Sylwester Nawrocki [Fri, 19 Jul 2013 15:31:10 +0000 (12:31 -0300)]
V4L: Rename subdev field of struct v4l2_async_notifier

This is a purely cosmetic change. Since the 'subdev' member
points to an array of subdevs make it more explicit by
renaming to the plural form.
Acked-and-tested-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
10 years agoV4L: Add V4L2_ASYNC_MATCH_OF subdev matching type
Sylwester Nawrocki [Fri, 19 Jul 2013 15:21:29 +0000 (12:21 -0300)]
V4L: Add V4L2_ASYNC_MATCH_OF subdev matching type

Add support for matching by device_node pointer. This allows
the notifier user to simply pass a list of device_node pointers
corresponding to sub-devices.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
10 years agoV4L: Rename v4l2_async_bus_* to v4l2_async_match_*
Sylwester Nawrocki [Fri, 19 Jul 2013 15:14:46 +0000 (12:14 -0300)]
V4L: Rename v4l2_async_bus_* to v4l2_async_match_*

enum v4l2_async_bus_type also selects a method subdevs are matched
in the notification handlers, rename it to v4l2_async_match_type
so V4L2_ASYNC_MATCH_OF entry can be further added for matching by
device tree node pointer.
Acked-and-tested-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
10 years agoV4L: Drop bus_type check in v4l2-async match functions
Sylwester Nawrocki [Fri, 19 Jul 2013 15:08:08 +0000 (12:08 -0300)]
V4L: Drop bus_type check in v4l2-async match functions

These match_* functions are internal callbacks and are always
invoked only after checking asd->bus_type. So drop redundant
checks in match_i2c() and match_platform() functions.
Acked-and-tested-by: Lad, Prabhakar <prabhakar.csengg@gmail.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
10 years agodrm: xilinx: Add a Xilinx DRM KMS driver to Makefile/Kconfig
Hyun Kwon [Fri, 20 Sep 2013 02:43:11 +0000 (19:43 -0700)]
drm: xilinx: Add a Xilinx DRM KMS driver to Makefile/Kconfig

Enable and Add a Xilinx DRM KMS driver to Makefile/Kconfig.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
Acked-by: Michal Simek <michal.simek@xilinx.com>
10 years agodrm: xilinx: Add a Xilinx DRM KMS driver
Hyun Kwon [Fri, 20 Sep 2013 02:41:16 +0000 (19:41 -0700)]
drm: xilinx: Add a Xilinx DRM KMS driver

This patch adds a Xilixn DRM driver which uses Xilinx crtc/encoder/connector
supports. This patch completes the DRM KMS framework interfaces with
Xilinx DRM driver specific functions / other helper functions(CMA).

Now CMA helper functions are used to allocate framebuffers,
and CONFIG_CMA_SIZE_MBYTES must be configured properly to ensure
the enough amount of configure memory for framebuffers.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
Acked-by: Michal Simek <michal.simek@xilinx.com>
10 years agodrm: xilinx: Add a crtc support
Hyun Kwon [Fri, 20 Sep 2013 02:40:34 +0000 (19:40 -0700)]
drm: xilinx: Add a crtc support

The crtc is supposed to read a pixel data from framebuffers, and
propagates data to the encoders. It also provides some event such as
vblank/pageflip. In this implementation, this patches manages
cresample, rgb2yuv, and vtc, and a crtc gets a one private plane to use.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
Acked-by: Michal Simek <michal.simek@xilinx.com>
10 years agodrm: xilinx: Add an encoder support
Hyun Kwon [Fri, 20 Sep 2013 02:39:11 +0000 (19:39 -0700)]
drm: xilinx: Add an encoder support

This patch adds an encoder support of Xilinx DRM KMS. The encoder is
supposed to be in charge of encoding the pixel data in certain video formats.
For now, adv7511 HDMI transmitter is the only hardware used for
Xilinx DRM KMS, and this patch has some dependency on adv7511 drm driver.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
Acked-by: Michal Simek <michal.simek@xilinx.com>
10 years agodrm: xilinx: Add a connector support
Hyun Kwon [Fri, 20 Sep 2013 02:38:11 +0000 (19:38 -0700)]
drm: xilinx: Add a connector support

This patch adds a connector support of Xilinx DRM KMS.
For now, adv7511 HDMI transmitter is the only hardware that manages
connections with display devices, and this patch has dependency on adv7511
drm driver.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
Acked-by: Michal Simek <michal.simek@xilinx.com>
10 years agodrm: xilinx: Add a plane support
Hyun Kwon [Fri, 20 Sep 2013 02:36:12 +0000 (19:36 -0700)]
drm: xilinx: Add a plane support

This patch adds a plane support of Xilinx DRM KMS driver.
This enables the multi-plane rendering support of the hardware pipeline.
To enable multi-plane support, the hardware composer such as OSD should be
configured properly in the hardware pipeline, and additional dma IPs may
be needed. Otherwise, only the single plane is available,
and a single plane is not exposed to user.

For current implementation, this patch depends on VDMA through dmaengine API,
and an osd sub-driver(xilinx_osd.c/h).

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
Acked-by: Michal Simek <michal.simek@xilinx.com>
10 years agodrm: xilinx: Add a Video Timing Controller(VTC) driver
Hyun Kwon [Fri, 20 Sep 2013 02:35:25 +0000 (19:35 -0700)]
drm: xilinx: Add a Video Timing Controller(VTC) driver

This patch adds a Video Timing Controller driver. This IP provides
the video timings such as active, sync,, to video IPs.
The clock source for such as si570 should be connected to this IP.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
Acked-by: Michal Simek <michal.simek@xilinx.com>
10 years agodrm: xilinx: Add a RGB to YCrCb(RGB2YUV) converter driver
Hyun Kwon [Fri, 20 Sep 2013 02:34:28 +0000 (19:34 -0700)]
drm: xilinx: Add a RGB to YCrCb(RGB2YUV) converter driver

This patch adds a driver for RGB to YCrCb IP. This IP provides
the color space conversion from RGB to YUV formats.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
Acked-by: Michal Simek <michal.simek@xilinx.com>
10 years agodrm: xilinx: Add an On Screen Display(OSD) Driver
Hyun Kwon [Fri, 20 Sep 2013 02:33:11 +0000 (19:33 -0700)]
drm: xilinx: Add an On Screen Display(OSD) Driver

This patch adds an OSD driver. The OSD supports alpha blending and
compositing, and such features enables the muti-plane rendering of
the display pipelines.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
Acked-by: Michal Simek <michal.simek@xilinx.com>
10 years agodrm: xilinx: Add a Chroma Resampler driver
Hyun Kwon [Fri, 20 Sep 2013 02:30:34 +0000 (19:30 -0700)]
drm: xilinx: Add a Chroma Resampler driver

Add a chroma resampler driver as a sub-driver of Xilinx DRM KMS dirver.
This IP provides the chroma sub-sampling between YCrCb formats
(4:4:4, 4:2:2, and 4:2:0).

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
Acked-by: Michal Simek <michal.simek@xilinx.com>
10 years agodrm: xilinx: Add a Xilinx DRM KMS common header file
Hyun Kwon [Fri, 20 Sep 2013 02:22:50 +0000 (19:22 -0700)]
drm: xilinx: Add a Xilinx DRM KMS common header file

Add a common header file, xilinx_drm_drv.h, for sub-drivers.
This header includes simple IO function wrappers.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
Acked-by: Michal Simek <michal.simek@xilinx.com>
10 years agodma: xilinx: vdma: Add xilinx_vdma_chan_reset() function
Hyun Kwon [Wed, 2 Oct 2013 22:48:06 +0000 (15:48 -0700)]
dma: xilinx: vdma: Add xilinx_vdma_chan_reset() function

As interrupts are enabled in xilinx_vdma_chan_probe(),
interrupts should be re-enabled anytime when a vdma channle gets reset.
Add xilinx_vdma_chan_reset() which resets a vdma channel by calling
xilinx_vdma_reset(), and re-enables interrupts.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Don't disable interrupts at runtime
Hyun Kwon [Wed, 2 Oct 2013 22:46:52 +0000 (15:46 -0700)]
dma: xilinx: vdma: Don't disable interrupts at runtime

Enable interrupts when a channel is probed, and disable interrupts
only when a channel is removed. Re-enable interrupts
when a channel gets reset.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Use the error code from xilinx_vdma_reset()
Hyun Kwon [Thu, 5 Sep 2013 18:21:17 +0000 (11:21 -0700)]
dma: xilinx: vdma: Use the error code from xilinx_vdma_reset()

Use the error code from xilinx_vdma_reset().

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Clear error flag when resetting the DMA engine
Laurent Pinchart [Tue, 18 Jun 2013 00:53:03 +0000 (02:53 +0200)]
dma: xilinx: vdma: Clear error flag when resetting the DMA engine

Resetting the DMA engine clears the hardware error conditions. Clear the
software error flag as well.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Poll the status register when starting/stopping
Laurent Pinchart [Tue, 18 Jun 2013 00:53:03 +0000 (02:53 +0200)]
dma: xilinx: vdma: Poll the status register when starting/stopping

After setting or clearing the run/stop bit in the control register, the
DMA engine run status is reflected by the halted bit in the status
register. Fix the driver to poll the halted bit instead of polling the
run/stop bit.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Handle unrecoverable errors in interrupt handler
Laurent Pinchart [Tue, 18 Jun 2013 00:20:35 +0000 (02:20 +0200)]
dma: xilinx: vdma: Handle unrecoverable errors in interrupt handler

Make sure unrecoverable errors are properly flagged with an appropriate
error message.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Clean up interrupt handler
Laurent Pinchart [Mon, 17 Jun 2013 23:56:28 +0000 (01:56 +0200)]
dma: xilinx: vdma: Clean up interrupt handler

Read the status register once only, and only acknowledge interrupts that
have been detected.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Replace pr_debug() with dev_err()
Laurent Pinchart [Mon, 17 Jun 2013 23:55:10 +0000 (01:55 +0200)]
dma: xilinx: vdma: Replace pr_debug() with dev_err()

Replace the two pr_debug() calls with dev_err() calls, as they indicate
an error condition.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Support queuing multiple transactions
Laurent Pinchart [Thu, 23 May 2013 11:53:35 +0000 (13:53 +0200)]
dma: xilinx: vdma: Support queuing multiple transactions

Create a xilinx_vdma_tx_descriptor structure and use it model DMA
transactions. A transaction can contain several segments, and multiple
transactions can be prepared and submitted without waiting for the
previous transactions to complete.

Replace the active descriptors list with an active descriptor pointer,
and add a new complete descriptors list to store complete descriptors
that need to be handed back to the client.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Simplify interrupt handler
Laurent Pinchart [Thu, 23 May 2013 18:40:29 +0000 (20:40 +0200)]
dma: xilinx: vdma: Simplify interrupt handler

Perform actions directly instead of setting intermediate variables only
to test them right afterwards.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Split xilinx_vdma_free_chan_resources() function
Laurent Pinchart [Wed, 11 Sep 2013 10:08:40 +0000 (12:08 +0200)]
dma: xilinx: vdma: Split xilinx_vdma_free_chan_resources() function

The xilinx_vdma_free_chan_resources() function frees both the
descriptors and the descriptors pool. Split the descriptors freeing code
into a separate function to increase code reuse.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Rename xilinx_vdma_desc_sw to xilinx_vdma_tx_segment
Laurent Pinchart [Thu, 23 May 2013 11:54:45 +0000 (13:54 +0200)]
dma: xilinx: vdma: Rename xilinx_vdma_desc_sw to xilinx_vdma_tx_segment

The structure describes one scatter-gather segment from a transaction,
rename it accordingly.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Configure the hardware when starting the transfer
Laurent Pinchart [Thu, 23 May 2013 11:48:17 +0000 (13:48 +0200)]
dma: xilinx: vdma: Configure the hardware when starting the transfer

Set the XILINX_VDMA_REG_HSIZE and XILINX_VDMA_REG_FRMDLY_STRIDE
registers when starting the transfer, not when preparing the request.
This is needed to allow several requests to be prepared and submitted
for execution.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Call xilinx_vdma_start_transfer() directly
Laurent Pinchart [Thu, 23 May 2013 11:45:09 +0000 (13:45 +0200)]
dma: xilinx: vdma: Call xilinx_vdma_start_transfer() directly

The function pointer is currently stored in the channel structure
start_transfer field and called indirectly. As the start_transfer field
always points to the same function, remove it and call
xilinx_vdma_start_transfer() directly.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Remove the xilinx_vdma_config direction field
Laurent Pinchart [Thu, 23 May 2013 10:52:19 +0000 (12:52 +0200)]
dma: xilinx: vdma: Remove the xilinx_vdma_config direction field

The direction is fixed for a given channel, there's not need to pass it
through the configuration structure.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Split xilinx_vdma_device_control() function
Laurent Pinchart [Wed, 22 May 2013 22:28:16 +0000 (00:28 +0200)]
dma: xilinx: vdma: Split xilinx_vdma_device_control() function

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Remove unneeded error checking
Laurent Pinchart [Wed, 22 May 2013 22:06:48 +0000 (00:06 +0200)]
dma: xilinx: vdma: Remove unneeded error checking

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Rename all functions to use the xilinx_vdma_ prefix
Laurent Pinchart [Wed, 22 May 2013 22:06:48 +0000 (00:06 +0200)]
dma: xilinx: vdma: Rename all functions to use the xilinx_vdma_ prefix

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Rename vdma_init() to vdma_reset()
Laurent Pinchart [Wed, 22 May 2013 21:24:12 +0000 (23:24 +0200)]
dma: xilinx: vdma: Rename vdma_init() to vdma_reset()

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Remove desc_dump function
Laurent Pinchart [Wed, 22 May 2013 21:24:12 +0000 (23:24 +0200)]
dma: xilinx: vdma: Remove desc_dump function

The function is unused, remove it.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Reorganize probe functions
Laurent Pinchart [Wed, 22 May 2013 21:24:12 +0000 (23:24 +0200)]
dma: xilinx: vdma: Reorganize probe functions

Group initialization statements by type.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Don't increment the DMA engine channel count
Laurent Pinchart [Wed, 22 May 2013 21:08:00 +0000 (23:08 +0200)]
dma: xilinx: vdma: Don't increment the DMA engine channel count

The counter is updated by dma_async_device_register(), don't increment
it manually.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Turn the channel has_dre field into a local variable
Laurent Pinchart [Wed, 22 May 2013 20:59:51 +0000 (22:59 +0200)]
dma: xilinx: vdma: Turn the channel has_dre field into a local variable

The field value is assigned and used locally only, replace it with a
local variable.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Turn channel flush_fsync field into a bool
Laurent Pinchart [Wed, 22 May 2013 20:57:08 +0000 (22:57 +0200)]
dma: xilinx: vdma: Turn channel flush_fsync field into a bool

The field stores a boolean, make it bool.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Deconstruct feature fields
Laurent Pinchart [Wed, 22 May 2013 20:54:21 +0000 (22:54 +0200)]
dma: xilinx: vdma: Deconstruct feature fields

Store features in dedicated fields or process them directly instead of
storing them in a bitfield only to read them back right afterwards.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
10 years agodma: xilinx: vdma: Device is always compatible with xlnx,axi-vdma
Laurent Pinchart [Wed, 22 May 2013 20:44:16 +0000 (22:44 +0200)]
dma: xilinx: vdma: Device is always compatible with xlnx,axi-vdma

The xilinx-axivdma driver only supports VDMA devices. There is no need
to test for compatibility.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Use of_property_read_u32() to read u32 DT properties
Laurent Pinchart [Wed, 22 May 2013 20:35:10 +0000 (22:35 +0200)]
dma: xilinx: vdma: Use of_property_read_u32() to read u32 DT properties

Replace the of_get_property() calls with of_property_read_u32() DT
properties that store a single unsigned integer.

Return an error when the xlnx,device-id or xlnx,num-fstores property
isn't set.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Make boolean DT properties real bools
Laurent Pinchart [Wed, 22 May 2013 20:32:55 +0000 (22:32 +0200)]
dma: xilinx: vdma: Make boolean DT properties real bools

Turn the xlnx,include-sg, xlnx,genlock-mode and xlnx,include-dre DT
properties into bool properties and use of_property_read_bool() to parse
them.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Replace custom my_log() function with fls()
Laurent Pinchart [Wed, 22 May 2013 14:43:56 +0000 (16:43 +0200)]
dma: xilinx: vdma: Replace custom my_log() function with fls()

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Reorder headers alphabetically
Laurent Pinchart [Wed, 22 May 2013 14:43:30 +0000 (16:43 +0200)]
dma: xilinx: vdma: Reorder headers alphabetically

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Remove unused struct xilinx_vdma_device irq field
Laurent Pinchart [Thu, 23 May 2013 17:36:26 +0000 (19:36 +0200)]
dma: xilinx: vdma: Remove unused struct xilinx_vdma_device irq field

The field is unused, remove it.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Remove initialized channels when channel probe fails
Laurent Pinchart [Wed, 25 Sep 2013 19:30:46 +0000 (21:30 +0200)]
dma: xilinx: vdma: Remove initialized channels when channel probe fails

If a channel fails to probe correctly when need to clean up the already
initialized channels. Check the return value of xilinx_vdma_chan_probe()
and call xilinx_vdma_chan_remove() on all previously initialized
channels in case of failure.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Handle reset timeouts when probing channel
Laurent Pinchart [Wed, 25 Sep 2013 19:27:58 +0000 (21:27 +0200)]
dma: xilinx: vdma: Handle reset timeouts when probing channel

Make the vdma_init() function return a proper error code, and propagate
it to the caller of xilinx_vdma_chan_probe() when vdma_init() fails.
This fixes returning an uninitialized error value to the probe function.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Used managed I/O mapping function
Laurent Pinchart [Wed, 22 May 2013 14:28:59 +0000 (16:28 +0200)]
dma: xilinx: vdma: Used managed I/O mapping function

Replace the of_iomap() call with a combination of
platform_get_resource() and devm_request_and_ioremap().

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Use devm_* managers allocators
Laurent Pinchart [Wed, 22 May 2013 14:12:25 +0000 (16:12 +0200)]
dma: xilinx: vdma: Use devm_* managers allocators

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Use register offsets
Laurent Pinchart [Tue, 21 May 2013 00:04:48 +0000 (02:04 +0200)]
dma: xilinx: vdma: Use register offsets

Clean up all the register-related macros and replace the register data
structures with register offsets.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Replace I/O accessor macros with static inlines
Laurent Pinchart [Mon, 20 May 2013 20:34:44 +0000 (22:34 +0200)]
dma: xilinx: vdma: Replace I/O accessor macros with static inlines

Beside improving type-safety, this will help debugging by allowing easy
logging on register read and write.

Also add two new clr() and set() accessors to respectively clear and set
bit fields to improve readability.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Remove disable_intr support
Laurent Pinchart [Tue, 21 May 2013 00:05:51 +0000 (02:05 +0200)]
dma: xilinx: vdma: Remove disable_intr support

The client must not control whether interrupts should be enabled. Remove
that.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Don't reconfigure channel after reset
Laurent Pinchart [Mon, 20 May 2013 23:03:23 +0000 (01:03 +0200)]
dma: xilinx: vdma: Don't reconfigure channel after reset

VDMA users usually don't supply channel configuration parameter when
requesting a reset. The driver would then reconfigure the channel with
random parameters. Avoid this by returning immediately after resetting
the channel. Users will reconfigure it afterwards anyway.

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Register DMA controller to DT
Laurent Pinchart [Wed, 15 May 2013 14:18:20 +0000 (16:18 +0200)]
dma: xilinx: vdma: Register DMA controller to DT

Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agodma: xilinx: vdma: Remove unused variables
Hyun Kwon [Thu, 5 Sep 2013 18:12:06 +0000 (11:12 -0700)]
dma: xilinx: vdma: Remove unused variables

Remove sg_waiting, max_len, and is_lite variables in struct xilinx_vdma_chan
which are not used anywhere.

Signed-off-by: Hyun Kwon <hyunk@xilinx.com>
Acked-by: Srikanth Thokala <sthokal@xilinx.com>
10 years agoclocksource/cadence_ttc: Adjust interval in clock notifier
Soren Brinkmann [Tue, 29 Oct 2013 22:51:48 +0000 (15:51 -0700)]
clocksource/cadence_ttc: Adjust interval in clock notifier

The clockevent has to be reprogrammed if the timer's input
clock frequency changes and the timer is in periodic mode, in order to
maintain the correct timer interval.

Signed-off-by: Soren Brinkmann <soren.brinkmann@xilinx.com>
10 years agoclocksource/cadence_ttc: Store timer frequency in driver data
Soren Brinkmann [Tue, 29 Oct 2013 21:10:40 +0000 (14:10 -0700)]
clocksource/cadence_ttc: Store timer frequency in driver data

It is not allowed to call clk_get_rate() from interrupt context. To
avoid such calls the timer input frequency is stored in the driver's
data struct which makes it accessible to the driver in any context.

Signed-off-by: Soren Brinkmann <soren.brinkmann@xilinx.com>
10 years agoclocksource/cadence_ttc: Remove clocksource clock notifier
Soren Brinkmann [Tue, 22 Oct 2013 22:03:53 +0000 (15:03 -0700)]
clocksource/cadence_ttc: Remove clocksource clock notifier

The clocksource's clock notifier tried to keep the clocksource frequency
adjusted when the input clock changed. The approach included rather
heavy operations and results in a deadlock on current kernels (the
clocksource is unregistered and re-registered with the new frequency).
Removing the notifier keeps the system operational on cost of timing
being off.

Signed-off-by: Soren Brinkmann <soren.brinkmann@xilinx.com>
10 years agoARM: zynq: remove unnecessary setting of cpu_present_mask
Sudeep KarkadaNagesha [Tue, 23 Jul 2013 11:32:44 +0000 (12:32 +0100)]
ARM: zynq: remove unnecessary setting of cpu_present_mask

This patch also removes setting cpu_present_mask as platforms should
only re-initialize it in smp_prepare_cpus() if present != possible.

Cc: Michal Simek <michal.simek@xilinx.com>
Signed-off-by: Sudeep KarkadaNagesha <sudeep.karkadanagesha@arm.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>