Commit Graph

264340 Commits

Author SHA1 Message Date
Heiko Stuebner
f9f7c7503f ARM: S3C2443: handle unset armdiv values gracefully
The armdiv array may contain unset divider values.
Check the relevant value to prevent division by zero
errors. Also check for set nr_armdiv and armdivmask
before meddling with clkdiv0.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-14 15:15:52 +09:00
Heiko Stuebner
5f33bd76f5 ARM: S3C2443: Add get_rate operation for clk_armdiv
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-14 15:15:51 +09:00
Heiko St?bner
efb1fb486a ARM: S3C2416: Add comment describing the armdiv/armclk
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-14 15:15:50 +09:00
Heiko St?bner
aab08eebdf ARM: S3C2443: Move clk_arm and clk_armdiv to common code
The system-layout of the armdiv and armclk is common to
S3C2443/S3C2416/S3C2450 and only differs in the array of
possible dividers. Therefore it is possible to reuse the
clock definitions for all of these SoCs.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-14 15:15:49 +09:00
Heiko Stuebner
d9a3bfbd7e ARM: S3C24XX: Add infrastructure to transmit armdiv to common code
This is needed for making the armdiv clock common to S3C2443
and S3C2416/2450.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-14 15:15:49 +09:00
Heiko Stuebner
0d23d059da ARM: S3C2416: Add armdiv_mask constant
The S3C2416/2450 has only 3 bits for the armdiv setting instead
of the 4 bits of the S3C2443.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-14 15:15:48 +09:00
Sylwester Nawrocki
716e84d139 ARM: EXYNOS4: Add support for M-5MOLS camera on Nuri board
Add voltage regulator and platform data definition for M-5MOLS sensor
and MIPI-CSI receiver drivers. Add CAM power domain dependencies for
FIMC device and set up camera port A GPIO. Configure I2C0 bus timings.

Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: HeungJun Kim <riverful.kim@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-14 15:15:47 +09:00
Sachin Kamat
df74a28c7a ARM: EXYNOS4: Enable MFC on ORIGEN
This patch enables multi-format codec (MFC) support on ORIGEN board.

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-14 15:15:46 +09:00
Heiko Stuebner
35cc3cea2c ARM: SAMSUNG: Add support s3c2416-adc for S3C2416/S3C2450
The ADC of the S3C2416/2450 SoC is 10 or 12 bit wide, has its
source selection in the register base+0x18 and its width
selection in bit 03 of the ADCCON register.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-14 15:15:42 +09:00
Heiko Stuebner
6247cea2b9 ARM: SAMSUNG: Add support s3c2443-adc for S3C2443
The S3C2443-adc is 10 bit wide and has its mux-select
in an extra register at base+0x18

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-14 15:15:18 +09:00
Heiko Stuebner
f8c414b516 ARM: SAMSUNG: Allow overriding of adc device name for S3C24XX
The adc blocks of S3C2443 and S3C2416 contain quirks not present
in the stock S3C24xx adc. Therefore allow them to alter the
device name via s3c_adc_setname.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-12 21:34:42 +09:00
Heiko Stuebner
df303e0236 ARM: SAMSUNG: Fix mux bit modification in s3c_adc_select
The mux bits in the adccon register should be cleared only
if muxing is really done in ADCCON and not another register.

This patch introduces a conditional for this.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-12 21:34:41 +09:00
Heiko Stuebner
18c55cd466 ARM: SAMSUNG: Add adc registers for S3C2443/S3C2416
The adc blocks of the S3C2443 and S3C2416 define some
additional registers and bits.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-12 21:34:32 +09:00
Tushar Behera
c034b18459 gpio/samsung: Move SoC specific codes within macro
In drivers/gpio/gpio-samsung.c, there are certain structures
and functions which are not getting used if the particular
CPU is not selected. These code segments are moved under CPU
specific macros to remove compilation warnings.

