1*b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */ 2a439fe51SSam Ravnborg /* 3a439fe51SSam Ravnborg * bitext.h: Bit string operations on the sparc, specific to architecture. 4a439fe51SSam Ravnborg * 5a439fe51SSam Ravnborg * Copyright 2002 Pete Zaitcev <zaitcev@yahoo.com> 6a439fe51SSam Ravnborg */ 7a439fe51SSam Ravnborg 8a439fe51SSam Ravnborg #ifndef _SPARC_BITEXT_H 9a439fe51SSam Ravnborg #define _SPARC_BITEXT_H 10a439fe51SSam Ravnborg 11a439fe51SSam Ravnborg #include <linux/spinlock.h> 12a439fe51SSam Ravnborg 13a439fe51SSam Ravnborg struct bit_map { 14a439fe51SSam Ravnborg spinlock_t lock; 15a439fe51SSam Ravnborg unsigned long *map; 16a439fe51SSam Ravnborg int size; 17a439fe51SSam Ravnborg int used; 18a439fe51SSam Ravnborg int last_off; 19a439fe51SSam Ravnborg int last_size; 20a439fe51SSam Ravnborg int first_free; 21a439fe51SSam Ravnborg int num_colors; 22a439fe51SSam Ravnborg }; 23a439fe51SSam Ravnborg 24f05a6865SSam Ravnborg int bit_map_string_get(struct bit_map *t, int len, int align); 25f05a6865SSam Ravnborg void bit_map_clear(struct bit_map *t, int offset, int len); 26f05a6865SSam Ravnborg void bit_map_init(struct bit_map *t, unsigned long *map, int size); 27a439fe51SSam Ravnborg 28a439fe51SSam Ravnborg #endif /* defined(_SPARC_BITEXT_H) */ 29