29 #include <linux/module.h>
30 #include <linux/kernel.h>
31 #include <linux/slab.h>
32 #include <linux/types.h>
35 #include <linux/pci.h>
48 out +=
sprintf(buf,
"Free resources: memory\n");
51 while (res && index--) {
55 out +=
sprintf(out,
"Free resources: prefetchable memory\n");
58 while (res && index--) {
62 out +=
sprintf(out,
"Free resources: IO\n");
65 while (res && index--) {
69 out +=
sprintf(out,
"Free resources: bus numbers\n");
72 while (res && index--) {
80 static int show_dev (
struct controller *ctrl,
char *buf)
94 out +=
sprintf(out,
"assigned resources: memory\n");
97 while (res && index--) {
101 out +=
sprintf(out,
"assigned resources: prefetchable memory\n");
104 while (res && index--) {
108 out +=
sprintf(out,
"assigned resources: IO\n");
111 while (res && index--) {
115 out +=
sprintf(out,
"assigned resources: bus numbers\n");
118 while (res && index--) {
132 used = size - show_ctrl(ctrl, data);
133 used = (size -
used) - show_dev(ctrl, &data[used]);
143 #define MAX_OUTPUT (4*PAGE_SIZE)
168 static loff_t lseek(
struct file *
file, loff_t off,
int whence)
181 new = file->
f_pos + off;
184 if (new < 0 || new > dbg->
size) {
189 return (file->
f_pos =
new);
192 static ssize_t read(
struct file *file,
char __user *buf,
193 size_t nbytes, loff_t *ppos)
216 static struct dentry *root;
232 S_IRUGO, root, ctrl, &debug_ops);