Browse Source

soc: convert ite_ec to hwmv2

Convert the ite_ec soc to the hardware model v2.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
pull/69687/head
Fabio Baltieri 1 year ago committed by Carles Cufi
parent
commit
4a6e286a3b
  1. 2
      MAINTAINERS.yml
  2. 0
      soc/ite/ec/CMakeLists.txt
  3. 2
      soc/ite/ec/Kconfig
  4. 2
      soc/ite/ec/Kconfig.defconfig
  5. 10
      soc/ite/ec/Kconfig.soc
  6. 0
      soc/ite/ec/common/CMakeLists.txt
  7. 0
      soc/ite/ec/common/check_regs.c
  8. 0
      soc/ite/ec/common/chip_chipregs.h
  9. 0
      soc/ite/ec/common/pinctrl_soc.h
  10. 0
      soc/ite/ec/common/policy.c
  11. 0
      soc/ite/ec/common/power.c
  12. 0
      soc/ite/ec/common/soc_common.h
  13. 0
      soc/ite/ec/common/soc_common_irq.c
  14. 0
      soc/ite/ec/common/soc_dt.h
  15. 0
      soc/ite/ec/common/soc_espi.h
  16. 0
      soc/ite/ec/common/soc_irq.S
  17. 0
      soc/ite/ec/common/vector.S
  18. 6
      soc/ite/ec/it8xxx2/CMakeLists.txt
  19. 31
      soc/ite/ec/it8xxx2/Kconfig
  20. 3
      soc/ite/ec/it8xxx2/Kconfig.defconfig.it81202bx
  21. 3
      soc/ite/ec/it8xxx2/Kconfig.defconfig.it81202cx
  22. 3
      soc/ite/ec/it8xxx2/Kconfig.defconfig.it81302bx
  23. 3
      soc/ite/ec/it8xxx2/Kconfig.defconfig.it81302cx
  24. 3
      soc/ite/ec/it8xxx2/Kconfig.defconfig.it82002aw
  25. 3
      soc/ite/ec/it8xxx2/Kconfig.defconfig.it82202ax
  26. 3
      soc/ite/ec/it8xxx2/Kconfig.defconfig.it82302ax
  27. 2
      soc/ite/ec/it8xxx2/Kconfig.defconfig.series
  28. 49
      soc/ite/ec/it8xxx2/Kconfig.soc
  29. 0
      soc/ite/ec/it8xxx2/__arithmetic.S
  30. 0
      soc/ite/ec/it8xxx2/ilm.c
  31. 0
      soc/ite/ec/it8xxx2/ilm.h
  32. 0
      soc/ite/ec/it8xxx2/linker.ld
  33. 0
      soc/ite/ec/it8xxx2/soc.c
  34. 0
      soc/ite/ec/it8xxx2/soc.h
  35. 10
      soc/ite/ec/soc.yml
  36. 17
      soc/soc_legacy/riscv/ite_ec/Kconfig
  37. 13
      soc/soc_legacy/riscv/ite_ec/it8xxx2/Kconfig.series
  38. 4
      tests/drivers/gpio/gpio_ite_it8xxx2_v2/CMakeLists.txt
  39. 2
      tests/drivers/gpio/gpio_ite_it8xxx2_v2/include/chip_chipregs.h

2
MAINTAINERS.yml

@ -3550,7 +3550,7 @@ ITE Platforms: @@ -3550,7 +3550,7 @@ ITE Platforms:
- drivers/*/*_ite_*
- dts/bindings/*/*ite*
- dts/riscv/ite/
- soc/riscv/ite_ec/
- soc/ite/
labels:
- "platform: ITE"

0
soc/soc_legacy/riscv/ite_ec/CMakeLists.txt → soc/ite/ec/CMakeLists.txt

2
soc/soc_legacy/riscv/ite_ec/Kconfig.soc → soc/ite/ec/Kconfig

