* - Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * - Neither the name of the Technische Universität Berlin nor the names
+ * - Neither the name of the Titanium Mirror, Inc. nor the names
* of its contributors may be used to endorse or promote products derived
* from this software without specific prior written permission.
*
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
* USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
-
+
/**
* This configuration provides the interface for using USCI_A0 in its UART
* mode.
*
- * @author R. Steve McKown <smckown@gmail.com>
+ * @author R. Steve McKown <rsmckown@gmail.com>
*/
-
+
#if !defined(__MSP430_HAS_USCI_AB0__)
#error "Target does not have a USCI_A0 peripheral (UART)"
#endif
-configuration Msp430UartA0C {
+#include "Msp430Usci.h"
+
+generic configuration Msp430UartA0C() {
provides {
interface Resource;
interface ResourceRequested;
interface UartByte;
interface ArbiterInfo; /* ??? */
}
- uses interface Msp430UsciUartConfigure; /* would be nice to use Msp430UartConfigure, same as USART analog */
+ uses interface AsyncConfigure<const msp430_usci_uart_t*> as Configure;
}
implementation {
enum {
CLIENT_ID = unique(MSP430_USCIA0_RESOURCE)
};
- components Msp430UartP as UartP;
+ components new Msp430UartP() as UartP;
UartStream = UartP;
UartByte = UartP;
- Msp430UsciUartConfigure = UartP;
+ Configure = UartP;
- components new Msp430UsciA0C() as UsciC;
+ components Msp430UsciA0C as UsciC;
Resource = UsciC.Resource[CLIENT_ID];
ResourceRequested = UsciC.ResourceRequested[CLIENT_ID];
ArbiterInfo = UsciC.ArbiterInfo;