soc: convert ite_ec to hwmv2
Convert the ite_ec soc to the hardware model v2. Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
This commit is contained in:
committed by
Carles Cufi
parent
12e375f826
commit
4a6e286a3b
@@ -3550,7 +3550,7 @@ ITE Platforms:
|
|||||||
- drivers/*/*_ite_*
|
- drivers/*/*_ite_*
|
||||||
- dts/bindings/*/*ite*
|
- dts/bindings/*/*ite*
|
||||||
- dts/riscv/ite/
|
- dts/riscv/ite/
|
||||||
- soc/riscv/ite_ec/
|
- soc/ite/
|
||||||
labels:
|
labels:
|
||||||
- "platform: ITE"
|
- "platform: ITE"
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
# Copyright (c) 2020 ITE Corporation. All Rights Reserved.
|
# Copyright (c) 2020 ITE Corporation. All Rights Reserved.
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
source "soc/soc_legacy/riscv/ite_ec/*/Kconfig.series"
|
rsource "*/Kconfig"
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
# Copyright (c) 2020 ITE Corporation. All Rights Reserved.
|
# Copyright (c) 2020 ITE Corporation. All Rights Reserved.
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
# 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
Normal file
10
soc/ite/ec/Kconfig.soc
Normal file
@@ -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"
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
zephyr_sources(
|
zephyr_sources(soc.c)
|
||||||
soc.c
|
zephyr_include_directories(.)
|
||||||
)
|
|
||||||
zephyr_library_sources_ifndef(CONFIG_RISCV_ISA_EXT_M __arithmetic.S)
|
zephyr_library_sources_ifndef(CONFIG_RISCV_ISA_EXT_M __arithmetic.S)
|
||||||
zephyr_sources_ifdef(CONFIG_SOC_IT8XXX2_USE_ILM ilm.c)
|
zephyr_sources_ifdef(CONFIG_SOC_IT8XXX2_USE_ILM ilm.c)
|
||||||
|
|
||||||
@@ -1,12 +1,11 @@
|
|||||||
# Copyright (c) 2020 ITE Corporation. All Rights Reserved.
|
# Copyright (c) 2020 ITE Corporation. All Rights Reserved.
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
choice
|
config SOC_SERIES_ITE_IT8XXX2
|
||||||
prompt "ITE IT8XXX2 system implementation"
|
select CPU_HAS_FPU if "$(ZEPHYR_TOOLCHAIN_VARIANT)" != "zephyr" || RISCV_ISA_EXT_M
|
||||||
depends on SOC_SERIES_ITE_IT8XXX2
|
select HAS_PM
|
||||||
|
|
||||||
config SOC_IT8XXX2
|
config SOC_IT8XXX2
|
||||||
bool "ITE IT8XXX2 system implementation"
|
|
||||||
select RISCV
|
select RISCV
|
||||||
select ATOMIC_OPERATIONS_BUILTIN
|
select ATOMIC_OPERATIONS_BUILTIN
|
||||||
select RISCV_ISA_RV32I
|
select RISCV_ISA_RV32I
|
||||||
@@ -17,12 +16,6 @@ config SOC_IT8XXX2
|
|||||||
select RISCV_ISA_EXT_M if !(SOC_IT81302_BX || SOC_IT81202_BX)
|
select RISCV_ISA_EXT_M if !(SOC_IT81302_BX || SOC_IT81202_BX)
|
||||||
select RISCV_ISA_EXT_A
|
select RISCV_ISA_EXT_A
|
||||||
select RISCV_ISA_EXT_C
|
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
|
config SOC_IT8XXX2_REG_SET_V1
|
||||||
bool
|
bool
|
||||||
@@ -36,48 +29,34 @@ config SOC_IT8XXX2_REG_SET_V2
|
|||||||
This option is selected by a variable of which soc, and will
|
This option is selected by a variable of which soc, and will
|
||||||
determine the register for the IT82xx2 specification.
|
determine the register for the IT82xx2 specification.
|
||||||
|
|
||||||
if SOC_IT8XXX2
|
|
||||||
|
|
||||||
choice IT8XXX2_SERIES
|
|
||||||
prompt "IT8XXX2 Series"
|
|
||||||
default SOC_IT81302_BX
|
|
||||||
|
|
||||||
config SOC_IT81302_BX
|
config SOC_IT81302_BX
|
||||||
bool "IT81302 BX version"
|
|
||||||
select SOC_IT8XXX2_REG_SET_V1
|
select SOC_IT8XXX2_REG_SET_V1
|
||||||
|
|
||||||
config SOC_IT81202_BX
|
config SOC_IT81202_BX
|
||||||
bool "IT81202 BX version"
|
|
||||||
select SOC_IT8XXX2_REG_SET_V1
|
select SOC_IT8XXX2_REG_SET_V1
|
||||||
|
|
||||||
config SOC_IT81302_CX
|
config SOC_IT81302_CX
|
||||||
bool "IT81302 CX version"
|
|
||||||
select SOC_IT8XXX2_REG_SET_V1
|
select SOC_IT8XXX2_REG_SET_V1
|
||||||
|
|
||||||
config SOC_IT81202_CX
|
config SOC_IT81202_CX
|
||||||
bool "IT81202 CX version"
|
|
||||||
select SOC_IT8XXX2_REG_SET_V1
|
select SOC_IT8XXX2_REG_SET_V1
|
||||||
|
|
||||||
config SOC_IT82202_AX
|
config SOC_IT82202_AX
|
||||||
bool "IT82202 AX version"
|
|
||||||
select SOC_IT8XXX2_REG_SET_V2
|
select SOC_IT8XXX2_REG_SET_V2
|
||||||
select SOC_IT8XXX2_EC_BUS_24MHZ if !DT_HAS_ITE_IT82XX2_USB_ENABLED
|
select SOC_IT8XXX2_EC_BUS_24MHZ if !DT_HAS_ITE_IT82XX2_USB_ENABLED
|
||||||
|
|
||||||
config SOC_IT82302_AX
|
config SOC_IT82302_AX
|
||||||
bool "IT82302 AX version"
|
|
||||||
select SOC_IT8XXX2_REG_SET_V2
|
select SOC_IT8XXX2_REG_SET_V2
|
||||||
select SOC_IT8XXX2_EC_BUS_24MHZ if !DT_HAS_ITE_IT82XX2_USB_ENABLED
|
select SOC_IT8XXX2_EC_BUS_24MHZ if !DT_HAS_ITE_IT82XX2_USB_ENABLED
|
||||||
|
|
||||||
config SOC_IT82002_AW
|
config SOC_IT82002_AW
|
||||||
bool "IT82002 AW version"
|
|
||||||
select SOC_IT8XXX2_REG_SET_V2
|
select SOC_IT8XXX2_REG_SET_V2
|
||||||
select SOC_IT8XXX2_EC_BUS_24MHZ if !DT_HAS_ITE_IT82XX2_USB_ENABLED
|
select SOC_IT8XXX2_EC_BUS_24MHZ if !DT_HAS_ITE_IT82XX2_USB_ENABLED
|
||||||
|
|
||||||
endchoice
|
|
||||||
|
|
||||||
config SOC_IT8XXX2_PLL_FLASH_48M
|
config SOC_IT8XXX2_PLL_FLASH_48M
|
||||||
bool "Flash frequency is 48MHz"
|
bool "Flash frequency is 48MHz"
|
||||||
default y
|
default y
|
||||||
|
select FLASH
|
||||||
help
|
help
|
||||||
Change frequency of PLL, CPU, and flash to 48MHz during initialization.
|
Change frequency of PLL, CPU, and flash to 48MHz during initialization.
|
||||||
|
|
||||||
@@ -169,5 +148,3 @@ config ILM_MAX_SIZE
|
|||||||
int "ILM Size in kB"
|
int "ILM Size in kB"
|
||||||
default 60 if SOC_IT81202_CX || SOC_IT81302_CX
|
default 60 if SOC_IT81202_CX || SOC_IT81302_CX
|
||||||
default SRAM_SIZE
|
default SRAM_SIZE
|
||||||
|
|
||||||
endif # SOC_IT8XXX2
|
|
||||||
@@ -3,9 +3,6 @@
|
|||||||
|
|
||||||
if SOC_IT81202_BX
|
if SOC_IT81202_BX
|
||||||
|
|
||||||
config SOC
|
|
||||||
default "it81202bx"
|
|
||||||
|
|
||||||
config SOC_IT8XXX2_GPIO_GROUP_K_L_DEFAULT_PULL_DOWN
|
config SOC_IT8XXX2_GPIO_GROUP_K_L_DEFAULT_PULL_DOWN
|
||||||
default y
|
default y
|
||||||
|
|
||||||
@@ -3,9 +3,6 @@
|
|||||||
|
|
||||||
if SOC_IT81202_CX
|
if SOC_IT81202_CX
|
||||||
|
|
||||||
config SOC
|
|
||||||
default "it81202cx"
|
|
||||||
|
|
||||||
config SOC_IT8XXX2_GPIO_GROUP_K_L_DEFAULT_PULL_DOWN
|
config SOC_IT8XXX2_GPIO_GROUP_K_L_DEFAULT_PULL_DOWN
|
||||||
default y
|
default y
|
||||||
|
|
||||||
@@ -3,9 +3,6 @@
|
|||||||
|
|
||||||
if SOC_IT81302_BX
|
if SOC_IT81302_BX
|
||||||
|
|
||||||
config SOC
|
|
||||||
default "it81302bx"
|
|
||||||
|
|
||||||
config SOC_IT8XXX2_GPIO_GROUP_K_L_DEFAULT_PULL_DOWN
|
config SOC_IT8XXX2_GPIO_GROUP_K_L_DEFAULT_PULL_DOWN
|
||||||
default n
|
default n
|
||||||
|
|
||||||
@@ -3,9 +3,6 @@
|
|||||||
|
|
||||||
if SOC_IT81302_CX
|
if SOC_IT81302_CX
|
||||||
|
|
||||||
config SOC
|
|
||||||
default "it81302cx"
|
|
||||||
|
|
||||||
config SOC_IT8XXX2_GPIO_GROUP_K_L_DEFAULT_PULL_DOWN
|
config SOC_IT8XXX2_GPIO_GROUP_K_L_DEFAULT_PULL_DOWN
|
||||||
default n
|
default n
|
||||||
|
|
||||||
@@ -3,9 +3,6 @@
|
|||||||
|
|
||||||
if SOC_IT82002_AW
|
if SOC_IT82002_AW
|
||||||
|
|
||||||
config SOC
|
|
||||||
default "it82002aw"
|
|
||||||
|
|
||||||
config SOC_IT8XXX2_GPIO_GROUP_K_L_DEFAULT_PULL_DOWN
|
config SOC_IT8XXX2_GPIO_GROUP_K_L_DEFAULT_PULL_DOWN
|
||||||
default y
|
default y
|
||||||
|
|
||||||
@@ -3,9 +3,6 @@
|
|||||||
|
|
||||||
if SOC_IT82202_AX
|
if SOC_IT82202_AX
|
||||||
|
|
||||||
config SOC
|
|
||||||
default "it82202ax"
|
|
||||||
|
|
||||||
config SOC_IT8XXX2_GPIO_GROUP_K_L_DEFAULT_PULL_DOWN
|
config SOC_IT8XXX2_GPIO_GROUP_K_L_DEFAULT_PULL_DOWN
|
||||||
default y
|
default y
|
||||||
|
|
||||||
@@ -3,7 +3,4 @@
|
|||||||
|
|
||||||
if SOC_IT82302_AX
|
if SOC_IT82302_AX
|
||||||
|
|
||||||
config SOC
|
|
||||||
default "it82302ax"
|
|
||||||
|
|
||||||
endif
|
endif
|
||||||
@@ -54,6 +54,6 @@ config GEN_SW_ISR_TABLE
|
|||||||
config RISCV_SOC_INTERRUPT_INIT
|
config RISCV_SOC_INTERRUPT_INIT
|
||||||
default y
|
default y
|
||||||
|
|
||||||
source "soc/soc_legacy/riscv/ite_ec/it8xxx2/Kconfig.defconfig.it8*"
|
rsource "Kconfig.defconfig.it8*"
|
||||||
|
|
||||||
endif # SOC_SERIES_ITE_IT8XXX2
|
endif # SOC_SERIES_ITE_IT8XXX2
|
||||||
49
soc/ite/ec/it8xxx2/Kconfig.soc
Normal file
49
soc/ite/ec/it8xxx2/Kconfig.soc
Normal file
@@ -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
|
||||||
10
soc/ite/ec/soc.yml
Normal file
10
soc/ite/ec/soc.yml
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
series:
|
||||||
|
- name: it8xxxx
|
||||||
|
socs:
|
||||||
|
- name: it81202bx
|
||||||
|
- name: it81202cx
|
||||||
|
- name: it81302bx
|
||||||
|
- name: it81302cx
|
||||||
|
- name: it82002aw
|
||||||
|
- name: it82202ax
|
||||||
|
- name: it82302ax
|
||||||
@@ -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
|
|
||||||
@@ -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
|
|
||||||
@@ -13,8 +13,8 @@ target_include_directories(app PRIVATE
|
|||||||
|
|
||||||
zephyr_include_directories(
|
zephyr_include_directories(
|
||||||
include
|
include
|
||||||
${ZEPHYR_BASE}/soc/soc_legacy/riscv/ite_ec/common
|
${ZEPHYR_BASE}/soc/ite/ec/common
|
||||||
${ZEPHYR_BASE}/soc/soc_legacy/riscv/ite_ec/it8xxx2
|
${ZEPHYR_BASE}/soc/ite/ec/it8xxx2
|
||||||
)
|
)
|
||||||
|
|
||||||
target_sources(app
|
target_sources(app
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
* SPDX-License-Identifier: Apache-2.0
|
* 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.
|
* Macros for emulated hardware registers access.
|
||||||
|
|||||||
Reference in New Issue
Block a user