Thanks Charles, I appreciate your ideas. I seem stuck "between a rock and a hard place" with very little substantial experiences to collect from the communities.
I will try a couple of permutations more before I may revert to using the standard Linux drivers. I also got some comments from Xenomai (Gilles Chanteperdrix) below. Regards Terje Froysa At first sight, I would say that the omap_serial driver does not implement the necessary support (probably some ioctls), for what setserial is trying to do. I see several ways out: - implement the missing support in omap serial so that you can use the "setserial none" command; - try and use the 8250 driver instead of the omap_serial driver, since the omap serial devices are 8250 compatible, this driver supports the necessary ioctls for the "setserial none" command to work. At some point in time, I know using this serial driver for the kernel console worked, but I do not know if it was by chance (u-boot enables the clock, so the driver does not have to enable it), and if it still works; - do not enable any uart in the kernel configuration, neither omap_serial, nor 8250, and arrange for the clocks to be started before loading the xeno_16550a driver. On Wednesday, November 12, 2014 3:28:52 PM UTC+1, Charles Steinkuehler wrote: > > On 11/12/2014 6:21 AM, Terje Froysa wrote: > > > > Everything seem correct. > > But the UARTs are now occupied by the omap_serial driver. > > According to Xenomai (http://xenomai.org/serial-16550a-driver/) the > driver > > should be disabled by the setserial command. > > I can't get this command working. It reports the serial port but > changing > > it results in error (regardless of the ttyO -number): > > debian@beaglebone:~$ setserial /dev/ttyO2 > > /dev/ttyO2, UART: undefined, Port: 0x0000, IRQ: 74 > > > > debian@beaglebone:/boot$ sudo setserial /dev/ttyO2 uart none > > Cannot set serial info: *Invalid argument* > > Consequently, I cannot load the xeno_16550A.ko module. > > I have browsed the net for the same problem, but have not found relevant > > subjects. > > There are no shared irq's in my problem (closest subject I found). > > > > Do you have any idea for a solution? > > I _think_ the problem may be that if you don't enable the serial port in > the device-tree than Xenomai encounters a bus error when accessing the > address range (not entirely unexpected, since the UART's clock is > probably turned off). But if you enable the UART in the device tree, > Linux takes control of the port and Xenomai can't access it. > > Other than asking for advice on the Xenomai list, you might try booting > with the Xenomai kernel and a device tree that _disables_ the UART > you're trying to use. I would expect trying to load the xeno_16550A > module to fail (as it does when you boot the kernel with the module > enabled), but you should be able to manually setup the required > low-level hardware configuration at which point you ought to be able to > load the driver. > > Or in other words, I think you need to perform the hardware setup from > the TI UART driver prior to loading the Xenomai serial driver. > > -- > Charles Steinkuehler > [email protected] <javascript:> > -- For more options, visit http://beagleboard.org/discuss --- You received this message because you are subscribed to the Google Groups "BeagleBoard" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
