Try runing with -debug and post log here.
I was compiling bfgminer, and it's detected as AMU and hashing as 8 units. (hard limit in the code?)
[2014-09-14 05:02:50] Summary of per device statistics:
[2014-09-14 05:02:50] AMU0 | 20s: 4.53 avg: 3.89 u: 4.62 Gh/s | A:18 R:0+0(none) HW:0/none
[2014-09-14 05:02:50] AMU0a | 20s:577.4 avg:486.1 u:471.6 Mh/s | A:2 R:0+0(none) HW:0/none
[2014-09-14 05:02:50] AMU0b | 20s:564.6 avg:489.0 u:632.6 Mh/s | A:4 R:0+0(none) HW:0/none
[2014-09-14 05:02:50] AMU0c | 20s:564.6 avg:489.0 u:553.5 Mh/s | A:2 R:0+0(none) HW:0/none
[2014-09-14 05:02:50] AMU0d | 20s:564.6 avg:489.0 u:474.4 Mh/s | A:3 R:0+0(none) HW:0/none
[2014-09-14 05:02:50] AMU0e | 20s:564.6 avg:489.0 u:731.4 Mh/s | A:0 R:0+0(none) HW:0/none
[2014-09-14 05:02:50] AMU0f | 20s:564.6 avg:489.0 u:691.9 Mh/s | A:4 R:0+0(none) HW:0/none
[2014-09-14 05:02:50] AMU0g | 20s:564.6 avg:489.0 u:474.4 Mh/s | A:2 R:0+0(none) HW:0/none
[2014-09-14 05:02:50] AMU0h | 20s:564.6 avg:489.0 u:612.8 Mh/s | A:1 R:0+0(none) HW:0/none
[2014-09-14 05:02:50]
Shutdown signal received.
And the good thing is that there are no hw errors.
I'll test cgminer again.
this is an excerpt from bfgminer's driver-antminer.c:
i have an idea, if you are confortable following code manipulation. See below
static bool antminer_detect_one(const char *devpath)
{
struct device_drv *drv = &antminer_drv;
struct ICARUS_INFO *info = calloc(1, sizeof(struct ICARUS_INFO));
if (unlikely(!info))
quit(1, "Failed to malloc ICARUS_INFO");
*info = (struct ICARUS_INFO){
.baud = ANTMINER_IO_SPEED,
.Hs = ANTMINER_HASH_TIME,
.timing_mode = MODE_DEFAULT,
.read_size = 5,
};
if (!icarus_detect_custom(devpath, drv, info))
{
free(info);
return false;
}
info->read_count = 15;
return true;
}
If you add 2 lines to the below block of code, i believe it may work.
*info = (struct ICARUS_INFO){
.baud = ANTMINER_IO_SPEED,
.Hs = ANTMINER_HASH_TIME,
.timing_mode = MODE_DEFAULT,
.read_size = 5,
};
Below is the modified block:
*info = (struct ICARUS_INFO){
.baud = ANTMINER_IO_SPEED,
.Hs = ANTMINER_HASH_TIME,
.timing_mode = MODE_DEFAULT,
.read_size = 5,
.work_division = 1,
.fpga_count = 32,
};
adding these two lines ( work_division and fpga_count) should tell bfgminer detection code that there are 32 FPGAs( in this case BM1380 ASIC) and the work division is 1, each chip gets its own work item.
since in vanilla main branch code, they are not specified and so bfgminer falls back to an autodetect routine which due to the speed of the asics results in fpga_count of 8.
add those, save and recompile bfgminer. Post them results once it fires up.