RTEMS
6.3
Toggle main menu visibility
Loading...
Searching...
No Matches
bsps
include
arm
ti
ti_pinmux.h
1
/*
2
* Copyright (c) 2010
3
* Ben Gray <ben.r.gray@gmail.com>.
4
* All rights reserved.
5
*
6
* Redistribution and use in source and binary forms, with or without
7
* modification, are permitted provided that the following conditions
8
* are met:
9
* 1. Redistributions of source code must retain the above copyright
10
* notice, this list of conditions and the following disclaimer.
11
* 2. Redistributions in binary form must reproduce the above copyright
12
* notice, this list of conditions and the following disclaimer in the
13
* documentation and/or other materials provided with the distribution.
14
* 3. All advertising materials mentioning features or use of this software
15
* must display the following acknowledgement:
16
* This product includes software developed by Ben Gray.
17
* 4. The name of the company nor the name of the author may be used to
18
* endorse or promote products derived from this software without specific
19
* prior written permission.
20
*
21
* THIS SOFTWARE IS PROVIDED BY BEN GRAY ``AS IS'' AND ANY EXPRESS OR
22
* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
23
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
24
* IN NO EVENT SHALL BEN GRAY BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
25
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
27
* OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
28
* WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
29
* OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
30
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31
*
32
* $FreeBSD$
33
*/
34
35
43
#ifndef _TI_PINMUX_H_
44
#define _TI_PINMUX_H_
45
#ifdef __rtems__
46
#include <
ofw/ofw.h
>
47
#endif
/* __rtems__ */
48
49
struct
ti_pinmux_padconf
{
50
uint16_t reg_off;
51
uint16_t gpio_pin;
52
uint16_t gpio_mode;
53
const
char
*ballname;
54
const
char
*muxmodes[8];
55
};
56
57
struct
ti_pinmux_padstate
{
58
const
char
*state;
59
uint16_t reg;
60
};
61
62
struct
ti_pinmux_device
{
63
uint16_t padconf_muxmode_mask;
64
uint16_t padconf_sate_mask;
65
const
struct
ti_pinmux_padstate
*padstate;
66
const
struct
ti_pinmux_padconf
*padconf;
67
};
68
69
#ifndef __rtems__
70
struct
ti_pinmux_softc
{
71
device_t sc_dev;
72
struct
resource * sc_res[4];
73
bus_space_tag_t sc_bst;
74
bus_space_handle_t sc_bsh;
75
};
76
#else
/* __rtems__ */
77
void
beagle_pinmux_init(
phandle_t
node);
78
#endif
/* __rtems__ */
79
80
int
ti_pinmux_padconf_set(
const
char
*padname,
const
char
*muxmode,
81
unsigned
int
state);
82
int
ti_pinmux_padconf_get(
const
char
*padname,
const
char
**muxmode,
83
unsigned
int
*state);
84
int
ti_pinmux_padconf_set_gpiomode(uint32_t gpio,
unsigned
int
state);
85
int
ti_pinmux_padconf_get_gpiomode(uint32_t gpio,
unsigned
int
*state);
86
87
#endif
/* _TI_SCM_H_ */
ofw.h
phandle_t
uint32_t phandle_t
Definition
ofw.h:56
ti_pinmux_device
Definition
ti_pinmux.h:62
ti_pinmux_padconf
Definition
ti_pinmux.h:49
ti_pinmux_padstate
Definition
ti_pinmux.h:57
ti_pinmux_softc
Definition
ti_pinmux.h:70
Generated by
1.18.0