[kernel] r8074 - in dists/sid/linux-2.6/debian: . arch/m68k patches patches/series

Christian T. Steigies cts at alioth.debian.org
Wed Jan 3 21:25:14 CET 2007


Author: cts
Date: Wed Jan  3 21:25:14 2007
New Revision: 8074

Added:
   dists/sid/linux-2.6/debian/patches/m68k-atari-atakeyb-switches.patch
   dists/sid/linux-2.6/debian/patches/m68k-atari-ethernec-update.patch
Modified:
   dists/sid/linux-2.6/debian/arch/m68k/config.atari
   dists/sid/linux-2.6/debian/changelog
   dists/sid/linux-2.6/debian/patches/series/9-extra
Log:
m68k atari keyboard and ethernec fixes by Michael Schmitz


Modified: dists/sid/linux-2.6/debian/arch/m68k/config.atari
==============================================================================
--- dists/sid/linux-2.6/debian/arch/m68k/config.atari	(original)
+++ dists/sid/linux-2.6/debian/arch/m68k/config.atari	Wed Jan  3 21:25:14 2007
@@ -114,4 +114,4 @@
 CONFIG_NET_ETHERNET=y
 CONFIG_ATARILANCE=y
 CONFIG_ATARI_NFETH=y
-CONFIG_ATARI_ETHERNEC=y
+CONFIG_ATARI_ETHERNEC=m

Modified: dists/sid/linux-2.6/debian/changelog
==============================================================================
--- dists/sid/linux-2.6/debian/changelog	(original)
+++ dists/sid/linux-2.6/debian/changelog	Wed Jan  3 21:25:14 2007
@@ -55,6 +55,8 @@
   * m68k/atari: fixes for scsi driver by Michael Schmitz
   * m68k/mac: fixes for mace and cuda driver by Finn Thain
   * m68k/atari: fixes for ide driver by Michael Schmitz
+  * m68k/atari: fixes for ide driver by Michael Schmitz
+  * m68k/atari: fixes for ethernec and atakeyb driver by Michael Schmitz, build ethernec as module
 
   [ maximilian attems ]
   * Add stable release 2.6.18.6:
@@ -130,7 +132,7 @@
     memory accesses in ehci-hub-control() by adding an alignment attribute
     to the tbuf array declaration. Thanks to David Miller for the patch.
 
- -- maximilian attems <maks at sternwelten.at>  Wed,  3 Jan 2007 12:34:37 +0100
+ -- Christian T. Steigies <cts at debian.org>  Wed,  3 Jan 2007 21:24:25 +0100
 
 linux-2.6 (2.6.18-8) unstable; urgency=low
 

Added: dists/sid/linux-2.6/debian/patches/m68k-atari-atakeyb-switches.patch
==============================================================================
--- (empty file)
+++ dists/sid/linux-2.6/debian/patches/m68k-atari-atakeyb-switches.patch	Wed Jan  3 21:25:14 2007
@@ -0,0 +1,53 @@
+--- source-m68k-none/arch/m68k/atari/atakeyb.c.orig	2007-01-03 19:31:17.000000000 +0100
++++ source-m68k-none/arch/m68k/atari/atakeyb.c	2007-01-03 19:35:22.000000000 +0100
+@@ -662,14 +662,22 @@
+     atari_turnoff_irq(IRQ_MFP_ACIA);
+     do {
+ 	/* reset IKBD ACIA */
+-	acia.key_ctrl = ACIA_RESET ; // |
+-			// (atari_switches & ATARI_SWITCH_IKBD) ? ACIA_RHTID : 0;
++        if (atari_switches)
++	    acia.key_ctrl = ACIA_RESET |
++	                    (atari_switches & ATARI_SWITCH_IKBD) ? ACIA_RHTID : 0;
++        else
++            acia.key_ctrl = ACIA_RESET ;
++
+ 	(void)acia.key_ctrl;
+ 	(void)acia.key_data;
+ 
+ 	/* reset MIDI ACIA */
+-	acia.mid_ctrl = ACIA_RESET ; // |
+-			// (atari_switches & ATARI_SWITCH_MIDI) ? ACIA_RHTID : 0;
++        if (atari_switches)
++            acia.mid_ctrl = ACIA_RESET |
++                           (atari_switches & ATARI_SWITCH_MIDI) ? ACIA_RHTID : 0;
++        else
++            acia.mid_ctrl = ACIA_RESET ;
++
+ 	(void)acia.mid_ctrl;
+ 	(void)acia.mid_data;
+ 
+@@ -677,12 +685,17 @@
+ 	/* 8 data no parity 1 start 1 stop bit */
+ 	/* receive interrupt enabled */
+ 	/* RTS low (except if switch selected), transmit interrupt disabled */
+-	acia.key_ctrl = (ACIA_DIV64|ACIA_D8N1S|ACIA_RIE) ; // |
+-			// ((atari_switches & ATARI_SWITCH_IKBD) ?
+-			//  ACIA_RHTID : ACIA_RLTID);
+-	   
+-	acia.mid_ctrl = ACIA_DIV16 | ACIA_D8N1S ; // |
+-			// (atari_switches & ATARI_SWITCH_MIDI) ? ACIA_RHTID : 0;
++        if (atari_switches)  {
++            acia.key_ctrl = (ACIA_DIV64|ACIA_D8N1S|ACIA_RIE) |
++                            ((atari_switches & ATARI_SWITCH_IKBD) ?
++                            ACIA_RHTID : ACIA_RLTID);
++
++            acia.mid_ctrl = ACIA_DIV16 | ACIA_D8N1S |
++                           (atari_switches & ATARI_SWITCH_MIDI) ? ACIA_RHTID : 0;
++        } else  {
++            acia.key_ctrl = (ACIA_DIV64|ACIA_D8N1S|ACIA_RIE) ;
++            acia.mid_ctrl = ACIA_DIV16 | ACIA_D8N1S ;
++        }
+     }
+     /* make sure the interrupt line is up */
+     while ((mfp.par_dt_reg & 0x10) == 0);

