aboutsummaryrefslogtreecommitdiffstats
path: root/arch/blackfin
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2015-04-24 10:58:07 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2015-04-24 10:58:07 -0400
commit668b54a1c2c25bde34cd9c077b1c5f03b46bcb49 (patch)
tree37030b3469a7a752b5a081ab6b8e1d801a2d4357 /arch/blackfin
parentfab1e5502cf5719669c96c6f240e8eb963abfe6b (diff)
parentd91e14b3b9e1d8e1d552f4d6aff45551bbb410b1 (diff)
Merge tag 'blackfin-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/realmz6/blackfin-linux
Pull blackfin updates from Steven Miao. * tag 'blackfin-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/realmz6/blackfin-linux: eth: bf609 eth clock: add pclk clock for stmmac driver probe blackfin: Wire up missing syscalls arch: blackfin: kernel: kgdb: Remove unused function dma: fix build error after update to v3.19 blackfin: io: define __raw_readx/writex with bfin_readx/writex bf609: add resources for lcd nl8048 pm: sometimes wake up from suspend to RAM would fail debug-mmrs: Eliminate all traces of the USB_PHY_TEST MMR bf609: remove softswitch i2c configuration from adv7842 and adv7511 platform data bf609: add platform data for soft switch devices on the video extenders bf609: enable soft switch gpio driver by default bf609: add gpio soft switch platform data for mcp23017 i2c devices bf609: use new SND_BF6XX_PCM to choose audio pcm driver bug[220] kgdb: change the smp cross core function entry arch: blackfin: kernel: setup.c: Cleaning up missing null-terminate in conjunction with strncpy blackfin: defconfigs: cleanup unused CONFIG_MTD_CHAR, add MTD_SPI_NOR for BF537-STAMP
Diffstat (limited to 'arch/blackfin')
-rw-r--r--arch/blackfin/configs/BF518F-EZBRD_defconfig1
-rw-r--r--arch/blackfin/configs/BF527-TLL6527M_defconfig1
-rw-r--r--arch/blackfin/configs/BF533-EZKIT_defconfig1
-rw-r--r--arch/blackfin/configs/BF533-STAMP_defconfig1
-rw-r--r--arch/blackfin/configs/BF537-STAMP_defconfig3
-rw-r--r--arch/blackfin/configs/BF538-EZKIT_defconfig1
-rw-r--r--arch/blackfin/configs/BF561-ACVILON_defconfig1
-rw-r--r--arch/blackfin/configs/BF561-EZKIT-SMP_defconfig1
-rw-r--r--arch/blackfin/configs/BF561-EZKIT_defconfig1
-rw-r--r--arch/blackfin/configs/BF609-EZKIT_defconfig1
-rw-r--r--arch/blackfin/configs/CM-BF527_defconfig1
-rw-r--r--arch/blackfin/configs/CM-BF533_defconfig1
-rw-r--r--arch/blackfin/configs/CM-BF537E_defconfig1
-rw-r--r--arch/blackfin/configs/CM-BF537U_defconfig1
-rw-r--r--arch/blackfin/configs/CM-BF548_defconfig1
-rw-r--r--arch/blackfin/configs/CM-BF561_defconfig1
-rw-r--r--arch/blackfin/configs/DNP5370_defconfig1
-rw-r--r--arch/blackfin/configs/IP0X_defconfig1
-rw-r--r--arch/blackfin/configs/PNAV-10_defconfig1
-rw-r--r--arch/blackfin/configs/SRV1_defconfig1
-rw-r--r--arch/blackfin/configs/TCM-BF518_defconfig1
-rw-r--r--arch/blackfin/configs/TCM-BF537_defconfig1
-rw-r--r--arch/blackfin/include/asm/io.h35
-rw-r--r--arch/blackfin/include/uapi/asm/unistd.h12
-rw-r--r--arch/blackfin/kernel/debug-mmrs.c1
-rw-r--r--arch/blackfin/kernel/kgdb.c25
-rw-r--r--arch/blackfin/kernel/setup.c2
-rw-r--r--arch/blackfin/mach-bf527/include/mach/cdefBF525.h5
-rw-r--r--arch/blackfin/mach-bf527/include/mach/defBF525.h4
-rw-r--r--arch/blackfin/mach-bf548/include/mach/cdefBF542.h4
-rw-r--r--arch/blackfin/mach-bf548/include/mach/cdefBF547.h4
-rw-r--r--arch/blackfin/mach-bf548/include/mach/defBF542.h3
-rw-r--r--arch/blackfin/mach-bf548/include/mach/defBF547.h3
-rw-r--r--arch/blackfin/mach-bf609/boards/ezkit.c90
-rw-r--r--arch/blackfin/mach-bf609/clock.c7
-rw-r--r--arch/blackfin/mach-common/entry.S10
-rw-r--r--arch/blackfin/mach-common/pm.c2
37 files changed, 127 insertions, 104 deletions
diff --git a/arch/blackfin/configs/BF518F-EZBRD_defconfig b/arch/blackfin/configs/BF518F-EZBRD_defconfig
index 383007877b2b..99c00d835f47 100644
--- a/arch/blackfin/configs/BF518F-EZBRD_defconfig
+++ b/arch/blackfin/configs/BF518F-EZBRD_defconfig
@@ -48,7 +48,6 @@ CONFIG_IP_PNP=y
48CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 48CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
49# CONFIG_FW_LOADER is not set 49# CONFIG_FW_LOADER is not set
50CONFIG_MTD=y 50CONFIG_MTD=y
51CONFIG_MTD_CHAR=y
52CONFIG_MTD_BLOCK=y 51CONFIG_MTD_BLOCK=y
53CONFIG_MTD_JEDECPROBE=m 52CONFIG_MTD_JEDECPROBE=m
54CONFIG_MTD_RAM=y 53CONFIG_MTD_RAM=y
diff --git a/arch/blackfin/configs/BF527-TLL6527M_defconfig b/arch/blackfin/configs/BF527-TLL6527M_defconfig
index cd0636bb24a0..cdeb51856f26 100644
--- a/arch/blackfin/configs/BF527-TLL6527M_defconfig
+++ b/arch/blackfin/configs/BF527-TLL6527M_defconfig
@@ -67,7 +67,6 @@ CONFIG_BFIN_SIR0=y
67CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 67CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
68# CONFIG_FW_LOADER is not set 68# CONFIG_FW_LOADER is not set
69CONFIG_MTD=y 69CONFIG_MTD=y
70CONFIG_MTD_CHAR=y
71CONFIG_MTD_BLOCK=y 70CONFIG_MTD_BLOCK=y
72CONFIG_MTD_CFI=y 71CONFIG_MTD_CFI=y
73CONFIG_MTD_CFI_INTELEXT=y 72CONFIG_MTD_CFI_INTELEXT=y
diff --git a/arch/blackfin/configs/BF533-EZKIT_defconfig b/arch/blackfin/configs/BF533-EZKIT_defconfig
index 16273a922056..ed7d2c096739 100644
--- a/arch/blackfin/configs/BF533-EZKIT_defconfig
+++ b/arch/blackfin/configs/BF533-EZKIT_defconfig
@@ -50,7 +50,6 @@ CONFIG_IRTTY_SIR=m
50CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 50CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
51# CONFIG_FW_LOADER is not set 51# CONFIG_FW_LOADER is not set
52CONFIG_MTD=y 52CONFIG_MTD=y
53CONFIG_MTD_CHAR=m
54CONFIG_MTD_BLOCK=y 53CONFIG_MTD_BLOCK=y
55CONFIG_MTD_JEDECPROBE=y 54CONFIG_MTD_JEDECPROBE=y
56CONFIG_MTD_CFI_AMDSTD=y 55CONFIG_MTD_CFI_AMDSTD=y
diff --git a/arch/blackfin/configs/BF533-STAMP_defconfig b/arch/blackfin/configs/BF533-STAMP_defconfig
index 0df2f921f7e5..0c241f4d28d7 100644
--- a/arch/blackfin/configs/BF533-STAMP_defconfig
+++ b/arch/blackfin/configs/BF533-STAMP_defconfig
@@ -50,7 +50,6 @@ CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
50# CONFIG_FW_LOADER is not set 50# CONFIG_FW_LOADER is not set
51CONFIG_MTD=y 51CONFIG_MTD=y
52CONFIG_MTD_CMDLINE_PARTS=y 52CONFIG_MTD_CMDLINE_PARTS=y
53CONFIG_MTD_CHAR=m
54CONFIG_MTD_BLOCK=y 53CONFIG_MTD_BLOCK=y
55CONFIG_MTD_CFI=m 54CONFIG_MTD_CFI=m
56CONFIG_MTD_CFI_AMDSTD=m 55CONFIG_MTD_CFI_AMDSTD=m
diff --git a/arch/blackfin/configs/BF537-STAMP_defconfig b/arch/blackfin/configs/BF537-STAMP_defconfig
index 91d3eda42742..e5360b30e39a 100644
--- a/arch/blackfin/configs/BF537-STAMP_defconfig
+++ b/arch/blackfin/configs/BF537-STAMP_defconfig
@@ -55,13 +55,14 @@ CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
55# CONFIG_FW_LOADER is not set 55# CONFIG_FW_LOADER is not set
56CONFIG_MTD=y 56CONFIG_MTD=y
57CONFIG_MTD_CMDLINE_PARTS=y 57CONFIG_MTD_CMDLINE_PARTS=y
58CONFIG_MTD_CHAR=m
59CONFIG_MTD_BLOCK=y 58CONFIG_MTD_BLOCK=y
60CONFIG_MTD_CFI=m 59CONFIG_MTD_CFI=m
61CONFIG_MTD_CFI_AMDSTD=m 60CONFIG_MTD_CFI_AMDSTD=m
62CONFIG_MTD_RAM=y 61CONFIG_MTD_RAM=y
63CONFIG_MTD_ROM=m 62CONFIG_MTD_ROM=m
64CONFIG_MTD_PHYSMAP=m 63CONFIG_MTD_PHYSMAP=m
64CONFIG_MTD_M25P80=y
65CONFIG_MTD_SPI_NOR=y
65CONFIG_BLK_DEV_RAM=y 66CONFIG_BLK_DEV_RAM=y
66CONFIG_NETDEVICES=y 67CONFIG_NETDEVICES=y
67CONFIG_NET_BFIN=y 68CONFIG_NET_BFIN=y
diff --git a/arch/blackfin/configs/BF538-EZKIT_defconfig b/arch/blackfin/configs/BF538-EZKIT_defconfig
index be03be6ba543..60f6fb86125c 100644
--- a/arch/blackfin/configs/BF538-EZKIT_defconfig
+++ b/arch/blackfin/configs/BF538-EZKIT_defconfig
@@ -60,7 +60,6 @@ CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
60# CONFIG_FW_LOADER is not set 60# CONFIG_FW_LOADER is not set
61CONFIG_MTD=y 61CONFIG_MTD=y
62CONFIG_MTD_CMDLINE_PARTS=y 62CONFIG_MTD_CMDLINE_PARTS=y
63CONFIG_MTD_CHAR=m
64CONFIG_MTD_BLOCK=y 63CONFIG_MTD_BLOCK=y
65CONFIG_MTD_CFI=m 64CONFIG_MTD_CFI=m
66CONFIG_MTD_CFI_AMDSTD=m 65CONFIG_MTD_CFI_AMDSTD=m
diff --git a/arch/blackfin/configs/BF561-ACVILON_defconfig b/arch/blackfin/configs/BF561-ACVILON_defconfig
index 802f9c421621..78f6bc79f910 100644
--- a/arch/blackfin/configs/BF561-ACVILON_defconfig
+++ b/arch/blackfin/configs/BF561-ACVILON_defconfig
@@ -50,7 +50,6 @@ CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
50# CONFIG_FW_LOADER is not set 50# CONFIG_FW_LOADER is not set
51CONFIG_MTD=y 51CONFIG_MTD=y
52CONFIG_MTD_CMDLINE_PARTS=y 52CONFIG_MTD_CMDLINE_PARTS=y
53CONFIG_MTD_CHAR=y
54CONFIG_MTD_BLOCK=y 53CONFIG_MTD_BLOCK=y
55CONFIG_MTD_PLATRAM=y 54CONFIG_MTD_PLATRAM=y
56CONFIG_MTD_PHRAM=y 55CONFIG_MTD_PHRAM=y
diff --git a/arch/blackfin/configs/BF561-EZKIT-SMP_defconfig b/arch/blackfin/configs/BF561-EZKIT-SMP_defconfig
index e2a2fa5935ce..fac8bb578249 100644
--- a/arch/blackfin/configs/BF561-EZKIT-SMP_defconfig
+++ b/arch/blackfin/configs/BF561-EZKIT-SMP_defconfig
@@ -52,7 +52,6 @@ CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
52# CONFIG_FW_LOADER is not set 52# CONFIG_FW_LOADER is not set
53CONFIG_MTD=y 53CONFIG_MTD=y
54CONFIG_MTD_CMDLINE_PARTS=y 54CONFIG_MTD_CMDLINE_PARTS=y
55CONFIG_MTD_CHAR=y
56CONFIG_MTD_BLOCK=y 55CONFIG_MTD_BLOCK=y
57CONFIG_MTD_CFI=y 56CONFIG_MTD_CFI=y
58CONFIG_MTD_CFI_AMDSTD=y 57CONFIG_MTD_CFI_AMDSTD=y
diff --git a/arch/blackfin/configs/BF561-EZKIT_defconfig b/arch/blackfin/configs/BF561-EZKIT_defconfig
index 680730eeaf23..2a2e4d0cebc1 100644
--- a/arch/blackfin/configs/BF561-EZKIT_defconfig
+++ b/arch/blackfin/configs/BF561-EZKIT_defconfig
@@ -54,7 +54,6 @@ CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
54# CONFIG_FW_LOADER is not set 54# CONFIG_FW_LOADER is not set
55CONFIG_MTD=y 55CONFIG_MTD=y
56CONFIG_MTD_CMDLINE_PARTS=y 56CONFIG_MTD_CMDLINE_PARTS=y
57CONFIG_MTD_CHAR=y
58CONFIG_MTD_BLOCK=y 57CONFIG_MTD_BLOCK=y
59CONFIG_MTD_CFI=y 58CONFIG_MTD_CFI=y
60CONFIG_MTD_CFI_AMDSTD=y 59CONFIG_MTD_CFI_AMDSTD=y
diff --git a/arch/blackfin/configs/BF609-EZKIT_defconfig b/arch/blackfin/configs/BF609-EZKIT_defconfig
index fcec5ce71392..ba4267f658af 100644
--- a/arch/blackfin/configs/BF609-EZKIT_defconfig
+++ b/arch/blackfin/configs/BF609-EZKIT_defconfig
@@ -105,6 +105,7 @@ CONFIG_SPI=y
105CONFIG_SPI_ADI_V3=y 105CONFIG_SPI_ADI_V3=y
106CONFIG_GPIOLIB=y 106CONFIG_GPIOLIB=y
107CONFIG_GPIO_SYSFS=y 107CONFIG_GPIO_SYSFS=y
108CONFIG_GPIO_MCP23S08=y
108# CONFIG_HWMON is not set 109# CONFIG_HWMON is not set
109CONFIG_WATCHDOG=y 110CONFIG_WATCHDOG=y
110CONFIG_BFIN_WDT=y 111CONFIG_BFIN_WDT=y
diff --git a/arch/blackfin/configs/CM-BF527_defconfig b/arch/blackfin/configs/CM-BF527_defconfig
index 05108b85ab12..1902bb05d086 100644
--- a/arch/blackfin/configs/CM-BF527_defconfig
+++ b/arch/blackfin/configs/CM-BF527_defconfig
@@ -55,7 +55,6 @@ CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
55# CONFIG_FW_LOADER is not set 55# CONFIG_FW_LOADER is not set
56CONFIG_MTD=y 56CONFIG_MTD=y
57CONFIG_MTD_CMDLINE_PARTS=y 57CONFIG_MTD_CMDLINE_PARTS=y
58CONFIG_MTD_CHAR=y
59CONFIG_MTD_BLOCK=y 58CONFIG_MTD_BLOCK=y
60CONFIG_MTD_CFI=y 59CONFIG_MTD_CFI=y
61CONFIG_MTD_CFI_INTELEXT=y 60CONFIG_MTD_CFI_INTELEXT=y
diff --git a/arch/blackfin/configs/CM-BF533_defconfig b/arch/blackfin/configs/CM-BF533_defconfig
index 5e0db82b679e..9a5716d57ebc 100644
--- a/arch/blackfin/configs/CM-BF533_defconfig
+++ b/arch/blackfin/configs/CM-BF533_defconfig
@@ -37,7 +37,6 @@ CONFIG_UNIX=y
37CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 37CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
38CONFIG_MTD=y 38CONFIG_MTD=y
39CONFIG_MTD_CMDLINE_PARTS=y 39CONFIG_MTD_CMDLINE_PARTS=y
40CONFIG_MTD_CHAR=y
41CONFIG_MTD_BLOCK=y 40CONFIG_MTD_BLOCK=y
42CONFIG_MTD_CFI=y 41CONFIG_MTD_CFI=y
43CONFIG_MTD_CFI_INTELEXT=y 42CONFIG_MTD_CFI_INTELEXT=y
diff --git a/arch/blackfin/configs/CM-BF537E_defconfig b/arch/blackfin/configs/CM-BF537E_defconfig
index 2e47df77490f..684592884349 100644
--- a/arch/blackfin/configs/CM-BF537E_defconfig
+++ b/arch/blackfin/configs/CM-BF537E_defconfig
@@ -52,7 +52,6 @@ CONFIG_IP_PNP=y
52CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 52CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
53CONFIG_MTD=y 53CONFIG_MTD=y
54CONFIG_MTD_CMDLINE_PARTS=y 54CONFIG_MTD_CMDLINE_PARTS=y
55CONFIG_MTD_CHAR=y
56CONFIG_MTD_BLOCK=y 55CONFIG_MTD_BLOCK=y
57CONFIG_MTD_CFI=y 56CONFIG_MTD_CFI=y
58CONFIG_MTD_CFI_INTELEXT=y 57CONFIG_MTD_CFI_INTELEXT=y
diff --git a/arch/blackfin/configs/CM-BF537U_defconfig b/arch/blackfin/configs/CM-BF537U_defconfig
index 6da629ffc2f1..d9915e984787 100644
--- a/arch/blackfin/configs/CM-BF537U_defconfig
+++ b/arch/blackfin/configs/CM-BF537U_defconfig
@@ -48,7 +48,6 @@ CONFIG_INET=y
48CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 48CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
49CONFIG_MTD=y 49CONFIG_MTD=y
50CONFIG_MTD_CMDLINE_PARTS=y 50CONFIG_MTD_CMDLINE_PARTS=y
51CONFIG_MTD_CHAR=y
52CONFIG_MTD_BLOCK=y 51CONFIG_MTD_BLOCK=y
53CONFIG_MTD_CFI=y 52CONFIG_MTD_CFI=y
54CONFIG_MTD_CFI_INTELEXT=y 53CONFIG_MTD_CFI_INTELEXT=y
diff --git a/arch/blackfin/configs/CM-BF548_defconfig b/arch/blackfin/configs/CM-BF548_defconfig
index 9ff79df6825c..92d8130cdb51 100644
--- a/arch/blackfin/configs/CM-BF548_defconfig
+++ b/arch/blackfin/configs/CM-BF548_defconfig
@@ -54,7 +54,6 @@ CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
54# CONFIG_FW_LOADER is not set 54# CONFIG_FW_LOADER is not set
55CONFIG_MTD=y 55CONFIG_MTD=y
56CONFIG_MTD_CMDLINE_PARTS=y 56CONFIG_MTD_CMDLINE_PARTS=y
57CONFIG_MTD_CHAR=y
58CONFIG_MTD_BLOCK=y 57CONFIG_MTD_BLOCK=y
59CONFIG_MTD_CFI=y 58CONFIG_MTD_CFI=y
60CONFIG_MTD_CFI_INTELEXT=y 59CONFIG_MTD_CFI_INTELEXT=y
diff --git a/arch/blackfin/configs/CM-BF561_defconfig b/arch/blackfin/configs/CM-BF561_defconfig
index d6dd98e67146..fa8d91132a57 100644
--- a/arch/blackfin/configs/CM-BF561_defconfig
+++ b/arch/blackfin/configs/CM-BF561_defconfig
@@ -52,7 +52,6 @@ CONFIG_INET=y
52CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 52CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
53CONFIG_MTD=y 53CONFIG_MTD=y
54CONFIG_MTD_CMDLINE_PARTS=y 54CONFIG_MTD_CMDLINE_PARTS=y
55CONFIG_MTD_CHAR=y
56CONFIG_MTD_BLOCK=y 55CONFIG_MTD_BLOCK=y
57CONFIG_MTD_CFI=y 56CONFIG_MTD_CFI=y
58CONFIG_MTD_CFI_INTELEXT=y 57CONFIG_MTD_CFI_INTELEXT=y
diff --git a/arch/blackfin/configs/DNP5370_defconfig b/arch/blackfin/configs/DNP5370_defconfig
index 2b58cb221283..88600593c731 100644
--- a/arch/blackfin/configs/DNP5370_defconfig
+++ b/arch/blackfin/configs/DNP5370_defconfig
@@ -36,7 +36,6 @@ CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
36CONFIG_MTD=y 36CONFIG_MTD=y
37CONFIG_MTD_DEBUG=y 37CONFIG_MTD_DEBUG=y
38CONFIG_MTD_DEBUG_VERBOSE=1 38CONFIG_MTD_DEBUG_VERBOSE=1
39CONFIG_MTD_CHAR=y
40CONFIG_MTD_BLOCK=y 39CONFIG_MTD_BLOCK=y
41CONFIG_NFTL=y 40CONFIG_NFTL=y
42CONFIG_NFTL_RW=y 41CONFIG_NFTL_RW=y
diff --git a/arch/blackfin/configs/IP0X_defconfig b/arch/blackfin/configs/IP0X_defconfig
index 5adf0da58499..9e3ae4b36d20 100644
--- a/arch/blackfin/configs/IP0X_defconfig
+++ b/arch/blackfin/configs/IP0X_defconfig
@@ -43,7 +43,6 @@ CONFIG_IP_NF_TARGET_REJECT=y
43CONFIG_IP_NF_MANGLE=y 43CONFIG_IP_NF_MANGLE=y
44# CONFIG_WIRELESS is not set 44# CONFIG_WIRELESS is not set
45CONFIG_MTD=y 45CONFIG_MTD=y
46CONFIG_MTD_CHAR=y
47CONFIG_MTD_BLOCK=y 46CONFIG_MTD_BLOCK=y
48CONFIG_MTD_CFI=y 47CONFIG_MTD_CFI=y
49CONFIG_MTD_CFI_AMDSTD=y 48CONFIG_MTD_CFI_AMDSTD=y
diff --git a/arch/blackfin/configs/PNAV-10_defconfig b/arch/blackfin/configs/PNAV-10_defconfig
index a6a7298962ed..c7926812971c 100644
--- a/arch/blackfin/configs/PNAV-10_defconfig
+++ b/arch/blackfin/configs/PNAV-10_defconfig
@@ -46,7 +46,6 @@ CONFIG_IP_PNP=y
46CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 46CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
47# CONFIG_FW_LOADER is not set 47# CONFIG_FW_LOADER is not set
48CONFIG_MTD=y 48CONFIG_MTD=y
49CONFIG_MTD_CHAR=m
50CONFIG_MTD_BLOCK=y 49CONFIG_MTD_BLOCK=y
51CONFIG_MTD_RAM=y 50CONFIG_MTD_RAM=y
52CONFIG_MTD_COMPLEX_MAPPINGS=y 51CONFIG_MTD_COMPLEX_MAPPINGS=y
diff --git a/arch/blackfin/configs/SRV1_defconfig b/arch/blackfin/configs/SRV1_defconfig
index bc216646fe18..23fdc57d657a 100644
--- a/arch/blackfin/configs/SRV1_defconfig
+++ b/arch/blackfin/configs/SRV1_defconfig
@@ -38,7 +38,6 @@ CONFIG_IRTTY_SIR=m
38# CONFIG_WIRELESS is not set 38# CONFIG_WIRELESS is not set
39# CONFIG_FW_LOADER is not set 39# CONFIG_FW_LOADER is not set
40CONFIG_MTD=y 40CONFIG_MTD=y
41CONFIG_MTD_CHAR=m
42CONFIG_MTD_BLOCK=y 41CONFIG_MTD_BLOCK=y
43CONFIG_MTD_JEDECPROBE=m 42CONFIG_MTD_JEDECPROBE=m
44CONFIG_MTD_RAM=y 43CONFIG_MTD_RAM=y
diff --git a/arch/blackfin/configs/TCM-BF518_defconfig b/arch/blackfin/configs/TCM-BF518_defconfig
index ea88158ab432..e28959479fe0 100644
--- a/arch/blackfin/configs/TCM-BF518_defconfig
+++ b/arch/blackfin/configs/TCM-BF518_defconfig
@@ -55,7 +55,6 @@ CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
55# CONFIG_FW_LOADER is not set 55# CONFIG_FW_LOADER is not set
56CONFIG_MTD=y 56CONFIG_MTD=y
57CONFIG_MTD_CMDLINE_PARTS=y 57CONFIG_MTD_CMDLINE_PARTS=y
58CONFIG_MTD_CHAR=y
59CONFIG_MTD_BLOCK=y 58CONFIG_MTD_BLOCK=y
60CONFIG_MTD_CFI=y 59CONFIG_MTD_CFI=y
61CONFIG_MTD_CFI_ADV_OPTIONS=y 60CONFIG_MTD_CFI_ADV_OPTIONS=y
diff --git a/arch/blackfin/configs/TCM-BF537_defconfig b/arch/blackfin/configs/TCM-BF537_defconfig
index c1f45f15295c..39e85cce95d7 100644
--- a/arch/blackfin/configs/TCM-BF537_defconfig
+++ b/arch/blackfin/configs/TCM-BF537_defconfig
@@ -44,7 +44,6 @@ CONFIG_INET=y
44CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" 44CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
45CONFIG_MTD=y 45CONFIG_MTD=y
46CONFIG_MTD_CMDLINE_PARTS=y 46CONFIG_MTD_CMDLINE_PARTS=y
47CONFIG_MTD_CHAR=y
48CONFIG_MTD_BLOCK=y 47CONFIG_MTD_BLOCK=y
49CONFIG_MTD_CFI=y 48CONFIG_MTD_CFI=y
50CONFIG_MTD_CFI_INTELEXT=y 49CONFIG_MTD_CFI_INTELEXT=y
diff --git a/arch/blackfin/include/asm/io.h b/arch/blackfin/include/asm/io.h
index dccae26805b0..4e8ad0523118 100644
--- a/arch/blackfin/include/asm/io.h
+++ b/arch/blackfin/include/asm/io.h
@@ -11,27 +11,12 @@
11#include <linux/types.h> 11#include <linux/types.h>
12#include <asm/byteorder.h> 12#include <asm/byteorder.h>
13 13
14#define DECLARE_BFIN_RAW_READX(size, type, asm, asm_sign) \ 14#define __raw_readb bfin_read8
15static inline type __raw_read##size(const volatile void __iomem *addr) \ 15#define __raw_readw bfin_read16
16{ \ 16#define __raw_readl bfin_read32
17 unsigned int val; \ 17#define __raw_writeb(val, addr) bfin_write8(addr, val)
18 int tmp; \ 18#define __raw_writew(val, addr) bfin_write16(addr, val)
19 __asm__ __volatile__ ( \ 19#define __raw_writel(val, addr) bfin_write32(addr, val)
20 "cli %1;" \
21 "NOP; NOP; SSYNC;" \
22 "%0 = "#asm" [%2] "#asm_sign";" \
23 "sti %1;" \
24 : "=d"(val), "=d"(tmp) \
25 : "a"(addr) \
26 ); \
27 return (type) val; \
28}
29DECLARE_BFIN_RAW_READX(b, u8, b, (z))
30#define __raw_readb __raw_readb
31DECLARE_BFIN_RAW_READX(w, u16, w, (z))
32#define __raw_readw __raw_readw
33DECLARE_BFIN_RAW_READX(l, u32, , )
34#define __raw_readl __raw_readl
35 20
36extern void outsb(unsigned long port, const void *addr, unsigned long count); 21extern void outsb(unsigned long port, const void *addr, unsigned long count);
37extern void outsw(unsigned long port, const void *addr, unsigned long count); 22extern void outsw(unsigned long port, const void *addr, unsigned long count);
@@ -50,14 +35,6 @@ extern void insl_16(unsigned long port, void *addr, unsigned long count);
50#define insw insw 35#define insw insw
51#define insl insl 36#define insl insl
52 37
53extern void dma_outsb(unsigned long port, const void *addr, unsigned short count);
54extern void dma_outsw(unsigned long port, const void *addr, unsigned short count);
55extern void dma_outsl(unsigned long port, const void *addr, unsigned short count);
56
57extern void dma_insb(unsigned long port, void *addr, unsigned short count);
58extern void dma_insw(unsigned long port, void *addr, unsigned short count);
59extern void dma_insl(unsigned long port, void *addr, unsigned short count);
60
61/** 38/**
62 * I/O write barrier 39 * I/O write barrier
63 * 40 *
diff --git a/arch/blackfin/include/uapi/asm/unistd.h b/arch/blackfin/include/uapi/asm/unistd.h
index a4511649a864..0cb9078ef482 100644
--- a/arch/blackfin/include/uapi/asm/unistd.h
+++ b/arch/blackfin/include/uapi/asm/unistd.h
@@ -401,8 +401,18 @@
401#define __NR_sendmmsg 380 401#define __NR_sendmmsg 380
402#define __NR_process_vm_readv 381 402#define __NR_process_vm_readv 381
403#define __NR_process_vm_writev 382 403#define __NR_process_vm_writev 382
404#define __NR_kcmp 383
405#define __NR_finit_module 384
406#define __NR_sched_setattr 385
407#define __NR_sched_getattr 386
408#define __NR_renameat2 387
409#define __NR_seccomp 388
410#define __NR_getrandom 389
411#define __NR_memfd_create 390
412#define __NR_bpf 391
413#define __NR_execveat 392
404 414
405#define __NR_syscall 383 415#define __NR_syscall 393 /* For internal using, not implemented */
406#define NR_syscalls __NR_syscall 416#define NR_syscalls __NR_syscall
407 417
408/* Old optional stuff no one actually uses */ 418/* Old optional stuff no one actually uses */
diff --git a/arch/blackfin/kernel/debug-mmrs.c b/arch/blackfin/kernel/debug-mmrs.c
index 947ad0832338..86b1cd3a0309 100644
--- a/arch/blackfin/kernel/debug-mmrs.c
+++ b/arch/blackfin/kernel/debug-mmrs.c
@@ -1620,7 +1620,6 @@ static int __init bfin_debug_mmrs_init(void)
1620 D16(USB_APHY_CNTRL); 1620 D16(USB_APHY_CNTRL);
1621 D16(USB_APHY_CALIB); 1621 D16(USB_APHY_CALIB);
1622 D16(USB_APHY_CNTRL2); 1622 D16(USB_APHY_CNTRL2);
1623 D16(USB_PHY_TEST);
1624 D16(USB_PLLOSC_CTRL); 1623 D16(USB_PLLOSC_CTRL);
1625 D16(USB_SRP_CLKDIV); 1624 D16(USB_SRP_CLKDIV);
1626 D16(USB_EP_NI0_TXMAXP); 1625 D16(USB_EP_NI0_TXMAXP);
diff --git a/arch/blackfin/kernel/kgdb.c b/arch/blackfin/kernel/kgdb.c
index fa53faeeb0e9..cf773f0f1f30 100644
--- a/arch/blackfin/kernel/kgdb.c
+++ b/arch/blackfin/kernel/kgdb.c
@@ -330,9 +330,6 @@ static void bfin_disable_hw_debug(struct pt_regs *regs)
330} 330}
331 331
332#ifdef CONFIG_SMP 332#ifdef CONFIG_SMP
333extern void generic_exec_single(int cpu, struct call_single_data *data, int wait);
334static struct call_single_data kgdb_smp_ipi_data[NR_CPUS];
335
336void kgdb_passive_cpu_callback(void *info) 333void kgdb_passive_cpu_callback(void *info)
337{ 334{
338 kgdb_nmicallback(raw_smp_processor_id(), get_irq_regs()); 335 kgdb_nmicallback(raw_smp_processor_id(), get_irq_regs());
@@ -343,15 +340,14 @@ void kgdb_roundup_cpus(unsigned long flags)
343 unsigned int cpu; 340 unsigned int cpu;
344 341
345 for (cpu = cpumask_first(cpu_online_mask); cpu < nr_cpu_ids; 342 for (cpu = cpumask_first(cpu_online_mask); cpu < nr_cpu_ids;
346 cpu = cpumask_next(cpu, cpu_online_mask)) { 343 cpu = cpumask_next(cpu, cpu_online_mask))
347 kgdb_smp_ipi_data[cpu].func = kgdb_passive_cpu_callback; 344 smp_call_function_single(cpu, kgdb_passive_cpu_callback,
348 generic_exec_single(cpu, &kgdb_smp_ipi_data[cpu], 0); 345 NULL, 0);
349 }
350} 346}
351 347
352void kgdb_roundup_cpu(int cpu, unsigned long flags) 348void kgdb_roundup_cpu(int cpu, unsigned long flags)
353{ 349{
354 generic_exec_single(cpu, &kgdb_smp_ipi_data[cpu], 0); 350 smp_call_function_single(cpu, kgdb_passive_cpu_callback, NULL, 0);
355} 351}
356#endif 352#endif
357 353
@@ -359,19 +355,6 @@ void kgdb_roundup_cpu(int cpu, unsigned long flags)
359static unsigned long kgdb_arch_imask; 355static unsigned long kgdb_arch_imask;
360#endif 356#endif
361 357
362void kgdb_post_primary_code(struct pt_regs *regs, int e_vector, int err_code)
363{
364 if (kgdb_single_step)
365 preempt_enable();
366
367#ifdef CONFIG_IPIPE
368 if (kgdb_arch_imask) {
369 cpu_pda[raw_smp_processor_id()].ex_imask = kgdb_arch_imask;
370 kgdb_arch_imask = 0;
371 }
372#endif
373}
374
375int kgdb_arch_handle_exception(int vector, int signo, 358int kgdb_arch_handle_exception(int vector, int signo,
376 int err_code, char *remcom_in_buffer, 359 int err_code, char *remcom_in_buffer,
377 char *remcom_out_buffer, 360 char *remcom_out_buffer,
diff --git a/arch/blackfin/kernel/setup.c b/arch/blackfin/kernel/setup.c
index 4f424ae3b36d..ad82468bd94d 100644
--- a/arch/blackfin/kernel/setup.c
+++ b/arch/blackfin/kernel/setup.c
@@ -1464,5 +1464,5 @@ void __init cmdline_init(const char *r0)
1464{ 1464{
1465 early_shadow_stamp(); 1465 early_shadow_stamp();
1466 if (r0) 1466 if (r0)
1467 strncpy(command_line, r0, COMMAND_LINE_SIZE); 1467 strlcpy(command_line, r0, COMMAND_LINE_SIZE);
1468} 1468}
diff --git a/arch/blackfin/mach-bf527/include/mach/cdefBF525.h b/arch/blackfin/mach-bf527/include/mach/cdefBF525.h
index d90a85b6b6b9..bd045318a250 100644
--- a/arch/blackfin/mach-bf527/include/mach/cdefBF525.h
+++ b/arch/blackfin/mach-bf527/include/mach/cdefBF525.h
@@ -122,11 +122,6 @@
122#define bfin_read_USB_APHY_CNTRL2() bfin_read16(USB_APHY_CNTRL2) 122#define bfin_read_USB_APHY_CNTRL2() bfin_read16(USB_APHY_CNTRL2)
123#define bfin_write_USB_APHY_CNTRL2(val) bfin_write16(USB_APHY_CNTRL2, val) 123#define bfin_write_USB_APHY_CNTRL2(val) bfin_write16(USB_APHY_CNTRL2, val)
124 124
125/* (PHY_TEST is for ADI usage only) */
126
127#define bfin_read_USB_PHY_TEST() bfin_read16(USB_PHY_TEST)
128#define bfin_write_USB_PHY_TEST(val) bfin_write16(USB_PHY_TEST, val)
129
130#define bfin_read_USB_PLLOSC_CTRL() bfin_read16(USB_PLLOSC_CTRL) 125#define bfin_read_USB_PLLOSC_CTRL() bfin_read16(USB_PLLOSC_CTRL)
131#define bfin_write_USB_PLLOSC_CTRL(val) bfin_write16(USB_PLLOSC_CTRL, val) 126#define bfin_write_USB_PLLOSC_CTRL(val) bfin_write16(USB_PLLOSC_CTRL, val)
132#define bfin_read_USB_SRP_CLKDIV() bfin_read16(USB_SRP_CLKDIV) 127#define bfin_read_USB_SRP_CLKDIV() bfin_read16(USB_SRP_CLKDIV)
diff --git a/arch/blackfin/mach-bf527/include/mach/defBF525.h b/arch/blackfin/mach-bf527/include/mach/defBF525.h
index 71578d964d00..591e00ff620a 100644
--- a/arch/blackfin/mach-bf527/include/mach/defBF525.h
+++ b/arch/blackfin/mach-bf527/include/mach/defBF525.h
@@ -77,10 +77,6 @@
77 77
78#define USB_APHY_CNTRL2 0xffc039e8 /* Register used to prevent re-enumeration once Moab goes into hibernate mode */ 78#define USB_APHY_CNTRL2 0xffc039e8 /* Register used to prevent re-enumeration once Moab goes into hibernate mode */
79 79
80/* (PHY_TEST is for ADI usage only) */
81
82#define USB_PHY_TEST 0xffc039ec /* Used for reducing simulation time and simplifies FIFO testability */
83
84#define USB_PLLOSC_CTRL 0xffc039f0 /* Used to program different parameters for USB PLL and Oscillator */ 80#define USB_PLLOSC_CTRL 0xffc039f0 /* Used to program different parameters for USB PLL and Oscillator */
85#define USB_SRP_CLKDIV 0xffc039f4 /* Used to program clock divide value for the clock fed to the SRP detection logic */ 81#define USB_SRP_CLKDIV 0xffc039f4 /* Used to program clock divide value for the clock fed to the SRP detection logic */
86 82
diff --git a/arch/blackfin/mach-bf548/include/mach/cdefBF542.h b/arch/blackfin/mach-bf548/include/mach/cdefBF542.h
index d09c19cd1b7b..916347901d5a 100644
--- a/arch/blackfin/mach-bf548/include/mach/cdefBF542.h
+++ b/arch/blackfin/mach-bf548/include/mach/cdefBF542.h
@@ -241,10 +241,6 @@
241#define bfin_read_USB_APHY_CNTRL2() bfin_read16(USB_APHY_CNTRL2) 241#define bfin_read_USB_APHY_CNTRL2() bfin_read16(USB_APHY_CNTRL2)
242#define bfin_write_USB_APHY_CNTRL2(val) bfin_write16(USB_APHY_CNTRL2, val) 242#define bfin_write_USB_APHY_CNTRL2(val) bfin_write16(USB_APHY_CNTRL2, val)
243 243
244/* (PHY_TEST is for ADI usage only) */
245
246#define bfin_read_USB_PHY_TEST() bfin_read16(USB_PHY_TEST)
247#define bfin_write_USB_PHY_TEST(val) bfin_write16(USB_PHY_TEST, val)
248#define bfin_read_USB_PLLOSC_CTRL() bfin_read16(USB_PLLOSC_CTRL) 244#define bfin_read_USB_PLLOSC_CTRL() bfin_read16(USB_PLLOSC_CTRL)
249#define bfin_write_USB_PLLOSC_CTRL(val) bfin_write16(USB_PLLOSC_CTRL, val) 245#define bfin_write_USB_PLLOSC_CTRL(val) bfin_write16(USB_PLLOSC_CTRL, val)
250#define bfin_read_USB_SRP_CLKDIV() bfin_read16(USB_SRP_CLKDIV) 246#define bfin_read_USB_SRP_CLKDIV() bfin_read16(USB_SRP_CLKDIV)
diff --git a/arch/blackfin/mach-bf548/include/mach/cdefBF547.h b/arch/blackfin/mach-bf548/include/mach/cdefBF547.h
index bcb9726dea54..be83f645bba8 100644
--- a/arch/blackfin/mach-bf548/include/mach/cdefBF547.h
+++ b/arch/blackfin/mach-bf548/include/mach/cdefBF547.h
@@ -408,10 +408,6 @@
408#define bfin_read_USB_APHY_CNTRL2() bfin_read16(USB_APHY_CNTRL2) 408#define bfin_read_USB_APHY_CNTRL2() bfin_read16(USB_APHY_CNTRL2)
409#define bfin_write_USB_APHY_CNTRL2(val) bfin_write16(USB_APHY_CNTRL2, val) 409#define bfin_write_USB_APHY_CNTRL2(val) bfin_write16(USB_APHY_CNTRL2, val)
410 410
411/* (PHY_TEST is for ADI usage only) */
412
413#define bfin_read_USB_PHY_TEST() bfin_read16(USB_PHY_TEST)
414#define bfin_write_USB_PHY_TEST(val) bfin_write16(USB_PHY_TEST, val)
415#define bfin_read_USB_PLLOSC_CTRL() bfin_read16(USB_PLLOSC_CTRL) 411#define bfin_read_USB_PLLOSC_CTRL() bfin_read16(USB_PLLOSC_CTRL)
416#define bfin_write_USB_PLLOSC_CTRL(val) bfin_write16(USB_PLLOSC_CTRL, val) 412#define bfin_write_USB_PLLOSC_CTRL(val) bfin_write16(USB_PLLOSC_CTRL, val)
417#define bfin_read_USB_SRP_CLKDIV() bfin_read16(USB_SRP_CLKDIV) 413#define bfin_read_USB_SRP_CLKDIV() bfin_read16(USB_SRP_CLKDIV)
diff --git a/arch/blackfin/mach-bf548/include/mach/defBF542.h b/arch/blackfin/mach-bf548/include/mach/defBF542.h
index 51161575a163..ae4b889e3606 100644
--- a/arch/blackfin/mach-bf548/include/mach/defBF542.h
+++ b/arch/blackfin/mach-bf548/include/mach/defBF542.h
@@ -140,9 +140,6 @@
140#define USB_APHY_CALIB 0xffc03de4 /* Register used to set some calibration values */ 140#define USB_APHY_CALIB 0xffc03de4 /* Register used to set some calibration values */
141#define USB_APHY_CNTRL2 0xffc03de8 /* Register used to prevent re-enumeration once Moab goes into hibernate mode */ 141#define USB_APHY_CNTRL2 0xffc03de8 /* Register used to prevent re-enumeration once Moab goes into hibernate mode */
142 142
143/* (PHY_TEST is for ADI usage only) */
144
145#define USB_PHY_TEST 0xffc03dec /* Used for reducing simulation time and simplifies FIFO testability */
146#define USB_PLLOSC_CTRL 0xffc03df0 /* Used to program different parameters for USB PLL and Oscillator */ 143#define USB_PLLOSC_CTRL 0xffc03df0 /* Used to program different parameters for USB PLL and Oscillator */
147#define USB_SRP_CLKDIV 0xffc03df4 /* Used to program clock divide value for the clock fed to the SRP detection logic */ 144#define USB_SRP_CLKDIV 0xffc03df4 /* Used to program clock divide value for the clock fed to the SRP detection logic */
148 145
diff --git a/arch/blackfin/mach-bf548/include/mach/defBF547.h b/arch/blackfin/mach-bf548/include/mach/defBF547.h
index d55dcc0f5324..7cc7928a3c73 100644
--- a/arch/blackfin/mach-bf548/include/mach/defBF547.h
+++ b/arch/blackfin/mach-bf548/include/mach/defBF547.h
@@ -254,9 +254,6 @@
254#define USB_APHY_CALIB 0xffc03de4 /* Register used to set some calibration values */ 254#define USB_APHY_CALIB 0xffc03de4 /* Register used to set some calibration values */
255#define USB_APHY_CNTRL2 0xffc03de8 /* Register used to prevent re-enumeration once Moab goes into hibernate mode */ 255#define USB_APHY_CNTRL2 0xffc03de8 /* Register used to prevent re-enumeration once Moab goes into hibernate mode */
256 256
257/* (PHY_TEST is for ADI usage only) */
258
259#define USB_PHY_TEST 0xffc03dec /* Used for reducing simulation time and simplifies FIFO testability */
260#define USB_PLLOSC_CTRL 0xffc03df0 /* Used to program different parameters for USB PLL and Oscillator */ 257#define USB_PLLOSC_CTRL 0xffc03df0 /* Used to program different parameters for USB PLL and Oscillator */
261#define USB_SRP_CLKDIV 0xffc03df4 /* Used to program clock divide value for the clock fed to the SRP detection logic */ 258#define USB_SRP_CLKDIV 0xffc03df4 /* Used to program clock divide value for the clock fed to the SRP detection logic */
262 259
diff --git a/arch/blackfin/mach-bf609/boards/ezkit.c b/arch/blackfin/mach-bf609/boards/ezkit.c
index 7f9fc272ec30..2c61fc0c98f9 100644
--- a/arch/blackfin/mach-bf609/boards/ezkit.c
+++ b/arch/blackfin/mach-bf609/boards/ezkit.c
@@ -780,8 +780,8 @@ static struct adi_spi3_chip spidev_chip_info = {
780}; 780};
781#endif 781#endif
782 782
783#if IS_ENABLED(CONFIG_SND_BF5XX_I2S) 783#if IS_ENABLED(CONFIG_SND_BF6XX_PCM)
784static struct platform_device bfin_i2s_pcm = { 784static struct platform_device bfin_pcm = {
785 .name = "bfin-i2s-pcm-audio", 785 .name = "bfin-i2s-pcm-audio",
786 .id = -1, 786 .id = -1,
787}; 787};
@@ -1034,7 +1034,6 @@ static struct adv7842_platform_data adv7842_data = {
1034 .i2c_infoframe = 0x48, 1034 .i2c_infoframe = 0x48,
1035 .i2c_cec = 0x49, 1035 .i2c_cec = 0x49,
1036 .i2c_avlink = 0x4a, 1036 .i2c_avlink = 0x4a,
1037 .i2c_ex = 0x26,
1038}; 1037};
1039 1038
1040static struct bfin_capture_config bfin_capture_data = { 1039static struct bfin_capture_config bfin_capture_data = {
@@ -1104,7 +1103,6 @@ static struct disp_route adv7511_routes[] = {
1104 1103
1105static struct adv7511_platform_data adv7511_data = { 1104static struct adv7511_platform_data adv7511_data = {
1106 .edid_addr = 0x7e, 1105 .edid_addr = 0x7e,
1107 .i2c_ex = 0x25,
1108}; 1106};
1109 1107
1110static struct bfin_display_config bfin_display_data = { 1108static struct bfin_display_config bfin_display_data = {
@@ -1209,6 +1207,35 @@ static struct platform_device bfin_display_device = {
1209}; 1207};
1210#endif 1208#endif
1211 1209
1210#if defined(CONFIG_FB_BF609_NL8048) \
1211 || defined(CONFIG_FB_BF609_NL8048_MODULE)
1212static struct resource nl8048_resources[] = {
1213 {
1214 .start = EPPI2_STAT,
1215 .end = EPPI2_STAT,
1216 .flags = IORESOURCE_MEM,
1217 },
1218 {
1219 .start = CH_EPPI2_CH0,
1220 .end = CH_EPPI2_CH0,
1221 .flags = IORESOURCE_DMA,
1222 },
1223 {
1224 .start = IRQ_EPPI2_STAT,
1225 .end = IRQ_EPPI2_STAT,
1226 .flags = IORESOURCE_IRQ,
1227 },
1228};
1229static struct platform_device bfin_fb_device = {
1230 .name = "bf609_nl8048",
1231 .num_resources = ARRAY_SIZE(nl8048_resources),
1232 .resource = nl8048_resources,
1233 .dev = {
1234 .platform_data = (void *)GPIO_PC15,
1235 },
1236};
1237#endif
1238
1212#if defined(CONFIG_BFIN_CRC) 1239#if defined(CONFIG_BFIN_CRC)
1213#define BFIN_CRC_NAME "bfin-crc" 1240#define BFIN_CRC_NAME "bfin-crc"
1214 1241
@@ -1862,6 +1889,29 @@ static struct platform_device i2c_bfin_twi1_device = {
1862}; 1889};
1863#endif 1890#endif
1864 1891
1892#if IS_ENABLED(CONFIG_GPIO_MCP23S08)
1893#include <linux/spi/mcp23s08.h>
1894static const struct mcp23s08_platform_data bfin_mcp23s08_soft_switch0 = {
1895 .base = 120,
1896};
1897static const struct mcp23s08_platform_data bfin_mcp23s08_soft_switch1 = {
1898 .base = 130,
1899};
1900static const struct mcp23s08_platform_data bfin_mcp23s08_soft_switch2 = {
1901 .base = 140,
1902};
1903# if IS_ENABLED(CONFIG_VIDEO_ADV7842)
1904static const struct mcp23s08_platform_data bfin_adv7842_soft_switch = {
1905 .base = 150,
1906};
1907# endif
1908# if IS_ENABLED(CONFIG_VIDEO_ADV7511) || IS_ENABLED(CONFIG_VIDEO_ADV7343)
1909static const struct mcp23s08_platform_data bfin_adv7511_soft_switch = {
1910 .base = 160,
1911};
1912# endif
1913#endif
1914
1865static struct i2c_board_info __initdata bfin_i2c_board_info0[] = { 1915static struct i2c_board_info __initdata bfin_i2c_board_info0[] = {
1866#if IS_ENABLED(CONFIG_INPUT_ADXL34X_I2C) 1916#if IS_ENABLED(CONFIG_INPUT_ADXL34X_I2C)
1867 { 1917 {
@@ -1881,6 +1931,32 @@ static struct i2c_board_info __initdata bfin_i2c_board_info0[] = {
1881 I2C_BOARD_INFO("ssm2602", 0x1b), 1931 I2C_BOARD_INFO("ssm2602", 0x1b),
1882 }, 1932 },
1883#endif 1933#endif
1934#if IS_ENABLED(CONFIG_GPIO_MCP23S08)
1935 {
1936 I2C_BOARD_INFO("mcp23017", 0x21),
1937 .platform_data = (void *)&bfin_mcp23s08_soft_switch0
1938 },
1939 {
1940 I2C_BOARD_INFO("mcp23017", 0x22),
1941 .platform_data = (void *)&bfin_mcp23s08_soft_switch1
1942 },
1943 {
1944 I2C_BOARD_INFO("mcp23017", 0x23),
1945 .platform_data = (void *)&bfin_mcp23s08_soft_switch2
1946 },
1947# if IS_ENABLED(CONFIG_VIDEO_ADV7842)
1948 {
1949 I2C_BOARD_INFO("mcp23017", 0x26),
1950 .platform_data = (void *)&bfin_adv7842_soft_switch
1951 },
1952# endif
1953# if IS_ENABLED(CONFIG_VIDEO_ADV7511) || IS_ENABLED(CONFIG_VIDEO_ADV7343)
1954 {
1955 I2C_BOARD_INFO("mcp23017", 0x25),
1956 .platform_data = (void *)&bfin_adv7511_soft_switch
1957 },
1958# endif
1959#endif
1884}; 1960};
1885 1961
1886static struct i2c_board_info __initdata bfin_i2c_board_info1[] = { 1962static struct i2c_board_info __initdata bfin_i2c_board_info1[] = {
@@ -2023,8 +2099,8 @@ static struct platform_device *ezkit_devices[] __initdata = {
2023#if IS_ENABLED(CONFIG_MTD_PHYSMAP) 2099#if IS_ENABLED(CONFIG_MTD_PHYSMAP)
2024 &ezkit_flash_device, 2100 &ezkit_flash_device,
2025#endif 2101#endif
2026#if IS_ENABLED(CONFIG_SND_BF5XX_I2S) 2102#if IS_ENABLED(CONFIG_SND_BF6XX_PCM)
2027 &bfin_i2s_pcm, 2103 &bfin_pcm,
2028#endif 2104#endif
2029#if IS_ENABLED(CONFIG_SND_BF6XX_SOC_I2S) 2105#if IS_ENABLED(CONFIG_SND_BF6XX_SOC_I2S)
2030 &bfin_i2s, 2106 &bfin_i2s,
@@ -2060,7 +2136,7 @@ static struct pinctrl_map __initdata bfin_pinmux_map[] = {
2060 PIN_MAP_MUX_GROUP_DEFAULT("bfin-rotary", "pinctrl-adi2.0", NULL, "rotary"), 2136 PIN_MAP_MUX_GROUP_DEFAULT("bfin-rotary", "pinctrl-adi2.0", NULL, "rotary"),
2061 PIN_MAP_MUX_GROUP_DEFAULT("bfin_can.0", "pinctrl-adi2.0", NULL, "can0"), 2137 PIN_MAP_MUX_GROUP_DEFAULT("bfin_can.0", "pinctrl-adi2.0", NULL, "can0"),
2062 PIN_MAP_MUX_GROUP_DEFAULT("physmap-flash.0", "pinctrl-adi2.0", NULL, "smc0"), 2138 PIN_MAP_MUX_GROUP_DEFAULT("physmap-flash.0", "pinctrl-adi2.0", NULL, "smc0"),
2063 PIN_MAP_MUX_GROUP_DEFAULT("bf609_nl8048.2", "pinctrl-adi2.0", "ppi2_16bgrp", "ppi2"), 2139 PIN_MAP_MUX_GROUP_DEFAULT("bf609_nl8048.0", "pinctrl-adi2.0", "ppi2_16bgrp", "ppi2"),
2064 PIN_MAP_MUX_GROUP("bfin_display.0", "8bit", "pinctrl-adi2.0", "ppi2_8bgrp", "ppi2"), 2140 PIN_MAP_MUX_GROUP("bfin_display.0", "8bit", "pinctrl-adi2.0", "ppi2_8bgrp", "ppi2"),
2065 PIN_MAP_MUX_GROUP_DEFAULT("bfin_display.0", "pinctrl-adi2.0", "ppi2_16bgrp", "ppi2"), 2141 PIN_MAP_MUX_GROUP_DEFAULT("bfin_display.0", "pinctrl-adi2.0", "ppi2_16bgrp", "ppi2"),
2066 PIN_MAP_MUX_GROUP("bfin_display.0", "16bit", "pinctrl-adi2.0", "ppi2_16bgrp", "ppi2"), 2142 PIN_MAP_MUX_GROUP("bfin_display.0", "16bit", "pinctrl-adi2.0", "ppi2_16bgrp", "ppi2"),
diff --git a/arch/blackfin/mach-bf609/clock.c b/arch/blackfin/mach-bf609/clock.c
index 244fa4ab4c56..378305844b2c 100644
--- a/arch/blackfin/mach-bf609/clock.c
+++ b/arch/blackfin/mach-bf609/clock.c
@@ -363,6 +363,12 @@ static struct clk ethclk = {
363 .ops = &dummy_clk_ops, 363 .ops = &dummy_clk_ops,
364}; 364};
365 365
366static struct clk ethpclk = {
367 .name = "pclk",
368 .parent = &sclk0,
369 .ops = &dummy_clk_ops,
370};
371
366static struct clk spiclk = { 372static struct clk spiclk = {
367 .name = "spi", 373 .name = "spi",
368 .parent = &sclk1, 374 .parent = &sclk1,
@@ -381,6 +387,7 @@ static struct clk_lookup bf609_clks[] = {
381 CLK(dclk, NULL, "DCLK"), 387 CLK(dclk, NULL, "DCLK"),
382 CLK(oclk, NULL, "OCLK"), 388 CLK(oclk, NULL, "OCLK"),
383 CLK(ethclk, NULL, "stmmaceth"), 389 CLK(ethclk, NULL, "stmmaceth"),
390 CLK(ethpclk, NULL, "pclk"),
384 CLK(spiclk, NULL, "spi"), 391 CLK(spiclk, NULL, "spi"),
385}; 392};
386 393
diff --git a/arch/blackfin/mach-common/entry.S b/arch/blackfin/mach-common/entry.S
index 86b5a095c5a1..8d9431e22e8c 100644
--- a/arch/blackfin/mach-common/entry.S
+++ b/arch/blackfin/mach-common/entry.S
@@ -1694,6 +1694,16 @@ ENTRY(_sys_call_table)
1694 .long _sys_sendmmsg /* 380 */ 1694 .long _sys_sendmmsg /* 380 */
1695 .long _sys_process_vm_readv 1695 .long _sys_process_vm_readv
1696 .long _sys_process_vm_writev 1696 .long _sys_process_vm_writev
1697 .long _sys_kcmp
1698 .long _sys_finit_module
1699 .long _sys_sched_setattr /* 385 */
1700 .long _sys_sched_getattr
1701 .long _sys_renameat2
1702 .long _sys_seccomp
1703 .long _sys_getrandom
1704 .long _sys_memfd_create /* 390 */
1705 .long _sys_bpf
1706 .long _sys_execveat
1697 1707
1698 .rept NR_syscalls-(.-_sys_call_table)/4 1708 .rept NR_syscalls-(.-_sys_call_table)/4
1699 .long _sys_ni_syscall 1709 .long _sys_ni_syscall
diff --git a/arch/blackfin/mach-common/pm.c b/arch/blackfin/mach-common/pm.c
index 1387a94bcfd5..a66d979ec651 100644
--- a/arch/blackfin/mach-common/pm.c
+++ b/arch/blackfin/mach-common/pm.c
@@ -14,6 +14,7 @@
14#include <linux/slab.h> 14#include <linux/slab.h>
15#include <linux/io.h> 15#include <linux/io.h>
16#include <linux/irq.h> 16#include <linux/irq.h>
17#include <linux/delay.h>
17 18
18#include <asm/cplb.h> 19#include <asm/cplb.h>
19#include <asm/gpio.h> 20#include <asm/gpio.h>
@@ -180,6 +181,7 @@ int bfin_pm_suspend_mem_enter(void)
180 181
181#if defined(CONFIG_BFIN_EXTMEM_WRITEBACK) || defined(CONFIG_BFIN_L2_WRITEBACK) 182#if defined(CONFIG_BFIN_EXTMEM_WRITEBACK) || defined(CONFIG_BFIN_L2_WRITEBACK)
182 flushinv_all_dcache(); 183 flushinv_all_dcache();
184 udelay(1);
183#endif 185#endif
184 _disable_dcplb(); 186 _disable_dcplb();
185 _disable_icplb(); 187 _disable_icplb();