1
2#include <linux/platform_device.h>
3
4#ifndef _SOFTING_DEVICE_H_
5#define _SOFTING_DEVICE_H_
6
7/* softing firmware directory prefix */
8#define fw_dir "softing-4.6/"
9
10struct softing_platform_data {
11	unsigned int manf;
12	unsigned int prod;
13	/*
14	 * generation
15	 * 1st with NEC or SJA1000
16	 * 8bit, exclusive interrupt, ...
17	 * 2nd only SJA1000
18	 * 16bit, shared interrupt
19	 */
20	int generation;
21	int nbus; /* # busses on device */
22	unsigned int freq; /* operating frequency in Hz */
23	unsigned int max_brp;
24	unsigned int max_sjw;
25	unsigned long dpram_size;
26	const char *name;
27	struct {
28		unsigned long offs;
29		unsigned long addr;
30		const char *fw;
31	} boot, load, app;
32	/*
33	 * reset() function
34	 * bring pdev in or out of reset, depending on value
35	 */
36	int (*reset)(struct platform_device *pdev, int value);
37	int (*enable_irq)(struct platform_device *pdev, int value);
38};
39
40#endif
41