Commit 727fd046 authored by Alessandro Rubini's avatar Alessandro Rubini

bad-hacks: patches and config for bb (see log)

These patches are used internally to fix some mishaps. You
are not expected to use them but they are published just in case
they are useful again (and for historical memory).
parent dfd16746
From b09a1729e86abcc00c2ecc18b5320f042aebc81b Mon Sep 17 00:00:00 2001
From: Alessandro Rubini <rubini@gnudd.com>
Date: Mon, 6 Aug 2012 15:37:54 +0200
Subject: [PATCH 8/9] hack: default to 738 for at91g45
---
arch/arm/mach-at91/Kconfig | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/arch/arm/mach-at91/Kconfig b/arch/arm/mach-at91/Kconfig
index 85becd0..d9ed465 100644
--- a/arch/arm/mach-at91/Kconfig
+++ b/arch/arm/mach-at91/Kconfig
@@ -2,7 +2,7 @@ if ARCH_AT91
config ARCH_TEXT_BASE
hex
- default 0x73f00000 if ARCH_AT91SAM9G45
+ default 0x73800000 if ARCH_AT91SAM9G45
default 0x23f00000
config BOARDINFO
--
1.7.7.2
From 4be1e50a4719a750cc4b1b2a905705abea2024ed Mon Sep 17 00:00:00 2001
From: Alessandro Rubini <rubini@gnudd.com>
Date: Mon, 6 Aug 2012 15:38:49 +0200
Subject: [PATCH 9/9] hack: don't check badblocks, so they can be erased
---
drivers/mtd/nand/nand_base.c | 2 +-
drivers/mtd/nand/nand_write.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/mtd/nand/nand_base.c b/drivers/mtd/nand/nand_base.c
index c4eca0d..3b08e31 100644
--- a/drivers/mtd/nand/nand_base.c
+++ b/drivers/mtd/nand/nand_base.c
@@ -280,7 +280,7 @@ int nand_block_checkbad(struct mtd_info *mtd, loff_t ofs, int getchip,
int allowbbt)
{
struct nand_chip *chip = mtd->priv;
-
+ return 0; /* This to allow erasing bad blocks (bad!) */
#ifdef CONFIG_NAND_BBT
if (!chip->bbt)
return chip->block_bad(mtd, ofs, getchip);
diff --git a/drivers/mtd/nand/nand_write.c b/drivers/mtd/nand/nand_write.c
index 13b6c89..a9cfd03 100644
--- a/drivers/mtd/nand/nand_write.c
+++ b/drivers/mtd/nand/nand_write.c
@@ -629,7 +629,7 @@ int nand_erase_nand(struct mtd_info *mtd, struct erase_info *instr,
/*
* heck if we have a bad block, we do not erase bad blocks !
*/
- if (nand_block_checkbad(mtd, ((loff_t) page) <<
+ if (0 && nand_block_checkbad(mtd, ((loff_t) page) <<
chip->page_shift, 0, allowbbt)) {
printk(KERN_WARNING "nand_erase: attempt to erase a "
"bad block at page 0x%08x\n", page);
--
1.7.7.2
#
# Automatically generated file; DO NOT EDIT.
# Barebox/arm 2012.05.0 Configuration
#
# CONFIG_BOARD_LINKER_SCRIPT is not set
CONFIG_GENERIC_LINKER_SCRIPT=y
CONFIG_ARM=y
CONFIG_ARM_LINUX=y
#
# System Type
#
CONFIG_ARCH_AT91=y
# CONFIG_ARCH_EP93XX is not set
# CONFIG_ARCH_IMX is not set
# CONFIG_ARCH_MXS is not set
# CONFIG_ARCH_NETX is not set
# CONFIG_ARCH_NOMADIK is not set
# CONFIG_ARCH_OMAP is not set
# CONFIG_ARCH_PXA is not set
# CONFIG_ARCH_S3C24xx is not set
# CONFIG_ARCH_VERSATILE is not set
#
# Processor Type
#
CONFIG_CPU_32=y
CONFIG_CPU_ARM926T=y
CONFIG_CPU_32v5=y
#
# processor features
#
# CONFIG_BOOT_ENDIANNESS_SWITCH is not set
CONFIG_ARCH_TEXT_BASE=0x73800000
CONFIG_BOARDINFO="CERN White Rabbit Switch V3"
CONFIG_AT91SAM9G45_RESET=y
#
# Atmel AT91 System-on-Chip
#
# CONFIG_ARCH_AT91RM9200 is not set
# CONFIG_ARCH_AT91SAM9260 is not set
# CONFIG_ARCH_AT91SAM9261 is not set
# CONFIG_ARCH_AT91SAM9263 is not set
# CONFIG_ARCH_AT91SAM9G10 is not set
# CONFIG_ARCH_AT91SAM9G20 is not set
CONFIG_ARCH_AT91SAM9G45=y
# CONFIG_ARCH_AT91SAM9X5 is not set
CONFIG_ARCH_BAREBOX_MAX_BARE_INIT_SIZE=0xF000
# CONFIG_MACH_AT91SAM9M10G45EK is not set
CONFIG_MACH_PM9G45=y
#
# AT91 Board Options
#
# CONFIG_AEABI is not set
#
# Arm specific settings
#
CONFIG_CMD_ARM_CPUINFO=y
CONFIG_ARM_OPTIMZED_STRING_FUNCTIONS=y
CONFIG_ARM_EXCEPTIONS=y
CONFIG_DEFCONFIG_LIST="$ARCH_DEFCONFIG"
CONFIG_GREGORIAN_CALENDER=y
CONFIG_HAS_KALLSYMS=y
CONFIG_HAS_MODULES=y
CONFIG_CMD_MEMORY=y
CONFIG_ENV_HANDLING=y
CONFIG_GENERIC_GPIO=y
CONFIG_FILETYPE=y
#
# General Settings
#
CONFIG_LOCALVERSION=""
CONFIG_LOCALVERSION_AUTO=y
CONFIG_BANNER=y
CONFIG_ENVIRONMENT_VARIABLES=y
#
# memory layout
#
# CONFIG_MMU is not set
CONFIG_HAVE_CONFIGURABLE_TEXT_BASE=y
CONFIG_TEXT_BASE=0x73800000
CONFIG_BAREBOX_MAX_IMAGE_SIZE=0xffffffff
CONFIG_BAREBOX_MAX_BARE_INIT_SIZE=0xffffffff
CONFIG_HAVE_CONFIGURABLE_MEMORY_LAYOUT=y
CONFIG_MEMORY_LAYOUT_DEFAULT=y
# CONFIG_MEMORY_LAYOUT_FIXED is not set
CONFIG_STACK_SIZE=0x8000
CONFIG_MALLOC_SIZE=0x400000
# CONFIG_BROKEN is not set
# CONFIG_EXPERIMENTAL is not set
CONFIG_MALLOC_DLMALLOC=y
# CONFIG_MALLOC_TLSF is not set
# CONFIG_KALLSYMS is not set
CONFIG_PROMPT="WRS-3> "
CONFIG_BAUDRATE=115200
CONFIG_LONGHELP=y
CONFIG_CBSIZE=1024
CONFIG_MAXARGS=16
CONFIG_SHELL_HUSH=y
# CONFIG_SHELL_SIMPLE is not set
CONFIG_GLOB=y
CONFIG_PROMPT_HUSH_PS2="y"
CONFIG_HUSH_FANCY_PROMPT=y
CONFIG_HUSH_GETOPT=y
CONFIG_CMDLINE_EDITING=y
CONFIG_AUTO_COMPLETE=y
CONFIG_MENU=y
CONFIG_PASSWORD=y
# CONFIG_PASSWD_SUM_MD5 is not set
CONFIG_PASSWD_SUM_SHA1=y
# CONFIG_PASSWD_SUM_SHA256 is not set
CONFIG_DYNAMIC_CRC_TABLE=y
CONFIG_ERRNO_MESSAGES=y
CONFIG_TIMESTAMP=y
CONFIG_CONSOLE_FULL=y
CONFIG_CONSOLE_ACTIVATE_FIRST=y
CONFIG_PARTITION=y
# CONFIG_PARTITION_DISK is not set
CONFIG_DEFAULT_ENVIRONMENT=y
CONFIG_DEFAULT_ENVIRONMENT_COMPRESSED=y
CONFIG_DEFAULT_ENVIRONMENT_COMPRESSED_GZIP=y
# CONFIG_DEFAULT_ENVIRONMENT_COMPRESSED_BZIP2 is not set
# CONFIG_DEFAULT_ENVIRONMENT_COMPRESSED_LZO is not set
CONFIG_DEFAULT_ENVIRONMENT_GENERIC=y
CONFIG_DEFAULT_ENVIRONMENT_PATH="arch/arm/boards/pm9g45/env"
# CONFIG_POLLER is not set
#
# Debugging
#
CONFIG_DEBUG_INFO=y
CONFIG_ENABLE_FLASH_NOISE=y
CONFIG_ENABLE_PARTITION_NOISE=y
CONFIG_ENABLE_DEVICE_NOISE=y
CONFIG_COMMAND_SUPPORT=y
#
# commands
#
#
# scripting
#
CONFIG_CMD_EDIT=y
CONFIG_CMD_SLEEP=y
CONFIG_CMD_SAVEENV=y
CONFIG_CMD_LOADENV=y
CONFIG_CMD_EXPORT=y
CONFIG_CMD_PRINTENV=y
CONFIG_CMD_READLINE=y
CONFIG_CMD_TRUE=y
CONFIG_CMD_FALSE=y
CONFIG_CMD_MENU=y
CONFIG_CMD_MENU_MANAGEMENT=y
CONFIG_CMD_LOGIN=y
CONFIG_CMD_PASSWD=y
CONFIG_PASSWD_MODE_HIDE=y
# CONFIG_PASSWD_MODE_STAR is not set
# CONFIG_PASSWD_MODE_CLEAR is not set
# CONFIG_CMD_TIME is not set
#
# file commands
#
CONFIG_CMD_LS=y
CONFIG_CMD_RM=y
CONFIG_CMD_CAT=y
CONFIG_CMD_MKDIR=y
CONFIG_CMD_RMDIR=y
CONFIG_CMD_CP=y
CONFIG_CMD_PWD=y
CONFIG_CMD_CD=y
CONFIG_CMD_MOUNT=y
CONFIG_CMD_UMOUNT=y
CONFIG_CMD_NAND=y
# CONFIG_CMD_NANDTEST is not set
# CONFIG_CMD_AUTOMOUNT is not set
#
# console
#
CONFIG_CMD_CLEAR=y
CONFIG_CMD_ECHO=y
CONFIG_CMD_ECHO_E=y
#
# memory
#
CONFIG_CMD_LOADB=y
# CONFIG_CMD_LOADS is not set
CONFIG_CMD_MEMINFO=y
# CONFIG_CMD_IOMEM is not set
CONFIG_CMD_CRC=y
CONFIG_CMD_CRC_CMP=y
# CONFIG_CMD_MD5SUM is not set
# CONFIG_CMD_SHA1SUM is not set
# CONFIG_CMD_SHA256SUM is not set
# CONFIG_CMD_SHA224SUM is not set
CONFIG_CMD_MTEST=y
CONFIG_CMD_MTEST_ALTERNATIVE=y
#
# flash
#
CONFIG_CMD_FLASH=y
#
# booting
#
CONFIG_CMD_BOOTM=y
CONFIG_CMD_BOOTM_SHOW_TYPE=y
# CONFIG_CMD_BOOTM_VERBOSE is not set
# CONFIG_CMD_BOOTM_INITRD is not set
# CONFIG_CMD_BOOTM_OFTREE is not set
# CONFIG_CMD_UIMAGE is not set
CONFIG_CMD_BOOTZ=y
CONFIG_CMD_BOOTU=y
CONFIG_CMD_RESET=y
CONFIG_CMD_GO=y
# CONFIG_CMD_OFTREE is not set
CONFIG_CMD_TIMEOUT=y
CONFIG_CMD_PARTITION=y
CONFIG_CMD_TEST=y
CONFIG_CMD_VERSION=y
CONFIG_CMD_HELP=y
# CONFIG_CMD_MAGICVAR is not set
CONFIG_CMD_DEVINFO=y
CONFIG_CMD_GPIO=y
# CONFIG_CMD_UNCOMPRESS is not set
CONFIG_NET=y
CONFIG_NET_DHCP=y
CONFIG_NET_NFS=y
CONFIG_NET_PING=y
CONFIG_NET_TFTP=y
CONFIG_NET_TFTP_PUSH=y
CONFIG_NET_NETCONSOLE=y
CONFIG_NET_RESOLV=y
#
# Drivers
#
#
# serial drivers
#
# CONFIG_DRIVER_SERIAL_ARM_DCC is not set
# CONFIG_DRIVER_SERIAL_NS16550 is not set
CONFIG_DRIVER_SERIAL_ATMEL=y
CONFIG_HAS_MACB=y
CONFIG_MIIDEV=y
#
# Network drivers
#
# CONFIG_DRIVER_NET_SMC911X is not set
# CONFIG_DRIVER_NET_SMC91111 is not set
CONFIG_DRIVER_NET_MACB=y
# CONFIG_DRIVER_NET_KS8851_MLL is not set
#
# SPI drivers
#
CONFIG_SPI=y
# CONFIG_DRIVER_SPI_ATMEL is not set
# CONFIG_I2C is not set
#
# flash drivers
#
# CONFIG_DRIVER_CFI is not set
# CONFIG_MTD_M25P80 is not set
CONFIG_MTD=y
CONFIG_MTD_WRITE=y
CONFIG_MTD_OOB_DEVICE=y
# CONFIG_MTD_RAW_DEVICE is not set
#
# Self contained MTD devices
#
# CONFIG_MTD_DOCG3 is not set
CONFIG_NAND=y
CONFIG_NAND_ECC_SOFT=y
CONFIG_NAND_ECC_HW=y
CONFIG_NAND_ECC_HW_SYNDROME=y
CONFIG_NAND_ECC_HW_NONE=y
CONFIG_NAND_INFO=y
CONFIG_NAND_READ_OOB=y
CONFIG_NAND_BBT=y
CONFIG_NAND_ATMEL=y
CONFIG_MTD_NAND_VERIFY_WRITE=y
# CONFIG_MTD_NAND_ECC_SMC is not set
CONFIG_MTD_NAND_IDS=y
# CONFIG_UBI is not set
# CONFIG_DISK is not set
# CONFIG_USB is not set
# CONFIG_USB_GADGET is not set
# CONFIG_VIDEO is not set
# CONFIG_MCI is not set
CONFIG_CLKDEV_LOOKUP=y
#
# MFD
#
# CONFIG_I2C_MC13892 is not set
# CONFIG_DRIVER_SPI_MC13783 is not set
# CONFIG_LED is not set
#
# EEPROM support
#
CONFIG_EEPROM_AT25=y
#
# Input device support
#
# CONFIG_KEYBOARD_GPIO is not set
# CONFIG_PWM is not set
#
# Filesystem support
#
# CONFIG_FS_CRAMFS is not set
CONFIG_FS_RAMFS=y
CONFIG_FS_DEVFS=y
# CONFIG_FS_TFTP is not set
# CONFIG_FS_FAT is not set
#
# Library routines
#
CONFIG_PARAMETER=y
CONFIG_UNCOMPRESS=y
CONFIG_ZLIB=y
CONFIG_BZLIB=y
# CONFIG_GENERIC_FIND_NEXT_BIT is not set
CONFIG_PROCESS_ESCAPE_SEQUENCE=y
CONFIG_LZO_DECOMPRESS=y
CONFIG_CRC32=y
CONFIG_CRC16=y
CONFIG_DIGEST=y
# CONFIG_MD5 is not set
CONFIG_SHA1=y
# CONFIG_SHA224 is not set
# CONFIG_SHA256 is not set
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment