Browse Source

x86: remove legacy ia32, use atom instead

ia32 is legacy and is just an atom, so deduplicate and use generic
atom soc instead.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
pull/69687/head
Anas Nashif 1 year ago committed by Carles Cufi
parent
commit
1be3a9e9d3
  1. 2
      boards/acrn/acrn/Kconfig.acrn
  2. 2
      boards/acrn/acrn/Kconfig.acrn_ehl_crb
  3. 2
      boards/acrn/acrn/acrn.dts
  4. 2
      boards/acrn/acrn/board.yml
  5. 2
      boards/qemu/x86/Kconfig.qemu_x86
  6. 2
      boards/qemu/x86/Kconfig.qemu_x86_64
  7. 2
      boards/qemu/x86/Kconfig.qemu_x86_tiny
  8. 6
      boards/qemu/x86/board.yml
  9. 2
      boards/qemu/x86/qemu_x86.dts
  10. 0
      boards/qemu/x86/qemu_x86_64_atom_nokpti.dts
  11. 2
      boards/qemu/x86/qemu_x86_64_atom_nokpti.yaml
  12. 0
      boards/qemu/x86/qemu_x86_64_atom_nokpti_defconfig
  13. 0
      boards/qemu/x86/qemu_x86_atom_nokpti.dts
  14. 2
      boards/qemu/x86/qemu_x86_atom_nokpti.yaml
  15. 0
      boards/qemu/x86/qemu_x86_atom_nokpti_defconfig
  16. 0
      boards/qemu/x86/qemu_x86_atom_nommu.dts
  17. 2
      boards/qemu/x86/qemu_x86_atom_nommu.yaml
  18. 0
      boards/qemu/x86/qemu_x86_atom_nommu_defconfig
  19. 0
      boards/qemu/x86/qemu_x86_atom_nopae.dts
  20. 2
      boards/qemu/x86/qemu_x86_atom_nopae.yaml
  21. 0
      boards/qemu/x86/qemu_x86_atom_nopae_defconfig
  22. 0
      boards/qemu/x86/qemu_x86_atom_virt.dts
  23. 2
      boards/qemu/x86/qemu_x86_atom_virt.yaml
  24. 0
      boards/qemu/x86/qemu_x86_atom_virt_defconfig
  25. 0
      boards/qemu/x86/qemu_x86_atom_xip.dts
  26. 2
      boards/qemu/x86/qemu_x86_atom_xip.yaml
  27. 0
      boards/qemu/x86/qemu_x86_atom_xip_defconfig
  28. 0
      boards/qemu/x86/qemu_x86_tiny_atom_768.dts
  29. 2
      boards/qemu/x86/qemu_x86_tiny_atom_768.yaml
  30. 0
      boards/qemu/x86/qemu_x86_tiny_atom_768_defconfig
  31. 2
      drivers/timer/Kconfig.x86
  32. 0
      dts/x86/intel/atom.dtsi
  33. 5
      soc/ia32/CMakeLists.txt
  34. 8
      soc/ia32/Kconfig
  35. 13
      soc/ia32/Kconfig.defconfig
  36. 9
      soc/ia32/Kconfig.soc
  37. 13
      soc/ia32/linker.ld
  38. 58
      soc/ia32/soc.h
  39. 3
      soc/ia32/soc.yml
  40. 5
      soc/intel/atom/linker.ld
  41. 5
      tests/kernel/mbox/mbox_api/boards/qemu_x86_tiny_ia32_768.conf
  42. 5
      tests/kernel/mem_protect/stackprot/boards/qemu_x86_tiny_ia32_768.conf
  43. 2
      tests/kernel/threads/dynamic_thread_stack/testcase.yaml
  44. 4
      tests/kernel/xip/testcase.yaml

2
boards/acrn/acrn/Kconfig.acrn

@ -3,4 +3,4 @@ @@ -3,4 +3,4 @@
# SPDX-License-Identifier: Apache-2.0
config BOARD_ACRN
select SOC_IA32
select SOC_ATOM

2
boards/acrn/acrn/Kconfig.acrn_ehl_crb

@ -3,4 +3,4 @@ @@ -3,4 +3,4 @@
# SPDX-License-Identifier: Apache-2.0
config BOARD_ACRN_EHL_CRB
select SOC_IA32
select SOC_ATOM

2
boards/acrn/acrn/acrn.dts

