diff mbox

[U-Boot] tegra: config: Add 'pci enum' to preboot when PCI is enabled

Message ID 20160803093558.15388-1-alban.bedel@avionic-design.de
State Rejected
Delegated to: Tom Warren
Headers show

Commit Message

Alban Bedel Aug. 3, 2016, 9:35 a.m. UTC
For simplicity and backward compatibility automatically run 'pci enum'
via preboot when PCI is enabled. As preboot is already used for the
USB keyboard support this rework how CONFIG_PREBOOT is set to allow
combining several commands.

Signed-off-by: Alban Bedel <alban.bedel@avionic-design.de>
---
 include/configs/tegra-common-post.h | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

Comments

Stephen Warren Aug. 3, 2016, 3:37 p.m. UTC | #1
On 08/03/2016 03:35 AM, Alban Bedel wrote:
> For simplicity and backward compatibility automatically run 'pci enum'
> via preboot when PCI is enabled. As preboot is already used for the
> USB keyboard support this rework how CONFIG_PREBOOT is set to allow
> combining several commands.

For better or worse, this was a deliberate change, so I don't think this 
patch will be accepted.

If it is, then you should apply it to all boards, not just Tegra boards, 
and adjust include/config_distro_bootcmd.h since it will no longer need 
to run "pci enum", and also test/py/tests/test_net.py won't need to either.
Simon Glass Aug. 4, 2016, 1:16 a.m. UTC | #2
Hi,

On 3 August 2016 at 09:37, Stephen Warren <swarren@wwwdotorg.org> wrote:
> On 08/03/2016 03:35 AM, Alban Bedel wrote:
>>
>> For simplicity and backward compatibility automatically run 'pci enum'
>> via preboot when PCI is enabled. As preboot is already used for the
>> USB keyboard support this rework how CONFIG_PREBOOT is set to allow
>> combining several commands.
>
>
> For better or worse, this was a deliberate change, so I don't think this
> patch will be accepted.
>
> If it is, then you should apply it to all boards, not just Tegra boards, and
> adjust include/config_distro_bootcmd.h since it will no longer need to run
> "pci enum", and also test/py/tests/test_net.py won't need to either.

The boards which need PCI to boot are still few... we've talked about
this before. It would be great if we could find a way to detect or be
told that boot devices are on PCI and probe it accordingly. Perhaps we
should have a driver flag?

Regards,
Simon
Alban Bedel Aug. 4, 2016, 9:05 a.m. UTC | #3
On Wed, 3 Aug 2016 19:16:57 -0600
Simon Glass <sjg@chromium.org> wrote:

> Hi,
> 
> On 3 August 2016 at 09:37, Stephen Warren <swarren@wwwdotorg.org> wrote:
> > On 08/03/2016 03:35 AM, Alban Bedel wrote:
> >>
> >> For simplicity and backward compatibility automatically run 'pci enum'
> >> via preboot when PCI is enabled. As preboot is already used for the
> >> USB keyboard support this rework how CONFIG_PREBOOT is set to allow
> >> combining several commands.
> >
> >
> > For better or worse, this was a deliberate change, so I don't think this
> > patch will be accepted.
> >
> > If it is, then you should apply it to all boards, not just Tegra boards, and
> > adjust include/config_distro_bootcmd.h since it will no longer need to run
> > "pci enum", and also test/py/tests/test_net.py won't need to either.
> 
> The boards which need PCI to boot are still few... we've talked about
> this before. It would be great if we could find a way to detect or be
> told that boot devices are on PCI and probe it accordingly. Perhaps we
> should have a driver flag?

In my case I needed this for network boot. However I just found out
that with a properly reseted environment this is already handled, so
this is not needed. Sorry for the noise.

Alban
diff mbox

Patch

diff --git a/include/configs/tegra-common-post.h b/include/configs/tegra-common-post.h
index b206ce4bf93c..eff4c760797d 100644
--- a/include/configs/tegra-common-post.h
+++ b/include/configs/tegra-common-post.h
@@ -42,9 +42,10 @@ 
 #ifdef CONFIG_USB_KEYBOARD
 #define STDIN_KBD_USB ",usbkbd"
 #define CONFIG_SYS_USB_EVENT_POLL
-#define CONFIG_PREBOOT			"usb start"
+#define PREBOOT_USB "usb start;"
 #else
 #define STDIN_KBD_USB ""
+#define PREBOOT_USB ""
 #endif
 
 #ifdef CONFIG_LCD
@@ -89,6 +90,12 @@ 
 #define INITRD_HIGH "ffffffff"
 #endif
 
+#ifdef CONFIG_PCI
+#define PREBOOT_PCI "pci enum;"
+#else
+#define PREBOOT_PCI ""
+#endif
+
 #define CONFIG_EXTRA_ENV_SETTINGS \
 	TEGRA_DEVICE_SETTINGS \
 	MEM_LAYOUT_ENV_SETTINGS \
@@ -102,6 +109,10 @@ 
 #define CONFIG_TEGRA_SPI
 #endif
 
+#if defined(CONFIG_USB_KEYBOARD) || defined(CONFIG_PCI)
+#define CONFIG_PREBOOT PREBOOT_USB PREBOOT_PCI
+#endif
+
 /* overrides for SPL build here */
 #ifdef CONFIG_SPL_BUILD