SPEAr DT support updates
Subsystems (4)
v3 cover SPEAr DT support updates
Hello,
This patchset updates DT support for SPEAr3xx and 6xx. It has following changes:
- updates DT support Mainly for SPEAr3xx family
- updates dma support for SPEAr6xx
- updates defconfig
It has dependency on following patchsets:
- ehci & ohci: http://www.spinics.net/lists/linux-usb/msg60362.html
- rtc: http://lkml.org/lkml/2012/3/26/96
- keyboard: http://www.spinics.net/lists/linux-input/msg19904.html
V2->V3:
- Removed macro for adding entries in auxdata array for ssp and dma
- removed IO_ADDRESS() completely
- Create 16M static mappings instead of 4K mappings
- Don't return error from spear*dt_init() if board doesn't match for padmux
- Config symbols and #ifdef,#endif are not updated for DT
- interrupt-parenti=<&vic> moved to root node.
V1->V2:
- Separate DT_MACHINE_INIT macros are defined per SoC.
- PATCH 1/7 was sent earlier as individual patch, and is now included in this patchset for completeness.
- clock support for ehci and ohci added
- plat data for UART PL011 removed as it is not required
- Minor issues fixed
Viresh Kumar (7):
SPEAr: Use CLKDEV_INIT for defining clk_lookups
SPEAr3xx: Add clock instance of usb hosts - ehci and ohci 0 and 1
SPEAr6xx: Add compilation support for dtbs using 'make dtbs'
SPEAr3xx: Replace printk() with pr_*()
ARM: SPEAr3xx: Add device-tree support to SPEAr3xx architecture
SPEAr: Add PL080 DMA support for 3xx and 6xx
SPEAr: Update defconfigs
Documentation/arm/SPEAr/overview.txt | 13 +- Documentation/devicetree/bindings/arm/spear.txt | 18 ++ arch/arm/boot/dts/spear300-evb.dts | 183 +++++++++++ arch/arm/boot/dts/spear300.dtsi | 72 +++++ arch/arm/boot/dts/spear310-evb.dts | 111 +++++++ arch/arm/boot/dts/spear310.dtsi | 75 +++++ arch/arm/boot/dts/spear320-evb.dts | 112 +++++++ arch/arm/boot/dts/spear320.dtsi | 90 ++++++ arch/arm/boot/dts/spear3xx.dtsi | 144 +++++++++ arch/arm/boot/dts/spear600-evb.dts | 4 + arch/arm/boot/dts/spear600.dtsi | 8 + arch/arm/configs/spear3xx_defconfig | 52 +++- arch/arm/configs/spear6xx_defconfig | 41 ++- arch/arm/mach-spear3xx/Kconfig | 34 +-- arch/arm/mach-spear3xx/Makefile | 13 +- arch/arm/mach-spear3xx/Makefile.boot | 4 + arch/arm/mach-spear3xx/clock.c | 182 +++++++----- arch/arm/mach-spear3xx/include/mach/generic.h | 31 +-- arch/arm/mach-spear3xx/include/mach/hardware.h | 3 - arch/arm/mach-spear3xx/include/mach/spear.h | 9 +- arch/arm/mach-spear3xx/spear300.c | 294 ++++++++++++++++-- arch/arm/mach-spear3xx/spear300_evb.c | 75 ----- arch/arm/mach-spear3xx/spear310.c | 329 +++++++++++++++++++-- arch/arm/mach-spear3xx/spear310_evb.c | 81 ----- arch/arm/mach-spear3xx/spear320.c | 328 +++++++++++++++++++-- arch/arm/mach-spear3xx/spear320_evb.c | 79 ----- arch/arm/mach-spear3xx/spear3xx.c | 148 +++++---- arch/arm/mach-spear6xx/Makefile.boot | 2 + arch/arm/mach-spear6xx/clock.c | 80 +++--- arch/arm/mach-spear6xx/spear6xx.c | 372 ++++++++++++++++++++++- arch/arm/plat-spear/Kconfig | 3 +- arch/arm/plat-spear/Makefile | 2 +- arch/arm/plat-spear/include/plat/pl080.h | 21 ++ arch/arm/plat-spear/pl080.c | 79 +++++ 34 files changed, 2505 insertions(+), 587 deletions(-) create mode 100644 arch/arm/boot/dts/spear300-evb.dts create mode 100644 arch/arm/boot/dts/spear300.dtsi create mode 100644 arch/arm/boot/dts/spear310-evb.dts create mode 100644 arch/arm/boot/dts/spear310.dtsi create mode 100644 arch/arm/boot/dts/spear320-evb.dts create mode 100644 arch/arm/boot/dts/spear320.dtsi create mode 100644 arch/arm/boot/dts/spear3xx.dtsi delete mode 100644 arch/arm/mach-spear3xx/spear300_evb.c delete mode 100644 arch/arm/mach-spear3xx/spear310_evb.c delete mode 100644 arch/arm/mach-spear3xx/spear320_evb.c create mode 100644 arch/arm/plat-spear/include/plat/pl080.h create mode 100644 arch/arm/plat-spear/pl080.c
Signature · 1 line
1.7.9
PATCH v3 1/7 SPEAr: Use CLKDEV_INIT for defining clk_lookups
--- arch/arm/mach-spear3xx/clock.c | 111 ++++++++++++++++++++-------------------- arch/arm/mach-spear6xx/clock.c | 80 ++++++++++++++-------------- 2 files changed, 96 insertions(+), 95 deletions(-)
arch/arm/mach-spear3xx/clock.c +56 -55
@@ -11,6 +11,7 @@* warranty of any kind, whether express or implied. */ +#include <linux/clkdev.h> #include <linux/init.h> #include <linux/io.h> #include <linux/kernel.h>
@@ -652,85 +653,85 @@ static struct clk pwm_clk = {/* array of all spear 3xx clock lookups */ static struct clk_lookup spear_clk_lookups[] = { - { .con_id ="apb_pclk" , .clk = &dummy_apb_pclk}, +CLKDEV_INIT (NULL ,"apb_pclk" , &dummy_apb_pclk),/* root clks */ - { .con_id ="osc_32k_clk" , .clk = &osc_32k_clk}, - { .con_id ="osc_24m_clk" , .clk = &osc_24m_clk}, +CLKDEV_INIT (NULL ,"osc_32k_clk" , &osc_32k_clk), +CLKDEV_INIT (NULL ,"osc_24m_clk" , &osc_24m_clk),/* clock derived from 32 KHz osc clk */ - { .dev_id ="rtc-spear" , .clk = &rtc_clk}, +CLKDEV_INIT ("rtc-spear" ,NULL , &rtc_clk),/* clock derived from 24 MHz osc clk */ - { .con_id ="pll1_clk" , .clk = &pll1_clk}, - { .con_id ="pll3_48m_clk" , .clk = &pll3_48m_clk}, - { .dev_id ="wdt" , .clk = &wdt_clk}, +CLKDEV_INIT (NULL ,"pll1_clk" , &pll1_clk), +CLKDEV_INIT (NULL ,"pll3_48m_clk" , &pll3_48m_clk), +CLKDEV_INIT ("wdt" ,NULL , &wdt_clk),/* clock derived from pll1 clk */ - { .con_id ="cpu_clk" , .clk = &cpu_clk}, - { .con_id ="ahb_clk" , .clk = &ahb_clk}, - { .con_id ="uart_synth_clk" , .clk = &uart_synth_clk}, - { .con_id ="firda_synth_clk" , .clk = &firda_synth_clk}, - { .con_id ="gpt0_synth_clk" , .clk = &gpt0_synth_clk}, - { .con_id ="gpt1_synth_clk" , .clk = &gpt1_synth_clk}, - { .con_id ="gpt2_synth_clk" , .clk = &gpt2_synth_clk}, - { .dev_id ="uart" , .clk = &uart_clk}, - { .dev_id ="firda" , .clk = &firda_clk}, - { .dev_id ="gpt0" , .clk = &gpt0_clk}, - { .dev_id ="gpt1" , .clk = &gpt1_clk}, - { .dev_id ="gpt2" , .clk = &gpt2_clk}, +CLKDEV_INIT (NULL ,"cpu_clk" , &cpu_clk), +CLKDEV_INIT (NULL ,"ahb_clk" , &ahb_clk), +CLKDEV_INIT (NULL ,"uart_synth_clk" , &uart_synth_clk), +CLKDEV_INIT (NULL ,"firda_synth_clk" , &firda_synth_clk), +CLKDEV_INIT (NULL ,"gpt0_synth_clk" , &gpt0_synth_clk), +CLKDEV_INIT (NULL ,"gpt1_synth_clk" , &gpt1_synth_clk), +CLKDEV_INIT (NULL ,"gpt2_synth_clk" , &gpt2_synth_clk), +CLKDEV_INIT ("uart" ,NULL , &uart_clk), +CLKDEV_INIT ("firda" ,NULL , &firda_clk), +CLKDEV_INIT ("gpt0" ,NULL , &gpt0_clk), +CLKDEV_INIT ("gpt1" ,NULL , &gpt1_clk), +CLKDEV_INIT ("gpt2" ,NULL , &gpt2_clk),/* clock derived from pll3 clk */ - { .dev_id ="designware_udc" , .clk = &usbd_clk}, - { .con_id ="usbh_clk" , .clk = &usbh_clk}, +CLKDEV_INIT ("designware_udc" ,NULL , &usbd_clk), +CLKDEV_INIT (NULL ,"usbh_clk" , &usbh_clk),/* clock derived from ahb clk */ - { .con_id ="apb_clk" , .clk = &apb_clk}, - { .dev_id ="i2c_designware.0" , .clk = &i2c_clk}, - { .dev_id ="dma" , .clk = &dma_clk}, - { .dev_id ="jpeg" , .clk = &jpeg_clk}, - { .dev_id ="gmac" , .clk = &gmac_clk}, - { .dev_id ="smi" , .clk = &smi_clk}, - { .dev_id ="c3" , .clk = &c3_clk}, +CLKDEV_INIT (NULL ,"apb_clk" , &apb_clk), +CLKDEV_INIT ("i2c_designware.0" ,NULL , &i2c_clk), +CLKDEV_INIT ("dma" ,NULL , &dma_clk), +CLKDEV_INIT ("jpeg" ,NULL , &jpeg_clk), +CLKDEV_INIT ("gmac" ,NULL , &gmac_clk), +CLKDEV_INIT ("smi" ,NULL , &smi_clk), +CLKDEV_INIT ("c3" ,NULL , &c3_clk),/* clock derived from apb clk */ - { .dev_id ="adc" , .clk = &adc_clk}, - { .dev_id ="ssp-pl022.0" , .clk = &ssp0_clk}, - { .dev_id ="gpio" , .clk = &gpio_clk}, +CLKDEV_INIT ("adc" ,NULL , &adc_clk), +CLKDEV_INIT ("ssp-pl022.0" ,NULL , &ssp0_clk), +CLKDEV_INIT ("gpio" ,NULL , &gpio_clk), };/* array of all spear 300 clock lookups */ #ifdef CONFIG_MACH_SPEAR300 static struct clk_lookup spear300_clk_lookups[] = { - { .dev_id ="clcd" , .clk = &clcd_clk}, - { .con_id ="fsmc" , .clk = &fsmc_clk}, - { .dev_id ="gpio1" , .clk = &gpio1_clk}, - { .dev_id ="keyboard" , .clk = &kbd_clk}, - { .dev_id ="sdhci" , .clk = &sdhci_clk}, +CLKDEV_INIT ("clcd" ,NULL , &clcd_clk), +CLKDEV_INIT ("fsmc" ,NULL , &fsmc_clk), +CLKDEV_INIT ("gpio1" ,NULL , &gpio1_clk), +CLKDEV_INIT ("keyboard" ,NULL , &kbd_clk), +CLKDEV_INIT ("sdhci" ,NULL , &sdhci_clk), };#endif /* array of all spear 310 clock lookups */ #ifdef CONFIG_MACH_SPEAR310 static struct clk_lookup spear310_clk_lookups[] = { - { .con_id ="fsmc" , .clk = &fsmc_clk}, - { .con_id ="emi" , .clk = &emi_clk}, - { .dev_id ="uart1" , .clk = &uart1_clk}, - { .dev_id ="uart2" , .clk = &uart2_clk}, - { .dev_id ="uart3" , .clk = &uart3_clk}, - { .dev_id ="uart4" , .clk = &uart4_clk}, - { .dev_id ="uart5" , .clk = &uart5_clk}, +CLKDEV_INIT ("fsmc" ,NULL , &fsmc_clk), +CLKDEV_INIT (NULL ,"emi" , &emi_clk), +CLKDEV_INIT ("uart1" ,NULL , &uart1_clk), +CLKDEV_INIT ("uart2" ,NULL , &uart2_clk), +CLKDEV_INIT ("uart3" ,NULL , &uart3_clk), +CLKDEV_INIT ("uart4" ,NULL , &uart4_clk), +CLKDEV_INIT ("uart5" ,NULL , &uart5_clk), };#endif /* array of all spear 320 clock lookups */ #ifdef CONFIG_MACH_SPEAR320 static struct clk_lookup spear320_clk_lookups[] = { - { .dev_id ="clcd" , .clk = &clcd_clk}, - { .con_id ="fsmc" , .clk = &fsmc_clk}, - { .dev_id ="i2c_designware.1" , .clk = &i2c1_clk}, - { .con_id ="emi" , .clk = &emi_clk}, - { .dev_id ="pwm" , .clk = &pwm_clk}, - { .dev_id ="sdhci" , .clk = &sdhci_clk}, - { .dev_id ="c_can_platform.0" , .clk = &can0_clk}, - { .dev_id ="c_can_platform.1" , .clk = &can1_clk}, - { .dev_id ="ssp-pl022.1" , .clk = &ssp1_clk}, - { .dev_id ="ssp-pl022.2" , .clk = &ssp2_clk}, - { .dev_id ="uart1" , .clk = &uart1_clk}, - { .dev_id ="uart2" , .clk = &uart2_clk}, +CLKDEV_INIT ("clcd" ,NULL , &clcd_clk), +CLKDEV_INIT ("fsmc" ,NULL , &fsmc_clk), +CLKDEV_INIT ("i2c_designware.1" ,NULL , &i2c1_clk), +CLKDEV_INIT (NULL ,"emi" , &emi_clk), +CLKDEV_INIT ("pwm" ,NULL , &pwm_clk), +CLKDEV_INIT ("sdhci" ,NULL , &sdhci_clk), +CLKDEV_INIT ("c_can_platform.0" ,NULL , &can0_clk), +CLKDEV_INIT ("c_can_platform.1" ,NULL , &can1_clk), +CLKDEV_INIT ("ssp-pl022.1" ,NULL , &ssp1_clk), +CLKDEV_INIT ("ssp-pl022.2" ,NULL , &ssp2_clk), +CLKDEV_INIT ("uart1" ,NULL , &uart1_clk), +CLKDEV_INIT ("uart2" ,NULL , &uart2_clk), };#endif
arch/arm/mach-spear6xx/clock.c +40 -40
93 lines not on this page · raw message
Signature · 1 line
1.7.9
PATCH v3 2/7 SPEAr3xx: Add clock instance of usb hosts - ehci and ohci 0 and 1
In reply to Viresh KumarThis patch adds following clocks: "usbh.0_clk" and "usbh.1_clk". They are used by ehci and ohci drivers for SPEAr3xx usb host devices.
--- arch/arm/mach-spear3xx/clock.c | 18 ++++++++++++++++++ 1 files changed, 18 insertions(+), 0 deletions(-)
arch/arm/mach-spear3xx/clock.c +18 -0
@@ -412,6 +412,21 @@ static struct clk usbd_clk = { .recalc = &follow_parent, }; +/* clock derived from usbh clk */ +/* usbh0 clock */ +static struct clk usbh0_clk = { + .flags =ALWAYS_ENABLED , + .pclk = &usbh_clk, + .recalc = &follow_parent, +}; + +/* usbh1 clock */ +static struct clk usbh1_clk = { + .flags =ALWAYS_ENABLED , + .pclk = &usbh_clk, + .recalc = &follow_parent, +}; +/* clock derived from ahb clk */ /* apb masks structure */ static struct bus_clk_masks apb_masks = {
@@ -679,6 +694,9 @@ static struct clk_lookup spear_clk_lookups[] = {/* clock derived from pll3 clk */ CLKDEV_INIT ("designware_udc" ,NULL , &usbd_clk),CLKDEV_INIT (NULL ,"usbh_clk" , &usbh_clk), +/* clock derived from usbh clk */ +CLKDEV_INIT (NULL ,"usbh.0_clk" , &usbh0_clk), +CLKDEV_INIT (NULL ,"usbh.1_clk" , &usbh1_clk),/* clock derived from ahb clk */ CLKDEV_INIT (NULL ,"apb_clk" , &apb_clk), CLKDEV_INIT("i2c_designware.0", NULL, &i2c_clk),
Signature · 1 line
1.7.9
PATCH v3 3/7 SPEAr6xx: Add compilation support for dtbs using 'make dtbs'
In reply to Viresh Kumar'make dtbs' compiles all dtbs for a family. For this we need to add entries for all board dtb's in Makefile.boot file. This patch does it.
--- arch/arm/mach-spear6xx/Makefile.boot | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-)
arch/arm/mach-spear6xx/Makefile.boot +2 -0
@@ -1,3 +1,5 @@ zreladdr-y += 0x00008000 params_phys-y := 0x00000100 initrd_phys-y := 0x00800000 + +dtb-$(CONFIG_BOARD_SPEAR600_DT) += spear600-evb.dtb
Signature · 1 line
1.7.9
PATCH v3 4/7 SPEAr3xx: Replace printk() with pr_*()
In reply to Viresh KumarFor better print logs/messages, it is advisable to use pr_*() routines instead of directly calling printks. This patch removes direct calling of printks for spear3xx.
--- arch/arm/mach-spear3xx/spear300.c | 8 +++++--- arch/arm/mach-spear3xx/spear310.c | 13 +++++++------ arch/arm/mach-spear3xx/spear320.c | 11 ++++++----- arch/arm/mach-spear3xx/spear3xx.c | 2 ++ 4 files changed, 20 insertions(+), 14 deletions(-)
arch/arm/mach-spear3xx/spear300.c +5 -3
@@ -11,6 +11,8 @@* warranty of any kind, whether express or implied. */ +#define pr_fmt (fmt) "SPEAr300: " fmt +#include <linux/types.h> #include <linux/amba/pl061.h> #include <linux/ptrace.h>
@@ -447,7 +449,7 @@ void __init spear300_init(struct pmx_mode *pmx_mode, struct pmx_dev **pmx_devs,if (shirq_ras1.regs.base) { ret =spear_shirq_register (&shirq_ras1);if (ret) -printk (KERN_ERR "Error registering Shared IRQ\n" ); +pr_err ("Error registering Shared IRQ\n" ); }/* pmx initialization */
@@ -459,8 +461,8 @@ void __init spear300_init(struct pmx_mode *pmx_mode, struct pmx_dev **pmx_devs,if (pmx_driver.base) { ret =pmx_register (&pmx_driver);if (ret) -printk (KERN_ERR "padmux: registration failed. err no" -": %d\n" , ret); +pr_err ("padmux: registration failed. err no: %d\n" , + ret);/* Free Mapping, device selection already done */ iounmap (pmx_driver.base); }
arch/arm/mach-spear3xx/spear310.c +7 -6
@@ -11,6 +11,8 @@* warranty of any kind, whether express or implied. */ +#define pr_fmt (fmt) "SPEAr310: " fmt +#include <linux/ptrace.h> #include <asm/irq.h> #include <plat/shirq.h>
@@ -274,25 +276,25 @@ void __init spear310_init(struct pmx_mode *pmx_mode, struct pmx_dev **pmx_devs, shirq_ras1.regs.base = base; ret =spear_shirq_register (&shirq_ras1);if (ret) -printk (KERN_ERR "Error registering Shared IRQ 1\n" ); +pr_err ("Error registering Shared IRQ 1\n" );/* shirq 2 */ shirq_ras2.regs.base = base; ret =spear_shirq_register (&shirq_ras2);if (ret) -printk (KERN_ERR "Error registering Shared IRQ 2\n" ); +pr_err ("Error registering Shared IRQ 2\n" );/* shirq 3 */ shirq_ras3.regs.base = base; ret =spear_shirq_register (&shirq_ras3);if (ret) -printk (KERN_ERR "Error registering Shared IRQ 3\n" ); +pr_err ("Error registering Shared IRQ 3\n" );/* shirq 4 */ shirq_intrcomm_ras.regs.base = base; ret =spear_shirq_register (&shirq_intrcomm_ras);if (ret) -printk (KERN_ERR "Error registering Shared IRQ 4\n" ); +pr_err ("Error registering Shared IRQ 4\n" ); }/* pmx initialization */
@@ -303,6 +305,5 @@ void __init spear310_init(struct pmx_mode *pmx_mode, struct pmx_dev **pmx_devs, ret =pmx_register (&pmx_driver);if (ret) -printk (KERN_ERR "padmux: registration failed. err no: %d\n" , - ret); +pr_err ("padmux: registration failed. err no: %d\n" , ret); }
arch/arm/mach-spear3xx/spear320.c +6 -5
@@ -11,6 +11,8 @@* warranty of any kind, whether express or implied. */ +#define pr_fmt (fmt) "SPEAr320: " fmt +#include <linux/ptrace.h> #include <asm/irq.h> #include <plat/shirq.h>
@@ -527,19 +529,19 @@ void __init spear320_init(struct pmx_mode *pmx_mode, struct pmx_dev **pmx_devs, shirq_ras1.regs.base = base; ret =spear_shirq_register (&shirq_ras1);if (ret) -printk (KERN_ERR "Error registering Shared IRQ 1\n" ); +pr_err ("Error registering Shared IRQ 1\n" );/* shirq 3 */ shirq_ras3.regs.base = base; ret =spear_shirq_register (&shirq_ras3);if (ret) -printk (KERN_ERR "Error registering Shared IRQ 3\n" ); +pr_err ("Error registering Shared IRQ 3\n" );/* shirq 4 */ shirq_intrcomm_ras.regs.base = base; ret =spear_shirq_register (&shirq_intrcomm_ras);if (ret) -printk (KERN_ERR "Error registering Shared IRQ 4\n" ); +pr_err ("Error registering Shared IRQ 4\n" ); }/* pmx initialization */
@@ -550,6 +552,5 @@ void __init spear320_init(struct pmx_mode *pmx_mode, struct pmx_dev **pmx_devs, ret =pmx_register (&pmx_driver);if (ret) -printk (KERN_ERR "padmux: registration failed. err no: %d\n" , - ret); +pr_err ("padmux: registration failed. err no: %d\n" , ret); }
arch/arm/mach-spear3xx/spear3xx.c +2 -0
@@ -11,6 +11,8 @@* warranty of any kind, whether express or implied. */ +#define pr_fmt (fmt) "SPEAr3xx: " fmt +#include <linux/types.h> #include <linux/amba/pl061.h> #include <linux/ptrace.h>
Signature · 1 line
1.7.9
PATCH v3 5/7 ARM: SPEAr3xx: Add device-tree support to SPEAr3xx architecture
In reply to Viresh KumarThis patch adds a generic target for SPEAr3xx machines that can be configured via the device-tree. Currently the following devices are supported via the devicetree:
- VIC interrupts
- PL011 UART
- PL061 GPIO
- PL110 CLCD
- SP805 WDT
- Synopsys DW I2C
- Synopsys DW ethernet
- ST FSMC-NAND
- ST SPEAR-SMI
- ST SPEAR-KEYBOARD
- ST SPEAR-RTC
- ARASAN SDHCI-SPEAR
- SPEAR-EHCI
- SPEAR-OHCI
Other peripheral devices will follow in later patches.
This also removes IO_ADDRESS macro and creates 16 MB static mappings instead of 4K for individual peripherals. This is done to have efficient TLB lookup for any I/O windows that are located closely together. ioremap() on this range will return this mapping only instead of creating another.
--- Documentation/arm/SPEAr/overview.txt | 13 +- Documentation/devicetree/bindings/arm/spear.txt | 18 +++ arch/arm/boot/dts/spear300-evb.dts | 179 +++++++++++++++++++++++ arch/arm/boot/dts/spear300.dtsi | 72 +++++++++ arch/arm/boot/dts/spear310-evb.dts | 107 ++++++++++++++ arch/arm/boot/dts/spear310.dtsi | 75 ++++++++++ arch/arm/boot/dts/spear320-evb.dts | 108 ++++++++++++++ arch/arm/boot/dts/spear320.dtsi | 90 ++++++++++++ arch/arm/boot/dts/spear3xx.dtsi | 136 +++++++++++++++++ arch/arm/mach-spear3xx/Kconfig | 34 +---- arch/arm/mach-spear3xx/Makefile | 13 +-- arch/arm/mach-spear3xx/Makefile.boot | 4 + arch/arm/mach-spear3xx/clock.c | 103 ++++++++------ arch/arm/mach-spear3xx/include/mach/generic.h | 29 +--- arch/arm/mach-spear3xx/include/mach/hardware.h | 3 - arch/arm/mach-spear3xx/include/mach/spear.h | 9 +- arch/arm/mach-spear3xx/spear300.c | 97 +++++++++---- arch/arm/mach-spear3xx/spear300_evb.c | 75 ---------- arch/arm/mach-spear3xx/spear310.c | 126 ++++++++++++++--- arch/arm/mach-spear3xx/spear310_evb.c | 81 ---------- arch/arm/mach-spear3xx/spear320.c | 127 ++++++++++++++--- arch/arm/mach-spear3xx/spear320_evb.c | 79 ---------- arch/arm/mach-spear3xx/spear3xx.c | 127 ++++++++--------- arch/arm/plat-spear/Kconfig | 3 +- 24 files changed, 1222 insertions(+), 486 deletions(-) create mode 100644 arch/arm/boot/dts/spear300-evb.dts create mode 100644 arch/arm/boot/dts/spear300.dtsi create mode 100644 arch/arm/boot/dts/spear310-evb.dts create mode 100644 arch/arm/boot/dts/spear310.dtsi create mode 100644 arch/arm/boot/dts/spear320-evb.dts create mode 100644 arch/arm/boot/dts/spear320.dtsi create mode 100644 arch/arm/boot/dts/spear3xx.dtsi delete mode 100644 arch/arm/mach-spear3xx/spear300_evb.c delete mode 100644 arch/arm/mach-spear3xx/spear310_evb.c delete mode 100644 arch/arm/mach-spear3xx/spear320_evb.c
Documentation/arm/SPEAr/overview.txt +7 -6
@@ -17,14 +17,14 @@ Introduction SPEAr (Platform) - SPEAr3XX (3XX SOC series, based on ARM9) - SPEAr300 (SOC) - - SPEAr300_EVB (Evaluation Board) + - SPEAr300 Evaluation Board - SPEAr310 (SOC) - - SPEAr310_EVB (Evaluation Board) + - SPEAr310 Evaluation Board - SPEAr320 (SOC) - - SPEAr320_EVB (Evaluation Board) + - SPEAr320 Evaluation Board - SPEAr6XX (6XX SOC series, based on ARM9) - SPEAr600 (SOC) - - SPEAr600_EVB (Evaluation Board) + - SPEAr600 Evaluation Board - SPEAr13XX (13XX SOC series, based on ARM CORTEXA9) - SPEAr1300 (SOC)
@@ -51,10 +51,11 @@ Introduction Common file for machines of spear3xx family is mach-spear3xx/spear3xx.c and for spear6xx is mach-spear6xx/spear6xx.c. mach-spear* also contain soc/machine specific files, like spear300.c, spear310.c, spear320.c and spear600.c. - mach-spear* also contains board specific files for each machine type. + mach-spear* doesn't contains board specific files as they fully support + Flattened Device Tree. Document Author --------------- - Viresh Kumar, (c) 2010 ST Microelectronics + Viresh Kumar <[email protected]>, (c) 2010-2012 ST Microelectronics
Documentation/devicetree/bindings/arm/spear.txt +18 -0
@@ -6,3 +6,21 @@ Boards with the ST SPEAr600 SoC shall have the following properties: Required root node property: compatible = "st,spear600"; + +Boards with the ST SPEAr300 SoC shall have the following properties: + +Required root node property: + +compatible = "st,spear300"; + +Boards with the ST SPEAr310 SoC shall have the following properties: + +Required root node property: + +compatible = "st,spear310"; + +Boards with the ST SPEAr320 SoC shall have the following properties: + +Required root node property: + +compatible = "st,spear320";
arch/arm/boot/dts/spear300-evb.dts new file +179 -0
179 lines not on this page · raw message
arch/arm/boot/dts/spear300.dtsi new file +72 -0
72 lines not on this page · raw message
arch/arm/boot/dts/spear310-evb.dts new file +107 -0
107 lines not on this page · raw message
arch/arm/boot/dts/spear310.dtsi new file +75 -0
75 lines not on this page · raw message
arch/arm/boot/dts/spear320-evb.dts new file +108 -0
108 lines not on this page · raw message
arch/arm/boot/dts/spear320.dtsi new file +90 -0
90 lines not on this page · raw message
arch/arm/boot/dts/spear3xx.dtsi new file +136 -0
136 lines not on this page · raw message
arch/arm/mach-spear3xx/Kconfig +7 -27
@@ -5,39 +5,19 @@ if ARCH_SPEAR3XX menu "SPEAr3xx Implementations" -config BOARD_SPEAR300_EVB - bool "SPEAr300 Evaluation Board" - select MACH_SPEAR300 - help - Supports ST SPEAr300 Evaluation Board - -config BOARD_SPEAR310_EVB - bool "SPEAr310 Evaluation Board" - select MACH_SPEAR310 - help - Supports ST SPEAr310 Evaluation Board - -config BOARD_SPEAR320_EVB - bool "SPEAr320 Evaluation Board" - select MACH_SPEAR320 - help - Supports ST SPEAr320 Evaluation Board - -endmenu - config MACH_SPEAR300 - bool "SPEAr300" + bool "SPEAr300 Machine support with Device Tree" help - Supports ST SPEAr300 Machine + Supports ST SPEAr300 machine configured via the device-tree config MACH_SPEAR310 - bool "SPEAr310" + bool "SPEAr310 Machine support with Device Tree" help - Supports ST SPEAr310 Machine + Supports ST SPEAr310 machine configured via the device-tree config MACH_SPEAR320 - bool "SPEAr320" + bool "SPEAr320 Machine support with Device Tree" help - Supports ST SPEAr320 Machine - + Supports ST SPEAr320 machine configured via the device-tree +endmenu endif #ARCH_SPEAR3XX
arch/arm/mach-spear3xx/Makefile +1 -12
@@ -3,24 +3,13 @@ # # common files -obj-y += spear3xx.o clock.o +obj-$(CONFIG_ARCH_SPEAR3XX) += spear3xx.o clock.o # spear300 specific files obj-$(CONFIG_MACH_SPEAR300) += spear300.o -# spear300 boards files -obj-$(CONFIG_BOARD_SPEAR300_EVB) += spear300_evb.o - - # spear310 specific files obj-$(CONFIG_MACH_SPEAR310) += spear310.o -# spear310 boards files -obj-$(CONFIG_BOARD_SPEAR310_EVB) += spear310_evb.o - - # spear320 specific files obj-$(CONFIG_MACH_SPEAR320) += spear320.o - -# spear320 boards files -obj-$(CONFIG_BOARD_SPEAR320_EVB) += spear320_evb.o
arch/arm/mach-spear3xx/Makefile.boot +4 -0
@@ -1,3 +1,7 @@ zreladdr-y += 0x00008000 params_phys-y := 0x00000100 initrd_phys-y := 0x00800000 + +dtb-$(CONFIG_MACH_SPEAR300) += spear300-evb.dtb +dtb-$(CONFIG_MACH_SPEAR310) += spear310-evb.dtb +dtb-$(CONFIG_MACH_SPEAR320) += spear320-evb.dtb
arch/arm/mach-spear3xx/clock.c +59 -44
164 lines not on this page · raw message
arch/arm/mach-spear3xx/include/mach/generic.h +8 -21
@@ -31,16 +31,13 @@#define SPEAR_GPT0_CHAN1_IRQ SPEAR3XX_IRQ_CPU_GPT1_2/* Add spear3xx family device structure declarations here */ -extern struct amba_device spear3xx_gpio_device; -extern struct amba_device spear3xx_uart_device;extern struct sys_timer spear3xx_timer; +extern struct pl022_ssp_controller pl022_plat_data;/* Add spear3xx family function declarations here */ -void __init spear3xx_clk_init (void );void __init spear_setup_timer (void );void __init spear3xx_map_io (void ); -void __init spear3xx_init_irq (void ); -void __init spear3xx_init (void ); +void __init spear3xx_dt_init_irq (void );void spear_restart (char ,const char *);
@@ -99,9 +96,6 @@ extern struct pmx_dev spear3xx_pmx_plgpio_45_46_49_50;/* spear300 declarations */ #ifdef CONFIG_MACH_SPEAR300 -/* Add spear300 machine device structure declarations here */ -extern struct amba_device spear300_gpio1_device; -/* pad mux modes */ extern struct pmx_mode spear300_nand_mode;extern struct pmx_mode spear300_nor_mode;
@@ -133,16 +127,13 @@ extern struct pmx_dev spear300_pmx_telecom_sdhci_4bit;extern struct pmx_dev spear300_pmx_telecom_sdhci_8bit;extern struct pmx_dev spear300_pmx_gpio1; -/* Add spear300 machine function declarations here */ -void __init spear300_init (struct pmx_mode *pmx_mode,struct pmx_dev **pmx_devs, -u8 pmx_dev_count); +/* Add spear300 machine declarations here */ +void __init spear300_clk_init (void );#endif /* CONFIG_MACH_SPEAR300 */ /* spear310 declarations */ #ifdef CONFIG_MACH_SPEAR310 -/* Add spear310 machine device structure declarations here */ -/* pad mux devices */ extern struct pmx_dev spear310_pmx_emi_cs_0_1_4_5;extern struct pmx_dev spear310_pmx_emi_cs_2_3;
@@ -153,16 +144,13 @@ extern struct pmx_dev spear310_pmx_fsmc;extern struct pmx_dev spear310_pmx_rs485_0_1;extern struct pmx_dev spear310_pmx_tdm0; -/* Add spear310 machine function declarations here */ -void __init spear310_init (struct pmx_mode *pmx_mode,struct pmx_dev **pmx_devs, -u8 pmx_dev_count); +/* Add spear310 machine declarations here */ +void __init spear310_clk_init (void );#endif /* CONFIG_MACH_SPEAR310 */ /* spear320 declarations */ #ifdef CONFIG_MACH_SPEAR320 -/* Add spear320 machine device structure declarations here */ -/* pad mux modes */ extern struct pmx_mode spear320_auto_net_smii_mode;extern struct pmx_mode spear320_auto_net_mii_mode;
@@ -193,9 +181,8 @@ extern struct pmx_dev spear320_pmx_smii0;extern struct pmx_dev spear320_pmx_smii1;extern struct pmx_dev spear320_pmx_i2c1; -/* Add spear320 machine function declarations here */ -void __init spear320_init (struct pmx_mode *pmx_mode,struct pmx_dev **pmx_devs, -u8 pmx_dev_count); +/* Add spear320 machine declarations here */ +void __init spear320_clk_init (void );#endif /* CONFIG_MACH_SPEAR320 */
arch/arm/mach-spear3xx/include/mach/hardware.h +0 -3
@@ -17,7 +17,4 @@#include <plat/hardware.h> #include <mach/spear.h> -/* Vitual to physical translation of statically mapped space */ -#define IO_ADDRESS (x) (x | 0xF0000000) -#endif /* __MACH_HARDWARE_H */
arch/arm/mach-spear3xx/include/mach/spear.h +5 -4
@@ -25,8 +25,9 @@/* ICM1 - Low speed connection */ #define SPEAR3XX_ICM1_2_BASE UL(0xD0000000) +#define VA_SPEAR3XX_ICM1_2_BASE UL(0xFD000000)#define SPEAR3XX_ICM1_UART_BASE UL(0xD0000000) -#define VA_SPEAR3XX_ICM1_UART_BASE IO_ADDRESS(SPEAR3XX_ICM1_UART_BASE) +#define VA_SPEAR3XX_ICM1_UART_BASE (VA_SPEAR3XX_ICM1_2_BASE | SPEAR3XX_ICM1_UART_BASE)#define SPEAR3XX_ICM1_ADC_BASE UL(0xD0080000)#define SPEAR3XX_ICM1_SSP_BASE UL(0xD0100000)#define SPEAR3XX_ICM1_I2C_BASE UL(0xD0180000)
@@ -53,11 +54,11 @@#define SPEAR3XX_ICM3_ML1_2_BASE UL(0xF0000000)#define SPEAR3XX_ML1_TMR_BASE UL(0xF0000000)#define SPEAR3XX_ML1_VIC_BASE UL(0xF1100000) -#define VA_SPEAR3XX_ML1_VIC_BASE IO_ADDRESS(SPEAR3XX_ML1_VIC_BASE)/* ICM3 - Basic Subsystem */ #define SPEAR3XX_ICM3_SMEM_BASE UL(0xF8000000)#define SPEAR3XX_ICM3_SMI_CTRL_BASE UL(0xFC000000) +#define VA_SPEAR3XX_ICM3_SMI_CTRL_BASE UL(0xFC000000)#define SPEAR3XX_ICM3_DMA_BASE UL(0xFC400000)#define SPEAR3XX_ICM3_SDRAM_CTRL_BASE UL(0xFC600000)#define SPEAR3XX_ICM3_TMR0_BASE UL(0xFC800000)
@@ -65,9 +66,9 @@#define SPEAR3XX_ICM3_RTC_BASE UL(0xFC900000)#define SPEAR3XX_ICM3_GPIO_BASE UL(0xFC980000)#define SPEAR3XX_ICM3_SYS_CTRL_BASE UL(0xFCA00000) -#define VA_SPEAR3XX_ICM3_SYS_CTRL_BASE IO_ADDRESS(SPEAR3XX_ICM3_SYS_CTRL_BASE) +#define VA_SPEAR3XX_ICM3_SYS_CTRL_BASE (VA_SPEAR3XX_ICM3_SMI_CTRL_BASE | SPEAR3XX_ICM3_SYS_CTRL_BASE)#define SPEAR3XX_ICM3_MISC_REG_BASE UL(0xFCA80000) -#define VA_SPEAR3XX_ICM3_MISC_REG_BASE IO_ADDRESS(SPEAR3XX_ICM3_MISC_REG_BASE) +#define VA_SPEAR3XX_ICM3_MISC_REG_BASE (VA_SPEAR3XX_ICM3_SMI_CTRL_BASE | SPEAR3XX_ICM3_MISC_REG_BASE)#define SPEAR3XX_ICM3_TMR1_BASE UL(0xFCB00000)/* Debug uart for linux, will be used for debug and uncompress messages */
arch/arm/mach-spear3xx/spear300.c +67 -30
127 lines not on this page · raw message
arch/arm/mach-spear3xx/spear300_evb.c deleted +0 -75
75 lines not on this page · raw message
arch/arm/mach-spear3xx/spear310.c +108 -18
154 lines not on this page · raw message
arch/arm/mach-spear3xx/spear310_evb.c deleted +0 -81
81 lines not on this page · raw message
arch/arm/mach-spear3xx/spear320.c +109 -18
155 lines not on this page · raw message
arch/arm/mach-spear3xx/spear320_evb.c deleted +0 -79
79 lines not on this page · raw message
arch/arm/mach-spear3xx/spear3xx.c +60 -67
153 lines not on this page · raw message
arch/arm/plat-spear/Kconfig +2 -1
@@ -9,9 +9,10 @@ choice default ARCH_SPEAR3XX config ARCH_SPEAR3XX - bool "SPEAr3XX" + bool "ST SPEAr3xx with Device Tree" select ARM_VIC select CPU_ARM926T + select USE_OF help Supports for ARM's SPEAR3XX family
Signature · 1 line
1.7.9
PATCH v3 6/7 SPEAr: Add PL080 DMA support for 3xx and 6xx
In reply to Viresh KumarBoth SPEAr3xx and SPEAr6xx families have one instance of ARM PL080 DMA controller. This patch adds in support for that.
--- arch/arm/boot/dts/spear300-evb.dts | 4 + arch/arm/boot/dts/spear310-evb.dts | 4 + arch/arm/boot/dts/spear320-evb.dts | 4 + arch/arm/boot/dts/spear3xx.dtsi | 8 + arch/arm/boot/dts/spear600-evb.dts | 4 + arch/arm/boot/dts/spear600.dtsi | 8 + arch/arm/mach-spear3xx/clock.c | 2 +- arch/arm/mach-spear3xx/include/mach/generic.h | 2 + arch/arm/mach-spear3xx/spear300.c | 193 +++++++++++++ arch/arm/mach-spear3xx/spear310.c | 192 +++++++++++++ arch/arm/mach-spear3xx/spear320.c | 192 +++++++++++++ arch/arm/mach-spear3xx/spear3xx.c | 19 ++ arch/arm/mach-spear6xx/clock.c | 2 +- arch/arm/mach-spear6xx/spear6xx.c | 372 ++++++++++++++++++++++++- arch/arm/plat-spear/Makefile | 2 +- arch/arm/plat-spear/include/plat/pl080.h | 21 ++ arch/arm/plat-spear/pl080.c | 79 ++++++ 17 files changed, 1104 insertions(+), 4 deletions(-) create mode 100644 arch/arm/plat-spear/include/plat/pl080.h create mode 100644 arch/arm/plat-spear/pl080.c
arch/arm/boot/dts/spear300-evb.dts +4 -0
@@ -29,6 +29,10 @@ status = "okay"; }; + dma at fc400000 { + status = "okay"; + }; + fsmc: flash at 94000000 { status = "okay"; };
arch/arm/boot/dts/spear310-evb.dts +4 -0
@@ -25,6 +25,10 @@ }; ahb { + dma at fc400000 { + status = "okay"; + }; + fsmc: flash at 44000000 { status = "okay"; };
arch/arm/boot/dts/spear320-evb.dts +4 -0
@@ -29,6 +29,10 @@ status = "okay"; }; + dma at fc400000 { + status = "okay"; + }; + fsmc: flash at 4c000000 { status = "okay"; };
arch/arm/boot/dts/spear3xx.dtsi +8 -0
@@ -40,6 +40,14 @@ #interrupt-cells = <1>; }; + dma at fc400000 { + compatible = "arm,pl080", "arm,primecell"; + reg = <0xfc400000 0x1000>; + interrupt-parent = <&vic>; + interrupts = <8>; + status = "disabled"; + }; + gmac: eth at e0800000 { compatible = "st,spear600-gmac"; reg = <0xe0800000 0x8000>;
arch/arm/boot/dts/spear600-evb.dts +4 -0
@@ -24,6 +24,10 @@ }; ahb { + dma at fc400000 { + status = "okay"; + }; + gmac: ethernet at e0800000 { phy-mode = "gmii"; status = "okay";
arch/arm/boot/dts/spear600.dtsi +8 -0
@@ -45,6 +45,14 @@ #interrupt-cells = <1>; }; + dma at fc400000 { + compatible = "arm,pl080", "arm,primecell"; + reg = <0xfc400000 0x1000>; + interrupt-parent = <&vic1>; + interrupts = <10>; + status = "disabled"; + }; + gmac: ethernet at e0800000 { compatible = "st,spear600-gmac"; reg = <0xe0800000 0x8000>;
arch/arm/mach-spear3xx/clock.c +1 -1
@@ -701,7 +701,7 @@ static struct clk_lookup spear_clk_lookups[] = {/* clock derived from ahb clk */ CLKDEV_INIT (NULL ,"apb_clk" , &apb_clk),CLKDEV_INIT ("d0180000.i2c" ,NULL , &i2c_clk), -CLKDEV_INIT ("dma" ,NULL , &dma_clk), +CLKDEV_INIT ("fc400000.dma" ,NULL , &dma_clk),CLKDEV_INIT ("jpeg" ,NULL , &jpeg_clk),CLKDEV_INIT ("e0800000.eth" ,NULL , &gmac_clk), CLKDEV_INIT("fc000000.flash", NULL, &smi_clk),
arch/arm/mach-spear3xx/include/mach/generic.h +2 -0
@@ -14,6 +14,7 @@#ifndef __MACH_GENERIC_H#define __MACH_GENERIC_H +#include <linux/amba/pl08x.h> #include <linux/init.h> #include <linux/platform_device.h> #include <linux/amba/bus.h>
@@ -33,6 +34,7 @@/* Add spear3xx family device structure declarations here */ extern struct sys_timer spear3xx_timer;extern struct pl022_ssp_controller pl022_plat_data; +extern struct pl08x_platform_data pl080_plat_data;/* Add spear3xx family function declarations here */ void __init spear_setup_timer (void );
arch/arm/mach-spear3xx/spear300.c +193 -0
215 lines not on this page · raw message
arch/arm/mach-spear3xx/spear310.c +192 -0
210 lines not on this page · raw message
arch/arm/mach-spear3xx/spear320.c +192 -0
210 lines not on this page · raw message
arch/arm/mach-spear3xx/spear3xx.c +19 -0
@@ -17,7 +17,9 @@#include <linux/amba/pl08x.h> #include <linux/of_irq.h> #include <linux/io.h> +#include <asm/hardware/pl080.h> #include <asm/hardware/vic.h> +#include <plat/pl080.h> #include <mach/generic.h> #include <mach/hardware.h>
@@ -465,6 +467,23 @@ struct pl022_ssp_controller pl022_plat_data = { .num_chipselect = 2, }; +/* dmac device registration */ +struct pl08x_platform_data pl080_plat_data = { + .memcpy_channel = { + .bus_id ="memcpy" , + .cctl = (PL080_BSIZE_16 <<PL080_CONTROL_SB_SIZE_SHIFT | \ +PL080_BSIZE_16 <<PL080_CONTROL_DB_SIZE_SHIFT | \ +PL080_WIDTH_32BIT <<PL080_CONTROL_SWIDTH_SHIFT | \ +PL080_WIDTH_32BIT <<PL080_CONTROL_DWIDTH_SHIFT | \ +PL080_CONTROL_PROT_BUFF |PL080_CONTROL_PROT_CACHE | \ +PL080_CONTROL_PROT_SYS ), + }, + .lli_buses =PL08X_AHB1 , + .mem_buses =PL08X_AHB1 , + .get_signal = pl080_get_signal, + .put_signal = pl080_put_signal, +}; +/* * Following will create 16MB static virtual/physical mappings * PHYSICAL VIRTUAL
arch/arm/mach-spear6xx/clock.c +1 -1
@@ -657,7 +657,7 @@ static struct clk_lookup spear_clk_lookups[] = {/* clock derived from ahb clk */ CLKDEV_INIT (NULL ,"apb_clk" , &apb_clk),CLKDEV_INIT ("d0200000.i2c" ,NULL , &i2c_clk), -CLKDEV_INIT ("dma" ,NULL , &dma_clk), +CLKDEV_INIT ("fc400000.dma" ,NULL , &dma_clk),CLKDEV_INIT ("jpeg" ,NULL , &jpeg_clk),CLKDEV_INIT ("gmac" ,NULL , &gmac_clk), CLKDEV_INIT("fc000000.flash", NULL, &smi_clk),
arch/arm/mach-spear6xx/spear6xx.c +371 -1
395 lines not on this page · raw message
arch/arm/plat-spear/Makefile +1 -1
@@ -3,6 +3,6 @@ # # Common support -obj-y := clock.o restart.o time.o +obj-y := clock.o restart.o time.o pl080.o obj-$(CONFIG_ARCH_SPEAR3XX) += shirq.o padmux.o
arch/arm/plat-spear/include/plat/pl080.h new file +21 -0
@@ -0,0 +1,21 @@ +/* +* arch/arm/plat-spear/include/plat/pl080.h +* +* DMAC pl080 definitions for SPEAr platform +* +* Copyright (C) 2012 ST Microelectronics +* Viresh Kumar <[email protected]> +* +* This file is licensed under the terms of the GNU General Public +* License version 2. This program is licensed "as is" without any +* warranty of any kind, whether express or implied. +*/ + +#ifndef __PLAT_PL080_H +#define __PLAT_PL080_H + +struct pl08x_dma_chan ; +int pl080_get_signal (struct pl08x_dma_chan *ch); +void pl080_put_signal (struct pl08x_dma_chan *ch); + +#endif /* __PLAT_PL080_H */
arch/arm/plat-spear/pl080.c new file +79 -0
79 lines not on this page · raw message
Signature · 1 line
1.7.9
PATCH v3 7/7 SPEAr: Update defconfigs
In reply to Viresh KumarRecently device tree support is added for SPEAr3xx & SPEAr6xx and we must upgrade defconfig for that to get compiled. This patches does it.
There are few more rearrangements done in defconfig automatically, when i run make savedefconfig.
--- arch/arm/configs/spear3xx_defconfig | 52 +++++++++++++++++++++++++++------- arch/arm/configs/spear6xx_defconfig | 41 ++++++++++++++++++++++----- 2 files changed, 74 insertions(+), 19 deletions(-)
arch/arm/configs/spear3xx_defconfig +41 -11
@@ -2,33 +2,67 @@ CONFIG_EXPERIMENTAL=y CONFIG_SYSVIPC=y CONFIG_BSD_PROCESS_ACCT=y CONFIG_BLK_DEV_INITRD=y -CONFIG_KALLSYMS_EXTRA_PASS=y CONFIG_MODULES=y CONFIG_MODULE_UNLOAD=y CONFIG_MODVERSIONS=y +CONFIG_PARTITION_ADVANCED=y CONFIG_PLAT_SPEAR=y -CONFIG_BOARD_SPEAR300_EVB=y -CONFIG_BOARD_SPEAR310_EVB=y -CONFIG_BOARD_SPEAR320_EVB=y +CONFIG_MACH_SPEAR300=y +CONFIG_MACH_SPEAR310=y +CONFIG_MACH_SPEAR320=y CONFIG_BINFMT_MISC=y +CONFIG_NET=y CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" +CONFIG_MTD=y +CONFIG_MTD_NAND=y +CONFIG_MTD_NAND_FSMC=y CONFIG_BLK_DEV_RAM=y CONFIG_BLK_DEV_RAM_SIZE=16384 +CONFIG_NETDEVICES=y +# CONFIG_NET_VENDOR_BROADCOM is not set +# CONFIG_NET_VENDOR_CIRRUS is not set +# CONFIG_NET_VENDOR_FARADAY is not set +# CONFIG_NET_VENDOR_INTEL is not set +# CONFIG_NET_VENDOR_MICREL is not set +# CONFIG_NET_VENDOR_NATSEMI is not set +# CONFIG_NET_VENDOR_SEEQ is not set +# CONFIG_NET_VENDOR_SMSC is not set +CONFIG_STMMAC_ETH=y +# CONFIG_WLAN is not set CONFIG_INPUT_FF_MEMLESS=y # CONFIG_INPUT_MOUSEDEV_PSAUX is not set -# CONFIG_INPUT_KEYBOARD is not set +# CONFIG_KEYBOARD_ATKBD is not set +CONFIG_KEYBOARD_SPEAR=y # CONFIG_INPUT_MOUSE is not set +# CONFIG_LEGACY_PTYS is not set CONFIG_SERIAL_AMBA_PL011=y CONFIG_SERIAL_AMBA_PL011_CONSOLE=y -# CONFIG_LEGACY_PTYS is not set # CONFIG_HW_RANDOM is not set CONFIG_RAW_DRIVER=y CONFIG_MAX_RAW_DEVS=8192 +CONFIG_I2C=y +CONFIG_I2C_DESIGNWARE_PLATFORM=y +CONFIG_SPI=y +CONFIG_SPI_PL022=y CONFIG_GPIO_SYSFS=y CONFIG_GPIO_PL061=y # CONFIG_HWMON is not set +CONFIG_WATCHDOG=y +CONFIG_ARM_SP805_WATCHDOG=y +CONFIG_FB=y +CONFIG_FB_ARMCLCD=y # CONFIG_HID_SUPPORT is not set -# CONFIG_USB_SUPPORT is not set +CONFIG_USB=y +# CONFIG_USB_DEVICE_CLASS is not set +CONFIG_USB_EHCI_HCD=y +CONFIG_USB_OHCI_HCD=y +CONFIG_MMC=y +CONFIG_MMC_SDHCI=y +CONFIG_MMC_SDHCI_SPEAR=y +CONFIG_RTC_CLASS=y +CONFIG_DMADEVICES=y +CONFIG_AMBA_PL08X=y +CONFIG_DMATEST=m CONFIG_EXT2_FS=y CONFIG_EXT2_FS_XATTR=y CONFIG_EXT2_FS_SECURITY=y
@@ -39,8 +73,6 @@ CONFIG_MSDOS_FS=m CONFIG_VFAT_FS=m CONFIG_FAT_DEFAULT_IOCHARSET="ascii" CONFIG_TMPFS=y -CONFIG_PARTITION_ADVANCED=y -CONFIG_NLS=y CONFIG_NLS_DEFAULT="utf8" CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_ASCII=m
@@ -48,6 +80,4 @@ CONFIG_MAGIC_SYSRQ=y CONFIG_DEBUG_FS=y CONFIG_DEBUG_KERNEL=y CONFIG_DEBUG_SPINLOCK=y -CONFIG_DEBUG_SPINLOCK_SLEEP=y CONFIG_DEBUG_INFO=y -# CONFIG_CRC32 is not set
arch/arm/configs/spear6xx_defconfig +33 -8
76 lines not on this page · raw message
Signature · 1 line
1.7.9