diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-08-08 14:00:26 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-08-08 14:00:26 -0400 |
commit | 44c916d58b9ef1f2c4aec2def57fa8289c716a60 (patch) | |
tree | e4c886dd0948eefeed883f66c9a21f39a5731103 /drivers/mtd | |
parent | 889fa782bf8ebe7c0d0ed0a9429bf43197f0f64e (diff) | |
parent | c4846a7823bfd34ecb2dc56b025e19285432d08d (diff) |
Merge tag 'cleanup-for-3.17' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
Pull ARM SoC cleanups from Olof Johansson:
"This merge window brings a good size of cleanups on various platforms.
Among the bigger ones:
- Removal of Samsung s5pc100 and s5p64xx platforms. Both of these
have lacked active support for quite a while, and after asking
around nobody showed interest in keeping them around. If needed,
they could be resurrected in the future but it's more likely that
we would prefer reintroduction of them as DT and
multiplatform-enabled platforms instead.
- OMAP4 controller code register define diet. They defined a lot of
registers that were never actually used, etc.
- Move of some of the Tegra platform code (PMC, APBIO, fuse,
powergate) to drivers/soc so it can be shared with 64-bit code.
This also converts them over to traditional driver models where
possible.
- Removal of legacy gpio-samsung driver, since the last users have
been removed (moved to pinctrl)
Plus a bunch of smaller changes for various platforms that sort of
dissapear in the diffstat for the above. clps711x cleanups, shmobile
header file refactoring/moves for multiplatform friendliness, some
misc cleanups, etc"
* tag 'cleanup-for-3.17' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (117 commits)
drivers: CCI: Correct use of ! and &
video: clcd-versatile: Depend on ARM
video: fix up versatile CLCD helper move
MAINTAINERS: Add sdhci-st file to ARCH/STI architecture
ARM: EXYNOS: Fix build breakge with PM_SLEEP=n
MAINTAINERS: Remove Kirkwood
ARM: tegra: Convert PMC to a driver
soc/tegra: fuse: Set up in early initcall
ARM: tegra: Always lock the CPU reset vector
ARM: tegra: Setup CPU hotplug in a pure initcall
soc/tegra: Implement runtime check for Tegra SoCs
soc/tegra: fuse: fix dummy functions
soc/tegra: fuse: move APB DMA into Tegra20 fuse driver
soc/tegra: Add efuse and apbmisc bindings
soc/tegra: Add efuse driver for Tegra
ARM: tegra: move fuse exports to soc/tegra/fuse.h
ARM: tegra: export apb dma readl/writel
ARM: tegra: Use a function to get the chip ID
ARM: tegra: Sort includes alphabetically
ARM: tegra: Move includes to include/soc/tegra
...
Diffstat (limited to 'drivers/mtd')
-rw-r--r-- | drivers/mtd/onenand/Kconfig | 4 | ||||
-rw-r--r-- | drivers/mtd/onenand/samsung.c | 25 |
2 files changed, 3 insertions, 26 deletions
diff --git a/drivers/mtd/onenand/Kconfig b/drivers/mtd/onenand/Kconfig index ab2607273e80..dcae2f6a2b11 100644 --- a/drivers/mtd/onenand/Kconfig +++ b/drivers/mtd/onenand/Kconfig | |||
@@ -32,10 +32,10 @@ config MTD_ONENAND_OMAP2 | |||
32 | 32 | ||
33 | config MTD_ONENAND_SAMSUNG | 33 | config MTD_ONENAND_SAMSUNG |
34 | tristate "OneNAND on Samsung SOC controller support" | 34 | tristate "OneNAND on Samsung SOC controller support" |
35 | depends on ARCH_S3C64XX || ARCH_S5PC100 || ARCH_S5PV210 || ARCH_EXYNOS4 | 35 | depends on ARCH_S3C64XX || ARCH_S5PV210 || ARCH_EXYNOS4 |
36 | help | 36 | help |
37 | Support for a OneNAND flash device connected to an Samsung SOC. | 37 | Support for a OneNAND flash device connected to an Samsung SOC. |
38 | S3C64XX/S5PC100 use command mapping method. | 38 | S3C64XX uses command mapping method. |
39 | S5PC110/S5PC210 use generic OneNAND method. | 39 | S5PC110/S5PC210 use generic OneNAND method. |
40 | 40 | ||
41 | config MTD_ONENAND_OTP | 41 | config MTD_ONENAND_OTP |
diff --git a/drivers/mtd/onenand/samsung.c b/drivers/mtd/onenand/samsung.c index efb819c3df2f..19cfb97adbc0 100644 --- a/drivers/mtd/onenand/samsung.c +++ b/drivers/mtd/onenand/samsung.c | |||
@@ -10,7 +10,7 @@ | |||
10 | * published by the Free Software Foundation. | 10 | * published by the Free Software Foundation. |
11 | * | 11 | * |
12 | * Implementation: | 12 | * Implementation: |
13 | * S3C64XX and S5PC100: emulate the pseudo BufferRAM | 13 | * S3C64XX: emulate the pseudo BufferRAM |
14 | * S5PC110: use DMA | 14 | * S5PC110: use DMA |
15 | */ | 15 | */ |
16 | 16 | ||
@@ -32,7 +32,6 @@ | |||
32 | enum soc_type { | 32 | enum soc_type { |
33 | TYPE_S3C6400, | 33 | TYPE_S3C6400, |
34 | TYPE_S3C6410, | 34 | TYPE_S3C6410, |
35 | TYPE_S5PC100, | ||
36 | TYPE_S5PC110, | 35 | TYPE_S5PC110, |
37 | }; | 36 | }; |
38 | 37 | ||
@@ -59,7 +58,6 @@ enum soc_type { | |||
59 | #define MAP_11 (0x3) | 58 | #define MAP_11 (0x3) |
60 | 59 | ||
61 | #define S3C64XX_CMD_MAP_SHIFT 24 | 60 | #define S3C64XX_CMD_MAP_SHIFT 24 |
62 | #define S5PC100_CMD_MAP_SHIFT 26 | ||
63 | 61 | ||
64 | #define S3C6400_FBA_SHIFT 10 | 62 | #define S3C6400_FBA_SHIFT 10 |
65 | #define S3C6400_FPA_SHIFT 4 | 63 | #define S3C6400_FPA_SHIFT 4 |
@@ -69,10 +67,6 @@ enum soc_type { | |||
69 | #define S3C6410_FPA_SHIFT 6 | 67 | #define S3C6410_FPA_SHIFT 6 |
70 | #define S3C6410_FSA_SHIFT 4 | 68 | #define S3C6410_FSA_SHIFT 4 |
71 | 69 | ||
72 | #define S5PC100_FBA_SHIFT 13 | ||
73 | #define S5PC100_FPA_SHIFT 7 | ||
74 | #define S5PC100_FSA_SHIFT 5 | ||
75 | |||
76 | /* S5PC110 specific definitions */ | 70 | /* S5PC110 specific definitions */ |
77 | #define S5PC110_DMA_SRC_ADDR 0x400 | 71 | #define S5PC110_DMA_SRC_ADDR 0x400 |
78 | #define S5PC110_DMA_SRC_CFG 0x404 | 72 | #define S5PC110_DMA_SRC_CFG 0x404 |
@@ -195,11 +189,6 @@ static unsigned int s3c64xx_cmd_map(unsigned type, unsigned val) | |||
195 | return (type << S3C64XX_CMD_MAP_SHIFT) | val; | 189 | return (type << S3C64XX_CMD_MAP_SHIFT) | val; |
196 | } | 190 | } |
197 | 191 | ||
198 | static unsigned int s5pc1xx_cmd_map(unsigned type, unsigned val) | ||
199 | { | ||
200 | return (type << S5PC100_CMD_MAP_SHIFT) | val; | ||
201 | } | ||
202 | |||
203 | static unsigned int s3c6400_mem_addr(int fba, int fpa, int fsa) | 192 | static unsigned int s3c6400_mem_addr(int fba, int fpa, int fsa) |
204 | { | 193 | { |
205 | return (fba << S3C6400_FBA_SHIFT) | (fpa << S3C6400_FPA_SHIFT) | | 194 | return (fba << S3C6400_FBA_SHIFT) | (fpa << S3C6400_FPA_SHIFT) | |
@@ -212,12 +201,6 @@ static unsigned int s3c6410_mem_addr(int fba, int fpa, int fsa) | |||
212 | (fsa << S3C6410_FSA_SHIFT); | 201 | (fsa << S3C6410_FSA_SHIFT); |
213 | } | 202 | } |
214 | 203 | ||
215 | static unsigned int s5pc100_mem_addr(int fba, int fpa, int fsa) | ||
216 | { | ||
217 | return (fba << S5PC100_FBA_SHIFT) | (fpa << S5PC100_FPA_SHIFT) | | ||
218 | (fsa << S5PC100_FSA_SHIFT); | ||
219 | } | ||
220 | |||
221 | static void s3c_onenand_reset(void) | 204 | static void s3c_onenand_reset(void) |
222 | { | 205 | { |
223 | unsigned long timeout = 0x10000; | 206 | unsigned long timeout = 0x10000; |
@@ -835,9 +818,6 @@ static void s3c_onenand_setup(struct mtd_info *mtd) | |||
835 | } else if (onenand->type == TYPE_S3C6410) { | 818 | } else if (onenand->type == TYPE_S3C6410) { |
836 | onenand->mem_addr = s3c6410_mem_addr; | 819 | onenand->mem_addr = s3c6410_mem_addr; |
837 | onenand->cmd_map = s3c64xx_cmd_map; | 820 | onenand->cmd_map = s3c64xx_cmd_map; |
838 | } else if (onenand->type == TYPE_S5PC100) { | ||
839 | onenand->mem_addr = s5pc100_mem_addr; | ||
840 | onenand->cmd_map = s5pc1xx_cmd_map; | ||
841 | } else if (onenand->type == TYPE_S5PC110) { | 821 | } else if (onenand->type == TYPE_S5PC110) { |
842 | /* Use generic onenand functions */ | 822 | /* Use generic onenand functions */ |
843 | this->read_bufferram = s5pc110_read_bufferram; | 823 | this->read_bufferram = s5pc110_read_bufferram; |
@@ -1111,9 +1091,6 @@ static struct platform_device_id s3c_onenand_driver_ids[] = { | |||
1111 | .name = "s3c6410-onenand", | 1091 | .name = "s3c6410-onenand", |
1112 | .driver_data = TYPE_S3C6410, | 1092 | .driver_data = TYPE_S3C6410, |
1113 | }, { | 1093 | }, { |
1114 | .name = "s5pc100-onenand", | ||
1115 | .driver_data = TYPE_S5PC100, | ||
1116 | }, { | ||
1117 | .name = "s5pc110-onenand", | 1094 | .name = "s5pc110-onenand", |
1118 | .driver_data = TYPE_S5PC110, | 1095 | .driver_data = TYPE_S5PC110, |
1119 | }, { }, | 1096 | }, { }, |