blob: a3ece8d8091a186d1e2937dcec23b3fbc5ecf445 [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001/* SPDX-License-Identifier: GPL-2.0 */
Peter Oberparleiter83b33702007-04-27 16:01:34 +02002/*
Sebastian Ottcec85462012-10-15 12:24:56 +02003 * Copyright IBM Corp. 2007, 2012
Peter Oberparleiter83b33702007-04-27 16:01:34 +02004 * Author(s): Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
5 */
6
7#ifndef S390_IDSET_H
Daniel van Gerpen99ec1112016-05-23 15:19:38 +02008#define S390_IDSET_H
Peter Oberparleiter83b33702007-04-27 16:01:34 +02009
Cornelia Huck9d92a7e2008-07-14 09:59:05 +020010#include <asm/schid.h>
Peter Oberparleiter83b33702007-04-27 16:01:34 +020011
12struct idset;
13
14void idset_free(struct idset *set);
Peter Oberparleiter83b33702007-04-27 16:01:34 +020015void idset_fill(struct idset *set);
16
17struct idset *idset_sch_new(void);
18void idset_sch_add(struct idset *set, struct subchannel_id id);
19void idset_sch_del(struct idset *set, struct subchannel_id id);
Sebastian Ottcec85462012-10-15 12:24:56 +020020void idset_sch_del_subseq(struct idset *set, struct subchannel_id schid);
Peter Oberparleiter83b33702007-04-27 16:01:34 +020021int idset_sch_contains(struct idset *set, struct subchannel_id id);
Sebastian Ott25530552009-09-22 22:58:34 +020022int idset_is_empty(struct idset *set);
Sebastian Ott703e5c92009-09-22 22:58:38 +020023void idset_add_set(struct idset *to, struct idset *from);
Peter Oberparleiter83b33702007-04-27 16:01:34 +020024
25#endif /* S390_IDSET_H */