@ -11,7 +11,7 @@ @@ -11,7 +11,7 @@
#define DT_DRAM_SIZE DT_SIZE_K(8192)
#define DT_DRAM_BASE 0
#include <intel/ia32.dtsi>
#include <intel/atom.dtsi>
/ {
model = "ACRN";

2
boards/acrn/acrn/board.yml

@ -2,7 +2,7 @@ boards: @@ -2,7 +2,7 @@ boards:
- name: acrn
socs:
- name: ia32
- name: atom
- name: acrn_ehl_crb
socs:

2
boards/qemu/x86/Kconfig.qemu_x86

@ -3,4 +3,4 @@ @@ -3,4 +3,4 @@
# SPDX-License-Identifier: Apache-2.0
config BOARD_QEMU_X86
select SOC_IA32
select SOC_ATOM

2
boards/qemu/x86/Kconfig.qemu_x86_64

@ -3,4 +3,4 @@ @@ -3,4 +3,4 @@
# SPDX-License-Identifier: Apache-2.0
config BOARD_QEMU_X86_64
select SOC_IA32
select SOC_ATOM

2
boards/qemu/x86/Kconfig.qemu_x86_tiny

@ -3,4 +3,4 @@ @@ -3,4 +3,4 @@
# SPDX-License-Identifier: Apache-2.0
config BOARD_QEMU_X86_TINY
select SOC_IA32
select SOC_ATOM

6
boards/qemu/x86/board.yml

@ -2,7 +2,7 @@ boards: @@ -2,7 +2,7 @@ boards:
- name: qemu_x86
socs:
- name: ia32
- name: atom
variants:
- name: 'nokpti'
- name: 'nommu'
@ -16,12 +16,12 @@ boards: @@ -16,12 +16,12 @@ boards:
- name: qemu_x86_64
socs:
- name: ia32
- name: atom
variants:
- name: 'nokpti'
- name: qemu_x86_tiny
socs:
- name: ia32
- name: atom
variants:
- name: '768'

2
boards/qemu/x86/qemu_x86.dts

@ -12,7 +12,7 @@ @@ -12,7 +12,7 @@
#endif
#define DT_FLASH_SIZE DT_SIZE_K(4096)
#include <intel/ia32.dtsi>
#include <intel/atom.dtsi>
#include <zephyr/dt-bindings/pcie/pcie.h>
/ {

0
boards/qemu/x86/qemu_x86_64_ia32_nokpti.dts → boards/qemu/x86/qemu_x86_64_atom_nokpti.dts

2
boards/qemu/x86/qemu_x86_64_ia32_nokpti.yaml → boards/qemu/x86/qemu_x86_64_atom_nokpti.yaml

@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
identifier: qemu_x86_64/ia32/nokpti
identifier: qemu_x86_64/atom/nokpti
name: QEMU Emulation for X86_64 (KPTI disabled)
type: qemu
arch: x86

0
boards/qemu/x86/qemu_x86_64_ia32_nokpti_defconfig → boards/qemu/x86/qemu_x86_64_atom_nokpti_defconfig

0
boards/qemu/x86/qemu_x86_ia32_nokpti.dts → boards/qemu/x86/qemu_x86_atom_nokpti.dts

2
boards/qemu/x86/qemu_x86_ia32_nokpti.yaml → boards/qemu/x86/qemu_x86_atom_nokpti.yaml

@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
identifier: qemu_x86/ia32/nokpti
identifier: qemu_x86/atom/nokpti
name: QEMU Emulation for X86 (KPTI disabled)
type: qemu
arch: x86

0
boards/qemu/x86/qemu_x86_ia32_nokpti_defconfig → boards/qemu/x86/qemu_x86_atom_nokpti_defconfig

0
boards/qemu/x86/qemu_x86_ia32_nommu.dts → boards/qemu/x86/qemu_x86_atom_nommu.dts

2
boards/qemu/x86/qemu_x86_ia32_nommu.yaml → boards/qemu/x86/qemu_x86_atom_nommu.yaml

@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
identifier: qemu_x86/ia32/nommu
identifier: qemu_x86/atom/nommu
name: QEMU Emulation for X86 (MMU disabled)
type: qemu
arch: x86

0
boards/qemu/x86/qemu_x86_ia32_nommu_defconfig → boards/qemu/x86/qemu_x86_atom_nommu_defconfig

0
boards/qemu/x86/qemu_x86_ia32_nopae.dts → boards/qemu/x86/qemu_x86_atom_nopae.dts

2
boards/qemu/x86/qemu_x86_ia32_nopae.yaml → boards/qemu/x86/qemu_x86_atom_nopae.yaml

@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
identifier: qemu_x86/ia32/nopae
identifier: qemu_x86/atom/nopae
name: QEMU Emulation for X86 (32-bit page tables)
type: qemu
arch: x86

0
boards/qemu/x86/qemu_x86_ia32_nopae_defconfig → boards/qemu/x86/qemu_x86_atom_nopae_defconfig

0
boards/qemu/x86/qemu_x86_ia32_virt.dts → boards/qemu/x86/qemu_x86_atom_virt.dts

2
boards/qemu/x86/qemu_x86_ia32_virt.yaml → boards/qemu/x86/qemu_x86_atom_virt.yaml

@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
identifier: qemu_x86/ia32/virt
identifier: qemu_x86/atom/virt
name: QEMU Emulation for X86 (Run in Virtual Address Space)
type: qemu
arch: x86

0
boards/qemu/x86/qemu_x86_ia32_virt_defconfig → boards/qemu/x86/qemu_x86_atom_virt_defconfig

0
boards/qemu/x86/qemu_x86_ia32_xip.dts → boards/qemu/x86/qemu_x86_atom_xip.dts

2
boards/qemu/x86/qemu_x86_ia32_xip.yaml → boards/qemu/x86/qemu_x86_atom_xip.yaml

@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
identifier: qemu_x86/ia32/xip
identifier: qemu_x86/atom/xip
name: QEMU Emulation for X86 (XIP enabled)
type: qemu
arch: x86

0
boards/qemu/x86/qemu_x86_ia32_xip_defconfig → boards/qemu/x86/qemu_x86_atom_xip_defconfig

0
boards/qemu/x86/qemu_x86_tiny_ia32_768.dts → boards/qemu/x86/qemu_x86_tiny_atom_768.dts

2
boards/qemu/x86/qemu_x86_tiny_ia32_768.yaml → boards/qemu/x86/qemu_x86_tiny_atom_768.yaml

@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
identifier: qemu_x86_tiny/ia32/768
identifier: qemu_x86_tiny/atom/768
name: QEMU Emulation for X86 (small VM, 768KB DRAM)
type: qemu
arch: x86

0
boards/qemu/x86/qemu_x86_tiny_ia32_768_defconfig → boards/qemu/x86/qemu_x86_tiny_atom_768_defconfig

2
drivers/timer/Kconfig.x86

@ -5,7 +5,7 @@ @@ -5,7 +5,7 @@
choice
prompt "Default System Timer"
default HPET_TIMER if SOC_FAMILY_INTEL_ISH || SOC_IA32 || SOC_LAKEMONT
default HPET_TIMER if SOC_FAMILY_INTEL_ISH || SOC_ATOM || SOC_LAKEMONT
default APIC_TSC_DEADLINE_TIMER
depends on X86
help

0
dts/x86/intel/ia32.dtsi → dts/x86/intel/atom.dtsi

5
soc/ia32/CMakeLists.txt

@ -1,5 +0,0 @@ @@ -1,5 +0,0 @@
# SPDX-License-Identifier: Apache-2.0
zephyr_include_directories(.)
set(SOC_LINKER_SCRIPT ${CMAKE_CURRENT_SOURCE_DIR}/linker.ld CACHE INTERNAL "")

8
soc/ia32/Kconfig

@ -1,8 +0,0 @@ @@ -1,8 +0,0 @@
# SPDX-License-Identifier: Apache-2.0
config SOC_IA32
select X86
select CPU_ATOM
select X86_CPU_HAS_MMX
select X86_CPU_HAS_SSE
select ARCH_HAS_RESERVED_PAGE_FRAMES if SRAM_BASE_ADDRESS = 0

13
soc/ia32/Kconfig.defconfig

@ -1,13 +0,0 @@ @@ -1,13 +0,0 @@
# Generic PC platform configuration options
# Copyright (c) 2014-2015 Wind River Systems, Inc.
# Copyright (c) 2024 Intel Corporation
#
# SPDX-License-Identifier: Apache-2.0
if SOC_IA32
config SYS_CLOCK_HW_CYCLES_PER_SEC
default 25000000 if HPET_TIMER
endif

9
soc/ia32/Kconfig.soc

@ -1,9 +0,0 @@ @@ -1,9 +0,0 @@
# Copyright (c) 2024 Intel Corporation
#
# SPDX-License-Identifier: Apache-2.0
config SOC_IA32
bool
config SOC
default "ia32" if SOC_IA32

13
soc/ia32/linker.ld

@ -1,13 +0,0 @@ @@ -1,13 +0,0 @@
/*
* Copyright (c) 2011-2014, Wind River Systems, Inc.
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <zephyr/arch/x86/memory.ld>
#ifdef CONFIG_X86_64
#include <zephyr/arch/x86/intel64/linker.ld>
#else
#include <zephyr/arch/x86/ia32/linker.ld>
#endif

58
soc/ia32/soc.h

@ -1,58 +0,0 @@ @@ -1,58 +0,0 @@
/*
* Copyright (c) 2010-2015, Wind River Systems, Inc.
*
* SPDX-License-Identifier: Apache-2.0
*/
/**
* @file
* @brief Board configuration macros for the ia32 platform
*
* This header file is used to specify and describe board-level aspects for
* the 'ia32' platform.
*/
#ifndef __SOC_H_
#define __SOC_H_
#include <zephyr/sys/util.h>
#ifndef _ASMLANGUAGE
#include <zephyr/device.h>
#include <zephyr/random/random.h>
#endif
/* PCI definitions */
#define PCI_BUS_NUMBERS 1
#define PCI_CTRL_ADDR_REG 0xCF8
#define PCI_CTRL_DATA_REG 0xCFC
#define PCI_INTA 1
#define PCI_INTB 2
#define PCI_INTC 3
#define PCI_INTD 4
/**
*
* @brief Convert PCI interrupt PIN to IRQ
*
* This file is only used by QEMU, which emulates the i440fx chipset.
* INTx are mapped to IRQs 10 and 11 after being swizzled.
*
* @return IRQ number, -1 if the result is incorrect
*
*/
static inline int pci_pin2irq(int bus, int dev, int pin)
{
ARG_UNUSED(bus);
if ((pin < PCI_INTA) || (pin > PCI_INTD)) {
return -1;
}
return 10 + (((pin + dev - 1) >> 1) & 1);
}
#endif /* __SOC_H_ */

3
soc/ia32/soc.yml

@ -1,3 +0,0 @@ @@ -1,3 +0,0 @@
comment: "Generic IA32 SoC"
socs:
- name: ia32

5
soc/intel/atom/linker.ld

@ -5,4 +5,9 @@ @@ -5,4 +5,9 @@
*/
#include <zephyr/arch/x86/memory.ld>
#ifdef CONFIG_X86_64
#include <zephyr/arch/x86/intel64/linker.ld>
#else
#include <zephyr/arch/x86/ia32/linker.ld>
#endif

5
tests/kernel/mbox/mbox_api/boards/qemu_x86_tiny_ia32_768.conf

@ -1,5 +0,0 @@ @@ -1,5 +0,0 @@
# Copyright (c) 2022 Intel Corporation
# SPDX-License-Identifier: Apache-2.0
# Need quite some space for coverage.
CONFIG_TEST_EXTRA_STACK_SIZE=1024

5
tests/kernel/mem_protect/stackprot/boards/qemu_x86_tiny_ia32_768.conf

@ -1,5 +0,0 @@ @@ -1,5 +0,0 @@
# Copyright 2022 Intel Corporation
# SPDX-License-Identifier: Apache-2.0
# This is needed for coverage.
CONFIG_MAIN_STACK_SIZE=4096

2
tests/kernel/threads/dynamic_thread_stack/testcase.yaml

@ -3,7 +3,7 @@ common: @@ -3,7 +3,7 @@ common:
min_ram: 32
integration_platforms:
- qemu_x86
- qemu_x86/ia32/nommu
- qemu_x86/atom/nommu
- qemu_x86_64
- qemu_cortex_a53
- qemu_cortex_a53//smp

4
tests/kernel/xip/testcase.yaml

@ -6,7 +6,7 @@ tests: @@ -6,7 +6,7 @@ tests:
- xip
integration_platforms:
- qemu_arc_em
- qemu_x86/ia32/xip
- qemu_x86/atom/xip
arch.common.xip.minimallibc:
filter: CONFIG_XIP and CONFIG_MINIMAL_LIBC_SUPPORTED
tags:
@ -14,6 +14,6 @@ tests: @@ -14,6 +14,6 @@ tests:
- xip
integration_platforms:
- qemu_arc_em
- qemu_x86/ia32/xip
- qemu_x86/atom/xip
extra_configs:
- CONFIG_MINIMAL_LIBC=y

Loading…
Cancel
Save