On Fri, 2007-11-30 at 14:01 +0000, David Howells wrote: > David Woodhouse <[EMAIL PROTECTED]> wrote: > > > I don't like this -- it shouldn't be necessary. > > Actually, I think you're right. I think the problem is that: > > if (uaddr != MTD_UADDR_NOT_SUPPORTED ) { > /* ASSERT("The unlock addresses for non-8-bit mode > are bollocks. We don't really need an array."); */ > uaddr = finfo->uaddr[0]; > } > > Should be: > > if (uaddr == MTD_UADDR_NOT_SUPPORTED ) { > /* ASSERT("The unlock addresses for non-8-bit mode > are bollocks. We don't really need an array."); */ > uaddr = finfo->uaddr[0]; > }
Nah, it does what it's supposed to. Really, the only information in the uaddr[] array is the information about what widths are supported, and the _first_ unlock address is the only one we should care about. It should change to a bitmask for the widths which are supported, and a single int for the uaddr. > Otherwise the finfo->uaddr[] table is useless because only the first row will > be used, except for unsupported configurations where uaddr will be set to > MTD_UADDR_NOT_SUPPORTED. That is basically the assertion being made, yes. And it's true -- which is why I didn't want you removing it ;) > With the ASB2303 bootprom I need to use the second row because it's in the x16 > configuration, *not* the x8. No, you need to use the second row because the first row is incorrect. It ought to contain what's in the second row. :) -- dwmw2 - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/