Skip to content

bcm270x: Convert to ARCH_MULTIPLATFORM #1699

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 10 commits into from
Oct 28, 2016
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
49 changes: 0 additions & 49 deletions arch/arm/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -326,52 +326,6 @@ choice
default ARM_SINGLE_ARMV7M if !MMU
default ARCH_MULTIPLATFORM if MMU

config ARCH_BCM2708
bool "Broadcom BCM2708 family"
select CPU_V6
select ARM_AMBA
select CLKSRC_MMIO
select CLKSRC_OF if OF
select HAVE_SCHED_CLOCK
select NEED_MACH_GPIO_H
select NEED_MACH_MEMORY_H
select COMMON_CLK
select ARCH_HAS_CPUFREQ
select GENERIC_CLOCKEVENTS
select ARM_ERRATA_411920
select MACH_BCM2708
select MULTI_IRQ_HANDLER
select SPARSE_IRQ
select VC4
select FIQ
help
This enables support for Broadcom BCM2708 boards.

config ARCH_BCM2709
bool "Broadcom BCM2709 family"
select CPU_V7
select HAVE_SMP
select ARM_AMBA
select MIGHT_HAVE_CACHE_L2X0
select HAVE_SCHED_CLOCK
select NEED_MACH_MEMORY_H
select NEED_MACH_IO_H
select COMMON_CLK
select ARCH_HAS_CPUFREQ
select GENERIC_CLOCKEVENTS
select MACH_BCM2709
select MULTI_IRQ_HANDLER
select SPARSE_IRQ
select MFD_SYSCON
select VC4
select FIQ
select USE_OF
select ARCH_REQUIRE_GPIOLIB
select PINCTRL
select PINCTRL_BCM2835
help
This enables support for Broadcom BCM2709 boards.

config ARCH_MULTIPLATFORM
bool "Allow multiple platforms to be selected"
depends on MMU
Expand Down Expand Up @@ -757,9 +711,6 @@ config ARCH_VIRT
# Kconfigs may be included either alphabetically (according to the
# plat- suffix) or along side the corresponding mach-* source.
#
source "arch/arm/mach-bcm2708/Kconfig"
source "arch/arm/mach-bcm2709/Kconfig"

source "arch/arm/mach-mvebu/Kconfig"

source "arch/arm/mach-alpine/Kconfig"
Expand Down
10 changes: 4 additions & 6 deletions arch/arm/Kconfig.debug
Original file line number Diff line number Diff line change
Expand Up @@ -147,12 +147,12 @@ choice

config DEBUG_BCM2835
bool "Kernel low-level debugging on BCM2835 PL011 UART"
depends on (ARCH_BCM2835 && ARCH_MULTI_V6) || ARCH_BCM2708
depends on ARCH_BCM2835 && ARCH_MULTI_V6
select DEBUG_UART_PL01X

config DEBUG_BCM2836
bool "Kernel low-level debugging on BCM2836 PL011 UART"
depends on (ARCH_BCM2835 && ARCH_MULTI_V7) || ARCH_BCM2709
depends on ARCH_BCM2835 && ARCH_MULTI_V7
select DEBUG_UART_PL01X

config DEBUG_BCM_5301X
Expand Down Expand Up @@ -1695,8 +1695,7 @@ config DEBUG_UART_8250_FLOW_CONTROL

config DEBUG_UNCOMPRESS
bool
depends on ARCH_MULTIPLATFORM || PLAT_SAMSUNG || ARM_SINGLE_ARMV7M || \
ARCH_BCM2708 || ARCH_BCM2709
depends on ARCH_MULTIPLATFORM || PLAT_SAMSUNG || ARM_SINGLE_ARMV7M
default y if DEBUG_LL && !DEBUG_OMAP2PLUS_UART && \
(!DEBUG_TEGRA_UART || !ZBOOT_ROM)
help
Expand All @@ -1713,8 +1712,7 @@ config DEBUG_UNCOMPRESS
config UNCOMPRESS_INCLUDE
string
default "debug/uncompress.h" if ARCH_MULTIPLATFORM || ARCH_MSM || \
PLAT_SAMSUNG || ARM_SINGLE_ARMV7M || \
ARCH_BCM2708 || ARCH_BCM2709
PLAT_SAMSUNG || ARM_SINGLE_ARMV7M
default "mach/uncompress.h"

