Actually, I have just tried the UEFI Driver Wizard and it does a pretty good
job to create an empty driver (select "Byte Stream device producing Serial
I/O Protocol" in the protocol to implement).
Olivier
From: Hutcheson, Alex M. [mailto:[email protected]]
Sent: 01 August 2012 17:28
To: [email protected]
Subject: Re: [edk2] Serial UART via GPIO pins on BeagleBoard
Thanks for the quick response.
I don't need the UART until during the DXE phase, so it seems like it would
be simplest to go with the second option.
I will try out the Driver Wizard, I wasn't aware of that before.
Thanks,
Alex
Alex Hutcheson
Computer Engineering Intern
[email protected]
From: [email protected]
[mailto:[email protected]] On Behalf Of Olivier
Martin
Sent: Wednesday, August 01, 2012 12:26 PM
To: [email protected]
Subject: Re: [edk2] Serial UART via GPIO pins on BeagleBoard
Hello Alex,
You are right, you will need to write a new driver to support your
configuration.
There are two solutions:
- Either you use EmbeddedPkg/SerialDxe and implement a instance of
SerialPortLib for your UART over GPIO.
- Or you create a new driver that implements the
EFI_SERIAL_IO_PROTOCOL.
I would say it really depends of your requirements. If you want to use your
UART before the DXE phase the choosing the first solution would be more
appropriate early stages might use SerialPortLib. You will need to specify
in your DSC file that you want to use your library to implement
SerialPortLib interface.
For the second solution, you can just duplicate EmbeddedPkg/SerialDxe as a
starting point. Maybe the UEFI Driver Wizard could also assist you in the
creation of this new driver (I have never tried):
http://sourceforge.net/apps/mediawiki/tianocore/index.php?title=UEFI_Driver_
Wizard
Does this email answer your question ?
Best Regards,
Olivier
From: Hutcheson, Alex M. [mailto:[email protected]]
Sent: 01 August 2012 16:57
To: [email protected]
Subject: [edk2] Serial UART via GPIO pins on BeagleBoard
Hello,
As part of a UEFI project on the BeagleBoard, I am trying to read serial
data from a device that is connected to the board's GPIO pins (pin 7 for TX
and 8 for RX). When the operating system is loaded, I have no problem
detecting the device and reading data from it.
However, in the UEFI environment the device does not seem to be detected. A
call to BootServices->LocateHandle() using the Serial_IO_PROTOCOL returns
only the handle for the board's RS-232 port, with no handle returned for the
GPIO serial device.
I assume that I will have to do some modification in the BeagleBoardPkg
build configuration, and possibly the EmbeddedPkg/SerialDxe driver to add
support for this, but I am not sure where to look. If someone could point me
to where I should start, I would really appreciate it.
Thanks,
Alex
Alex Hutcheson | SAIC
Email: [email protected]
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-devel