| 1 | M7101 - SMBus Support for ALi M15x3 based motherboards. |
|---|
| 2 | |
|---|
| 3 | -------------------------------------------------------- |
|---|
| 4 | Quick Start (2.4 kernels only): |
|---|
| 5 | |
|---|
| 6 | Verify that hotplug is enabled in your kernel (general setup) |
|---|
| 7 | and reconfigure/rebuild/reinstall kernel if not |
|---|
| 8 | "lspci" to verify that 7101 device is not present |
|---|
| 9 | "make" |
|---|
| 10 | (as root) "make install" |
|---|
| 11 | (as root) "insmod m7101" |
|---|
| 12 | "lspci" to verify that 7101 device is present |
|---|
| 13 | |
|---|
| 14 | -------------------------------------------------------- |
|---|
| 15 | -------------------------------------------------------- |
|---|
| 16 | |
|---|
| 17 | Version 0.2 for 2.4.0-testx kernels. |
|---|
| 18 | Mark D. Studebaker <mdsxyz123@yahoo.com> |
|---|
| 19 | |
|---|
| 20 | *** You must have 'Support for hot-pluggable devices' enabled |
|---|
| 21 | *** in your kernel (under 'general setup') for this module to work!! |
|---|
| 22 | |
|---|
| 23 | For 2.2 and early 2.3 kernels you must use version 0.1; |
|---|
| 24 | version 0.2 will not work. |
|---|
| 25 | Version 0.1 does not use the kernel hotplug facility. |
|---|
| 26 | Obtain version 0.1 here: |
|---|
| 27 | |
|---|
| 28 | README: http://www.netroedge.com/~lm78/misc/README-m7101.txt |
|---|
| 29 | source and README: http://www.netroedge.com/~lm78/misc/m7101-0.1.tar.gz |
|---|
| 30 | |
|---|
| 31 | |
|---|
| 32 | |
|---|
| 33 | -------------------------------------------------------- |
|---|
| 34 | Notes below for the 0.2 version, MDS. |
|---|
| 35 | -------------------------------------------------------- |
|---|
| 36 | Default I/O addresses are 0xe800 for SMBus and 0xec00 for ACPI. |
|---|
| 37 | |
|---|
| 38 | These can be changed at module insertion. |
|---|
| 39 | For example: |
|---|
| 40 | insmod m7101 smb_io=0x5000 acpi_io=0x4000 |
|---|
| 41 | |
|---|
| 42 | |
|---|
| 43 | -------------------------------------------------------- |
|---|
| 44 | Notes below from the 0.1 version, B. Kohl. |
|---|
| 45 | -------------------------------------------------------- |
|---|
| 46 | |
|---|
| 47 | This module was written to enable SMBus support on ALi M15x3 chipset based |
|---|
| 48 | motherboards. Although it was written for and tested on Gigabytes GA-5AX |
|---|
| 49 | it should work on any M15x3 chipset based board. |
|---|
| 50 | |
|---|
| 51 | Probably most people trying this software on a GA-5AX will be utterly |
|---|
| 52 | disappointed. We have seen no sensor chips on this board - only DIMMs |
|---|
| 53 | were connected to the SMBus. If you are trying to make lm_sensors read |
|---|
| 54 | temperature and voltage values you will be pretty lost. |
|---|
| 55 | |
|---|
| 56 | CAVEAT: To perform it's task this module needs to manipulate PCI-config |
|---|
| 57 | data and device structures on a very low level. This bears the risk of |
|---|
| 58 | causing havoc to your system in case anything goes wrong. Use this soft- |
|---|
| 59 | ware absolutely at your own risk. |
|---|
| 60 | |
|---|
| 61 | |
|---|
| 62 | Installation: |
|---|
| 63 | Untar the m7101.tgz file into an appropriate location and cd into the |
|---|
| 64 | m7101 subdirectory. Then type "make" to build the module file 'm7101.o'. |
|---|
| 65 | To insert it type |
|---|
| 66 | $ insmod m7101.o |
|---|
| 67 | as root. |
|---|
| 68 | |
|---|
| 69 | If everything goes well (no error messages) you will see a description like |
|---|
| 70 | the following when doing 'lspci -v': |
|---|
| 71 | |
|---|
| 72 | 00:03.0 Non-VGA unclassified device: Acer Laboratories Inc. [ALi] M7101 PMU |
|---|
| 73 | Flags: medium devsel |
|---|
| 74 | I/O ports at 4000 |
|---|
| 75 | I/O ports at 5000 |
|---|
| 76 | |
|---|
| 77 | and find an entry in the proc filesystem under /proc/bus/pci/00/03.0. |
|---|
| 78 | |
|---|
| 79 | |
|---|
| 80 | Removing the module removes the M7101 device from the proc file system |
|---|
| 81 | and switches the SMBus support off. |
|---|
| 82 | |
|---|
| 83 | The lm_sensors software now should be able to access devices on the |
|---|
| 84 | motherboard's SMBus through the M7101. |
|---|
| 85 | |
|---|
| 86 | Values for the ACPI-IO port (normally 0x4000) and the SMBus-IO port |
|---|
| 87 | (normally 0x5000) can be specified using the parameters acpi_io and |
|---|
| 88 | smbus_io respectively on the insmod command line. |
|---|
| 89 | The module defaults to ports 0xec00 and 0xe800. |
|---|
| 90 | |
|---|
| 91 | In case the module does not load you might want to switch on debugging |
|---|
| 92 | by uncommenting the second CFLAGS-line (with the -DM7101_DEBUG switch) |
|---|
| 93 | in the Makefile. |
|---|
| 94 | |
|---|
| 95 | This module was written to activate SMBus support. I don't know neither |
|---|
| 96 | have I tested wether it works with the software from the ACPI project. |
|---|
| 97 | |
|---|
| 98 | Note: Egcs compilers with versions below 2.95.2 do not compile properly. |
|---|
| 99 | Use either 2.95.2 or gcc 2.7.2.x. |
|---|
| 100 | |
|---|
| 101 | I have tested this module with 2.2 kernels up to version 2.2.14. |
|---|
| 102 | |
|---|
| 103 | |
|---|
| 104 | I wish to thank Frank Bauer for his help with this module. |
|---|
| 105 | |
|---|
| 106 | Burkhard Kohl (burkhard.kohl@gmx.de) |
|---|