Commit 32e6e5c34416672183caaddf16355f01d295e620

Authored by Linus Torvalds

Merge tag 'blackfin-3.16-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git…

…/realmz6/blackfin-linux

Pull blackfin fixes from Steven Miao:
 "smc nor flash PM fix, pinctrl group fix, update defconfig, and build
  fixes"

* tag 'blackfin-3.16-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/realmz6/blackfin-linux:
  blackfin: vmlinux.lds.S: reserve 32 bytes space at the end of data section for XIP kernel
  defconfig: BF609: update spi config name
  irq: blackfin sec: drop duplicated sec priority set
  blackfin: bind different groups of one pinmux function to different state name
  blackfin: fix some bf5xx boards build for missing <linux/gpio.h>
  pm: bf609: cleanup smc nor flash

Showing 14 changed files Side-by-side Diff

arch/blackfin/configs/BF609-EZKIT_defconfig
... ... @@ -102,7 +102,7 @@
102 102 CONFIG_I2C_BLACKFIN_TWI=y
103 103 CONFIG_I2C_BLACKFIN_TWI_CLK_KHZ=100
104 104 CONFIG_SPI=y
105   -CONFIG_SPI_BFIN_V3=y
  105 +CONFIG_SPI_ADI_V3=y
106 106 CONFIG_GPIOLIB=y
107 107 CONFIG_GPIO_SYSFS=y
108 108 # CONFIG_HWMON is not set
arch/blackfin/kernel/vmlinux.lds.S
... ... @@ -145,7 +145,7 @@
145 145  
146 146 .text_l1 L1_CODE_START : AT(LOADADDR(.exit.data) + SIZEOF(.exit.data))
147 147 #else
148   - .init.data : AT(__data_lma + __data_len)
  148 + .init.data : AT(__data_lma + __data_len + 32)
149 149 {
150 150 __sinitdata = .;
151 151 INIT_DATA
arch/blackfin/mach-bf533/boards/blackstamp.c
... ... @@ -20,6 +20,7 @@
20 20 #include <linux/spi/spi.h>
21 21 #include <linux/spi/flash.h>
22 22 #include <linux/irq.h>
  23 +#include <linux/gpio.h>
23 24 #include <linux/i2c.h>
24 25 #include <asm/dma.h>
25 26 #include <asm/bfin5xx_spi.h>
arch/blackfin/mach-bf537/boards/cm_bf537e.c
... ... @@ -21,6 +21,7 @@
21 21 #endif
22 22 #include <linux/ata_platform.h>
23 23 #include <linux/irq.h>
  24 +#include <linux/gpio.h>
24 25 #include <asm/dma.h>
25 26 #include <asm/bfin5xx_spi.h>
26 27 #include <asm/portmux.h>
arch/blackfin/mach-bf537/boards/cm_bf537u.c
... ... @@ -21,6 +21,7 @@
21 21 #endif
22 22 #include <linux/ata_platform.h>
23 23 #include <linux/irq.h>
  24 +#include <linux/gpio.h>
24 25 #include <asm/dma.h>
25 26 #include <asm/bfin5xx_spi.h>
26 27 #include <asm/portmux.h>
arch/blackfin/mach-bf537/boards/tcm_bf537.c
... ... @@ -21,6 +21,7 @@
21 21 #endif
22 22 #include <linux/ata_platform.h>
23 23 #include <linux/irq.h>
  24 +#include <linux/gpio.h>
24 25 #include <asm/dma.h>
25 26 #include <asm/bfin5xx_spi.h>
26 27 #include <asm/portmux.h>
arch/blackfin/mach-bf548/boards/ezkit.c
... ... @@ -2118,7 +2118,7 @@
2118 2118 PIN_MAP_MUX_GROUP_DEFAULT("bfin-rotary", "pinctrl-adi2.0", NULL, "rotary"),
2119 2119 PIN_MAP_MUX_GROUP_DEFAULT("bfin_can.0", "pinctrl-adi2.0", NULL, "can0"),
2120 2120 PIN_MAP_MUX_GROUP_DEFAULT("bfin_can.1", "pinctrl-adi2.0", NULL, "can1"),
2121   - PIN_MAP_MUX_GROUP_DEFAULT("bf54x-lq043", "pinctrl-adi2.0", NULL, "ppi0_24b"),
  2121 + PIN_MAP_MUX_GROUP_DEFAULT("bf54x-lq043", "pinctrl-adi2.0", "ppi0_24bgrp", "ppi0"),
2122 2122 PIN_MAP_MUX_GROUP_DEFAULT("bfin-i2s.0", "pinctrl-adi2.0", NULL, "sport0"),
2123 2123 PIN_MAP_MUX_GROUP_DEFAULT("bfin-tdm.0", "pinctrl-adi2.0", NULL, "sport0"),
2124 2124 PIN_MAP_MUX_GROUP_DEFAULT("bfin-ac97.0", "pinctrl-adi2.0", NULL, "sport0"),
... ... @@ -2140,7 +2140,9 @@
2140 2140 PIN_MAP_MUX_GROUP_DEFAULT("pata-bf54x", "pinctrl-adi2.0", NULL, "atapi_alter"),
2141 2141 #endif
2142 2142 PIN_MAP_MUX_GROUP_DEFAULT("bf5xx-nand.0", "pinctrl-adi2.0", NULL, "nfc0"),
2143   - PIN_MAP_MUX_GROUP_DEFAULT("bf54x-keys", "pinctrl-adi2.0", NULL, "keys_4x4"),
  2143 + PIN_MAP_MUX_GROUP_DEFAULT("bf54x-keys", "pinctrl-adi2.0", "keys_4x4grp", "keys"),
  2144 + PIN_MAP_MUX_GROUP("bf54x-keys", "4bit", "pinctrl-adi2.0", "keys_4x4grp", "keys"),
  2145 + PIN_MAP_MUX_GROUP("bf54x-keys", "8bit", "pinctrl-adi2.0", "keys_8x8grp", "keys"),
2144 2146 };
2145 2147  
2146 2148 static int __init ezkit_init(void)
arch/blackfin/mach-bf561/boards/acvilon.c
... ... @@ -44,6 +44,7 @@
44 44 #include <linux/spi/flash.h>
45 45 #include <linux/irq.h>
46 46 #include <linux/interrupt.h>
  47 +#include <linux/gpio.h>
