Changeset 3787

Show
Ignore:
Timestamp:
05/30/03 03:46:08 (12 years ago)
Author:
mds
Message:

Manual reverse merge from HEAD (2.5) to lk2-4 branch in preparation

for release of lk2-4 branch

Location:
i2c/branches/lk2-4
Files:
5 modified

Legend:

Unmodified
Added
Removed
  • i2c/branches/lk2-4/CHANGES

    r3744 r3787  
    1818----------------------------------------------------------------------------- 
    1919 
    20 2.7.1 (2003????) 
     202.8.0 (2003????) 
    2121  drivers (several): make spinlock_t's static 
    2222  i2c-algo-biths.[ch]: Rewrite of i2c-algo-bit with improved bus timing and 
    2323           error handling. This is not a drop-in replacement for i2c-algo-bit. 
    2424           Interface subject to change. 
    25   i2c-id.h: ID for i2c-algo-biths, W83627HF 
     25  i2c-id.h: add IDs for i2c-algo-biths, W83627HF, LM85, nForce2, OMAHA, GUIDE, 
     26            MPC107, IXP2000, IXP425, IOP3XX, UDA1342 
     27  i2c-proc.c: Fix ignore and probe tests 
    2628  i2c.h: Add fields for detailed delivery report in i2c_msg. 
    2729 
  • i2c/branches/lk2-4/doc/i2c-pport

    r3567 r3787  
    1 Primitive parallel port is driver for i2c bus, which exploits  
     1Parallel Port Adapters 
     2---------------------- 
     3If you are installing parallel port adapters it means you are probably messing  
     4around with wires and IC's and the like. If you have purchased a card that  
     5provides an external i2c/smbus this will require combined algorithm and  
     6adapter code in a single module. 
     7If you are doing it yourself by using the parallel port there  
     8are basically 2 options. 
     9 
     101) Using the parallel port and using the i2c-pport adapter module and the  
     11i2c-algo-bit algorithm module together to enable you to wire up your parallel  
     12port to act as an i2c/smbus. This provides a bus that will enable most  
     13sensors to work but doesn't support the entire i2c/smbus capability. 
     14 
     152) Using the parallel port to interface to a Philips PCF8584 parallel to i2c  
     16adapter chip. You will need to build a bit of a circuit to do this. This  
     17configuration needs the i2c-pcf-epp adapter module and the i2c-algo-pcf  
     18algorithm module. This support almost all of the i2c/smbus capabilities. 
     19 
     20 
     21i2c-pport Documentation 
     22----------------------- 
     23This is a primitive parallel port driver for the i2c bus, which exploits  
    224features of modern bidirectional parallel ports.  
    325 
  • i2c/branches/lk2-4/doc/smbus-protocol

    r3693 r3787  
    144144 
    145145S Addr Wr [A] Comm [A] Count [A] Data [A] ... 
    146                              S Addr Rd [A] [Count] A [Data] ... A P 
     146                             S Addr Rd [A] [Count] A [Data] ... NA P 
    147147 
    148148 
  • i2c/branches/lk2-4/kernel/i2c-id.h

    r3766 r3787  
    9999#define I2C_DRIVERID_24LC32A    51      /* Microchip 24LC32A 32k EEPROM */ 
    100100#define I2C_DRIVERID_STM41T00   52      /* real time clock              */ 
     101#define I2C_DRIVERID_UDA1342    53      /* UDA1342 audio codec          */ 
    101102 
    102103 
     
    151152#define I2C_DRIVERID_FS451 1037 
    152153#define I2C_DRIVERID_W83627HF 1038 
     154#define I2C_DRIVERID_LM85 1039 
    153155 
    154156/* 
     
    172174#define I2C_ALGO_IPMI   0x0b0000        /* IPMI dummy adapter */ 
    173175#define I2C_ALGO_IPMB   0x0c0000        /* IPMB adapter */ 
     176#define I2C_ALGO_MPC107 0x0d0000 
    174177#define I2C_ALGO_EC     0x100000        /* ACPI embedded controller     */ 
    175178 
     
    177180#define I2C_ALGO_OCP    0x120000        /* IBM or otherwise On-chip I2C algorithm */ 
    178181#define I2C_ALGO_BITHS  0x130000        /* enhanced bit style adapters  */ 
     182#define I2C_ALGO_OCP_IOP3XX  0x140000   /* XSCALE IOP3XX On-chip I2C alg */ 
    179183 
    180184#define I2C_ALGO_EXP    0x800000        /* experimental                 */ 
     
    210214#define I2C_HW_B_TSUNA  0x12    /* DEC Tsunami chipset                  */ 
    211215#define I2C_HW_B_FRODO  0x13    /* 2d3D, Inc. SA-1110 Development Board */ 
     216#define I2C_HW_B_OMAHA  0x14    /* Omaha I2C interface (ARM)            */ 
     217#define I2C_HW_B_GUIDE  0x15    /* Guide bit-basher                     */ 
     218#define I2C_HW_B_IXP2000 0x16   /* GPIO on IXP2000 systems              */ 
     219#define I2C_HW_B_IXP425 0x17    /* GPIO on IXP425 systems               */ 
    212220 
    213221/* --- PCF 8584 based algorithms                                        */ 
     
    231239#define I2C_HW_OCP 0x00 /* IBM on-chip I2C adapter      */ 
    232240 
     241/* --- XSCALE on-chip adapters                          */ 
     242#define I2C_HW_IOP321 0x00 
    233243 
    234244/* --- SMBus only adapters                                              */ 
     
    245255#define I2C_HW_SMBUS_AMD8111    0x0a 
    246256#define I2C_HW_SMBUS_SCX200     0x0b 
     257#define I2C_HW_SMBUS_NFORCE2    0x0c 
    247258 
    248259/* --- ISA pseudo-adapter                                               */ 
     
    255266#define I2C_HW_IPMB 0x00 
    256267 
     268/* --- MCP107 adapter */ 
     269#define I2C_HW_MPC107 0x00 
     270 
    257271#endif /* LINUX_I2C_ID_H */ 
  • i2c/branches/lk2-4/kernel/i2c-proc.c

    r3782 r3787  
    657657                             ((address_data-> 
    658658                               ignore_range[i] == 
    659                                SENSORS_ANY_I2C_BUS) & !is_isa)) 
     659                               SENSORS_ANY_I2C_BUS) && !is_isa)) 
    660660                            && (addr >= address_data->ignore_range[i + 1]) 
    661661                            && (addr <= address_data->ignore_range[i + 2])) { 
     
    746746                        if (((adapter_id == address_data->probe[i]) || 
    747747                             ((address_data-> 
    748                                probe[i] == SENSORS_ANY_I2C_BUS) & !is_isa)) 
     748                               probe[i] == SENSORS_ANY_I2C_BUS) && !is_isa)) 
    749749                            && (addr == address_data->probe[i + 1])) { 
    750750#ifdef DEBUG 
     
    763763                             || 
    764764                             ((address_data->probe_range[i] == 
    765                                SENSORS_ANY_I2C_BUS) & !is_isa)) 
     765                               SENSORS_ANY_I2C_BUS) && !is_isa)) 
    766766                            && (addr >= address_data->probe_range[i + 1]) 
    767767                            && (addr <= address_data->probe_range[i + 2])) {