I have the feeling that the netsc520.c map driver wasn't actually probing anything... the physmap driver shows a lot of debugging about how it probes and what it receives. Here's the probing sequence from the boot log with physmap:
------------------
[ 0.444188] physmap platform flash device: 00004000 at 08000000
[ 0.448389] reset unlock called 555 2aa
[ 0.452254] Search for id:(75 c1) interleave(2) type(1)
[ 0.457030] jedec_match(): ID is not 8bit
[ 0.460690] jedec_match(): ID is not 8bit
[ 0.464346] jedec_match(): ID is not 8bit
[ 0.464346] jedec_match(): ID is not 8bit
[ 0.471579] jedec_match(): ID is not 8bit
[ 0.475234] jedec_match(): ID is not 8bit
[ 0.478886] jedec_match(): ID is not 8bit
[ 0.482541] jedec_match(): ID is not 8bit
[ 0.486197] jedec_match(): ID is not 8bit
[ 0.489857] jedec_match(): ID is not 8bit
[ 0.493512] jedec_match(): ID is not 8bit
[ 0.497166] jedec_match(): ID is not 8bit
[ 0.500828] jedec_match(): ID is not 8bit
[ 0.504483] jedec_match(): ID is not 8bit
[ 0.508146] jedec_match(): ID is not 8bit
[ 0.508146] jedec_match(): ID is not 8bit
[ 0.515380] jedec_match(): ID is not 8bit
[ 0.519033] jedec_match(): ID is not 8bit
[ 0.522688] jedec_match(): ID is not 8bit
[ 0.526342] jedec_match(): ID is not 8bit
[ 0.529997] jedec_match(): ID is not 8bit
[ 0.533651] jedec_match(): ID is not 8bit
[ 0.537305] jedec_match(): ID is not 8bit
[ 0.540960] jedec_match(): ID is not 8bit
[ 0.544615] jedec_match(): ID is not 8bit
[ 0.548276] jedec_match(): ID is not 8bit
[ 0.548276] jedec_match(): ID is not 8bit
[ 0.555509] jedec_match(): ID is not 8bit
[ 0.559171] jedec_match(): ID is not 8bit
[ 0.562826] jedec_match(): ID is not 8bit
[ 0.566487] jedec_match(): ID is not 8bit
[ 0.570141] jedec_match(): ID is not 8bit
[ 0.573796] jedec_match(): ID is not 8bit
[ 0.577450] jedec_match(): ID is not 8bit
[ 0.581105] jedec_match(): ID is not 8bit
[ 0.584760] jedec_match(): ID is not 8bit
[ 0.588416] jedec_match(): ID is not 8bit
[ 0.592067] jedec_match(): ID is not 8bit
[ 0.592067] jedec_match(): ID is not 8bit
[ 0.599309] jedec_match(): ID is not 8bit
[ 0.602965] jedec_match(): ID is not 8bit
[ 0.606619] jedec_match(): ID is not 8bit
[ 0.610274] jedec_match(): ID is not 8bit
[ 0.613936] jedec_match(): ID is not 8bit
[ 0.617591] reset unlock called 555 aaa
[ 0.621185] Search for id:(75 c1) interleave(2) type(1)
[ 0.625960] jedec_match(): ID is not 8bit
[ 0.629619] jedec_match(): ID is not 8bit
[ 0.633274] jedec_match(): ID is not 8bit
[ 0.636928] jedec_match(): ID is not 8bit
[ 0.640582] jedec_match(): ID is not 8bit
[ 0.644237] jedec_match(): ID is not 8bit
[ 0.644237] jedec_match(): ID is not 8bit
[ 0.651472] jedec_match(): ID is not 8bit
[ 0.655132] jedec_match(): ID is not 8bit
[ 0.658787] jedec_match(): ID is not 8bit
[ 0.662441] jedec_match(): ID is not 8bit
[ 0.666096] jedec_match(): ID is not 8bit
[ 0.669759] jedec_match(): ID is not 8bit
[ 0.673414] jedec_match(): ID is not 8bit
[ 0.677075] jedec_match(): ID is not 8bit
[ 0.680729] jedec_match(): ID is not 8bit
[ 0.684383] jedec_match(): ID is not 8bit
[ 0.688037] jedec_match(): ID is not 8bit
[ 0.688037] jedec_match(): ID is not 8bit
[ 0.695272] jedec_match(): ID is not 8bit
[ 0.698926] jedec_match(): ID is not 8bit
[ 0.702581] jedec_match(): ID is not 8bit
[ 0.706232] jedec_match(): ID is not 8bit
[ 0.709889] jedec_match(): ID is not 8bit
[ 0.713543] jedec_match(): ID is not 8bit
[ 0.717198] jedec_match(): ID is not 8bit
[ 0.720853] jedec_match(): ID is not 8bit
[ 0.724507] jedec_match(): ID is not 8bit
[ 0.728169] jedec_match(): ID is not 8bit
[ 0.728169] jedec_match(): ID is not 8bit
[ 0.735402] jedec_match(): ID is not 8bit
[ 0.739057] jedec_match(): ID is not 8bit
[ 0.742718] jedec_match(): ID is not 8bit
[ 0.746373] jedec_match(): ID is not 8bit
[ 0.750028] jedec_match(): ID is not 8bit
[ 0.753688] jedec_match(): ID is not 8bit
[ 0.757344] jedec_match(): ID is not 8bit
[ 0.760999] jedec_match(): ID is not 8bit
[ 0.764651] jedec_match(): ID is not 8bit
[ 0.768316] jedec_match(): ID is not 8bit
[ 0.768316] jedec_match(): ID is not 8bit
[ 0.775555] jedec_match(): ID is not 8bit
[ 0.779209] jedec_match(): ID is not 8bit
[ 0.782866] jedec_match(): ID is not 8bit
[ 0.786520] reset unlock called aaa 555
[ 0.790112] Search for id:(00 00) interleave(2) type(1)
[ 0.794882] jedec_match(): ID is not 8bit
[ 0.798541] jedec_match(): ID is not 8bit
[ 0.802196] jedec_match(): ID is not 8bit
[ 0.805850] jedec_match(): ID is not 8bit
[ 0.809505] jedec_match(): ID is not 8bit
[ 0.813159] jedec_match(): ID is not 8bit
[ 0.816814] jedec_match(): ID is not 8bit
[ 0.820469] jedec_match(): ID is not 8bit
[ 0.824121] jedec_match(): ID is not 8bit
[ 0.824121] jedec_match(): ID is not 8bit
[ 0.831356] jedec_match(): ID is not 8bit
[ 0.835011] jedec_match(): ID is not 8bit
[ 0.838674] jedec_match(): ID is not 8bit
[ 0.842325] jedec_match(): ID is not 8bit
[ 0.845980] jedec_match(): ID is not 8bit
[ 0.849635] jedec_match(): ID is not 8bit
[ 0.853289] jedec_match(): ID is not 8bit
[ 0.856945] jedec_match(): ID is not 8bit
[ 0.860600] jedec_match(): ID is not 8bit
[ 0.864254] jedec_match(): ID is not 8bit
[ 0.864254] jedec_match(): ID is not 8bit
[ 0.871487] jedec_match(): ID is not 8bit
[ 0.875141] jedec_match(): ID is not 8bit
[ 0.878796] jedec_match(): ID is not 8bit
[ 0.882451] jedec_match(): ID is not 8bit
[ 0.886106] jedec_match(): ID is not 8bit
[ 0.889766] jedec_match(): ID is not 8bit
[ 0.893421] jedec_match(): ID is not 8bit
[ 0.897083] jedec_match(): ID is not 8bit
[ 0.900738] jedec_match(): ID is not 8bit
[ 0.904390] jedec_match(): ID is not 8bit
[ 0.908045] jedec_match(): ID is not 8bit
[ 0.908045] jedec_match(): ID is not 8bit
[ 0.915280] jedec_match(): ID is not 8bit
[ 0.918935] jedec_match(): ID is not 8bit
[ 0.922590] jedec_match(): ID is not 8bit
[ 0.926250] jedec_match(): ID is not 8bit
[ 0.929905] jedec_match(): ID is not 8bit
[ 0.933559] jedec_match(): ID is not 8bit
[ 0.937222] jedec_match(): ID is not 8bit
[ 0.940883] jedec_match(): ID is not 8bit
[ 0.944538] jedec_match(): ID is not 8bit
[ 0.948191] jedec_match(): ID is not 8bit
[ 0.948191] jedec_match(): ID is not 8bit
[ 0.955424] Search for id:(00 00) interleave(2) type(1)
[ 0.956194] jedec_match(): ID is not 8bit
[ 0.956194] jedec_match(): ID is not 8bit
[ 0.963433] jedec_match(): ID is not 8bit
[ 0.967087] jedec_match(): ID is not 8bit
[ 0.970741] jedec_match(): ID is not 8bit
[ 0.974396] jedec_match(): ID is not 8bit
[ 0.978051] jedec_match(): ID is not 8bit
[ 0.981705] jedec_match(): ID is not 8bit
[ 0.985360] jedec_match(): ID is not 8bit
[ 0.989020] jedec_match(): ID is not 8bit
[ 0.992674] jedec_match(): ID is not 8bit
[ 0.996339] jedec_match(): ID is not 8bit
[ 0.996339] jedec_match(): ID is not 8bit
[ 1.003580] jedec_match(): ID is not 8bit
[ 1.007240] jedec_match(): ID is not 8bit
[ 1.010895] jedec_match(): ID is not 8bit
[ 1.014550] jedec_match(): ID is not 8bit
[ 1.018204] jedec_match(): ID is not 8bit
[ 1.021859] jedec_match(): ID is not 8bit
[ 1.025514] jedec_match(): ID is not 8bit
[ 1.029174] jedec_match(): ID is not 8bit
[ 1.032830] jedec_match(): ID is not 8bit
[ 1.036483] jedec_match(): ID is not 8bit
[ 1.040138] jedec_match(): ID is not 8bit
[ 1.040138] jedec_match(): ID is not 8bit
[ 1.047371] jedec_match(): ID is not 8bit
[ 1.051033] jedec_match(): ID is not 8bit
[ 1.054688] jedec_match(): ID is not 8bit
[ 1.058350] jedec_match(): ID is not 8bit
[ 1.062004] jedec_match(): ID is not 8bit
[ 1.065666] jedec_match(): ID is not 8bit
[ 1.069321] jedec_match(): ID is not 8bit
[ 1.072976] jedec_match(): ID is not 8bit
[ 1.076631] jedec_match(): ID is not 8bit
[ 1.080283] jedec_match(): ID is not 8bit
[ 1.080283] jedec_match(): ID is not 8bit
[ 1.087516] jedec_match(): ID is not 8bit
[ 1.091171] jedec_match(): ID is not 8bit
[ 1.094833] jedec_match(): ID is not 8bit
[ 1.098495] jedec_match(): ID is not 8bit
[ 1.102158] jedec_match(): ID is not 8bit
[ 1.105820] jedec_match(): ID is not 8bit
[ 1.109476] jedec_match(): ID is not 8bit
[ 1.113136] jedec_match(): ID is not 8bit
[ 1.116790] reset unlock called 2aa 155
[ 1.120386] Search for id:(00 00) interleave(2) type(2)
[ 1.125154] reset unlock called 2aa 555
[ 1.128779] Search for id:(00 00) interleave(2) type(2)
[ 1.133552] reset unlock called 555 2aa
[ 1.137185] Search for id:(00 00) interleave(2) type(2)
[ 1.141958] Search for id:(00 00) interleave(2) type(2)
[ 1.146764] reset unlock called 155 aa
[ 1.150321] Search for id:(00 00) interleave(2) type(4)
[ 1.155091] reset unlock called 155 2aa
[ 1.158726] Search for id:(00 00) interleave(2) type(4)
[ 1.163499] reset unlock called 2aa 155
[ 1.167131] Search for id:(00 00) interleave(2) type(4)
[ 1.171905] Search for id:(00 00) interleave(2) type(4)
[ 1.172712] reset unlock called 2aa 155
[ 1.176343] Search for id:(00 00) interleave(1) type(2)
[ 1.181115] reset unlock called 2aa 555
[ 1.184739] Search for id:(00 00) interleave(1) type(2)
[ 1.189514] reset unlock called 555 2aa
[ 1.193146] Search for id:(00 00) interleave(1) type(2)
[ 1.197921] Search for id:(00 00) interleave(1) type(2)
[ 1.202728] reset unlock called 155 aa
[ 1.206277] Search for id:(00 00) interleave(1) type(4)
[ 1.211048] reset unlock called 155 2aa
[ 1.214679] Search for id:(00 00) interleave(1) type(4)
[ 1.219453] reset unlock called 2aa 155
[ 1.223084] Search for id:(00 00) interleave(1) type(4)
[ 1.227851] Search for id:(00 00) interleave(1) type(4)
[ 1.228658] cmdlinepart partition parsing not available
[ 1.236074] RedBoot partition parsing not available
[ 1.240857] mtd: Giving out device 0 to physmap-flash.0
-------------------------------------------
Any ideas Biff? You wrote the Biffboot Flash interface, maybe some of the above sounds fishy, I don't know...
R.
--
Razvan Dragomirescu
Chief Technology Officer
Cayenne Graphics SRL