@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
# Copyright (c) 2020 ITE Corporation. All Rights Reserved.
# SPDX-License-Identifier: Apache-2.0
source "soc/soc_legacy/riscv/ite_ec/*/Kconfig.series"
rsource "*/Kconfig"

2
soc/soc_legacy/riscv/ite_ec/Kconfig.defconfig → soc/ite/ec/Kconfig.defconfig

@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
# Copyright (c) 2020 ITE Corporation. All Rights Reserved.
# SPDX-License-Identifier: Apache-2.0
source "soc/soc_legacy/riscv/ite_ec/*/Kconfig.defconfig.series"
rsource "*/Kconfig.defconfig.series"

10
soc/ite/ec/Kconfig.soc

@ -0,0 +1,10 @@ @@ -0,0 +1,10 @@
# Copyright (c) 2020 ITE Corporation. All Rights Reserved.
# SPDX-License-Identifier: Apache-2.0
config SOC_FAMILY_ITE_EC
bool
config SOC_FAMILY
default "ite_ec" if SOC_FAMILY_ITE_EC
rsource "*/Kconfig.soc"

0
soc/soc_legacy/riscv/ite_ec/common/CMakeLists.txt → soc/ite/ec/common/CMakeLists.txt

0
soc/soc_legacy/riscv/ite_ec/common/check_regs.c → soc/ite/ec/common/check_regs.c

0
soc/soc_legacy/riscv/ite_ec/common/chip_chipregs.h → soc/ite/ec/common/chip_chipregs.h

0
soc/soc_legacy/riscv/ite_ec/common/pinctrl_soc.h → soc/ite/ec/common/pinctrl_soc.h

0
soc/soc_legacy/riscv/ite_ec/common/policy.c → soc/ite/ec/common/policy.c

0
soc/soc_legacy/riscv/ite_ec/common/power.c → soc/ite/ec/common/power.c

0
soc/soc_legacy/riscv/ite_ec/common/soc_common.h → soc/ite/ec/common/soc_common.h

0
soc/soc_legacy/riscv/ite_ec/common/soc_common_irq.c → soc/ite/ec/common/soc_common_irq.c

0
soc/soc_legacy/riscv/ite_ec/common/soc_dt.h → soc/ite/ec/common/soc_dt.h

0
soc/soc_legacy/riscv/ite_ec/common/soc_espi.h → soc/ite/ec/common/soc_espi.h

0
soc/soc_legacy/riscv/ite_ec/common/soc_irq.S → soc/ite/ec/common/soc_irq.S

0
soc/soc_legacy/riscv/ite_ec/common/vector.S → soc/ite/ec/common/vector.S

6
soc/soc_legacy/riscv/ite_ec/it8xxx2/CMakeLists.txt → soc/ite/ec/it8xxx2/CMakeLists.txt

@ -1,6 +1,6 @@ @@ -1,6 +1,6 @@
zephyr_sources(
soc.c
)
zephyr_sources(soc.c)
zephyr_include_directories(.)
zephyr_library_sources_ifndef(CONFIG_RISCV_ISA_EXT_M __arithmetic.S)
zephyr_sources_ifdef(CONFIG_SOC_IT8XXX2_USE_ILM ilm.c)

31
soc/soc_legacy/riscv/ite_ec/it8xxx2/Kconfig.soc → soc/ite/ec/it8xxx2/Kconfig

