Could to run linux system on the zynq fpga of OpenSSD to control the write and read?

Post Reply
shengwenLiang
Posts: 36
Joined: Thu Jul 06, 2017 12:57 pm

Could to run linux system on the zynq fpga of OpenSSD to control the write and read?

Post by shengwenLiang » Mon May 28, 2018 2:34 am

Hi,
Today, I have an idea that I want to run Linux system on zynq7045f900-3 FPGA of OpenSSD. then write a program to control the operation of SSD. and from the openSSD project of GitHub, I only find the boot.bin to start the bare-metal program from SD card. and it does not run Linux system.
if I want to achieve it, Which aspect I should pay attention to? can you give me some advice?
Thanks


shengwenLiang
Posts: 36
Joined: Thu Jul 06, 2017 12:57 pm

Re: Could to run linux system on the zynq fpga of OpenSSD to control the write and read?

Post by shengwenLiang » Mon May 28, 2018 8:58 am

KibinPark wrote:
Mon May 28, 2018 4:36 am
Please refer to https://www.xilinx.com/products/design- ... x-sdk.html
Hi,
Thanks for your reply, when i create the Linux boot, i find that i don't know how to set this configuration in linux system.
XScuGic_Config *IntcConfig;

Xil_ICacheDisable();
Xil_DCacheDisable();
Xil_DisableMMU();

// Paging table set
#define MB (1024*1024)
for (u = 0; u < 4096; u++)
{
if (u < 2)
Xil_SetTlbAttributes(u * MB, 0xC1E); // cached & buffered
else if (u < 293)
Xil_SetTlbAttributes(u * MB, 0xC12); // uncached & nonbuffered
else if (u < 590)
Xil_SetTlbAttributes(u * MB, 0xC1E); // cached & buffered
else
Xil_SetTlbAttributes(u * MB, 0xC12); // uncached & nonbuffered

}

Xil_EnableMMU();
Xil_ICacheEnable();
Xil_DCacheEnable();

could you give me some adivce about this? that should i decrease the dram size of linux system? Thanks

KibinPark
Posts: 39
Joined: Thu Mar 30, 2017 9:25 am

Re: Could to run linux system on the zynq fpga of OpenSSD to control the write and read?

Post by KibinPark » Mon May 28, 2018 9:09 am

They are not necessary if you are going to run linux kernel.
In addition, total DRAM size of Cosmos board is 1 GB.

shengwenLiang
Posts: 36
Joined: Thu Jul 06, 2017 12:57 pm

Re: Could to run linux system on the zynq fpga of OpenSSD to control the write and read?

Post by shengwenLiang » Wed May 30, 2018 2:31 am

KibinPark wrote:
Mon May 28, 2018 9:09 am
They are not necessary if you are going to run linux kernel.
In addition, total DRAM size of Cosmos board is 1 GB.
Hi,
Thanks for your reply. Today, I test my idea and run linaro system in zynq FPGA. but when I migrate the openSSD firmware to Linux system. I face the problem that the function of fmc_driver.c can't run on linux system. Meanwhile, i already using the mmap() function to map Tiger4NSC IP to memory and write and read register of it by using
ChCtlReg_0 = mmap();
*((volatile unsigned int*)(ChCtlReg_0+0x00000028)) = 0x00000001;

What's the problem with this method?Do you have a better way to read and write registers of TIger4NSC IP in linux system ? Should I write linux driver to control them
Please guide me.
Thanks

Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest