[U-Boot] [PATCH v5] ppc4xx: Add GDsys CompactCenter board support.
Wolfgang Denk
wd at denx.de
Mon Jul 27 23:06:50 CEST 2009
Dear Stefan,
In message <1248677388-30459-1-git-send-email-eibach at gdsys.de> Dirk
Eibach wrote:
> Board support for the Guntermann & Drunck CompactCenter and
> DevCon-Center.
> Based on the AMCC Canyonlands board support by Stefan Roese.
...
> +int board_early_init_f(void)
> +{
> + u32 pvr = get_pvr();
> +
> + /*
> + * Setup the interrupt controller polarities, triggers, etc.
> + */
> + mtdcr(uic0sr, 0xffffffff); /* clear all */
> + mtdcr(uic0er, 0x00000000); /* disable all */
> + mtdcr(uic0cr, 0x00000005); /* ATI & UIC1 crit are critical */
> + mtdcr(uic0pr, 0xffffffff); /* per ref-board manual */
> + mtdcr(uic0tr, 0x00000000); /* per ref-board manual */
> + mtdcr(uic0vr, 0x00000000); /* int31 highest, base=0x000 */
> + mtdcr(uic0sr, 0xffffffff); /* clear all */
> +
> + mtdcr(uic1sr, 0xffffffff); /* clear all */
> + mtdcr(uic1er, 0x00000000); /* disable all */
> + mtdcr(uic1cr, 0x00000000); /* all non-critical */
> + mtdcr(uic1pr, 0xffffffff); /* per ref-board manual */
> + mtdcr(uic1tr, 0x00000000); /* per ref-board manual */
> + mtdcr(uic1vr, 0x00000000); /* int31 highest, base=0x000 */
> + mtdcr(uic1sr, 0xffffffff); /* clear all */
> +
> + mtdcr(uic2sr, 0xffffffff); /* clear all */
> + mtdcr(uic2er, 0x00000000); /* disable all */
> + mtdcr(uic2cr, 0x00000000); /* all non-critical */
> + mtdcr(uic2pr, 0xffffffff); /* per ref-board manual */
> + mtdcr(uic2tr, 0x00000000); /* per ref-board manual */
> + mtdcr(uic2vr, 0x00000000); /* int31 highest, base=0x000 */
> + mtdcr(uic2sr, 0xffffffff); /* clear all */
> +
> + mtdcr(uic3sr, 0xffffffff); /* clear all */
> + mtdcr(uic3er, 0x00000000); /* disable all */
> + mtdcr(uic3cr, 0x00000000); /* all non-critical */
> + mtdcr(uic3pr, 0xffffffff); /* per ref-board manual */
> + mtdcr(uic3tr, 0x00000000); /* per ref-board manual */
> + mtdcr(uic3vr, 0x00000000); /* int31 highest, base=0x000 */
> + mtdcr(uic3sr, 0xffffffff); /* clear all */
All these lower case #defines in "include/asm-ppc/ppc4xx-uic.h"
should be cleaned up.
...
> +void pci_target_init(struct pci_controller *hose)
> +{
> + /*
> + * Disable everything
> + */
> + out_le32((void *)PCIX0_PIM0SA, 0); /* disable */
> + out_le32((void *)PCIX0_PIM1SA, 0); /* disable */
> + out_le32((void *)PCIX0_PIM2SA, 0); /* disable */
> + out_le32((void *)PCIX0_EROMBA, 0); /* disable expansion rom */
> +
> + /*
> + * Map all of SDRAM to PCI address 0x0000_0000. Note that the 440
> + * strapping options to not support sizes such as 128/256 MB.
> + */
> + out_le32((void *)PCIX0_PIM0LAL, CONFIG_SYS_SDRAM_BASE);
> + out_le32((void *)PCIX0_PIM0LAH, 0);
> + out_le32((void *)PCIX0_PIM0SA, ~(gd->ram_size - 1) | 1);
> + out_le32((void *)PCIX0_BAR0, 0);
And we should proper C structs in "include/ppc440.h" so we can get
rid of all these nasty casts.
I don't intend to block this patch at this stage, but can you please
put such cleanup on your list for the next release? Thanks.
Best regards,
Wolfgang Denk
--
DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
"What the scientists have in their briefcases is terrifying."
- Nikita Khrushchev
More information about the U-Boot
mailing list