Support for Hydra i2c
Geert Uytterhoeven
Geert.Uytterhoeven at cs.kuleuven.ac.be
Fri Apr 30 19:42:34 EST 1999
On Wed, 28 Apr 1999, Frodo Looijaard wrote:
> Geert Uytterhoeven wrote:
> > The attached patch adds support for the i2c interface on the Apple `Hydra' Mac
> > I/O, found on CHRP PPC motherboards. The patch is relative to the anon CVS
> > version of yesterday evening.
>
> Congratulations! You are the first to add support for a non-Intel
> architecture. I am very excited by your contribution! To be honest, I did
> not even know the PPC architecture had an I2C interface. Very nice indeed!
>
> I will merge your code in later today, and if necessary I will send you some
> feedback on it. You may want CVS write access; it will make maintaining
You seem to have missed these:
Index: doc/modules
===================================================================
RCS file: /home/cvs/lm_sensors2/doc/modules,v
retrieving revision 1.11
diff -u -r1.11 modules
--- doc/modules 1999/04/22 13:06:24 1.11
+++ doc/modules 1999/04/30 09:36:58
@@ -67,6 +67,9 @@
SMBus emulation on i2c busses. Base algorithm, on which SMBus-only adapters
rely.
+(src/busses) i2c-hydra: algo-bit i2c-core
+ Apple Hydra Mac I/O bus access on CHRP motherboards.
+
(src/busses) i2c-isa: i2c-core
Defines the ISA bus as being a I2C adapter. It isn't, of course; but this is
often used by sensor client modules, to keep the code small and simple.
Index: prog/dump/isadump.c
===================================================================
RCS file: /home/cvs/lm_sensors2/prog/dump/isadump.c,v
retrieving revision 1.3
diff -u -r1.3 isadump.c
--- prog/dump/isadump.c 1999/04/28 18:18:12 1.3
+++ prog/dump/isadump.c 1999/04/30 09:36:59
@@ -99,7 +99,7 @@
sleep(5);
#ifndef __powerpc__
- if ((datareg < 0x400) && (datareg < 0x400)) {
+ if ((datareg < 0x400) && (addrreg < 0x400)) {
if(ioperm(datareg,1,1)) {
fprintf(stderr,"Error: Could not ioperm() data register!\n");
exit(1);
The last one is a typo, I assume. BTW, the ISA stuff doesn't work anyway,
because on PPC the macros inb() and outb() rely on isa_io_base pointed to the
mmap()ed ISA IO space. But I don't think that matters much: this was the `quick
fix', just removing isadump from the compile list on PPC seemed to be more
difficult :-)
A datasheet for the Hydra used to be available on the web, cfr.
include/asm-ppc/hydra.h:
* This file is based on the following documentation:
*
* Macintosh Technology in the Common Hardware Reference Platform
* Apple Computer, Inc.
*
* © Copyright 1995 Apple Computer, Inc. All rights reserved.
*
* It's available online from http://chrp.apple.com/MacTech.pdf.
* You can obtain paper copies of this book from computer bookstores or by
* writing Morgan Kaufmann Publishers, Inc., 340 Pine Street, Sixth Floor, San
* Francisco, CA 94104. Reference ISBN 1-55860-393-X.
but Apple removed the DNS A record for chrp.apple.com :-( Fortunately I still
have the doc on CD.
BTW, doc/busses/i2c-hydra and kernel/busses/i2c-hydra.c contain carriage
returns now.
Greetings,
Geert
--
Geert Uytterhoeven Geert.Uytterhoeven at cs.kuleuven.ac.be
Wavelets, Linux/{m68k~Amiga,PPC~CHRP} http://www.cs.kuleuven.ac.be/~geert/
Department of Computer Science -- Katholieke Universiteit Leuven -- Belgium
[[ This message was sent via the linuxppc-dev mailing list. Replies are ]]
[[ not forced back to the list, so be sure to Cc linuxppc-dev if your ]]
[[ reply is of general interest. Please check http://lists.linuxppc.org/ ]]
[[ and http://www.linuxppc.org/ for useful information before posting. ]]
More information about the Linuxppc-dev
mailing list