config EARLY_PRINTK
Expand Down
2 changes: 0 additions & 2 deletions arch/arm/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -152,8 +152,6 @@ textofs-$(CONFIG_ARCH_AXXIA) := 0x00308000

# Machine directory name. This list is sorted alphanumerically
# by CONFIG_* macro name.
machine-$(CONFIG_ARCH_BCM2708) += bcm2708
machine-$(CONFIG_ARCH_BCM2709) += bcm2709
machine-$(CONFIG_ARCH_ALPINE) += alpine
machine-$(CONFIG_ARCH_ARTPEC) += artpec
machine-$(CONFIG_ARCH_AT91) += at91
Expand Down
1 change: 0 additions & 1 deletion arch/arm/boot/dts/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ ifeq ($(CONFIG_OF),y)
dtb-$(CONFIG_ARCH_BCM2708) += bcm2708-rpi-b.dtb
dtb-$(CONFIG_ARCH_BCM2708) += bcm2708-rpi-b-plus.dtb
dtb-$(CONFIG_ARCH_BCM2708) += bcm2708-rpi-cm.dtb
dtb-$(CONFIG_ARCH_BCM2835) += bcm2835-rpi-cm.dtb
dtb-$(CONFIG_ARCH_BCM2709) += bcm2709-rpi-2-b.dtb
dtb-$(CONFIG_ARCH_BCM2709) += bcm2710-rpi-3-b.dtb
dtb-$(CONFIG_ARCH_BCM2709) += bcm2710-rpi-cm3.dtb
Expand Down
3 changes: 0 additions & 3 deletions arch/arm/boot/dts/bcm2708.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,6 @@
model = "BCM2708";

