Wayne Thornton commented on a discussion on cpukit/dhrl/dhrl.c: https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/1193#note_150619 > + safe_size >>= 1; > + } > + > + dhrl_debug_printk( > + "\nDetermining DDR Interleave Bit (Testing bits 6 to %u)...\n", > + max_safe_bit > + ); > + > + for ( uint8_t bit = 6; bit <= max_safe_bit; bit++ ) { > + uintptr_t interleave_mask = ( 1ULL << bit ); > + uintptr_t target_base = (uintptr_t) > ctx->active_config.base_memory_region; > + > + volatile uint8_t *addr_a = (volatile uint8_t *) ( target_base & > + ~interleave_mask ); > + volatile uint8_t *addr_b = (volatile uint8_t *) ( target_base | > + interleave_mask ); I used it out of habit to match the `dhrl_fetch_data` signature, but it's semantically incorrect. I'll remove the `volatile` qualifiers here so they are just standard `uint8_t *`. The `volatile` cast will only be applied at the exact point of the dead-load to prevent compiler optimization. -- View it on GitLab: https://gitlab.rtems.org/rtems/rtos/rtems/-/merge_requests/1193#note_150619 You're receiving this email because of your account on gitlab.rtems.org.
_______________________________________________ bugs mailing list [email protected] http://lists.rtems.org/mailman/listinfo/bugs