@ -1,12 +1,11 @@ @@ -1,12 +1,11 @@
# Copyright (c) 2020 ITE Corporation. All Rights Reserved.
# SPDX-License-Identifier: Apache-2.0
choice
prompt "ITE IT8XXX2 system implementation"
depends on SOC_SERIES_ITE_IT8XXX2
config SOC_SERIES_ITE_IT8XXX2
select CPU_HAS_FPU if "$(ZEPHYR_TOOLCHAIN_VARIANT)" != "zephyr" || RISCV_ISA_EXT_M
select HAS_PM
config SOC_IT8XXX2
bool "ITE IT8XXX2 system implementation"
select RISCV
select ATOMIC_OPERATIONS_BUILTIN
select RISCV_ISA_RV32I
@ -17,12 +16,6 @@ config SOC_IT8XXX2 @@ -17,12 +16,6 @@ config SOC_IT8XXX2
select RISCV_ISA_EXT_M if !(SOC_IT81302_BX || SOC_IT81202_BX)
select RISCV_ISA_EXT_A
select RISCV_ISA_EXT_C
select FLASH
select FLASH_HAS_PAGE_LAYOUT
select FLASH_HAS_DRIVER_ENABLED
select HAS_FLASH_LOAD_OFFSET
endchoice
config SOC_IT8XXX2_REG_SET_V1
bool
@ -36,48 +29,34 @@ config SOC_IT8XXX2_REG_SET_V2 @@ -36,48 +29,34 @@ config SOC_IT8XXX2_REG_SET_V2
This option is selected by a variable of which soc, and will
determine the register for the IT82xx2 specification.
if SOC_IT8XXX2
choice IT8XXX2_SERIES
prompt "IT8XXX2 Series"
default SOC_IT81302_BX
config SOC_IT81302_BX
bool "IT81302 BX version"
select SOC_IT8XXX2_REG_SET_V1
config SOC_IT81202_BX
bool "IT81202 BX version"
select SOC_IT8XXX2_REG_SET_V1
config SOC_IT81302_CX
bool "IT81302 CX version"
select SOC_IT8XXX2_REG_SET_V1
config SOC_IT81202_CX
bool "IT81202 CX version"
select SOC_IT8XXX2_REG_SET_V1
config SOC_IT82202_AX
bool "IT82202 AX version"
select SOC_IT8XXX2_REG_SET_V2
select SOC_IT8XXX2_EC_BUS_24MHZ if !DT_HAS_ITE_IT82XX2_USB_ENABLED
config SOC_IT82302_AX
bool "IT82302 AX version"
select SOC_IT8XXX2_REG_SET_V2
select SOC_IT8XXX2_EC_BUS_24MHZ if !DT_HAS_ITE_IT82XX2_USB_ENABLED
config SOC_IT82002_AW
bool "IT82002 AW version"
select SOC_IT8XXX2_REG_SET_V2
select SOC_IT8XXX2_EC_BUS_24MHZ if !DT_HAS_ITE_IT82XX2_USB_ENABLED
endchoice
config SOC_IT8XXX2_PLL_FLASH_48M
bool "Flash frequency is 48MHz"
default y
select FLASH
help
Change frequency of PLL, CPU, and flash to 48MHz during initialization.
@ -169,5 +148,3 @@ config ILM_MAX_SIZE @@ -169,5 +148,3 @@ config ILM_MAX_SIZE
int "ILM Size in kB"
default 60 if SOC_IT81202_CX || SOC_IT81302_CX
default SRAM_SIZE
endif # SOC_IT8XXX2

3
soc/soc_legacy/riscv/ite_ec/it8xxx2/Kconfig.defconfig.it81202bx → soc/ite/ec/it8xxx2/Kconfig.defconfig.it81202bx

@ -3,9 +3,6 @@ @@ -3,9 +3,6 @@
if SOC_IT81202_BX
config SOC
default "it81202bx"
config SOC_IT8XXX2_GPIO_GROUP_K_L_DEFAULT_PULL_DOWN
default y

3
soc/soc_legacy/riscv/ite_ec/it8xxx2/Kconfig.defconfig.it81202cx → soc/ite/ec/it8xxx2/Kconfig.defconfig.it81202cx

@ -3,9 +3,6 @@ @@ -3,9 +3,6 @@
if SOC_IT81202_CX
config SOC
default "it81202cx"
config SOC_IT8XXX2_GPIO_GROUP_K_L_DEFAULT_PULL_DOWN
default y

