[zynq][gem] Move MIO cfg in the gem driver to the target cfg
This commit is contained in:
@@ -202,36 +202,6 @@ enum handler_return gem_int_handler(void *arg) {
|
||||
return (resched) ? INT_RESCHEDULE : INT_NO_RESCHEDULE;
|
||||
}
|
||||
|
||||
static void gem_io_init(void)
|
||||
{
|
||||
uint32_t pin_cfg;
|
||||
|
||||
zynq_slcr_unlock();
|
||||
pin_cfg = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_PULLUP | MIO_DISABLE_RCVR;
|
||||
SLCR_REG(MIO_PIN_16) = pin_cfg;
|
||||
SLCR_REG(MIO_PIN_17) = pin_cfg;
|
||||
SLCR_REG(MIO_PIN_18) = pin_cfg;
|
||||
SLCR_REG(MIO_PIN_19) = pin_cfg;
|
||||
SLCR_REG(MIO_PIN_20) = pin_cfg;
|
||||
SLCR_REG(MIO_PIN_21) = pin_cfg;
|
||||
|
||||
pin_cfg = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_PULLUP;
|
||||
SLCR_REG(MIO_PIN_22) = pin_cfg;
|
||||
SLCR_REG(MIO_PIN_23) = pin_cfg;
|
||||
SLCR_REG(MIO_PIN_24) = pin_cfg;
|
||||
SLCR_REG(MIO_PIN_25) = pin_cfg;
|
||||
SLCR_REG(MIO_PIN_26) = pin_cfg;
|
||||
SLCR_REG(MIO_PIN_27) = pin_cfg;
|
||||
|
||||
pin_cfg = MIO_L3_SEL(0x4) | MIO_IO_TYPE_LVCMOS18 | MIO_PULLUP;
|
||||
SLCR_REG(MIO_PIN_52) = pin_cfg;
|
||||
SLCR_REG(MIO_PIN_53) = pin_cfg;
|
||||
|
||||
/* Enable VREF from GPIOB */
|
||||
SLCR_REG(GPIOB_CTRL) = 0x1;
|
||||
zynq_slcr_lock();
|
||||
}
|
||||
|
||||
static bool wait_for_phy_idle(void)
|
||||
{
|
||||
int iters = 1000;
|
||||
@@ -412,8 +382,8 @@ status_t gem_init(uintptr_t base, uint32_t dmasize)
|
||||
DMA_CFG_TX_PKTBUF_MEMSZ_SEL | DMA_CFG_CSUM_GEN_OFFLOAD_EN |
|
||||
DMA_CFG_AHB_FIXED_BURST_LEN(0x16);
|
||||
|
||||
/* Enable MDIO, tx, and rx */
|
||||
gem_io_init();
|
||||
/* Enable VREF from GPIOB */
|
||||
SLCR_REG(GPIOB_CTRL) = 0x1;
|
||||
|
||||
ret = gem_phy_init();
|
||||
if (!ret) {
|
||||
|
||||
@@ -130,6 +130,8 @@ typedef struct {
|
||||
uint32_t dci_clk;
|
||||
uint32_t gem0_clk;
|
||||
uint32_t gem0_rclk;
|
||||
uint32_t gem1_clk;
|
||||
uint32_t gem1_rclk;
|
||||
uint32_t lqspi_clk;
|
||||
uint32_t sdio_clk;
|
||||
uint32_t uart_clk;
|
||||
|
||||
@@ -100,18 +100,20 @@ const uint32_t zynq_mio_cfg[ZYNQ_MIO_CNT] = {
|
||||
[13] = MIO_IO_TYPE_LVCMOS33,
|
||||
[14] = MIO_IO_TYPE_LVCMOS33,
|
||||
[15] = MIO_IO_TYPE_LVCMOS33,
|
||||
[16] = MIO_L0_SEL | MIO_IO_TYPE_LVCMOS18,
|
||||
[17] = MIO_L0_SEL | MIO_IO_TYPE_LVCMOS18,
|
||||
[18] = MIO_L0_SEL | MIO_IO_TYPE_LVCMOS18,
|
||||
[19] = MIO_L0_SEL | MIO_IO_TYPE_LVCMOS18,
|
||||
[20] = MIO_L0_SEL | MIO_IO_TYPE_LVCMOS18,
|
||||
[21] = MIO_L0_SEL | MIO_IO_TYPE_LVCMOS18,
|
||||
[22] = MIO_TRI_ENABLE | MIO_L0_SEL | MIO_IO_TYPE_LVCMOS18,
|
||||
[23] = MIO_TRI_ENABLE | MIO_L0_SEL | MIO_IO_TYPE_LVCMOS18,
|
||||
[24] = MIO_TRI_ENABLE | MIO_L0_SEL | MIO_IO_TYPE_LVCMOS18,
|
||||
[25] = MIO_TRI_ENABLE | MIO_L0_SEL | MIO_IO_TYPE_LVCMOS18,
|
||||
[26] = MIO_TRI_ENABLE | MIO_L0_SEL | MIO_IO_TYPE_LVCMOS18,
|
||||
[27] = MIO_TRI_ENABLE | MIO_L0_SEL | MIO_IO_TYPE_LVCMOS18,
|
||||
// 16-21 gem0
|
||||
[16] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_PULLUP | MIO_DISABLE_RCVR,
|
||||
[17] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_PULLUP | MIO_DISABLE_RCVR,
|
||||
[18] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_PULLUP | MIO_DISABLE_RCVR,
|
||||
[19] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_PULLUP | MIO_DISABLE_RCVR,
|
||||
[20] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_PULLUP | MIO_DISABLE_RCVR,
|
||||
[21] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_PULLUP | MIO_DISABLE_RCVR,
|
||||
// 22-27 gem0
|
||||
[22] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_PULLUP,
|
||||
[23] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_PULLUP,
|
||||
[24] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_PULLUP,
|
||||
[25] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_PULLUP,
|
||||
[26] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_PULLUP,
|
||||
[27] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_PULLUP,
|
||||
[28] = MIO_L1_SEL | MIO_IO_TYPE_LVCMOS18,
|
||||
[29] = MIO_TRI_ENABLE | MIO_L1_SEL | MIO_IO_TYPE_LVCMOS18,
|
||||
[30] = MIO_L1_SEL | MIO_IO_TYPE_LVCMOS18,
|
||||
@@ -136,8 +138,9 @@ const uint32_t zynq_mio_cfg[ZYNQ_MIO_CNT] = {
|
||||
[49] = MIO_TRI_ENABLE | MIO_L3_SEL(0x7) | MIO_IO_TYPE_LVCMOS18,
|
||||
[50] = MIO_TRI_ENABLE | MIO_IO_TYPE_LVCMOS18,
|
||||
[51] = MIO_IO_TYPE_LVCMOS18,
|
||||
[52] = MIO_L3_SEL(0x4) | MIO_IO_TYPE_LVCMOS18,
|
||||
[53] = MIO_L3_SEL(0x4) | MIO_IO_TYPE_LVCMOS18,
|
||||
// 52-53 gem0
|
||||
[52] = MIO_L3_SEL(0x4) | MIO_IO_TYPE_LVCMOS18 | MIO_PULLUP,
|
||||
[53] = MIO_L3_SEL(0x4) | MIO_IO_TYPE_LVCMOS18 | MIO_PULLUP,
|
||||
};
|
||||
|
||||
const zynq_clk_cfg_t zynq_clk_cfg = {
|
||||
|
||||
@@ -84,18 +84,20 @@ const uint32_t zynq_mio_cfg[ZYNQ_MIO_CNT] = {
|
||||
[5] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_LVCMOS33,
|
||||
[6] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_LVCMOS33,
|
||||
[8] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_LVCMOS33,
|
||||
[16] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_DISABLE_RCVR,
|
||||
[17] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_DISABLE_RCVR,
|
||||
[18] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_DISABLE_RCVR,
|
||||
[19] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_DISABLE_RCVR,
|
||||
[20] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_DISABLE_RCVR,
|
||||
[21] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_DISABLE_RCVR,
|
||||
[22] = MIO_TRI_ENABLE | MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL,
|
||||
[23] = MIO_TRI_ENABLE | MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL,
|
||||
[24] = MIO_TRI_ENABLE | MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL,
|
||||
[25] = MIO_TRI_ENABLE | MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL,
|
||||
[26] = MIO_TRI_ENABLE | MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL,
|
||||
[27] = MIO_TRI_ENABLE | MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL,
|
||||
// 16-21 gem0
|
||||
[16] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_PULLUP | MIO_DISABLE_RCVR,
|
||||
[17] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_PULLUP | MIO_DISABLE_RCVR,
|
||||
[18] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_PULLUP | MIO_DISABLE_RCVR,
|
||||
[19] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_PULLUP | MIO_DISABLE_RCVR,
|
||||
[20] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_PULLUP | MIO_DISABLE_RCVR,
|
||||
[21] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_PULLUP | MIO_DISABLE_RCVR,
|
||||
// 22-27 gem0
|
||||
[22] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_PULLUP,
|
||||
[23] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_PULLUP,
|
||||
[24] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_PULLUP,
|
||||
[25] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_PULLUP,
|
||||
[26] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_PULLUP,
|
||||
[27] = MIO_L0_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_HSTL | MIO_PULLUP,
|
||||
[28] = MIO_L1_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_LVCMOS18,
|
||||
[29] = MIO_L1_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_LVCMOS18 | MIO_TRI_ENABLE,
|
||||
[30] = MIO_L1_SEL | MIO_SPEED_FAST | MIO_IO_TYPE_LVCMOS18,
|
||||
@@ -117,8 +119,9 @@ const uint32_t zynq_mio_cfg[ZYNQ_MIO_CNT] = {
|
||||
[47] = MIO_TRI_ENABLE | MIO_IO_TYPE_LVCMOS18,
|
||||
[48] = MIO_L3_SEL(0x7) | MIO_IO_TYPE_LVCMOS18,
|
||||
[49] = MIO_TRI_ENABLE | MIO_L3_SEL(0x7) | MIO_IO_TYPE_LVCMOS18,
|
||||
[52] = MIO_L3_SEL(0x4) | MIO_IO_TYPE_LVCMOS18,
|
||||
[53] = MIO_L3_SEL(0x4) | MIO_IO_TYPE_LVCMOS18,
|
||||
// 52-53 gem0
|
||||
[52] = MIO_L3_SEL(0x4) | MIO_IO_TYPE_LVCMOS18 | MIO_PULLUP,
|
||||
[53] = MIO_L3_SEL(0x4) | MIO_IO_TYPE_LVCMOS18 | MIO_PULLUP,
|
||||
};
|
||||
|
||||
const zynq_clk_cfg_t zynq_clk_cfg = {
|
||||
|
||||
Reference in New Issue
Block a user