Gday!
Sorry about the lengthy reply; apart from avoiding anything overly
productive today, I thought it might be an idea to jot down as much info as
I could muster in an attempt to further fuel this discussion.
On Mon, 08 Dec 2003 00:14:42 +0100
Ingo Hoffmann <ingo_at_hoffmann-augsburg.de> wrote:
> >>I'm afraid that people are focussing very much on those (partly really
> >>old) 3xxx versions and are missing obviously the presence (H2210) and
> >>the future (H4xxx).
> >Hmmm. Yes I noticed that too ... I guess it's a combination of unusual
> >(different) components, and that it is also a mid-range model. ie. 19xx
> >and 5xxx both seem to have very active development (and also it's one of
> >the newest ipaqs)
> I would say there is some progress in those projects! A "very active
> development" IMHO looks different!
You're probably right :) ... however those ports have linux booting (AFAIK)
> >>So far I'm not even able to trace the status. When we look to
> >>http://www.handhelds.org/projects/h2200.html: (BTW: Why isn't it
> >>possible to see this link when browsing
> >>http://www.handhelds.org/projects?)
> >I thought that had been updated some time ago. Seems to work OK now
> >anyway.
> But it is still the case that you don't find the project when you browse
> http://www.handhelds.org/projects!
I swear it's working!! :)) (try shift-refresh on your browser or something)
> >>See H22xx ASIC spec for info on the companion ASIC in the H2210.
> >>
> >> Assign new machine type to H22xx. Done. MACH_TYPE_H2200 = 341
> >> Update linexec to run on H22xx
> >>
> >>What are the problems here? What has to be done? What about a
> >>compilation environment? What is the status?
> >
> >Status = joshua tells me that he expects that linexec should run on a
> >2210, but as we havent even compiled a test kernel it's a little
> >pointless trying to use it:)
> >
> Ok, so let's start!
I'm encouraged by your enthusiasm. What would you like to do first? :)
> Where is a linexec binary, what we can try? To
> compile it outselves is no option here, because as far as I've
> understood this is a wince binary and so we need a development
> environment for wince! I think that's definitely not what most of us
> have (and what we are looking for)! So it would really be great if
> somebody can provide us with a binary!
> Who is able to do so?
I will send you a copy. I just waited in # until I found someone who had it
(thanks Spyro!)
> >> Boot minimal kernel via linexec
> >>
> >>What do we need for a minimal kernel? Why can't we use the kernel of
> >>another device or can we? Which one?
> >
> >No we cant do it that way. Other devices may have similar features, ie.
> >cpu, etc, but the h2210 has a number of differences like: different
> >ASIC, NAND flash, MediaQ GPU (with built-in USB) ... etc. What we need
> >to do is get a "just working" kernel (ie. minimal) to test under linexec
> >(ie. in wince). To achieve that, we need a toolchain to build the kernel
> >(AFAIK). That is what I am attempting to do (although time seems to be
> >getting the better of my efforts ATM).
> >
> OK again, let us start!
> 1. What is a good Toolchain to start with? (A pointer to a tar archive
> would be great.)
> I hope this is a cross environment for i386, so that it runs on a normal
> linux system and produces code for arm.
Jamey said on 20031003: [gcc] 3.2.3 for 2.4.x kernel, 3.3.1 for 2.6.x
kernel.
Toolchains live here: http://handhelds.org/download/toolchain/
However, have a look at these:
http://www.handhelds.org/projects/toolchain/index.html
http://www.handhelds.org/projects/toolchain/autobuild/
I am currently building a dedicated cross-compiling server for this
project. Machine is up and running (2.4.22-1-686-smp), but yet to be
completed.(However, firewall network should be ready, just need to plug it
in and forward a few ports) Among other things I am attempting to install
UML (http://user-mode-linux.sourceforge.net/) so that we can all work on
it. As it has been suggested to concentrate on 2.6 (by Jamey and others),
I'm unsure if the base system needs to be 2.6, the UML sessions need to be
2.6, or if the toolchain is independent of such things. If somebody would
like to assist me in setting this up it will save me from learning from
scratch ... however I'm quite happy to stumble on at my own pace and work
it out for myself ... just dont expect fast results! :))
> 2. Where is a description how to build a kernel for an existing
> platform, eg. 36xx. Where is a .config file?
> (I'm not familiar with building a kernel for the arm architecture, my
> experience is from building normal 386 kernels, sorry, if I'm missing
> the point!)
I've had nothing to do with arm before either, only 68xx, i386, and vax.
See the toolchain links above.
> 3. We need a configuration (.config-file or a list of options to answer
> in the make config). Who is able to provide such a configuration? If
> this is not available let us discuss, what we really need: What is this
> minimal configuration? I assume that this is a system with a serial
> console. What do we additionally need? I assume, no flash, no
> touchscreen, no CF, no SD, no USB.
Jamey said on 20031113:
* There is a small amount of code and headers for the h22xx in the
* handhelds.org kernel source tree on cvs.handhelds.org linux/kernel. It
* is also available in patch form:
*
* ftp://ftp.handhelds.org/pub/linux/kernel/patch-2.4.19-rmk6-pxa1-hh28.gz
*
* See arch/arm/mach-pxa/hh2200.c, include/asm-arm/arch-pxa/h2200-*.h
*
* At this point, it probably makes sense to port that code forward to 2.6
* instead of working with 2.4. In CVS: linux/kernel26 or patches in the
* same place.
This is the tricky part (and probably the best/only reason for using
linexec?). We will not know what all the config options are, some code will
have to be rewritten/added to the kernel (and hence more options in
.config). AFAIK there is no serial port on 2210 (which seems odd), it's
emulated over USB (although there is a dual USB/serial cable for the 2210,
so I'm not too sure about that). Following (minimal) requirements are based
on guesswork (not experience): 1. ASIC controller driver (hamcop) ...
similar to 5xxx's samcop(??), but has different ways of doing things like
interrupts, more control lines(?), etc... and I assume all the devices are
in different places. 2. NAND flash driver (?) ... there has been progress
in the 19xx port here. 3. USB (/serial?) ... might be a problem
(initially). 4. CF might be better (and perhaps easier to implement?) than
USB as I think we'd have to get the MediaQ working before we can use the
USB port. (The 5xxx series has the USB controller in the samcop, the 221x's
is in the graphics controller (AFAIK). The work done on the Axim might help
us work this out tho (MQ1132?)
> 4. What are the next steps? I assume we need a ramdisk with some basic
> commands in. Can we use parts of a complete distribution like familiar
> or so here?
I havent thought that far ahead :)
> 5. 1st shell prompt!!!!
Won't that be a feeling!!
> >> Port bootldr to H22xx.
> >>
> >>This seems to be low priority for me! Why not use wince for loading
> >>Linux? The risk with installing the bootloader could so be avoided!
> >>Why can't the old bootloader be used?
> >
> >Once a minimal kernel has been built, we should have enough info to get
> >a proper bootloader going. I, for one, do NOT want to have to rely on
> >wince to be running so that I can run linux. HOWEVER, I would like to
> >investigate dual-booting (given enough memory, etc) ... to that end I
> >have been stockpiling (ie. 2) cheap mmc cards (64MB) from ebay in the
> >hope that I may be able to boot linux from the SDIO interface (one
> >day:). This way, in theory, I should be able to use both os's, and still
> >take advantage of my CF camera and 512MB CF card. I intend to move all
> >possible CE progs onto a 128MB SD card.
> >
> Agreed, but this is the 2nd step anyway!
LAB (bootldr-NG) is the way it's got to go. I believe once we have some of
the initial stuff out of the way that this step should be straightforward
(with joshua_'s help:))
Marcus.
Received on Mon Dec 08 2003 - 04:24:55 EST
This archive was generated by hypermail 2.2.0 : Mon Jul 25 2005 - 18:33:25 EDT