aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2011-12-26ARM: EXYNOS: Fix for suspend/resume hangInderpal Singh
While resuming from suspend, the system hangs due to some spurious uart interrupts. This patch temporarily masks uart interrupts during reset_port to solve this problem. Signed-off-by: Inderpal Singh <inderpal.singh@linaro.org>
2011-12-26ARM: EXYNOS: Enable RTC as wake up sourceInderpal Singh
Enable RTC as wake up source. Signed-off-by: Inderpal Singh <inderpal.singh@linaro.org>
2011-12-26ARM: dts: Add intial dts file for EXYNOS4210 SoC, SMDKV310 and ORIGENThomas Abraham
Add initial dts file for EXYNOS4210 SoC. This dts file describes the SoC specific devices and properties. Along with this, add dts file for Samsung's SMDKV310 board and Insignal's ORIGEN board which uses the EXYNOS4210 dts file and extends it to describe the board specific properties. Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org> Acked-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-12-26ARM: EXYNOS: Add Exynos4 device tree enabled board fileThomas Abraham
Add a new EXYNOS4 compatible device tree enabled board file. Boards based on the EXYNOS4 family of SoC's can use this as the machine/board file. When using this machine fike, a corresponding device tree blob which describes the board's properties should be supplied at boot time to the kernel. Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org> Acked-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-12-26rtc: rtc-s3c: Add device tree supportThomas Abraham
Add device tree based discovery support for Samsung's rtc controller. Cc: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org> Acked-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-12-26input: samsung-keypad: Add device tree supportThomas Abraham
Add device tree based discovery support for Samsung's keypad controller. Cc: Joonyoung Shim <jy0922.shim@samsung.com> Cc: Donghwa Lee <dh09.lee@samsung.com> Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org> Acked-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-12-26input: samsung-keypad: Add HAVE_SAMSUNG_KEYPAD config optionThomas Abraham
For platforms using device tree, the static keypad device instances are not required and SAMSUNG_DEV_KEYPAD is not selected. Since, samsung keypad driver has dependency on SAMSUNG_DEV_KEYPAD config option, the driver is left out of the compilation for dt enabled platforms. An additional config option 'HAVE_SAMSUNG_KEYPAD' is added which the device tree based platforms can select. This config option is added as an alternative dependency for keypad driver. Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-12-26ARM: S5PV210: Modify platform data for pl330 driverThomas Abraham
With the 'struct dma_pl330_peri' removed, the platfrom data for dma driver can be simplified to a simple list of peripheral request ids. Cc: Jassi Brar <jassisinghbrar@gmail.com> Acked-by: Boojin Kim <boojin.kim@samsung.com> Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-12-26ARM: S5PC100: Modify platform data for pl330 driverThomas Abraham
With the 'struct dma_pl330_peri' removed, the platfrom data for dma driver can be simplified to a simple list of peripheral request ids. Cc: Jassi Brar <jassisinghbrar@gmail.com> Acked-by: Boojin Kim <boojin.kim@samsung.com> Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-12-26ARM: S5P64x0: Modify platform data for pl330 driverThomas Abraham
With the 'struct dma_pl330_peri' removed, the platfrom data for dma driver can be simplified to a simple list of peripheral request ids. Cc: Jassi Brar <jassisinghbrar@gmail.com> Cc: Boojin Kim <boojin.kim@samsung.com> Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-12-26ARM: EXYNOS: Add a alias for pdma clocksThomas Abraham
PDMA controllers when instantiated from device tree are registered using amba_device_register(). The registration process enables clock to the controllers to read the peripheral id of the PDMA amba device. In case of Exynos4, the clocks to the PDMA controllers are named as 'dma' but amba_device_register() looks up the clock using the name 'apb_pclk'. Hence, alias clocks with name 'apb_pclk' clock are created for clocks with name 'dma'. Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-12-26ARM: EXYNOS: Limit usage of pl330 device instance to non-dt buildThomas Abraham
The pl330 device instances and associated platform data is required only for non-device-tree builds. With device tree enabled, the data about the platform is obtained from the device tree. For images that include both dt and non-dt platforms, an addditional check is added to ensure that static amba device registrations is applicable to only non-dt platforms. Cc: Kukjin Kim <kgene.kim@samsung.com> Cc: Kyungmin Park <kyungmin.park@samsung.com> Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org> Acked-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-12-26ARM: SAMSUNG: Add device tree support for pl330 dma engine wrappersThomas Abraham
A new dma request id 'DMACH_DT_PROP' is introduced for client drivers requesting a dma channel. This request indicates that a device tree node property represting the dma channel is available in 'struct samsung_dma_info'. The dma channel request wrapper uses the node property value as the value for the filter parameter. Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org> Acked-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-12-26DMA: PL330: Add device tree supportThomas Abraham
For PL330 dma controllers instantiated from device tree, the channel lookup is based on phandle of the dma controller and dma request id specified by the client node. During probe, the private data of each channel of the controller is set to point to the device node of the dma controller. The 'chan_id' of the each channel is used as the dma request id. Client driver requesting dma channels specify the phandle of the dma controller and the request id. The pl330 filter function converts the phandle to the device node pointer and matches that with channel's private data. If a match is found, the request id from the client node and the 'chan_id' of the channel is matched. A channel is found if both the values match. Acked-by: Jassi Brar <jassisinghbrar@gmail.com> Acked-by: Boojin Kim <boojin.kim@samsung.com> Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org> Reviewed-by: Rob Herring <rob.herring@calxeda.com> Acked-by: Grant Likely <grant.likely@secretlab.ca> Acked-by: Vinod Koul <vinod.koul@intel.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-12-26ARM: EXYNOS: Modify platform data for pl330 driverThomas Abraham
With the 'struct dma_pl330_peri' removed, the platfrom data for dma driver can be simplified to a simple list of peripheral request ids. Cc: Jassi Brar <jassisinghbrar@gmail.com> Acked-by: Boojin Kim <boojin.kim@samsung.com> Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org> Acked-by: Grant Likely <grant.likely@secretlab.ca> Acked-by: Vinod Koul <vinod.koul@intel.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-12-26DMA: PL330: Infer transfer direction from transfer request instead of ↵Thomas Abraham
platform data The transfer direction for a channel can be inferred from the transfer request and the need for specifying transfer direction in platfrom data can be eliminated. So the structure definition 'struct dma_pl330_peri' is no longer required. The channel's private data is set to point to a channel id specified in the platform data (instead of an instance of type 'struct dma_pl330_peri'). The filter function is correspondingly modified to match the channel id. With the 'struct dma_pl330_peri' removed from platform data, the dma controller transfer capabilities cannot be inferred any more. Hence, the dma controller capabilities is specified using platform data. Acked-by: Jassi Brar <jassisinghbrar@gmail.com> Acked-by: Boojin Kim <boojin.kim@samsung.com> Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org> Acked-by: Grant Likely <grant.likely@secretlab.ca> Acked-by: Vinod Koul <vinod.koul@intel.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-12-26DMA: PL330: move filter function into driverThomas Abraham
The dma channel selection filter function is moved from plat-samsung into the pl330 driver. In additon to that, a check is added in the filter function to ensure that the channel on which the filter has been invoked is pl330 channel instance (and avoid any incorrect access of chan->private in a system with multiple types of DMA drivers). Suggested-by: Russell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org> Acked-by: Jassi Brar <jassisinghbrar@gmail.com> Acked-by: Grant Likely <grant.likely@secretlab.ca> Acked-by: Vinod Koul <vinod.koul@intel.com> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-12-26serial: samsung: Fix build for non-Exynos4210 devicesMark Brown
exynos4120_serial_drv_data is only defined when building with support for Exynos4210 so use the already provided define to ensure that we don't reference it when building for other SoCs. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> [kgene.kim@samsung.com: Fixed build warning] Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-12-26serial: samsung: add device tree supportThomas Abraham
Add device tree based discovery support for Samsung's uart controller. Cc: Ben Dooks <ben-linux@fluff.org> Acked-by: Grant Likely <grant.likely@secretlab.ca> Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-12-26serial: samsung: merge probe() function from all SoC specific extensionsThomas Abraham
With reset port, set clock and get clock functions in SoC specific extentions being removed, only the driver probe is left over in these extensions. The probe function itself can be merged into one and moved into the samsung common serial driver. With driver probe also moved, all the SoC specific extentions are no longer required and they are deleted. Cc: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-12-26serial: samsung: merge all SoC specific port reset functionsThomas Abraham
The port reset function in each of the platform specific extension performs the same operations and hence all the reset port functions can be merged into one and moved into the common samsung uart driver. The SoC specific port reset functions are removed from SoC extensions. Cc: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-12-26ARM: SAMSUNG: register uart clocks to clock lookup listThomas Abraham
Samsung uart driver lookups the clock using the connection id 'clk_uart_baud'. The uart clocks for all Samsung platforms are reorganized to register them with the lookup name as required by the uart driver. Cc: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-12-26serial: samsung: remove all uses of get_clksrc and set_clksrcThomas Abraham
With clkdev based clock lookup support, the clock set and get operation using clock names communicated between the samsung uart driver and the SoC specific extension can be removed. In addition to that, for each platform specific extension, add the default clock selection, number of clock options for uart baud generator, clock selection bit mask and shift values which is required by the clkdev support in samsung uart driver. The default clock selection value 'def_clk_sel' specifies the default clock to be used as the source clock for baud rate generator in case the platform code does not specify the same. Cc: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-12-26ARM: SAMSUNG: remove struct 's3c24xx_uart_clksrc' and all uses of itThomas Abraham
With clkdev based clock lookup added to samsung serial driver, the use of 'struct s3c24xx_uart_clksrc' to supply clock names in platform data is removed from all the Samsung platform code. Cc: Ben Dooks <ben-linux@fluff.org> Cc: Ramax Lo <ramaxlo@gmail.com> Cc: Vasily Khoruzhick <anarsoul@gmail.com> Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-12-26serial: samsung: switch to clkdev based clock lookupThomas Abraham
Instead of using clock names supplied in platform data, use a generic clock name 'clk_uart_baud' to look up clocks. The platform code should register clocks with the name 'clk_uart_baud' which can be used by the baud rate generator. The clock lookup and selection of the best clock as baud rate clock is reworked. Platform code can specify the clocks that can be used as source for the baud clock (as supported previously by passing names of clocks). A new member is added to the platform data 'clk_sel' which holds a bit-field value with each bit representing a baud source clock. If a bit at any bit position is set, that clock is looked up to participate in the selection of the baud clock source. Cc: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-12-26ARM: S3C2440: move handling of fclk/n clock to platform codeThomas Abraham
s3c2440 uses fclk/n (fclk divided by n) clock as one of the possible clocks used to generate the baud rate clock. The divider 'n' in this case can be logically represented outside of the uart controller. This patch creates a new clock by name "fclk_n" for s3c2440 based platforms to represent the fclk/n clock in the platform code. This clock provides a get_rate callback that checks the UCON0/1/2 registers to determine the clock rate. The samsung uart driver would receive the "fclk_n" clock name as one of the possible baud rate clock options and the driver need not determine clock rate of fclk/n. Cc: Ben Dooks <ben-linux@fluff.org> Cc: Vasily Khoruzhick <anarsoul@gmail.com> Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-12-26serial: samsung: Keep a copy of the location of platform data in driver's ↵Thomas Abraham
private data Add a pointer to the location of the platform data in the driver's private data. When instantiated using device tree, pdev->dev->platform_data does not necessarily point to a valid instance of platform data. The platform data pointer in the driver's private data could be set to pdev->dev->platform_data or platform data instance created from device tree. Cc: Ben Dooks <ben-linux@fluff.org> Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-12-26gpio/samsung: Add device tree support for EXYNOS4Thomas Abraham
As gpio chips get registered, a device tree node which represents the gpio chip is searched and attached to it. A translate function is also provided to convert the gpio specifier into actual platform settings for pin function selection, pull up/down and driver strength settings. Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org> Acked-by: Grant Likely <grant.likely@secretlab.ca> [kgene.kim@samsung.com: fixed build error] Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-12-26ARM: EXYNOS: Enable conversion of GIC dt irq specifier to linux virqThomas Abraham
Enable conversion of device tree interrupt specifier to linux virq domain for GIC controller. Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-12-26ARM: EXYNOS: Add ioremap interceptor for statically remapped regionsThomas Abraham
ioremap() request for statically remapped regions are intercepted and the statically assigned virtual address is returned. For requests for which there are no statically remapped regions, the requests are let through. Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-12-26ARM: SAMSUNG: Move timer irq numbers to end of linux irq spaceThomas Abraham
The timer irqs statically mapped from linux irq numbers 11 to 15 are moved to the end of the statically mapped linux irq space. The GIC PPI and SPI interrupts are relocated to start from 16 and 32 of the linux irq space. This is a required to add device tree support for GIC and Interrupt combiner for EXYNOS4. A new macro 'IRQ_TIMER_BASE' specifies a platform specific base of the linux virq number for the timer interrupts. For exynos4, this base is set to end of the linux virq space. For the other S5P platforms, the existing base '11' is retained. Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org> Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-12-26CONFIG: ORIGEN: Enable CPU IdleTushar Behera
Signed-off-by: Tushar Behera <tushar.behera@linaro.org>
2011-12-26ARM: exynos4: remove useless code to save/restore L2 and GIC stateInderpal Singh
Following the merge of CPU PM notifiers and L2 resume code, this patch removes useless code to save and restore L2 and GIC registers. This is now automatically covered by suspend calls which integrated CPU PM notifiers and new sleep code that allows to resume L2 before MMU is turned on. Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> Signed-off-by: Amit Daniel Kachhap <amit.kachhap@linaro.org>
2011-12-26ARM: exynos4: add L2 early resume codeInderpal Singh
This patch adds code to save L2 register configuration at boot, and to resume L2 before MMU is enabled in suspend and cpuidle resume paths. Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> Signed-off-by: Amit Daniel Kachhap <amit.kachhap@linaro.org>
2011-12-26ARM: exynos4: remove useless churn in sleep.SInderpal Singh
This patch cleans up sleep code in preparation for L2 resume code and hotplug functions Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
2011-12-26ARM: exynos4: Add support for AFTR mode cpuidle stateInderpal Singh
This patch adds support for AFTR(ARM OFF TOP RUNNING) mode in cpuidle driver for EXYNOS4210. L2 cache keeps their data in this mode. This patch ports the code to the latest interfaces to save/restore CPU state inclusive of CPU PM notifiers, l2 resume and cpu_suspend/resume. Signed-off-by: Jaecheol Lee <jc.lee@samsung.com> Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> Signed-off-by: Amit Daniel Kachhap <amit.kachhap@linaro.org> Signed-off-by: Inderpal Singh <inderpal.singh@linaro.org>
2011-12-26ARM: SAMSUNG: Fix i2c0 device id to match with devnameInderpal Singh
With clkdev, the devname for i2c0 has been fixed to s3c2440-i2c.0 This patch changes the device id to match with devname. Without this patch clk get fails for i2c0 if CONFIG_S3C_DEV_I2C1 is not defined. Signed-off-by: Inderpal Singh <inderpal.singh@linaro.org>
2011-12-26gpu: drm: exynos: Include module.h to remove compilation errorsTushar Behera
Signed-off-by: Tushar Behera <tushar.behera@linaro.org>
2011-12-26CONFIG: ORIGEN: Add initial config file for ORIGEN boardTushar Behera
The config file is based on exynos4_defconfig. Following config options were added to enable various options. * Origen board uses UART 2 as the default serial port. * Enable MMC/SDHCI * Enable frame buffer on Origen * Enable PWM * Enable I2C bus controller * Enable regulator support * Enable CONFIG_PRINTK_TIME * Enable gpio-button driver on Origen * Set SD/MMC card as un-removable * Enabled USB EHCI host * Enable USB-host mass storage support * Enable USB ethernet support * Enable Pegasus USB-ethernet dongle support * Enable MOSCHIP usb net dongle * Enable EXT3 and EXT4 file system Signed-off-by: Tushar Behera <tushar.behera@linaro.org> Signed-off-by: Pankaj Dubey <pankaj.dubey@samsung.com> Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org> Signed-off-by: Sangwook Lee <sangwook.lee@linaro.org>
2011-12-26revert upstream suspend destruction patchJaswinder Singh
Signed-off-by: Jaswinder Singh <jaswinder.singh@linaro.org>
2011-12-26workaround cma highmem brokenAndy Green
Signed-off-by: Andy Green <andy.green@linaro.org>
2011-12-26tiler highmem includeAndy Green
Signed-off-by: Andy Green <andy.green@linaro.org>
2011-12-26add tiler linaro test statusAndy Green
Signed-off-by: Andy Green <andy.green@linaro.org>
2011-12-26Tiler: Change tiler_mmap from uncached to writecombineSebastien Jan
This is a suggestion from Rob Clark. Purpose is to reduce load for copying bitstream into codec input buffer. Signed-off-by: Sebastien Jan <s-jan@ti.com>
2011-12-26TILER: fix SSPtr default value to 1Sebastien Jan
Signed-off-by: Sebastien Jan <s-jan@ti.com>
2011-12-26OMAP:TILER: Add debugfs interfaces for TilerLajos Molnar
Added <debugfs>/tiler/map/2x1 file which contains the TILER container map subsampled 2x1. Reading this file will perform a dump of the tiler container. Added <debugfs/tiler/alloc_debug debugfs parameter. Setting this parameter to a non-zero value will cause debug prints for each area allocation and deallocation. Signed-off-by: Lajos Molnar <molnar@ti.com> Signed-off-by: Andy Gross<andy.gross@ti.com>
2011-12-26TILER: Fix a use-after free errorIliyan Malchev
Removed errant usage of previously freed memory in unregister buffer ioctl. Signed-off-by: Iliyan Malchev <malchev@google.com> Signed-off-by: Andy Gross <andy.gross@ti.com>
2011-12-26TILER: Make userspace API support a configurable optionAndy Gross
Added kernel configuration option for enabling userspace ioctl interfaces. If set, ioctl support will be enabled in the driver. Signed-off-by: Andy Gross <andy.gross@ti.com>
2011-12-26TILER: Make tiler nv12 support a configuration optionAndy Gross
The tiler driver now allows for configuring the nv12 support as a kernel configuration option. If enabled, nv12 support will be compiled into the driver. Signed-off-by: Andy Gross <andy.gross@ti.com>
2011-12-26TILER: Refactor function names to resemble actual functionalityAndy Gross
Change references of mapping to pinning where applicable, so that the new function names resemble more closer to the actual functionality. Signed-off-by: Andy Gross <andy.gross@ti.com>