arm: added support for all models of Raspbery Pi A/B/A+/B+ & 2B
Includes SPI,I2C,GPIO and mmap access to GPIO. This commit removes the _b suffix to the rpi board file Signed-off-by: Michael Ring <mail@michael-ring.org> Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
This commit is contained in:
committed by
Brendan Le Foll
parent
581184d8fd
commit
3597d8a805
@@ -1,5 +1,6 @@
|
||||
/*
|
||||
* Author: Thomas Ingleby <thomas.c.ingleby@intel.com>
|
||||
* Author: Michael Ring <mail@michael-ring.org>
|
||||
* Copyright (c) 2014 Intel Corporation.
|
||||
*
|
||||
* Permission is hereby granted, free of charge, to any person obtaining
|
||||
@@ -23,18 +24,40 @@
|
||||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "mraa_internal.h"
|
||||
#include "arm/raspberry_pi_b.h"
|
||||
#include "arm/raspberry_pi.h"
|
||||
|
||||
mraa_platform_t
|
||||
mraa_arm_platform()
|
||||
{
|
||||
mraa_platform_t platform_type = MRAA_UNKNOWN_PLATFORM;
|
||||
size_t len = 100;
|
||||
char *line = malloc(len);
|
||||
FILE *fh = fopen("/proc/cpuinfo", "r");
|
||||
if (fh != NULL) {
|
||||
while (getline(&line, &len, fh) != -1) {
|
||||
if (strncmp(line, "Hardware", 8) == 0) {
|
||||
if (strstr(line, "BCM2708")) {
|
||||
platform_type = MRAA_RASPBERRY_PI;
|
||||
}
|
||||
if (strstr(line, "BCM2709")) {
|
||||
platform_type = MRAA_RASPBERRY_PI;
|
||||
}
|
||||
}
|
||||
}
|
||||
fclose(fh);
|
||||
}
|
||||
free(line);
|
||||
|
||||
//For the Time being, Will always be Raspberry PI when running ARM
|
||||
platform_type = MRAA_RASPBERRY_PI_B;
|
||||
plat = mraa_raspberry_pi_b();
|
||||
|
||||
switch(platform_type) {
|
||||
case MRAA_RASPBERRY_PI:
|
||||
plat = mraa_raspberry_pi();
|
||||
break;
|
||||
default:
|
||||
plat = mraa_raspberry_pi();
|
||||
syslog(LOG_ERR, "Platform not supported, initialising as MRAA_RASPBERRY_PI");
|
||||
}
|
||||
return platform_type;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user