Changeset View
Changeset View
Standalone View
Standalone View
head/sys/arm/mv/mv_common.c
Show First 20 Lines • Show All 102 Lines • ▼ Show 20 Lines | |||||
static int decode_win_sdhci_valid(void); | static int decode_win_sdhci_valid(void); | ||||
static int decode_win_idma_valid(void); | static int decode_win_idma_valid(void); | ||||
static int decode_win_xor_valid(void); | static int decode_win_xor_valid(void); | ||||
static void decode_win_cpu_setup(void); | static void decode_win_cpu_setup(void); | ||||
static int decode_win_sdram_fixup(void); | static int decode_win_sdram_fixup(void); | ||||
static void decode_win_cesa_setup(u_long); | static void decode_win_cesa_setup(u_long); | ||||
static void decode_win_a38x_cesa_setup(u_long); | |||||
static void decode_win_usb_setup(u_long); | static void decode_win_usb_setup(u_long); | ||||
static void decode_win_usb3_setup(u_long); | static void decode_win_usb3_setup(u_long); | ||||
static void decode_win_eth_setup(u_long); | static void decode_win_eth_setup(u_long); | ||||
static void decode_win_neta_setup(u_long); | static void decode_win_neta_setup(u_long); | ||||
static void decode_win_sata_setup(u_long); | static void decode_win_sata_setup(u_long); | ||||
static void decode_win_ahci_setup(u_long); | static void decode_win_ahci_setup(u_long); | ||||
static void decode_win_sdhci_setup(u_long); | static void decode_win_sdhci_setup(u_long); | ||||
static void decode_win_idma_setup(u_long); | static void decode_win_idma_setup(u_long); | ||||
static void decode_win_xor_setup(u_long); | static void decode_win_xor_setup(u_long); | ||||
static void decode_win_cesa_dump(u_long); | static void decode_win_cesa_dump(u_long); | ||||
static void decode_win_a38x_cesa_dump(u_long); | |||||
static void decode_win_usb_dump(u_long); | static void decode_win_usb_dump(u_long); | ||||
static void decode_win_usb3_dump(u_long); | static void decode_win_usb3_dump(u_long); | ||||
static void decode_win_eth_dump(u_long base); | static void decode_win_eth_dump(u_long base); | ||||
static void decode_win_neta_dump(u_long base); | static void decode_win_neta_dump(u_long base); | ||||
static void decode_win_idma_dump(u_long base); | static void decode_win_idma_dump(u_long base); | ||||
static void decode_win_xor_dump(u_long base); | static void decode_win_xor_dump(u_long base); | ||||
static void decode_win_ahci_dump(u_long base); | static void decode_win_ahci_dump(u_long base); | ||||
static void decode_win_sdhci_dump(u_long); | static void decode_win_sdhci_dump(u_long); | ||||
▲ Show 20 Lines • Show All 90 Lines • ▼ Show 20 Lines | static struct soc_node_spec soc_nodes[] = { | ||||
&decode_win_ahci_dump, NULL }, | &decode_win_ahci_dump, NULL }, | ||||
{ "marvell,armada-380-sdhci", &decode_win_sdhci_setup, | { "marvell,armada-380-sdhci", &decode_win_sdhci_setup, | ||||
&decode_win_sdhci_dump, &decode_win_sdhci_valid}, | &decode_win_sdhci_dump, &decode_win_sdhci_valid}, | ||||
{ "mrvl,sata", &decode_win_sata_setup, NULL, &decode_win_sata_valid}, | { "mrvl,sata", &decode_win_sata_setup, NULL, &decode_win_sata_valid}, | ||||
{ "mrvl,xor", &decode_win_xor_setup, &decode_win_xor_dump, &decode_win_xor_valid}, | { "mrvl,xor", &decode_win_xor_setup, &decode_win_xor_dump, &decode_win_xor_valid}, | ||||
{ "mrvl,idma", &decode_win_idma_setup, &decode_win_idma_dump, &decode_win_idma_valid}, | { "mrvl,idma", &decode_win_idma_setup, &decode_win_idma_dump, &decode_win_idma_valid}, | ||||
{ "mrvl,cesa", &decode_win_cesa_setup, &decode_win_cesa_dump, &decode_win_cesa_valid}, | { "mrvl,cesa", &decode_win_cesa_setup, &decode_win_cesa_dump, &decode_win_cesa_valid}, | ||||
{ "mrvl,pcie", &decode_win_pcie_setup, &decode_win_pcie_dump, &decode_win_pcie_valid}, | { "mrvl,pcie", &decode_win_pcie_setup, &decode_win_pcie_dump, &decode_win_pcie_valid}, | ||||
{ "marvell,armada-38x-crypto", &decode_win_a38x_cesa_setup, | |||||
&decode_win_a38x_cesa_dump, &decode_win_cesa_valid}, | |||||
{ NULL, NULL, NULL, NULL }, | { NULL, NULL, NULL, NULL }, | ||||
}; | }; | ||||
#define SOC_NODE_PCIE_ENTRY_IDX 11 | #define SOC_NODE_PCIE_ENTRY_IDX 11 | ||||
typedef uint32_t(*read_cpu_ctrl_t)(uint32_t); | typedef uint32_t(*read_cpu_ctrl_t)(uint32_t); | ||||
typedef void(*write_cpu_ctrl_t)(uint32_t, uint32_t); | typedef void(*write_cpu_ctrl_t)(uint32_t, uint32_t); | ||||
typedef uint32_t (*win_read_t)(int); | typedef uint32_t (*win_read_t)(int); | ||||
▲ Show 20 Lines • Show All 1,316 Lines • ▼ Show 20 Lines | if (ddr_is_active(i)) { | ||||
continue; | continue; | ||||
win_cesa_br_write(base, j, br); | win_cesa_br_write(base, j, br); | ||||
win_cesa_cr_write(base, j, cr); | win_cesa_cr_write(base, j, cr); | ||||
break; | break; | ||||
} | } | ||||
} | } | ||||
} | } | ||||
} | |||||
static void | |||||
decode_win_a38x_cesa_setup(u_long base) | |||||
{ | |||||
decode_win_cesa_setup(base); | |||||
decode_win_cesa_setup(base + MV_WIN_CESA_OFFSET); | |||||
} | |||||
static void | |||||
decode_win_a38x_cesa_dump(u_long base) | |||||
{ | |||||
decode_win_cesa_dump(base); | |||||
decode_win_cesa_dump(base + MV_WIN_CESA_OFFSET); | |||||
} | } | ||||
/************************************************************************** | /************************************************************************** | ||||
* USB windows routines | * USB windows routines | ||||
**************************************************************************/ | **************************************************************************/ | ||||
static int | static int | ||||
decode_win_usb_valid(void) | decode_win_usb_valid(void) | ||||
{ | { | ||||
▲ Show 20 Lines • Show All 1,469 Lines • Show Last 20 Lines |