On 09.05.2008 19:29, ron minnich wrote:
On Fri, May 9, 2008 at 7:06 AM, Andrei Birjukov wrote:
- Another option would be to globally force the PCI_COMMAND_MASTER in
pci_probe_dev(), if the base class is PCI_BASE_CLASS_NETWORK.
then we'll hit the same problem with disk potentially or any other bus master device? Not sure.
I think we need to make it clear to the user: this is being done because their OS is defective, and it is dangerous. But we've got to support it, so that's life. It really ought to be a Kconfig option. (this is v3 I assume). And the help needs to make clear why this is being done. I don't mind it if you want to beat WinCE over the head.
Andrei was talking about v2. With v3, we can simply add a "busmaster" property to the dts object which is used to set the busmastering flag in stage6 or so.
I'd rather have an this done in phase 6, as part of global PCI device processing. Recall that as soon as you enable DMA on a NIC, things get interesting: Once the NIC is enabled, will it receive packets? If so, where do broadcast packets end up? I don't know. So this is quite dangerous.
Sorry to ramble, I'm just trying to figure this out. Any objections to making it something we do at the very end, as opposed to the probe step? That's what phase 6 is for.
Very much agreed.
Regards, Carl-Daniel