Commit Graph

323 Commits

Author SHA1 Message Date
Florent Kermarrec 781869d6f9 software/libbase/system: fix flush_l2_cache 2015-06-19 09:00:14 +02:00
Florent Kermarrec f44956bfca soc/sdram: add L2_SIZE constant and avoid declaring an empty flush_l2_cache function when L2_SIZE is not defined 2015-06-19 08:39:37 +02:00
Florent Kermarrec 3b9f287bab sdram: use wishbone cache as L2 cache and add optional L2 cache to Minicon 2015-06-17 15:30:30 +02:00
Yann Sionneau a8b9c126cd spiflash: now using 64k sectors 2015-05-27 18:44:14 +08:00
Yann Sionneau 3f7e161867 spiflash: cleanup unnecessary parenthesis 2015-05-27 18:44:14 +08:00
Florent Kermarrec 438a0856c5 misoclib/cpu: merge git.py in identifier 2015-05-02 18:42:33 +02:00
Florent Kermarrec e8c01ff4aa do more test with last changes fix small issues 2015-05-02 16:22:38 +02:00
Florent Kermarrec 8aa3fb3eb7 com/uart: add tx and rx fifos.
Since ressource usage is low with default depth of 16 (implemented in RAM LUTs) we don't keep old behaviour.
Tested successfully with BIOS and flterm.
2015-05-01 15:59:26 +02:00
Sebastien Bourdeauducq 1d9771f574 spiflash: use SoC defines, add write_to_flash function 2015-04-27 13:42:32 +08:00
Florent Kermarrec 0b1a2e1022 liteeth: do MII/GMII detection in gateware for gmii_mii phy 2015-04-26 18:08:07 +02:00
Florent Kermarrec ae71bf2830 liteeth: fix and improve 10/100/1000Mbps speed auto detection 2015-04-26 14:54:53 +02:00
Florent Kermarrec 3710afe7fe microudp.c: add #ifdef on ethmode (bios generation for gmii or mii was broken) 2015-04-12 20:59:50 +02:00
Florent Kermarrec 4abe8e1d9e microudp: fix if ( 2015-04-12 18:52:35 +02:00
Florent Kermarrec 515398634f liteeth/phy/gmii_mii: add clock counter and use it in bios to select mode 2015-04-12 18:42:52 +02:00
Sebastien Bourdeauducq c7361f1cdf software/common.mak: fix alignment in quiet output 2015-04-03 17:43:29 +08:00
Sebastien Bourdeauducq 73d3b8487c crt0-or1k: clean up indentation 2015-04-03 13:23:28 +08:00
Sebastien Bourdeauducq 63f14f3f30 libbase: implement flush_l2_cache for or1k 2015-04-02 16:47:03 +08:00
Florent Kermarrec f4c35e358e software/bios/sdram: small clean up 2015-03-27 18:24:19 +01:00
Florent Kermarrec 6245dd7b6f software/bios/sdram: for now desactivate random on address test since it seems to trigger a L2 cache or LASMIcon bug on at least de0nano/minispartan6
Memtest sometimes reports 1 or 2 errors with de0nano/minispartan6 on this new test when used with LASMICON. Minicon seems fine. We will have to investigate on this issue.
2015-03-27 16:43:22 +01:00
Florent Kermarrec f85a4f004b software/bios/sdram: add random addressing to memtest
testing memories with linear access is not good enough. Adding random addressing allow us to detect more eventual issues on our L2 cache or SDRAM controller.
2015-03-27 15:49:16 +01:00
Florent Kermarrec 38d24b637e software/bios/sdram: make seed_to_data static 2015-03-26 23:05:20 +01:00
Florent Kermarrec e79a716425 software/bios/sdram: select the type of data we want to generate for memtest with TEST_RANDOM_DATA (debugging hardware is easier with a simple counter) 2015-03-26 22:16:31 +01:00
Florent Kermarrec 257706517e software/memtest: remove Mixxeo/M1 hardcoded values in bandwidth computation 2015-03-26 00:01:42 +01:00
Florent Kermarrec 1fc24e66dc sofware/memtest: use MAIN_RAM_SIZE from mem.h 2015-03-25 19:00:07 +01:00
Florent Kermarrec 94b62eff8b libcompiler-rt: add ucmpdi2.o 2015-03-25 17:57:42 +01:00
Florent Kermarrec 69e9032d49 sofware/memtest: update bandwidth registers 2015-03-25 17:25:39 +01:00
Florent Kermarrec 6492ef1efa linker-sdram.ld: sdram mem region is now called main_ram 2015-03-25 16:45:19 +01:00
Florent Kermarrec 9bc71f374a rename sdram mapping to main_ram 2015-03-21 21:01:46 +01:00
Florent Kermarrec b75e4b237d software/bios/memtest: add data bus test (0xAAAAAAAA, 0x55555555) on a small portion of the test zone.
we now need to add another random addressing test to avoid linear access on L2 cache
2015-03-21 20:29:15 +01:00
Florent Kermarrec 84b631c929 liteeth/mac/core: add with_padding option (enabled by default) and change with_hw_preamble_crc option to with_preamble_crc 2015-03-19 14:52:02 +01:00
Florent Kermarrec 473997df26 cpuif: add CSR_ prefix to CSR base addresses (avoid conflicts between CSR and mems bases) 2015-03-02 16:52:17 +01:00
Florent Kermarrec 8280acd3a7 sdram: only keep frontend logic and sdram core declaration in soc/sdram.py, move other logic to sdram/core 2015-03-02 12:17:49 +01:00
Florent Kermarrec 0980becb56 sdram: improve memtest by adding 2 different writes/reads
doing only a write and read is not enough: if we reloaded a fpga with write that is not working after functional fpga, it would not trigger an error.
2015-03-02 10:52:22 +01:00
Florent Kermarrec 2c51adcd68 misoclib: better organization (create cores categories: cpu, mem, com, ...) 2015-02-28 09:40:44 +01:00
Florent Kermarrec 07b9cabd0d gensoc: make it more generic (a SoC does not necessarily have a CPU) 2015-02-27 16:39:00 +01:00
Florent Kermarrec be0eb8d265 use cachesize reported in wishbone2lasmi 2015-02-27 14:13:38 +01:00
Yann Sionneau edb1622668 spiflash: BB write support 2014-11-27 23:10:39 +08:00
Florent Kermarec 603c2641bb new Ethernet MAC 2014-11-20 16:47:22 -08:00
Sebastien Bourdeauducq 09773df186 software: make compiler-rt a submodule 2014-11-06 18:00:28 -08:00
Sebastien Bourdeauducq 410f250d2a software: remove setjmp 2014-09-23 21:57:05 +08:00
Sebastien Bourdeauducq 14d53526be libbase: use __builtin_setjmp and __builtin_longjmp 2014-09-21 17:43:17 +08:00
Sebastien Bourdeauducq 36434b62f0 sdram: merge DFII_PIX_RDDATA_SIZE and DFII_PIX_WRDATA_SIZE 2014-09-03 15:02:38 +08:00
Sebastien Bourdeauducq 2388bfabc3 bios: support DDR3 write leveling and read calibration. This makes the full DDR3 SODIMM work on the KC705. 2014-09-03 14:25:26 +08:00
Sebastien Bourdeauducq 6decb357f1 bios: add sdrrderr 2014-09-01 15:23:37 +08:00
Sebastien Bourdeauducq 57335bdf3f bios: add DQ filtering to sdrrd, add sdrrdbuf command 2014-09-01 14:58:58 +08:00
Sebastien Bourdeauducq a2096ff083 libcompiler-rt: add moddi3 2014-08-28 16:54:12 +08:00
Sebastien Bourdeauducq 0ebdf2be6d bios/sdram: cleanup 2014-08-08 21:57:58 +08:00
Sebastien Bourdeauducq b61dced909 bios/sdram: set ODT and RESET_N through DFII 2014-08-08 21:57:42 +08:00
Sebastien Bourdeauducq 8deadc5760 dfii: drive ODT and RESET_N 2014-08-08 21:56:35 +08:00
Florent Kermarrec 293ac09673 sdramphy/bios: make sdrrd/sdrwr generic 2014-08-08 19:25:10 +08:00
Sebastien Bourdeauducq 213cb43ae5 Keep only basic SoC designs in MiSoC 2014-08-03 12:30:15 +08:00
Sebastien Bourdeauducq 8349543732 style 2014-07-05 18:56:20 +02:00
Sebastien Bourdeauducq 2bb821c571 crt-or1k: trim useless exception vectors 2014-07-05 18:53:23 +02:00
Sebastien Bourdeauducq 4c2a2090b1 libbase: remove crt during make clean 2014-06-01 23:17:43 +02:00
Sebastien Bourdeauducq b26ac465bd crt0: remove macadress for or1k as well 2014-05-24 10:43:50 +02:00
Robert Jordens 6deeca064f bios/crt0.S: remove unused macaddr, add syscall handler stub 2014-05-24 10:41:54 +02:00
Robert Jordens ed902bfcdf crt: add umoddi3 2014-05-24 10:38:55 +02:00
Sebastien Bourdeauducq dc2024f54d bios: remove references to 'DDR' SDRAM, as we also support SDR SDRAM 2014-05-23 21:31:26 +02:00
Sebastien Bourdeauducq 398608e997 bios: fill delay slot in boot_helper 2014-05-14 16:08:25 +02:00
Sebastien Bourdeauducq 13e74b8b4f software: factorize exception_handler 2014-05-14 15:01:38 +02:00
Sebastien Bourdeauducq edf567a0cd bios: fix boot for or1k 2014-05-14 15:01:02 +02:00
Sebastien Bourdeauducq 1c08aeb21c Initial mor1kx (OpenRISC) support
Based on milkymist-ng-mor1kx by Stefan Kristiansson
2014-05-14 10:24:56 +02:00
Florent Kermarrec 11be0a27fc fix minimac bases addresses 2014-05-12 19:19:34 +02:00
Sebastien Bourdeauducq 87a8504304 Refactor CRC tools 2014-04-19 00:01:29 +02:00
Florent Kermarrec 93f02a8cf4 tools: replace mkmscimg with mkmscimg.py (mkmscimg.c was platform dependent) 2014-04-18 20:22:42 +02:00
Sebastien Bourdeauducq f76da70cda software/libcompiler-rt: adapt to new upstream directory organization 2014-04-08 15:29:23 +02:00
Sebastien Bourdeauducq 3882a07ae5 Add Python flasher 2014-02-28 09:40:49 -08:00
Sebastien Bourdeauducq 9e784fc82c Generate mem.h from SoC description 2014-02-21 17:55:05 +01:00
Sebastien Bourdeauducq fce46ac0ca Simplify use of external targets/platforms/cores + add default platform in targets 2014-02-16 14:51:52 +01:00
Sebastien Bourdeauducq a23dffd2c2 bios: update banner 2014-02-15 14:02:09 +01:00
Sebastien Bourdeauducq f55943ae18 new action syntax for make.py + support xc3sprog 2014-02-15 14:01:50 +01:00
Sebastien Bourdeauducq 14b50dbb0c videomixer: config system + store video resolution in flash 2013-11-30 23:07:19 +01:00
Sebastien Bourdeauducq 4ba796417d software: do not attempt to build network/sdram drivers when cores are not present 2013-11-24 23:50:09 +01:00
Sebastien Bourdeauducq d4063409e1 software/bios: infer flash start from linker 2013-11-24 23:45:03 +01:00
Sebastien Bourdeauducq fca0b968e7 generate linker memory map, move all generated files into the same folder 2013-11-24 19:50:17 +01:00
Sebastien Bourdeauducq bc2b4a888b memtest: flush caches, display total error count, use ifdef instead of comment 2013-11-24 13:59:45 +01:00
Sebastien Bourdeauducq 7496ba6360 framebuffer: fix resynchronization after resolution change 2013-11-21 00:33:22 +01:00
Sebastien Bourdeauducq f5ba0ac023 videomixer: select 1024x768 by default 2013-11-21 00:33:01 +01:00
Sebastien Bourdeauducq f62615054d videomixer: stick to 20x PLL configuration as 10x causes traditional spartan6 weirdness 2013-11-18 20:43:30 +01:00
Sebastien Bourdeauducq a75be2e5dd videomixer: reconfigure PLL on resolution change 2013-11-18 20:37:45 +01:00
Sebastien Bourdeauducq 72001addcb videomixer: add PLL dump command 2013-11-18 20:37:27 +01:00
Sebastien Bourdeauducq 6fc03946be videomixer: add PLL control code 2013-11-18 20:37:10 +01:00
Sebastien Bourdeauducq 8b82575861 dvisampler: hold PLL in reset when disabled 2013-11-18 20:36:30 +01:00
Sebastien Bourdeauducq 8f164d0d7b videomixer: reduce debug output 2013-11-17 23:40:42 +01:00
Sebastien Bourdeauducq 64bfca56b4 videomixer: add more video modes 2013-11-16 17:41:03 +01:00
Sebastien Bourdeauducq ba15f1581f videomixer: flush L2 after CPU framebuffer write 2013-11-16 16:27:58 +01:00
Sebastien Bourdeauducq c9e99dfca9 bios: flushl2 command 2013-11-16 16:27:34 +01:00
Sebastien Bourdeauducq c3d0985fb2 add L2 cache size in identifier + function to flush L2 2013-11-16 16:27:21 +01:00
Sebastien Bourdeauducq 940341b4bf videomixer: fix stray DMA detection 2013-11-16 13:53:38 +01:00
Sebastien Bourdeauducq d225bdf362 videomixer: clear framebuffers 2013-11-15 11:25:58 +01:00
Sebastien Bourdeauducq a5d9f72901 videomixer: check resolution and frame length 2013-11-13 18:57:39 +01:00
Sebastien Bourdeauducq 1582bad2d6 videomixer: filter PLL lock output 2013-11-13 16:50:09 +01:00
Robert Jordens 1a28690fa0 microudp: fix udp txlen
* the preample length 8 is already included in sizeof(struct
ethernet_header)
* the minimum packet size is 64, exluding fcs and including
preample it is 68 (the arp functions are correct)
2013-11-12 19:05:15 +01:00
Sebastien Bourdeauducq 69568adb8e videomixer: support resolution change at runtime 2013-11-11 23:20:21 +01:00
Sebastien Bourdeauducq 593867b92a videomixer: add more video modes 2013-11-11 22:16:56 +01:00
Sebastien Bourdeauducq c8da400af0 videomixer: compute best m/d value for pixel clock synthesizer 2013-11-11 21:30:12 +01:00
Sebastien Bourdeauducq 132b6ce87d videomixer: set established timing bits in EDID 2013-11-11 18:56:13 +01:00
Sebastien Bourdeauducq 3ba9fbefd5 videomixer: generate EDID 2013-11-11 17:52:07 +01:00
Sebastien Bourdeauducq f5211aff30 videomixer: add EDID manipulation routines 2013-11-10 23:50:18 +01:00
Sebastien Bourdeauducq 75d25af3aa cosmetic changes 2013-11-10 16:12:24 +01:00