Lines Matching +full:8 +full:- +full:cpu

2  * Copyright (c) 2003-2012 Broadcom Corporation
35 #include <asm/cpu-info.h>
39 #include <asm/cpu.h>
56 xlr_board_fmn_config.bucket_size[(bkt * 8) + 0], in print_credit_config()
57 xlr_board_fmn_config.bucket_size[(bkt * 8) + 1], in print_credit_config()
58 xlr_board_fmn_config.bucket_size[(bkt * 8) + 2], in print_credit_config()
59 xlr_board_fmn_config.bucket_size[(bkt * 8) + 3], in print_credit_config()
60 xlr_board_fmn_config.bucket_size[(bkt * 8) + 4], in print_credit_config()
61 xlr_board_fmn_config.bucket_size[(bkt * 8) + 5], in print_credit_config()
62 xlr_board_fmn_config.bucket_size[(bkt * 8) + 6], in print_credit_config()
63 xlr_board_fmn_config.bucket_size[(bkt * 8) + 7]); in print_credit_config()
70 fmn_info->credit_config[(bkt * 8) + 0], in print_credit_config()
71 fmn_info->credit_config[(bkt * 8) + 1], in print_credit_config()
72 fmn_info->credit_config[(bkt * 8) + 2], in print_credit_config()
73 fmn_info->credit_config[(bkt * 8) + 3], in print_credit_config()
74 fmn_info->credit_config[(bkt * 8) + 4], in print_credit_config()
75 fmn_info->credit_config[(bkt * 8) + 5], in print_credit_config()
76 fmn_info->credit_config[(bkt * 8) + 6], in print_credit_config()
77 fmn_info->credit_config[(bkt * 8) + 7]); in print_credit_config()
86 ncores = hweight32(nlm_current_node()->coremask); in check_credit_distribution()
90 total_credits += cfg->cpu[n].credit_config[bkt]; in check_credit_distribution()
91 total_credits += cfg->gmac[0].credit_config[bkt]; in check_credit_distribution()
92 total_credits += cfg->gmac[1].credit_config[bkt]; in check_credit_distribution()
93 total_credits += cfg->dma.credit_config[bkt]; in check_credit_distribution()
94 total_credits += cfg->cmp.credit_config[bkt]; in check_credit_distribution()
95 total_credits += cfg->sae.credit_config[bkt]; in check_credit_distribution()
96 total_credits += cfg->xgmac[0].credit_config[bkt]; in check_credit_distribution()
97 total_credits += cfg->xgmac[1].credit_config[bkt]; in check_credit_distribution()
98 if (total_credits > cfg->bucket_size[bkt]) in check_credit_distribution()
100 bkt, total_credits, cfg->bucket_size[bkt]); in check_credit_distribution()
106 * setup_fmn_cc - Configure bucket size and credits for a device.
111 * @cpu_credits: Allowed credits to cpu for each devices pointing by dev_info
124 struct xlr_fmn_info *cpu = xlr_board_fmn_config.cpu; in setup_fmn_cc() local
126 num_core = hweight32(nlm_current_node()->coremask); in setup_fmn_cc()
127 dev_info->num_buckets = num_buckets; in setup_fmn_cc()
128 dev_info->start_stn_id = start_stn_id; in setup_fmn_cc()
129 dev_info->end_stn_id = end_stn_id; in setup_fmn_cc()
141 cpu[j].credit_config[i] = credits_per_cpu; in setup_fmn_cc()
144 credits_per_cpu = size - (credits_per_cpu * num_core); in setup_fmn_cc()
148 cpu[j].credit_config[i] += 4; in setup_fmn_cc()
149 credits_per_cpu -= 4; in setup_fmn_cc()
153 /* Distributing cpu per bucket credits to devices */ in setup_fmn_cc()
156 dev_info->credit_config[(i * 8) + j] = cpu_credits; in setup_fmn_cc()
161 * Each core has 256 slots and 8 buckets,
162 * Configure the 8 buckets each with 32 slots
164 static void setup_cpu_fmninfo(struct xlr_fmn_info *cpu, int num_core) in setup_cpu_fmninfo() argument
169 cpu[i].start_stn_id = (8 * i); in setup_cpu_fmninfo()
170 cpu[i].end_stn_id = (8 * i + 8); in setup_cpu_fmninfo()
172 for (j = cpu[i].start_stn_id; j < cpu[i].end_stn_id; j++) in setup_cpu_fmninfo()
178 * xlr_board_info_setup - Setup FMN details
185 struct xlr_fmn_info *cpu = xlr_board_fmn_config.cpu; in xlr_board_info_setup() local
193 num_core = hweight32(nlm_current_node()->coremask); in xlr_board_info_setup()
196 setup_cpu_fmninfo(cpu, num_core); in xlr_board_info_setup()
201 FMN_STNID_GMAC0_TX3, 8, 16, 32); in xlr_board_info_setup()
203 FMN_STNID_DMA_3, 4, 8, 64); in xlr_board_info_setup()
205 FMN_STNID_SEC1, 2, 8, 128); in xlr_board_info_setup()
211 FMN_STNID_GMAC0_TX3, 8, 16, 32); in xlr_board_info_setup()
213 FMN_STNID_DMA_3, 4, 8, 64); in xlr_board_info_setup()
215 FMN_STNID_SEC1, 2, 8, 128); in xlr_board_info_setup()
226 FMN_STNID_GMAC0_TX3, 8, 8, 32); in xlr_board_info_setup()
228 FMN_STNID_GMAC1_TX3, 8, 8, 32); in xlr_board_info_setup()
234 FMN_STNID_SEC1, 2, 8, 128); in xlr_board_info_setup()
239 FMN_STNID_GMAC0_TX3, 8, 8, 32); in xlr_board_info_setup()
241 FMN_STNID_GMAC1_TX3, 8, 8, 32); in xlr_board_info_setup()
247 FMN_STNID_SEC1, 2, 8, 128); in xlr_board_info_setup()
253 FMN_STNID_GMAC0_TX3, 8, 16, 32); in xlr_board_info_setup()
255 FMN_STNID_DMA_3, 4, 8, 64); in xlr_board_info_setup()
265 FMN_STNID_GMAC0_TX3, 8, 16, 32); in xlr_board_info_setup()
267 FMN_STNID_DMA_3, 4, 8, 64); in xlr_board_info_setup()
275 FMN_STNID_XMAC0_15_TX, 8, 0, 32); in xlr_board_info_setup()
277 FMN_STNID_XMAC1_15_TX, 8, 0, 32); in xlr_board_info_setup()
279 FMN_STNID_GMAC0_TX3, 8, 24, 32); in xlr_board_info_setup()
286 pr_err("Unknown CPU with processor ID [%d]\n", processor_id); in xlr_board_info_setup()
293 print_credit_config(&cpu[0]); in xlr_board_info_setup()