Signed-off-by: Tushar Behera <tushar.behera@linaro.org>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-12 21:20:13 +09:00
Thomas Abraham
b82cee2436 gpio/samsung: Fix incorrect gpio pull up/down callback for EXYNOS4
Some of the gpio chips of exynos4 are assigned a default gpio config without
the exynos4 specific pull up/down callbacks which resulted in incorrect
setting of pull up/down configuration.

Fix this by adding two new exynos4 specific entries in the array of default
configs with set_pull and get_pull callbacks set to exynos4 specific callbacks
The new default gpio configs can then be used for exynos4 gpio chips.

Signed-off-by: Thomas Abraham <thomas.abraham@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-12 20:53:09 +09:00
Mark Brown
6700397a81 ARM: S3C64XX: Enable TCM support
The S3C64xx CPUs have TCMs so enable the kernel support for it
on these systems.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-12 20:52:48 +09:00
Peter Korsgaard
8a8ab2e64e gpio/samsung: only register available gpio banks
Only register gpio banks provided by SoC instead of the maximum possible
to lessen confusion, get rid of a warning from gpiolib and stop it from
eating into the extra gpios for configs with S3C24XX_GPIO_EXTRA != 0.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-12 20:52:47 +09:00
Peter Korsgaard
ce19de0293 ARM: S3C2410: fix S3C_GPIO_SPACE #error message to match reality
S3C_GPIO_SPACE cannont be NON-zero, not zero.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-12 20:52:46 +09:00
Kukjin Kim
ad98aaed75 ARM: EXYNOS4: Remove useless codes on NURI board
The 'nuri_cm_devices' is defined but not used.

Cc: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-12 19:26:24 +09:00
Sachin Kamat
f0e38e3354 ARM: EXYNOS4: Register power domains on ORIGEN
This patch registers all the available power domains on ORIGEN board.

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-12 19:26:02 +09:00
Sachin Kamat
5dfb1aa53e ARM: EXYNOS4: Enable regulator support for HDMI on ORIGEN
Since the DC5V line is connected directly to the HDMI connector,
"hdmi-en" regulator would become a dummy regulator on origen board
(by defining REGULATOR_DUMMY in the kernel config file).

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-12 19:25:41 +09:00
Abhilash Kesavan
6b6844dd54 ARM: S5P64X0: Add Power Management support
Add suspend-to-ram support for SMDK6440/50

Signed-off-by: Abhilash Kesavan <a.kesavan@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-04 20:31:24 +09:00
Abhilash Kesavan
e2e13621b2 ARM: S5P: Make the sleep code common for S5P series SoCs
The sleep code for S5PV210 and EXYNOS4 are identical; moreover
S5p64X0 and S5PC100 for which support will be added soon can
use the same procedure. Create a common sleep code in the plat-s5p
directory so that it can be re-used.

Signed-off-by: Abhilash Kesavan <a.kesavan@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-04 20:25:51 +09:00
Abhilash Kesavan
0da3beadcb ARM: S5P: Make the common S5P PM code conditionally compile
Pave the way for adding PM support on S5P64X0, which is more similar
to the S3C64XX series than the S5P series. Hence, the common pm code
(containing dummy functions) should not be used for S5P64X0.

Signed-off-by: Abhilash Kesavan <a.kesavan@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-04 20:25:51 +09:00
Kukjin Kim
a1a9107def Merge branch 'next-samsung-board-2' into next-samsung-devel-2 2011-10-04 20:20:21 +09:00
Kukjin Kim
86f82da586 Merge branch 'next-samsung-cleanup-2' into next-samsung-devel-2
Conflicts:
	arch/arm/plat-s5p/include/plat/pll.h
2011-10-04 20:20:08 +09:00
Kukjin Kim
db3c94a7ed Merge branch 'next-samsung-devel' into next-samsung-devel-2
Conflicts:
	arch/arm/mach-exynos4/clock.c
	arch/arm/mach-s3c2412/gpio.c
	arch/arm/mach-s5p64x0/dma.c
	arch/arm/mach-s5p64x0/gpiolib.c
