[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: D-I Etch+1/2 CD images (was: D-I Etch+1/2 kernel selection)

> > Yep, but that didn't pass the davem test, right?
> >
> > Anyway, I expect to have more free time to spend on that kind of stuff
> > now. Did 2.6.25 come earlier than anticipated, or what? Have these
> > drivers been removed in your tree as well?
> 2.6.24 has been out for 2 weeks. The ESP drivers were removed from the
> scsi-misc tree, and the plan seems to be removal from Linus's tree for
> 2.6.25.

Right - that still leaves a brief window to procrastinate. First the newly
introduced falconide panic, though.

Geert: this bit looks fishy -

        hw->io_ports[IDE_DATA_OFFSET] = ATA_HD_BASE;

        for (i = 1; i < 8; i++)
                hw->io_ports[i] = ATA_HD_BASE + 1 + i * 4;

        hw->io_ports[IDE_CONTROL_OFFSET] = ATA_HD_CONTROL;

The last line should read


at the very least. OTOH I'm not sure falconide_setup_ports ever got
called ... the 39 in a1 looks like it might be the control offset but the
segfault was at 0.

Anyway, with unpatched 2.6.24 (commit df922075f2a55b1ae71a6fe589c1cc1b91381f4f)
and the above change I see no segfault. I see, however, a identify message

hda: aSgr e6mk8


hda: 0 sectors

which is somewhat fatal. Did the byte swapping in the IDE driver get
removed? We had this in ide-iops.c as late as 2.6.19:

#ifdef M68K_IDE_SWAPW
        if (M68K_IDE_SWAPW) {   /* fix bus byteorder first */
                u_char *p = (u_char *)id;
                u_char t;
                for (i = 0; i < 512; i += 2) {
                        t = p[i];
                        p[i] = p[i+1];
                        p[i+1] = t;

That's still needed for Atari and Q40. Again, may be due to me using
vanilla sources instead of Geert's quilt patches, though I saw no trace of
that in the patch titles.
Putting that bit back in gives me a bootable kernel (on ARAnyM).
Yay for AranyM!

BTW: the borked ATA_HD_CONTROL register bug will alsi hit macide (and
perhaps others). gayle.c passes the sanitized control port value to
gayle_setup_ports so it's in the clear.



Reply to: