xref: /openbmc/linux/drivers/pcmcia/sa1111_generic.h (revision 498495dba268b20e8eadd7fe93c140c68b6cc9d2)
1*b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */
21da177e4SLinus Torvalds #include "soc_common.h"
31da177e4SLinus Torvalds #include "sa11xx_base.h"
41da177e4SLinus Torvalds 
5701a5dc0SRussell King - ARM Linux struct sa1111_pcmcia_socket {
6701a5dc0SRussell King - ARM Linux 	struct soc_pcmcia_socket soc;
7701a5dc0SRussell King - ARM Linux 	struct sa1111_dev *dev;
8701a5dc0SRussell King - ARM Linux 	struct sa1111_pcmcia_socket *next;
9701a5dc0SRussell King - ARM Linux };
10701a5dc0SRussell King - ARM Linux 
to_skt(struct soc_pcmcia_socket * s)11701a5dc0SRussell King - ARM Linux static inline struct sa1111_pcmcia_socket *to_skt(struct soc_pcmcia_socket *s)
12701a5dc0SRussell King - ARM Linux {
13701a5dc0SRussell King - ARM Linux 	return container_of(s, struct sa1111_pcmcia_socket, soc);
14701a5dc0SRussell King - ARM Linux }
15701a5dc0SRussell King - ARM Linux 
16701a5dc0SRussell King - ARM Linux int sa1111_pcmcia_add(struct sa1111_dev *dev, struct pcmcia_low_level *ops,
17701a5dc0SRussell King - ARM Linux 	int (*add)(struct soc_pcmcia_socket *));
18701a5dc0SRussell King - ARM Linux 
191da177e4SLinus Torvalds extern void sa1111_pcmcia_socket_state(struct soc_pcmcia_socket *, struct pcmcia_state *);
201da177e4SLinus Torvalds extern int sa1111_pcmcia_configure_socket(struct soc_pcmcia_socket *, const socket_state_t *);
211da177e4SLinus Torvalds 
22cfd1f008SDmitry Eremin-Solenikov extern int pcmcia_badge4_init(struct sa1111_dev *);
234bc9ef29SDmitry Eremin-Solenikov extern int pcmcia_jornada720_init(struct sa1111_dev *);
241da177e4SLinus Torvalds extern int pcmcia_lubbock_init(struct sa1111_dev *);
251da177e4SLinus Torvalds extern int pcmcia_neponset_init(struct sa1111_dev *);
261da177e4SLinus Torvalds 
27