xref: /linux/drivers/net/can/softing/softing_platform.h (revision c0c914eca7f251c70facc37dfebeaf176601918d)
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 
10 struct 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