diff options
Diffstat (limited to 'meta-openmoko/packages/openmoko2/openmoko-dialer2/openmoko-dialer.patch')
-rw-r--r-- | meta-openmoko/packages/openmoko2/openmoko-dialer2/openmoko-dialer.patch | 117 |
1 files changed, 117 insertions, 0 deletions
diff --git a/meta-openmoko/packages/openmoko2/openmoko-dialer2/openmoko-dialer.patch b/meta-openmoko/packages/openmoko2/openmoko-dialer2/openmoko-dialer.patch new file mode 100644 index 0000000000..5969726857 --- /dev/null +++ b/meta-openmoko/packages/openmoko2/openmoko-dialer2/openmoko-dialer.patch | |||
@@ -0,0 +1,117 @@ | |||
1 | --- openmoko-dialer2/src/moko-dialer.c~ 2007-08-27 20:02:37.000000000 +0930 | ||
2 | +++ openmoko-dialer2/src/moko-dialer.c 2007-08-27 18:59:37.000000000 +0930 | ||
3 | @@ -69,8 +69,7 @@ | ||
4 | |||
5 | /* Registration variables */ | ||
6 | guint reg_timeout; | ||
7 | - gboolean reg_request; | ||
8 | - gboolean registered; | ||
9 | + MokoGsmdConnectionNetregType registered; | ||
10 | }; | ||
11 | |||
12 | enum | ||
13 | @@ -292,8 +291,7 @@ | ||
14 | |||
15 | moko_keypad_set_pin_mode (MOKO_KEYPAD (priv->keypad), FALSE); | ||
16 | |||
17 | - priv->reg_request = TRUE; | ||
18 | - priv->registered = FALSE; | ||
19 | + priv->registered = MOKO_GSMD_CONNECTION_NETREG_NONE; | ||
20 | priv->reg_timeout = g_timeout_add (GSM_REGISTER_TIMEOUT, | ||
21 | (GSourceFunc)register_network_cb, | ||
22 | dialer); | ||
23 | @@ -424,14 +422,14 @@ | ||
24 | g_return_if_fail (MOKO_IS_DIALER (dialer)); | ||
25 | priv = dialer->priv; | ||
26 | |||
27 | + g_warning ("on_network_registered: type is %d\n", type); | ||
28 | + | ||
29 | switch (type) | ||
30 | { | ||
31 | case MOKO_GSMD_CONNECTION_NETREG_NONE: | ||
32 | case MOKO_GSMD_CONNECTION_NETREG_SEARCHING: | ||
33 | /* Do nothing */ | ||
34 | g_print ("NetReg: Searching for network\n"); | ||
35 | - g_source_remove (priv->reg_timeout); | ||
36 | - priv->registered = TRUE; | ||
37 | break; | ||
38 | case MOKO_GSMD_CONNECTION_NETREG_DENIED: | ||
39 | /* This may be a pin issue*/ | ||
40 | @@ -441,11 +439,12 @@ | ||
41 | g_print ("NetReg: Network registered\n"); | ||
42 | g_print("\tLocationAreaCode = %x\n\tCellID = %x\n", lac, cell); | ||
43 | g_source_remove (priv->reg_timeout); | ||
44 | - priv->registered = TRUE; | ||
45 | break; | ||
46 | default: | ||
47 | g_warning ("Unhandled register event type = %d\n", type); | ||
48 | }; | ||
49 | + | ||
50 | + priv->registered = type; | ||
51 | } | ||
52 | |||
53 | static void | ||
54 | @@ -619,28 +618,32 @@ | ||
55 | g_return_val_if_fail (MOKO_DIALER (dialer), TRUE); | ||
56 | priv = MOKO_DIALER_GET_PRIVATE (dialer); | ||
57 | |||
58 | - if (!priv->reg_request) | ||
59 | + /* We check whether we've been registered yet, otherwise keep poking | ||
60 | + * gsmd | ||
61 | + */ | ||
62 | + switch (priv->registered) | ||
63 | { | ||
64 | - /* We have yet to request registration, so lets do it */ | ||
65 | - /* FIXME: do the pin stuff */ | ||
66 | - g_print ("Requesting registration\n"); | ||
67 | - moko_gsmd_connection_network_register (priv->connection); | ||
68 | - } | ||
69 | - else | ||
70 | - { | ||
71 | - /* We check whether we've been registered yet, otherwise keep poking | ||
72 | - * gsmd | ||
73 | - */ | ||
74 | - if (priv->registered) | ||
75 | - { | ||
76 | - g_print ("Network Registered\n"); | ||
77 | - return FALSE; | ||
78 | - } | ||
79 | - else | ||
80 | - { | ||
81 | + case MOKO_GSMD_CONNECTION_NETREG_NONE: | ||
82 | + /* We have yet to request registration, so lets do it */ | ||
83 | + /* FIXME: do the pin stuff */ | ||
84 | g_print ("Requesting registration\n"); | ||
85 | moko_gsmd_connection_network_register (priv->connection); | ||
86 | - } | ||
87 | + priv->registered = MOKO_GSMD_CONNECTION_NETREG_SEARCHING; | ||
88 | + break; | ||
89 | + case MOKO_GSMD_CONNECTION_NETREG_SEARCHING: | ||
90 | + g_print ("Waiting for registration\n"); | ||
91 | + break; | ||
92 | + case MOKO_GSMD_CONNECTION_NETREG_DENIED: | ||
93 | + g_print ("Registration denied, retrying\n"); | ||
94 | + moko_gsmd_connection_network_register (priv->connection); | ||
95 | + priv->registered = MOKO_GSMD_CONNECTION_NETREG_SEARCHING; | ||
96 | + break; | ||
97 | + case MOKO_GSMD_CONNECTION_NETREG_HOME: | ||
98 | + case MOKO_GSMD_CONNECTION_NETREG_ROAMING: | ||
99 | + g_print ("Network Registered\n"); | ||
100 | + return FALSE; | ||
101 | + default: | ||
102 | + g_warning ("Unhandled register event type = %d\n", priv->registered); | ||
103 | } | ||
104 | |||
105 | return TRUE; | ||
106 | @@ -754,9 +757,8 @@ | ||
107 | |||
108 | /* Handle network registration a few seconds after powering up the | ||
109 | * antenna*/ | ||
110 | - priv->reg_request = TRUE; | ||
111 | - priv->registered = FALSE; | ||
112 | - priv->reg_timeout = g_timeout_add (GSM_REGISTER_TIMEOUT, | ||
113 | + priv->registered = MOKO_GSMD_CONNECTION_NETREG_NONE; | ||
114 | + priv->reg_timeout = g_timeout_add (GSM_REGISTER_TIMEOUT * 2, | ||
115 | (GSourceFunc)register_network_cb, | ||
116 | dialer); | ||
117 | |||