annotate e1000_add_register_unset.patch @ 80:0354cceee710

WIP on e1000, try to add the code to free the RX ring when shutting the interface down
author Louis Opter <louis@lse.epitech.net>
date Sun, 15 Apr 2012 02:53:38 +0200
parents 501bf9cf65dc
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
74
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
1 # HG changeset patch
78
501bf9cf65dc wip on e1000 add some fixes for the generation and check that it works on tip
Louis Opter <louis@lse.epitech.net>
parents: 74
diff changeset
2 # Parent eb6bb1687169662741a6bd57191b750b3bcbb6b7
74
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
3 rathaxes: add the e1000::register_unset32() function
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
4
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
5 diff --git a/rathaxes/samples/e1000/e1000.blt b/rathaxes/samples/e1000/e1000.blt
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
6 --- a/rathaxes/samples/e1000/e1000.blt
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
7 +++ b/rathaxes/samples/e1000/e1000.blt
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
8 @@ -339,6 +339,27 @@
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
9 }
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
10 }
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
11
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
12 + template sequence e1000::register_unset32(e1000::Context ctx, e1000::Register reg_offset, ::number value)
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
13 + {
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
14 + chunk LKM::prototypes()
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
15 + {
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
16 + static void rtx_e1000_register_unset32(struct rtx_e1000_ctx *, unsigned int, unsigned int);
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
17 + }
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
18 +
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
19 + chunk LKM::code()
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
20 + {
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
21 + static void rtx_e1000_register_unset32(struct rtx_e1000_ctx *ctx, unsigned int reg_offset, unsigned int value)
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
22 + {
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
23 + iowrite32(rtx_e1000_register_read32(ctx, reg_offset) & ~value, ctx->ioaddr + reg_offset);
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
24 + }
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
25 + }
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
26 +
78
501bf9cf65dc wip on e1000 add some fixes for the generation and check that it works on tip
Louis Opter <louis@lse.epitech.net>
parents: 74
diff changeset
27 + chunk ::CALL()
74
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
28 + {
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
29 + rtx_e1000_register_unset32(${ctx}, ${reg_offset}, ${value});
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
30 + }
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
31 + }
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
32 +
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
33 template sequence e1000::setup_interrupt_handler(Ethernet::Device ctx)
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
34 {
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
35 chunk LKM::includes()
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
36 diff --git a/rathaxes/samples/e1000/e1000.rti b/rathaxes/samples/e1000/e1000.rti
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
37 --- a/rathaxes/samples/e1000/e1000.rti
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
38 +++ b/rathaxes/samples/e1000/e1000.rti
78
501bf9cf65dc wip on e1000 add some fixes for the generation and check that it works on tip
Louis Opter <louis@lse.epitech.net>
parents: 74
diff changeset
39 @@ -80,4 +80,11 @@
501bf9cf65dc wip on e1000 add some fixes for the generation and check that it works on tip
Louis Opter <louis@lse.epitech.net>
parents: 74
diff changeset
40 provided chunk LKM::code();
501bf9cf65dc wip on e1000 add some fixes for the generation and check that it works on tip
Louis Opter <louis@lse.epitech.net>
parents: 74
diff changeset
41 provided chunk ::CALL();
74
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
42 }
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
43 +
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
44 + provided sequence e1000::register_unset32(e1000::Context, e1000::Register, ::number)
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
45 + {
78
501bf9cf65dc wip on e1000 add some fixes for the generation and check that it works on tip
Louis Opter <louis@lse.epitech.net>
parents: 74
diff changeset
46 + provided chunk LKM::prototypes();
501bf9cf65dc wip on e1000 add some fixes for the generation and check that it works on tip
Louis Opter <louis@lse.epitech.net>
parents: 74
diff changeset
47 + provided chunk LKM::code();
501bf9cf65dc wip on e1000 add some fixes for the generation and check that it works on tip
Louis Opter <louis@lse.epitech.net>
parents: 74
diff changeset
48 + provided chunk ::CALL();
74
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
49 + }
ff90ee2fe1c4 Remove the finished patch on e1000 improvements and start a new series on e1000
Louis Opter <louis@lse.epitech.net>
parents:
diff changeset
50 }