Hi Simon, On Sat, Mar 12, 2016 at 1:04 PM, Simon Glass <s...@chromium.org> wrote: > Hi Bin, > > On 10 March 2016 at 21:52, Bin Meng <bmeng...@gmail.com> wrote: >> Hi Simon, >> >> On Mon, Mar 7, 2016 at 10:27 AM, Simon Glass <s...@chromium.org> wrote: >>> These two identifiers can be useful for drivers which need to adjust their >>> behaviour depending on the CPU family or stepping (revision). >>> >>> Signed-off-by: Simon Glass <s...@chromium.org> >>> --- >>> >>> arch/x86/cpu/cpu.c | 10 ++++++++++ >>> arch/x86/include/asm/cpu.h | 14 ++++++++++++++ >>> 2 files changed, 24 insertions(+) >>> >>> diff --git a/arch/x86/cpu/cpu.c b/arch/x86/cpu/cpu.c >>> index 8800e09..e2aad19 100644 >>> --- a/arch/x86/cpu/cpu.c >>> +++ b/arch/x86/cpu/cpu.c >>> @@ -333,6 +333,16 @@ static inline void get_fms(struct cpuinfo_x86 *c, >>> uint32_t tfms) >>> c->x86_model += ((tfms >> 16) & 0xF) << 4; >>> } >>> >>> +u32 cpu_get_family_model(void) >>> +{ >>> + return gd->arch.x86_device & 0x0fff0ff0; >> >> The decrypted family and model are stored in gd->arch.x86 and >> gd->arch.x86_model. Returning raw data would still need the caller to >> parse it. Why not just return these directly? > > I want to compare them in one shot to BROADWELL_FAMILY_ULT, etc. > > What exactly are you suggesting? >
I guess we can also break BROADWELL_FAMILY_ULT down to values and have them compared to gd->arch.x86 and gd->arch.x86_model. But I suppose you have your logic already working, so this is fine. >> >>> +} >>> + >>> +u32 cpu_get_stepping(void) >>> +{ >>> + return gd->arch.x86_device & 0xf; >> >> This is gd->arch.x86_mask. > > OK. That's a funny name for stepping. Yep, we can rename this to stepping in the future. [snip] Regards, Bin _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot