On Tuesday, November 17, 2015 at 04:53:59 AM, Simon Glass wrote: > Convert this driver to use the new driver model PCI API.
Nit, in the subject, it should be ehci, not echi ;-) > Signed-off-by: Simon Glass <s...@chromium.org> > --- > > drivers/usb/host/ehci-pci.c | 43 > +++++++++++++++++++++++++++++++++++-------- 1 file changed, 35 > insertions(+), 8 deletions(-) [...] > @@ -38,12 +40,12 @@ static void ehci_pci_common_init(pci_dev_t pdev, struct > ehci_hccr **ret_hccr, *ret_hcor = hcor; > > /* enable busmaster */ > - pci_read_config_dword(pdev, PCI_COMMAND, &cmd); > + dm_pci_read_config32(dev, PCI_COMMAND, &cmd); Is the dm_ prefix really needed on these functions ? > cmd |= PCI_COMMAND_MASTER; > - pci_write_config_dword(pdev, PCI_COMMAND, cmd); > + dm_pci_write_config32(dev, PCI_COMMAND, cmd); > } > > -#ifndef CONFIG_DM_USB > +#else > > #ifdef CONFIG_PCI_EHCI_DEVICE > static struct pci_device_id ehci_pci_ids[] = { > @@ -55,6 +57,31 @@ static struct pci_device_id ehci_pci_ids[] = { > }; > #endif > > +static void ehci_pci_legacy_init(pci_dev_t pdev, struct ehci_hccr > **ret_hccr, + struct ehci_hcor **ret_hcor) > +{ > + struct ehci_hccr *hccr; > + struct ehci_hcor *hcor; > + uint32_t cmd; > + > + hccr = (struct ehci_hccr *)pci_map_bar(pdev, > + PCI_BASE_ADDRESS_0, PCI_REGION_MEM); > + hcor = (struct ehci_hcor *)((uint32_t) hccr + This should be uintptr_t instead of uint32_t . Oh, and uint32_t should not be used, use u32 where applicable. > + HC_LENGTH(ehci_readl(&hccr->cr_capbase))); > + > + debug("EHCI-PCI init hccr 0x%x and hcor 0x%x hc_length %d\n", > + (uint32_t)hccr, (uint32_t)hcor, > + (uint32_t)HC_LENGTH(ehci_readl(&hccr->cr_capbase))); > + > + *ret_hccr = hccr; > + *ret_hcor = hcor; > + > + /* enable busmaster */ > + pci_read_config_dword(pdev, PCI_COMMAND, &cmd); > + cmd |= PCI_COMMAND_MASTER; > + pci_write_config_dword(pdev, PCI_COMMAND, cmd); > +} [...] Best regards, Marek Vasut _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot