1 2004-05-10 Robert Chenault <robertchenault@yahoo.com>
3 * src/quicc_smc_serial.h: Added two casts of (int) on
4 calculations involving CYGHWR_HAL_POWERPC_BOARD_SPEED.
6 2004-01-24 Philip Soeberg <ecos@soeberg.net>
8 * src/quicc_smc_serial.c(quicc_sxx_serial_init): SCC3 support
11 2003-10-13 Gary Thomas <gary@mlbassoc.com>
13 * src/quicc_smc_serial.c: Add some I/O barriers to make sure that
14 operations happen in the correct order. Fixes BUG #90391
16 2003-10-08 Gary Thomas <gary@mlbassoc.com>
18 * src/quicc_smc_serial.c: Fix compile error for Adder-II (852T)
20 2003-09-08 Gary Thomas <gary@mlbassoc.com>
22 * src/quicc_smc_serial.h: Fix baud rate clock setup - was off by 1.
23 Reported by Tord Andersson <Tord.Andersson@combitechsystems.com>
25 2003-03-31 Gary Thomas <gary@mlbassoc.com>
27 * src/quicc_smc_serial.c (quicc_sxx_serial_init): Handle SCC3 on
28 various processors (signal routing differs).
30 2003-03-28 Gary Thomas <gary@mlbassoc.com>
32 * src/quicc_smc_serial.c: Change how buffers are allocated & aligned
33 to a cache line - previous attempt wasted a huge amount of space.
35 2003-03-23 Gary Thomas <gary@mlbassoc.com>
37 * src/quicc_smc_serial.h: Move common definitions to common
38 include file (in HAL).
40 * src/quicc_smc_serial.c:
41 * cdl/ser_quicc_smc.cdl: Remove options for baud rate generator
42 assignment - use more generic [automatic] support.
44 2003-03-17 Gary Thomas <gary@mlbassoc.com>
46 * src/quicc_smc_serial.h:
47 * src/quicc_smc_serial.c:
48 * cdl/ser_quicc_smc.cdl: Add support for SCC1/SCC2/SCC3. Inspired
49 by Paul Randall <prandall@delta-info.com>
51 2003-03-05 Gary Thomas <gary@mlbassoc.com>
53 * src/quicc_smc_serial.c: Use common routines to manage CPM/DPRAM
54 pointers - much nicer in a multi-driver environment.
56 2003-02-24 Jonathan Larmour <jifl@eCosCentric.com>
58 * cdl/ser_quicc_smc.cdl: Remove irrelevant doc link.
60 2002-12-10 Gary Thomas <gthomas@ecoscentric.com>
62 * cdl/ser_quicc_smc.cdl: Only enable devices which exist - as described
63 by the HAL/CDL interfaces.
65 2001-11-30 Jonathan Larmour <jlarmour@redhat.com>
66 2001-11-29 Christoph Csebits <christoph.csebits@frequentis.com>
68 * src/quicc_smc_serial.c:
69 aligning buffer to cache lines,
70 flushing buffer in cache before flushing the device.
72 2001-09-10 Jonathan Larmour <jlarmour@redhat.com>
74 * cdl/ser_quicc_smc.cdl:
75 Fix 234000->230400 typo.
77 2000-12-22 Björn Stenberg <bjorn@haxx.se>
79 * src/quicc_smc_serial.c (quicc_smc_serial_init_info):
80 Set quicc going only after most of the other initialization is
81 complete - otherwise initializing too early causes some of the
82 parameters not to be initialized properly.
84 2000-12-13 Daniel Lind <daniel.lind@sth.frontec.se>
86 * src/quicc_smc_serial.c (quicc_smc_serial_flush):
87 Don't mark a buffer ready unless it has been fully serviced - in
88 particular, the interrupt bit must be clear.
89 [2000-12-13] committed by Gary Thomas <gthomas@redhat.com>
91 2000-12-06 Jonathan Larmour <jlarmour@redhat.com>
93 * src/quicc_smc_serial.c: Remove unread tx_enabled variable from
95 Ensure quicc serial interrupt is unmasked in general so that rx works!
96 (quicc_smc_serial_start_xmit): Protect better from DSR interruption
98 2000-10-24 Jonathan Larmour <jlarmour@redhat.com>
100 * src/quicc_smc_serial.c (quicc_smc_serial_ISR): Return with
101 CYG_ISR_HANDLED (reported by Daniel Lind)
103 2000-08-01 Jonathan Larmour <jlarmour@redhat.co.uk>
105 * src/quicc_smc_serial.c (quicc_smc_serial_set_config): Now use keys
106 to make more flexible.
108 2000-06-22 Hugo Tyson <hmt@cygnus.co.uk>
110 * cdl/<yournamehere>.cdl: Remove the comment on the empty
111 include_files directive; the tools now support this correctly.
112 This keeps internal include files internal.
114 2000-04-11 Hugo Tyson <hmt@cygnus.co.uk>
116 * cdl/ser_quicc_smc.cdl: Change the parent from CYGPKG_IO_SERIAL
117 (which is enabled most of the time) to CYGPKG_IO_SERIAL_DEVICES
118 (which is not...) thus allowing convenient control independent of
119 platform. Also enable all individual devices by default, now, so
120 that they can be enabled simply by enabling the above new parent.
122 2000-04-07 Hugo Tyson <hmt@cygnus.co.uk>
124 * ecos.db: Re-organize device packages. This is a massive change
125 involving deleting all the sources for serial and ethernet drivers
126 from where they used to live in
127 packages/io/serial/current/src/ARCH/PLATFORM.[ch]
128 packages/net/drivers/eth/PLATFORM/current/src/...
129 and reinstating them in
130 packages/devs/serial/ARCH/PLATFORM/current/src/...
131 packages/devs/eth/ARCH/PLATFORM/current/src/...
133 All these new packages are properly defined in ecos.db, and are
134 all of type "hardware" so that a "target" can grab them.
136 This directory layout is descriptive of the devices we have right
137 now, arch and platform are separate levels just to make it easier
138 to navigate in the filesystem and similar to the HAL structure in
141 It is *not* prescriptive of future work; for example, the mythical
142 common highly-portable 16550 serial driver which works on many
143 targets would be called "devs/serial/s16550/current", or a serial
144 device for a particular board (cogent springs to mind) that can
145 work with different CPUs fitted is "devs/serial/cogent/current".
147 Changelogs have been preserved and replicated over all the new
148 packages, so that no history is lost.
150 The contents of individual source files are unchanged; they build
151 in just the same emvironment except for a very few cases where the
152 config file name changed in this movement.
154 Targets in ecos.db have been redefined to bring in all relevant
155 hardware packages including net and serial drivers (but the newly
156 included packages are only active if their desired parent is
159 The names of CDL options (and their #defines of course) stay the
160 same for the serial drivers, for backward compatibility.
162 * templates/*/current.ect: these have had CYGPKG_IO_SERIAL added
163 rather than it being in (almost) all target definitions.
165 2000-04-05 Jonathan Larmour <jlarmour@redhat.co.uk>
167 * src/common/tty.c (tty_read): CRLF conversion should use \r\n not \n\r
168 (tty_write): Similarly
170 * include/ttyio.h: Update CYG_TTY_IN_FLAGS_CRLF and
171 CYG_TTY_IN_FLAGS_CRLF to match
173 2000-03-31 Jesper Skov <jskov@redhat.com>
175 * cdl/ser_sh_edk7708.cdl: Limit legal baud rate range.
176 * src/sh/sh_sci_serial.c: Use baud rate macro instead of hardwired
179 2000-03-28 John Dallaway <jld@cygnus.co.uk>
183 cdl/ser_arm_cma230.cdl,
184 cdl/ser_arm_edb7xxx.cdl,
187 cdl/ser_mips_jmr3904.cdl,
188 cdl/ser_mips_vrc4373.cdl,
190 cdl/ser_powerpc_cogent.cdl,
191 cdl/ser_quicc_smc.cdl,
192 cdl/ser_sh_edk7708.cdl,
193 cdl/ser_sparclite_sleb.cdl,
196 Adjust documentation URLs.
198 2000-03-07 Jesper Skov <jskov@redhat.com>
200 * cdl/ser_mips_jmr3904.cdl: Rename devices to match CDL naming.
202 2000-02-29 Jonathan Larmour <jlarmour@redhat.co.uk>
204 * include/serialio.h: Correct baud rate typo: 230400 rather than
205 234000. Thanks to Grant Edwards for the report.
207 2000-02-28 Gary Thomas <gthomas@cygnus.co.uk>
209 * src/powerpc/quicc_smc_serial.c: Use standard 'diag_dump_buf()'.
211 2000-02-28 Jesper Skov <jskov@redhat.com>
213 * tests/ser_test_protocol.inl: Allow 115200 baud on Cogent
214 again. Fixed interrupt problem.
216 2000-02-22 Jesper Skov <jskov@redhat.com>
218 * tests/ser_test_protocol.inl: Don't use 115200 baud on
219 Cogent. Our slower boards can't keep up.
221 2000-02-17 Gary Thomas <gthomas@cygnus.co.uk>
223 * cdl/ser_powerpc_cogent.cdl: Fix incorrect dependency.
225 2000-02-16 Nick Garnett <nickg@cygnus.co.uk>
227 * include/pkgconf/io_serial.h:
228 Added configury for PC serial device drivers.
230 * cdl/ser_i386_pc.cdl:
231 * src/i386/pc_serial.c:
232 * src/i386/pc_serial.h:
233 Added these files to implement PC serial line drivers.
236 Added CYGPKG_IO_SERIAL_I386_PC.
238 * tests/ser_test_protocol.inl:
239 Added support for PC serial line testing.
241 2000-02-11 Jesper Skov <jskov@redhat.com>
243 * src/sh/sh_sci_7708.inl (DEVTAB_ENTRY):
244 * src/sparclite/sleb_sdtr.c:
245 serial_devio => cyg_io_serial_devio
247 2000-02-10 Jonathan Larmour <jlarmour@redhat.co.uk>
249 * src/mn10300/mn10300_serial.c: Ensure all CYG_HAL_MN10300_*
250 preprocessor conditionals use the correct CYGPKG_HAL_MN10300_AM3* form
253 2000-02-03 Jesper Skov <jskov@redhat.com>
255 * src/powerpc/quicc_smc_serial.c: CYG_HAL_POWERPC_x->CYGPKG_...
257 2000-02-02 Jonathan Larmour <jlarmour@redhat.co.uk>
259 * src/arm/aeb_serial.h: Rename lower case register macros to REG_ upper
262 * src/arm/aeb_serial.c: Update to reflect above
264 2000-01-31 Simon FitzMaurice <sdf@cygnus.co.uk>
267 Adjust help URLs in line with new doc layout.
269 2000-01-28 Simon FitzMaurice <sdf@cygnus.co.uk>
272 Adjust help URLs in line with new doc layout.
274 2000-01-28 Gary Thomas <gthomas@cygnus.co.uk>
276 * src/common/tty.c (tty_read): Fix problem with backspace at start
277 of line (size must be 'signed' for compare to work).
279 2000-01-19 Hugo Tyson <hmt@cygnus.co.uk>
281 * cdl/*.cdl: Add descriptions to a number of options &c which were
282 lacking same, also tidied up other typos as noticed en passant.
284 2000-01-17 Gary Thomas <gthomas@cygnus.co.uk>
286 * src/common/tty.c (tty_read): Avoid echoing "backspace/erase" at
289 2000-01-05 Gary Thomas <gthomas@cygnus.co.uk>
291 * src/common/serial.c (serial_write): Avoid potential deadlock if
292 transmit start actually sends enough characters to signal cond wait.
294 2000-01-03 Gary Thomas <gthomas@cygnus.co.uk>
296 * include/serial.h: Fix namespace pollution -
297 serial_devio => cyg_io_serial_devio
298 serial_callbacks => cyg_io_serial_callbacks
300 * src/mips/tx3904_serial.c:
301 * src/mips/vrc4373_serial.c:
302 * src/mn10300/mn10300_serial.c:
303 * src/powerpc/quicc_smc_serial.c:
304 * src/powerpc/cogent_serial_with_ints.c:
305 * src/sparclite/sleb_sdtr.c:
306 * src/arm/aeb_serial.c:
307 * src/arm/pid_serial_with_ints.c:
308 * src/arm/edb7xxx_serial.c:
309 * src/arm/cma230_serial.c:
310 * src/arm/ebsa285_serial.c:
311 * src/common/haldiag.c:
312 * src/common/serial.c: Fix namespace pollution -
313 serial_devio => cyg_io_serial_devio
315 1999-12-06 Gary Thomas <gthomas@cygnus.co.uk>
317 * src/arm/pid_serial_with_ints.c (pid_serial_DSR): Add loop to handle
318 case where an interrupt represents multiple events.
320 1999-11-19 Gary Thomas <gthomas@cygnus.co.uk>
322 * src/powerpc/quicc_smc_serial.c: Channel select for SMC2 was wrong.
324 1999-11-18 Gary Thomas <gthomas@cygnus.co.uk>
326 * include/pkgconf/io_serial.h: Remove mention of 7209/7212.
328 1999-11-03 John Dallaway <jld@cygnus.co.uk>
330 * cdl/io_serial.cdl: Define build options.
332 1999-10-26 Jesper Skov <jskov@cygnus.co.uk>
333 * tests/serial5.c (serial_test): Reduce speed in thumb mode.
335 * src/arm/pid_serial.h: Added BE support.
337 * src/PKGconf.mak: Use CYGPKG_<> instead of CYG_<> to control what
338 needs to be compiled.
340 1999-10-25 Gary Thomas <gthomas@cygnus.co.uk>
342 * src/arm/pid_serial.h (ISR_RxTO): Define - character received but
343 not handled "promptly".
345 * src/arm/pid_serial_with_ints.c (pid_serial_DSR): Handle rcv interrupts
346 properly (can't ignore them even with TO bit set).
348 * src/arm/cl7211_serial.c (cl7211_serial_rx_DSR): Need to handle all
349 input (empty input FIFO) otherwise characters get dropped.
351 1999-10-15 Jesper Skov <jskov@cygnus.co.uk>
353 * tests/ser_test_protocol.inl: Removed AEB rev C change. Was bogus.
355 1999-10-11 Nick Garnett <nickg@cygnus.co.uk>
357 * tests/ser_test_protocol.inl: Added configury for VR4300 testing.
359 * src/mips/vrc4373_serial.c: Added Bi-endian support.
361 * include/pkgconf/io_serial.h: Adjusted default baud rates to
364 1999-10-06 Jesper Skov <jskov@cygnus.co.uk>
366 * tests/ser_test_protocol.inl: Run tests on AEB rev C as well.
368 1999-09-28 Hugo Tyson <hmt@cygnus.co.uk>
370 * src/powerpc/quicc_smc_serial.c (quicc_smc_serial_init): Correct
371 value supplied for interrupt priority - it may be unused, but it
372 is asserted for range. Initialize the diagnostic channel if on an
373 MBX and if NOT using SMC1 ourselves, to ensure that diag output
374 and built-in stubs work correctly; otherwise reset the quicc and
375 ignore SMC1 as before. Fix various warnings, mostly about
376 casting/arg-passing/assigning away volatile.
378 1999-08-31 Jesper Skov <jskov@cygnus.co.uk>
380 * tests/ser_test_protocol.inl: Define dummy crash ID.
382 1999-08-30 Jesper Skov <jskov@cygnus.co.uk>
384 * tests/ser_test_protocol.inl: Added crash information which
385 should help track down repeating errors.
387 1999-08-20 Jesper Skov <jskov@cygnus.co.uk>
389 * tests/README: Added.
391 1999-08-18 Jesper Skov <jskov@cygnus.co.uk>
401 Require kernel and kernel C API.
403 1999-08-17 Nick Garnett <nickg@cygnus.co.uk>
405 * src/mn10300/mn10300_serial.c: Added a simple implementation of a
406 receive FIFO to try and reduce the overhead of receiving bytes.
408 1999-08-16 Jonathan Larmour <jlarmour@cygnus.co.uk>
411 * src/mn10300/mn10300_serial.c:
412 * tests/ser_test_protocol.inl:
413 Rename all am32 -> am31
415 1999-08-12 Nick Garnett <nickg@cygnus.co.uk>
417 Imported following changes from development branch:
419 1999-08-11 Nick Garnett <nickg@cygnus.co.uk>
421 * tests/serial5.c: Modified config test for boards that need a lower
424 * tests/ser_test_protocol.inl: Removed 14400 baud tests for all
425 MN10300 variants. The MN10300 cannot currently do this speed.
427 * src/mn10300/mn10300_serial.c: Tidied up the transmit interrupt
428 enable/disable code to be variant specific.
430 * include/pkgconf/io_serial.h: Undid Jonathan's change, since the
431 same options are used for all MN10300 variants.
433 1999-08-10 Jonathan Larmour <jlarmour@cygnus.co.uk>
435 * include/pkgconf/io_serial.h:
436 Reparent CYGPKG_IO_SERIAL_MN10300 from under CYGPKG_HAL_MN10300 to
437 CYGPKG_HAL_MN10300_AM32_STDEVAL1 since it's stdeval1 specific
439 1999-08-04 Nick Garnett <nickg@cygnus.co.uk>
441 * tests/ser_test_protocol.inl:
442 Changed names of MN10300 defines tested. Added AM33 definitions.
444 * src/mn10300/mn10300_serial.c:
445 Modified driver to work on am33 too. This simply requires some
446 alternate definitions of things like register addresses and some
447 bits in them plus some extra parameterization of some register
451 Added am33 to list of architectures supporting serial lines.
453 1999-07-28 Gary Thomas <gthomas@cygnus.co.uk>
455 * include/pkgconf/io_serial.h: Update descriptions to be more
456 generic (CL7x11 instead of CL7211).
458 1999-07-28 Jonathan Larmour <jlarmour@cygnus.co.uk>
460 * include/pkgconf/io_serial.h: Correct typos in CDL description
461 for serial port 2 driver
463 1999-07-26 Hugo Tyson <hmt@cygnus.co.uk>
465 * src/arm/ebsa285_serial.c: New file: device driver for the serial
466 device of the Intel StrongARM EBSA-285 evaluation board.
468 * include/pkgconf/io_serial.h (CYGPKG_IO_SERIAL_ARM_EBSA285):
471 * src/PKGconf.mak (EXTRAS_COMPILE): Compile it.
473 * tests/ser_test_protocol.inl (TEST_SER_DEV): Enable testing of it.
475 1999-07-08 Jesper Skov <jskov@cygnus.co.uk>
477 * tests/ser_test_protocol.inl (change_config): Changed implementation.
479 1999-06-27 Gary Thomas <gthomas@cygnus.co.uk>
481 * src/powerpc/quicc_smc_serial.c (quicc_smc_serial_init): More robust
482 initialization, with data cache disabled. This seems to fix the
483 random failures described below.
485 * tests/ser_test_protocol.inl: Add configuration for QUICC/MBX860.
486 Added some delays in the configuration change code to make QUICC
487 happy [didn't help much although the manual says they are required].
489 * src/powerpc/quicc_smc_serial.h (UART_BITRATE): Rewrote macro to
490 match what the Linux driver uses - still doesn't work well, though.
492 * src/powerpc/quicc_smc_serial.c: Lots of changes trying to get the
493 serial driver working and robust. At this point it works quite well,
494 using the default buffer sizes. Changing from the defaults seem to
495 easily break it though, certainly on input. Also, changing the baud
496 rate seems to not work reliably.
498 * src/common/serial.c: Add some tracing/debug info to try and debug
499 problems with QUICC serial driver. These are hard disabled with
500 "XX_" prepended to "CYGDBG_DIAG_BUF". Enabling them gives information
501 about how/when data are delivered from the serial driver.
503 * include/pkgconf/io_serial.h: Adjust limits and defaults on number and
504 size of buffers with values that seem to work.
506 1999-06-21 Jesper Skov <jskov@cygnus.co.uk>
508 * src/sh/sh_sci_serial.c: Rearranged inclusion of .inl file a bit
509 to avoid compiler warnings.
511 1999-06-21 Gary Thomas <gthomas@cygnus.co.uk>
513 * include/pkgconf/io_serial.h: Fix CDL for number of buffers.
515 * src/powerpc/quicc_smc_serial.c: Force number of buffers = 1.
517 1999-06-20 Gary Thomas <gthomas@cygnus.co.uk>
519 * include/pkgconf/io_serial.h: Some clean up (removed commented
520 obsolete CDL parenting structure).
521 Add support for Motorola PowerPC QUICC/SMC.
523 * src/arm/cma230_serial.c:
524 * src/arm/cl7211_serial.c:
525 * src/arm/aeb_serial.c:
526 * src/arm/pid_serial_with_ints.c: Use #include to get 'diag_printf()'
529 1999-06-17 Gary Thomas <gthomas@cygnus.co.uk>
531 * src/arm/cl7211_serial.c (cl7211_serial_start_xmit): Fix race which
532 cause xmitter to get stuck.
534 1999-06-16 Jesper Skov <jskov@cygnus.co.uk>
536 * src/sh/sh_serial.c: [removed]
537 * src/sh/sh_sci_serial.c: [added]
538 * src/sh/sh_sci_7708.inl: [added]
539 * include/pkgconf/io_serial.h:
540 * src/PKGconf.mak (EXTRAS_COMPILE):
541 * tests/ser_test_protocol.inl:
542 Renamed CDL options and restructered driver.
545 1999-06-04 Jesper Skov <jskov@cygnus.co.uk>
547 * include/pkgconf/io_serial.h: Fixed CDL string for BAUD rate option.
549 1999-06-04 Gary Thomas <gthomas@cygnus.co.uk>
551 * tests/ser_test_protocol.inl: Disable testing at 115200
552 for Cogent CMA230 (ARM).
554 * src/arm/cma230_serial.c: Fix interrupt for port B.
556 1999-05-31 Jesper Skov <jskov@cygnus.co.uk>
558 * src/sh/sh_serial.c: Fixed receive interrupts and added handler for
561 1999-05-28 Jesper Skov <jskov@cygnus.co.uk>
563 * io/serial/current/src/PKGconf.mak:
564 * io/serial/current/tests/ser_test_protocol.inl:
565 * include/pkgconf/io_serial.h:
566 Renamed SH platform package to edk7708.
568 1999-05-27 Jesper Skov <jskov@cygnus.co.uk>
570 * tests/ser_test_protocol.inl: Added ability to change options in
573 1999-05-27 Jonathan Larmour <jlarmour@cygnus.co.uk>
575 * src/mn10300/mn10300_serial.c (mn10300_serial_config_port):
576 Wait for the serial device to become acquiescent before disabling
577 it. This prevents cygmon's outgoing characters getting corrupted
578 due to transmission being disabled.
581 1999-05-26 Gary Thomas <gthomas@cygnus.co.uk>
583 * include/pkgconf/io_serial.h:
584 * tests/ser_test_protocol.inl: Add Cogent CMA230 setup.
586 * src/arm/cma230_serial.c: Make names compatible with Cogent
589 1999-05-26 Gary Thomas <gthomas@cygnus.co.uk>
591 * tests/ser_test_protocol.inl: Add Cirrus Logic CL7211 setup.
592 1999-05-26 Jesper Skov <jskov@cygnus.co.uk>
594 * src/sh/sh_serial.c: Added more baud rate values. Disabled
595 interrupt driven receive. Fixed config_port to enable proper
598 1999-05-25 Jonathan Larmour <jlarmour@cygnus.co.uk>
600 * tests/ser_test_protocol.inl:
601 Change all mentions of CYGPKG_HAL_TX39_JMR3904 to
602 CYGPKG_HAL_MIPS_TX39_JMR3904
604 1999-05-25 Jonathan Larmour <jlarmour@cygnus.co.uk>
606 * src/PKGconf.mak (EXTRAS_COMPILE): Change CYG_HAL_TX39 to
608 1999-05-25 Jesper Skov <jskov@cygnus.co.uk>
610 * tests/ser_test_protocol.inl: Added sh entry.
612 1999-05-24 Jesper Skov <jskov@cygnus.co.uk>
615 * include/pkgconf/io_serial.h:
616 * src/sh/sh_serial.c:
619 1999-05-18 Jesper Skov <jskov@cygnus.co.uk>
621 * src/sparclite/sleb_sdtr.c (sleb_sdtr_rx_DSR): Only read chan if
624 1999-05-18 Jesper Skov <jskov@cygnus.co.uk>
626 * src/arm/cl7211_serial.c (cl7211_serial_rx_DSR): Only read char
629 1999-05-16 Gary Thomas <gthomas@cygnus.co.uk>
631 * src/arm/cl7211_serial.c: Clean up, first working version.
633 1999-05-14 Jesper Skov <jskov@cygnus.co.uk>
635 * tests/ser_test_protocol.inl: Removed workaround for spurious
638 * src/arm/aeb_serial.c:
639 * src/arm/aeb_serial.h:
640 * src/arm/pid_serial_with_ints.c:
641 * src/arm/pid_serial.h:
642 * src/powerpc/cogent_serial.h:
643 * src/powerpc/cogent_serial_with_ints.c:
644 Check for receive interrupt before reading.
646 1999-05-13 Nick Garnett <nickg@cygnus.co.uk>
648 The follow changes were made in a branch an have now been merged:
650 1999-04-21 Gary Thomas <gthomas@cygnus.co.uk>
652 * src/mips/vrc4373_serial.c: Small changes to get working with
655 1999-04-20 John Dallaway <jld@cygnus.co.uk>
657 * include/pkgconf/io_serial.h: Fix CYGPKG_IO_SERIAL_TX39_JMR3904
660 1999-05-11 Gary Thomas <gthomas@cygnus.co.uk>
662 * src/arm/cl7211_serial.c: Fix compile problems from merged code.
664 1999-05-05 Jesper Skov <jskov@cygnus.co.uk>
666 * tests/ser_test_protocol.inl: Tidied up a bit and added
667 description of protocol.
669 1999-05-05 Jesper Skov <jskov@cygnus.co.uk>
671 * src/common/serial.c (serial_write, serial_read): Clear abort
674 1999-05-05 Jesper Skov <jskov@cygnus.co.uk>
676 * tests/serial4.c (serial_test): Handle config fails correctly.
678 * tests/ser_test_protocol.inl: Better change_config
679 handling. Simple recovery and negotiation isn't timing
682 1999-05-05 Jesper Skov <jskov@cygnus.co.uk>
684 * tests/timeout.inl: Updated with the below changes.
686 1999-05-05 Gary Thomas <gthomas@cygnus.co.uk>
688 * misc/timeout.inl (timeout): Timeouts are relative, but alarms
689 need absolute time values.
691 1999-05-04 Jesper Skov <jskov@cygnus.co.uk>
693 * tests/serial1.c (serial_test): Always PASS, regardless of
696 1999-05-04 Jesper Skov <jskov@cygnus.co.uk>
698 * tests/ser_test_protocol.inl: Reverse order of configurations -
699 run tests with slow baud rate first.
700 Only check CYG_KERNEL_DIAG_GDB_SERIAL_DIRECT for SLEB on RAM startup.
702 1999-05-04 Jesper Skov <jskov@cygnus.co.uk>
703 * src/mn10300/mn10300_serial.c:
704 Use interrupt enable/disable feature of serial port2 to allow
705 coexistence with CygMon/hal_diag.
707 * tests/ser_test_protocol.inl: Use port2 for MN10300.
709 1999-04-28 Bart Veer <bartv@cygnus.co.uk>
711 * src/PKGconf.mak (EXTRAS_COMPILE):
712 Use the new rules for generating libextras.a
714 1999-04-26 Gary Thomas <gthomas@cygnus.co.uk>
716 * include/pkgconf/io_serial.h: Add support for Cirrus Logic CL7211.
719 1999-04-20 Gary Thomas <gthomas@cygnus.co.uk>
721 * src/arm/aeb_serial.c:
722 * src/arm/pid_serial_with_ints.c: Fix default baud rate if unbuffered.
723 1999-04-20 Jesper Skov <jskov@cygnus.co.uk>
725 * tests/ser_test_protocol.inl: Added some comments. Disabled 38400
726 for SLEB. Only run test on SLEB if CygMon isn't used for diag
729 1999-04-15 Jesper Skov <jskov@cygnus.co.uk>
733 Run these tests at a lower baud rate on ARM AEB.
735 1999-04-14 Jesper Skov <jskov@cygnus.co.uk>
737 * src/mn10300/mn10300_serial.c:
738 Fix compiler warnings.
740 1999-04-14 Bart Veer <bartv@cygnus.co.uk>
742 * include/pkgconf/io_serial.h:
743 Reparent the board-specific serial devices below the actual boards.
745 1999-04-13 Jesper Skov <jskov@cygnus.co.uk>
747 * tests/ser_test_protocol.inl:
748 NA when run from simulator.
750 1999-04-12 Jesper Skov <jskov@cygnus.co.uk>
752 * tests/ser_test_protocol.inl:
753 Disabled 115200 for MN10300.
754 Reclaim interrupt vectors from CygMon when testing on SLEB.
756 1999-04-09 Gary Thomas <gthomas@cygnus.co.uk>
758 * include/serial.h: Change SERIAL_CHANNEL setup so all channels
759 have serial callbacks, regardless of buffering.
761 1999-04-09 Jesper Skov <jskov@cygnus.co.uk>
764 * include/pkgconf/io_serial.h:
765 Added new ttydiag device layered on top of haldiag, so that tty0
766 can be layered on top of ser0.
768 1999-04-08 Jesper Skov <jskov@cygnus.co.uk>
770 * tests/tty1.c: [added]
771 * tests/tty2.c: [added]
773 * tests/ser_test_protocol.inl:
774 Added two simple TTY tests.
776 1999-04-07 Hugo Tyson <hmt@cygnus.co.uk>
778 * src/sparclite/sleb_sdtr.h: Include cyg/hal/hal_io.h for I/O
779 macros instead of hal_diag.h where they had evolved before.
781 1999-04-06 Jesper Skov <jskov@cygnus.co.uk>
783 * tests/serial4.c (serial_test):
784 * tests/serial3.c (serial_test):
787 1999-03-31 Jesper Skov <jskov@cygnus.co.uk>
789 * tests/ser_test_protocol.inl: Added remaining targets to the
792 1999-03-31 Gary Thomas <gthomas@cygnus.co.uk>
794 * src/sparclite/sleb_sdtr.c (sleb_sdtr_start_xmit): Fix timing race
795 when enabling xmit interrupts.
797 1999-03-26 Gary Thomas <gthomas@cygnus.co.uk>
799 * src/sparclite/sleb_sdtr.c: Change how the port is set up. The transmitter
800 is now always enabled, just the interrupts are masked/unmasked to control it.
801 This lets the serial driver cooperate with Cygmon on the port used for GDB.
802 Note that currently serial input does not work for CON1 since Cygmon is
803 taking all of the receive interrupts for itself.
804 (sleb_sdtr_tx_DSR): Need to keep track whether xmit interrupt should be
805 enabled - otherwise it can get enabled incorrectly and we get interrupted
808 1999-03-26 Jesper Skov <jskov@cygnus.co.uk>
810 * tests/ser_test_protocol.inl: Send a DONE message after a no-echo
813 1999-03-26 Hugo Tyson <hmt@cygnus.co.uk>
820 Make these build when no kernel present; include of testcase
821 was the wrong side of the ifdef.
823 1999-03-26 Jesper Skov <jskov@cygnus.co.uk>
830 Moved NOP check to ser_test_protocol open call.
832 * tests/ser_test_protocol.inl: Make sure the proper device is
833 selected for testing. Do NOP check in open call.
835 1999-03-25 Gary Thomas <gthomas@cygnus.co.uk>
837 * include/pkgconf/io_serial.h:
839 * src/arm/aeb_serial.c:
840 * src/arm/pid_serial_with_ints.c:
842 * src/mips/tx3904_serial.c:
843 * src/mn10300/mn10300_serial.c:
844 * src/powerpc/cogent_serial_with_ints.c:
845 * src/sparclite/sleb_sdtr.c: Update CDL to follow naming conventions.
847 * src/mips/tx3904_serial.c (tx3904_serial_config_port):
848 Make sure port is enabled (CDL) before using it.
850 * src/mn10300/mn10300_serial.c (mn10300_serial_config_port):
851 * src/powerpc/cogent_serial_with_ints.c (cogent_serial_config_port):
852 * src/arm/aeb_serial.c (aeb_serial_config_port):
853 * src/arm/pid_serial_with_ints.c (pid_serial_config_port): Change so that
854 the physical port is not modified unless the provided configuration is valid.
856 * src/sparclite/sleb_sdtr.c (sleb_sdtr_config_port):
857 Using wrong config data.
859 * include/serialio.h: Add macros to support baud rate from CDL.
861 * include/pkgconf/io_serial.h:
862 * src/mn10300/mn10300_serial.c:
863 * src/mips/tx3904_serial.c (tx3904_serial_ISR):
864 * src/sparclite/sleb_sdtr.c:
865 * src/powerpc/cogent_serial_with_ints.c:
866 * src/arm/pid_serial_with_ints.c:
867 * src/arm/aeb_serial.c: Add configury for baud rate and buffer size.
869 1999-03-24 Nick Garnett <nickg@cygnus.co.uk>
871 * src/mips/tx3904_serial.c:
872 Now uses CYGHWR_HAL_MIPS_CPU_FREQ_ACTUAL to get CPU
873 frequency. This is a little more accurate than using
874 CYGHWR_HAL_MIPS_CPU_FREQ.
876 1999-03-24 Gary Thomas <gthomas@cygnus.co.uk>
878 * include/serialio.h (CYGNUM_SERIAL_BAUD_MIN/MAX): Add for completeness.
880 * src/arm/aeb_serial.c (aeb_serial_stop_xmit):
881 * src/arm/pid_serial_with_ints.c (pid_serial_stop_xmit): Fix typo in comment.
883 1999-03-24 Jesper Skov <jskov@cygnus.co.uk>
885 * tests/ser_test_protocol.inl: Weeded out configs TX39 doesn't
888 * src/powerpc/cogent_serial.h:
889 Added copyright header.
891 * tests/ser_test_protocol.inl:
897 Don't try to run tests when no IO device has been specified.
899 1999-03-23 Jesper Skov <jskov@cygnus.co.uk>
901 * misc/serial1.c, misc/serial2.c, misc/serial3.c, misc/serial4.c,
902 * misc/serial5.c, misc/ser_test_protocol.inl
905 1999-03-23 Jesper Skov <jskov@cygnus.co.uk>
915 * tests/ser_test_protocol.inl:
916 Moved the serial tests from the misc directory to the tests
919 1999-03-23 Nick Garnett <nickg@cygnus.co.uk>
921 * src/mn10300/mn10300_serial.c: Now initially mask TX interrupts
922 at initialization and unmask/remask in start/stop xmit
923 routines. This has no real effect on the hardware, but the
924 simulator does not implement the LCR_TXE bit properly, resulting
925 in spurious TX interrupts during diagnostic output.
926 This was the cause of the slow output reported in PR 19559.
928 1999-03-23 Gary Thomas <gthomas@cygnus.co.uk>
930 * include/pkgconf/io_serial.h: Fix "display" strings to have appropriate
931 case - mostly lower case.
933 1999-03-22 Hugo Tyson <hmt@cygnus.co.uk>
942 Use CYGNUM_HAL_STACK_SIZE_TYPICAL for the stack size instead of
943 CYGNUM_HAL_MINIMUM_STACK_SIZE.
945 1999-03-22 Gary Thomas <gthomas@cygnus.co.uk>
947 * src/mn10300/mn10300_serial.c:
948 * src/mips/tx3904_serial.c: Add CDL configury.
950 * include/pkgconf/io_serial.h: Update CDL to add device name
951 configurability for all devices.
953 * src/sparclite/sleb_sdtr.c:
954 * src/powerpc/cogent_serial_with_ints.c:
955 * src/arm/aeb_serial.c:
956 * src/arm/pid_serial_with_ints.c: Use CDL configured device names.
958 1999-03-22 Jesper Skov <jskov@lassi.cygnus.co.uk>
965 Requires kernel as well.
967 1999-03-22 Jesper Skov <jskov@cygnus.co.uk>
969 * src/sparclite/sleb_sdtr.c:
970 Moved include statement to avoid warnings.
972 1999-03-19 Jesper Skov <jskov@cygnus.co.uk>
974 * misc/ser_test_protocol.inl:
977 Replace complex and not very stable duplex test with a simpler
978 test that works better.
979 Added serial5 using that test.
981 1999-03-19 Jesper Skov <jskov@cygnus.co.uk>
986 Added API test and made serial2 do simple string output.
988 1999-03-19 Jesper Skov <jskov@cygnus.co.uk>
990 * src/powerpc/cogent_serial_with_ints.c: Changed ToDo comment.
992 1999-03-19 Jesper Skov <jskov@lassi.cygnus.co.uk>
994 * src/powerpc/cogent_serial_with_ints.c:
995 * src/arm/aeb_serial.c:
996 * src/arm/pid_serial_with_ints.c:
997 Moved include statement to avoid warnings.
999 1999-03-19 Gary Thomas <gthomas@cygnus.co.uk>
1001 * include/pkgconf/io_serial.h: More CDL problems.
1003 1999-03-18 Gary Thomas <gthomas@cygnus.co.uk>
1005 * include/pkgconf/io_serial.h: Add CDL for SPARClite SLEB.
1007 * src/powerpc/cogent_serial_with_ints.c:
1008 * src/arm/pid_serial_with_ints.c:
1009 * src/arm/aeb_serial.c: Update device names to match CDL.
1011 * include/pkgconf/io_serial.h: Change names for serial ports to
1012 be CYGPKG_IO_SERIAL_<arch>_<platform>_<port>.
1014 1999-03-18 Jesper Skov <jskov@cygnus.co.uk>
1016 * misc/ser_test_protocol.inl:
1018 First stab at the duplex binary test. Still much fun to be had...
1020 1999-03-18 Jesper Skov <jskov@cygnus.co.uk>
1022 * misc/ser_test_protocol.inl: Added timeout for PING.
1024 1999-03-18 Gary Thomas <gthomas@cygnus.co.uk>
1026 * src/common/serial.c: Change ABORT functionality to be DSR safe.
1027 (serial_get_config): Fix typo!
1029 * include/pkgconf/io_serial.h: Small change in CDL to make serial
1030 devices tied to the platform and not the serial I/O package. This
1031 means that only the devices appropriate to a given platform can be
1034 * misc/serial.c: Better use of alarms - only trigger at the time of
1035 the next timeout. Moved timeout functions to new file "timeout.inl".
1037 * src/common/serial.c (serial_get_config): Add support for
1038 CYG_IO_GET_CONFIG_SERIAL_INPUT_FLUSH and CYG_IO_GET_CONFIG_SERIAL_ABORT.
1040 * misc/serial.c: Add simple timeout mechanisms.
1042 1999-03-17 Gary Thomas <gthomas@cygnus.co.uk>
1044 * src/powerpc/cogent_serial_with_ints.c:
1045 * src/arm/aeb_serial.c:
1046 * src/arm/pid_serial_with_ints.c: Conditionalize based on CDL.
1048 * include/pkgconf/io_serial.h: Add some CDL configury - not perfect
1049 because of current ~CDL limitations.
1051 1999-03-17 Jesper Skov <jskov@cygnus.co.uk>
1053 * misc/serial2.c: Cleaned up a bit. Used for hacking new tests.
1055 1999-03-17 Jesper Skov <jskov@cygnus.co.uk>
1058 * misc/ser_test_protocol.inl:
1062 Put testing protocol implementation in a separate file. Split the
1063 tests in serial2 into separate files.
1065 1999-03-16 Nick Garnett <nickg@cygnus.co.uk>
1067 * src/mn10300/mn10300_serial.c: Fixed some compiler warnings.
1069 1999-03-15 Gary Thomas <gthomas@cygnus.co.uk>
1071 * include/pkgconf/io_serial.h: Change default configurations.
1072 No serial drivers enabled for PID port A or AEB.
1074 * src/sparclite/sleb_sdtr.c:
1075 * src/powerpc/cogent_serial_with_ints.c:
1076 * src/arm/aeb_serial.c:
1077 * src/arm/pid_serial_with_ints.c:
1078 * src/common/haldiag.c:
1080 * src/common/serial.c: Add 'CYGDBG_IO_INIT' for control of init
1083 * src/powerpc/cogent_serial_with_ints.c:
1084 * src/sparclite/sleb_sdtr.c:
1085 * src/arm/aeb_serial.c:
1086 * src/arm/pid_serial_with_ints.c: Don't include <cyg/kernel/kapi.h>
1088 1999-03-15 Jesper Skov <jskov@cygnus.co.uk>
1090 * misc/serial2.c (serial_test): Fix use of strlen. Fix DONE part
1093 1999-03-12 Jesper Skov <jskov@cygnus.co.uk>
1095 * misc/serial2.c: Play a bit with timing. Think I broke it :(
1096 Added DONE to BINARY packet.
1097 Proper call to DRAIN.
1099 1999-03-12 Nick Garnett <nickg@cygnus.co.uk>
1101 * src/mips/tx3904_serial.c: Tidied away some debugging code.
1103 1999-03-12 Jesper Skov <jskov@cygnus.co.uk>
1105 * misc/serial2.c: Removed bogus config changes.
1107 1999-03-12 Jesper Skov <jskov@cygnus.co.uk>
1109 * misc/serial2.c (serial_test): Check for ser_filter on host (PING
1112 1999-03-11 Jesper Skov <jskov@cygnus.co.uk>
1114 * src/powerpc/cogent_serial_with_ints.c: Added note.
1117 Added (almost) proper configuration handling.
1118 Run tests on varying configurations.
1120 1999-03-11 Nick Garnett <nickg@cygnus.co.uk>
1122 * src/mips/tx3904_serial.c:
1123 Many changes to get working.
1125 * misc/console.c (console_test): Fixed compiler warning.
1128 Added device name for TX39 testing.
1129 Fixed some bugs in Tcyg_io_write() macro.
1131 1999-03-10 Jesper Skov <jskov@cygnus.co.uk>
1133 * misc/serial2.c: Added target specific test device name.
1135 1999-03-10 John Dallaway <jld@cygnus.co.uk>
1137 * include/pkgconf/io_serial.h: Correct CDL description spelling.
1139 1999-03-10 Jesper Skov <jskov@cygnus.co.uk>
1141 * src/powerpc/cogent_serial_with_ints.c:
1143 Fixed compiler warnings.
1145 1999-03-10 Gary Thomas <gthomas@cygnus.co.uk>
1147 * include/pkgconf/io_serial.h: Improve CDL descriptions.
1149 1999-03-10 Jesper Skov <jskov@cygnus.co.uk>
1151 * misc/serial2.c (serial_test): Do some more tests with changed
1154 1999-03-09 Jesper Skov <jskov@cygnus.co.uk>
1156 * misc/serial2.c (serial_test): Added workaround for spurious byte
1157 problem. Added a few more tests to run.
1159 * src/powerpc/cogent_serial_with_ints.c
1160 (cogent_serial_config_port): Remove interrupt enabling.
1162 1999-03-09 Nick Garnett <nickg@cygnus.co.uk>
1165 * src/mips/tx3904_serial.c:
1166 Added initial version of TX39 device driver. Currently untested
1167 but eliminates PR19445.
1169 1999-03-09 Jesper Skov <jskov@cygnus.co.uk>
1171 * misc/serial2.c: DRAIN function works now.
1173 1999-03-09 Jesper Skov <jskov@cygnus.co.uk>
1175 * include/pkgconf/io_serial.h: Only enable one serial driver per
1178 1999-03-08 Jesper Skov <jskov@cygnus.co.uk>
1180 * misc/serial2.c (serial_test): Be a bit more aggressive.
1182 * src/powerpc/cogent_serial_with_ints.c: Check that configuration
1185 1999-03-08 Jesper Skov <jskov@cygnus.co.uk>
1187 * src/powerpc/cogent_serial_with_ints.c:
1188 Added support for both ports.
1190 * include/pkgconf/io_serial.h: Added simple defines for cogent
1191 serial ports. No CDL yet.
1193 1999-03-08 Jesper Skov <jskov@cygnus.co.uk>
1195 * misc/serial.c: Removed PID references. Fixed compiler warnings.
1197 1999-03-08 Jesper Skov <jskov@cygnus.co.uk>
1199 * src/powerpc/cogent_serial_with_ints.c: Cleaned up a
1200 bit. Actually works now.
1202 1999-03-08 Gary Thomas <gthomas@cygnus.co.uk>
1204 * src/common/serial.c: Change in cyg_drv_cond_wait() behaviour
1205 means DSR lock should be left alone.
1207 1999-03-08 Jesper Skov <jskov@cygnus.co.uk>
1209 * src/powerpc/cogent_serial_with_ints.c (cogent_serial_init): Set
1210 valid interrupt priority.
1212 1999-03-05 Nick Garnett <nickg@cygnus.co.uk>
1214 * src/mn10300/mn10300_serial.c (mn10300_serial_init):
1215 Added extra test to avoid initializing serial 2 when CYGMON is
1217 Include hal_intr.h explicitly for use in non-kernel
1220 * src/common/serial.c:
1221 Added extra test before calls to cyg_drv_cond_wait() to avoid race
1222 condition. This is not, however, a complete solution to this
1223 problem. A better solution will be forthcoming.
1226 Changed include files used to permit non-kernel configurations to
1229 1999-03-05 Jesper Skov <jskov@cygnus.co.uk>
1231 * src/common/haldiag.c: Removed diag_printf declaration.
1233 1999-03-05 Jonathan Larmour <jlarmour@cygnus.co.uk>
1235 * src/mn10300/mn10300_serial.c:
1236 Change CYG_VECTOR_* to CYGNUM_HAL_INTERRUPT_* to get it to compile!
1238 1999-03-05 Gary Thomas <gthomas@cygnus.co.uk>
1240 * src/powerpc/cogent_serial_with_ints.c (cogent_serial_config_port):
1241 Fix renaming of interrupt vectors.
1243 1999-03-05 Gary Thomas <gthomas@cygnus.co.uk>
1245 * src/arm/pid_serial_with_ints.c: Fix interrupt vectors.
1247 1999-03-03 Gary Thomas <gthomas@cygnus.co.uk>
1249 * serial/current/src/arm/pid_serial_with_ints.c:
1250 New [somewhat] configurable drivers for PID.
1252 //===========================================================================
1253 //####ECOSGPLCOPYRIGHTBEGIN####
1254 // -------------------------------------------
1255 // This file is part of eCos, the Embedded Configurable Operating System.
1256 // Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc.
1258 // eCos is free software; you can redistribute it and/or modify it under
1259 // the terms of the GNU General Public License as published by the Free
1260 // Software Foundation; either version 2 or (at your option) any later version.
1262 // eCos is distributed in the hope that it will be useful, but WITHOUT ANY
1263 // WARRANTY; without even the implied warranty of MERCHANTABILITY or
1264 // FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
1265 // for more details.
1267 // You should have received a copy of the GNU General Public License along
1268 // with eCos; if not, write to the Free Software Foundation, Inc.,
1269 // 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
1271 // As a special exception, if other files instantiate templates or use macros
1272 // or inline functions from this file, or you compile this file and link it
1273 // with other works to produce a work based on this file, this file does not
1274 // by itself cause the resulting work to be covered by the GNU General Public
1275 // License. However the source code for this file must still be made available
1276 // in accordance with section (3) of the GNU General Public License.
1278 // This exception does not invalidate any other reasons why a work based on
1279 // this file might be covered by the GNU General Public License.
1281 // Alternative licenses for eCos may be arranged by contacting Red Hat, Inc.
1282 // at http://sources.redhat.com/ecos/ecos-license/
1283 // -------------------------------------------
1284 //####ECOSGPLCOPYRIGHTEND####
1285 //===========================================================================