source: rtems/cpukit/score/cpu/sparc/include/libcpu/access.h @ 8b5778e

5
Last change on this file since 8b5778e was 8b5778e, checked in by Sebastian Huber <sebastian.huber@…>, on 03/12/18 at 05:37:36

sparc: Move libcpu content to cpukit

This patch is a part of the BSP source reorganization.

Update #3285.

  • Property mode set to 100644
File size: 1.3 KB
RevLine 
[80d01b3c]1/*
2 *  access.h  - access routines for SPARC. SPARC is big endian only.
3 *
4 *  COPYRIGHT (c) 2011
5 *  Aeroflex Gaisler.
6 *
7 *  The license and distribution terms for this file may be
8 *  found in the file LICENSE in this distribution or at
[c499856]9 *  http://www.rtems.org/license/LICENSE.
[80d01b3c]10 */
11
12#ifndef _LIBCPU_ACCESS_H
13#define _LIBCPU_ACCESS_H
14
15#include <rtems/system.h>
16#include <rtems/score/cpu.h>
17
18#ifdef __cplusplus
19extern "C" {
20#endif
21
22/* "Raw" access */
23extern uint8_t _ld8(uint8_t *addr);
24extern void _st8(uint8_t *addr, uint8_t val);
25extern uint16_t _ld16(uint16_t *addr);
26extern void _st16(uint16_t *addr, uint16_t val);
27extern uint32_t _ld32(uint32_t *addr);
28extern void _st32(uint32_t *addr, uint32_t val);
29extern uint64_t _ld64(uint64_t *addr);
30extern void _st64(uint64_t *addr, uint64_t val);
31
32/* Aliases for Big Endian */
33extern uint16_t _ld_be16(uint16_t *addr);
34extern void _st_be16(uint16_t *addr, uint16_t val);
35extern uint32_t _ld_be32(uint32_t *addr);
36extern void _st_be32(uint32_t *addr, uint32_t val);
37extern uint64_t _ld_be64(uint64_t *addr);
38extern void _st_be64(uint64_t *addr, uint64_t val);
39
40/* Little endian */
41extern uint16_t _ld_le16(uint16_t *addr);
42extern void _st_le16(uint16_t *addr, uint16_t val);
43extern uint32_t _ld_le32(uint32_t *addr);
44extern void _st_le32(uint32_t *addr, uint32_t val);
45
46#ifdef __cplusplus
47}
48#endif
49
50#endif
Note: See TracBrowser for help on using the repository browser.