2011-10-04 20:18:36 +09:00
Kukjin Kim
c9477f38cb Merge branch 'next-samsung-board' into next-samsung-devel-2 2011-10-04 20:14:11 +09:00
Kukjin Kim
c37b250462 Merge branch 'next-samsung-cleanup' into next-samsung-devel-2 2011-10-04 20:14:06 +09:00
Kukjin Kim
e90a0f3c46 ARM: SAMSUNG: Move S5P header files to plat-samsung
This patch moves header files from plat-s5p to plat-samsung to
remove plat-s5p directory to make one plat-samsung directory
for Samsung SoCs.

Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-04 19:48:45 +09:00
Kukjin Kim
dc98e4145d ARM: SAMSUNG: Move S3C24XX header files to plat-samsung
This patch moves header files from plat-s3c24xx to plat-samsung to
remove plat-s3c24xx directory to make one plat-samsung directory for
Samsung SoCs. And this patch includes fixing coding style, too.

Cc: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-04 19:48:44 +09:00
Kukjin Kim
3cd7b62bbd ARM: SAMSUNG: Moving each SoC support header files
This patch moves SoC header files for supporting each SoCs to
plat-samsung directory. This is required to make one plat-
directory for Samsung SoCs.

Cc: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-04 19:48:43 +09:00
Kukjin Kim
52e329ebb0 ARM: SAMSUNG: Consolidate plat/pll.h
Removed
- arch/arm/plat-s3c24xx/include/plat/pll.h
- arch/arm/mach-s3c64xx/include/mach/pll.h
- arch/arm/plat-s5p/include/plat/pll.h
- arch/arm/plat-samsung/include/plat/pll6553x.h

And created
- arch/arm/plat-samsung/include/plat/pll.h

Cc: Ben Dooks <ben-linux@fluff.org>
[kgene.kim@samsung.com: changed title]
[kgene.kim@samsung.com: fixed conflicts in plat-s5p/include/pll.h]
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-04 19:48:42 +09:00
Kukjin Kim
c0468b0244 ARM: SAMSUNG: Consolidate plat/pwm-clock.h
Removed
 - arch/arm/plat-s3c24xx/include/mach/pwm-clock.h
 - arch/arm/mach-s3c64xx/include/mach/pwm-clock.h
 - arch/arm/mach-s5p64x0/include/mach/pwm-clock.h
 - arch/arm/mach-s5pc100/include/mach/pwm-clock.h
 - arch/arm/mach-s5pv210/include/mach/pwm-clock.h
 - arch/arm/mach-exynos4/include/mach/pwm-clock.h

And created
 - arch/arm/plat-samsung/include/plat/pwm-clock.h

