.. | .. |
---|
53 | 53 | |
---|
54 | 54 | DEFINE_SPINLOCK(rtc_lock); |
---|
55 | 55 | |
---|
56 | | -unsigned int __read_mostly vdso_fix_stick; |
---|
57 | | - |
---|
58 | 56 | #ifdef CONFIG_SMP |
---|
59 | 57 | unsigned long profile_pc(struct pt_regs *regs) |
---|
60 | 58 | { |
---|
.. | .. |
---|
447 | 445 | { |
---|
448 | 446 | struct resource *r; |
---|
449 | 447 | |
---|
450 | | - printk(KERN_INFO "%s: RTC regs at 0x%llx\n", |
---|
451 | | - op->dev.of_node->full_name, op->resource[0].start); |
---|
| 448 | + printk(KERN_INFO "%pOF: RTC regs at 0x%llx\n", |
---|
| 449 | + op->dev.of_node, op->resource[0].start); |
---|
452 | 450 | |
---|
453 | 451 | /* The CMOS RTC driver only accepts IORESOURCE_IO, so cons |
---|
454 | 452 | * up a fake resource so that the probe works for all cases. |
---|
.. | .. |
---|
503 | 501 | static int bq4802_probe(struct platform_device *op) |
---|
504 | 502 | { |
---|
505 | 503 | |
---|
506 | | - printk(KERN_INFO "%s: BQ4802 regs at 0x%llx\n", |
---|
507 | | - op->dev.of_node->full_name, op->resource[0].start); |
---|
| 504 | + printk(KERN_INFO "%pOF: BQ4802 regs at 0x%llx\n", |
---|
| 505 | + op->dev.of_node, op->resource[0].start); |
---|
508 | 506 | |
---|
509 | 507 | rtc_bq4802_device.resource = &op->resource[0]; |
---|
510 | 508 | return platform_device_register(&rtc_bq4802_device); |
---|
.. | .. |
---|
563 | 561 | /* On an Enterprise system there can be multiple mostek clocks. |
---|
564 | 562 | * We should only match the one that is on the central FHC bus. |
---|
565 | 563 | */ |
---|
566 | | - if (!strcmp(dp->parent->name, "fhc") && |
---|
567 | | - strcmp(dp->parent->parent->name, "central") != 0) |
---|
| 564 | + if (of_node_name_eq(dp->parent, "fhc") && |
---|
| 565 | + !of_node_name_eq(dp->parent->parent, "central")) |
---|
568 | 566 | return -ENODEV; |
---|
569 | 567 | |
---|
570 | | - printk(KERN_INFO "%s: Mostek regs at 0x%llx\n", |
---|
571 | | - dp->full_name, op->resource[0].start); |
---|
| 568 | + printk(KERN_INFO "%pOF: Mostek regs at 0x%llx\n", |
---|
| 569 | + dp, op->resource[0].start); |
---|
572 | 570 | |
---|
573 | 571 | m48t59_rtc.resource = &op->resource[0]; |
---|
574 | 572 | return platform_device_register(&m48t59_rtc); |
---|
.. | .. |
---|
655 | 653 | void *data) |
---|
656 | 654 | { |
---|
657 | 655 | struct cpufreq_freqs *freq = data; |
---|
658 | | - unsigned int cpu = freq->cpu; |
---|
659 | | - struct freq_table *ft = &per_cpu(sparc64_freq_table, cpu); |
---|
| 656 | + unsigned int cpu; |
---|
| 657 | + struct freq_table *ft; |
---|
660 | 658 | |
---|
661 | | - if (!ft->ref_freq) { |
---|
662 | | - ft->ref_freq = freq->old; |
---|
663 | | - ft->clock_tick_ref = cpu_data(cpu).clock_tick; |
---|
664 | | - } |
---|
665 | | - if ((val == CPUFREQ_PRECHANGE && freq->old < freq->new) || |
---|
666 | | - (val == CPUFREQ_POSTCHANGE && freq->old > freq->new)) { |
---|
667 | | - cpu_data(cpu).clock_tick = |
---|
668 | | - cpufreq_scale(ft->clock_tick_ref, |
---|
669 | | - ft->ref_freq, |
---|
670 | | - freq->new); |
---|
| 659 | + for_each_cpu(cpu, freq->policy->cpus) { |
---|
| 660 | + ft = &per_cpu(sparc64_freq_table, cpu); |
---|
| 661 | + |
---|
| 662 | + if (!ft->ref_freq) { |
---|
| 663 | + ft->ref_freq = freq->old; |
---|
| 664 | + ft->clock_tick_ref = cpu_data(cpu).clock_tick; |
---|
| 665 | + } |
---|
| 666 | + |
---|
| 667 | + if ((val == CPUFREQ_PRECHANGE && freq->old < freq->new) || |
---|
| 668 | + (val == CPUFREQ_POSTCHANGE && freq->old > freq->new)) { |
---|
| 669 | + cpu_data(cpu).clock_tick = |
---|
| 670 | + cpufreq_scale(ft->clock_tick_ref, ft->ref_freq, |
---|
| 671 | + freq->new); |
---|
| 672 | + } |
---|
671 | 673 | } |
---|
672 | 674 | |
---|
673 | 675 | return 0; |
---|
.. | .. |
---|
838 | 840 | } else { |
---|
839 | 841 | init_tick_ops(&tick_operations); |
---|
840 | 842 | clocksource_tick.archdata.vclock_mode = VCLOCK_TICK; |
---|
841 | | - vdso_fix_stick = 1; |
---|
842 | 843 | } |
---|
843 | 844 | } else { |
---|
844 | 845 | init_tick_ops(&stick_operations); |
---|