diff options
Diffstat (limited to 'cpu/mpc824x/drivers/i2c/README')
-rw-r--r-- | cpu/mpc824x/drivers/i2c/README | 104 |
1 files changed, 0 insertions, 104 deletions
diff --git a/cpu/mpc824x/drivers/i2c/README b/cpu/mpc824x/drivers/i2c/README deleted file mode 100644 index 1db72108ca..0000000000 --- a/cpu/mpc824x/drivers/i2c/README +++ /dev/null @@ -1,104 +0,0 @@ -CONTENT: - - i2c.h - i2c1.c - i2c2.s - -WHAT ARE THESE FILES: - -These files contain MPC8240 (Kahlua) I2C -driver routines. The driver routines are not -written for any specific operating system. -They serves the purpose of code sample, and -jump-start for using the MPC8240 I2C unit. - -For the reason of correctness of C language -syntax, these files are compiled by Metaware -C compiler and assembler. - -ENDIAN NOTATION: - -The algorithm is designed for big-endian mode, -software is responsible for byte swapping. - -USAGE: - -1. The host system that is running on MPC8240 - shall link the files listed here. The memory - location of driver routines shall take into - account of that driver routines need to run - in supervisor mode and they process I2C - interrupt. - -2. The host system is responsible for configuring - the MPC8240 including Embedded Utilities Memory - Block. All I2C driver functions require the - content of Embedded Utilities Memory Block - Base Address Register, EUMBBAR, as the first - parameter. - -3. Before I2C unit of MPC8240 can be used, - initialize I2C unit by calling I2C_Init - with the corresponding parameters. - - Note that the I2CFDR register shall be written - once during the initialization. If it is written - in the midst of transers, or after I2C STOPs or - REPEAT STATRs, depending on the data written, - a long reset time may be encountered. - -4. After I2C unit has been successfully initialized, - use the Application level API to send data or - receive data upon the desired mode, Master or - Slave. - -5. If the host system is also using the EPIC unit - on MPC8240, the system can register the - I2C_ISR with the EPIC including other - desired resources. - - If the host system does not using the EPIC unit - on MPC8240, I2C_Timer_Event function can - be called for each desired time interval. - - In both cases, the host system is free to provide - its own timer event handler and interrupt service - routine. - -6. The I2C driver routines contains a set - of utilities, Set and Get, for host system - to query and modify the desired I2C registers. - -7. It is the host system's responsibility of - queueing the I2C I/O request. The host - system shall check the I2C_ISR return code - for I2C I/O status. If I2C_ISR returns - I2CBUFFEMPTY or I2CBUFFFULL, it means - I2C unit has completed a I/O request - stated by the Application API. - -8. If the host system has more than one master - mode I2C unit I/O requests but doesn't want - to be intervented by being addressed as slave, - the host system can use the master mode - Application API with stop_flag set to 0 in - conjunction with is_cnt flag set to 1. - The first API call sets both stop_flag and - is_cnt to 0, indicating a START condition - shall be generated but when the end of - transaction is reached, do not generate a - STOP condition. Once the host system is - informed that the transaction has been - completed, the next Application API call - shall set is_cnt flag to 1, indicating a - repeated START condition shall be generated. - The last Application API call shall set - stop_flag - to 1. - -9. The I2C_Timer_Event function containes - a user defined function pointer. It - serves the purpose of providing the - host system a way to use its own event - handler instead of the I2C_ISR provided - here. |