2nd flash detection on ixp425 based boards

alfred hitch alfred.hitch at gmail.com
Thu Apr 7 01:39:38 EDT 2005


could some one please help me understand that why is the
genprobe_ident_chips function .. working this way ?

that is in for loop adding probed device size again ??
wouldnt it cause it to miss probes for devices whose size is lower
than firsqt one .. ?

Anyone provide some input ?

and surprisingly, when I remove this check / patch it to not add .. I
am able to work with my flash just fine .. ?
so what was the reason to do it that way ?


---------- Forwarded message ----------
From: alfred hitch <alfred.hitch at gmail.com>
Date: Apr 6, 2005 4:32 AM
Subject: 2nd flash detection on ixp425 based boards
To: linux-mtd at lists.infradead.org


This is regading cfi probe for multiple flash chips  ..

On my IXP425 based board, with 2 chips, one on CS0(16MB)
and other on CS1 (16 MB) ..

I am able to probe and write through to these devices in my probe ..
all's well .

but today, we were changing hardware configuration to have 8MB on CS1
in stead of 16MB ..
and I notice that in the gen_probe.c -> genprobe_ident_chips function ..
the for loop which checks for base size is to map->size will not pass thru ..
that is it will say find 16 + 16 <= 24 (configured as window_size)

I see a comment above it also saying that this is to check that the
size is good enough to accomodate another chip of same size in this

Please help me understand that why are we doing it this way .. is h/w
config like we are trying to have wrong ? why cannot I put base <
cfi.chipshiftsize in
that for loop and map both the devices .. why does the second one has
to be this way of size more or equal to first one ..


More information about the linux-mtd mailing list