3
soc/soc_legacy/riscv/ite_ec/it8xxx2/Kconfig.defconfig.it81302bx → soc/ite/ec/it8xxx2/Kconfig.defconfig.it81302bx

@ -3,9 +3,6 @@ @@ -3,9 +3,6 @@
if SOC_IT81302_BX
config SOC
default "it81302bx"
config SOC_IT8XXX2_GPIO_GROUP_K_L_DEFAULT_PULL_DOWN
default n

3
soc/soc_legacy/riscv/ite_ec/it8xxx2/Kconfig.defconfig.it81302cx → soc/ite/ec/it8xxx2/Kconfig.defconfig.it81302cx

@ -3,9 +3,6 @@ @@ -3,9 +3,6 @@
if SOC_IT81302_CX
config SOC
default "it81302cx"
config SOC_IT8XXX2_GPIO_GROUP_K_L_DEFAULT_PULL_DOWN
default n

3
soc/soc_legacy/riscv/ite_ec/it8xxx2/Kconfig.defconfig.it82002aw → soc/ite/ec/it8xxx2/Kconfig.defconfig.it82002aw

@ -3,9 +3,6 @@ @@ -3,9 +3,6 @@
if SOC_IT82002_AW
config SOC
default "it82002aw"
config SOC_IT8XXX2_GPIO_GROUP_K_L_DEFAULT_PULL_DOWN
default y

3
soc/soc_legacy/riscv/ite_ec/it8xxx2/Kconfig.defconfig.it82202ax → soc/ite/ec/it8xxx2/Kconfig.defconfig.it82202ax

@ -3,9 +3,6 @@ @@ -3,9 +3,6 @@
if SOC_IT82202_AX
config SOC
default "it82202ax"
config SOC_IT8XXX2_GPIO_GROUP_K_L_DEFAULT_PULL_DOWN
default y

3
soc/soc_legacy/riscv/ite_ec/it8xxx2/Kconfig.defconfig.it82302ax → soc/ite/ec/it8xxx2/Kconfig.defconfig.it82302ax

@ -3,7 +3,4 @@ @@ -3,7 +3,4 @@
if SOC_IT82302_AX
config SOC
default "it82302ax"
endif

2
soc/soc_legacy/riscv/ite_ec/it8xxx2/Kconfig.defconfig.series → soc/ite/ec/it8xxx2/Kconfig.defconfig.series

@ -54,6 +54,6 @@ config GEN_SW_ISR_TABLE @@ -54,6 +54,6 @@ config GEN_SW_ISR_TABLE
config RISCV_SOC_INTERRUPT_INIT
default y
source "soc/soc_legacy/riscv/ite_ec/it8xxx2/Kconfig.defconfig.it8*"
rsource "Kconfig.defconfig.it8*"
endif # SOC_SERIES_ITE_IT8XXX2

49
soc/ite/ec/it8xxx2/Kconfig.soc

@ -0,0 +1,49 @@ @@ -0,0 +1,49 @@
# Copyright (c) 2020 ITE Corporation. All Rights Reserved.
# SPDX-License-Identifier: Apache-2.0
config SOC_SERIES_ITE_IT8XXX2
bool
select SOC_FAMILY_ITE_EC
help
Enable support for ITE IT8XXX2
config SOC_IT8XXX2
bool
select SOC_SERIES_ITE_IT8XXX2
config SOC_IT81302_BX
bool
select SOC_IT8XXX2
config SOC_IT81202_BX
bool
select SOC_IT8XXX2
config SOC_IT81302_CX
bool
select SOC_IT8XXX2
config SOC_IT81202_CX
bool
select SOC_IT8XXX2
config SOC_IT82202_AX
bool
select SOC_IT8XXX2
config SOC_IT82302_AX
bool
select SOC_IT8XXX2
config SOC_IT82002_AW
bool
select SOC_IT8XXX2
config SOC
default "it81202bx" if SOC_IT81202_BX
default "it81202cx" if SOC_IT81202_CX
default "it81302bx" if SOC_IT81302_BX
default "it81302cx" if SOC_IT81302_CX
default "it82002aw" if SOC_IT82002_AW
default "it82202ax" if SOC_IT82202_AX
default "it82302ax" if SOC_IT82302_AX

