Hello Community,
I am using custom board based on am3356 in which general purpose ethernet is working, Now I want to use PRU based ethernet ?
Where the changes are required in TI-RTOS ?
Regards,
Pankaj
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hello Community,
I am using custom board based on am3356 in which general purpose ethernet is working, Now I want to use PRU based ethernet ?
Where the changes are required in TI-RTOS ?
Regards,
Pankaj
Hi,
Your query has been assigned to a TI engineer. Please note that feedback may be delayed due to holidays in the USA.
Hi Pankaj,
You can refer to the ICSS EMAC driver examples from Processor SDK/PDK -
http://software-dl.ti.com/processor-sdk-rtos/esd/docs/latest/rtos/index_device_drv.html#icss-emac
http://www.ti.com/tool/PROCESSOR-SDK-AM335X
Regards,
Garrett
Hi Garrett,
I am referring example of ICSS_EMAC example "NIMU_ICSS_BasicExample_icev2AM335x_wSoCLib_armExampleproject" , But the flow of calls is not as per document( http://software-dl.ti.com/processor-sdk-rtos/esd/docs/latest/rtos/index_device_drv.html#icss-emac
for example. - ICSS_EMAC_testMdioInit(CSL_MPU_PRUSS2_U_MII_MDIO_REGS); // Not available in example but mention in document flow calls.
Regards,
Pankaj
Pankaj,
It appears the document is not updated accordingly when the code has been changed, please look into the example sour code for better understanding the call flow.
Regards,
Garrett
Hi Garrett,
Thanks for the quick response.
Please let me know things(dependency/CSL) I need to take care while integrating pruss in quadros.
Regards,
Pankaj
Pankaj,
Please check this thread for the high level guidance of porting PRSDK dependency/CSL:
- "By design, CSL APIs follow a consistent style, uniformly across Processor Instruction Set Architecture and are independent of the OS. ", see http://software-dl.ti.com/processor-sdk-rtos/esd/docs/latest/rtos/index_device_drv.html. Alternatively you may refer to the driver implementation from Nucleus-TI-AM335x (https://www.mentor.com/embedded-software/nucleus/readystart/readystart-nucleus-ti/ti-sitara-am335x), for example, in spi_tgt.h from the Nucleus-TI-AM335x, it has similar implementation of register access as in CSL.
#define SPI_ANDOUTBYTE(reg, data) \
((*((UINT8 *)(reg))) = \
(UINT8)(SPI_INBYTE(reg) & (data)))
Regards,
Garrett