When testing with clang 3.6.0, I got a number of the following -Wcast-qual warnings:
sys/contrib/dev/ath/ath_hal/ar9300/ar9300_attach.c:849:9: error: cast from 'unsigned int const (*)[2]' to 'unsigned int *' drops const qualifier [-Werror,-Wcast-qual] INIT_INI_ARRAY(&ahp->ah_ini_mac[ATH_INI_CORE], ^ sys/contrib/dev/ath/ath_hal/ar9300/ar9300.h:325:41: note: expanded from macro 'INIT_INI_ARRAY' (iniarray)->ia_array = (u_int32_t *)(array); \ ^ sys/contrib/dev/ath/ath_hal/ar9300/ar9300_attach.c:852:9: error: cast from 'unsigned int const (*)[5]' to 'unsigned int *' drops const qualifier [-Werror,-Wcast-qual] INIT_INI_ARRAY(&ahp->ah_ini_mac[ATH_INI_POST], ^ sys/contrib/dev/ath/ath_hal/ar9300/ar9300.h:325:41: note: expanded from macro 'INIT_INI_ARRAY' (iniarray)->ia_array = (u_int32_t *)(array); \ ^ sys/contrib/dev/ath/ath_hal/ar9300/ar9300_attach.c:858:9: error: cast from 'unsigned int const (*)[2]' to 'unsigned int *' drops const qualifier [-Werror,-Wcast-qual] INIT_INI_ARRAY(&ahp->ah_ini_bb[ATH_INI_CORE], ^ sys/contrib/dev/ath/ath_hal/ar9300/ar9300.h:325:41: note: expanded from macro 'INIT_INI_ARRAY' (iniarray)->ia_array = (u_int32_t *)(array); \ ^
As far as I can see, it should be no problem to constify both the ia_array field in struct ar9300_ini_array, and the cast in the INIT_INI_ARRAY() macro.
No functional change.