28 lines · 670 B · C
RawDownload
// SPDX-License-Identifier: GPL-2.0#include <linux/cpufreq.h>#include <linux/fs.h>#include <linux/init.h>#include <linux/proc_fs.h>#include <linux/seq_file.h> extern const struct seq_operations cpuinfo_op; static int cpuinfo_open(struct inode *inode, struct file *file){	return seq_open(file, &cpuinfo_op);} static const struct proc_ops cpuinfo_proc_ops = {	.proc_flags	= PROC_ENTRY_PERMANENT,	.proc_open	= cpuinfo_open,	.proc_read_iter	= seq_read_iter,	.proc_lseek	= seq_lseek,	.proc_release	= seq_release,}; static int __init proc_cpuinfo_init(void){	proc_create("cpuinfo", 0, NULL, &cpuinfo_proc_ops);	return 0;}fs_initcall(proc_cpuinfo_init);