Hardware Libraries
20.1
Arria 10 SoC Hardware Manager
Main Page
Address Space
Data Structures
Files
File List
Globals
All
Data Structures
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
alt_address_space.h
Go to the documentation of this file.
1
/******************************************************************************
2
*
3
* Copyright 2013 Altera Corporation. All Rights Reserved.
4
*
5
* Redistribution and use in source and binary forms, with or without
6
* modification, are permitted provided that the following conditions are met:
7
*
8
* 1. Redistributions of source code must retain the above copyright notice,
9
* this list of conditions and the following disclaimer.
10
*
11
* 2. Redistributions in binary form must reproduce the above copyright notice,
12
* this list of conditions and the following disclaimer in the documentation
13
* and/or other materials provided with the distribution.
14
*
15
* 3. Neither the name of the copyright holder nor the names of its contributors
16
* may be used to endorse or promote products derived from this software without
17
* specific prior written permission.
18
*
19
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
20
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
23
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
24
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
25
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
26
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
27
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29
* POSSIBILITY OF SUCH DAMAGE.
30
*
31
******************************************************************************/
32
33
/*
34
* $Id: //acds/rel/20.1/embedded/ip/hps/altera_hps/hwlib/include/alt_address_space.h#1 $
35
*/
36
41
#ifndef __ALT_ADDRESS_SPACE_H__
42
#define __ALT_ADDRESS_SPACE_H__
43
44
#include <stdbool.h>
45
#include "hwlib.h"
46
#include "socal/hps.h"
47
#include "
alt_l2_p310.h
"
48
49
#ifdef __cplusplus
50
extern
"C"
51
{
52
#endif
/* __cplusplus */
53
54
#ifndef __ASSEMBLY__
55
56
/******************************************************************************/
69
/******************************************************************************/
123
/******************************************************************************/
130
typedef
enum
ALT_ADDR_SPACE_MPU_ATTR_e
131
{
132
ALT_ADDR_SPACE_MPU_ZERO_AT_BOOTROM
,
141
ALT_ADDR_SPACE_MPU_ZERO_AT_OCRAM
149
}
ALT_ADDR_SPACE_MPU_ATTR_t
;
150
151
/******************************************************************************/
159
typedef
enum
ALT_ADDR_SPACE_NONMPU_ATTR_e
160
{
161
ALT_ADDR_SPACE_NONMPU_ZERO_AT_SDRAM
,
164
ALT_ADDR_SPACE_NONMPU_ZERO_AT_OCRAM
172
}
ALT_ADDR_SPACE_NONMPU_ATTR_t
;
173
174
/******************************************************************************/
179
typedef
enum
ALT_ADDR_SPACE_H2F_BRIDGE_ATTR_e
180
{
181
ALT_ADDR_SPACE_H2F_INACCESSIBLE
,
187
ALT_ADDR_SPACE_H2F_ACCESSIBLE
190
}
ALT_ADDR_SPACE_H2F_BRIDGE_ATTR_t
;
191
192
/******************************************************************************/
197
typedef
enum
ALT_ADDR_SPACE_LWH2F_BRIDGE_ATTR_e
198
{
199
ALT_ADDR_SPACE_LWH2F_INACCESSIBLE
,
205
ALT_ADDR_SPACE_LWH2F_ACCESSIBLE
208
}
ALT_ADDR_SPACE_LWH2F_BRIDGE_ATTR_t
;
209
210
/******************************************************************************/
234
ALT_STATUS_CODE
alt_addr_space_remap
(
ALT_ADDR_SPACE_MPU_ATTR_t
mpu_attr,
235
ALT_ADDR_SPACE_NONMPU_ATTR_t
nonmpu_attr,
236
ALT_ADDR_SPACE_H2F_BRIDGE_ATTR_t
h2f_attr,
237
ALT_ADDR_SPACE_LWH2F_BRIDGE_ATTR_t
lwh2f_attr);
238
239
/******************************************************************************/
267
ALT_STATUS_CODE
alt_mpu_addr_space_remap_0_to_sdram
(
void
);
268
271
/******************************************************************************/
294
/******************************************************************************/
315
ALT_STATUS_CODE
alt_l2_addr_filter_cfg_get
(uint32_t* addr_filt_start,
316
uint32_t* addr_filt_end);
317
318
/******************************************************************************/
344
ALT_STATUS_CODE
alt_l2_addr_filter_cfg_set
(uint32_t addr_filt_start,
345
uint32_t addr_filt_end);
346
349
/******************************************************************************/
437
/******************************************************************************/
449
#define ALT_ACP_ID_MAP_MASTER_ID_MASK 0xfff
450
452
#define ALT_ACP_ID_MAP_MASTER_ID_L2M0(var) (0x00000002 | (0x000007f8 & (var)))
453
454
#define ALT_ACP_ID_MAP_MASTER_ID_DMA(var) (0x00000001 | (0x00000078 & (var)))
455
456
#define ALT_ACP_ID_MAP_MASTER_ID_EMAC0(var) (0x00000801 | (0x00000878 & (var)))
457
458
#define ALT_ACP_ID_MAP_MASTER_ID_EMAC1(var) (0x00000802 | (0x00000878 & (var)))
459
460
#define ALT_ACP_ID_MAP_MASTER_ID_USB0 0x00000803
461
462
#define ALT_ACP_ID_MAP_MASTER_ID_USB1 0x00000806
463
464
#define ALT_ACP_ID_MAP_MASTER_ID_NAND(var) (0x00000804 | (0x00000ff8 & (var)))
465
466
#define ALT_ACP_ID_MAP_MASTER_ID_TMC 0x00000800
467
468
#define ALT_ACP_ID_MAP_MASTER_ID_DAP 0x00000004
469
470
#define ALT_ACP_ID_MAP_MASTER_ID_SDMMC 0x00000805
471
472
#define ALT_ACP_ID_MAP_MASTER_ID_F2H(var) (0x00000000 | (0x000007f8 & (var)))
473
475
/******************************************************************************/
479
typedef
enum
ALT_ACP_ID_OUTPUT_ID_e
480
{
481
ALT_ACP_ID_OUT_FIXED_ID_2
= 2,
485
ALT_ACP_ID_OUT_DYNAM_ID_3
= 3,
486
ALT_ACP_ID_OUT_DYNAM_ID_4
= 4,
487
ALT_ACP_ID_OUT_DYNAM_ID_5
= 5,
488
ALT_ACP_ID_OUT_DYNAM_ID_6
= 6,
489
ALT_ACP_ID_OUT_DYNAM_ID_7
= 7
490
}
ALT_ACP_ID_OUTPUT_ID_t
;
491
496
typedef
enum
ALT_ACP_ID_MAP_PAGE_e
497
{
498
ALT_ACP_ID_MAP_PAGE_0
= 0,
499
ALT_ACP_ID_MAP_PAGE_1
= 1,
500
ALT_ACP_ID_MAP_PAGE_2
= 2,
501
ALT_ACP_ID_MAP_PAGE_3
= 3
502
}
ALT_ACP_ID_MAP_PAGE_t
;
503
504
/******************************************************************************/
539
ALT_STATUS_CODE
alt_acp_id_map_fixed_read_set
(
const
uint32_t input_id,
540
const
uint32_t output_id,
541
const
ALT_ACP_ID_MAP_PAGE_t
page,
542
const
uint32_t aruser);
543
544
/******************************************************************************/
579
ALT_STATUS_CODE
alt_acp_id_map_fixed_write_set
(
const
uint32_t input_id,
580
const
uint32_t output_id,
581
const
ALT_ACP_ID_MAP_PAGE_t
page,
582
const
uint32_t awuser);
583
584
/******************************************************************************/
605
ALT_STATUS_CODE
alt_acp_id_map_dynamic_read_set
(
const
uint32_t output_id);
606
607
/******************************************************************************/
628
ALT_STATUS_CODE
alt_acp_id_map_dynamic_write_set
(
const
uint32_t output_id);
629
630
/******************************************************************************/
653
ALT_STATUS_CODE
alt_acp_id_map_dynamic_read_options_set
(
const
ALT_ACP_ID_MAP_PAGE_t
page,
654
const
uint32_t aruser);
655
656
/******************************************************************************/
679
ALT_STATUS_CODE
alt_acp_id_map_dynamic_write_options_set
(
const
ALT_ACP_ID_MAP_PAGE_t
page,
680
const
uint32_t awuser);
681
682
/******************************************************************************/
726
ALT_STATUS_CODE
alt_acp_id_map_read_options_get
(
const
uint32_t output_id,
727
bool
* fixed,
728
uint32_t* input_id,
729
ALT_ACP_ID_MAP_PAGE_t
* page,
730
uint32_t* aruser);
731
732
/******************************************************************************/
776
ALT_STATUS_CODE
alt_acp_id_map_write_options_get
(
const
uint32_t output_id,
777
bool
* fixed,
778
uint32_t* input_id,
779
ALT_ACP_ID_MAP_PAGE_t
* page,
780
uint32_t* awuser);
781
786
#endif
/* __ASSEMBLY__ */
787
788
#ifdef __cplusplus
789
}
790
#endif
/* __cplusplus */
791
#endif
/* __ALT_ADDRESS_SPACE_H__ */
include
alt_address_space.h
Generated on Tue Oct 27 2020 08:37:28 for Hardware Libraries by
1.8.2