X-Git-Url: http://git.rohieb.name/openwrt.git/blobdiff_plain/11574c8efa6f9ce815710852de7f414e05ee5b63..9c0ae271fee1a6f7c9af9690bf228ebc90ad327e:/target/linux/generic-2.6/patches-2.6.23/230-pps_support.patch diff --git a/target/linux/generic-2.6/patches-2.6.23/230-pps_support.patch b/target/linux/generic-2.6/patches-2.6.23/230-pps_support.patch index 52aa586fc..8df4724ef 100644 --- a/target/linux/generic-2.6/patches-2.6.23/230-pps_support.patch +++ b/target/linux/generic-2.6/patches-2.6.23/230-pps_support.patch @@ -1,6 +1,3 @@ -diff --git a/Documentation/pps/Makefile b/Documentation/pps/Makefile -new file mode 100644 -index 0000000..a2660a2 --- /dev/null +++ b/Documentation/pps/Makefile @@ -0,0 +1,27 @@ @@ -31,9 +28,6 @@ index 0000000..a2660a2 +clean : + rm -f *.o *~ core .depend + rm -f ${TARGETS} -diff --git a/Documentation/pps/pps.txt b/Documentation/pps/pps.txt -new file mode 100644 -index 0000000..9538925 --- /dev/null +++ b/Documentation/pps/pps.txt @@ -0,0 +1,170 @@ @@ -207,9 +201,6 @@ index 0000000..9538925 + +Please, note that to compile userland programs you need the file timepps.h +(see Documentation/pps/). -diff --git a/Documentation/pps/ppsctl.c b/Documentation/pps/ppsctl.c -new file mode 100644 -index 0000000..83fd08a --- /dev/null +++ b/Documentation/pps/ppsctl.c @@ -0,0 +1,62 @@ @@ -275,9 +266,6 @@ index 0000000..83fd08a + + return 0; +} -diff --git a/Documentation/pps/ppsfind b/Documentation/pps/ppsfind -new file mode 100755 -index 0000000..93c0e17 --- /dev/null +++ b/Documentation/pps/ppsfind @@ -0,0 +1,17 @@ @@ -298,9 +286,6 @@ index 0000000..93c0e17 +done + +exit 0 -diff --git a/Documentation/pps/ppstest.c b/Documentation/pps/ppstest.c -new file mode 100644 -index 0000000..d125ffa --- /dev/null +++ b/Documentation/pps/ppstest.c @@ -0,0 +1,151 @@ @@ -455,9 +440,6 @@ index 0000000..d125ffa + + return 0; +} -diff --git a/Documentation/pps/timepps.h b/Documentation/pps/timepps.h -new file mode 100644 -index 0000000..28ebf4c --- /dev/null +++ b/Documentation/pps/timepps.h @@ -0,0 +1,193 @@ @@ -654,11 +636,9 @@ index 0000000..28ebf4c +} + +#endif /* _SYS_TIMEPPS_H_ */ -diff --git a/MAINTAINERS b/MAINTAINERS -index 9a91d9e..f45e974 100644 --- a/MAINTAINERS +++ b/MAINTAINERS -@@ -3011,6 +3011,13 @@ P: James Chapman +@@ -3011,6 +3011,13 @@ M: jchapman@katalix.com S: Maintained @@ -672,11 +652,9 @@ index 9a91d9e..f45e974 100644 PREEMPTIBLE KERNEL P: Robert Love M: rml@tech9.net -diff --git a/drivers/Kconfig b/drivers/Kconfig -index 3e1c442..bffc48e 100644 --- a/drivers/Kconfig +++ b/drivers/Kconfig -@@ -52,6 +52,8 @@ source "drivers/i2c/Kconfig" +@@ -52,6 +52,8 @@ source "drivers/spi/Kconfig" @@ -685,11 +663,9 @@ index 3e1c442..bffc48e 100644 source "drivers/w1/Kconfig" source "drivers/power/Kconfig" -diff --git a/drivers/Makefile b/drivers/Makefile -index f0878b2..2e84e49 100644 --- a/drivers/Makefile +++ b/drivers/Makefile -@@ -63,6 +63,7 @@ obj-$(CONFIG_INPUT) += input/ +@@ -63,6 +63,7 @@ obj-$(CONFIG_I2O) += message/ obj-$(CONFIG_RTC_LIB) += rtc/ obj-y += i2c/ @@ -697,11 +673,9 @@ index f0878b2..2e84e49 100644 obj-$(CONFIG_W1) += w1/ obj-$(CONFIG_POWER_SUPPLY) += power/ obj-$(CONFIG_HWMON) += hwmon/ -diff --git a/drivers/char/lp.c b/drivers/char/lp.c -index 62051f8..e0a8364 100644 --- a/drivers/char/lp.c +++ b/drivers/char/lp.c -@@ -746,6 +746,27 @@ static struct console lpcons = { +@@ -746,6 +746,27 @@ #endif /* console on line printer */ @@ -729,7 +703,7 @@ index 62051f8..e0a8364 100644 /* --- initialisation code ------------------------------------- */ static int parport_nr[LP_NO] = { [0 ... LP_NO-1] = LP_PARPORT_UNSPEC }; -@@ -817,6 +838,38 @@ static int lp_register(int nr, struct parport *port) +@@ -817,6 +838,38 @@ } #endif @@ -768,7 +742,7 @@ index 62051f8..e0a8364 100644 return 0; } -@@ -860,6 +913,14 @@ static void lp_detach (struct parport *port) +@@ -860,6 +913,14 @@ console_registered = NULL; } #endif /* CONFIG_LP_CONSOLE */ @@ -783,9 +757,6 @@ index 62051f8..e0a8364 100644 } static struct parport_driver lp_driver = { -diff --git a/drivers/pps/Kconfig b/drivers/pps/Kconfig -new file mode 100644 -index 0000000..bfe6621 --- /dev/null +++ b/drivers/pps/Kconfig @@ -0,0 +1,34 @@ @@ -823,9 +794,6 @@ index 0000000..bfe6621 +source drivers/pps/clients/Kconfig + +endmenu -diff --git a/drivers/pps/Makefile b/drivers/pps/Makefile -new file mode 100644 -index 0000000..d8ec308 --- /dev/null +++ b/drivers/pps/Makefile @@ -0,0 +1,11 @@ @@ -840,9 +808,6 @@ index 0000000..d8ec308 +ifeq ($(CONFIG_PPS_DEBUG),y) +EXTRA_CFLAGS += -DDEBUG +endif -diff --git a/drivers/pps/clients/Kconfig b/drivers/pps/clients/Kconfig -new file mode 100644 -index 0000000..09ba5c3 --- /dev/null +++ b/drivers/pps/clients/Kconfig @@ -0,0 +1,38 @@ @@ -884,9 +849,6 @@ index 0000000..09ba5c3 + with the interrupt pin of your parallel port. + +endif -diff --git a/drivers/pps/clients/Makefile b/drivers/pps/clients/Makefile -new file mode 100644 -index 0000000..f3c1e39 --- /dev/null +++ b/drivers/pps/clients/Makefile @@ -0,0 +1,9 @@ @@ -899,9 +861,6 @@ index 0000000..f3c1e39 +ifeq ($(CONFIG_PPS_DEBUG),y) +EXTRA_CFLAGS += -DDEBUG +endif -diff --git a/drivers/pps/clients/ktimer.c b/drivers/pps/clients/ktimer.c -new file mode 100644 -index 0000000..4d613ab --- /dev/null +++ b/drivers/pps/clients/ktimer.c @@ -0,0 +1,114 @@ @@ -1019,9 +978,6 @@ index 0000000..4d613ab +MODULE_AUTHOR("Rodolfo Giometti "); +MODULE_DESCRIPTION("dummy PPS source by using a kernel timer (just for debug)"); +MODULE_LICENSE("GPL"); -diff --git a/drivers/pps/kapi.c b/drivers/pps/kapi.c -new file mode 100644 -index 0000000..67290d5 --- /dev/null +++ b/drivers/pps/kapi.c @@ -0,0 +1,271 @@ @@ -1296,9 +1252,6 @@ index 0000000..67290d5 + spin_unlock_irqrestore(&idr_lock, flags); +} +EXPORT_SYMBOL(pps_event); -diff --git a/drivers/pps/pps.c b/drivers/pps/pps.c -new file mode 100644 -index 0000000..52de2f1 --- /dev/null +++ b/drivers/pps/pps.c @@ -0,0 +1,332 @@ @@ -1634,9 +1587,6 @@ index 0000000..52de2f1 +MODULE_AUTHOR("Rodolfo Giometti "); +MODULE_DESCRIPTION("LinuxPPS support (RFC 2783) - ver. " PPS_VERSION); +MODULE_LICENSE("GPL"); -diff --git a/drivers/pps/sysfs.c b/drivers/pps/sysfs.c -new file mode 100644 -index 0000000..8541be7 --- /dev/null +++ b/drivers/pps/sysfs.c @@ -0,0 +1,124 @@ @@ -1764,11 +1714,9 @@ index 0000000..8541be7 + + return 0; +} -diff --git a/drivers/serial/8250.c b/drivers/serial/8250.c -index f94109c..a5e83f8 100644 --- a/drivers/serial/8250.c +++ b/drivers/serial/8250.c -@@ -2118,6 +2118,8 @@ serial8250_set_termios(struct uart_port *port, struct ktermios *termios, +@@ -2118,6 +2118,8 @@ up->ier |= UART_IER_MSI; if (up->capabilities & UART_CAP_UUE) up->ier |= UART_IER_UUE | UART_IER_RTOIE; @@ -1777,8 +1725,6 @@ index f94109c..a5e83f8 100644 serial_out(up, UART_IER, up->ier); -diff --git a/drivers/serial/serial_core.c b/drivers/serial/serial_core.c -index a055f58..a40b87c 100644 --- a/drivers/serial/serial_core.c +++ b/drivers/serial/serial_core.c @@ -33,6 +33,7 @@ @@ -1789,7 +1735,7 @@ index a055f58..a40b87c 100644 #include #include -@@ -633,6 +634,54 @@ static int uart_get_info(struct uart_state *state, +@@ -633,6 +634,54 @@ return 0; } @@ -1844,7 +1790,7 @@ index a055f58..a40b87c 100644 static int uart_set_info(struct uart_state *state, struct serial_struct __user *newinfo) { -@@ -807,11 +856,19 @@ static int uart_set_info(struct uart_state *state, +@@ -807,11 +856,19 @@ (port->flags & UPF_LOW_LATENCY) ? 1 : 0; check_and_exit: @@ -1865,7 +1811,7 @@ index a055f58..a40b87c 100644 old_custom_divisor != port->custom_divisor) { /* * If they're setting up a custom divisor or speed, -@@ -2110,6 +2167,12 @@ uart_configure_port(struct uart_driver *drv, struct uart_state *state, +@@ -2110,6 +2167,12 @@ port->ops->config_port(port, flags); } @@ -1878,7 +1824,7 @@ index a055f58..a40b87c 100644 if (port->type != PORT_UNKNOWN) { unsigned long flags; -@@ -2359,6 +2422,12 @@ int uart_remove_one_port(struct uart_driver *drv, struct uart_port *port) +@@ -2359,6 +2422,12 @@ mutex_unlock(&state->mutex); /* @@ -1891,11 +1837,9 @@ index a055f58..a40b87c 100644 * Remove the devices from the tty layer */ tty_unregister_device(drv->tty_driver, port->line); -diff --git a/include/linux/Kbuild b/include/linux/Kbuild -index 818cc3a..0a9394f 100644 --- a/include/linux/Kbuild +++ b/include/linux/Kbuild -@@ -295,6 +295,7 @@ unifdef-y += pmu.h +@@ -295,6 +295,7 @@ unifdef-y += poll.h unifdef-y += ppp_defs.h unifdef-y += ppp-comp.h @@ -1903,11 +1847,9 @@ index 818cc3a..0a9394f 100644 unifdef-y += ptrace.h unifdef-y += qnx4_fs.h unifdef-y += quota.h -diff --git a/include/linux/parport.h b/include/linux/parport.h -index 9cdd694..549de6e 100644 --- a/include/linux/parport.h +++ b/include/linux/parport.h -@@ -100,6 +100,7 @@ typedef enum { +@@ -100,6 +100,7 @@ #include #include #include @@ -1915,7 +1857,7 @@ index 9cdd694..549de6e 100644 #include #include #include -@@ -327,6 +328,11 @@ struct parport { +@@ -327,6 +328,11 @@ struct list_head full_list; struct parport *slaves[3]; @@ -1927,7 +1869,7 @@ index 9cdd694..549de6e 100644 }; #define DEFAULT_SPIN_TIME 500 /* us */ -@@ -517,6 +523,12 @@ extern int parport_daisy_select (struct parport *port, int daisy, int mode); +@@ -517,6 +523,12 @@ /* Lowlevel drivers _can_ call this support function to handle irqs. */ static __inline__ void parport_generic_irq(int irq, struct parport *port) { @@ -1940,9 +1882,6 @@ index 9cdd694..549de6e 100644 parport_ieee1284_interrupt (irq, port); read_lock(&port->cad_lock); if (port->cad && port->cad->irq_func) -diff --git a/include/linux/pps.h b/include/linux/pps.h -new file mode 100644 -index 0000000..5bdb593 --- /dev/null +++ b/include/linux/pps.h @@ -0,0 +1,196 @@ @@ -2142,8 +2081,6 @@ index 0000000..5bdb593 +#endif /* __KERNEL__ */ + +#endif /* _PPS_H_ */ -diff --git a/include/linux/serial_core.h b/include/linux/serial_core.h -index 09d17b0..f9aefad 100644 --- a/include/linux/serial_core.h +++ b/include/linux/serial_core.h @@ -157,6 +157,7 @@ @@ -2154,7 +2091,7 @@ index 09d17b0..f9aefad 100644 struct uart_port; struct uart_info; -@@ -236,6 +237,9 @@ struct uart_port { +@@ -236,6 +237,9 @@ unsigned char regshift; /* reg offset shift */ unsigned char iotype; /* io access style */ unsigned char unused1; @@ -2164,7 +2101,7 @@ index 09d17b0..f9aefad 100644 #define UPIO_PORT (0) #define UPIO_HUB6 (1) -@@ -280,7 +284,8 @@ struct uart_port { +@@ -280,7 +284,8 @@ #define UPF_IOREMAP ((__force upf_t) (1 << 31)) #define UPF_CHANGE_MASK ((__force upf_t) (0x17fff)) @@ -2174,7 +2111,7 @@ index 09d17b0..f9aefad 100644 unsigned int mctrl; /* current modem ctrl settings */ unsigned int timeout; /* character-based timeout */ -@@ -312,6 +317,10 @@ struct uart_state { +@@ -312,6 +317,10 @@ struct uart_info *info; struct uart_port *port; @@ -2185,7 +2122,7 @@ index 09d17b0..f9aefad 100644 struct mutex mutex; }; -@@ -476,13 +485,22 @@ uart_handle_dcd_change(struct uart_port *port, unsigned int status) +@@ -476,13 +485,22 @@ { struct uart_info *info = port->info;