[U-Boot] [PATCH] pci: Device scanning range fix.

Don't lookup pci device 1f.7
Signed-off-by: Yoshinori Sato ysato@users.sourceforge.jp --- drivers/pci/pci-uclass.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/pci/pci-uclass.c b/drivers/pci/pci-uclass.c index c7fbf7b..32590ce 100644 --- a/drivers/pci/pci-uclass.c +++ b/drivers/pci/pci-uclass.c @@ -682,7 +682,7 @@ int pci_bind_bus_devices(struct udevice *bus) found_multi = false; end = PCI_BDF(bus->seq, PCI_MAX_PCI_DEVICES - 1, PCI_MAX_PCI_FUNCTIONS - 1); - for (bdf = PCI_BDF(bus->seq, 0, 0); bdf < end; + for (bdf = PCI_BDF(bus->seq, 0, 0); bdf <= end; bdf += PCI_BDF(0, 0, 1)) { struct pci_child_platdata *pplat; struct udevice *dev;

Hi Yoshinori,
On 18 April 2016 at 02:02, Yoshinori Sato ysato@users.sourceforge.jp wrote:
Don't lookup pci device 1f.7
Signed-off-by: Yoshinori Sato ysato@users.sourceforge.jp
drivers/pci/pci-uclass.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/pci/pci-uclass.c b/drivers/pci/pci-uclass.c index c7fbf7b..32590ce 100644 --- a/drivers/pci/pci-uclass.c +++ b/drivers/pci/pci-uclass.c @@ -682,7 +682,7 @@ int pci_bind_bus_devices(struct udevice *bus) found_multi = false; end = PCI_BDF(bus->seq, PCI_MAX_PCI_DEVICES - 1, PCI_MAX_PCI_FUNCTIONS - 1);
for (bdf = PCI_BDF(bus->seq, 0, 0); bdf < end;
for (bdf = PCI_BDF(bus->seq, 0, 0); bdf <= end; bdf += PCI_BDF(0, 0, 1)) { struct pci_child_platdata *pplat; struct udevice *dev;
The patch looks good thank you. But your commit message seem the opposite of what this patch does. Can you update it in v2, or explain it better?
Regards, Simon

The terminal condition in the area where a PCI device is scanned is wrong, and 1f.7 isn't scanned.
Changes v2: - update commit message.
Signed-off-by: Yoshinori Sato ysato@users.sourceforge.jp --- drivers/pci/pci-uclass.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/pci/pci-uclass.c b/drivers/pci/pci-uclass.c index c7fbf7b..32590ce 100644 --- a/drivers/pci/pci-uclass.c +++ b/drivers/pci/pci-uclass.c @@ -682,7 +682,7 @@ int pci_bind_bus_devices(struct udevice *bus) found_multi = false; end = PCI_BDF(bus->seq, PCI_MAX_PCI_DEVICES - 1, PCI_MAX_PCI_FUNCTIONS - 1); - for (bdf = PCI_BDF(bus->seq, 0, 0); bdf < end; + for (bdf = PCI_BDF(bus->seq, 0, 0); bdf <= end; bdf += PCI_BDF(0, 0, 1)) { struct pci_child_platdata *pplat; struct udevice *dev;

Hi Yoshinori,
On Mon, Apr 25, 2016 at 2:14 PM, Yoshinori Sato ysato@users.sourceforge.jp wrote:
The terminal condition in the area where a PCI device is scanned is wrong, and 1f.7 isn't scanned.
Changes v2:
- update commit message.
Please hide this "changes v2" from the commit message.
Also nits: please remove the ending period in the commit title ..
Signed-off-by: Yoshinori Sato ysato@users.sourceforge.jp
drivers/pci/pci-uclass.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/pci/pci-uclass.c b/drivers/pci/pci-uclass.c index c7fbf7b..32590ce 100644 --- a/drivers/pci/pci-uclass.c +++ b/drivers/pci/pci-uclass.c @@ -682,7 +682,7 @@ int pci_bind_bus_devices(struct udevice *bus) found_multi = false; end = PCI_BDF(bus->seq, PCI_MAX_PCI_DEVICES - 1, PCI_MAX_PCI_FUNCTIONS - 1);
for (bdf = PCI_BDF(bus->seq, 0, 0); bdf < end;
for (bdf = PCI_BDF(bus->seq, 0, 0); bdf <= end; bdf += PCI_BDF(0, 0, 1)) { struct pci_child_platdata *pplat; struct udevice *dev;
--
Regards, Bin

On Mon, 25 Apr 2016 15:27:19 +0900, Bin Meng wrote:
Hi Yoshinori,
On Mon, Apr 25, 2016 at 2:14 PM, Yoshinori Sato ysato@users.sourceforge.jp wrote:
The terminal condition in the area where a PCI device is scanned is wrong, and 1f.7 isn't scanned.
Changes v2:
- update commit message.
Please hide this "changes v2" from the commit message.
Also nits: please remove the ending period in the commit title ..
OK. Thanks comment.
Signed-off-by: Yoshinori Sato ysato@users.sourceforge.jp
drivers/pci/pci-uclass.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/pci/pci-uclass.c b/drivers/pci/pci-uclass.c index c7fbf7b..32590ce 100644 --- a/drivers/pci/pci-uclass.c +++ b/drivers/pci/pci-uclass.c @@ -682,7 +682,7 @@ int pci_bind_bus_devices(struct udevice *bus) found_multi = false; end = PCI_BDF(bus->seq, PCI_MAX_PCI_DEVICES - 1, PCI_MAX_PCI_FUNCTIONS - 1);
for (bdf = PCI_BDF(bus->seq, 0, 0); bdf < end;
for (bdf = PCI_BDF(bus->seq, 0, 0); bdf <= end; bdf += PCI_BDF(0, 0, 1)) { struct pci_child_platdata *pplat; struct udevice *dev;
--
Regards, Bin

The terminal condition in the area where a PCI device is scanned is wrong, and 1f.7 isn't scanned.
Signed-off-by: Yoshinori Sato ysato@users.sourceforge.jp --- drivers/pci/pci-uclass.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/pci/pci-uclass.c b/drivers/pci/pci-uclass.c index c7fbf7b..32590ce 100644 --- a/drivers/pci/pci-uclass.c +++ b/drivers/pci/pci-uclass.c @@ -682,7 +682,7 @@ int pci_bind_bus_devices(struct udevice *bus) found_multi = false; end = PCI_BDF(bus->seq, PCI_MAX_PCI_DEVICES - 1, PCI_MAX_PCI_FUNCTIONS - 1); - for (bdf = PCI_BDF(bus->seq, 0, 0); bdf < end; + for (bdf = PCI_BDF(bus->seq, 0, 0); bdf <= end; bdf += PCI_BDF(0, 0, 1)) { struct pci_child_platdata *pplat; struct udevice *dev;

On Mon, Apr 25, 2016 at 2:41 PM, Yoshinori Sato ysato@users.sourceforge.jp wrote:
The terminal condition in the area where a PCI device is scanned is wrong, and 1f.7 isn't scanned.
Signed-off-by: Yoshinori Sato ysato@users.sourceforge.jp
drivers/pci/pci-uclass.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
Reviewed-by: Bin Meng bmeng.cn@gmail.com

On Mon, Apr 25, 2016 at 03:41:01PM +0900, Yoshinori Sato wrote:
The terminal condition in the area where a PCI device is scanned is wrong, and 1f.7 isn't scanned.
Signed-off-by: Yoshinori Sato ysato@users.sourceforge.jp Reviewed-by: Bin Meng bmeng.cn@gmail.com
Applied to u-boot/master, thanks!
participants (4)
-
Bin Meng
-
Simon Glass
-
Tom Rini
-
Yoshinori Sato