mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-08 22:45:43 +00:00
alarm/uboot-beagleboard to 2015.04-1
This commit is contained in:
parent
857e7fcd1b
commit
0ac9b5f666
4 changed files with 326 additions and 64 deletions
319
alarm/uboot-beagleboard/0001-arch-linux-arm-modifications.patch
Normal file
319
alarm/uboot-beagleboard/0001-arch-linux-arm-modifications.patch
Normal file
|
@ -0,0 +1,319 @@
|
|||
From 7f420c8c4a9ad883d5f8699a2f37797080ae5683 Mon Sep 17 00:00:00 2001
|
||||
From: Kevin Mihelich <kevin@archlinuxarm.org>
|
||||
Date: Sun, 7 Jun 2015 18:24:03 -0600
|
||||
Subject: [PATCH] arch linux arm modifications
|
||||
|
||||
Signed-off-by: Kevin Mihelich <kevin@archlinuxarm.org>
|
||||
---
|
||||
board/ti/beagle/beagle.c | 38 +++++++--
|
||||
include/configs/omap3_beagle.h | 172 ++++++++++++++---------------------------
|
||||
2 files changed, 93 insertions(+), 117 deletions(-)
|
||||
|
||||
diff --git a/board/ti/beagle/beagle.c b/board/ti/beagle/beagle.c
|
||||
index 7b37fbe..ff986ff 100644
|
||||
--- a/board/ti/beagle/beagle.c
|
||||
+++ b/board/ti/beagle/beagle.c
|
||||
@@ -56,6 +56,7 @@
|
||||
#define BBTOYS_WIFI 0x01000B00
|
||||
#define BBTOYS_VGA 0x02000B00
|
||||
#define BBTOYS_LCD 0x03000B00
|
||||
+#define BBTOYS_ULCD 0x04000B00
|
||||
#define BCT_BRETTL3 0x01000F00
|
||||
#define BCT_BRETTL4 0x02000F00
|
||||
#define LSR_COM6L_ADPT 0x01001300
|
||||
@@ -211,25 +212,25 @@ void get_board_mem_timings(struct board_sdrc_timings *timings)
|
||||
* bus 1 for the availability of an AT24C01B serial EEPROM.
|
||||
* returns the device_vendor field from the EEPROM
|
||||
*/
|
||||
-static unsigned int get_expansion_id(void)
|
||||
+static unsigned int get_expansion_id(int eeprom_address)
|
||||
{
|
||||
i2c_set_bus_num(EXPANSION_EEPROM_I2C_BUS);
|
||||
|
||||
/* return BEAGLE_NO_EEPROM if eeprom doesn't respond */
|
||||
- if (i2c_probe(EXPANSION_EEPROM_I2C_ADDRESS) == 1) {
|
||||
+ if (i2c_probe(eeprom_address) == 1) {
|
||||
i2c_set_bus_num(TWL4030_I2C_BUS);
|
||||
return BEAGLE_NO_EEPROM;
|
||||
}
|
||||
|
||||
/* read configuration data */
|
||||
- i2c_read(EXPANSION_EEPROM_I2C_ADDRESS, 0, 1, (u8 *)&expansion_config,
|
||||
+ i2c_read(eeprom_address, 0, 1, (u8 *)&expansion_config,
|
||||
sizeof(expansion_config));
|
||||
|
||||
/* retry reading configuration data with 16bit addressing */
|
||||
if ((expansion_config.device_vendor == 0xFFFFFF00) ||
|
||||
(expansion_config.device_vendor == 0xFFFFFFFF)) {
|
||||
printf("EEPROM is blank or 8bit addressing failed: retrying with 16bit:\n");
|
||||
- i2c_read(EXPANSION_EEPROM_I2C_ADDRESS, 0, 2, (u8 *)&expansion_config,
|
||||
+ i2c_read(eeprom_address, 0, 2, (u8 *)&expansion_config,
|
||||
sizeof(expansion_config));
|
||||
}
|
||||
|
||||
@@ -341,15 +342,18 @@ int misc_init_r(void)
|
||||
case REVISION_AXBX:
|
||||
printf("Beagle Rev Ax/Bx\n");
|
||||
setenv("beaglerev", "AxBx");
|
||||
+ setenv("musb", "musb_hdrc.fifo_mode=5");
|
||||
break;
|
||||
case REVISION_CX:
|
||||
printf("Beagle Rev C1/C2/C3\n");
|
||||
setenv("beaglerev", "Cx");
|
||||
+ setenv("musb", "musb_hdrc.fifo_mode=5");
|
||||
MUX_BEAGLE_C();
|
||||
break;
|
||||
case REVISION_C4:
|
||||
printf("Beagle Rev C4\n");
|
||||
setenv("beaglerev", "C4");
|
||||
+ setenv("musb", "musb_hdrc.fifo_mode=5");
|
||||
MUX_BEAGLE_C();
|
||||
/* Set VAUX2 to 1.8V for EHCI PHY */
|
||||
twl4030_pmrecv_vsel_cfg(TWL4030_PM_RECEIVER_VAUX2_DEDICATED,
|
||||
@@ -390,7 +394,7 @@ int misc_init_r(void)
|
||||
generate_fake_mac = true;
|
||||
}
|
||||
|
||||
- switch (get_expansion_id()) {
|
||||
+ switch (get_expansion_id(EXPANSION_EEPROM_I2C_ADDRESS)) {
|
||||
case TINCANTOOLS_ZIPPY:
|
||||
printf("Recognized Tincantools Zippy board (rev %d %s)\n",
|
||||
expansion_config.revision,
|
||||
@@ -473,6 +477,30 @@ int misc_init_r(void)
|
||||
if (expansion_config.content == 1)
|
||||
setenv(expansion_config.env_var, expansion_config.env_setting);
|
||||
|
||||
+ /* Scan 0x51 as well for loop-thru boards */
|
||||
+ switch (get_expansion_id(EXPANSION_EEPROM_I2C_ADDRESS + 1)) {
|
||||
+ case BBTOYS_ULCD:
|
||||
+ printf("Recognized BeagleBoardToys uLCD-lite board\n");
|
||||
+ setenv("buddy2", "bbtoys-ulcd");
|
||||
+ setenv("defaultdisplay", "dvi");
|
||||
+ setenv("dvimode", "800x480MR-16@60");
|
||||
+ setenv("lcd1", "i2c mw 40 00 00; i2c mw 40 04 80; i2c mw 40 0d 05");
|
||||
+ setenv("lcdcmd", "i2c dev 1 ; run lcd1; i2c dev 0");
|
||||
+ setenv("kmsmode", "video=DVI-D-1:800x480");
|
||||
+ break;
|
||||
+ case BEAGLE_NO_EEPROM:
|
||||
+ printf("No EEPROM on expansion board\n");
|
||||
+ setenv("buddy2", "none");
|
||||
+ break;
|
||||
+ default:
|
||||
+ printf("Unrecognized expansion board: %x\n",
|
||||
+ expansion_config.device_vendor);
|
||||
+ setenv("buddy2", "unknown");
|
||||
+ }
|
||||
+
|
||||
+ if (expansion_config.content == 1)
|
||||
+ setenv(expansion_config.env_var, expansion_config.env_setting);
|
||||
+
|
||||
twl4030_power_init();
|
||||
switch (get_board_revision()) {
|
||||
case REVISION_XM_AB:
|
||||
diff --git a/include/configs/omap3_beagle.h b/include/configs/omap3_beagle.h
|
||||
index f25a940..9f15cf1 100644
|
||||
--- a/include/configs/omap3_beagle.h
|
||||
+++ b/include/configs/omap3_beagle.h
|
||||
@@ -90,6 +90,12 @@
|
||||
#define CONFIG_USB_ETHER_MCS7830
|
||||
#define CONFIG_USB_ETHER_SMSC95XX
|
||||
|
||||
+/* Arch Linux ARM extras */
|
||||
+#define CONFIG_IDENT_STRING " Arch Linux ARM"
|
||||
+#define CONFIG_SUPPORT_RAW_INITRD
|
||||
+#define CONFIG_CMD_PART
|
||||
+#define CONFIG_PARTITION_UUIDS
|
||||
+
|
||||
/* GPIO banks */
|
||||
#define CONFIG_OMAP3_GPIO_5 /* GPIO128..159 is in GPIO bank 5 */
|
||||
#define CONFIG_OMAP3_GPIO_6 /* GPIO160..191 is in GPIO bank 6 */
|
||||
@@ -129,50 +135,62 @@
|
||||
/* devices */
|
||||
|
||||
#define CONFIG_EXTRA_ENV_SETTINGS \
|
||||
- "loadaddr=0x80200000\0" \
|
||||
- "rdaddr=0x81000000\0" \
|
||||
+ "loadaddr=0x82000000\0" \
|
||||
+ "rdaddr=0x88080000\0" \
|
||||
"fdt_high=0xffffffff\0" \
|
||||
- "fdtaddr=0x80f80000\0" \
|
||||
- "usbtty=cdc_acm\0" \
|
||||
- "bootfile=uImage\0" \
|
||||
- "ramdisk=ramdisk.gz\0" \
|
||||
- "bootdir=/boot\0" \
|
||||
- "bootpart=0:2\0" \
|
||||
+ "fdtaddr=0x88000000\0" \
|
||||
"console=ttyO2,115200n8\0" \
|
||||
- "mpurate=auto\0" \
|
||||
- "buddy=none\0" \
|
||||
- "optargs=\0" \
|
||||
- "camera=none\0" \
|
||||
- "vram=12M\0" \
|
||||
- "dvimode=640x480MR-16@60\0" \
|
||||
- "defaultdisplay=dvi\0" \
|
||||
+ "fdtfile=undefined\0" \
|
||||
+ "bootpart=0:1\0" \
|
||||
+ "bootdir=/\0" \
|
||||
+ "fdtdir=/dtbs\0" \
|
||||
+ "bootfile=zImage\0" \
|
||||
+ "rdfile=initramfs-linux.img\0" \
|
||||
"mmcdev=0\0" \
|
||||
- "mmcroot=/dev/mmcblk0p2 rw\0" \
|
||||
- "mmcrootfstype=ext3 rootwait\0" \
|
||||
- "nandroot=ubi0:rootfs ubi.mtd=4\0" \
|
||||
- "nandrootfstype=ubifs\0" \
|
||||
- "ramroot=/dev/ram0 rw ramdisk_size=65536 initrd=0x81000000,64M\0" \
|
||||
- "ramrootfstype=ext2\0" \
|
||||
+ "optargs=\0" \
|
||||
"mmcargs=setenv bootargs console=${console} " \
|
||||
"${optargs} " \
|
||||
- "mpurate=${mpurate} " \
|
||||
- "buddy=${buddy} "\
|
||||
- "camera=${camera} "\
|
||||
- "vram=${vram} " \
|
||||
- "omapfb.mode=dvi:${dvimode} " \
|
||||
- "omapdss.def_disp=${defaultdisplay} " \
|
||||
- "root=${mmcroot} " \
|
||||
- "rootfstype=${mmcrootfstype}\0" \
|
||||
- "nandargs=setenv bootargs console=${console} " \
|
||||
- "${optargs} " \
|
||||
- "mpurate=${mpurate} " \
|
||||
- "buddy=${buddy} "\
|
||||
- "camera=${camera} "\
|
||||
- "vram=${vram} " \
|
||||
- "omapfb.mode=dvi:${dvimode} " \
|
||||
- "omapdss.def_disp=${defaultdisplay} " \
|
||||
- "root=${nandroot} " \
|
||||
- "rootfstype=${nandrootfstype}\0" \
|
||||
+ "root=${root} " \
|
||||
+ "${musb} " \
|
||||
+ "${cmdline}\0" \
|
||||
+ "loadimage=load ${devtype} ${bootpart} ${loadaddr} ${bootdir}/${bootfile}\0" \
|
||||
+ "loadrd=load ${devtype} ${bootpart} ${rdaddr} ${bootdir}/${rdfile}\0" \
|
||||
+ "loadfdt=echo loading ${fdtdir}/${fdtfile} ...; load ${devtype} ${bootpart} ${fdtaddr} ${fdtdir}/${fdtfile}\0" \
|
||||
+ "mmcboot=usb start;" \
|
||||
+ "for devtype in mmc usb; do " \
|
||||
+ "setenv devnum 0;" \
|
||||
+ "while ${devtype} dev ${devnum}; do " \
|
||||
+ "echo ${devtype} found on device ${devnum};" \
|
||||
+ "setenv bootpart ${devnum}:1;" \
|
||||
+ "if test ${devtype} = mmc; then part uuid mmc ${devnum}:2 uuid; else part uuid ${devtype} ${devnum}:1 uuid; fi;" \
|
||||
+ "part uuid ${devtype} ${rootpart} uuid;" \
|
||||
+ "setenv root PARTUUID=${uuid} rw rootwait;" \
|
||||
+ "echo Checking for: ${bootdir}/uEnv.txt ...;" \
|
||||
+ "if test -e ${devtype} ${bootpart} ${bootdir}/uEnv.txt; then " \
|
||||
+ "load ${devtype} ${bootpart} ${loadaddr} ${bootdir}/uEnv.txt;" \
|
||||
+ "env import -t ${loadaddr} ${filesize};" \
|
||||
+ "echo Loaded environment from ${bootdir}/uEnv.txt;" \
|
||||
+ "echo Checking if uenvcmd is set ...;" \
|
||||
+ "if test -n ${uenvcmd}; then " \
|
||||
+ "echo Running uenvcmd ...;" \
|
||||
+ "run uenvcmd;" \
|
||||
+ "fi;" \
|
||||
+ "fi;" \
|
||||
+ "if run loadimage; then " \
|
||||
+ "run mmcargs;" \
|
||||
+ "if run loadfdt; then " \
|
||||
+ "if run loadrd; then " \
|
||||
+ "bootz ${loadaddr} ${rdaddr}:${filesize} ${fdtaddr};" \
|
||||
+ "else " \
|
||||
+ "bootz ${loadaddr} - ${fdtaddr};" \
|
||||
+ "fi;" \
|
||||
+ "fi;" \
|
||||
+ "else " \
|
||||
+ "echo No kernel found;" \
|
||||
+ "fi;" \
|
||||
+ "setexpr devnum ${devnum} + 1;" \
|
||||
+ "done;" \
|
||||
+ "done;\0" \
|
||||
"findfdt=" \
|
||||
"if test $beaglerev = AxBx; then " \
|
||||
"setenv fdtfile omap3-beagle.dtb; fi; " \
|
||||
@@ -185,81 +203,11 @@
|
||||
"if test $beaglerev = xMC; then " \
|
||||
"setenv fdtfile omap3-beagle-xm.dtb; fi; " \
|
||||
"if test $fdtfile = undefined; then " \
|
||||
- "echo WARNING: Could not determine device tree to use; fi; \0" \
|
||||
- "validatefdt=" \
|
||||
- "if test $beaglerev = xMAB; then " \
|
||||
- "if test ! -e mmc ${bootpart} ${bootdir}/${fdtfile}; then " \
|
||||
- "setenv fdtfile omap3-beagle-xm.dtb; " \
|
||||
- "fi; " \
|
||||
- "fi; \0" \
|
||||
- "bootenv=uEnv.txt\0" \
|
||||
- "loadbootenv=fatload mmc ${mmcdev} ${loadaddr} ${bootenv}\0" \
|
||||
- "importbootenv=echo Importing environment from mmc ...; " \
|
||||
- "env import -t -r $loadaddr $filesize\0" \
|
||||
- "ramargs=setenv bootargs console=${console} " \
|
||||
- "${optargs} " \
|
||||
- "mpurate=${mpurate} " \
|
||||
- "buddy=${buddy} "\
|
||||
- "vram=${vram} " \
|
||||
- "omapfb.mode=dvi:${dvimode} " \
|
||||
- "omapdss.def_disp=${defaultdisplay} " \
|
||||
- "root=${ramroot} " \
|
||||
- "rootfstype=${ramrootfstype}\0" \
|
||||
- "loadramdisk=load mmc ${bootpart} ${rdaddr} ${bootdir}/${ramdisk}\0" \
|
||||
- "loadimage=load mmc ${bootpart} ${loadaddr} ${bootdir}/${bootfile}\0" \
|
||||
- "loadbootscript=load mmc ${mmcdev} ${loadaddr} boot.scr\0" \
|
||||
- "bootscript=echo Running bootscript from mmc${mmcdev} ...; " \
|
||||
- "source ${loadaddr}\0" \
|
||||
- "loadfdt=run validatefdt; load mmc ${bootpart} ${fdtaddr} ${bootdir}/${fdtfile}\0" \
|
||||
- "mmcboot=echo Booting from mmc ...; " \
|
||||
- "run mmcargs; " \
|
||||
- "bootm ${loadaddr}\0" \
|
||||
- "mmcbootz=echo Booting with DT from mmc${mmcdev} ...; " \
|
||||
- "run mmcargs; " \
|
||||
- "bootz ${loadaddr} - ${fdtaddr}\0" \
|
||||
- "nandboot=echo Booting from nand ...; " \
|
||||
- "run nandargs; " \
|
||||
- "nand read ${loadaddr} 280000 400000; " \
|
||||
- "bootm ${loadaddr}\0" \
|
||||
- "ramboot=echo Booting from ramdisk ...; " \
|
||||
- "run ramargs; " \
|
||||
- "bootm ${loadaddr}\0" \
|
||||
- "userbutton=if gpio input 173; then run userbutton_xm; " \
|
||||
- "else run userbutton_nonxm; fi;\0" \
|
||||
- "userbutton_xm=gpio input 4;\0" \
|
||||
- "userbutton_nonxm=gpio input 7;\0"
|
||||
-/* "run userbutton" will return 1 (false) if pressed and 0 (true) if not */
|
||||
+ "echo WARNING: Could not determine device tree to use; fi; \0"
|
||||
+
|
||||
#define CONFIG_BOOTCOMMAND \
|
||||
"run findfdt; " \
|
||||
- "mmc dev ${mmcdev}; if mmc rescan; then " \
|
||||
- "if run userbutton; then " \
|
||||
- "setenv bootenv uEnv.txt;" \
|
||||
- "else " \
|
||||
- "setenv bootenv user.txt;" \
|
||||
- "fi;" \
|
||||
- "echo SD/MMC found on device ${mmcdev};" \
|
||||
- "if run loadbootenv; then " \
|
||||
- "echo Loaded environment from ${bootenv};" \
|
||||
- "run importbootenv;" \
|
||||
- "fi;" \
|
||||
- "if test -n $uenvcmd; then " \
|
||||
- "echo Running uenvcmd ...;" \
|
||||
- "run uenvcmd;" \
|
||||
- "fi;" \
|
||||
- "if run loadbootscript; then " \
|
||||
- "run bootscript; " \
|
||||
- "else " \
|
||||
- "if run loadimage; then " \
|
||||
- "run mmcboot;" \
|
||||
- "fi;" \
|
||||
- "fi; " \
|
||||
- "fi;" \
|
||||
- "run nandboot;" \
|
||||
- "setenv bootfile zImage;" \
|
||||
- "if run loadimage; then " \
|
||||
- "run loadfdt;" \
|
||||
- "run mmcbootz; " \
|
||||
- "fi; " \
|
||||
+ "run mmcboot"
|
||||
|
||||
/*
|
||||
* OMAP3 has 12 GP timers, they can be driven by the system clock
|
||||
--
|
||||
2.4.2
|
||||
|
|
@ -4,27 +4,23 @@
|
|||
buildarch=4
|
||||
|
||||
pkgname=uboot-beagleboard
|
||||
pkgver=2014.04
|
||||
pkgver=2015.04
|
||||
pkgrel=1
|
||||
pkgdesc="U-Boot for BeagleBoard and BeagleBoard-xM"
|
||||
arch=('armv7h')
|
||||
url="http://git.denx.de/u-boot.git/"
|
||||
license=('GPL')
|
||||
makedepends=('git')
|
||||
makedepends=('git' 'bc')
|
||||
source=("ftp://ftp.denx.de/pub/u-boot/u-boot-${pkgver}.tar.bz2"
|
||||
"https://raw.github.com/eewiki/u-boot-patches/master/v${pkgver}/0001-omap3_beagle-uEnv.txt-bootz-n-fixes.patch"
|
||||
'alarm.patch'
|
||||
'0001-arch-linux-arm-modifications.patch'
|
||||
'uEnv.txt')
|
||||
md5sums=('6d2116d1385a66e9a59742caa9d62a54'
|
||||
'242047dc2fdd99593833e9ff23081432'
|
||||
'50df3ef011901e8051b42fd3528b0d86'
|
||||
'3704f05f308e3bb73a5b67a033b2ce5c')
|
||||
md5sums=('570bdc2c47270c2a98ca60ff6c5c74cd'
|
||||
'64860a464158923815b052e997214867'
|
||||
'd41d8cd98f00b204e9800998ecf8427e')
|
||||
|
||||
prepare() {
|
||||
cd u-boot-${pkgver}
|
||||
|
||||
patch -p1 -i "${srcdir}"/0001-omap3_beagle-uEnv.txt-bootz-n-fixes.patch
|
||||
patch -p1 -i "${srcdir}"/alarm.patch
|
||||
git apply ../0001-arch-linux-arm-modifications.patch
|
||||
}
|
||||
|
||||
build() {
|
||||
|
|
|
@ -1,52 +0,0 @@
|
|||
diff -urN a/include/configs/omap3_beagle.h b/include/configs/omap3_beagle.h
|
||||
--- a/include/configs/omap3_beagle.h 2014-05-17 14:05:55.202683461 -0600
|
||||
+++ b/include/configs/omap3_beagle.h 2014-05-17 14:06:11.697622480 -0600
|
||||
@@ -192,6 +192,8 @@
|
||||
/* Environment information */
|
||||
#define CONFIG_BOOTDELAY 1
|
||||
|
||||
+#define CONFIG_IDENT_STRING " Arch Linux ARM"
|
||||
+
|
||||
#define CONFIG_EXTRA_ENV_SETTINGS \
|
||||
"loadaddr=0x80300000\0" \
|
||||
"rdaddr=0x81000000\0" \
|
||||
@@ -200,9 +202,9 @@
|
||||
"usbtty=cdc_acm\0" \
|
||||
"bootfile=zImage\0" \
|
||||
"ramdisk=ramdisk.gz\0" \
|
||||
- "bootdir=\0" \
|
||||
- "bootpart=0:1\0" \
|
||||
- "fdtdir=/dtbs\0" \
|
||||
+ "bootdir=/boot\0" \
|
||||
+ "bootpart=0:2\0" \
|
||||
+ "fdtdir=/boot/dtbs\0" \
|
||||
"console=ttyO2,115200n8\0" \
|
||||
"mpurate=auto\0" \
|
||||
"buddy=none\0" \
|
||||
@@ -213,8 +215,7 @@
|
||||
"dvimode=640x480MR-16@60\0" \
|
||||
"defaultdisplay=dvi\0" \
|
||||
"mmcdev=0\0" \
|
||||
- "mmcroot=/dev/mmcblk0p2 ro\0" \
|
||||
- "mmcrootfstype=ext4 rootwait fixrtc\0" \
|
||||
+ "mmcroot=/dev/mmcblk0p2 rw rootwait fixrtc\0" \
|
||||
"nandroot=ubi0:rootfs ubi.mtd=4\0" \
|
||||
"nandrootfstype=ubifs\0" \
|
||||
"ramroot=/dev/ram0 rw ramdisk_size=65536 initrd=0x81000000,64M\0" \
|
||||
@@ -228,7 +229,6 @@
|
||||
"omapfb.mode=dvi:${dvimode} " \
|
||||
"omapdss.def_disp=${defaultdisplay} " \
|
||||
"root=${mmcroot} " \
|
||||
- "rootfstype=${mmcrootfstype} " \
|
||||
"${musb}\0" \
|
||||
"nandargs=setenv bootargs console=${console} " \
|
||||
"${optargs} " \
|
||||
@@ -257,7 +257,7 @@
|
||||
"if test $beaglerev = xMAB; then " \
|
||||
"fdt addr ${fdtaddr}; fdt resize; fdt set /hsusb2_power_reg enable-active-high; fi; \0" \
|
||||
"bootenv=uEnv.txt\0" \
|
||||
- "loadbootenv=load mmc ${bootpart} ${loadaddr} ${bootenv}\0" \
|
||||
+ "loadbootenv=load mmc ${bootpart} ${loadaddr} ${bootdir}/${bootenv}\0" \
|
||||
"importbootenv=echo Importing environment from mmc ...; " \
|
||||
"env import -t $loadaddr $filesize\0" \
|
||||
"ramargs=setenv bootargs console=${console} " \
|
|
@ -1 +0,0 @@
|
|||
#mmcroot=/dev/mmcblk0p2 rw rootwait fixrtc
|
Loading…
Reference in a new issue