Date: Fri, 12 Jul 2013 21:02:18 GMT From: Brooks Davis <brooks@FreeBSD.org> To: Perforce Change Reviews <perforce@FreeBSD.org> Subject: PERFORCE change 231100 for review Message-ID: <201307122102.r6CL2IBl085404@skunkworks.freebsd.org>
index | next in thread | raw e-mail
http://p4web.freebsd.org/@@231100?ac=10 Change 231100 by brooks@brooks_zenith on 2013/07/12 21:01:31 Add a new option ALTERA_SDCARD_FAST_SIM which checks immediatly for success of I/O operations rather than queuing a task. Add ALTERA_SDCARD_FAST_SIM to the simulation config. Suggested by: rwatson Affected files ... .. //depot/projects/ctsrd/beribsd/src/sys/conf/options#10 edit .. //depot/projects/ctsrd/beribsd/src/sys/dev/altera/sdcard/altera_sdcard.c#8 edit .. //depot/projects/ctsrd/beribsd/src/sys/mips/beri/std.beri#6 edit .. //depot/projects/ctsrd/beribsd/src/sys/mips/conf/BERI_SIM_BASE#2 edit Differences ... ==== //depot/projects/ctsrd/beribsd/src/sys/conf/options#10 (text+ko) ==== @@ -68,6 +68,7 @@ # Miscellaneous options. ADAPTIVE_LOCKMGRS ALQ +ALTERA_SDCARD_FAST_SIM opt_altera_sdcard.h AUDIT opt_global.h BOOTHOWTO opt_global.h BOOTVERBOSE opt_global.h ==== //depot/projects/ctsrd/beribsd/src/sys/dev/altera/sdcard/altera_sdcard.c#8 (text+ko) ==== @@ -31,6 +31,8 @@ #include <sys/cdefs.h> __FBSDID("$FreeBSD: head/sys/dev/altera/sdcard/altera_sdcard.c 245380 2013-01-13 16:57:11Z rwatson $"); +#include "opt_altera_sdcard.h" + #include <sys/param.h> #include <sys/bus.h> #include <sys/condvar.h> @@ -258,6 +260,9 @@ ALTERA_SDCARD_LOCK_ASSERT(sc); KASSERT(sc->as_currentbio != NULL, ("%s: no current I/O", __func__)); +#ifdef ALTERA_SDCARD_FAST_SIM +recheck: +#endif asr = altera_sdcard_read_asr(sc); /* @@ -299,9 +304,12 @@ /* * Finally, either start the next I/O or transition to the IDLE state. */ - if (bioq_first(&sc->as_bioq) != NULL) + if (bioq_first(&sc->as_bioq) != NULL) { altera_sdcard_nextio(sc); - else +#ifdef ALTERA_SDCARD_FAST_SIM + goto recheck; +#endif + } else sc->as_state = ALTERA_SDCARD_STATE_IDLE; } @@ -398,6 +406,8 @@ taskqueue_cancel_timeout(sc->as_taskqueue, &sc->as_task, NULL); altera_sdcard_nextio(sc); - taskqueue_enqueue_timeout(sc->as_taskqueue, &sc->as_task, - ALTERA_SDCARD_TIMEOUT_IO); +#ifdef ALTERA_SDCARD_FAST_SIM + altera_sdcard_task_io(sc); +#endif + altera_sdcard_task_rechedule(sc); } ==== //depot/projects/ctsrd/beribsd/src/sys/mips/beri/std.beri#6 (text+ko) ==== @@ -4,4 +4,4 @@ cpu CPU_MIPS4KC options BERI_LARGE_TLB - +options MIPS_DISABLE_L1_CACHE ==== //depot/projects/ctsrd/beribsd/src/sys/mips/conf/BERI_SIM_BASE#2 (text+ko) ==== @@ -12,6 +12,8 @@ options FDT_DTB_STATIC makeoptions FDT_DTS_FILE=beri-sim.dts +options ALTERA_SDCARD_FAST_SIM + device altera_avgen device altera_jtag_uart device altera_sdcardhelp
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201307122102.r6CL2IBl085404>
