blob: f810fade92a907dd41de01715dccf6f81498ddf8 [file] [log] [blame]
Tom Rini10e47792018-05-06 17:58:06 -04001// SPDX-License-Identifier: GPL-2.0+
Marek Vasut9c3e0062015-07-25 09:53:23 +02002/*
3 * Copyright (C) 2015 Marek Vasut <marex@denx.de>
Marek Vasut9c3e0062015-07-25 09:53:23 +02004 */
5
6#include <common.h>
7#include <errno.h>
8#include <asm/arch/clock_manager.h>
Marek Vasut372f70d2015-08-10 21:21:07 +02009
10/* Board-specific header. */
11#include <qts/iocsr_config.h>
Marek Vasut9c3e0062015-07-25 09:53:23 +020012
13int iocsr_get_config_table(const unsigned int chain_id,
14 const unsigned long **table,
15 unsigned int *table_len)
16{
17 switch (chain_id) {
18 case 0:
19 *table = iocsr_scan_chain0_table;
20 *table_len = CONFIG_HPS_IOCSR_SCANCHAIN0_LENGTH;
21 break;
22 case 1:
23 *table = iocsr_scan_chain1_table;
24 *table_len = CONFIG_HPS_IOCSR_SCANCHAIN1_LENGTH;
25 break;
26 case 2:
27 *table = iocsr_scan_chain2_table;
28 *table_len = CONFIG_HPS_IOCSR_SCANCHAIN2_LENGTH;
29 break;
30 case 3:
31 *table = iocsr_scan_chain3_table;
32 *table_len = CONFIG_HPS_IOCSR_SCANCHAIN3_LENGTH;
33 break;
34 default:
35 return -EINVAL;
36 }
37
38 return 0;
39}