18c2ecf20Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0
28c2ecf20Sopenharmony_ci#include <linux/kernel.h>
38c2ecf20Sopenharmony_ci#include <linux/export.h>
48c2ecf20Sopenharmony_ci#include <linux/ide.h>
58c2ecf20Sopenharmony_ci#include <linux/seq_file.h>
68c2ecf20Sopenharmony_ci
78c2ecf20Sopenharmony_ci#include "ide-floppy.h"
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_cistatic int idefloppy_capacity_proc_show(struct seq_file *m, void *v)
108c2ecf20Sopenharmony_ci{
118c2ecf20Sopenharmony_ci	ide_drive_t*drive = (ide_drive_t *)m->private;
128c2ecf20Sopenharmony_ci
138c2ecf20Sopenharmony_ci	seq_printf(m, "%llu\n", (long long)ide_gd_capacity(drive));
148c2ecf20Sopenharmony_ci	return 0;
158c2ecf20Sopenharmony_ci}
168c2ecf20Sopenharmony_ci
178c2ecf20Sopenharmony_ciide_proc_entry_t ide_floppy_proc[] = {
188c2ecf20Sopenharmony_ci	{ "capacity",	S_IFREG|S_IRUGO, idefloppy_capacity_proc_show	},
198c2ecf20Sopenharmony_ci	{ "geometry",	S_IFREG|S_IRUGO, ide_geometry_proc_show		},
208c2ecf20Sopenharmony_ci	{}
218c2ecf20Sopenharmony_ci};
228c2ecf20Sopenharmony_ci
238c2ecf20Sopenharmony_ciide_devset_rw_field(bios_cyl, bios_cyl);
248c2ecf20Sopenharmony_ciide_devset_rw_field(bios_head, bios_head);
258c2ecf20Sopenharmony_ciide_devset_rw_field(bios_sect, bios_sect);
268c2ecf20Sopenharmony_ciide_devset_rw_field(ticks, pc_delay);
278c2ecf20Sopenharmony_ci
288c2ecf20Sopenharmony_ciconst struct ide_proc_devset ide_floppy_settings[] = {
298c2ecf20Sopenharmony_ci	IDE_PROC_DEVSET(bios_cyl,  0, 1023),
308c2ecf20Sopenharmony_ci	IDE_PROC_DEVSET(bios_head, 0,  255),
318c2ecf20Sopenharmony_ci	IDE_PROC_DEVSET(bios_sect, 0,   63),
328c2ecf20Sopenharmony_ci	IDE_PROC_DEVSET(ticks,	   0,  255),
338c2ecf20Sopenharmony_ci	{ NULL },
348c2ecf20Sopenharmony_ci};
35