address lines
M8 (Servaes Joordens)
Servaes.Joordens at m8.nl
Sat Nov 3 08:07:15 EDT 2007
David,
Yes you did. I did the following:
- I changed the call to simple_map_init(xxx) in physmap.c to
my_simple_map_init(xxx)
- I add the bank-switching routines in physmap.c and link them via
my_simple_map_init(xxx)
I put an printk in every bank-switching routine. I does work properly in the begining, but then I get the following prints: (I added a printk in every function to check the caling order of things)
cfi_cmdset_001.c: cfi_intelext_point
cfi_cmdset_001.c: do_point_onechip
cfi_cmdset_001.c: get_chip
jffs2_scan_eraseblock(): Magic bitmask 0x1985 not found at 0x00000000: 0x890a in
stead
I expected that prior to error-report a read or write action to the flash is done. In that case I should have seen an printk saying physmap.c:bank_switching_map_read or physmap.c:bank_switching_map_write.
Servaes
David Woodhouse wrote:
> On Sat, 2007-11-03 at 11:54 +0100, M8 (Servaes Joordens) wrote:
>
>> I took a closer look at the bank-switching problem. The situation is:
>>
>> - I have an 4Mb Flash chip MT28F320J3FS-11
>> - A0-A19 are connected to the data-bus
>> - A20 is connected to GPIO PF4
>>
>> So the hardware probe detects 4MB flash in 1 chip and tries to access
>> it
>> in a normal manner. How should I solve this? I got a patch from the
>> manufacturer of the hardware for the file cfi_cmdset_0001.c, but I do
>> wonder if that is the correct way to do it?
>>
>
> No, it isn't. The correct way to do it is a fairly trivial 'complex
> mapping' driver, which ensures that the GPIO is set appropriately for
> the high bit of the address, before each access. Didn't I already point
> you to examples?
>
>
--
Servaes Joordens
-------------------------------------------
M8
Tappersweg 29
2031ET Haarlem
The Netherlands
Tel: +31 23 5311122
Mob: +31 6 51183379
Fax: +31 23 5322388
VAT-ID: nl-813029090B01
kvk: 34131430 Haarlem
More information about the linux-mtd
mailing list