Skip to content

Commit

Permalink
wip
Browse files Browse the repository at this point in the history
  • Loading branch information
CiprianRegus committed Aug 22, 2023
1 parent 6d0cec7 commit 8227fba
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 41 deletions.
49 changes: 10 additions & 39 deletions drivers/platform/maxim/max32650/maxim_spi.c
Original file line number Diff line number Diff line change
Expand Up @@ -67,22 +67,6 @@
/************************ Functions Definitions *******************************/
/******************************************************************************/

volatile uint32_t dma_done = 0;

void DMA0_IRQHandler(void)
{
MXC_DMA_ChannelClearFlags(0, 0xFF);
// MXC_DMA_Handler();
dma_done = 1;
}

void DMA1_IRQHandler(void)
{
MXC_DMA_ChannelClearFlags(1, 0xFF);
// MXC_DMA_Handler();
dma_done = 1;
}

/**
* @brief Configure the VDDIO level for a SPI interface
* @param desc - the SPI descriptor
Expand Down Expand Up @@ -312,9 +296,6 @@ static int _max_spi_config(struct no_os_spi_desc *desc)
goto err_init;
}

// NVIC_EnableIRQ(DMA0_IRQn);
// NVIC_EnableIRQ(DMA1_IRQn);

return 0;
err_init:
MXC_SPI_Shutdown(MXC_SPI_GET_SPI(desc->device_id));
Expand Down Expand Up @@ -420,14 +401,14 @@ int32_t max_spi_transfer(struct no_os_spi_desc *desc,

spi = MXC_SPI_GET_SPI(desc->device_id);

// slave_id = desc->chip_select;
// if (slave_id != last_slave_id[desc->device_id]) {
// ret = _max_spi_config(desc);
// if (ret)
// return ret;
slave_id = desc->chip_select;
if (slave_id != last_slave_id[desc->device_id]) {
ret = _max_spi_config(desc);
if (ret)
return ret;

// last_slave_id[desc->device_id] = slave_id;
// }
last_slave_id[desc->device_id] = slave_id;
}

req.spi = MXC_SPI_GET_SPI(desc->device_id);
req.ssIdx = desc->chip_select;
Expand All @@ -441,25 +422,15 @@ int32_t max_spi_transfer(struct no_os_spi_desc *desc,
req.rxLen = req.rxData ? msgs[i].bytes_number : 0;
req.completeCB = NULL;

//_max_delay_config(desc, &msgs[i]);
if (msgs[i].use_dma && msgs[i].bytes_number >= 16) {
MXC_DMA_ReleaseChannel(0);
MXC_DMA_ReleaseChannel(1);
ret = MXC_SPI_MasterTransactionDMA(&req);

while (!dma_done);
dma_done = 0;
}
else {
ret = MXC_SPI_MasterTransaction(&req);
}
_max_delay_config(desc, &msgs[i]);

ret = MXC_SPI_MasterTransaction(&req);
if (ret == E_BAD_PARAM)
return -EINVAL;
if (ret == E_BAD_STATE)
return -EBUSY;

//no_os_udelay(msgs[i].cs_change_delay);
no_os_udelay(msgs[i].cs_change_delay);
}

return 0;
Expand Down
2 changes: 1 addition & 1 deletion projects/swiot/src/examples/iio_example/iio_example.c
Original file line number Diff line number Diff line change
Expand Up @@ -478,7 +478,7 @@ int iio_example_main()
// ret = Ext_Flash_Read(0x0, flash_readback, 3, Ext_Flash_DataLine_Single);
// ret = Ext_Flash_Read(0x0, flash_readback, 3, Ext_Flash_DataLine_Single);

func_ram1 = (void(*)(void))((uint32_t)&__load_start_xip | 1);
func_ram1 = (void(*)(void))((uint32_t)&__load_start_xip);
func_ram1();

// ret = Ext_Flash_Program_Page(0xF, flash_val, 3, Ext_Flash_DataLine_Quad);
Expand Down
2 changes: 1 addition & 1 deletion tools/scripts/maxim.mk
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ LDFLAGS = -mcpu=cortex-m4 \

CFLAGS += -mthumb \
-mcpu=cortex-m4 \
-O0 \
-O2 \
-mfloat-abi=hard \
-mfpu=fpv4-sp-d16 \
-Wa,-mimplicit-it=thumb \
Expand Down

0 comments on commit 8227fba

Please sign in to comment.