xref: /openbmc/u-boot/include/pca953x.h (revision e92739d3)
1*e92739d3SPeter Tyser /*
2*e92739d3SPeter Tyser  * Copyright 2008 Extreme Engineering Solutions, Inc.
3*e92739d3SPeter Tyser  *
4*e92739d3SPeter Tyser  * This program is free software; you can redistribute it and/or
5*e92739d3SPeter Tyser  * modify it under the terms of the GNU General Public License
6*e92739d3SPeter Tyser  * Version 2 as published by the Free Software Foundation.
7*e92739d3SPeter Tyser  *
8*e92739d3SPeter Tyser  * This program is distributed in the hope that it will be useful,
9*e92739d3SPeter Tyser  * but WITHOUT ANY WARRANTY; without even the implied warranty of
10*e92739d3SPeter Tyser  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11*e92739d3SPeter Tyser  * GNU General Public License for more details.
12*e92739d3SPeter Tyser  *
13*e92739d3SPeter Tyser  * You should have received a copy of the GNU General Public License
14*e92739d3SPeter Tyser  * along with this program; if not, write to the Free Software
15*e92739d3SPeter Tyser  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
16*e92739d3SPeter Tyser  * MA 02111-1307 USA
17*e92739d3SPeter Tyser  */
18*e92739d3SPeter Tyser 
19*e92739d3SPeter Tyser #ifndef __PCA953X_H_
20*e92739d3SPeter Tyser #define __PCA953X_H_
21*e92739d3SPeter Tyser 
22*e92739d3SPeter Tyser #define PCA953X_IN		0x00
23*e92739d3SPeter Tyser #define PCA953X_OUT		0x01
24*e92739d3SPeter Tyser #define PCA953X_POL		0x02
25*e92739d3SPeter Tyser #define PCA953X_CONF		0x03
26*e92739d3SPeter Tyser 
27*e92739d3SPeter Tyser #define PCA953X_OUT_LOW		0
28*e92739d3SPeter Tyser #define PCA953X_OUT_HIGH	1
29*e92739d3SPeter Tyser #define PCA953X_POL_NORMAL	0
30*e92739d3SPeter Tyser #define PCA953X_POL_INVERT	1
31*e92739d3SPeter Tyser #define PCA953X_DIR_OUT		0
32*e92739d3SPeter Tyser #define PCA953X_DIR_IN		1
33*e92739d3SPeter Tyser 
34*e92739d3SPeter Tyser int pca953x_set_val(u8 chip, uint mask, uint data);
35*e92739d3SPeter Tyser int pca953x_set_pol(u8 chip, uint mask, uint data);
36*e92739d3SPeter Tyser int pca953x_set_dir(u8 chip, uint mask, uint data);
37*e92739d3SPeter Tyser int pca953x_get_val(u8 chip);
38*e92739d3SPeter Tyser 
39*e92739d3SPeter Tyser #endif /* __PCA953X_H_ */
40