162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0
262306a36Sopenharmony_ci/*
362306a36Sopenharmony_ci * linux/arch/sh/boards/se/7751/irq.c
462306a36Sopenharmony_ci *
562306a36Sopenharmony_ci * Copyright (C) 2000  Kazumoto Kojima
662306a36Sopenharmony_ci *
762306a36Sopenharmony_ci * Hitachi SolutionEngine Support.
862306a36Sopenharmony_ci *
962306a36Sopenharmony_ci * Modified for 7751 Solution Engine by
1062306a36Sopenharmony_ci * Ian da Silva and Jeremy Siegel, 2001.
1162306a36Sopenharmony_ci */
1262306a36Sopenharmony_ci
1362306a36Sopenharmony_ci#include <linux/init.h>
1462306a36Sopenharmony_ci#include <linux/irq.h>
1562306a36Sopenharmony_ci#include <asm/irq.h>
1662306a36Sopenharmony_ci#include <mach-se/mach/se7751.h>
1762306a36Sopenharmony_ci
1862306a36Sopenharmony_cistatic struct ipr_data ipr_irq_table[] = {
1962306a36Sopenharmony_ci	{ 13, 3, 3, 2 },
2062306a36Sopenharmony_ci	/* Add additional entries here as drivers are added and tested. */
2162306a36Sopenharmony_ci};
2262306a36Sopenharmony_ci
2362306a36Sopenharmony_cistatic unsigned long ipr_offsets[] = {
2462306a36Sopenharmony_ci	BCR_ILCRA,
2562306a36Sopenharmony_ci	BCR_ILCRB,
2662306a36Sopenharmony_ci	BCR_ILCRC,
2762306a36Sopenharmony_ci	BCR_ILCRD,
2862306a36Sopenharmony_ci	BCR_ILCRE,
2962306a36Sopenharmony_ci	BCR_ILCRF,
3062306a36Sopenharmony_ci	BCR_ILCRG,
3162306a36Sopenharmony_ci};
3262306a36Sopenharmony_ci
3362306a36Sopenharmony_cistatic struct ipr_desc ipr_irq_desc = {
3462306a36Sopenharmony_ci	.ipr_offsets	= ipr_offsets,
3562306a36Sopenharmony_ci	.nr_offsets	= ARRAY_SIZE(ipr_offsets),
3662306a36Sopenharmony_ci
3762306a36Sopenharmony_ci	.ipr_data	= ipr_irq_table,
3862306a36Sopenharmony_ci	.nr_irqs	= ARRAY_SIZE(ipr_irq_table),
3962306a36Sopenharmony_ci
4062306a36Sopenharmony_ci	.chip = {
4162306a36Sopenharmony_ci		.name	= "IPR-se7751",
4262306a36Sopenharmony_ci	},
4362306a36Sopenharmony_ci};
4462306a36Sopenharmony_ci
4562306a36Sopenharmony_ci/*
4662306a36Sopenharmony_ci * Initialize IRQ setting
4762306a36Sopenharmony_ci */
4862306a36Sopenharmony_civoid __init init_7751se_IRQ(void)
4962306a36Sopenharmony_ci{
5062306a36Sopenharmony_ci	register_ipr_controller(&ipr_irq_desc);
5162306a36Sopenharmony_ci}
52