~ubuntu-branches/ubuntu/saucy/linux-ti-omap4/saucy-proposed

« back to all changes in this revision

Viewing changes to tools/perf/util/pmu.c

  • Committer: Package Import Robot
  • Author(s): Paolo Pisati, Paolo Pisati, Stefan Bader, Upstream Kernel Changes
  • Date: 2012-08-15 17:17:43 UTC
  • Revision ID: package-import@ubuntu.com-20120815171743-h5wnuf51xe7pvdid
Tags: 3.5.0-207.13
[ Paolo Pisati ]

* Start new release

[ Stefan Bader ]

* (config) Enable getabis to use local package copies

[ Upstream Kernel Changes ]

* fixup: gargabe collect iva_seq[0|1] init
* [Config] enable all SND_OMAP_SOC_*s
* fixup: cm2xxx_3xxx.o is needed for omap2_cm_read|write_reg
* fixup: add some snd_soc_dai* helper functions
* fixup: s/snd_soc_dpcm_params/snd_soc_dpcm/g
* fixup: typo, no_host_mode and useless SDP4430 init
* fixup: enable again aess hwmod

Show diffs side-by-side

added added

removed removed

Lines of Context:
225
225
        if (parse_events__is_hardcoded_term(term))
226
226
                return 0;
227
227
 
228
 
        if (term->type != PARSE_EVENTS__TERM_TYPE_NUM)
 
228
        if (term->type_val != PARSE_EVENTS__TERM_TYPE_NUM)
229
229
                return -EINVAL;
230
230
 
231
231
        format = pmu_find_format(formats, term->config);
246
246
                return -EINVAL;
247
247
        }
248
248
 
 
249
        /*
 
250
         * XXX If we ever decide to go with string values for
 
251
         * non-hardcoded terms, here's the place to translate
 
252
         * them into value.
 
253
         */
249
254
        *vp |= pmu_format_value(format->bits, term->val.num);
250
255
        return 0;
251
256
}
253
258
static int pmu_config(struct list_head *formats, struct perf_event_attr *attr,
254
259
                      struct list_head *head_terms)
255
260
{
256
 
        struct parse_events__term *term, *h;
 
261
        struct parse_events__term *term;
257
262
 
258
 
        list_for_each_entry_safe(term, h, head_terms, list)
 
263
        list_for_each_entry(term, head_terms, list)
259
264
                if (pmu_config_term(formats, attr, term))
260
265
                        return -EINVAL;
261
266
 
324
329
/* Simulated users input. */
325
330
static struct parse_events__term test_terms[] = {
326
331
        {
327
 
                .config  = (char *) "krava01",
328
 
                .val.num = 15,
329
 
                .type    = PARSE_EVENTS__TERM_TYPE_NUM,
330
 
        },
331
 
        {
332
 
                .config  = (char *) "krava02",
333
 
                .val.num = 170,
334
 
                .type    = PARSE_EVENTS__TERM_TYPE_NUM,
335
 
        },
336
 
        {
337
 
                .config  = (char *) "krava03",
338
 
                .val.num = 1,
339
 
                .type    = PARSE_EVENTS__TERM_TYPE_NUM,
340
 
        },
341
 
        {
342
 
                .config  = (char *) "krava11",
343
 
                .val.num = 27,
344
 
                .type    = PARSE_EVENTS__TERM_TYPE_NUM,
345
 
        },
346
 
        {
347
 
                .config  = (char *) "krava12",
348
 
                .val.num = 1,
349
 
                .type    = PARSE_EVENTS__TERM_TYPE_NUM,
350
 
        },
351
 
        {
352
 
                .config  = (char *) "krava13",
353
 
                .val.num = 2,
354
 
                .type    = PARSE_EVENTS__TERM_TYPE_NUM,
355
 
        },
356
 
        {
357
 
                .config  = (char *) "krava21",
358
 
                .val.num = 119,
359
 
                .type    = PARSE_EVENTS__TERM_TYPE_NUM,
360
 
        },
361
 
        {
362
 
                .config  = (char *) "krava22",
363
 
                .val.num = 11,
364
 
                .type    = PARSE_EVENTS__TERM_TYPE_NUM,
365
 
        },
366
 
        {
367
 
                .config  = (char *) "krava23",
368
 
                .val.num = 2,
369
 
                .type    = PARSE_EVENTS__TERM_TYPE_NUM,
 
332
                .config    = (char *) "krava01",
 
333
                .val.num   = 15,
 
334
                .type_val  = PARSE_EVENTS__TERM_TYPE_NUM,
 
335
                .type_term = PARSE_EVENTS__TERM_TYPE_USER,
 
336
        },
 
337
        {
 
338
                .config    = (char *) "krava02",
 
339
                .val.num   = 170,
 
340
                .type_val  = PARSE_EVENTS__TERM_TYPE_NUM,
 
341
                .type_term = PARSE_EVENTS__TERM_TYPE_USER,
 
342
        },
 
343
        {
 
344
                .config    = (char *) "krava03",
 
345
                .val.num   = 1,
 
346
                .type_val  = PARSE_EVENTS__TERM_TYPE_NUM,
 
347
                .type_term = PARSE_EVENTS__TERM_TYPE_USER,
 
348
        },
 
349
        {
 
350
                .config    = (char *) "krava11",
 
351
                .val.num   = 27,
 
352
                .type_val  = PARSE_EVENTS__TERM_TYPE_NUM,
 
353
                .type_term = PARSE_EVENTS__TERM_TYPE_USER,
 
354
        },
 
355
        {
 
356
                .config    = (char *) "krava12",
 
357
                .val.num   = 1,
 
358
                .type_val  = PARSE_EVENTS__TERM_TYPE_NUM,
 
359
                .type_term = PARSE_EVENTS__TERM_TYPE_USER,
 
360
        },
 
361
        {
 
362
                .config    = (char *) "krava13",
 
363
                .val.num   = 2,
 
364
                .type_val  = PARSE_EVENTS__TERM_TYPE_NUM,
 
365
                .type_term = PARSE_EVENTS__TERM_TYPE_USER,
 
366
        },
 
367
        {
 
368
                .config    = (char *) "krava21",
 
369
                .val.num   = 119,
 
370
                .type_val  = PARSE_EVENTS__TERM_TYPE_NUM,
 
371
                .type_term = PARSE_EVENTS__TERM_TYPE_USER,
 
372
        },
 
373
        {
 
374
                .config    = (char *) "krava22",
 
375
                .val.num   = 11,
 
376
                .type_val  = PARSE_EVENTS__TERM_TYPE_NUM,
 
377
                .type_term = PARSE_EVENTS__TERM_TYPE_USER,
 
378
        },
 
379
        {
 
380
                .config    = (char *) "krava23",
 
381
                .val.num   = 2,
 
382
                .type_val  = PARSE_EVENTS__TERM_TYPE_NUM,
 
383
                .type_term = PARSE_EVENTS__TERM_TYPE_USER,
370
384
        },
371
385
};
372
386
#define TERMS_CNT (sizeof(test_terms) / sizeof(struct parse_events__term))