162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0-only
262306a36Sopenharmony_ci// Copyright (C) 2013-2014 Broadcom Corporation
362306a36Sopenharmony_ci
462306a36Sopenharmony_ci#include <linux/init.h>
562306a36Sopenharmony_ci#include <linux/irqchip.h>
662306a36Sopenharmony_ci
762306a36Sopenharmony_ci#include <asm/mach-types.h>
862306a36Sopenharmony_ci#include <asm/mach/arch.h>
962306a36Sopenharmony_ci
1062306a36Sopenharmony_ci/*
1162306a36Sopenharmony_ci * Storage for debug-macro.S's state.
1262306a36Sopenharmony_ci *
1362306a36Sopenharmony_ci * This must be in .data not .bss so that it gets initialized each time the
1462306a36Sopenharmony_ci * kernel is loaded. The data is declared here rather than debug-macro.S so
1562306a36Sopenharmony_ci * that multiple inclusions of debug-macro.S point at the same data.
1662306a36Sopenharmony_ci */
1762306a36Sopenharmony_ciu32 brcmstb_uart_config[3] = {
1862306a36Sopenharmony_ci	/* Debug UART initialization required */
1962306a36Sopenharmony_ci	1,
2062306a36Sopenharmony_ci	/* Debug UART physical address */
2162306a36Sopenharmony_ci	0,
2262306a36Sopenharmony_ci	/* Debug UART virtual address */
2362306a36Sopenharmony_ci	0,
2462306a36Sopenharmony_ci};
2562306a36Sopenharmony_ci
2662306a36Sopenharmony_cistatic void __init brcmstb_init_irq(void)
2762306a36Sopenharmony_ci{
2862306a36Sopenharmony_ci	irqchip_init();
2962306a36Sopenharmony_ci}
3062306a36Sopenharmony_ci
3162306a36Sopenharmony_cistatic const char *const brcmstb_match[] __initconst = {
3262306a36Sopenharmony_ci	"brcm,bcm7445",
3362306a36Sopenharmony_ci	"brcm,brcmstb",
3462306a36Sopenharmony_ci	NULL
3562306a36Sopenharmony_ci};
3662306a36Sopenharmony_ci
3762306a36Sopenharmony_ciDT_MACHINE_START(BRCMSTB, "Broadcom STB (Flattened Device Tree)")
3862306a36Sopenharmony_ci	.dt_compat	= brcmstb_match,
3962306a36Sopenharmony_ci	.init_irq	= brcmstb_init_irq,
4062306a36Sopenharmony_ciMACHINE_END
41