Re: [PATCH 3/5] bgmac: add support for new BGMAC_CMDCFG_SR position on core rev >= 4
From: Rafał Miłecki <zajec5@gmail.com>
Date: 2014-01-03 06:05:35
2014/1/2 Hauke Mehrtens [off-list ref]:
On 01/02/2014 09:28 PM, Rafał Miłecki wrote:quoted
2014/1/2 Hauke Mehrtens [off-list ref]:quoted
The BGMAC_CMDCFG_SR register is at a different position on core rev >= 4 -#define BGMAC_CMDCFG_SR 0x00000800 /* Set to reset mode */ +#define BGMAC_CMDCFG_SR_REVO 0x00000800 /* Set to reset mode, for other revs */ +#define BGMAC_CMDCFG_SR_REV4 0x00002000 /* Set to reset mode, only for core rev 4 */ +#define BGMAC_CMDCFG_SR(rev) ((rev >= 4) ? BGMAC_CMDCFG_SR_REV4 : BGMAC_CMDCFG_SR_REVO)If you use _REV4 for rev 4+, then what about using _REV0 for rev 0+? I guess REVO stands for OTHERS, but others doesn't actually mean rev != 4 here. Unless it was supposed to be 0 from the beginning and it's just a typo? In future you may need to use _REV7 or whatever number.This should be REV0, 0 and O are just so similar. I will also change this from rev >= 4 to rev == 4, as the Broadcom driver does the same.
Ahh, if this is only for rev == 4, then maybe BGMAC_CMDCFG_SR or BGMAC_CMDCFG_SR_REVO aren't bad after all. It's up to you in this situation :) -- Rafał