Index: hpckbdkeymap.h
===================================================================
RCS file: /cvsroot/src/sys/dev/hpc/hpckbdkeymap.h,v
retrieving revision 1.38
diff -u -r1.38 hpckbdkeymap.h
--- hpckbdkeymap.h	11 Dec 2005 12:21:22 -0000	1.38
+++ hpckbdkeymap.h	21 Feb 2006 10:32:18 -0000
@@ -592,28 +592,6 @@
 /*15 */ UNK, UNK, UNK, UNK, UNK, UNK, UNK, UNK,
 };
 
-/* US (ABA), UK (ABU) */
-static const keysym_t jornada6x0_us_keydesc[] = {
-/*  pos      normal          shifted        altgr	*/
-    KC(2),   KS_1,           KS_exclam,     KS_asciitilde,
-    KC(3),   KS_2,           KS_at,         KS_grave,
-    KC(4),   KS_3,           KS_numbersign, KS_sterling,
-#ifdef KS_euro
-    KC(5),   KS_4,           KS_dollar,     KS_euro,
-#endif
-    KC(25),  KS_p,           KS_P,          KS_braceleft,
-    KC(39),  KS_semicolon,   KS_colon,      KS_bracketleft,
-    KC(40),  KS_apostrophe,  KS_quotedbl,   KS_bracketright,
-    KC(43),  KS_backslash,   KS_bar,        KS_braceright,
-    KC(184), KS_Mode_switch, KS_Multi_key,
-
-    KC(200), KS_Cmd_BrightnessUp,   KS_Up,
-    KC(203), KS_Cmd_ContrastDown,   KS_Left,
-    KC(205), KS_Cmd_ContrastUp,     KS_Right,
-    KC(208), KS_Cmd_BrightnessDown, KS_Down,
-};
-
-
 /* International - AltGr to the right and extra keys in three middle rows */
 const uint8_t jornada6x0_intl_keytrans[] = {
 /*      0    1    2    3    4    5    6    7 */
@@ -635,140 +613,6 @@
 /*15 */ UNK, UNK, UNK, UNK, UNK, UNK, UNK, UNK,
 };
 
-/*
- * XXX: Add AltGr layer for #ABB here?  OTOH, all the keys necessary
- * for basic actions in DDB or shell are on the primary layer, so it
- * makes sense to support AltGr via wsconsctl(8) instead, as the same
- * primary layer is used e.g. in Russian models.  But it does make
- * sense to define the <AltGr> key itself here, as we base this layout
- * on KB_US that defines it as the right <Alt>.
- */
-/* European English (ABB) */
-static const keysym_t jornada6x0_intl_keydesc[] = {
-/*  pos      normal          shifted        altgr	*/
-    KC(184), KS_Mode_switch, KS_Multi_key,
-
-    KC(200), KS_Cmd_BrightnessUp,   KS_Up,
-    KC(203), KS_Cmd_ContrastDown,   KS_Left,
-    KC(205), KS_Cmd_ContrastUp,     KS_Right,
-    KC(208), KS_Cmd_BrightnessDown, KS_Down,
-};
-
-/* German (ABD) */
-static const keysym_t jornada6x0_de_keydesc[] = {
-/*  pos      normal          shifted        altgr	*/
-    KC(2),   KS_1,           KS_exclam,     KS_brokenbar,
-    KC(5),   KS_4,           KS_dollar,     KS_ccedilla,
-    KC(6),   KS_5,           KS_percent,    KS_sterling,
-    KC(7),   KS_6,           KS_ampersand,  KS_notsign,
-#ifdef KS_euro
-    KC(18),  KS_e,           KS_E,          KS_euro,
-#endif
-    KC(27),  KS_plus,        KS_asterisk,   KS_asciitilde, /* NB: not dead */
-    KC(30),  KS_a,           KS_A,          KS_bar,
-    KC(41),  KS_asciicircum, KS_degree,			   /* NB: not dead */
-    KC(43),  KS_numbersign,  KS_apostrophe, KS_dead_diaeresis,
-    KC(44),  KS_y,           KS_Y,          KS_less,
-    KC(45),  KS_x,           KS_X,          KS_greater,
-    KC(46),  KS_c,           KS_C,          KS_cent,
-
-    KC(200), KS_Cmd_BrightnessUp,   KS_Up,
-    KC(203), KS_Cmd_ContrastDown,   KS_Left,
-    KC(205), KS_Cmd_ContrastUp,     KS_Right,
-    KC(208), KS_Cmd_BrightnessDown, KS_Down,
-};
-
-/* French (ABF) */
-static const keysym_t jornada6x0_fr_keydesc[] = {
-/*  pos      normal          shifted        altgr	*/
-    KC(2),   KS_ampersand,   KS_1,          KS_plusminus,
-#ifdef KS_euro
-    KC(18),  KS_e,           KS_E,          KS_euro,
-#endif
-    KC(19),  KS_r,           KS_R,          KS_onequarter,
-    KC(20),  KS_t,           KS_T,          KS_onehalf,
-    KC(21),  KS_y,           KS_Y,          KS_threequarters,
-    KC(25),  KS_p,           KS_P,          KS_paragraph,
-    KC(30),  KS_q,           KS_Q,          KS_brokenbar,
-    KC(31),  KS_s,           KS_S,          KS_guillemotleft,
-    KC(32),  KS_d,           KS_D,          KS_guillemotright,
-    KC(40),  KS_ugrave,      KS_percent,    KS_dead_acute,
-    KC(41),  KS_twosuperior, KS_voidSymbol, KS_threesuperior,
-    KC(43),  KS_asterisk,    KS_mu,         KS_notsign,
-    KC(44),  KS_w,           KS_W,          KS_less,
-    KC(45),  KS_x,           KS_X,          KS_greater,
-    KC(46),  KS_c,           KS_C,          KS_cent,
-    KC(50),  KS_comma,       KS_question,   KS_mu,
-    KC(53),  KS_exclam,      KS_section,    KS_Eacute,
-    KC(184), KS_Mode_switch, KS_Multi_key,
-
-    KC(200), KS_Cmd_BrightnessUp,   KS_Up,
-    KC(203), KS_Cmd_ContrastDown,   KS_Left,
-    KC(205), KS_Cmd_ContrastUp,     KS_Right,
-    KC(208), KS_Cmd_BrightnessDown, KS_Down,
-};
-
-/* Scandinavian */
-static const keysym_t jornada6x0_scnv_keydesc[] = {
-/*  pos      normal          shifted        altgr	*/
-    KC(2),   KS_1,           KS_exclam,     KS_asciitilde,
-    KC(3),   KS_2,           KS_quotedbl,   KS_at,
-    KC(4),   KS_3,           KS_numbersign, KS_sterling,
-    KC(5),   KS_4,           KS_currency,   KS_dollar,
-    KC(7),   KS_6,           KS_ampersand,
-    KC(8),   KS_7,           KS_slash,      KS_braceleft,
-    KC(9),   KS_8,           KS_parenleft,  KS_bracketleft,
-    KC(10),  KS_9,           KS_parenright, KS_bracketright,
-    KC(11),  KS_0,           KS_equal,      KS_braceright,
-    KC(12),  KS_plus,        KS_question,   KS_backslash,
-    KC(13),  KS_apostrophe,  KS_grave,
-    KC(25),  KS_p,           KS_P,          KS_braceleft,
-    KC(26),  KS_aring,
-    /*
-     * XXX: KC(39) and KC(40) has odiaeresis/adiaeresis *and*
-     * oslash/ae on them.  Apparently localized WinCE uses the former
-     * for Swedish and Finnish and the latter for Danish and
-     * Norwegian.  But as the keyboard doesn't seem to have
-     * semicolon/colon and minus/underscore nowhere on the primary and
-     * altgr layers, I put them here (semicolon/colon is inherited).
-     */
-    KC(40),  KS_minus,       KS_underscore, /* XXX */
-    KC(41),  KS_paragraph,   KS_onehalf,    KS_bar,
-    KC(184), KS_Mode_switch, KS_Multi_key,
-
-    KC(200), KS_Cmd_BrightnessUp,   KS_Up,
-    KC(203), KS_Cmd_ContrastDown,   KS_Left,
-    KC(205), KS_Cmd_ContrastUp,     KS_Right,
-    KC(208), KS_Cmd_BrightnessDown, KS_Down,
-};
-
-/* Spanish (ABE) */
-static const keysym_t jornada6x0_es_keydesc[] = {
-/*  pos      normal          shifted        altgr            */
-    KC(2),   KS_1,           KS_exclam,     KS_ordfeminine,
-    KC(3),   KS_2,           KS_quotedbl,   KS_masculine,
-    KC(4),   KS_3,           KS_numbersign,
-    KC(12),  KS_apostrophe,  KS_question,   KS_backslash,
-    KC(13),  KS_questiondown,KS_exclamdown,
-    KC(16),  KS_q,           KS_Q,          KS_at,
-#ifdef KS_euro
-    KC(18),  KS_e,           KS_E,          KS_euro,
-#endif
-    KC(26),  KS_dead_acute,  KS_dead_diaeresis,
-    KC(27),  KS_plus,        KS_asterisk,   KS_dead_tilde,
-    KC(40),  KS_braceleft,   KS_bracketleft,KS_dead_circumflex,
-    KC(41),  KS_bar,         KS_degree,     KS_notsign,
-    KC(43),  KS_braceright,  KS_bracketright,KS_dead_grave,
-    KC(44),  KS_z,           KS_Z,          KS_less,
-    KC(45),  KS_x,           KS_X,          KS_greater,
-    KC(46),  KS_c,           KS_C,          KS_Ccedilla,
-
-    KC(200), KS_Cmd_BrightnessUp,   KS_Up,
-    KC(203), KS_Cmd_ContrastDown,   KS_Left,
-    KC(205), KS_Cmd_ContrastUp,     KS_Right,
-    KC(208), KS_Cmd_BrightnessDown, KS_Down,
-};
-
 const int jornada6x0_special_keymap[] = {
 	[KEY_SPECIAL_OFF]	= -1,
 	[KEY_SPECIAL_LIGHT]	= -1
@@ -899,6 +743,238 @@
 
 #endif /* hpcsh */
 
+#ifdef hpcarm
+/*
+ * HP Jornada 710/720/728
+ */
+
+/* Japanese */
+const uint8_t jornada7xx_jp_keytrans[] = {
+/* 00 */ UNK,  1 , 59 , 60 , 61 , 62 , 63 , 64 ,
+/* 08 */ 65 , 66 , 67 , 112, 41 , UNK, UNK, UNK,
+/* 10 */ UNK,  2 ,  3 ,  4 ,  5 ,  6 ,  7 ,  8 ,
+/* 18 */  9 , 10 , 11 , 12 , 13 , UNK, UNK, UNK,
+/* 20 */ UNK, 16 , 17 , 18 , 19 , 20 , 21 , 22 ,
+/* 28 */  23, 24 , 25 , 26 , UNK, UNK, UNK, UNK,
+/* 30 */ UNK, 30 , 31 , 32 , 33 , 34 , 35 , 36 ,
+/* 38 */  37, 38 , 39 , 27 , 43 , UNK, UNK, UNK,
+/* 40 */ UNK, 44 , 45 , 46 , 47 , 48 , 49 , 50 ,
+/* 48 */  51, 52 , 53 , 40 , 28 , UNK, UNK, UNK,
+/* 50 */ UNK, 15 , UNK, 42 , UNK, UNK, UNK, UNK,
+/* 58 */ UNK, UNK, 200, 125, 54 , UNK, UNK, UNK,
+/* 60 */ UNK, UNK, UNK, UNK, UNK, 56 , 123, UNK,
+/* 68 */ UNK, 203, 208, 205, UNK, UNK, UNK, UNK,
+/* 70 */ UNK, 219, 29 , UNK, 57 , UNK, UNK, 121,
+/* 78 */ 53 , 14 , UNK, UNK, UNK, UNK, UNK, SPL,
+};
+
+/* US/UK - Fn to the left of the space bar and missing few keys */
+const uint8_t jornada7xx_us_keytrans[] = {
+/* 00 */ UNK,  1 , 59 , 60 , 61 , 62 , 63 , 64 ,
+/* 08 */ 65 , 66 , 67 , 68 , 87 , UNK, UNK, UNK,
+/* 10 */ UNK,  2 ,  3 ,  4 ,  5 ,  6 ,  7 ,  8 ,
+/* 18 */  9 , 10 , 11 , 12 , 13 , UNK, UNK, UNK,
+/* 20 */ UNK, 16 , 17 , 18 , 19 , 20 , 21 , 22 ,
+/* 28 */  23, 24 , 25 , 43 , 14 , UNK, UNK, UNK,
+/* 30 */ UNK, 30 , 31 , 32 , 33 , 34 , 35 , 36 ,
+/* 38 */  37, 38 , 39 , 40 , UNK, UNK, UNK, UNK,
+/* 40 */ UNK, 44 , 45 , 46 , 47 , 48 , 49 , 50 ,
+/* 48 */  51, 52 , UNK, 40 , 28 , UNK, UNK, UNK,
+/* 50 */ UNK, 15 , UNK, 42 , UNK, UNK, UNK, UNK,
+/* 58 */ UNK, UNK, 200, UNK, 54 , UNK, UNK, UNK,
+/* 60 */ UNK, UNK, UNK, UNK, UNK, 56 , 184, UNK,
+/* 68 */ UNK, 203, 208, 205, UNK, UNK, UNK, UNK,
+/* 70 */ UNK, 219, 29 , UNK, 57 , UNK, UNK, UNK,
+/* 78 */ 53 , 14 , UNK, UNK, UNK, UNK, UNK, SPL,
+};
+
+/* International - AltGr to the right and extra keys in three middle rows */
+const uint8_t jornada7xx_intl_keytrans[] = {
+/* 00 */ UNK,  1 , 59 , 60 , 61 , 62 , 63 , 64 ,
+/* 08 */ 65 , 66 , 67 , 68 , 87 , UNK, UNK, UNK,
+/* 10 */ UNK,  2 ,  3 ,  4 ,  5 ,  6 ,  7 ,  8 ,
+/* 18 */  9 , 10 , 11 , 12 , 13 , UNK, UNK, UNK,
+/* 20 */ UNK, 16 , 17 , 18 , 19 , 20 , 21 , 22 ,
+/* 28 */  23, 24 , 25 , 26 , 14 , UNK, UNK, UNK,
+/* 30 */ UNK, 30 , 31 , 32 , 33 , 34 , 35 , 36 ,
+/* 38 */  37, 38 , 39 , 27 , 43 , UNK, UNK, UNK,
+/* 40 */ UNK, 44 , 45 , 46 , 47 , 48 , 49 , 50 ,
+/* 48 */  51, 52 , 53 , 40 , 28 , UNK, UNK, UNK,
+/* 50 */ UNK, 15 , UNK, 42 , UNK, UNK, UNK, UNK,
+/* 58 */ UNK, UNK, 200, UNK, 54 , UNK, UNK, UNK,
+/* 60 */ UNK, UNK, UNK, UNK, UNK, 56 , 41 , UNK,
+/* 68 */ UNK, 203, 208, 205, UNK, UNK, UNK, UNK,
+/* 70 */ UNK, 221, 29 , UNK, 57 , UNK, UNK, UNK,
+/* 78 */ 219, 211, UNK, UNK, UNK, UNK, UNK, SPL,
+};
+
+const int jornada7xx_special_keymap[] = {
+	[KEY_SPECIAL_OFF]	= -1,
+	[KEY_SPECIAL_LIGHT]	= 127
+};
+#endif /* hpcarm */
+
+#if defined(hpcarm) || defined(hpcsh)
+/*
+ * Shared keymaps between the Jornada series (6xx, 7xx).
+ */
+
+/* US (ABA), UK (ABU) */
+static const keysym_t jornada_us_keydesc[] = {
+/*  pos      normal          shifted        altgr       */
+    KC(2),   KS_1,           KS_exclam,     KS_asciitilde,
+    KC(3),   KS_2,           KS_at,         KS_grave,
+    KC(4),   KS_3,           KS_numbersign, KS_sterling,
+#ifdef KS_euro
+    KC(5),   KS_4,           KS_dollar,     KS_euro,
+#endif
+    KC(25),  KS_p,           KS_P,          KS_braceleft,
+    KC(39),  KS_semicolon,   KS_colon,      KS_bracketleft,
+    KC(40),  KS_apostrophe,  KS_quotedbl,   KS_bracketright,
+    KC(43),  KS_backslash,   KS_bar,        KS_braceright,
+    KC(184), KS_Mode_switch, KS_Multi_key,
+
+    KC(200), KS_Cmd_BrightnessUp,   KS_Up,
+    KC(203), KS_Cmd_ContrastDown,   KS_Left,
+    KC(205), KS_Cmd_ContrastUp,     KS_Right,
+    KC(208), KS_Cmd_BrightnessDown, KS_Down,
+};
+
+/*
+ * XXX: Add AltGr layer for #ABB here?  OTOH, all the keys necessary
+ * for basic actions in DDB or shell are on the primary layer, so it
+ * makes sense to support AltGr via wsconsctl(8) instead, as the same
+ * primary layer is used e.g. in Russian models.  But it does make
+ * sense to define the <AltGr> key itself here, as we base this layout
+ * on KB_US that defines it as the right <Alt>.
+ */
+/* European English (ABB) */
+static const keysym_t jornada_intl_keydesc[] = {
+/*  pos      normal          shifted        altgr       */
+    KC(42),  KS_Shift_L,     KS_Shift_L,    KS_Caps_Lock,
+    KC(184), KS_Mode_switch, KS_Multi_key,
+
+    KC(200), KS_Cmd_BrightnessUp,   KS_Up,
+    KC(203), KS_Cmd_ContrastDown,   KS_Left,
+    KC(205), KS_Cmd_ContrastUp,     KS_Right,
+    KC(208), KS_Cmd_BrightnessDown, KS_Down,
+};
+
+/* German (ABD) */
+static const keysym_t jornada_de_keydesc[] = {
+/*  pos      normal          shifted        altgr       */
+    KC(2),   KS_1,           KS_exclam,     KS_brokenbar,
+    KC(5),   KS_4,           KS_dollar,     KS_ccedilla,
+    KC(6),   KS_5,           KS_percent,    KS_sterling,
+    KC(7),   KS_6,           KS_ampersand,  KS_notsign,
+#ifdef KS_euro
+    KC(18),  KS_e,           KS_E,          KS_euro,
+#endif
+    KC(27),  KS_plus,        KS_asterisk,   KS_asciitilde, /* NB: not dead */
+    KC(30),  KS_a,           KS_A,          KS_bar,
+    KC(41),  KS_asciicircum, KS_degree,                    /* NB: not dead */
+    KC(43),  KS_numbersign,  KS_apostrophe, KS_dead_diaeresis,
+    KC(44),  KS_y,           KS_Y,          KS_less,
+    KC(45),  KS_x,           KS_X,          KS_greater,
+    KC(46),  KS_c,           KS_C,          KS_cent,
+
+    KC(200), KS_Cmd_BrightnessUp,   KS_Up,
+    KC(203), KS_Cmd_ContrastDown,   KS_Left,
+    KC(205), KS_Cmd_ContrastUp,     KS_Right,
+    KC(208), KS_Cmd_BrightnessDown, KS_Down,
+};
+
+/* French (ABF) */
+static const keysym_t jornada_fr_keydesc[] = {
+/*  pos      normal          shifted        altgr       */
+    KC(2),   KS_ampersand,   KS_1,          KS_plusminus,
+#ifdef KS_euro
+    KC(18),  KS_e,           KS_E,          KS_euro,
+#endif
+    KC(19),  KS_r,           KS_R,          KS_onequarter,
+    KC(20),  KS_t,           KS_T,          KS_onehalf,
+    KC(21),  KS_y,           KS_Y,          KS_threequarters,
+    KC(25),  KS_p,           KS_P,          KS_paragraph,
+    KC(30),  KS_q,           KS_Q,          KS_brokenbar,
+    KC(31),  KS_s,           KS_S,          KS_guillemotleft,
+    KC(32),  KS_d,           KS_D,          KS_guillemotright,
+    KC(40),  KS_ugrave,      KS_percent,    KS_dead_acute,
+    KC(41),  KS_twosuperior, KS_voidSymbol, KS_threesuperior,
+    KC(43),  KS_asterisk,    KS_mu,         KS_notsign,
+    KC(44),  KS_w,           KS_W,          KS_less,
+    KC(45),  KS_x,           KS_X,          KS_greater,
+    KC(46),  KS_c,           KS_C,          KS_cent,
+    KC(50),  KS_comma,       KS_question,   KS_mu,
+    KC(53),  KS_exclam,      KS_section,    KS_Eacute,
+    KC(184), KS_Mode_switch, KS_Multi_key,
+
+    KC(200), KS_Cmd_BrightnessUp,   KS_Up,
+    KC(203), KS_Cmd_ContrastDown,   KS_Left,
+    KC(205), KS_Cmd_ContrastUp,     KS_Right,
+    KC(208), KS_Cmd_BrightnessDown, KS_Down,
+};
+
+/* Scandinavian */
+static const keysym_t jornada_scnv_keydesc[] = {
+/*  pos      normal          shifted        altgr       */
+    KC(2),   KS_1,           KS_exclam,     KS_asciitilde,
+    KC(3),   KS_2,           KS_quotedbl,   KS_at,
+    KC(4),   KS_3,           KS_numbersign, KS_sterling,
+    KC(5),   KS_4,           KS_currency,   KS_dollar,
+    KC(7),   KS_6,           KS_ampersand,
+    KC(8),   KS_7,           KS_slash,      KS_braceleft,
+    KC(9),   KS_8,           KS_parenleft,  KS_bracketleft,
+    KC(10),  KS_9,           KS_parenright, KS_bracketright,
+    KC(11),  KS_0,           KS_equal,      KS_braceright,
+    KC(12),  KS_plus,        KS_question,   KS_backslash,
+    KC(13),  KS_apostrophe,  KS_grave,
+    KC(25),  KS_p,           KS_P,          KS_braceleft,
+    KC(26),  KS_aring,
+    /*
+     * XXX: KC(39) and KC(40) has odiaeresis/adiaeresis *and*
+     * oslash/ae on them.  Apparently localized WinCE uses the former
+     * for Swedish and Finnish and the latter for Danish and
+     * Norwegian.  But as the keyboard doesn't seem to have
+     * semicolon/colon and minus/underscore nowhere on the primary and
+     * altgr layers, I put them here (semicolon/colon is inherited).
+     */
+    KC(40),  KS_minus,       KS_underscore, /* XXX */
+    KC(41),  KS_paragraph,   KS_onehalf,    KS_bar,
+    KC(184), KS_Mode_switch, KS_Multi_key,
+
+    KC(200), KS_Cmd_BrightnessUp,   KS_Up,
+    KC(203), KS_Cmd_ContrastDown,   KS_Left,
+    KC(205), KS_Cmd_ContrastUp,     KS_Right,
+    KC(208), KS_Cmd_BrightnessDown, KS_Down,
+};
+
+/* Spanish (ABE) */
+static const keysym_t jornada_es_keydesc[] = {
+/*  pos      normal          shifted        altgr            */
+    KC(2),   KS_1,           KS_exclam,     KS_ordfeminine,
+    KC(3),   KS_2,           KS_quotedbl,   KS_masculine,
+    KC(4),   KS_3,           KS_numbersign,
+    KC(12),  KS_apostrophe,  KS_question,   KS_backslash,
+    KC(13),  KS_questiondown,KS_exclamdown,
+    KC(16),  KS_q,           KS_Q,          KS_at,
+#ifdef KS_euro
+    KC(18),  KS_e,           KS_E,          KS_euro,
+#endif
+    KC(26),  KS_dead_acute,  KS_dead_diaeresis,
+    KC(27),  KS_plus,        KS_asterisk,   KS_dead_tilde,
+    KC(40),  KS_braceleft,   KS_bracketleft,KS_dead_circumflex,
+    KC(41),  KS_bar,         KS_degree,     KS_notsign,
+    KC(43),  KS_braceright,  KS_bracketright,KS_dead_grave,
+    KC(44),  KS_z,           KS_Z,          KS_less,
+    KC(45),  KS_x,           KS_X,          KS_greater,
+    KC(46),  KS_c,           KS_C,          KS_Ccedilla,
+
+    KC(200), KS_Cmd_BrightnessUp,   KS_Up,
+    KC(203), KS_Cmd_ContrastDown,   KS_Left,
+    KC(205), KS_Cmd_ContrastUp,     KS_Right,
+    KC(208), KS_Cmd_BrightnessDown, KS_Down,
+};
+#endif /* hpcarm || hpcsh */
 
 /*
  * REMINDER:
@@ -1032,67 +1108,67 @@
 	{	&platid_mask_MACH_HP_JORNADA_680,
 		jornada6x0_us_keytrans,
 		jornada6x0_special_keymap,
-		CMDMAP(jornada6x0_us_keydesc),
+		CMDMAP(jornada_us_keydesc),
 		KB_US },
 	{	&platid_mask_MACH_HP_JORNADA_690,
 		jornada6x0_us_keytrans,
 		jornada6x0_special_keymap,
-		CMDMAP(jornada6x0_us_keydesc),
+		CMDMAP(jornada_us_keydesc),
 		KB_US },
 	/* European English (ABB) */
 	{	&platid_mask_MACH_HP_JORNADA_680EU,
 		jornada6x0_intl_keytrans,
 		jornada6x0_special_keymap,
-		CMDMAP(jornada6x0_intl_keydesc),
+		CMDMAP(jornada_intl_keydesc),
 		KB_US },
 	{	&platid_mask_MACH_HP_JORNADA_690EU,
 		jornada6x0_intl_keytrans,
 		jornada6x0_special_keymap,
-		CMDMAP(jornada6x0_intl_keydesc),
+		CMDMAP(jornada_intl_keydesc),
 		KB_US },
 	/* German (ABD) */
 	{	&platid_mask_MACH_HP_JORNADA_680DE,
 		jornada6x0_intl_keytrans,
 		jornada6x0_special_keymap,
-		CMDMAP(jornada6x0_de_keydesc),
+		CMDMAP(jornada_de_keydesc),
 		KB_DE },
 	{	&platid_mask_MACH_HP_JORNADA_690DE,
 		jornada6x0_intl_keytrans,
 		jornada6x0_special_keymap,
- 		CMDMAP(jornada6x0_de_keydesc),
+ 		CMDMAP(jornada_de_keydesc),
 		KB_DE },
 	/* French (ABF) */
 	{	&platid_mask_MACH_HP_JORNADA_680FR,
 		jornada6x0_intl_keytrans,
 		jornada6x0_special_keymap,
-		CMDMAP(jornada6x0_fr_keydesc),
+		CMDMAP(jornada_fr_keydesc),
 		KB_FR },
 	{	&platid_mask_MACH_HP_JORNADA_690FR,
 		jornada6x0_intl_keytrans,
 		jornada6x0_special_keymap,
- 		CMDMAP(jornada6x0_fr_keydesc),
+ 		CMDMAP(jornada_fr_keydesc),
 		KB_FR },
 	/* Scandinavian */
 	{	&platid_mask_MACH_HP_JORNADA_680SV,
 		jornada6x0_intl_keytrans,
 		jornada6x0_special_keymap,
-		CMDMAP(jornada6x0_scnv_keydesc),
+		CMDMAP(jornada_scnv_keydesc),
 		KB_US },
 	{	&platid_mask_MACH_HP_JORNADA_690SV,
 		jornada6x0_intl_keytrans,
 		jornada6x0_special_keymap,
- 		CMDMAP(jornada6x0_scnv_keydesc),
+ 		CMDMAP(jornada_scnv_keydesc),
 		KB_US },
 	/* Spanish (ABE) */
 	{	&platid_mask_MACH_HP_JORNADA_680ES,
 		jornada6x0_intl_keytrans,
 		jornada6x0_special_keymap,
-		CMDMAP(jornada6x0_es_keydesc),
+		CMDMAP(jornada_es_keydesc),
 		KB_ES },
 	{	&platid_mask_MACH_HP_JORNADA_690ES,
 		jornada6x0_intl_keytrans,
 		jornada6x0_special_keymap,
- 		CMDMAP(jornada6x0_es_keydesc),
+ 		CMDMAP(jornada_es_keydesc),
 		KB_ES },
 	/*
 	 * HP 620LX
@@ -1131,5 +1207,49 @@
 		KB_US },
 
 #endif /* hpcsh */
+#ifdef hpcarm
+	/* US (ABA), UK (ABU) */
+	{	&platid_mask_MACH_HP_JORNADA_720,
+		jornada7xx_us_keytrans,
+		jornada7xx_special_keymap,
+		CMDMAP(jornada_us_keydesc),
+		KB_US },
+	/* Japanese */
+	{	&platid_mask_MACH_HP_JORNADA_720JP,
+		jornada7xx_jp_keytrans,
+		jornada7xx_special_keymap,
+		NULLCMDMAP,
+		KB_JP },
+	/* European English (ABB) */
+	{	&platid_mask_MACH_HP_JORNADA_720EU,
+		jornada7xx_intl_keytrans,
+		jornada7xx_special_keymap,
+		CMDMAP(jornada_intl_keydesc),
+		KB_US },
+	/* German (ABD) */
+	{	&platid_mask_MACH_HP_JORNADA_720DE,
+		jornada7xx_intl_keytrans,
+		jornada7xx_special_keymap,
+		CMDMAP(jornada_de_keydesc),
+		KB_DE },
+	/* French (ABF) */
+	{	&platid_mask_MACH_HP_JORNADA_720FR,
+		jornada7xx_intl_keytrans,
+		jornada7xx_special_keymap,
+		CMDMAP(jornada_fr_keydesc),
+		KB_FR },
+	/* Scandinavian */
+	{	&platid_mask_MACH_HP_JORNADA_720SV,
+		jornada7xx_intl_keytrans,
+		jornada7xx_special_keymap,
+		CMDMAP(jornada_scnv_keydesc),
+		KB_US },
+	/* Spanish (ABE) */
+	{	&platid_mask_MACH_HP_JORNADA_720ES,
+		jornada7xx_intl_keytrans,
+		jornada7xx_special_keymap,
+		CMDMAP(jornada_es_keydesc),
+		KB_ES },
+#endif /* hpcarm */
 	{ NULL } /* end mark */
 };
