void asmlinkage bootblock_c_entry(uint64_t base_timestamp) { device_t dev = NB_DEV_ROOT; /* Set PCI Express BAR */ pci_io_write_config32(dev, PCIEXBAR, CONFIG_MMCONF_BASE_ADDRESS | 1); /* * Clear TSEG register - TSEG register comes out of reset with a * non-zero default value. Clear this register to ensure that there are * no surprises in CBMEM handling. */ pci_write_config32(dev, TSEG, 0); dev = P2SB_DEV; /* BAR and MMIO enable for IOSF, so that GPIOs can be configured */ pci_write_config32(dev, PCI_BASE_ADDRESS_0, CONFIG_IOSF_BASE_ADDRESS); pci_write_config32(dev, PCI_BASE_ADDRESS_1, 0); pci_write_config16(dev, PCI_COMMAND, PCI_COMMAND_MASTER | PCI_COMMAND_MEMORY); /* Decode the ACPI I/O port range for early firmware verification.*/ dev = PMC_DEV; pci_write_config16(dev, PCI_BASE_ADDRESS_4, ACPI_PMIO_BASE); pci_write_config16(dev, PCI_COMMAND, PCI_COMMAND_IO | PCI_COMMAND_MASTER); /* Call lib/bootblock.c main */ bootblock_main_with_timestamp(base_timestamp); }
asmlinkage void bootblock_c_entry(uint64_t base_timestamp) { if (CONFIG(ENABLE_DEBUG_LED_BOOTBLOCK_ENTRY)) light_sd_led(); bootblock_main_with_timestamp(base_timestamp, NULL, 0); }
void main(void) { uint64_t base_timestamp = 0; init_timer(); if (IS_ENABLED(CONFIG_COLLECT_TIMESTAMPS)) base_timestamp = timestamp_get(); bootblock_main_with_timestamp(base_timestamp); }
asmlinkage void bootblock_c_entry_bist(uint64_t base_timestamp, uint32_t bist) { post_code(0x05); /* Halt if there was a built in self test failure */ if (bist) { console_init(); report_bist_failure(bist); } /* Call lib/bootblock.c main */ bootblock_main_with_timestamp(base_timestamp, NULL, 0); }
void asmlinkage bootblock_c_entry(uint32_t tsc_hi, uint32_t tsc_lo) { device_t dev = NB_DEV_ROOT; /* Set PCI Express BAR */ pci_io_write_config32(dev, PCIEXBAR, CONFIG_MMCONF_BASE_ADDRESS | 1); dev = P2SB_DEV; /* BAR and MMIO enable for IOSF, so that GPIOs can be configured */ pci_write_config32(dev, PCI_BASE_ADDRESS_0, CONFIG_IOSF_BASE_ADDRESS); pci_write_config32(dev, PCI_BASE_ADDRESS_1, 0); pci_write_config16(dev, PCI_COMMAND, PCI_COMMAND_MASTER | PCI_COMMAND_MEMORY); /* Call lib/bootblock.c main */ bootblock_main_with_timestamp(((uint64_t)tsc_hi << 32) | tsc_lo); }
asmlinkage void bootblock_c_entry_bist(uint64_t base_timestamp, uint32_t bist) { saved_bist = bist; /* Call lib/bootblock.c main */ bootblock_main_with_timestamp(base_timestamp, NULL, 0); }
void asmlinkage bootblock_c_entry(uint64_t base_timestamp) { /* Call lib/bootblock.c main */ bootblock_main_with_timestamp(base_timestamp); }