2015-12-17 13:03:40 +08:00
|
|
|
/*
|
|
|
|
* Copyright (c) 2011-2015, Wind River Systems, Inc.
|
|
|
|
*
|
2017-01-19 09:01:01 +08:00
|
|
|
* SPDX-License-Identifier: Apache-2.0
|
2015-12-17 13:03:40 +08:00
|
|
|
*/
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @file
|
|
|
|
* @brief System/hardware module for the ia32 platform
|
|
|
|
*
|
|
|
|
* This module provides routines to initialize and support board-level hardware
|
|
|
|
* for the ia32 platform.
|
|
|
|
*/
|
|
|
|
|
2016-12-23 21:35:34 +08:00
|
|
|
#include <kernel.h>
|
2015-12-17 21:54:35 +08:00
|
|
|
#include "soc.h"
|
2015-12-17 13:03:40 +08:00
|
|
|
#include <uart.h>
|
|
|
|
#include <device.h>
|
|
|
|
#include <init.h>
|
2018-04-19 17:15:54 +08:00
|
|
|
|
|
|
|
#ifdef CONFIG_X86_MMU
|
|
|
|
/* loapic */
|
|
|
|
MMU_BOOT_REGION(CONFIG_LOAPIC_BASE_ADDRESS, 4*1024, MMU_ENTRY_WRITE);
|
|
|
|
|
|
|
|
/*ioapic */
|
2018-11-13 22:15:23 +08:00
|
|
|
MMU_BOOT_REGION(DT_IOAPIC_BASE_ADDRESS, 1024*1024, MMU_ENTRY_WRITE);
|
2018-04-19 17:15:54 +08:00
|
|
|
|
|
|
|
/* peripherals */
|
|
|
|
MMU_BOOT_REGION(0xB0000000, 128*1024, MMU_ENTRY_WRITE);
|
|
|
|
|
|
|
|
/* SCSS system control subsystem */
|
|
|
|
MMU_BOOT_REGION(0xB0800000, 16*1024, MMU_ENTRY_WRITE);
|
|
|
|
|
|
|
|
/* DMA */
|
|
|
|
MMU_BOOT_REGION(0xB0700000, 4*1024, MMU_ENTRY_WRITE);
|
|
|
|
|
|
|
|
/* USB */
|
|
|
|
MMU_BOOT_REGION(0xB0500000, 256*1024, MMU_ENTRY_WRITE);
|
|
|
|
|
|
|
|
#ifdef CONFIG_HPET_TIMER
|
|
|
|
MMU_BOOT_REGION(CONFIG_HPET_TIMER_BASE_ADDRESS, KB(4), MMU_ENTRY_WRITE);
|
|
|
|
#endif /* CONFIG_HPET_TIMER */
|
|
|
|
|
|
|
|
#endif /* CONFIG_X86_MMU */
|