[coreboot] [PATCH] Janitor Tasks - coreboot cleanup
Uwe Hermann
uwe at hermann-uwe.de
Mon Feb 22 16:45:22 CET 2010
On Sun, Feb 21, 2010 at 08:11:51AM +0100, Stefan Reinauer wrote:
> This is a general cleanup patch
> - drop include/part and move files to include/
> - get rid lots of warnings
> - make resource allocator happy with w83627thg
> - trivial cbmem resume fix
> - fix payload and log level settings in abuild
> - fix kontron mptable for virtual wire mode
> - drop some dead includes and dead code.
>
> Signed-off-by: Stefan Reinauer <stepan at coresystems.de>
Nice!
> --- src/southbridge/intel/i82801gx/i82801gx_pcie.c (revision 5133)
> +++ src/southbridge/intel/i82801gx/i82801gx_pcie.c (working copy)
> @@ -75,7 +75,7 @@
> reg16 |= (1 << 6);
> pci_write_config16(dev, 0x50, reg16);
>
> -#if EVEN_MORE_DEBUG
> +#ifdef EVEN_MORE_DEBUG
Maybe this should be merged into the general prink infrastructure
as SPEW messages etc?
> --- src/devices/pnp_device.c (revision 5133)
> +++ src/devices/pnp_device.c (working copy)
> @@ -240,7 +240,25 @@
> resource = new_resource(dev, PNP_IDX_DRQ1);
> resource->size = 1;
> resource->flags |= IORESOURCE_DRQ;
> - }
> + }
> + /* These are not IRQs, but set the flag to have the
> + * resource allocator do the right thing
> + */
Can you elaborate here? What does "do the right thing" do exactly?
> + if (info->flags & PNP_EN) {
> + resource = new_resource(dev, PNP_IDX_EN);
> + resource->size = 1;
> + resource->flags |= IORESOURCE_IRQ;
> + }
> + if (info->flags & PNP_MSC0) {
> + resource = new_resource(dev, PNP_IDX_MSC0);
> + resource->size = 1;
> + resource->flags |= IORESOURCE_IRQ;
> + }
> + if (info->flags & PNP_MSC1) {
> + resource = new_resource(dev, PNP_IDX_MSC1);
> + resource->size = 1;
> + resource->flags |= IORESOURCE_IRQ;
> + }
> }
> --- src/include/fallback.h (revision 0)
> +++ src/include/fallback.h (revision 0)
> @@ -0,0 +1,18 @@
> +#ifndef FALLBACK_H
> +#define FALLBACK_H
Please add the usual license header while we're at it.
> --- src/include/watchdog.h (revision 0)
> +++ src/include/watchdog.h (revision 0)
> @@ -0,0 +1,10 @@
> +#ifndef WATCHDOG_H
> +#define WATCHDOG_H
Ditto.
> --- src/include/reset.h (revision 0)
> +++ src/include/reset.h (revision 0)
> @@ -0,0 +1,11 @@
> +#ifndef RESET_H
> +#define RESET_H
Ditto.
> --- src/lib/cbmem.c (revision 5133)
> +++ src/lib/cbmem.c (working copy)
> @@ -184,7 +184,7 @@
> if (acpi_slp_type == 3) {
> if (!cbmem_reinit(high_tables_base)) {
> /* Something went wrong, our high memory area got wiped */
> - acpi_slp_type == 0;
> + acpi_slp_type = 0;
Nice catch!
> --- src/cpu/intel/model_6ex/cache_as_ram_disable.c (revision 5133)
> +++ src/cpu/intel/model_6ex/cache_as_ram_disable.c (working copy)
> @@ -54,8 +54,7 @@
> real_main(bist);
>
> /* No servicable parts below this line .. */
> -
> -#if CAR_DEBUG
> +#ifdef CAR_DEBUG
This should also use the usualy printk infrastructure, or (if it should
remain independent of the loglevel) become a kconfig option in the Debug menu.
> - /* Firewire 4:0.0 */
> + /* Internal PCI bus (Firewire, PCI slot) */
> if (firewire) {
> - smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, firewire_bus, 0x0, 0x2, 0x10);
> + smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, firewire_bus, 0x0, ioapic_id, 0x10);
> + smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, firewire_bus, 0x4, ioapic_id, 0x14);
> }
>
> if (riser) {
> /* Old riser card */
> // riser slot top 5:8.0
> - smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, riser_bus, 0x20, 0x2, 0x14);
> + smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, riser_bus, 0x20, ioapic_id, 0x14);
> // riser slot middle 5:9.0
> - smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, riser_bus, 0x24, 0x2, 0x15);
> + smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, riser_bus, 0x24, ioapic_id, 0x15);
> // riser slot bottom 5:a.0
> - smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, riser_bus, 0x28, 0x2, 0x16);
> + smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, riser_bus, 0x28, ioapic_id, 0x16);
>
> /* New Riser Card */
> - smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, riser_bus, 0x30, 0x2, 0x14);
> - smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, riser_bus, 0x34, 0x2, 0x15);
> - smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, riser_bus, 0x38, 0x2, 0x16);
> + smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, riser_bus, 0x30, ioapic_id, 0x14);
> + smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, riser_bus, 0x34, ioapic_id, 0x15);
> + smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, riser_bus, 0x38, ioapic_id, 0x16);
> }
>
> + /* PCIe slot */
> + smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, 0x1, 0x0, ioapic_id, 0x10);
> + smp_write_intsrc(mc, mp_INT, MP_IRQ_TRIGGER_LEVEL|MP_IRQ_POLARITY_LOW, 0x1, 0x1, ioapic_id, 0x11);
Some of the above looks like actual improved board support (not purely
cosmetic), can you please update the board wiki page accordingly?
> --- src/arch/i386/boot/pirq_routing.c (revision 5133)
> +++ src/arch/i386/boot/pirq_routing.c (working copy)
> @@ -3,7 +3,11 @@
> #include <string.h>
> #include <device/pci.h>
>
> -#if (CONFIG_DEBUG==1 && CONFIG_GENERATE_PIRQ_TABLE==1)
> +#ifndef CONFIG_IRQ_SLOT_COUNT
> +#warning "CONFIG_IRQ_SLOT_COUNT is not defined. PIRQ won't work correctly."
> +#endif
[...]
> -#if (CONFIG_PIRQ_ROUTE==1 && CONFIG_GENERATE_PIRQ_TABLE==1)
> +#if CONFIG_PIRQ_ROUTE
Is this intentional? That eliminates the CONFIG_GENERATE_PIRQ_TABLE check,
which is being used in the code base IIRC.
> --- src/arch/i386/include/arch/coreboot_tables.h (revision 0)
> +++ src/arch/i386/include/arch/coreboot_tables.h (revision 0)
> @@ -0,0 +1,25 @@
> +#ifndef COREBOOT_TABLE_H
> +#define COREBOOT_TABLE_H
[...]
> +#endif /* COREBOOT_TABLE_H */
You renamed coreboot_table.h to coreboot_tables.h here, so the define
name should also match.
Uwe.
--
http://www.hermann-uwe.de | http://www.randomprojects.org
http://www.crazy-hacks.org | http://www.unmaintained-free-software.org
More information about the coreboot
mailing list