Added: dists/sid/linux-2.6/debian/patches/m68k-atari-ethernec-update.patch
==============================================================================
--- (empty file)
+++ dists/sid/linux-2.6/debian/patches/m68k-atari-ethernec-update.patch	Wed Jan  3 21:25:14 2007
@@ -0,0 +1,83 @@
+--- linux-2.6.18-m68k/drivers/net/atari_ethernec.c.ms.org	2007-01-03 13:52:39.000000000 +0100
++++ linux-2.6.18-m68k/drivers/net/atari_ethernec.c	2007-01-03 14:22:58.000000000 +0100
+@@ -216,6 +216,12 @@
+ 
+ static int use_poll = 0;
+ 
++/*
++ * We use timer D for polling; allow the user to specify the timer period (0.1 ms)!
++ */ 
++
++static int period = 0;
++
+ /* This is used by cleanup, to prevent the module from being unloaded while
+  * intrpt_routine is still in the task queue
+  */
+@@ -223,11 +229,13 @@
+ 
+ static struct work_struct tqueue;
+ 
++#if defined (ETHERNEC_USE_POLL)
+ static struct {
+ 	struct work_struct poll_queue;
+ 	struct timer_list poll_timer;
+ 	struct net_device *dev;
+ } poll_ops;
++#endif
+ 
+ static struct net_device *poll_dev = NULL;
+ 
+@@ -511,7 +519,6 @@
+ 				printk(" (warning: no reset ack)");
+ 				break;
+ 			} else {
+-				// MSch: ARAnyM exits here
+ 				printk(" not found (no reset ack).\n");
+ 				ret = -ENODEV;
+ 				goto err_out;
+@@ -657,10 +664,19 @@
+ 		dev->irq = ETHERNEC_RTL_8019_IRQ;
+ 		/* timer routine set up in atari_ethernec_probe() */
+ 		if (dev->irq == IRQ_MFP_TIMD) {
++			/* period is in units of 0.1 ms, roughly */
++		        int timd = period * 4;
++		        if (timd == 0)
++		                timd = 192; 	/* default is 200 Hz */
++                        if (timd < 80) 
++                                timd = 80;	/* upper limit: 480 Hz */
++                        if (timd > 255)
++                                timd = 255;	/* lower limit: 150 Hz */
++                        printk("Timer D frequency: %d Hz\n", (int)(38400UL/(unsigned int)timd));
+                         /* set Timer D data Register */
+-                        mfp.tim_dt_d = 123;	/* 200 Hz */
+-                        /* start timer D, div = 1:100 */
+-                        mfp.tim_ct_cd = (mfp.tim_ct_cd & 0xf0) | 0x6; 
++                        mfp.tim_dt_d = timd;
++                        /* start timer D, div = 1:64, master clock = 2.46 MHz */
++                        mfp.tim_ct_cd = (mfp.tim_ct_cd & 0xf0) | 0x5;
+                 }
+ 		ret = request_irq(dev->irq, ei_interrupt, 0, name, dev);
+                 if (ret) {
+@@ -989,7 +1005,7 @@
+ #ifdef MODULE
+ #define MAX_NE_CARDS	4	/* Max number of NE cards per module */
+ static struct net_device *dev_ne[MAX_NE_CARDS];
+-static int io[MAX_NE_CARDS];
++static int io[MAX_NE_CARDS] = { 0x300, };
+ static int irq[MAX_NE_CARDS];
+ static int bad[MAX_NE_CARDS];	/* 0xbad = bad sig or no reset ack */
+ 
+@@ -997,10 +1013,12 @@
+ module_param_array(irq, int, NULL, 0);
+ module_param_array(bad, int, NULL, 0);
+ module_param(use_poll, int, 0);
++module_param(period, int, 0);
+ MODULE_PARM_DESC(io, "I/O base address(es),required");
+ MODULE_PARM_DESC(irq, "IRQ number(s)");
+ MODULE_PARM_DESC(bad, "Accept card(s) with bad signatures");
+-MODULE_PARM_DESC(use_poll, "Use timer interrupt to poll driver");
++MODULE_PARM_DESC(use_poll, "Force use of timer interrupt to poll driver");
++MODULE_PARM_DESC(period, "MFP timer D period (0.1 ms)");
+ MODULE_DESCRIPTION("NE1000/NE2000 ISA/PnP Ethernet driver");
+ MODULE_LICENSE("GPL");
+ 

Modified: dists/sid/linux-2.6/debian/patches/series/9-extra
==============================================================================
--- dists/sid/linux-2.6/debian/patches/series/9-extra	(original)
+++ dists/sid/linux-2.6/debian/patches/series/9-extra	Wed Jan  3 21:25:14 2007
@@ -10,3 +10,5 @@
 + m68k-mac-mace.patch m68k
 + m68k-mac-cuda.patch m68k
 + m68k-atari-ide.patch m68k
++ m68k-atari-ethernec-update.patch m68k
++ m68k-atari-atakeyb-switches.patch m68k



More information about the Kernel-svn-changes mailing list