47 48 #include <linux/jiffies.h>
48 49 #include <linux/i2c-pca-platform.h>
49 50 #include <linux/delay.h>
arch/blackfin/mach-bf561/boards/cm_bf561.c
... ... @@ -18,6 +18,7 @@
18 18 #endif
19 19 #include <linux/ata_platform.h>
20 20 #include <linux/irq.h>
  21 +#include <linux/gpio.h>
21 22 #include <asm/dma.h>
22 23 #include <asm/bfin5xx_spi.h>
23 24 #include <asm/portmux.h>
arch/blackfin/mach-bf561/boards/ezkit.c
... ... @@ -14,6 +14,7 @@
14 14 #include <linux/spi/spi.h>
15 15 #include <linux/irq.h>
16 16 #include <linux/interrupt.h>
  17 +#include <linux/gpio.h>
17 18 #include <linux/delay.h>
18 19 #include <asm/dma.h>
19 20 #include <asm/bfin5xx_spi.h>
arch/blackfin/mach-bf609/boards/ezkit.c
... ... @@ -698,8 +698,6 @@
698 698 {
699 699 #define CONFIG_SMC_GCTL_VAL 0x00000010
700 700  
701   - if (!devm_pinctrl_get_select_default(&pdev->dev))
702   - return -EBUSY;
703 701 bfin_write32(SMC_GCTL, CONFIG_SMC_GCTL_VAL);
704 702 bfin_write32(SMC_B0CTL, 0x01002011);
705 703 bfin_write32(SMC_B0TIM, 0x08170977);
... ... @@ -709,7 +707,6 @@
709 707  
710 708 void bf609_nor_flash_exit(struct platform_device *pdev)
711 709 {
712   - devm_pinctrl_put(pdev->dev.pins->p);
713 710 bfin_write32(SMC_GCTL, 0);
714 711 }
715 712  
... ... @@ -2058,15 +2055,14 @@
2058 2055 PIN_MAP_MUX_GROUP_DEFAULT("bfin-rotary", "pinctrl-adi2.0", NULL, "rotary"),
2059 2056 PIN_MAP_MUX_GROUP_DEFAULT("bfin_can.0", "pinctrl-adi2.0", NULL, "can0"),
2060 2057 PIN_MAP_MUX_GROUP_DEFAULT("physmap-flash.0", "pinctrl-adi2.0", NULL, "smc0"),
2061   - PIN_MAP_MUX_GROUP_DEFAULT("bf609_nl8048.2", "pinctrl-adi2.0", NULL, "ppi2_16b"),
2062   - PIN_MAP_MUX_GROUP_DEFAULT("bfin_display.0", "pinctrl-adi2.0", NULL, "ppi0_16b"),
2063   -#if IS_ENABLED(CONFIG_VIDEO_MT9M114)
2064   - PIN_MAP_MUX_GROUP_DEFAULT("bfin_capture.0", "pinctrl-adi2.0", NULL, "ppi0_8b"),
2065   -#elif IS_ENABLED(CONFIG_VIDEO_VS6624)
2066   - PIN_MAP_MUX_GROUP_DEFAULT("bfin_capture.0", "pinctrl-adi2.0", NULL, "ppi0_16b"),
2067   -#else
2068   - PIN_MAP_MUX_GROUP_DEFAULT("bfin_capture.0", "pinctrl-adi2.0", NULL, "ppi0_24b"),
2069   -#endif
  2058 + PIN_MAP_MUX_GROUP_DEFAULT("bf609_nl8048.2", "pinctrl-adi2.0", "ppi2_16bgrp", "ppi2"),
  2059 + PIN_MAP_MUX_GROUP("bfin_display.0", "8bit", "pinctrl-adi2.0", "ppi2_8bgrp", "ppi2"),
  2060 + PIN_MAP_MUX_GROUP_DEFAULT("bfin_display.0", "pinctrl-adi2.0", "ppi2_16bgrp", "ppi2"),
  2061 + PIN_MAP_MUX_GROUP("bfin_display.0", "16bit", "pinctrl-adi2.0", "ppi2_16bgrp", "ppi2"),
  2062 + PIN_MAP_MUX_GROUP("bfin_capture.0", "8bit", "pinctrl-adi2.0", "ppi0_8bgrp", "ppi0"),
  2063 + PIN_MAP_MUX_GROUP_DEFAULT("bfin_capture.0", "pinctrl-adi2.0", "ppi0_16bgrp", "ppi0"),
  2064 + PIN_MAP_MUX_GROUP("bfin_capture.0", "16bit", "pinctrl-adi2.0", "ppi0_16bgrp", "ppi0"),
  2065 + PIN_MAP_MUX_GROUP("bfin_capture.0", "24bit", "pinctrl-adi2.0", "ppi0_24bgrp", "ppi0"),
2070 2066 PIN_MAP_MUX_GROUP_DEFAULT("bfin-i2s.0", "pinctrl-adi2.0", NULL, "sport0"),
2071 2067 PIN_MAP_MUX_GROUP_DEFAULT("bfin-tdm.0", "pinctrl-adi2.0", NULL, "sport0"),
2072 2068 PIN_MAP_MUX_GROUP_DEFAULT("bfin-i2s.1", "pinctrl-adi2.0", NULL, "sport1"),
arch/blackfin/mach-bf609/include/mach/pm.h
... ... @@ -10,6 +10,7 @@
10 10 #define __MACH_BF609_PM_H__
11 11  
12 12 #include <linux/suspend.h>
  13 +#include <linux/platform_device.h>
13 14  
14 15 extern int bfin609_pm_enter(suspend_state_t state);
15 16 extern int bf609_pm_prepare(void);
... ... @@ -19,7 +20,7 @@
19 20 void bfin_sec_raise_irq(unsigned int sid);
20 21 void coreb_enable(void);
21 22  
22   -int bf609_nor_flash_init(void);
23   -void bf609_nor_flash_exit(void);
  23 +int bf609_nor_flash_init(struct platform_device *pdev);
  24 +void bf609_nor_flash_exit(struct platform_device *pdev);
24 25 #endif
arch/blackfin/mach-bf609/pm.c
... ... @@ -291,13 +291,13 @@
291 291 #if defined(CONFIG_MTD_PHYSMAP) || defined(CONFIG_MTD_PHYSMAP_MODULE)
292 292 static int smc_pm_syscore_suspend(void)
293 293 {
294   - bf609_nor_flash_exit();
  294 + bf609_nor_flash_exit(NULL);
295 295 return 0;
296 296 }
297 297  
298 298 static void smc_pm_syscore_resume(void)
299 299 {
300   - bf609_nor_flash_init();
  300 + bf609_nor_flash_init(NULL);
301 301 }
302 302  
303 303 static struct syscore_ops smc_pm_syscore_ops = {
arch/blackfin/mach-common/ints-priority.c
... ... @@ -1208,8 +1208,6 @@
1208 1208  
1209 1209 bfin_sec_set_priority(CONFIG_SEC_IRQ_PRIORITY_LEVELS, sec_int_priority);
1210 1210  
1211   - bfin_sec_set_priority(CONFIG_SEC_IRQ_PRIORITY_LEVELS, sec_int_priority);
1212   -
1213 1211 /* Enable interrupts IVG7-15 */
1214 1212 bfin_irq_flags |= IMASK_IVG15 |
1215 1213 IMASK_IVG14 | IMASK_IVG13 | IMASK_IVG12 | IMASK_IVG11 |