Cc: Ben Dooks <ben-linux@fluff.org>
[kgene.kim@samsung.com: changed title]
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-04 19:48:41 +09:00
Kukjin Kim
4b2656fe49 ARM: SAMSUNG: Cleanup mach/clkdev.h
According to commit a3831cf ("ARM: Consolidate the
clkdev header files"), current mach/clkdev.h is no
needed in Samsung stuff.

Cc: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-04 19:48:41 +09:00
Thomas Abraham
909ceef682 ARM: SAMSUNG: remove sdhci default configuration setup platform helper
The sdhci platform helper function that sets up the default controller
configuration is removed for all Samsung platforms since such default
controller configuration can be handled by the 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-10-04 19:48:40 +09:00
Sachin Kamat
568f0e278c ARM: EXYNOS4: Add FIMC device on SMDKV310 board
This patch adds definitions to enable support for s5p-fimc driver on
SMDKV310 board.

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-04 19:01:44 +09:00
Sachin Kamat
2543bf097d ARM: EXYNOS4: Add header file protection macros
This patch adds header file protection macros to prevent duplication.

Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-04 19:01:39 +09:00
Jingoo Han
9830f6a20d ARM: EXYNOS4: Add usb ehci device to the SMDKV310
This patch is to support usb ehci device to the SMDKV310 board.

Signed-off-by: Jingoo Han <jg1.han@samsung.com>
Signed-off-by: Sachin Kamat <sachin.kamat@linaro.org>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-04 19:01:35 +09:00
Heiko Stuebner
8b069b7709 ARM: S3C2443: Add hsspi-clock from pclk and rename S3C2443 hsspi sclk
This clock is common to S3C2443/2416/2450.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-04 19:01:29 +09:00
Heiko Stuebner
4a43c66612 ARM: S3C2416: Add HSSPI clock sourced from EPLL
This clock is special to the S3C2416/2450 SoCs.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-04 19:01:22 +09:00
Heiko Stuebner
bd95be618b ARM: S3C2443: Define constant for HSSPI pclk
It's the same clock for 2443/2416/2450.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-04 19:01:16 +09:00
Heiko Stuebner
e3b454f731 ARM: S3C2443: Move i2s clock definitions to common code
S3C2416/S3C2450 use the same clocks for their i2s blocks
and can therefore reuse the existing ones.

Signed-off-by: Heiko Stuebner <heiko@sntech.de>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-04 19:01:10 +09:00
Ajay Kumar
7301794c87 ARM: S5P6450: Add LCD-LTE480 and enable Framebuffer support
This patch:
	-- Adds platform device support for LCD-LTE480.
	-- Adds platform data for FB with win_mode and default_bpp.
	-- Enables FB device support and platform-lcd support.
	-- Adds SPCON settings for LCD.

Signed-off-by: Ajay Kumar <ajaykumar.rs@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-04 19:01:04 +09:00
Ajay Kumar
1030e5c562 ARM: S5P6440: Add LCD-LTE480 and enable Framebuffer support
This patch:
	-- Adds platform device support for LCD-LTE480.
	-- Adds platform data for FB with win_mode and default_bpp.
	-- Enables FB device support and platform-lcd support.
	-- Adds SPCON settings for LCD.

Signed-off-by: Ajay Kumar <ajaykumar.rs@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-04 19:00:59 +09:00
Ajay Kumar
c9f357ef9d ARM: S5P64X0: Add GPIO setup for LCD
This patch adds GPIO lines settings(HSYNC, VSYNC, VCLK and VD) for LCD.

Signed-off-by: Ajay Kumar <ajaykumar.rs@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-04 19:00:53 +09:00
Ajay Kumar
43c4621666 ARM: S5P64X0: Set s3c_device_fb name
Set s3c_device_fb name as "s5p64x0-fb" for S5P6440 and S5P6450.

Signed-off-by: Ajay Kumar <ajaykumar.rs@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-04 19:00:47 +09:00
Ajay Kumar
d93f5eefd4 ARM: S5P64X0: Add register base and IRQ for Framebuffer
This patch adds:
	-- Framebuffer related register mappings and bit fields.
	-- IRQ number being used.

Signed-off-by: Ajay Kumar <ajaykumar.rs@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-04 19:00:39 +09:00
Hatim Ali
c0735c85d1 ARM: EXYNOS4: Add TVOUT support for SMDKV310
Add support for TVOUT on SMDKV310 board.

Signed-off-by: Hatim Ali <hatim.rv@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-04 19:00:32 +09:00
Mark Brown
2ca9576935 ASoC: Flush Samsung DMA on free
Ever since it was written the Samsung DMA driver has had a TODO in the
hw_free() function wondering if we need to flush the DMA buffers. Up until
now the answer has been no but with the recent improvements Boojin has
done to the DMA infrastructure for the Samsung port the answer has changed
to yes for at least S3C6410 systems.

If we don't then when we next prepare() the channel the API will get
confused trying to run callbacks on the transfers hanging around from the
previous time the stream was open and oops.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Boojin Kim <boojin.kim@samsung.com>
Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
2011-10-04 18:59:44 +09:00