// Copyright 2020 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef SRC_DEVICES_LIB_AMLOGIC_INCLUDE_SOC_AML_S905D3_S905D3_GPIO_H_
#define SRC_DEVICES_LIB_AMLOGIC_INCLUDE_SOC_AML_S905D3_S905D3_GPIO_H_

#define S905D3_GPIOZ_COUNT 16
#define S905D3_GPIOA_COUNT 16
#define S905D3_GPIOBOOT_COUNT 16
#define S905D3_GPIOC_COUNT 8
#define S905D3_GPIOX_COUNT 20
#define S905D3_GPIOH_COUNT 9
#define S905D3_GPIOAO_COUNT 12
#define S905D3_GPIOE_COUNT 3

#define S905D3_GPIOZ_START 0
#define S905D3_GPIOA_START S905D3_GPIOZ_COUNT
#define S905D3_GPIOBOOT_START (S905D3_GPIOA_START + S905D3_GPIOA_COUNT)
#define S905D3_GPIOC_START (S905D3_GPIOBOOT_START + S905D3_GPIOBOOT_COUNT)
#define S905D3_GPIOX_START (S905D3_GPIOC_START + S905D3_GPIOC_COUNT)
#define S905D3_GPIOH_START (S905D3_GPIOX_START + S905D3_GPIOX_COUNT)
#define S905D3_GPIOAO_START (S905D3_GPIOH_START + S905D3_GPIOH_COUNT)
#define S905D3_GPIOE_START (S905D3_GPIOAO_START + S905D3_GPIOAO_COUNT)

#define S905D3_GPIOZ(n) (S905D3_GPIOZ_START + n)
#define S905D3_GPIOA(n) (S905D3_GPIOA_START + n)
#define S905D3_GPIOBOOT(n) (S905D3_GPIOBOOT_START + n)
#define S905D3_GPIOC(n) (S905D3_GPIOC_START + n)
#define S905D3_GPIOX(n) (S905D3_GPIOX_START + n)
#define S905D3_GPIOH(n) (S905D3_GPIOH_START + n)
#define S905D3_GPIOAO(n) (S905D3_GPIOAO_START + n)
// GPIOE is contained in GPIO AO bank
#define S905D3_GPIOE(n) (S905D3_GPIOE_START + n)

#define S905D3_PREG_PAD_GPIO0_EN_N 0x10
#define S905D3_PREG_PAD_GPIO0_O 0x11
#define S905D3_PREG_PAD_GPIO0_I 0x12
#define S905D3_PREG_PAD_GPIO1_EN_N 0x13
#define S905D3_PREG_PAD_GPIO1_O 0x14
#define S905D3_PREG_PAD_GPIO1_I 0x15
#define S905D3_PREG_PAD_GPIO2_EN_N 0x16
#define S905D3_PREG_PAD_GPIO2_O 0x17
#define S905D3_PREG_PAD_GPIO2_I 0x18
#define S905D3_PREG_PAD_GPIO3_EN_N 0x19
#define S905D3_PREG_PAD_GPIO3_O 0x1a
#define S905D3_PREG_PAD_GPIO3_I 0x1b
#define S905D3_PREG_PAD_GPIO4_EN_N 0x1c
#define S905D3_PREG_PAD_GPIO4_O 0x1d
#define S905D3_PREG_PAD_GPIO4_I 0x1e
#define S905D3_PREG_PAD_GPIO5_EN_N 0x20
#define S905D3_PREG_PAD_GPIO5_O 0x21
#define S905D3_PREG_PAD_GPIO5_I 0x22

#define S905D3_PAD_PULL_UP_EN_REG0 0x48
#define S905D3_PAD_PULL_UP_EN_REG1 0x49
#define S905D3_PAD_PULL_UP_EN_REG2 0x4a
#define S905D3_PAD_PULL_UP_EN_REG3 0x4b
#define S905D3_PAD_PULL_UP_EN_REG4 0x4c
#define S905D3_PAD_PULL_UP_EN_REG5 0x4d

#define S905D3_PULL_UP_REG0 0x3a
#define S905D3_PULL_UP_REG1 0x3b
#define S905D3_PULL_UP_REG2 0x3c
#define S905D3_PULL_UP_REG3 0x3d
#define S905D3_PULL_UP_REG4 0x3e
#define S905D3_PULL_UP_REG5 0x3f

