Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
linux
Commits
7d84b3e9
Commit
7d84b3e9
authored
Oct 04, 2011
by
Kukjin Kim
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'next/topic-exynos4-devel' into next-samsung-devel
parents
59384796
95727e1f
Changes
7
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
790 additions
and
0 deletions
+790
-0
arch/arm/configs/exynos4_defconfig
arch/arm/configs/exynos4_defconfig
+1
-0
arch/arm/mach-exynos4/Kconfig
arch/arm/mach-exynos4/Kconfig
+30
-0
arch/arm/mach-exynos4/Makefile
arch/arm/mach-exynos4/Makefile
+1
-0
arch/arm/mach-exynos4/mach-nuri.c
arch/arm/mach-exynos4/mach-nuri.c
+34
-0
arch/arm/mach-exynos4/mach-origen.c
arch/arm/mach-exynos4/mach-origen.c
+679
-0
arch/arm/mach-exynos4/mach-smdkv310.c
arch/arm/mach-exynos4/mach-smdkv310.c
+11
-0
arch/arm/mach-exynos4/mach-universal_c210.c
arch/arm/mach-exynos4/mach-universal_c210.c
+34
-0
No files found.
arch/arm/configs/exynos4_defconfig
View file @
7d84b3e9
...
@@ -11,6 +11,7 @@ CONFIG_MACH_SMDKV310=y
...
@@ -11,6 +11,7 @@ CONFIG_MACH_SMDKV310=y
CONFIG_MACH_ARMLEX4210=y
CONFIG_MACH_ARMLEX4210=y
CONFIG_MACH_UNIVERSAL_C210=y
CONFIG_MACH_UNIVERSAL_C210=y
CONFIG_MACH_NURI=y
CONFIG_MACH_NURI=y
CONFIG_MACH_ORIGEN=y
CONFIG_NO_HZ=y
CONFIG_NO_HZ=y
CONFIG_HIGH_RES_TIMERS=y
CONFIG_HIGH_RES_TIMERS=y
CONFIG_SMP=y
CONFIG_SMP=y
...
...
arch/arm/mach-exynos4/Kconfig
View file @
7d84b3e9
...
@@ -139,6 +139,7 @@ config MACH_SMDKV310
...
@@ -139,6 +139,7 @@ config MACH_SMDKV310
select S3C_DEV_RTC
select S3C_DEV_RTC
select S3C_DEV_WDT
select S3C_DEV_WDT
select S3C_DEV_I2C1
select S3C_DEV_I2C1
select S5P_DEV_MFC
select S3C_DEV_HSMMC
select S3C_DEV_HSMMC
select S3C_DEV_HSMMC1
select S3C_DEV_HSMMC1
select S3C_DEV_HSMMC2
select S3C_DEV_HSMMC2
...
@@ -178,6 +179,7 @@ config MACH_UNIVERSAL_C210
...
@@ -178,6 +179,7 @@ config MACH_UNIVERSAL_C210
select S5P_DEV_FIMC1
select S5P_DEV_FIMC1
select S5P_DEV_FIMC2
select S5P_DEV_FIMC2
select S5P_DEV_FIMC3
select S5P_DEV_FIMC3
select S5P_DEV_FIMD0
select S3C_DEV_HSMMC
select S3C_DEV_HSMMC
select S3C_DEV_HSMMC2
select S3C_DEV_HSMMC2
select S3C_DEV_HSMMC3
select S3C_DEV_HSMMC3
...
@@ -187,6 +189,7 @@ config MACH_UNIVERSAL_C210
...
@@ -187,6 +189,7 @@ config MACH_UNIVERSAL_C210
select S5P_DEV_MFC
select S5P_DEV_MFC
select S5P_DEV_ONENAND
select S5P_DEV_ONENAND
select EXYNOS4_DEV_PD
select EXYNOS4_DEV_PD
select EXYNOS4_SETUP_FIMD0
select EXYNOS4_SETUP_I2C1
select EXYNOS4_SETUP_I2C1
select EXYNOS4_SETUP_I2C3
select EXYNOS4_SETUP_I2C3
select EXYNOS4_SETUP_I2C5
select EXYNOS4_SETUP_I2C5
...
@@ -199,6 +202,8 @@ config MACH_NURI
...
@@ -199,6 +202,8 @@ config MACH_NURI
bool "Mobile NURI Board"
bool "Mobile NURI Board"
select CPU_EXYNOS4210
select CPU_EXYNOS4210
select S3C_DEV_WDT
select S3C_DEV_WDT
select S3C_DEV_RTC
select S5P_DEV_FIMD0
select S3C_DEV_HSMMC
select S3C_DEV_HSMMC
select S3C_DEV_HSMMC2
select S3C_DEV_HSMMC2
select S3C_DEV_HSMMC3
select S3C_DEV_HSMMC3
...
@@ -208,6 +213,7 @@ config MACH_NURI
...
@@ -208,6 +213,7 @@ config MACH_NURI
select S5P_DEV_MFC
select S5P_DEV_MFC
select S5P_DEV_USB_EHCI
select S5P_DEV_USB_EHCI
select EXYNOS4_DEV_PD
select EXYNOS4_DEV_PD
select EXYNOS4_SETUP_FIMD0
select EXYNOS4_SETUP_I2C1
select EXYNOS4_SETUP_I2C1
select EXYNOS4_SETUP_I2C3
select EXYNOS4_SETUP_I2C3
select EXYNOS4_SETUP_I2C5
select EXYNOS4_SETUP_I2C5
...
@@ -218,6 +224,30 @@ config MACH_NURI
...
@@ -218,6 +224,30 @@ config MACH_NURI
help
help
Machine support for Samsung Mobile NURI Board.
Machine support for Samsung Mobile NURI Board.
config MACH_ORIGEN
bool "ORIGEN"
select CPU_EXYNOS4210
select S3C_DEV_RTC
select S3C_DEV_WDT
select S3C_DEV_HSMMC
select S3C_DEV_HSMMC2
select S5P_DEV_FIMC0
select S5P_DEV_FIMC1
select S5P_DEV_FIMC2
select S5P_DEV_FIMC3
select S5P_DEV_FIMD0
select S5P_DEV_I2C_HDMIPHY
select S5P_DEV_TV
select S5P_DEV_USB_EHCI
select EXYNOS4_DEV_PD
select SAMSUNG_DEV_BACKLIGHT
select SAMSUNG_DEV_PWM
select EXYNOS4_SETUP_FIMD0
select EXYNOS4_SETUP_SDHCI
select EXYNOS4_SETUP_USB_PHY
help
Machine support for ORIGEN based on Samsung EXYNOS4210
endmenu
endmenu
comment "Configuration for HSMMC bus width"
comment "Configuration for HSMMC bus width"
...
...
arch/arm/mach-exynos4/Makefile
View file @
7d84b3e9
...
@@ -30,6 +30,7 @@ obj-$(CONFIG_MACH_SMDKV310) += mach-smdkv310.o
...
@@ -30,6 +30,7 @@ obj-$(CONFIG_MACH_SMDKV310) += mach-smdkv310.o
obj-$(CONFIG_MACH_ARMLEX4210)
+=
mach-armlex4210.o
obj-$(CONFIG_MACH_ARMLEX4210)
+=
mach-armlex4210.o
obj-$(CONFIG_MACH_UNIVERSAL_C210)
+=
mach-universal_c210.o
obj-$(CONFIG_MACH_UNIVERSAL_C210)
+=
mach-universal_c210.o
obj-$(CONFIG_MACH_NURI)
+=
mach-nuri.o
obj-$(CONFIG_MACH_NURI)
+=
mach-nuri.o
obj-$(CONFIG_MACH_ORIGEN)
+=
mach-origen.o
# device support
# device support
...
...
arch/arm/mach-exynos4/mach-nuri.c
View file @
7d84b3e9
...
@@ -32,10 +32,12 @@
...
@@ -32,10 +32,12 @@
#include <asm/mach-types.h>
#include <asm/mach-types.h>
#include <plat/adc.h>
#include <plat/adc.h>
#include <plat/regs-fb-v4.h>
#include <plat/regs-serial.h>
#include <plat/regs-serial.h>
#include <plat/exynos4.h>
#include <plat/exynos4.h>
#include <plat/cpu.h>
#include <plat/cpu.h>
#include <plat/devs.h>
#include <plat/devs.h>
#include <plat/fb.h>
#include <plat/sdhci.h>
#include <plat/sdhci.h>
#include <plat/ehci.h>
#include <plat/ehci.h>
#include <plat/clock.h>
#include <plat/clock.h>
...
@@ -199,6 +201,33 @@ static struct platform_device nuri_gpio_keys = {
...
@@ -199,6 +201,33 @@ static struct platform_device nuri_gpio_keys = {
},
},
};
};
/* Frame Buffer */
static
struct
s3c_fb_pd_win
nuri_fb_win0
=
{
.
win_mode
=
{
.
left_margin
=
64
,
.
right_margin
=
16
,
.
upper_margin
=
64
,
.
lower_margin
=
1
,
.
hsync_len
=
48
,
.
vsync_len
=
3
,
.
xres
=
1280
,
.
yres
=
800
,
.
refresh
=
60
,
},
.
max_bpp
=
24
,
.
default_bpp
=
16
,
.
virtual_x
=
1280
,
.
virtual_y
=
800
,
};
static
struct
s3c_fb_platdata
nuri_fb_pdata
__initdata
=
{
.
win
[
0
]
=
&
nuri_fb_win0
,
.
vidcon0
=
VIDCON0_VIDOUT_RGB
|
VIDCON0_PNRMODE_RGB
|
VIDCON0_CLKSEL_LCD
,
.
vidcon1
=
VIDCON1_INV_HSYNC
|
VIDCON1_INV_VSYNC
,
.
setup_gpio
=
exynos4_fimd0_gpio_setup_24bpp
,
};
static
void
nuri_lcd_power_on
(
struct
plat_lcd_data
*
pd
,
unsigned
int
power
)
static
void
nuri_lcd_power_on
(
struct
plat_lcd_data
*
pd
,
unsigned
int
power
)
{
{
int
gpio
=
EXYNOS4_GPE1
(
5
);
int
gpio
=
EXYNOS4_GPE1
(
5
);
...
@@ -1092,6 +1121,7 @@ static struct platform_device *nuri_devices[] __initdata = {
...
@@ -1092,6 +1121,7 @@ static struct platform_device *nuri_devices[] __initdata = {
/* Samsung Platform Devices */
/* Samsung Platform Devices */
&
s3c_device_i2c5
,
/* PMIC should initialize first */
&
s3c_device_i2c5
,
/* PMIC should initialize first */
&
emmc_fixed_voltage
,
&
emmc_fixed_voltage
,
&
s5p_device_fimd0
,
&
s3c_device_hsmmc0
,
&
s3c_device_hsmmc0
,
&
s3c_device_hsmmc2
,
&
s3c_device_hsmmc2
,
&
s3c_device_hsmmc3
,
&
s3c_device_hsmmc3
,
...
@@ -1106,6 +1136,7 @@ static struct platform_device *nuri_devices[] __initdata = {
...
@@ -1106,6 +1136,7 @@ static struct platform_device *nuri_devices[] __initdata = {
&
s5p_device_mfc_l
,
&
s5p_device_mfc_l
,
&
s5p_device_mfc_r
,
&
s5p_device_mfc_r
,
&
exynos4_device_pd
[
PD_MFC
],
&
exynos4_device_pd
[
PD_MFC
],
&
exynos4_device_pd
[
PD_LCD0
],
/* NURI Devices */
/* NURI Devices */
&
nuri_gpio_keys
,
&
nuri_gpio_keys
,
...
@@ -1142,12 +1173,15 @@ static void __init nuri_machine_init(void)
...
@@ -1142,12 +1173,15 @@ static void __init nuri_machine_init(void)
i2c9_devs
[
I2C9_MAX17042
].
irq
=
gpio_to_irq
(
EXYNOS4_GPX2
(
3
));
i2c9_devs
[
I2C9_MAX17042
].
irq
=
gpio_to_irq
(
EXYNOS4_GPX2
(
3
));
i2c_register_board_info
(
9
,
i2c9_devs
,
ARRAY_SIZE
(
i2c9_devs
));
i2c_register_board_info
(
9
,
i2c9_devs
,
ARRAY_SIZE
(
i2c9_devs
));
s5p_fimd0_set_platdata
(
&
nuri_fb_pdata
);
nuri_ehci_init
();
nuri_ehci_init
();
clk_xusbxti
.
rate
=
24000000
;
clk_xusbxti
.
rate
=
24000000
;
/* Last */
/* Last */
platform_add_devices
(
nuri_devices
,
ARRAY_SIZE
(
nuri_devices
));
platform_add_devices
(
nuri_devices
,
ARRAY_SIZE
(
nuri_devices
));
s5p_device_mfc
.
dev
.
parent
=
&
exynos4_device_pd
[
PD_MFC
].
dev
;
s5p_device_mfc
.
dev
.
parent
=
&
exynos4_device_pd
[
PD_MFC
].
dev
;
s5p_device_fimd0
.
dev
.
parent
=
&
exynos4_device_pd
[
PD_LCD0
].
dev
;
}
}
MACHINE_START
(
NURI
,
"NURI"
)
MACHINE_START
(
NURI
,
"NURI"
)
...
...
arch/arm/mach-exynos4/mach-origen.c
0 → 100644
View file @
7d84b3e9
This diff is collapsed.
Click to expand it.
arch/arm/mach-exynos4/mach-smdkv310.c
View file @
7d84b3e9
...
@@ -32,6 +32,7 @@
...
@@ -32,6 +32,7 @@
#include <plat/pd.h>
#include <plat/pd.h>
#include <plat/gpio-cfg.h>
#include <plat/gpio-cfg.h>
#include <plat/backlight.h>
#include <plat/backlight.h>
#include <plat/mfc.h>
#include <mach/map.h>
#include <mach/map.h>
...
@@ -177,6 +178,9 @@ static struct platform_device *smdkv310_devices[] __initdata = {
...
@@ -177,6 +178,9 @@ static struct platform_device *smdkv310_devices[] __initdata = {
&
exynos4_device_ac97
,
&
exynos4_device_ac97
,
&
exynos4_device_i2s0
,
&
exynos4_device_i2s0
,
&
samsung_device_keypad
,
&
samsung_device_keypad
,
&
s5p_device_mfc
,
&
s5p_device_mfc_l
,
&
s5p_device_mfc_r
,
&
exynos4_device_pd
[
PD_MFC
],
&
exynos4_device_pd
[
PD_MFC
],
&
exynos4_device_pd
[
PD_G3D
],
&
exynos4_device_pd
[
PD_G3D
],
&
exynos4_device_pd
[
PD_LCD0
],
&
exynos4_device_pd
[
PD_LCD0
],
...
@@ -233,6 +237,11 @@ static void __init smdkv310_map_io(void)
...
@@ -233,6 +237,11 @@ static void __init smdkv310_map_io(void)
s3c24xx_init_uarts
(
smdkv310_uartcfgs
,
ARRAY_SIZE
(
smdkv310_uartcfgs
));
s3c24xx_init_uarts
(
smdkv310_uartcfgs
,
ARRAY_SIZE
(
smdkv310_uartcfgs
));
}
}
static
void
__init
smdkv310_reserve
(
void
)
{
s5p_mfc_reserve_mem
(
0x43000000
,
8
<<
20
,
0x51000000
,
8
<<
20
);
}
static
void
__init
smdkv310_machine_init
(
void
)
static
void
__init
smdkv310_machine_init
(
void
)
{
{
s3c_i2c1_set_platdata
(
NULL
);
s3c_i2c1_set_platdata
(
NULL
);
...
@@ -250,6 +259,7 @@ static void __init smdkv310_machine_init(void)
...
@@ -250,6 +259,7 @@ static void __init smdkv310_machine_init(void)
samsung_bl_set
(
&
smdkv310_bl_gpio_info
,
&
smdkv310_bl_data
);
samsung_bl_set
(
&
smdkv310_bl_gpio_info
,
&
smdkv310_bl_data
);
platform_add_devices
(
smdkv310_devices
,
ARRAY_SIZE
(
smdkv310_devices
));
platform_add_devices
(
smdkv310_devices
,
ARRAY_SIZE
(
smdkv310_devices
));
s5p_device_mfc
.
dev
.
parent
=
&
exynos4_device_pd
[
PD_MFC
].
dev
;
}
}
MACHINE_START
(
SMDKV310
,
"SMDKV310"
)
MACHINE_START
(
SMDKV310
,
"SMDKV310"
)
...
@@ -260,4 +270,5 @@ MACHINE_START(SMDKV310, "SMDKV310")
...
@@ -260,4 +270,5 @@ MACHINE_START(SMDKV310, "SMDKV310")
.
map_io
=
smdkv310_map_io
,
.
map_io
=
smdkv310_map_io
,
.
init_machine
=
smdkv310_machine_init
,
.
init_machine
=
smdkv310_machine_init
,
.
timer
=
&
exynos4_timer
,
.
timer
=
&
exynos4_timer
,
.
reserve
=
&
smdkv310_reserve
,
MACHINE_END
MACHINE_END
arch/arm/mach-exynos4/mach-universal_c210.c
View file @
7d84b3e9
...
@@ -13,6 +13,7 @@
...
@@ -13,6 +13,7 @@
#include <linux/i2c.h>
#include <linux/i2c.h>
#include <linux/gpio_keys.h>
#include <linux/gpio_keys.h>
#include <linux/gpio.h>
#include <linux/gpio.h>
#include <linux/fb.h>
#include <linux/mfd/max8998.h>
#include <linux/mfd/max8998.h>
#include <linux/regulator/machine.h>
#include <linux/regulator/machine.h>
#include <linux/regulator/fixed.h>
#include <linux/regulator/fixed.h>
...
@@ -31,9 +32,11 @@
...
@@ -31,9 +32,11 @@
#include <plat/devs.h>
#include <plat/devs.h>
#include <plat/iic.h>
#include <plat/iic.h>
#include <plat/gpio-cfg.h>
#include <plat/gpio-cfg.h>
#include <plat/fb.h>
#include <plat/mfc.h>
#include <plat/mfc.h>
#include <plat/sdhci.h>
#include <plat/sdhci.h>
#include <plat/pd.h>
#include <plat/pd.h>
#include <plat/regs-fb-v4.h>
#include <mach/map.h>
#include <mach/map.h>
...
@@ -702,6 +705,32 @@ static struct i2c_board_info i2c1_devs[] __initdata = {
...
@@ -702,6 +705,32 @@ static struct i2c_board_info i2c1_devs[] __initdata = {
/* Gyro, To be updated */
/* Gyro, To be updated */
};
};
/* Frame Buffer */
static
struct
s3c_fb_pd_win
universal_fb_win0
=
{
.
win_mode
=
{
.
left_margin
=
16
,
.
right_margin
=
16
,
.
upper_margin
=
2
,
.
lower_margin
=
28
,
.
hsync_len
=
2
,
.
vsync_len
=
1
,
.
xres
=
480
,
.
yres
=
800
,
.
refresh
=
55
,
},
.
max_bpp
=
32
,
.
default_bpp
=
16
,
};
static
struct
s3c_fb_platdata
universal_lcd_pdata
__initdata
=
{
.
win
[
0
]
=
&
universal_fb_win0
,
.
vidcon0
=
VIDCON0_VIDOUT_RGB
|
VIDCON0_PNRMODE_RGB
|
VIDCON0_CLKSEL_LCD
,
.
vidcon1
=
VIDCON1_INV_VCLK
|
VIDCON1_INV_VDEN
|
VIDCON1_INV_HSYNC
|
VIDCON1_INV_VSYNC
,
.
setup_gpio
=
exynos4_fimd0_gpio_setup_24bpp
,
};
static
struct
platform_device
*
universal_devices
[]
__initdata
=
{
static
struct
platform_device
*
universal_devices
[]
__initdata
=
{
/* Samsung Platform Devices */
/* Samsung Platform Devices */
&
s5p_device_fimc0
,
&
s5p_device_fimc0
,
...
@@ -719,10 +748,12 @@ static struct platform_device *universal_devices[] __initdata = {
...
@@ -719,10 +748,12 @@ static struct platform_device *universal_devices[] __initdata = {
&
i2c_gpio12
,
&
i2c_gpio12
,
&
universal_gpio_keys
,
&
universal_gpio_keys
,
&
s5p_device_onenand
,
&
s5p_device_onenand
,
&
s5p_device_fimd0
,
&
s5p_device_mfc
,
&
s5p_device_mfc
,
&
s5p_device_mfc_l
,
&
s5p_device_mfc_l
,
&
s5p_device_mfc_r
,
&
s5p_device_mfc_r
,
&
exynos4_device_pd
[
PD_MFC
],
&
exynos4_device_pd
[
PD_MFC
],
&
exynos4_device_pd
[
PD_LCD0
],
};
};
static
void
__init
universal_map_io
(
void
)
static
void
__init
universal_map_io
(
void
)
...
@@ -751,6 +782,8 @@ static void __init universal_machine_init(void)
...
@@ -751,6 +782,8 @@ static void __init universal_machine_init(void)
s3c_i2c5_set_platdata
(
NULL
);
s3c_i2c5_set_platdata
(
NULL
);
i2c_register_board_info
(
5
,
i2c5_devs
,
ARRAY_SIZE
(
i2c5_devs
));
i2c_register_board_info
(
5
,
i2c5_devs
,
ARRAY_SIZE
(
i2c5_devs
));
s5p_fimd0_set_platdata
(
&
universal_lcd_pdata
);
universal_touchkey_init
();
universal_touchkey_init
();
i2c_register_board_info
(
I2C_GPIO_BUS_12
,
i2c_gpio12_devs
,
i2c_register_board_info
(
I2C_GPIO_BUS_12
,
i2c_gpio12_devs
,
ARRAY_SIZE
(
i2c_gpio12_devs
));
ARRAY_SIZE
(
i2c_gpio12_devs
));
...
@@ -758,6 +791,7 @@ static void __init universal_machine_init(void)
...
@@ -758,6 +791,7 @@ static void __init universal_machine_init(void)
/* Last */
/* Last */
platform_add_devices
(
universal_devices
,
ARRAY_SIZE
(
universal_devices
));
platform_add_devices
(
universal_devices
,
ARRAY_SIZE
(
universal_devices
));
s5p_device_mfc
.
dev
.
parent
=
&
exynos4_device_pd
[
PD_MFC
].
dev
;
s5p_device_mfc
.
dev
.
parent
=
&
exynos4_device_pd
[
PD_MFC
].
dev
;
s5p_device_fimd0
.
dev
.
parent
=
&
exynos4_device_pd
[
PD_LCD0
].
dev
;
}
}
MACHINE_START
(
UNIVERSAL_C210
,
"UNIVERSAL_C210"
)
MACHINE_START
(
UNIVERSAL_C210
,
"UNIVERSAL_C210"
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment