Mercurial > flash_v2
comparison packages/cygmon/current/misc/bsp/common/syscall.c @ 112:02ea4320376c ecos-sw-2000-07-21
Merge from eCos master repository on 2000-07-21-21:01:39-BST
| author | jlarmour |
|---|---|
| date | Fri, 21 Jul 2000 21:34:11 +0000 |
| parents | 435cced73e2f |
| children | e0c0827131d1 |
comparison
equal
deleted
inserted
replaced
| 111:211b8a635ce9 | 112:02ea4320376c |
|---|---|
| 170 | 170 |
| 171 case BSP_GET_SHARED: | 171 case BSP_GET_SHARED: |
| 172 *(bsp_shared_t **)arg1 = bsp_shared_data; | 172 *(bsp_shared_t **)arg1 = bsp_shared_data; |
| 173 break; | 173 break; |
| 174 | 174 |
| 175 case SYS_meminfo: | |
| 176 { | |
| 177 // Return the top and size of memory. | |
| 178 struct bsp_mem_info mem; | |
| 179 int i; | |
| 180 unsigned long u, totmem, topmem, numbanks; | |
| 181 | |
| 182 i = totmem = topmem = numbanks = 0; | |
| 183 while (bsp_sysinfo(BSP_INFO_MEMORY, i++, &mem) == 0) | |
| 184 { | |
| 185 if (mem.kind == BSP_MEM_RAM) | |
| 186 { | |
| 187 numbanks++; | |
| 188 totmem += mem.nbytes; | |
| 189 u = (unsigned long)mem.virt_start + mem.nbytes; | |
| 190 if (u > topmem) | |
| 191 topmem = u; | |
| 192 } | |
| 193 } | |
| 194 *(unsigned long *)arg1 = totmem; | |
| 195 *(unsigned long *)arg2 = topmem; | |
| 196 *retval = numbanks; | |
| 197 } | |
| 198 return 1; | |
| 199 break; | |
| 200 | |
| 175 default: | 201 default: |
| 176 return 0; | 202 return 0; |
| 177 } | 203 } |
| 178 | 204 |
| 179 *retval = err; | 205 *retval = err; |
