annotate rathaxes_cleanups_in_ethernet_rti_blt.patch @ 93:2cc8fda4c4e3

Add a patch with some wip on the ethernet part of the e1000 sample
author Louis Opter <louis@lse.epita.fr>
date Mon, 22 Oct 2012 00:56:41 +0200
parents
children 147519512c3d
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
93
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
1 # HG changeset patch
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
2 # Parent 72057981213815c2bc5f34f50a997ea2e28f2fdc
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
3 rathaxes: tidy up ethernet.{rti,blt} in the e1000 sample
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
4
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
5 - Remove typedefs;
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
6 - Rename Ethernet::SubContext in Ethernet::HardwareContext: I think this
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
7 is more clear. This pointcut is here to allow the underlying real
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
8 device to store its private data structure within the context of the
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
9 Ethernet subsystem.
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
10
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
11
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
12 diff --git a/rathaxes/samples/e1000/e1000.blt b/rathaxes/samples/e1000/e1000.blt
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
13 --- a/rathaxes/samples/e1000/e1000.blt
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
14 +++ b/rathaxes/samples/e1000/e1000.blt
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
15 @@ -268,7 +268,7 @@
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
16
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
17 template type e1000::Context()
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
18 {
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
19 - chunk Ethernet::SubContext()
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
20 + chunk Ethernet::HardwareContext()
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
21 {
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
22 /*
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
23 * Force the generation of the structure in the "headers" part, we
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
24 diff --git a/rathaxes/samples/e1000/e1000.rti b/rathaxes/samples/e1000/e1000.rti
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
25 --- a/rathaxes/samples/e1000/e1000.rti
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
26 +++ b/rathaxes/samples/e1000/e1000.rti
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
27 @@ -10,7 +10,7 @@
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
28
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
29 provided type Context
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
30 {
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
31 - chunk Ethernet::SubContext();
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
32 + chunk Ethernet::HardwareContext();
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
33 method decl();
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
34 method init();
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
35 }
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
36 diff --git a/rathaxes/samples/e1000/ethernet.blt b/rathaxes/samples/e1000/ethernet.blt
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
37 --- a/rathaxes/samples/e1000/ethernet.blt
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
38 +++ b/rathaxes/samples/e1000/ethernet.blt
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
39 @@ -59,7 +59,7 @@
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
40
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
41 chunk ::decl()
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
42 {
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
43 - typedef struct net_device *net_devp;
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
44 + struct net_device;
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
45 }
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
46
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
47 map
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
48 @@ -76,14 +76,7 @@
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
49
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
50 chunk ::decl()
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
51 {
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
52 - /*
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
53 - * So, at first sight, it sucks to typedef it as pointer but (for
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
54 - * now) it makes sense for two reasons:
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
55 - * - This structure will always be used through a pointer;
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
56 - * - This remove the ambiguity of pointer/not-pointer in the
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
57 - * ::init() chunk.
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
58 - */
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
59 - typedef struct rtx_ethernet_dev
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
60 + struct rtx_ethernet_dev
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
61 {
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
62 /*
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
63 * I think it's useless to use the ${PCI::Device} "abstraction"
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
64 @@ -96,8 +89,8 @@
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
65 * In the long-term, this may disappear for a new concept allowing
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
66 * to embbed a descriptor defined and manipulated by the front-end
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
67 */
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
68 - ${pointcut Ethernet::SubContext()};
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
69 - } *rtx_ethernet_dev_p;
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
70 + ${pointcut Ethernet::HardwareContext()};
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
71 + };
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
72 }
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
73
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
74 chunk ::init(Ethernet::AbstractDevice net_dev, PCI::Device pci_dev)
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
75 @@ -105,7 +98,7 @@
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
76 ${self} = netdev_priv(${net_dev});
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
77 /*
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
78 * We can use -> because we know that ${self} will be always a
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
79 - * pointer ("thanks" to the typedef)
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
80 + * pointer, but the ambiguity sucks.
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
81 */
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
82 ${self}->pci_dev = ${pci_dev};
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
83 ${self}->net_dev = ${net_dev};
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
84 @@ -213,12 +206,8 @@
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
85 /* For now the type is not handled, so we just omit it (see #17) */
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
86 chunk PCI::pci_probe_hook(PCI::Device pdev)
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
87 {
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
88 - /*
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
89 - * This typedef is needed to workaround a bug in CNorm __std__
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
90 - * dialect.
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
91 - */
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
92 ${Ethernet::Device} rtx_ether_ctx;
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
93 - struct net_device *net_dev;
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
94 + ${Ethernet::AbstractDevice} net_dev;
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
95 int error;
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
96
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
97 /* Initialize the net_device structure */
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
98 @@ -264,8 +253,7 @@
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
99 {
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
100 chunk PCI::pci_remove_hook(PCI::Device pdev)
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
101 {
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
102 - /* workaround for cnorm unstrict */
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
103 - struct net_device *net_dev = pci_get_drvdata(${pdev});
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
104 + ${Ethernet::AbstractDevice} net_dev = pci_get_drvdata(${pdev});
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
105 ${Ethernet::Device} rtx_ether_ctx = netdev_priv(net_dev);
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
106
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
107 ${pointcut Ethernet::destroy_device(pdev, local.rtx_ether_ctx)};
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
108 diff --git a/rathaxes/samples/e1000/ethernet.rti b/rathaxes/samples/e1000/ethernet.rti
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
109 --- a/rathaxes/samples/e1000/ethernet.rti
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
110 +++ b/rathaxes/samples/e1000/ethernet.rti
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
111 @@ -27,7 +27,7 @@
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
112 chunk LKM::includes();
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
113 method decl();
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
114 method init(Ethernet::AbstractDevice, PCI::Device);
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
115 - pointcut Ethernet::SubContext();
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
116 + pointcut Ethernet::HardwareContext();
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
117 }
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
118
2cc8fda4c4e3 Add a patch with some wip on the ethernet part of the e1000 sample
Louis Opter <louis@lse.epita.fr>
parents:
diff changeset
119 required sequence open(Ethernet::Device)