Changeset 2065

Show
Ignore:
Timestamp:
11/17/03 04:04:09 (10 years ago)
Author:
mds
Message:

use common function to print out available i2c busses;

add sysfs support to that function

Location:
lm-sensors/trunk/prog
Files:
1 added
5 modified

Legend:

Unmodified
Added
Removed
  • lm-sensors/trunk/prog/detect/Module.mk

    r1866 r2065  
    3636user :: all-prog-detect 
    3737 
     38$(MODULE_DIR)/i2cdetect: $(MODULE_DIR)/i2cdetect.ro prog/dump/i2cbusses.ro 
     39        $(CC) -o $@ $^ 
     40 
    3841install-prog-detect: all-prog-detect 
    3942        mkdir -p $(DESTDIR)$(SBINDIR) 
  • lm-sensors/trunk/prog/detect/i2cdetect.c

    r1705 r2065  
    2727#include <fcntl.h> 
    2828#include "i2c-dev.h" 
     29#include "version.h" 
     30 
     31void print_i2c_busses(); 
    2932 
    3033void help(void) 
    3134{ 
    32   FILE *fptr; 
    33   char s[100]; 
    34  
    35   fprintf(stderr,"Syntax: i2cdetect I2CBUS\n"); 
    36   fprintf(stderr,"  I2CBUS is an integer\n"); 
    37   if((fptr = fopen("/proc/bus/i2c", "r"))) { 
    38     fprintf(stderr,"  Installed I2C busses:\n"); 
    39     while(fgets(s, 100, fptr)) 
    40       fprintf(stderr, "    %s", s);      
    41     fclose(fptr); 
    42   } 
     35        fprintf(stderr,"Syntax: i2cdetect I2CBUS\n"); 
     36        fprintf(stderr,"  I2CBUS is an integer\n"); 
     37        print_i2c_busses(); 
    4338} 
    4439 
     
    5853    fprintf(stderr,"Error: No i2c-bus specified!\n"); 
    5954    help(); 
     55    exit(1); 
     56  } 
     57 
     58  if((!strcmp(argv[1], "-v")) || (!strcmp(argv[1], "-V"))) { 
     59    fprintf(stderr,"i2cdetect version %s\n", LM_VERSION); 
    6060    exit(1); 
    6161  } 
  • lm-sensors/trunk/prog/dump/Module.mk

    r1822 r2065  
    2525# defined value verbatim into the command-list of rules... 
    2626PROGDUMPTARGETS := $(MODULE_DIR)/isadump $(MODULE_DIR)/i2cdump \ 
    27                    $(MODULE_DIR)/i2cset 
     27                   $(MODULE_DIR)/i2cset $(MODULE_DIR)/isaset 
    2828PROGDUMPSOURCES := $(MODULE_DIR)/isadump.c  $(MODULE_DIR)/i2cdump.c \ 
    29                    $(MODULE_DIR)/i2cset.c 
     29                   $(MODULE_DIR)/i2cset.c $(MODULE_DIR)/isaset.c \ 
     30                   $(MODULE_DIR)/i2cbusses.c 
    3031PROGDUMPBININSTALL := $(MODULE_DIR)/isadump $(MODULE_DIR)/i2cdump \ 
    31                    $(MODULE_DIR)/i2cset 
     32                   $(MODULE_DIR)/i2cset $(MODULE_DIR)/isaset 
    3233 
    3334# Include all dependency files. We use '.rd' to indicate this will create 
     
    3738all-prog-dump: $(PROGDUMPTARGETS) 
    3839user :: all-prog-dump 
     40 
     41$(MODULE_DIR)/i2cdump: $(MODULE_DIR)/i2cdump.ro $(MODULE_DIR)/i2cbusses.ro 
     42        $(CC) -o $@ $^ 
     43 
     44$(MODULE_DIR)/i2cset: $(MODULE_DIR)/i2cset.ro $(MODULE_DIR)/i2cbusses.ro 
     45        $(CC) -o $@ $^ 
    3946 
    4047install-prog-dump: all-prog-dump 
  • lm-sensors/trunk/prog/dump/i2cdump.c

    r1791 r2065  
    11/* 
    22    i2cdump.c - Part of i2cdump, a user-space program to dump I2C registers 
    3     Copyright (c) 2002  Frodo Looijaard <frodol@dds.nl>, and 
     3    Copyright (c) 2002-2003  Frodo Looijaard <frodol@dds.nl>, and 
    44    Mark D. Studebaker <mdsxyz123@yahoo.com> 
    55 
     
    2626#include <fcntl.h> 
    2727#include "i2c-dev.h" 
     28#include "version.h" 
    2829 
    2930/* 
     
    4243#endif 
    4344 
     45void print_i2c_busses(); 
     46 
    4447void help(void) 
    4548{ 
    46   FILE *fptr; 
    47   char s[100]; 
    48  
    4949  fprintf(stderr,"Syntax: i2cdump I2CBUS ADDRESS [MODE] [BANK [BANKREG]]\n"); 
    5050  fprintf(stderr,"  MODE is 'b[yte]', 'w[ord]', 's[mbusblock], or 'i[2cblock]' (default b)\n"); 
     
    5454  fprintf(stderr,"  BANK and BANKREG are for byte and word accesses (default bank 0, reg 0x4e)\n"); 
    5555  fprintf(stderr,"  BANK is the command for smbusblock accesses (default 0)\n"); 
    56   if((fptr = fopen("/proc/bus/i2c", "r"))) { 
    57     fprintf(stderr,"  Installed I2C busses:\n"); 
    58     while(fgets(s, 100, fptr)) 
    59       fprintf(stderr, "    %s", s);      
    60     fclose(fptr); 
    61   } 
     56  print_i2c_busses(); 
    6257} 
    6358 
     
    8075    fprintf(stderr,"Error: No i2c-bus specified!\n"); 
    8176    help(); 
     77    exit(1); 
     78  } 
     79 
     80  if((!strcmp(argv[1], "-v")) || (!strcmp(argv[1], "-V"))) { 
     81    fprintf(stderr,"i2cdump version %s\n", LM_VERSION); 
    8282    exit(1); 
    8383  } 
  • lm-sensors/trunk/prog/dump/i2cset.c

    r1790 r2065  
    11/* 
    22    i2cset.c - A user-space program to write an I2C register. 
    3     Copyright (c) 2001  Frodo Looijaard <frodol@dds.nl>, and 
     3    Copyright (c) 2001-2003  Frodo Looijaard <frodol@dds.nl>, and 
    44    Mark D. Studebaker <mdsxyz123@yahoo.com> 
    55 
     
    2626#include <fcntl.h> 
    2727#include "i2c-dev.h" 
    28  
     28#include "version.h" 
     29 
     30void print_i2c_busses(); 
    2931void help(void) __attribute__ ((noreturn)); 
    3032 
    3133void help(void) 
    3234{ 
    33   FILE *fptr; 
    34   char s[100]; 
    35  
    3635  fprintf(stderr,"Syntax: i2cset I2CBUS CHIP-ADDRESS DATA-ADDRESS VALUE [MODE]\n"); 
    3736  fprintf(stderr,"  MODE is 'b[yte]' or 'w[ord]' (default b)\n"); 
    3837  fprintf(stderr,"  I2CBUS is an integer\n"); 
    39   if((fptr = fopen("/proc/bus/i2c", "r"))) { 
    40     fprintf(stderr,"  Installed I2C busses:\n"); 
    41     while(fgets(s, 100, fptr)) 
    42       fprintf(stderr, "    %s", s);      
    43     fclose(fptr); 
    44   } 
     38  print_i2c_busses(); 
    4539  exit(1); 
    4640} 
     
    5751  char *filename; 
    5852  long funcs; 
     53 
     54  if(argc >= 2 && ((!strcmp(argv[1], "-v")) || (!strcmp(argv[1], "-V")))) { 
     55    fprintf(stderr,"i2cset version %s\n", LM_VERSION); 
     56    exit(1); 
     57  } 
    5958 
    6059  if (argc < 5)