#define S905D3_AO_PAD_DS_A 0x07
#define S905D3_AO_PAD_DS_B 0x08
#define S905D3_PAD_DS_REG0A 0xd0
#define S905D3_PAD_DS_REG1A 0xd1
#define S905D3_PAD_DS_REG2A 0xd2
#define S905D3_PAD_DS_REG2B 0xd3
#define S905D3_PAD_DS_REG3A 0xd4
#define S905D3_PAD_DS_REG4A 0xd5
#define S905D3_PAD_DS_REG5A 0xd6

#define S905D3_PERIPHS_PIN_MUX_0 0xb0
#define S905D3_PERIPHS_PIN_MUX_1 0xb1
#define S905D3_PERIPHS_PIN_MUX_2 0xb2
#define S905D3_PERIPHS_PIN_MUX_3 0xb3
#define S905D3_PERIPHS_PIN_MUX_4 0xb4
#define S905D3_PERIPHS_PIN_MUX_5 0xb5
#define S905D3_PERIPHS_PIN_MUX_6 0xb6
#define S905D3_PERIPHS_PIN_MUX_7 0xb7
#define S905D3_PERIPHS_PIN_MUX_9 0xb9
#define S905D3_PERIPHS_PIN_MUX_B 0xbb
#define S905D3_PERIPHS_PIN_MUX_C 0xbc
#define S905D3_PERIPHS_PIN_MUX_D 0xbd
#define S905D3_PERIPHS_PIN_MUX_E 0xbe

#define S905D3_AO_GPIO_O_EN_N 0x09
#define S905D3_AO_GPIO_I 0x0a
#define S905D3_AO_GPIO_O 0x0d

#define S905D3_GPIOAO_PULL_UP_REG 0x0b
#define S905D3_GPIOAO_PULL_EN_REG 0x0c

#define S905D3_AO_RTI_PINMUX_REG0 0x05
#define S905D3_AO_RTI_PINMUX_REG1 0x06

// These are relative to base address 0xffd00000 and in sizeof(uint32_t)
#define S905D3_GPIO_INT_EDGE_POLARITY 0x3c20
#define S905D3_GPIO_0_3_PIN_SELECT 0x3c21
#define S905D3_GPIO_4_7_PIN_SELECT 0x3c22
#define S905D3_GPIO_FILTER_SELECT 0x3c23

#define S905D3_GPIOA0_PIN_START 0
#define S905D3_GPIOZ_PIN_START 12
#define S905D3_GPIOH_PIN_START 28
#define S905D3_GPIOBOOT_PIN_START 37
#define S905D3_GPIOC_PIN_START 53
#define S905D3_GPIOA_PIN_START 61
#define S905D3_GPIOX_PIN_START 77
#define S905D3_GPIOE_PIN_START 97

// GPIOA pin alternate functions
#define S905D3_GPIOA_1_TDMB_SCLK_FN 1
#define S905D3_GPIOA_1_TDMB_SLV_SCLK_FN 2
#define S905D3_GPIOA_2_TDMB_FS_FN 1
#define S905D3_GPIOA_2_TDMB_SLV_FS_FN 2
#define S905D3_GPIOA_3_TDMB_D0_FN 1
#define S905D3_GPIOA_3_TDMB_DIN0_FN 2
#define S905D3_GPIOA_6_PDM_DIN2_FN 1
#define S905D3_GPIOA_6_TDMB_DIN3_FN 2
#define S905D3_GPIOA_6_TDMB_D3_FN 3
#define S905D3_GPIOA_7_PDM_DCLK_FN 1
#define S905D3_GPIOA_7_TDMC_D3_FN 2
#define S905D3_GPIOA_7_TDMC_DIN3_FN 3
#define S905D3_GPIOA_8_PDM_DIN0_FN 1
#define S905D3_GPIOA_8_TDMC_D2_FN 2
#define S905D3_GPIOA_8_TDMC_DIN2_FN 3
#define S905D3_GPIOA_9_PDM_DIN1_FN 1
#define S905D3_GPIOA_9_TDMC_D1_FN 2
#define S905D3_GPIOA_9_TDMC_DIN1_FN 3

#define S905D3_GPIOZ_2_TDMC_D0_FN 4
#define S905D3_GPIOZ_3_TDMC_D1_FN 4
#define S905D3_GPIOZ_4_TDMC_D2_FN 4
#define S905D3_GPIOZ_5_TDMC_D3_FN 4
#define S905D3_GPIOZ_6_TDMC_FS_FN 4
#define S905D3_GPIOZ_7_TDMC_SCLK_FN 4

#define S905D3_GPIOAO_9_MCLK_FN 5

#endif  // SRC_DEVICES_LIB_AMLOGIC_INCLUDE_SOC_AML_S905D3_S905D3_GPIO_H_
