brcm2708: update to latest patches from the RPi foundation
[openwrt/staging/lynxis.git] / target / linux / brcm2708 / patches-4.14 / 950-0098-ARM64-Make-it-work-again-on-4.9-1790.patch
1 From 3982be6e386a0c2ca0530ca5fc09f37bcb0f2da6 Mon Sep 17 00:00:00 2001
2 From: Electron752 <mzoran@crowfest.net>
3 Date: Thu, 12 Jan 2017 07:07:08 -0800
4 Subject: [PATCH 098/454] ARM64: Make it work again on 4.9 (#1790)
5
6 * Invoke the dtc compiler with the same options used in arm mode.
7 * ARM64 now uses the bcm2835 platform just like ARM32.
8 * ARM64: Update bcmrpi3_defconfig
9
10 Signed-off-by: Michael Zoran <mzoran@crowfest.net>
11 ---
12 arch/arm64/Kconfig.platforms | 28 ------
13 arch/arm64/boot/dts/broadcom/Makefile | 10 ++-
14 arch/arm64/boot/dts/overlays | 1 +
15 arch/arm64/configs/bcmrpi3_defconfig | 125 ++++++++------------------
16 4 files changed, 48 insertions(+), 116 deletions(-)
17 create mode 120000 arch/arm64/boot/dts/overlays
18
19 diff --git a/arch/arm64/Kconfig.platforms b/arch/arm64/Kconfig.platforms
20 index 2b9aefe89e94..19ff97b7efe6 100644
21 --- a/arch/arm64/Kconfig.platforms
22 +++ b/arch/arm64/Kconfig.platforms
23 @@ -1,33 +1,5 @@
24 menu "Platform selection"
25
26 -config MACH_BCM2709
27 - bool
28 -
29 -config ARCH_BCM2709
30 - bool "Broadcom BCM2709 family"
31 - select MACH_BCM2709
32 - select HAVE_SMP
33 - select ARM_AMBA
34 - select COMMON_CLK
35 - select ARCH_HAS_CPUFREQ
36 - select GENERIC_CLOCKEVENTS
37 - select MULTI_IRQ_HANDLER
38 - select SPARSE_IRQ
39 - select MFD_SYSCON
40 - select VC4
41 - select USE_OF
42 - select ARCH_REQUIRE_GPIOLIB
43 - select PINCTRL
44 - select PINCTRL_BCM2835
45 - help
46 - This enables support for Broadcom BCM2709 boards.
47 -
48 -config ARCH_ACTIONS
49 - bool "Actions Semi Platforms"
50 - select OWL_TIMER
51 - help
52 - This enables support for the Actions Semiconductor S900 SoC family.
53 -
54 config ARCH_SUNXI
55 bool "Allwinner sunxi 64-bit SoC Family"
56 select ARCH_HAS_RESET_CONTROLLER
57 diff --git a/arch/arm64/boot/dts/broadcom/Makefile b/arch/arm64/boot/dts/broadcom/Makefile
58 index d54218055506..3adfeab86f3f 100644
59 --- a/arch/arm64/boot/dts/broadcom/Makefile
60 +++ b/arch/arm64/boot/dts/broadcom/Makefile
61 @@ -1,8 +1,16 @@
62 # SPDX-License-Identifier: GPL-2.0
63 +# Enable fixups to support overlays on BCM2835 platforms
64 +
65 +ifeq ($(CONFIG_ARCH_BCM2835),y)
66 +DTC_FLAGS ?= -@ -H epapr
67 +endif
68 +
69 dtb-$(CONFIG_ARCH_BCM2835) += bcm2837-rpi-3-b.dtb
70 dtb-$(CONFIG_ARCH_BCM2709) += bcm2710-rpi-3-b.dtb
71 +dtb-$(CONFIG_ARCH_BCM2835) += bcm2710-rpi-3-b.dtb
72 +
73 +dts-dirs += ../overlays
74
75 -dts-dirs += northstar2
76 dts-dirs += stingray
77 always := $(dtb-y)
78 subdir-y := $(dts-dirs)
79 diff --git a/arch/arm64/boot/dts/overlays b/arch/arm64/boot/dts/overlays
80 new file mode 120000
81 index 000000000000..ded08646b6f6
82 --- /dev/null
83 +++ b/arch/arm64/boot/dts/overlays
84 @@ -0,0 +1 @@
85 +../../../arm/boot/dts/overlays
86 \ No newline at end of file
87 diff --git a/arch/arm64/configs/bcmrpi3_defconfig b/arch/arm64/configs/bcmrpi3_defconfig
88 index e6b09fafa27e..c7e891d72969 100644
89 --- a/arch/arm64/configs/bcmrpi3_defconfig
90 +++ b/arch/arm64/configs/bcmrpi3_defconfig
91 @@ -1,52 +1,9 @@
92 -# CONFIG_ARM_PATCH_PHYS_VIRT is not set
93 -CONFIG_PHYS_OFFSET=0
94 CONFIG_LOCALVERSION="-v8"
95 # CONFIG_LOCALVERSION_AUTO is not set
96 -CONFIG_64BIT=y
97 CONFIG_SYSVIPC=y
98 CONFIG_POSIX_MQUEUE=y
99 CONFIG_NO_HZ=y
100 CONFIG_HIGH_RES_TIMERS=y
101 -
102 -#
103 -# ARM errata workarounds via the alternatives framework
104 -#
105 -CONFIG_ARM64_ERRATUM_826319=n
106 -CONFIG_ARM64_ERRATUM_827319=n
107 -CONFIG_ARM64_ERRATUM_824069=n
108 -CONFIG_ARM64_ERRATUM_819472=n
109 -CONFIG_ARM64_ERRATUM_832075=n
110 -CONFIG_ARM64_ERRATUM_845719=n
111 -CONFIG_ARM64_ERRATUM_843419=n
112 -CONFIG_CAVIUM_ERRATUM_22375=n
113 -CONFIG_CAVIUM_ERRATUM_23154=n
114 -CONFIG_CAVIUM_ERRATUM_27456=n
115 -CONFIG_ARM64_4K_PAGES=y
116 -CONFIG_ARM64_VA_BITS_39=y
117 -CONFIG_ARM64_VA_BITS=39
118 -CONFIG_SCHED_MC=y
119 -CONFIG_NR_CPUS=4
120 -CONFIG_HOTPLUG_CPU=y
121 -CONFIG_ARMV8_DEPRECATED=y
122 -CONFIG_SWP_EMULATION=y
123 -CONFIG_CP15_BARRIER_EMULATION=y
124 -CONFIG_SETEND_EMULATION=y
125 -
126 -#
127 -# ARMv8.1 architectural features
128 -#
129 -CONFIG_ARM64_HW_AFDBM=y
130 -CONFIG_ARM64_PAN=y
131 -CONFIG_ARM64_LSE_ATOMICS=y
132 -CONFIG_ARM64_VHE=y
133 -
134 -#
135 -# ARMv8.2 architectural features
136 -#
137 -CONFIG_ARM64_UAO=y
138 -CONFIG_ARM64_MODULE_CMODEL_LARGE=n
139 -CONFIG_RANDOMIZE_BASE=n
140 -
141 CONFIG_BSD_PROCESS_ACCT=y
142 CONFIG_BSD_PROCESS_ACCT_V3=y
143 CONFIG_TASKSTATS=y
144 @@ -55,7 +12,6 @@ CONFIG_TASK_XACCT=y
145 CONFIG_TASK_IO_ACCOUNTING=y
146 CONFIG_IKCONFIG=m
147 CONFIG_IKCONFIG_PROC=y
148 -CONFIG_NMI_LOG_BUF_SHIFT=12
149 CONFIG_MEMCG=y
150 CONFIG_BLK_CGROUP=y
151 CONFIG_CGROUP_FREEZER=y
152 @@ -69,54 +25,49 @@ CONFIG_BLK_DEV_INITRD=y
153 CONFIG_EMBEDDED=y
154 # CONFIG_COMPAT_BRK is not set
155 CONFIG_PROFILING=y
156 -CONFIG_OPROFILE=m
157 CONFIG_KPROBES=y
158 CONFIG_JUMP_LABEL=y
159 CONFIG_MODULES=y
160 CONFIG_MODULE_UNLOAD=y
161 CONFIG_MODVERSIONS=y
162 CONFIG_MODULE_SRCVERSION_ALL=y
163 -CONFIG_TRIM_UNUSED_KSYMS=y
164 CONFIG_BLK_DEV_THROTTLING=y
165 CONFIG_PARTITION_ADVANCED=y
166 CONFIG_MAC_PARTITION=y
167 CONFIG_CFQ_GROUP_IOSCHED=y
168 -CONFIG_ARCH_BCM2709=y
169 -# CONFIG_CACHE_L2X0 is not set
170 -CONFIG_SMP=y
171 -CONFIG_HAVE_ARM_ARCH_TIMER=y
172 -CONFIG_VMSPLIT_2G=y
173 -CONFIG_PREEMPT_VOLUNTARY=y
174 -CONFIG_AEABI=y
175 -CONFIG_OABI_COMPAT=y
176 -# CONFIG_CPU_SW_DOMAIN_PAN is not set
177 +CONFIG_ARCH_BCM2835=y
178 +# CONFIG_CAVIUM_ERRATUM_22375 is not set
179 +# CONFIG_CAVIUM_ERRATUM_23154 is not set
180 +# CONFIG_CAVIUM_ERRATUM_27456 is not set
181 +CONFIG_SCHED_MC=y
182 +CONFIG_NR_CPUS=4
183 +CONFIG_PREEMPT=y
184 +CONFIG_HZ_1000=y
185 CONFIG_CLEANCACHE=y
186 CONFIG_FRONTSWAP=y
187 CONFIG_CMA=y
188 CONFIG_ZSMALLOC=m
189 CONFIG_PGTABLE_MAPPING=y
190 -CONFIG_UACCESS_WITH_MEMCPY=y
191 CONFIG_SECCOMP=y
192 -# CONFIG_ATAGS is not set
193 -CONFIG_ZBOOT_ROM_TEXT=0x0
194 -CONFIG_ZBOOT_ROM_BSS=0x0
195 +CONFIG_ARMV8_DEPRECATED=y
196 +CONFIG_SWP_EMULATION=y
197 +CONFIG_CP15_BARRIER_EMULATION=y
198 +CONFIG_SETEND_EMULATION=y
199 CONFIG_CMDLINE="console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 root=/dev/mmcblk0p2 rootfstype=ext4 rootwait"
200 +CONFIG_BINFMT_MISC=y
201 +CONFIG_COMPAT=y
202 +# CONFIG_SUSPEND is not set
203 +CONFIG_PM=y
204 +CONFIG_CPU_IDLE=y
205 +CONFIG_ARM_CPUIDLE=y
206 CONFIG_CPU_FREQ=y
207 +CONFIG_CPU_FREQ_STAT=y
208 CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE=y
209 CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
210 CONFIG_CPU_FREQ_GOV_USERSPACE=y
211 CONFIG_CPU_FREQ_GOV_ONDEMAND=y
212 CONFIG_CPU_FREQ_GOV_CONSERVATIVE=y
213 CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y
214 -CONFIG_VFP=y
215 -CONFIG_NEON=y
216 -CONFIG_KERNEL_MODE_NEON=y
217 -CONFIG_BINFMT_MISC=m
218 -CONFIG_COMPAT=y
219 -CONFIG_SYSVIPC_COMPAT=y
220 -
221 -# CONFIG_SUSPEND is not set
222 -CONFIG_PM=y
223 CONFIG_NET=y
224 CONFIG_PACKET=y
225 CONFIG_UNIX=y
226 @@ -437,6 +388,7 @@ CONFIG_BT_MRVL=m
227 CONFIG_BT_MRVL_SDIO=m
228 CONFIG_BT_ATH3K=m
229 CONFIG_BT_WILINK=m
230 +CONFIG_CFG80211=m
231 CONFIG_MAC80211=m
232 CONFIG_MAC80211_MESH=y
233 CONFIG_WIMAX=m
234 @@ -490,7 +442,6 @@ CONFIG_BONDING=m
235 CONFIG_DUMMY=m
236 CONFIG_IFB=m
237 CONFIG_MACVLAN=m
238 -CONFIG_IPVLAN=m
239 CONFIG_VXLAN=m
240 CONFIG_NETCONSOLE=m
241 CONFIG_TUN=m
242 @@ -579,8 +530,6 @@ CONFIG_RT2800USB_RT3573=y
243 CONFIG_RT2800USB_RT53XX=y
244 CONFIG_RT2800USB_RT55XX=y
245 CONFIG_RT2800USB_UNKNOWN=y
246 -CONFIG_RTL8187=m
247 -CONFIG_RTL8192CU=n
248 CONFIG_USB_ZD1201=m
249 CONFIG_ZD1211RW=m
250 CONFIG_MAC80211_HWSIM=m
251 @@ -606,7 +555,7 @@ CONFIG_JOYSTICK_RPISENSE=m
252 CONFIG_INPUT_TOUCHSCREEN=y
253 CONFIG_TOUCHSCREEN_ADS7846=m
254 CONFIG_TOUCHSCREEN_EGALAX=m
255 -CONFIG_TOUCHSCREEN_FT6236=m
256 +CONFIG_TOUCHSCREEN_EKTF2127=m
257 CONFIG_TOUCHSCREEN_RPI_FT5406=m
258 CONFIG_TOUCHSCREEN_USB_COMPOSITE=m
259 CONFIG_TOUCHSCREEN_STMPE=m
260 @@ -626,10 +575,8 @@ CONFIG_SERIO_RAW=m
261 CONFIG_GAMEPORT=m
262 CONFIG_GAMEPORT_NS558=m
263 CONFIG_GAMEPORT_L4=m
264 -CONFIG_BRCM_CHAR_DRIVERS=n
265 -CONFIG_BCM_VC_CMA=n
266 -CONFIG_BCM_VCIO=n
267 -CONFIG_BCM_VC_SM=n
268 +# CONFIG_BCM2835_DEVGPIOMEM is not set
269 +# CONFIG_BCM2835_SMI_DEV is not set
270 # CONFIG_LEGACY_PTYS is not set
271 # CONFIG_DEVKMEM is not set
272 CONFIG_SERIAL_8250=y
273 @@ -638,6 +585,9 @@ CONFIG_SERIAL_8250_CONSOLE=y
274 # CONFIG_SERIAL_8250_DMA is not set
275 CONFIG_SERIAL_8250_NR_UARTS=1
276 CONFIG_SERIAL_8250_RUNTIME_UARTS=0
277 +CONFIG_SERIAL_8250_EXTENDED=y
278 +CONFIG_SERIAL_8250_SHARE_IRQ=y
279 +CONFIG_SERIAL_8250_BCM2835AUX=y
280 CONFIG_SERIAL_OF_PLATFORM=y
281 CONFIG_SERIAL_AMBA_PL011=y
282 CONFIG_SERIAL_AMBA_PL011_CONSOLE=y
283 @@ -650,6 +600,7 @@ CONFIG_I2C=y
284 CONFIG_I2C_CHARDEV=m
285 CONFIG_I2C_MUX_PCA954x=m
286 CONFIG_I2C_BCM2708=m
287 +CONFIG_I2C_BCM2835=m
288 CONFIG_I2C_GPIO=m
289 CONFIG_SPI=y
290 CONFIG_SPI_BCM2835=m
291 @@ -681,13 +632,13 @@ CONFIG_W1_SLAVE_DS2780=m
292 CONFIG_W1_SLAVE_DS2781=m
293 CONFIG_W1_SLAVE_DS28E04=m
294 CONFIG_W1_SLAVE_BQ27000=m
295 -CONFIG_BATTERY_DS2760=m
296 -CONFIG_POWER_RESET=y
297 CONFIG_POWER_RESET_GPIO=y
298 +CONFIG_BATTERY_DS2760=m
299 CONFIG_HWMON=m
300 CONFIG_SENSORS_LM75=m
301 CONFIG_SENSORS_SHT21=m
302 CONFIG_SENSORS_SHTC1=m
303 +CONFIG_SENSORS_INA2XX=m
304 CONFIG_THERMAL=y
305 CONFIG_THERMAL_BCM2835=y
306 CONFIG_WATCHDOG=y
307 @@ -835,8 +786,6 @@ CONFIG_VIDEO_EM28XX_V4L2=m
308 CONFIG_VIDEO_EM28XX_ALSA=m
309 CONFIG_VIDEO_EM28XX_DVB=m
310 CONFIG_V4L_PLATFORM_DRIVERS=y
311 -CONFIG_VIDEO_BCM2835=n
312 -CONFIG_VIDEO_BCM2835_MMAL=n
313 CONFIG_RADIO_SI470X=y
314 CONFIG_USB_SI470X=m
315 CONFIG_I2C_SI470X=m
316 @@ -892,8 +841,6 @@ CONFIG_SND_VIRMIDI=m
317 CONFIG_SND_MTPAV=m
318 CONFIG_SND_SERIAL_U16550=m
319 CONFIG_SND_MPU401=m
320 -CONFIG_SND_ARM=n
321 -CONFIG_SND_BCM2835=n
322 CONFIG_SND_USB_AUDIO=m
323 CONFIG_SND_USB_UA101=m
324 CONFIG_SND_USB_CAIAQ=m
325 @@ -916,7 +863,10 @@ CONFIG_SND_BCM2708_SOC_ADAU1977_ADC=m
326 CONFIG_SND_AUDIOINJECTOR_PI_SOUNDCARD=m
327 CONFIG_SND_DIGIDAC1_SOUNDCARD=m
328 CONFIG_SND_BCM2708_SOC_DIONAUDIO_LOCO=m
329 +CONFIG_SND_BCM2708_SOC_ALLO_PIANO_DAC=m
330 +CONFIG_SND_PISOUND=m
331 CONFIG_SND_SOC_ADAU1701=m
332 +CONFIG_SND_SOC_AK4554=m
333 CONFIG_SND_SOC_WM8804_I2C=m
334 CONFIG_SND_SIMPLE_CARD=m
335 CONFIG_SOUND_PRIME=m
336 @@ -979,8 +929,6 @@ CONFIG_USB_HIDDEV=y
337 CONFIG_USB=y
338 CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
339 CONFIG_USB_MON=m
340 -CONFIG_USB_DWCOTG=n
341 -CONFIG_USB_DWC2=y
342 CONFIG_USB_PRINTER=m
343 CONFIG_USB_STORAGE=y
344 CONFIG_USB_STORAGE_REALTEK=m
345 @@ -1001,6 +949,7 @@ CONFIG_USB_MICROTEK=m
346 CONFIG_USBIP_CORE=m
347 CONFIG_USBIP_VHCI_HCD=m
348 CONFIG_USBIP_HOST=m
349 +CONFIG_USB_DWC2=y
350 CONFIG_USB_SERIAL=m
351 CONFIG_USB_SERIAL_GENERIC=y
352 CONFIG_USB_SERIAL_AIRCABLE=m
353 @@ -1096,6 +1045,7 @@ CONFIG_LEDS_TRIGGER_INPUT=y
354 CONFIG_LEDS_TRIGGER_PANIC=y
355 CONFIG_RTC_CLASS=y
356 # CONFIG_RTC_HCTOSYS is not set
357 +CONFIG_RTC_DRV_ABX80X=m
358 CONFIG_RTC_DRV_DS1307=m
359 CONFIG_RTC_DRV_DS1374=m
360 CONFIG_RTC_DRV_DS1672=m
361 @@ -1103,7 +1053,6 @@ CONFIG_RTC_DRV_MAX6900=m
362 CONFIG_RTC_DRV_RS5C372=m
363 CONFIG_RTC_DRV_ISL1208=m
364 CONFIG_RTC_DRV_ISL12022=m
365 -CONFIG_RTC_DRV_ISL12057=m
366 CONFIG_RTC_DRV_X1205=m
367 CONFIG_RTC_DRV_PCF8523=m
368 CONFIG_RTC_DRV_PCF8563=m
369 @@ -1137,7 +1086,6 @@ CONFIG_STAGING=y
370 CONFIG_PRISM2_USB=m
371 CONFIG_R8712U=m
372 CONFIG_R8188EU=m
373 -CONFIG_R8723AU=m
374 CONFIG_VT6656=m
375 CONFIG_SPEAKUP=m
376 CONFIG_SPEAKUP_SYNTH_SOFT=m
377 @@ -1153,6 +1101,7 @@ CONFIG_FB_TFT_BD663474=m
378 CONFIG_FB_TFT_HX8340BN=m
379 CONFIG_FB_TFT_HX8347D=m
380 CONFIG_FB_TFT_HX8353D=m
381 +CONFIG_FB_TFT_HX8357D=m
382 CONFIG_FB_TFT_ILI9163=m
383 CONFIG_FB_TFT_ILI9320=m
384 CONFIG_FB_TFT_ILI9325=m
385 @@ -1176,6 +1125,7 @@ CONFIG_FB_TFT_UPD161704=m
386 CONFIG_FB_TFT_WATTEROTT=m
387 CONFIG_FB_FLEX=m
388 CONFIG_FB_TFT_FBTFT_DEVICE=m
389 +# CONFIG_BCM2708_VCHIQ is not set
390 CONFIG_MAILBOX=y
391 CONFIG_BCM2835_MBOX=y
392 # CONFIG_IOMMU_SUPPORT is not set
393 @@ -1189,6 +1139,7 @@ CONFIG_IIO_KFIFO_BUF=m
394 CONFIG_MCP320X=m
395 CONFIG_MCP3422=m
396 CONFIG_DHT11=m
397 +CONFIG_HTU21=m
398 CONFIG_PWM_BCM2835=m
399 CONFIG_PWM_PCA9685=m
400 CONFIG_RASPBERRYPI_FIRMWARE=y
401 @@ -1309,6 +1260,7 @@ CONFIG_BOOT_PRINTK_DELAY=y
402 CONFIG_DEBUG_MEMORY_INIT=y
403 CONFIG_DETECT_HUNG_TASK=y
404 CONFIG_TIMER_STATS=y
405 +CONFIG_LATENCYTOP=y
406 CONFIG_IRQSOFF_TRACER=y
407 CONFIG_SCHED_TRACER=y
408 CONFIG_STACK_TRACER=y
409 @@ -1331,4 +1283,3 @@ CONFIG_CRYPTO_USER_API_SKCIPHER=m
410 CONFIG_ARM64_CRYPTO=y
411 CONFIG_CRC_ITU_T=y
412 CONFIG_LIBCRC32C=y
413 -CONFIG_BCM2835_VCHIQ=n
414 --
415 2.19.2
416