Gilles' 3rd option is what I was referring to trying.

The other two options seem workable as well.  The best choice depends on
what you're more comfortable working with.

On 11/12/2014 8:41 AM, Terje Froysa wrote:
> 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:> 
>>
> 


-- 
Charles Steinkuehler
[email protected]

-- 
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.

Reply via email to