soc {
ranges = <0x7e000000 0x20000000 0x01000000>;
/delete-property/ dma-ranges;

timer@7e003000 {
compatible = "brcm,bcm2835-system-timer";
reg = <0x7e003000 0x1000>;
Expand Down
1 change: 0 additions & 1 deletion arch/arm/boot/dts/bcm2709.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@
soc {
ranges = <0x7e000000 0x3f000000 0x01000000>,
<0x40000000 0x40000000 0x00040000>;
/delete-property/ dma-ranges;

syscon@40000000 {
compatible = "brcm,bcm2836-arm-local", "syscon";
Expand Down
4 changes: 0 additions & 4 deletions arch/arm/boot/dts/bcm2710.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,7 @@
soc {
ranges = <0x7e000000 0x3f000000 0x01000000>,
<0x40000000 0x40000000 0x00040000>;
#ifdef RPI364
dma-ranges = <0xc0000000 0x00000000 0x3f000000>;
#endif

local_intc: local_intc {
compatible = "brcm,bcm2836-l1-intc";
Expand Down Expand Up @@ -143,9 +141,7 @@

&intc {
compatible = "brcm,bcm2836-armctrl-ic";
#ifdef RPI364
reg = <0x7e00b200 0x200>;
#endif
interrupt-parent = <&local_intc>;
interrupts = <8>;
};
Expand Down
93 changes: 0 additions & 93 deletions arch/arm/boot/dts/bcm2835-rpi-cm.dts

This file was deleted.

30 changes: 0 additions & 30 deletions arch/arm/boot/dts/bcm2835-rpi-cm.dtsi

This file was deleted.

4 changes: 1 addition & 3 deletions arch/arm/configs/bcm2709_defconfig
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
# CONFIG_ARM_PATCH_PHYS_VIRT is not set
CONFIG_PHYS_OFFSET=0
CONFIG_LOCALVERSION="-v7"
# CONFIG_LOCALVERSION_AUTO is not set
CONFIG_SYSVIPC=y
Expand Down Expand Up @@ -39,10 +37,10 @@ CONFIG_BLK_DEV_THROTTLING=y
CONFIG_PARTITION_ADVANCED=y
CONFIG_MAC_PARTITION=y
CONFIG_CFQ_GROUP_IOSCHED=y
CONFIG_ARCH_BCM=y
CONFIG_ARCH_BCM2709=y
# CONFIG_CACHE_L2X0 is not set
CONFIG_SMP=y
CONFIG_HAVE_ARM_ARCH_TIMER=y
CONFIG_VMSPLIT_2G=y
CONFIG_PREEMPT_VOLUNTARY=y
CONFIG_AEABI=y
Expand Down
6 changes: 4 additions & 2 deletions arch/arm/configs/bcmrpi_defconfig
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
# CONFIG_ARM_PATCH_PHYS_VIRT is not set
CONFIG_PHYS_OFFSET=0
# CONFIG_LOCALVERSION_AUTO is not set
CONFIG_SYSVIPC=y
CONFIG_POSIX_MQUEUE=y
Expand Down Expand Up @@ -38,7 +36,11 @@ CONFIG_BLK_DEV_THROTTLING=y
CONFIG_PARTITION_ADVANCED=y
CONFIG_MAC_PARTITION=y
CONFIG_CFQ_GROUP_IOSCHED=y
CONFIG_ARCH_MULTI_V6=y
# CONFIG_ARCH_MULTI_V7 is not set
CONFIG_ARCH_BCM=y
CONFIG_ARCH_BCM2708=y
# CONFIG_CACHE_L2X0 is not set
CONFIG_PREEMPT_VOLUNTARY=y
CONFIG_AEABI=y
CONFIG_OABI_COMPAT=y
Expand Down
10 changes: 0 additions & 10 deletions arch/arm/kernel/process.c
Original file line number Diff line number Diff line change
Expand Up @@ -91,16 +91,6 @@ void arch_cpu_idle_exit(void)
ledtrig_cpu(CPU_LED_IDLE_END);
}

char bcm2708_reboot_mode = 'h';

int __init reboot_setup(char *str)
{
bcm2708_reboot_mode = str[0];
return 1;
}

__setup("reboot=", reboot_setup);

void __show_regs(struct pt_regs *regs)
{
unsigned long flags;
Expand Down
23 changes: 23 additions & 0 deletions arch/arm/mach-bcm/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -160,6 +160,29 @@ config ARCH_BCM2835
This enables support for the Broadcom BCM2835 and BCM2836 SoCs.
This SoC is used in the Raspberry Pi and Roku 2 devices.

config MACH_BCM2708
bool "Enable optimized __copy_to_user and __copy_from_user"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This text doesn't seem to match the config name. A c/p error?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I was tired and didn't know what to call it, so I just kept the name.
The only place CONFIG_MACH_BCM2708 is used is in the optimization code: 5fb515e

depends on ARCH_BCM2708
default y
help
Optimized versions of __copy_to_user and __copy_from_user for Pi1.

config ARCH_BCM2708
bool "Broadcom BCM2708 family"
depends on ARCH_MULTI_V6
select ARCH_BCM2835
help
This enables support for Broadcom BCM2708 boards.

config ARCH_BCM2709
bool "Broadcom BCM2709 family"
depends on ARCH_MULTI_V7
select ARCH_BCM2835
select HAVE_SMP
select MFD_SYSCON
help
This enables support for Broadcom BCM2709 boards.

config ARCH_BCM_63XX
bool "Broadcom BCM63xx DSL SoC"
depends on ARCH_MULTI_V7
Expand Down
Loading