Changes in / [c0e74b1:d9e2e0e] in mainline
- Files:
-
- 1 deleted
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/mips32/src/interrupt.c
rc0e74b1 rd9e2e0e 38 38 #include <arch.h> 39 39 #include <arch/cp0.h> 40 #include <arch/smp/dorder.h>41 40 #include <time/clock.h> 42 41 #include <ipc/sysipc.h> … … 49 48 function virtual_timer_fnc = NULL; 50 49 static irq_t timer_irq; 51 static irq_t dorder_irq;52 50 53 51 // TODO: This is SMP unsafe!!! … … 151 149 } 152 150 153 static irq_ownership_t dorder_claim(irq_t *irq)154 {155 return IRQ_ACCEPT;156 }157 158 static void dorder_irq_handler(irq_t *irq)159 {160 dorder_ipi_ack(1 << dorder_cpuid());161 }162 163 151 /* Initialize basic tables for exception dispatching */ 164 152 void interrupt_init(void) … … 175 163 timer_start(); 176 164 cp0_unmask_int(TIMER_IRQ); 177 178 irq_initialize(&dorder_irq);179 dorder_irq.devno = device_assign_devno();180 dorder_irq.inr = DORDER_IRQ;181 dorder_irq.claim = dorder_claim;182 dorder_irq.handler = dorder_irq_handler;183 irq_register(&dorder_irq);184 185 cp0_unmask_int(DORDER_IRQ);186 165 } 187 166 -
kernel/arch/mips32/src/smp/dorder.c
rc0e74b1 rd9e2e0e 33 33 */ 34 34 35 #include <typedefs.h>36 35 #include <smp/ipi.h> 37 #include <arch/smp/dorder.h> 36 37 #ifdef CONFIG_SMP 38 38 39 39 #define MSIM_DORDER_ADDRESS 0xB0000004 40 40 41 #ifdef CONFIG_SMP42 43 41 void ipi_broadcast_arch(int ipi) 44 42 { 45 *((volatile u int32_t *) MSIM_DORDER_ADDRESS) = 0x7fffffff;43 *((volatile unsigned int *) MSIM_DORDER_ADDRESS) = 0x7FFFFFFF; 46 44 } 47 45 48 46 #endif 49 47 50 uint32_t dorder_cpuid(void)51 {52 return *((volatile uint32_t *) MSIM_DORDER_ADDRESS);53 }54 55 void dorder_ipi_ack(uint32_t mask)56 {57 *((volatile uint32_t *) (MSIM_DORDER_ADDRESS + 4)) = mask;58 }59 60 48 /** @} 61 49 */ -
tools/toolchain.sh
rc0e74b1 rd9e2e0e 1 #! 1 #!/bin/bash 2 2 3 3 # … … 33 33 echo 34 34 echo "Script failed: $2" 35 36 35 exit 1 37 36 fi … … 46 45 echo 47 46 echo "Checksum of ${FILE} does not match." 48 49 47 exit 2 50 48 fi … … 73 71 } 74 72 75 change_title() {76 echo -en "\e]0;$1\a"77 }78 79 show_countdown() {80 TM="$1"81 82 if [ "${TM}" -eq 0 ] ; then83 echo84 return 085 fi86 87 echo -n "${TM} "88 change_title "${TM}"89 sleep 190 91 TM="`expr "${TM}" - 1`"92 show_countdown "${TM}"93 }94 95 show_dependencies() {96 echo "IMPORTANT NOTICE:"97 echo98 echo "For a successful compilation and use of the cross-compiler"99 echo "toolchain you need at least the following dependencies."100 echo101 echo "Please make sure that the dependencies are present in your"102 echo "system. Otherwise the compilation process might fail after"103 echo "a few seconds or minutes."104 echo105 echo " - SED, AWK, Flex, Bison, gzip, bzip2, Bourne Shell"106 echo " - gettext, zlib, Texinfo, libelf, libgomp"107 echo " - GNU Multiple Precision Library (GMP)"108 echo " - GNU Make"109 echo " - GNU tar"110 echo " - GNU Coreutils"111 echo " - GNU Sharutils"112 echo " - MPFR"113 echo " - MPC"114 echo " - Parma Polyhedra Library (PPL)"115 echo " - ClooG-PPL"116 echo " - native C compiler, assembler and linker"117 echo " - native C library with headers"118 echo119 120 show_countdown 10121 }122 123 73 download_check() { 124 74 SOURCE="$1" … … 127 77 128 78 if [ ! -f "${FILE}" ]; then 129 change_title "Downloading ${FILE}"130 79 wget -c "${SOURCE}${FILE}" 131 80 check_error $? "Error downloading ${FILE}." … … 139 88 140 89 if [ -d "${DIR}" ]; then 141 change_title "Removing ${DIR}"142 90 echo " >>> Removing ${DIR}" 143 91 rm -fr "${DIR}" … … 149 97 DESC="$2" 150 98 151 change_title "Creating ${DESC}"152 99 echo ">>> Creating ${DESC}" 153 100 … … 161 108 DESC="$2" 162 109 163 change_title "Unpacking ${DESC}" 164 echo " >>> Unpacking ${DESC}" 110 echo " >>> ${DESC}" 165 111 166 112 tar -xjf "${FILE}" … … 196 142 197 143 BINUTILS_VERSION="2.20" 198 GCC_VERSION="4.5. 1"144 GCC_VERSION="4.5.0" 199 145 200 146 BINUTILS="binutils-${BINUTILS_VERSION}.tar.bz2" … … 219 165 echo ">>> Downloading tarballs" 220 166 download_check "${BINUTILS_SOURCE}" "${BINUTILS}" "ee2d3e996e9a2d669808713360fa96f8" 221 download_check "${GCC_SOURCE}" "${GCC_CORE}" " dc8959e31b01a65ce10d269614815054"222 download_check "${GCC_SOURCE}" "${GCC_OBJC}" " 3c11b7037896e967eddf8178af2ddd98"223 download_check "${GCC_SOURCE}" "${GCC_CPP}" " b294953ff0bb2f20c7acb2bf005d832a"167 download_check "${GCC_SOURCE}" "${GCC_CORE}" "58eda33c3184303628f91c42a7ab15b5" 168 download_check "${GCC_SOURCE}" "${GCC_OBJC}" "8d8c01b6631b020cc6c167860fde2398" 169 download_check "${GCC_SOURCE}" "${GCC_CPP}" "5ab93605af40def4844eda09ca769c2d" 224 170 225 171 echo ">>> Removing previous content" … … 238 184 unpack_tarball "${GCC_CPP}" "C++" 239 185 240 echo ">>> Processing binutils (${PLATFORM})"186 echo ">>> Compiling and installing binutils" 241 187 cd "${BINUTILSDIR}" 242 188 check_error $? "Change directory failed." 243 189 patch_binutils "${PLATFORM}" 244 245 change_title "binutils: configure (${PLATFORM})" 246 ./configure "--target=${TARGET}" "--prefix=${PREFIX}" "--program-prefix=${TARGET}-" --disable-nls 190 ./configure "--target=${TARGET}" "--prefix=${PREFIX}" "--program-prefix=${TARGET}-" "--disable-nls" 247 191 check_error $? "Error configuring binutils." 248 249 change_title "binutils: make (${PLATFORM})"250 192 make all install 251 193 check_error $? "Error compiling/installing binutils." 252 194 253 echo ">>> Processing GCC (${PLATFORM})"195 echo ">>> Compiling and installing GCC" 254 196 cd "${OBJDIR}" 255 197 check_error $? "Change directory failed." 256 257 change_title "GCC: configure (${PLATFORM})"258 198 "${GCCDIR}/configure" "--target=${TARGET}" "--prefix=${PREFIX}" "--program-prefix=${TARGET}-" --with-gnu-as --with-gnu-ld --disable-nls --disable-threads --enable-languages=c,objc,c++,obj-c++ --disable-multilib --disable-libgcj --without-headers --disable-shared --enable-lto 259 199 check_error $? "Error configuring GCC." 260 261 change_title "GCC: make (${PLATFORM})"262 200 PATH="${PATH}:${PREFIX}/bin" make all-gcc install-gcc 263 201 check_error $? "Error compiling/installing GCC." … … 278 216 show_usage 279 217 fi 280 281 show_dependencies282 218 283 219 case "$1" in -
uspace/srv/vfs/vfs_ops.c
rc0e74b1 rd9e2e0e 1355 1355 int ret = vfs_close_internal(newfile); 1356 1356 if (ret != EOK) { 1357 fibril_mutex_unlock(&oldfile->lock);1358 1357 ipc_answer_0(rid, ret); 1359 1358 return; … … 1362 1361 ret = vfs_fd_free(newfd); 1363 1362 if (ret != EOK) { 1364 fibril_mutex_unlock(&oldfile->lock);1365 1363 ipc_answer_0(rid, ret); 1366 1364 return;
Note:
See TracChangeset
for help on using the changeset viewer.