mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2025-01-09 07:23:14 +00:00
Samsung mach/soc changes for v6.5
1. Re-introduce Exynos4212 which was removed because of lack of upstream users. Artur Weber adds now Samsung Galaxy Tab3 with Exynos4212. 2. Minor cleanups. -----BEGIN PGP SIGNATURE----- iQJEBAABCgAuFiEE3dJiKD0RGyM7briowTdm5oaLg9cFAmR5rpwQHGtyemtAa2Vy bmVsLm9yZwAKCRDBN2bmhouD13hjD/97Not7x1ZInjdljrWlLmNFFF3nTomaTmk/ YHuqw66y0V2xmHCVW/73oqICgln/aPjFp2GEhCKxTX5Qce0L4mOpt+8+RsG7+1mV PDQdg/1or+TJbNav74Iy/ARpPkfpPl37dWtsEgathnqGcCOCUlw5+EcbLQiXBTQX rpe6Sn+JWUV48LmvIm6zi09NMM55b/+DNx59SpnvD8bc80ZbpGmo+rLWNGV/Dtop B4Tx6if28w2YTZUgU0RJ6GmsUbExo+IjF9Fk5Q6Hogx3nVYxiPDoc5hP3Ca9Bkjn vx5YSx8pVeTyoFsiBziz92y/yVD8v4r56/AIvKYHgB8M57F+8k71VrUpWzfLlAwD n11ws2BbqxCKAeNTRBY5Ki4LhHg0YWDpm328aWULUz7mRRHWpY6PzlMD8NWPU48n RA2zZSMRAsi8IMaGz5UD4VXFB59XvGmGUec4Kq2fQqN9gCAepYW0ad+aRwqa42x+ 0uA3Ca/MxG3UohCz33aizh5OPVlNFxjIVA8G1i2YJH+l+uVbye82j4k/de8PBkqN qpNxJE+szyunARz7NYUHHP0dOqFzDfZv4ooR5UEridUoR4DIC8xzc7mQ9r8LmdLN MAyXXSpr7wWd+qM0sxIW4wQubYkeF8tVr7DTTPMn35iRkJK1VBu/Qynu2SdRpg9G 0VMWcHFbgQ== =lpTK -----END PGP SIGNATURE----- gpgsig -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEiK/NIGsWEZVxh/FrYKtH/8kJUicFAmSDJdAACgkQYKtH/8kJ Uie21g/+L/N0Xb8zHn3U9TBeVnr9LS7IKZGwRAhsawbtQzsRtXiG7WXeg/nT6gCc kK85DpDrv3ek5J8ypOGYgscedx/xCIE76keqJZIFePO7CPzzDOkIwrtSBelNjVba aERwTTZmIHmfLGVx3nSLDrYjpKxvMg65D81akRVgxcPockW1MGxhGe31d8jg+OJw c9QoP1avPxSiRx+I4ZXLS4EaN4DTmTtYjk/8ZXVZYkWXez52zMw51zhtRTHc7STq vBIChKasjvU0vyhv8m1rbWJrwMY31VbHmmEH8Ekl1wdF9Lsp1WjiAchmljZyMWIU 0WFrlZN2sP6+IVHPq92Xpi5TrzZl+if6SmV9DJPQptbkF0UUThAUvpOtfRzM5ynp huJg8NyQY3lsK4zUIMCTw+RYSQjcARukD/Ymf6BV6y14f8ljxbKA7afBNWAlEJAv XRlbsJsPArHIdr242cRvt5IrU+vLpSSJ5n9PKimzVpRmWaJtmTz2KliYJwjQMd6a OmwEAXwnxUcjhBLB7+mleMRMqQbmpxFIIo/XXS7VKO1Ie4QnkEeU8+NdgZawXT6G LfdXZ7YjtgLf3k1RWxRymPe/NVc6NYseCAPVcYpPhozHr+/RMWAlzABnv6lRABD8 DTen4lmdqE1/z3W4fTmUvbix2hOo6cIyPfxBzt76KcNCZxaInEo= =asGi -----END PGP SIGNATURE----- Merge tag 'samsung-soc-6.5' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux into soc/arm Samsung mach/soc changes for v6.5 1. Re-introduce Exynos4212 which was removed because of lack of upstream users. Artur Weber adds now Samsung Galaxy Tab3 with Exynos4212. 2. Minor cleanups. * tag 'samsung-soc-6.5' of https://git.kernel.org/pub/scm/linux/kernel/git/krzk/linux: ARM: s3c: Switch i2c drivers back to use .probe() ARM: exynos: Re-introduce Exynos4212 support ARM: s3c: remove obsolete config S3C64XX_SETUP_IDE Link: https://lore.kernel.org/r/20230602091501.15178-3-krzysztof.kozlowski@linaro.org Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
commit
9a0e0c5957
@ -78,6 +78,11 @@ config CPU_EXYNOS4210
|
||||
default y
|
||||
depends on ARCH_EXYNOS4
|
||||
|
||||
config SOC_EXYNOS4212
|
||||
bool "Samsung Exynos4212"
|
||||
default y
|
||||
depends on ARCH_EXYNOS4
|
||||
|
||||
config SOC_EXYNOS4412
|
||||
bool "Samsung Exynos4412"
|
||||
default y
|
||||
|
@ -15,6 +15,7 @@
|
||||
#define EXYNOS3_SOC_MASK 0xFFFFF000
|
||||
|
||||
#define EXYNOS4210_CPU_ID 0x43210000
|
||||
#define EXYNOS4212_CPU_ID 0x43220000
|
||||
#define EXYNOS4412_CPU_ID 0xE4412200
|
||||
#define EXYNOS4_CPU_MASK 0xFFFE0000
|
||||
|
||||
@ -34,6 +35,7 @@ static inline int is_samsung_##name(void) \
|
||||
|
||||
IS_SAMSUNG_CPU(exynos3250, EXYNOS3250_SOC_ID, EXYNOS3_SOC_MASK)
|
||||
IS_SAMSUNG_CPU(exynos4210, EXYNOS4210_CPU_ID, EXYNOS4_CPU_MASK)
|
||||
IS_SAMSUNG_CPU(exynos4212, EXYNOS4212_CPU_ID, EXYNOS4_CPU_MASK)
|
||||
IS_SAMSUNG_CPU(exynos4412, EXYNOS4412_CPU_ID, EXYNOS4_CPU_MASK)
|
||||
IS_SAMSUNG_CPU(exynos5250, EXYNOS5250_SOC_ID, EXYNOS5_SOC_MASK)
|
||||
IS_SAMSUNG_CPU(exynos5410, EXYNOS5410_SOC_ID, EXYNOS5_SOC_MASK)
|
||||
@ -52,6 +54,12 @@ IS_SAMSUNG_CPU(exynos5800, EXYNOS5800_SOC_ID, EXYNOS5_SOC_MASK)
|
||||
# define soc_is_exynos4210() 0
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_SOC_EXYNOS4212)
|
||||
# define soc_is_exynos4212() is_samsung_exynos4212()
|
||||
#else
|
||||
# define soc_is_exynos4212() 0
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_SOC_EXYNOS4412)
|
||||
# define soc_is_exynos4412() is_samsung_exynos4412()
|
||||
#else
|
||||
|
@ -180,6 +180,7 @@ static void __init exynos_dt_machine_init(void)
|
||||
exynos_cpuidle.dev.platform_data = &cpuidle_coupled_exynos_data;
|
||||
#endif
|
||||
if (of_machine_is_compatible("samsung,exynos4210") ||
|
||||
of_machine_is_compatible("samsung,exynos4212") ||
|
||||
(of_machine_is_compatible("samsung,exynos4412") &&
|
||||
(of_machine_is_compatible("samsung,trats2") ||
|
||||
of_machine_is_compatible("samsung,midas") ||
|
||||
@ -194,6 +195,7 @@ static char const *const exynos_dt_compat[] __initconst = {
|
||||
"samsung,exynos3250",
|
||||
"samsung,exynos4",
|
||||
"samsung,exynos4210",
|
||||
"samsung,exynos4212",
|
||||
"samsung,exynos4412",
|
||||
"samsung,exynos5",
|
||||
"samsung,exynos5250",
|
||||
|
@ -63,12 +63,18 @@ static int exynos_cpu_boot(int cpu)
|
||||
*
|
||||
* On Exynos5 devices the call is ignored by trustzone firmware.
|
||||
*/
|
||||
if (!soc_is_exynos4210() && !soc_is_exynos4412())
|
||||
if (!soc_is_exynos4210() && !soc_is_exynos4212() &&
|
||||
!soc_is_exynos4412())
|
||||
return 0;
|
||||
|
||||
/*
|
||||
* The second parameter of SMC_CMD_CPU1BOOT command means CPU id.
|
||||
* But, Exynos4212 has only one secondary CPU so second parameter
|
||||
* isn't used for informing secure firmware about CPU id.
|
||||
*/
|
||||
if (soc_is_exynos4212())
|
||||
cpu = 0;
|
||||
|
||||
exynos_smc(SMC_CMD_CPU1BOOT, cpu, 0, 0);
|
||||
return 0;
|
||||
}
|
||||
|
@ -161,7 +161,7 @@ void exynos_enter_aftr(void)
|
||||
|
||||
exynos_pm_central_suspend();
|
||||
|
||||
if (soc_is_exynos4412()) {
|
||||
if (soc_is_exynos4212() || soc_is_exynos4412()) {
|
||||
/* Setting SEQ_OPTION register */
|
||||
pmu_raw_writel(S5P_USE_STANDBY_WFI0 | S5P_USE_STANDBY_WFE0,
|
||||
S5P_CENTRAL_SEQ_OPTION);
|
||||
|
@ -231,6 +231,7 @@ static int __init exynos_pmu_irq_init(struct device_node *node,
|
||||
|
||||
EXYNOS_PMU_IRQ(exynos3250_pmu_irq, "samsung,exynos3250-pmu");
|
||||
EXYNOS_PMU_IRQ(exynos4210_pmu_irq, "samsung,exynos4210-pmu");
|
||||
EXYNOS_PMU_IRQ(exynos4212_pmu_irq, "samsung,exynos4212-pmu");
|
||||
EXYNOS_PMU_IRQ(exynos4412_pmu_irq, "samsung,exynos4412-pmu");
|
||||
EXYNOS_PMU_IRQ(exynos5250_pmu_irq, "samsung,exynos5250-pmu");
|
||||
EXYNOS_PMU_IRQ(exynos5420_pmu_irq, "samsung,exynos5420-pmu");
|
||||
@ -640,6 +641,9 @@ static const struct of_device_id exynos_pmu_of_device_ids[] __initconst = {
|
||||
}, {
|
||||
.compatible = "samsung,exynos4210-pmu",
|
||||
.data = &exynos4_pm_data,
|
||||
}, {
|
||||
.compatible = "samsung,exynos4212-pmu",
|
||||
.data = &exynos4_pm_data,
|
||||
}, {
|
||||
.compatible = "samsung,exynos4412-pmu",
|
||||
.data = &exynos4_pm_data,
|
||||
|
@ -69,11 +69,6 @@ config S3C64XX_SETUP_I2C1
|
||||
help
|
||||
Common setup code for i2c bus 1.
|
||||
|
||||
config S3C64XX_SETUP_IDE
|
||||
bool
|
||||
help
|
||||
Common setup code for S3C64XX IDE.
|
||||
|
||||
config S3C64XX_SETUP_FB_24BPP
|
||||
bool
|
||||
help
|
||||
@ -110,7 +105,6 @@ config MACH_WLF_CRAGG_6410
|
||||
select S3C64XX_DEV_SPI0
|
||||
select S3C64XX_SETUP_FB_24BPP
|
||||
select S3C64XX_SETUP_I2C1
|
||||
select S3C64XX_SETUP_IDE
|
||||
select S3C64XX_SETUP_KEYPAD
|
||||
select S3C64XX_SETUP_SDHCI
|
||||
select S3C64XX_SETUP_SPI
|
||||
|
@ -418,7 +418,7 @@ static struct i2c_driver wlf_gf_module_driver = {
|
||||
.driver = {
|
||||
.name = "wlf-gf-module"
|
||||
},
|
||||
.probe_new = wlf_gf_module_probe,
|
||||
.probe = wlf_gf_module_probe,
|
||||
.id_table = wlf_gf_module_id,
|
||||
};
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user