Re: [PATCH] mtd: nand: pxa3xx-nand: prevent DFI bus lockup on removal

From: Robert Jarzmik
Date: Mon Aug 24 2015 - 14:28:27 EST


Ezequiel Garcia <ezequiel@xxxxxxxxxxxxxxxxxxxx> writes:

> Should we worry about having two definitions for the same bit?
> Would it be too ugly to mix the two meaning? Something like this:
>
> /* This bit has two different meanings on NFCv1 and NFCv2 */
> #define NDCR_STOP_ON_UNCOR_ARB_CNTL (0x1 << 19)
I don't find that very pretty, but if you want I can put that in the patch
instead.

>> @@ -1784,6 +1787,8 @@ static int pxa3xx_nand_remove(struct platform_device *pdev)
>> free_irq(irq, info);
>> pxa3xx_nand_free_buff(info);
>>
>
> I think a comment here explaining how this disables DFI arbitration and
> how clearing it grants DFI access to SMC only.
>
> While here, we might want to document how the whole arbiter applies to
> PXA only, since the DFI bus is shared there.
Ok, for v2. I take it that DFI bus is not shared on Armada, lucky you. Maybe
something like :

/*
* In the pxa3xx case, the DFI bus is shared between the SMC and NFC. In order
* to prevent a lockup of the system bus, the DFI bus arbitration is granted
* to SMC upon driver removal. This is done by setting the x_ARB_CNTL bit,
* which also prevents the NAND to have access to the bus anymore.
*/

Cheers.

--
Robert
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/