From: Christer Weinigel <wingel@nano-system.com>
To: roy@karlsbakk.net
Cc: linux-kernel@vger.kernel.org
Subject: Re: SC1200 support?
Date: Thu, 21 Feb 2002 01:02:02 +0100 (CET) [thread overview]
Message-ID: <20020221000202.363E6F5B@acolyte.hack.org> (raw)
In-Reply-To: <Pine.LNX.4.30.0202201423001.22702-100000@mustard.heime.net>
Roy Sigurd Karlsbakk wrote:
>I have this set-top box with a National Semiconductor Geode SC1200 chip
>with a built-in watch-dog plus a lot more.
>
>Does anyone know if there is any support for the sc1200-specific features
>in the current kernels, or if there are patches available?
Darn, I've been meaning to clean these patches up for a month or so,
but I haven't had the time yet. I've made a snapshot of my CVS tree
that you can find at:
http://www.nano-system.com/scx200/
These patches are for a box called the Nano Computer, a SC2200 based
system that I've been involved in the design of. I've written drivers
for the Watchdog, an I2C bus, a MTD map driver and a few small fixes
and workarounds. These drivers ought to work across the whole SCx200
line of processors.
First of all, the current snapshot is based upon Linux-2.4.17 + Keith
Owens kbuild-2.5 system. To get something that you can use, download,
unpack and patch all the neccesary stuff:
tar xvfz scx200-20020219.tar.gz
cd nano/kernel
tar xvfz linux-2.4.17.tar.gz
cd linux
bzcat kbuild-2.5-2.4.16-3.bz2 | patch -p1
bzcat kbuild-2.5-2.4.17-1.bz2 | patch -p1
Then, to build a kernel use nano/kernel/build.sh which is just a shell
script that wraps the kbuild stuff:
cd nano/kernel
./build.sh config
./build.sh
And, now for the drivers.
nano/kernel/arch/i386/kernel/scx200.c -- probes for a SCx200 CPU
and allocates some resources, and code to control the GPIO pins
nano/kernel/arch/i386/kernel/scx200_nano.c -- board specific setup
for the Nano Computer, it mostly sets up a few things that the
BIOS hasn't set up the way I want them to be
nano/kernel/nano/init/main.c -- has been modified to call
scx200_init and scx200_nano_init
nano/kernel/nano/drivers/char/scx200_watchdog.c -- a driver for
the built in watchdog of a SCx200 CPU
nano/kernel/nano/drivers/i2c/scx200_i2c.c -- a driver for an I2C
bus using two GPIO pins
nano/kernel/nano/drivers/mtd/maps/scx200_docflash.c -- a driver
for using Intel Strataflash mapped via the DOCCS pin
nano/kernel/nano/drivers/ide/* -- I've modified the CS5530 IDE
driver to recognize the SCx200 IDE controller. WARNING! I'm not
sure if this is a safe thing to do, the specifications for the
CS5530 and the SCx200 look quite similar, but I might have missed
something. Remove this directory to be on the safe side.
nano/kernel/nano/drivers/net/natsemi.c -- contains some debugging
code and a fix to turn off wake-on-lan since it caused an
interrupt storm if I did ifconfig eth0 down. I belive this has
been fixed in newer versions of the natsemi driver.
nano/kernel/nano/include/linux/pci_ids.h -- updated with PCI IDs
for the SCx200 CPUs.
nano/kernel/nano/include/linux/scx200.h -- header file for the
scx200.c functions.
nano/kernel/sensors/* -- is just a copy of the lm75 and eeprom
drivers from lm_sensors (the board I'm using have a serial eeprom
and two temperature sensors)
It should be trivial to move these drivers to a newer Linux kernel and
to work without the kbuild stuff.
Any questions, suggestions or flames regarding the drivers are
welcome. I'd be especially happy if someone can take a look at the
GPIO functions in scx200.h and tell me if they look ok. I think I've
managed to build an interrupt safe way of touching the I/O ports, but
I might have missed something.
Hm, I'd better put this mail up as a README.txt at the same place.
/Christer
next prev parent reply other threads:[~2002-02-21 0:02 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-02-20 13:32 SC1200 support? Roy Sigurd Karlsbakk
2002-02-20 15:14 ` Alan Cox
2002-02-21 5:54 ` [DRIVER][RFC] SC1200 Watchdog driver Zwane Mwaikambo
2002-02-21 9:39 ` Jeff Garzik
2002-02-21 9:48 ` Zwane Mwaikambo
2002-02-21 10:15 ` Jeff Garzik
2002-02-21 10:10 ` Zwane Mwaikambo
2002-02-21 11:19 ` Christer Weinigel
2002-02-21 11:59 ` Christer Weinigel
2002-02-21 12:07 ` Zwane Mwaikambo
2002-02-21 13:37 ` Alan Cox
2002-02-21 14:27 ` Zwane Mwaikambo
2002-02-21 14:54 ` Dave Jones
2002-02-21 15:16 ` Alan Cox
2002-02-21 12:22 ` Jeff Garzik
2002-02-21 12:32 ` Zwane Mwaikambo
2002-02-21 12:46 ` Jeff Garzik
2002-02-21 12:57 ` Christer Weinigel
2002-02-21 13:20 ` Jeff Garzik
2002-02-22 19:57 ` Christer Weinigel
[not found] ` <20020222210107.A6828@fafner.intra.cogenit.fr>
2002-02-22 20:48 ` Christer Weinigel
2002-02-22 22:56 ` Joel Becker
2002-02-25 22:20 ` Randy.Dunlap
2002-02-26 1:22 ` Christer Weinigel
2002-02-26 1:37 ` Christer Weinigel
2002-02-26 1:59 ` Jakob Østergaard
2002-02-26 2:42 ` Alan Cox
2002-02-21 15:53 ` Joel Becker
2002-02-24 17:30 ` Roy Sigurd Karlsbakk
2002-02-25 8:22 ` Zwane Mwaikambo
2002-02-25 21:01 ` Roy Sigurd Karlsbakk
2002-02-21 0:02 ` Christer Weinigel [this message]
2002-02-21 0:27 ` SC1200 support? Keith Owens
2002-02-21 6:19 ` Zwane Mwaikambo
2002-02-21 6:35 ` nick
2002-02-21 6:31 ` Zwane Mwaikambo
2002-02-21 12:05 ` Christer Weinigel
2002-02-21 10:56 ` Christer Weinigel
2002-02-21 11:14 ` Keith Owens
2002-02-21 11:24 ` David Woodhouse
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20020221000202.363E6F5B@acolyte.hack.org \
--to=wingel@nano-system.com \
--cc=linux-kernel@vger.kernel.org \
--cc=roy@karlsbakk.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox