* [U-Boot] [PATCH 1/3] ppc4xx: use CONFIG_PCI_BOOTDELAY instead of private implementation @ 2011-10-13 13:12 matthias.fuchs at esd.eu 2011-10-13 13:12 ` [U-Boot] [PATCH 2/3] ppc4xx: remove invalid access to PCI_BRDGOPT2 register matthias.fuchs at esd.eu 2011-12-01 8:12 ` [U-Boot] [PATCH 1/3] ppc4xx: use CONFIG_PCI_BOOTDELAY instead of private implementation Stefan Roese 0 siblings, 2 replies; 6+ messages in thread From: matthias.fuchs at esd.eu @ 2011-10-13 13:12 UTC (permalink / raw) To: u-boot From: Matthias Fuchs <matthias.fuchs@esd.eu> This patch switches PMC440 board code to the CONFIG_PCI_BOOTDELAY option instead of using a private implemention. This relies on Anatolji's patch that moves the pcidelay handling behind pci_target_init. Signed-off-by: Matthias Fuchs <matthias.fuchs@esd.eu> --- board/esd/pmc440/pmc440.c | 15 --------------- include/configs/PMC440.h | 2 ++ 2 files changed, 2 insertions(+), 15 deletions(-) diff --git a/board/esd/pmc440/pmc440.c b/board/esd/pmc440/pmc440.c index 5236f44..0d56064 100644 --- a/board/esd/pmc440/pmc440.c +++ b/board/esd/pmc440/pmc440.c @@ -617,21 +617,6 @@ void pci_master_init(struct pci_controller *hose) static void wait_for_pci_ready(void) { - int i; - char *s = getenv("pcidelay"); - /* - * We have our own handling of the pcidelay variable. - * Using CONFIG_PCI_BOOTDELAY enables pausing for host - * and adapter devices. For adapter devices we do not - * want this. - */ - if (s) { - int ms = simple_strtoul(s, NULL, 10); - printf("PCI: Waiting for %d ms\n", ms); - for (i=0; i<ms; i++) - udelay(1000); - } - if (!(in_be32((void*)GPIO1_IR) & GPIO1_PPC_EREADY)) { printf("PCI: Waiting for EREADY (CTRL-C to skip) ... "); while (1) { diff --git a/include/configs/PMC440.h b/include/configs/PMC440.h index bee74aa..ed47a87 100644 --- a/include/configs/PMC440.h +++ b/include/configs/PMC440.h @@ -432,6 +432,8 @@ #define CONFIG_SYS_PCI_MASTER_INIT #define CONFIG_SYS_PCI_BOARD_FIXUP_IRQ +#define CONFIG_PCI_BOOTDELAY 0 + /* PCI identification */ #define CONFIG_SYS_PCI_SUBSYS_VENDORID 0x12FE /* PCI Vendor ID: esd gmbh */ #define CONFIG_SYS_PCI_SUBSYS_ID_NONMONARCH 0x0441 /* PCI Device ID: Non-Monarch */ -- 1.6.1 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* [U-Boot] [PATCH 2/3] ppc4xx: remove invalid access to PCI_BRDGOPT2 register 2011-10-13 13:12 [U-Boot] [PATCH 1/3] ppc4xx: use CONFIG_PCI_BOOTDELAY instead of private implementation matthias.fuchs at esd.eu @ 2011-10-13 13:12 ` matthias.fuchs at esd.eu 2011-10-13 13:12 ` [U-Boot] [PATCH 3/3] ppc4xx: fix PMC440 painit command matthias.fuchs at esd.eu 2011-12-01 8:12 ` [U-Boot] [PATCH 2/3] ppc4xx: remove invalid access to PCI_BRDGOPT2 register Stefan Roese 2011-12-01 8:12 ` [U-Boot] [PATCH 1/3] ppc4xx: use CONFIG_PCI_BOOTDELAY instead of private implementation Stefan Roese 1 sibling, 2 replies; 6+ messages in thread From: matthias.fuchs at esd.eu @ 2011-10-13 13:12 UTC (permalink / raw) To: u-boot From: Matthias Fuchs <matthias.fuchs@esd.eu> This patch removes an invalid call to pci_write_config_dword to PCI_BRDGOPT2 register. This function must not be used from pci_target_init and is also at the wrong place. The correct call is done later in pci_target_init via pci_hose_write_config_dword. Signed-off-by: Matthias Fuchs <matthias.fuchs@esd.eu> --- board/esd/pmc440/pmc440.c | 2 -- 1 files changed, 0 insertions(+), 2 deletions(-) diff --git a/board/esd/pmc440/pmc440.c b/board/esd/pmc440/pmc440.c index 0d56064..3713e37 100644 --- a/board/esd/pmc440/pmc440.c +++ b/board/esd/pmc440/pmc440.c @@ -574,8 +574,6 @@ void pci_target_init(struct pci_controller *hose) /* No error reporting */ pci_hose_write_config_word(hose, 0, PCI_ERREN, 0); - pci_write_config_dword(0, PCI_BRDGOPT2, 0x00000101); - if (!is_monarch()) { /* Program the board's subsystem id/classcode */ pci_hose_write_config_word(hose, 0, PCI_SUBSYSTEM_ID, -- 1.6.1 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* [U-Boot] [PATCH 3/3] ppc4xx: fix PMC440 painit command 2011-10-13 13:12 ` [U-Boot] [PATCH 2/3] ppc4xx: remove invalid access to PCI_BRDGOPT2 register matthias.fuchs at esd.eu @ 2011-10-13 13:12 ` matthias.fuchs at esd.eu 2011-11-22 7:33 ` Stefan Roese 2011-12-01 8:12 ` [U-Boot] [PATCH 2/3] ppc4xx: remove invalid access to PCI_BRDGOPT2 register Stefan Roese 1 sibling, 1 reply; 6+ messages in thread From: matthias.fuchs at esd.eu @ 2011-10-13 13:12 UTC (permalink / raw) To: u-boot From: Matthias Fuchs <matthias.fuchs@esd.eu> This patch fixes the PMC440 BSP command painit. The implementation was broken since the step to the new environment handling. Signed-off-by: Matthias Fuchs <matthias.fuchs@esd.eu> --- board/esd/pmc440/cmd_pmc440.c | 17 +++++++++++++++-- 1 files changed, 15 insertions(+), 2 deletions(-) diff --git a/board/esd/pmc440/cmd_pmc440.c b/board/esd/pmc440/cmd_pmc440.c index 200d7ee..3bcf2b0 100644 --- a/board/esd/pmc440/cmd_pmc440.c +++ b/board/esd/pmc440/cmd_pmc440.c @@ -342,7 +342,8 @@ U_BOOT_CMD( #if defined(CONFIG_PRAM) #include <environment.h> -extern env_t *env_ptr; +#include <search.h> +#include <errno.h> int do_painit(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) { @@ -351,6 +352,10 @@ int do_painit(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) u32 param; ulong *lptr; + env_t *envp; + char *res; + int len; + v = getenv("pram"); if (v) pram = simple_strtoul(v, NULL, 10); @@ -384,7 +389,15 @@ int do_painit(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[]) /* env is first (4k aligned) */ nextbase -= ((CONFIG_ENV_SIZE + 4096 - 1) & ~(4096 - 1)); - memcpy((void*)nextbase, env_ptr, CONFIG_ENV_SIZE); + envp = (env_t *)nextbase; + res = (char *)envp->data; + len = hexport_r(&env_htab, '\0', &res, ENV_SIZE); + if (len < 0) { + error("Cannot export environment: errno = %d\n", errno); + return 1; + } + envp->crc = crc32(0, envp->data, ENV_SIZE); + *(--lptr) = CONFIG_ENV_SIZE; /* size */ *(--lptr) = base - nextbase; /* offset | type=0 */ -- 1.6.1 ^ permalink raw reply related [flat|nested] 6+ messages in thread
* [U-Boot] [PATCH 3/3] ppc4xx: fix PMC440 painit command 2011-10-13 13:12 ` [U-Boot] [PATCH 3/3] ppc4xx: fix PMC440 painit command matthias.fuchs at esd.eu @ 2011-11-22 7:33 ` Stefan Roese 0 siblings, 0 replies; 6+ messages in thread From: Stefan Roese @ 2011-11-22 7:33 UTC (permalink / raw) To: u-boot Hi Matthias, On Thursday 13 October 2011 15:12:24 matthias.fuchs at esd.eu wrote: > From: Matthias Fuchs <matthias.fuchs@esd.eu> > > This patch fixes the PMC440 BSP command painit. The implementation was > broken since the step to the new environment handling. After applying this patch to the latest U-Boot version I get the following error: [stefan at kubuntu u-boot-ppc4xx (master)]$ ./MAKEALL PMC440 Configuring for PMC440 board... cmd_pmc440.c: In function 'do_painit': cmd_pmc440.c:394: error: too few arguments to function 'hexport_r' make[1]: *** [cmd_pmc440.o] Error 1 Seems that the hexport_r() API has changed. Could you please take a look and resubmit. Thanks. Best regards, Stefan -- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-0 Fax: (+49)-8142-66989-80 Email: office at denx.de ^ permalink raw reply [flat|nested] 6+ messages in thread
* [U-Boot] [PATCH 2/3] ppc4xx: remove invalid access to PCI_BRDGOPT2 register 2011-10-13 13:12 ` [U-Boot] [PATCH 2/3] ppc4xx: remove invalid access to PCI_BRDGOPT2 register matthias.fuchs at esd.eu 2011-10-13 13:12 ` [U-Boot] [PATCH 3/3] ppc4xx: fix PMC440 painit command matthias.fuchs at esd.eu @ 2011-12-01 8:12 ` Stefan Roese 1 sibling, 0 replies; 6+ messages in thread From: Stefan Roese @ 2011-12-01 8:12 UTC (permalink / raw) To: u-boot On Thursday 13 October 2011 15:12:23 matthias.fuchs at esd.eu wrote: > From: Matthias Fuchs <matthias.fuchs@esd.eu> > > This patch removes an invalid call to pci_write_config_dword to > PCI_BRDGOPT2 register. This function must not be used from pci_target_init > and is also at the wrong place. The correct call is done later in > pci_target_init via pci_hose_write_config_dword. Applied to u-boot-ppc4xx. Thanks. Best regards, Stefan -- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-0 Fax: (+49)-8142-66989-80 Email: office at denx.de ^ permalink raw reply [flat|nested] 6+ messages in thread
* [U-Boot] [PATCH 1/3] ppc4xx: use CONFIG_PCI_BOOTDELAY instead of private implementation 2011-10-13 13:12 [U-Boot] [PATCH 1/3] ppc4xx: use CONFIG_PCI_BOOTDELAY instead of private implementation matthias.fuchs at esd.eu 2011-10-13 13:12 ` [U-Boot] [PATCH 2/3] ppc4xx: remove invalid access to PCI_BRDGOPT2 register matthias.fuchs at esd.eu @ 2011-12-01 8:12 ` Stefan Roese 1 sibling, 0 replies; 6+ messages in thread From: Stefan Roese @ 2011-12-01 8:12 UTC (permalink / raw) To: u-boot On Thursday 13 October 2011 15:12:22 matthias.fuchs at esd.eu wrote: > From: Matthias Fuchs <matthias.fuchs@esd.eu> > > This patch switches PMC440 board code to the CONFIG_PCI_BOOTDELAY option > instead of using a private implemention. This relies on Anatolji's patch > that moves the pcidelay handling behind pci_target_init. Applied to u-boot-ppc4xx. Thanks. Best regards, Stefan -- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-0 Fax: (+49)-8142-66989-80 Email: office at denx.de ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2011-12-01 8:12 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2011-10-13 13:12 [U-Boot] [PATCH 1/3] ppc4xx: use CONFIG_PCI_BOOTDELAY instead of private implementation matthias.fuchs at esd.eu 2011-10-13 13:12 ` [U-Boot] [PATCH 2/3] ppc4xx: remove invalid access to PCI_BRDGOPT2 register matthias.fuchs at esd.eu 2011-10-13 13:12 ` [U-Boot] [PATCH 3/3] ppc4xx: fix PMC440 painit command matthias.fuchs at esd.eu 2011-11-22 7:33 ` Stefan Roese 2011-12-01 8:12 ` [U-Boot] [PATCH 2/3] ppc4xx: remove invalid access to PCI_BRDGOPT2 register Stefan Roese 2011-12-01 8:12 ` [U-Boot] [PATCH 1/3] ppc4xx: use CONFIG_PCI_BOOTDELAY instead of private implementation Stefan Roese
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.