0
soc/soc_legacy/riscv/ite_ec/it8xxx2/__arithmetic.S → soc/ite/ec/it8xxx2/__arithmetic.S

0
soc/soc_legacy/riscv/ite_ec/it8xxx2/ilm.c → soc/ite/ec/it8xxx2/ilm.c

0
soc/soc_legacy/riscv/ite_ec/it8xxx2/ilm.h → soc/ite/ec/it8xxx2/ilm.h

0
soc/soc_legacy/riscv/ite_ec/it8xxx2/linker.ld → soc/ite/ec/it8xxx2/linker.ld

0
soc/soc_legacy/riscv/ite_ec/it8xxx2/soc.c → soc/ite/ec/it8xxx2/soc.c

0
soc/soc_legacy/riscv/ite_ec/it8xxx2/soc.h → soc/ite/ec/it8xxx2/soc.h

10
soc/ite/ec/soc.yml

@ -0,0 +1,10 @@ @@ -0,0 +1,10 @@
series:
- name: it8xxxx
socs:
- name: it81202bx
- name: it81202cx
- name: it81302bx
- name: it81302cx
- name: it82002aw
- name: it82202ax
- name: it82302ax

17
soc/soc_legacy/riscv/ite_ec/Kconfig

@ -1,17 +0,0 @@ @@ -1,17 +0,0 @@
# Copyright (c) 2020 ITE Corporation. All Rights Reserved.
# SPDX-License-Identifier: Apache-2.0
config SOC_FAMILY_ITE_EC
bool
help
ITE Embedded Controller SoC family
if SOC_FAMILY_ITE_EC
config SOC_FAMILY
string
default "ite_ec"
source "soc/soc_legacy/riscv/ite_ec/*/Kconfig.soc"
endif # SOC_FAMILY_ITE_EC

13
soc/soc_legacy/riscv/ite_ec/it8xxx2/Kconfig.series

@ -1,13 +0,0 @@ @@ -1,13 +0,0 @@
# Copyright (c) 2020 ITE Corporation. All Rights Reserved.
# SPDX-License-Identifier: Apache-2.0
config SOC_SERIES_ITE_IT8XXX2
bool "ITE IT8XXX2 implementation"
#depends on RISCV
# RV32IAFC is an uncommon configuration which is not supported by
# default in most toolchains, causing link-time errors.
select CPU_HAS_FPU if "$(ZEPHYR_TOOLCHAIN_VARIANT)" != "zephyr" || RISCV_ISA_EXT_M
select SOC_FAMILY_ITE_EC
select HAS_PM
help
Enable support for ITE IT8XXX2

4
tests/drivers/gpio/gpio_ite_it8xxx2_v2/CMakeLists.txt

@ -13,8 +13,8 @@ target_include_directories(app PRIVATE @@ -13,8 +13,8 @@ target_include_directories(app PRIVATE
zephyr_include_directories(
include
${ZEPHYR_BASE}/soc/soc_legacy/riscv/ite_ec/common
${ZEPHYR_BASE}/soc/soc_legacy/riscv/ite_ec/it8xxx2
${ZEPHYR_BASE}/soc/ite/ec/common
${ZEPHYR_BASE}/soc/ite/ec/it8xxx2
)
target_sources(app

2
tests/drivers/gpio/gpio_ite_it8xxx2_v2/include/chip_chipregs.h

@ -4,7 +4,7 @@ @@ -4,7 +4,7 @@
* SPDX-License-Identifier: Apache-2.0
*/
#include <../soc/soc_legacy/riscv/ite_ec/common/chip_chipregs.h>
#include <../soc/ite/ec/common/chip_chipregs.h>
/*
* Macros for emulated hardware registers access.

Loading…
Cancel
Save