Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- andypugh@dn2800:~/linuxcnc-dev$ git push --dry-run
- To ssh://andypugh@git.linuxcnc.org/git/linuxcnc.git
- c9513dd..7d50c57 master -> master
- andypugh@dn2800:~/linuxcnc-dev$ git log -p c9513dd..7d50c57
- commit 7d50c57ba0c5f730e4ab9e92cd85779cd2c9180d
- Merge: c589fff c9513dd
- Author: Andy Pugh <andy@bodgesoc.org>
- Date: Thu Aug 15 20:15:47 2013 +0100
- Merge remote-tracking branch 'origin/master' into hm2-resolver-fix-for-master
- commit c589fff5a1e85edd328dab15afd4a5e68ca9de10
- Author: Andy Pugh <andy@bodgesoc.org>
- Date: Thu Aug 15 20:15:24 2013 +0100
- Revert "Use a less bogus way to detect "index" with Resolvers."
- This reverts commit 6cae47a25a5a8a06843298d81564d78c077b9f6a.
- diff --git a/src/hal/drivers/mesa-hostmot2/resolver.c b/src/hal/drivers/mesa-hostmot2/resolver.c
- index d652512..fe460e6 100644
- --- a/src/hal/drivers/mesa-hostmot2/resolver.c
- +++ b/src/hal/drivers/mesa-hostmot2/resolver.c
- @@ -312,12 +312,8 @@ void hm2_resolver_process_tram_read(hostmot2_t *hm2, long period) {
- res->accum += (__s32)(hm2->resolver.position_reg[i] - res->old_reg );
- if (*res->hal.pin.index_enable){
- - if ((res->old_reg > hm2->resolver.position_reg[i]) && (res->old_reg - hm2->resolver.position_reg[i] > 0x80000000)){
- - res->offset = (res->accum - hm2->resolver.position_reg[i]);
- - *res->hal.pin.index_enable = 0;
- - }
- - else if ((res->old_reg < hm2->resolver.position_reg[i]) && (hm2->resolver.position_reg[i] - res->old_reg > 0x80000000)){
- - res->offset = (res->accum - hm2->resolver.position_reg[i] + 0x100000000LL);
- + if ((res->old_reg ^ hm2->resolver.position_reg[i]) & 0x80000000){
- + res->offset = res->accum & 0xFFFFFFFF00000000LL;
- *res->hal.pin.index_enable = 0;
- }
- }
- commit 6cae47a25a5a8a06843298d81564d78c077b9f6a
- Author: Andy Pugh <andy@bodgesoc.org>
- Date: Thu Aug 15 01:04:59 2013 +0100
- Use a less bogus way to detect "index" with Resolvers.
- For example, one that only happens once per rev.
- And fix an off-by-one error in the reverse direction too.
- Signed-off-by: Andy Pugh <andy@bodgesoc.org>
- diff --git a/src/hal/drivers/mesa-hostmot2/resolver.c b/src/hal/drivers/mesa-hostmot2/resolver.c
- index fe460e6..d652512 100644
- --- a/src/hal/drivers/mesa-hostmot2/resolver.c
- +++ b/src/hal/drivers/mesa-hostmot2/resolver.c
- @@ -312,8 +312,12 @@ void hm2_resolver_process_tram_read(hostmot2_t *hm2, long period) {
- res->accum += (__s32)(hm2->resolver.position_reg[i] - res->old_reg );
- if (*res->hal.pin.index_enable){
- - if ((res->old_reg ^ hm2->resolver.position_reg[i]) & 0x80000000){
- - res->offset = res->accum & 0xFFFFFFFF00000000LL;
- + if ((res->old_reg > hm2->resolver.position_reg[i]) && (res->old_reg - hm2->resolver.position_reg[i] > 0x80000000)){
- + res->offset = (res->accum - hm2->resolver.position_reg[i]);
- + *res->hal.pin.index_enable = 0;
- + }
- + else if ((res->old_reg < hm2->resolver.position_reg[i]) && (hm2->resolver.position_reg[i] - res->old_reg > 0x80000000)){
- + res->offset = (res->accum - hm2->resolver.position_reg[i] + 0x100000000LL);
- *res->hal.pin.index_enable = 0;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement