diff options
| author | Kukjin Kim <kgene.kim@samsung.com> | 2011-10-04 07:20:08 -0400 |
|---|---|---|
| committer | Kukjin Kim <kgene.kim@samsung.com> | 2011-10-04 07:20:08 -0400 |
| commit | 86f82da586098f16d92b5637808c323f5455e935 (patch) | |
| tree | 6397eb5550172b89d383254c7e4bca87ae4a8659 /arch/arm/mach-s5pc100 | |
| parent | db3c94a7edc6b29f8d52ba5884dec6a15feeadad (diff) | |
| parent | e90a0f3c460406d6a5a698016bc525c3e6968cb6 (diff) | |
Merge branch 'next-samsung-cleanup-2' into next-samsung-devel-2
Conflicts:
arch/arm/plat-s5p/include/plat/pll.h
Diffstat (limited to 'arch/arm/mach-s5pc100')
| -rw-r--r-- | arch/arm/mach-s5pc100/include/mach/clkdev.h | 7 | ||||
| -rw-r--r-- | arch/arm/mach-s5pc100/include/mach/pwm-clock.h | 56 | ||||
| -rw-r--r-- | arch/arm/mach-s5pc100/setup-sdhci.c | 42 |
3 files changed, 0 insertions, 105 deletions
diff --git a/arch/arm/mach-s5pc100/include/mach/clkdev.h b/arch/arm/mach-s5pc100/include/mach/clkdev.h deleted file mode 100644 index 7dffa83d23ff..000000000000 --- a/arch/arm/mach-s5pc100/include/mach/clkdev.h +++ /dev/null | |||
| @@ -1,7 +0,0 @@ | |||
| 1 | #ifndef __MACH_CLKDEV_H__ | ||
| 2 | #define __MACH_CLKDEV_H__ | ||
| 3 | |||
| 4 | #define __clk_get(clk) ({ 1; }) | ||
| 5 | #define __clk_put(clk) do {} while (0) | ||
| 6 | |||
| 7 | #endif | ||
diff --git a/arch/arm/mach-s5pc100/include/mach/pwm-clock.h b/arch/arm/mach-s5pc100/include/mach/pwm-clock.h deleted file mode 100644 index b34d2f7aae52..000000000000 --- a/arch/arm/mach-s5pc100/include/mach/pwm-clock.h +++ /dev/null | |||
| @@ -1,56 +0,0 @@ | |||
| 1 | /* linux/arch/arm/mach-s5pc100/include/mach/pwm-clock.h | ||
| 2 | * | ||
| 3 | * Copyright 2009 Samsung Electronics Co. | ||
| 4 | * Byungho Min <bhmin@samsung.com> | ||
| 5 | * | ||
| 6 | * S5PC100 - pwm clock and timer support | ||
| 7 | * | ||
| 8 | * Based on mach-s3c6400/include/mach/pwm-clock.h | ||
| 9 | */ | ||
| 10 | |||
| 11 | /** | ||
| 12 | * pwm_cfg_src_is_tclk() - return whether the given mux config is a tclk | ||
| 13 | * @tcfg: The timer TCFG1 register bits shifted down to 0. | ||
| 14 | * | ||
| 15 | * Return true if the given configuration from TCFG1 is a TCLK instead | ||
| 16 | * any of the TDIV clocks. | ||
| 17 | */ | ||
| 18 | static inline int pwm_cfg_src_is_tclk(unsigned long tcfg) | ||
| 19 | { | ||
| 20 | return tcfg >= S3C64XX_TCFG1_MUX_TCLK; | ||
| 21 | } | ||
| 22 | |||
| 23 | /** | ||
| 24 | * tcfg_to_divisor() - convert tcfg1 setting to a divisor | ||
| 25 | * @tcfg1: The tcfg1 setting, shifted down. | ||
| 26 | * | ||
| 27 | * Get the divisor value for the given tcfg1 setting. We assume the | ||
| 28 | * caller has already checked to see if this is not a TCLK source. | ||
| 29 | */ | ||
| 30 | static inline unsigned long tcfg_to_divisor(unsigned long tcfg1) | ||
| 31 | { | ||
| 32 | return 1 << tcfg1; | ||
| 33 | } | ||
| 34 | |||
| 35 | /** | ||
| 36 | * pwm_tdiv_has_div1() - does the tdiv setting have a /1 | ||
| 37 | * | ||
| 38 | * Return true if we have a /1 in the tdiv setting. | ||
| 39 | */ | ||
| 40 | static inline unsigned int pwm_tdiv_has_div1(void) | ||
| 41 | { | ||
| 42 | return 1; | ||
| 43 | } | ||
| 44 | |||
| 45 | /** | ||
| 46 | * pwm_tdiv_div_bits() - calculate TCFG1 divisor value. | ||
| 47 | * @div: The divisor to calculate the bit information for. | ||
| 48 | * | ||
| 49 | * Turn a divisor into the necessary bit field for TCFG1. | ||
| 50 | */ | ||
| 51 | static inline unsigned long pwm_tdiv_div_bits(unsigned int div) | ||
| 52 | { | ||
| 53 | return ilog2(div); | ||
| 54 | } | ||
| 55 | |||
| 56 | #define S3C_TCFG1_MUX_TCLK S3C64XX_TCFG1_MUX_TCLK | ||
diff --git a/arch/arm/mach-s5pc100/setup-sdhci.c b/arch/arm/mach-s5pc100/setup-sdhci.c index be25879bb2ee..6418c6e8a7b7 100644 --- a/arch/arm/mach-s5pc100/setup-sdhci.c +++ b/arch/arm/mach-s5pc100/setup-sdhci.c | |||
| @@ -11,17 +11,7 @@ | |||
| 11 | * published by the Free Software Foundation. | 11 | * published by the Free Software Foundation. |
| 12 | */ | 12 | */ |
| 13 | 13 | ||
| 14 | #include <linux/kernel.h> | ||
| 15 | #include <linux/types.h> | 14 | #include <linux/types.h> |
| 16 | #include <linux/interrupt.h> | ||
| 17 | #include <linux/platform_device.h> | ||
| 18 | #include <linux/io.h> | ||
| 19 | |||
| 20 | #include <linux/mmc/card.h> | ||
| 21 | #include <linux/mmc/host.h> | ||
| 22 | |||
| 23 | #include <plat/regs-sdhci.h> | ||
| 24 | #include <plat/sdhci.h> | ||
| 25 | 15 | ||
| 26 | /* clock sources for the mmc bus clock, order as for the ctrl2[5..4] */ | 16 | /* clock sources for the mmc bus clock, order as for the ctrl2[5..4] */ |
| 27 | 17 | ||
| @@ -31,35 +21,3 @@ char *s5pc100_hsmmc_clksrcs[4] = { | |||
| 31 | [2] = "sclk_mmc", /* mmc_bus */ | 21 | [2] = "sclk_mmc", /* mmc_bus */ |
| 32 | /* [3] = "48m", - note not successfully used yet */ | 22 | /* [3] = "48m", - note not successfully used yet */ |
| 33 | }; | 23 | }; |
| 34 | |||
| 35 | |||
| 36 | void s5pc100_setup_sdhci0_cfg_card(struct platform_device *dev, | ||
| 37 | void __iomem *r, | ||
| 38 | struct mmc_ios *ios, | ||
| 39 | struct mmc_card *card) | ||
| 40 | { | ||
| 41 | u32 ctrl2, ctrl3; | ||
| 42 | |||
| 43 | /* don't need to alter anything according to card-type */ | ||
| 44 | |||
| 45 | writel(S3C64XX_SDHCI_CONTROL4_DRIVE_9mA, r + S3C64XX_SDHCI_CONTROL4); | ||
| 46 | |||
| 47 | ctrl2 = readl(r + S3C_SDHCI_CONTROL2); | ||
| 48 | ctrl2 &= S3C_SDHCI_CTRL2_SELBASECLK_MASK; | ||
| 49 | ctrl2 |= (S3C64XX_SDHCI_CTRL2_ENSTAASYNCCLR | | ||
| 50 | S3C64XX_SDHCI_CTRL2_ENCMDCNFMSK | | ||
| 51 | S3C_SDHCI_CTRL2_ENFBCLKRX | | ||
| 52 | S3C_SDHCI_CTRL2_DFCNT_NONE | | ||
| 53 | S3C_SDHCI_CTRL2_ENCLKOUTHOLD); | ||
| 54 | |||
| 55 | if (ios->clock < 25 * 1000000) | ||
| 56 | ctrl3 = (S3C_SDHCI_CTRL3_FCSEL3 | | ||
| 57 | S3C_SDHCI_CTRL3_FCSEL2 | | ||
| 58 | S3C_SDHCI_CTRL3_FCSEL1 | | ||
| 59 | S3C_SDHCI_CTRL3_FCSEL0); | ||
| 60 | else | ||
| 61 | ctrl3 = (S3C_SDHCI_CTRL3_FCSEL1 | S3C_SDHCI_CTRL3_FCSEL0); | ||
| 62 | |||
| 63 | writel(ctrl2, r + S3C_SDHCI_CONTROL2); | ||
| 64 | writel(ctrl3, r + S3C_SDHCI_CONTROL3); | ||
| 65 | } | ||
