FreeCalypso > hg > freecalypso-sw
comparison loadtools/flutil.c @ 56:d98137625c0d
fc-loadtool flash: total_size logic implemented
author | Michael Spacefalcon <msokolov@ivan.Harhan.ORG> |
---|---|
date | Sun, 23 Jun 2013 20:50:41 +0000 |
parents | |
children | a10491da8c3a |
comparison
equal
deleted
inserted
replaced
55:278052b6afda | 56:d98137625c0d |
---|---|
1 /* | |
2 * Miscellaneous utility functions for flash support | |
3 */ | |
4 | |
5 #include <sys/types.h> | |
6 #include <stdio.h> | |
7 #include <stdint.h> | |
8 #include <stdlib.h> | |
9 #include "flash.h" | |
10 | |
11 extern struct flash_bank_info flash_bank_info[2]; | |
12 | |
13 compute_flash_totsize_nsecs(bank) | |
14 { | |
15 struct flash_bank_info *bi; | |
16 struct flash_region_desc *reg; | |
17 | |
18 bi = flash_bank_info + bank; | |
19 for (reg = bi->bank_desc->regions; reg->nsectors; reg++) { | |
20 bi->nsectors += reg->nsectors; | |
21 bi->total_size += reg->sector_size * reg->nsectors; | |
22 } | |
23 } | |
24 | |
25 /* the following function is used to verify that total_size is a power of 2 */ | |
26 count_ones(word) | |
27 uint32_t word; | |
28 { | |
29 int count; | |
30 | |
31 for (count = 0; word; word >>= 1) | |
32 count += word & 1; | |
33 return count; | |
34 } |