Some issues encountered with kernel compilation

Source: Internet
Author: User

I compile the kernel when I do not know whether it is my compilation method is a problem or other reasons (using the day embedded E8 Development Board with the source code, the CPU is Samsung s5pv210, kernel version 3.0.8), encountered a lot of problems, the following are some of the problems I encountered and solutions, Some of the options are I find on the Internet, some are my own thinking, if there is anything wrong, please inform, thank you!

Question 1:
Drivers/gpio/janz-ttl.c
Implicit declaration of function ' Iowrite16be '
Solution:
Add macro definition: #define IOWRITE16BE (V, addr) iowrite16 (Be16_to_cpu (v), (addr))

Question 2:
There is no mach/map.h in DRIVERS/CHAR/S3C_MEM.C
Solution:
Remove the file in the # include <mach/map.h>

Issue 3:
Drivers/input/touchscreen/eeti_ts.c:65:error:implicit declaration of function ' Irq_to_gpio '
Solution:
A, raumfeld.c
static struct Eeti_ts_platform_data eeti_ts_pdata = {
. Irq_active_high = 1,
. Gpio = Gpio_touc h_irq,//add
};
B,/drivers/input/touchscreen/eeti_ts.c
struct Eeti_ts_priv {
struct input_dev *input;
struct WORK_ struct work;
struct mutex mutex;
int IRQ, irq_active_high;//delete
int IRQ, GPIO, irq_active_high;//add
};
Static inline int eeti_ts_irq_active (struct Eeti_ts_priv *priv)
{
Return Gpio_get_value (Irq_to_gpio (PRIV->IRQ)) = = priv->irq_active_high;//Delete
return gpio_get_ Value (priv->gpio) = = priv->irq_active_high;//Add
}

if (pdata)
Priv->irq_active_high = pdata->irq_active_high;
Replaced by
if (pdata) {
Priv->gpio = pdata->gpio;
Priv->irq_active_high = pdata->irq_active_high;
}

C,/include/linux/input/eeti_ts.h
struct Eeti_ts_platform_data {
unsigned int irq_active_high;
unsigned int gpio;//add
};

Question 4:
Drivers/mfd/ezx-pcap.c:205:error:implicit declaration of function ' Irq_to_gpio '
Solution:
This is because there is no solution, so we define this variable


Question 5:
Drivers/mmc/core/mmc_ops.c:20:22:error:plat/cpu.h:no such file or directory
Solution:
Remove the header file

Question 6:
DRIVERS/MMC/HOST/SDHCI.C in: S3c64xx_sdhci_control4,s3c64xx_sdhci_control4_busy not defined
Solution:
Header file in arch/arm/plat-samsung/include/plat/regs-sdhci.h
You can't just copy the definition.

Question 7:
Drivers/scsi/osd/osd_initiator.c:67:error:size of array ' type name ' is negative
Solution:
Comment out the line with the error, the content definition is not used later

Question 8:
Drivers/scsi/advansys.c:8376:error:implicit declaration of function ' Dma_cache_sync '
Solution:
The function has been discarded, directly annotated

Question 9:
Eabi version inconsistent, link failed
Solution:
This is caused by a compiler version that is too high, select the use of the kernel features in the kernel compilation option, the ARM EABI to compile the kernel

Question 10:
Drivers/staging/dt3155v4l/dt3155v4l.c:434:error:implicit declaration of function ' Kzalloc '
Solution:
Add header Files <linux/slab.h>

Question 11:
Drivers/staging/iio/accel/lis3l02dq_core.c:708:error:implicit declaration of function ' Irq_to_gpio '
Drivers/staging/iio/accel/lis3l02dq_ring.c:297:error:implicit declaration of function ' Irq_to_gpio '
Drivers/staging/iio/accel/sca3000_core.c:1169:error:implicit declaration of function ' Irq_to_gpio '
Drivers/staging/iio/imu/adis16400_core.c:822:error:implicit declaration of function ' Irq_to_gpio '
Solution:
The reference header file in these files <linux/gpio.h> contains the definition of the function

Question 12:
Drivers/staging/solo6x10/core.c:140:error:implicit declaration of function ' Kzalloc '
Drivers/staging/solo6x10/p2m.c:52:error:implicit declaration of function ' Kzalloc '
Drivers/staging/solo6x10/enc.c:101:error:implicit declaration of function ' Kzalloc '
Drivers/staging/solo6x10/g723.c:139:error:implicit declaration of function ' Kzalloc '
Solution:
Add header file # include <linux/slab.h>

Question 13:
Drivers/staging/vme/bridges/vme_tsi148.c:130:error:implicit declaration of function ' Ioread32be '
Drivers/staging/vme/bridges/vme_tsi148.c:133:error:implicit declaration of function ' Ioread32be '
Drivers/tty/serial/uartlite.c:79:error:implicit declaration of function ' Ioread32be '
Drivers/tty/serial/uartlite.c:125:error:implicit declaration of function ' Iowrite32be '
Solution:
#define IOWRITE32BE (V, addr) iowrite32 (Be32_to_cpu (v), (addr))
#define IOREAD32BE (addr) be32_to_cpu (ioread32 (addr))

Some issues encountered with kernel compilation

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.