diff --git a/server/drivers/CFontzPacket.c b/server/drivers/CFontzPacket.c index 8bfe7fc..797822b 100644 --- a/server/drivers/CFontzPacket.c +++ b/server/drivers/CFontzPacket.c @@ -149,6 +149,8 @@ typedef struct driver_private_data { int brightness; int offbrightness; unsigned int LEDstate; + + char info[255]; } PrivateData; @@ -1540,3 +1542,18 @@ CFontzPacket_output(Driver *drvthis, int state) p->LEDstate = state; } + +/* + * Provide some info about this driver + */ +MODULE_EXPORT char * +CFontzPacket_get_info(Driver *drvthis) +{ + PrivateData *p = drvthis->private_data; + + snprintf(p->info, sizeof(p->info)-1, "CrystalFontz Driver: CFA-%d", + p->model); + return p->info; +} + +/* EOF */ diff --git a/server/drivers/CFontzPacket.h b/server/drivers/CFontzPacket.h index 148d8bc..363cdd3 100644 --- a/server/drivers/CFontzPacket.h +++ b/server/drivers/CFontzPacket.h @@ -44,5 +44,6 @@ MODULE_EXPORT int CFontzPacket_get_brightness (Driver *drvthis, int state); MODULE_EXPORT void CFontzPacket_set_brightness (Driver *drvthis, int state, int promille); MODULE_EXPORT void CFontzPacket_backlight (Driver *drvthis, int on); MODULE_EXPORT void CFontzPacket_output (Driver *drvthis, int state); +MODULE_EXPORT char *CFontzPacket_get_info (Driver *drvthis); #endif /* CFONTZPACKET_H */ diff --git a/server/drivers/IOWarrior.c b/server/drivers/IOWarrior.c index 22a633d..dea4b82 100644 --- a/server/drivers/IOWarrior.c +++ b/server/drivers/IOWarrior.c @@ -1227,4 +1227,17 @@ IOWarrior_output(Driver *drvthis, int on) } +/********************************************************************* + * API: provides some info about this driver + */ +MODULE_EXPORT char * +IOWarrior_get_info (Driver *drvthis) +{ + PrivateData *p = drvthis->private_data; + + snprintf(p->info, sizeof(p->info)-1, "IOWarrior Driver: %s %s (0x%0x) S/N: %s", + p->manufacturer, p->product, p->productID, p->serial); + return p->info; +} + /* EOF */ diff --git a/server/drivers/IOWarrior.h b/server/drivers/IOWarrior.h index aefd0f7..adf5da2 100644 --- a/server/drivers/IOWarrior.h +++ b/server/drivers/IOWarrior.h @@ -105,6 +105,8 @@ typedef struct driver_private_data { int brightness; int backlight; + + char info[255]; } PrivateData; @@ -130,6 +132,7 @@ MODULE_EXPORT void IOWarrior_num(Driver *drvthis, int x, int num); MODULE_EXPORT void IOWarrior_set_char(Driver *drvthis, int n, char *dat); MODULE_EXPORT int IOWarrior_icon(Driver *drvthis, int x, int y, int icon); MODULE_EXPORT void IOWarrior_output(Driver *drvthis, int on); +MODULE_EXPORT char *IOWarrior_get_info(Driver *drvthis); #endif /* IOWARRIOR_H */