From 4d3e70f4a62324c42e5db621bc411256a096d752 Mon Sep 17 00:00:00 2001 From: Daniel Hellstrom Date: Mon, 13 Apr 2015 11:26:52 +0200 Subject: DRVMGR: KEY_TYPE now a enum drvmgr_kt --- cpukit/libdrvmgr/drvmgr.h | 23 +++++++++++++---------- cpukit/libdrvmgr/drvmgr_print.c | 2 +- cpukit/libdrvmgr/drvmgr_res.c | 9 +++++---- 3 files changed, 19 insertions(+), 15 deletions(-) (limited to 'cpukit/libdrvmgr') diff --git a/cpukit/libdrvmgr/drvmgr.h b/cpukit/libdrvmgr/drvmgr.h index 71a2850f64..1f5bc80eb8 100644 --- a/cpukit/libdrvmgr/drvmgr.h +++ b/cpukit/libdrvmgr/drvmgr.h @@ -170,12 +170,15 @@ struct drvmgr_func { */ /* Key Data Types */ -#define KEY_TYPE_NONE 0 -#define KEY_TYPE_INT 1 -#define KEY_TYPE_STRING 2 -#define KEY_TYPE_POINTER 3 +enum drvmgr_kt { + DRVMGR_KT_ANY = -1, + DRVMGR_KT_NONE = 0, + DRVMGR_KT_INT = 1, + DRVMGR_KT_STRING = 2, + DRVMGR_KT_POINTER = 3, +}; -#define KEY_EMPTY {NULL, KEY_TYPE_NONE, {0}} +#define DRVMGR_KEY_EMPTY {NULL, DRVMGR_KT_NONE, {0}} #define RES_EMPTY {0, 0, NULL} #define MMAP_EMPTY {0, 0, 0} @@ -189,7 +192,7 @@ union drvmgr_key_value { /* One key. One Value. Holding information relevant to the driver. */ struct drvmgr_key { char *key_name; /* Name of key */ - int key_type; /* How to interpret key_value */ + enum drvmgr_kt key_type; /* How to interpret key_value */ union drvmgr_key_value key_value; /* The value or pointer to value */ }; @@ -438,7 +441,7 @@ extern int drvmgr_keys_get(struct drvmgr_dev *dev, struct drvmgr_key **keys); /*! Return the one key that matches key name from a driver keys array. The keys * can be obtained using drvmgr_keys_get(). * - * \param keys An array of keys ended with KEY_EMPTY to search among. + * \param keys An array of keys ended with DRVMGR_KEY_EMPTY to search among. * \param key_name Name of key to search for among the keys. */ extern struct drvmgr_key *drvmgr_key_get(struct drvmgr_key *keys, char *key_name); @@ -449,7 +452,7 @@ extern struct drvmgr_key *drvmgr_key_get(struct drvmgr_key *keys, char *key_name * name), then determines if the type is correct. A pointer to the key value * is returned. * - * \param keys An array of keys ended with KEY_EMPTY to search among. + * \param keys An array of keys ended with DRVMGR_KEY_EMPTY to search among. * \param key_name Name of key to search for among the keys. * \param key_type Data Type of value. INTEGER, ADDRESS, STRING. * \return Returns NULL if no value found matching Key Name and Key @@ -458,7 +461,7 @@ extern struct drvmgr_key *drvmgr_key_get(struct drvmgr_key *keys, char *key_name extern union drvmgr_key_value *drvmgr_key_val_get( struct drvmgr_key *keys, char *key_name, - int key_type); + enum drvmgr_kt key_type); /*! Get key value from the bus resources matching [device, key name, key type] * if no matching key is found NULL is returned. @@ -475,7 +478,7 @@ extern union drvmgr_key_value *drvmgr_key_val_get( extern union drvmgr_key_value *drvmgr_dev_key_get( struct drvmgr_dev *dev, char *key_name, - int key_type); + enum drvmgr_kt key_type); /*** DRIVER INTERACE USED TO REQUEST INFORMATION/SERVICES FROM BUS DRIVER ***/ diff --git a/cpukit/libdrvmgr/drvmgr_print.c b/cpukit/libdrvmgr/drvmgr_print.c index 9330867fe4..aecf41c641 100644 --- a/cpukit/libdrvmgr/drvmgr_print.c +++ b/cpukit/libdrvmgr/drvmgr_print.c @@ -135,7 +135,7 @@ void drvmgr_print_mem(void) resmem += sizeof(struct drvmgr_drv_res); key = res->keys; - while (key->key_type != KEY_TYPE_NONE) { + while (key->key_type != DRVMGR_KT_NONE) { resmem += sizeof (struct drvmgr_key); key++; diff --git a/cpukit/libdrvmgr/drvmgr_res.c b/cpukit/libdrvmgr/drvmgr_res.c index 5faa61e58e..0322a9897a 100644 --- a/cpukit/libdrvmgr/drvmgr_res.c +++ b/cpukit/libdrvmgr/drvmgr_res.c @@ -61,7 +61,7 @@ struct drvmgr_key *drvmgr_key_get( return NULL; key = keys; - while (key->key_type != KEY_TYPE_NONE) { + while (key->key_type != DRVMGR_KT_NONE) { if (strcmp(key_name, key->key_name) == 0) return key; key++; @@ -72,14 +72,15 @@ struct drvmgr_key *drvmgr_key_get( union drvmgr_key_value *drvmgr_key_val_get( struct drvmgr_key *keys, char *key_name, - int key_type) + enum drvmgr_kt key_type) { struct drvmgr_key *key_match; key_match = drvmgr_key_get(keys, key_name); if (key_match) { /* Found key, put pointer to value into */ - if ((key_type == -1) || (key_match->key_type == key_type)) + if ((key_type == DRVMGR_KT_ANY) || + (key_match->key_type == key_type)) return &key_match->key_value; } return NULL; @@ -88,7 +89,7 @@ union drvmgr_key_value *drvmgr_key_val_get( union drvmgr_key_value *drvmgr_dev_key_get( struct drvmgr_dev *dev, char *key_name, - int key_type) + enum drvmgr_kt key_type) { struct drvmgr_key *keys = NULL; -- cgit v1.2.3