** Description changed: Booting vexpress using a device-tree causes a crash at boot. This was found on the 12.07 release candidate: https://android-build.linaro.org/builds/~linaro-android/vexpress-ics-gcc47-armlt-tracking-open-12.07-release/ This means that the release won't be usable on A5 or A15 CoreTiles (TC1 and TC2). Fortunately, we have a separate release targeting TC2 which - doesn't have this bug. The symptoms of te bug are a crash like... + doesn't have this bug. The symptoms of the bug are a crash like... [ 3.488353] Unable to handle kernel NULL pointer dereference at virtual address 00000000 [ 3.512678] pgd = c0004000 [ 3.520764] [00000000] *pgd=00000000 [ 3.531497] Internal error: Oops: 805 [#1] SMP ARM [ 3.545834] Modules linked in: [ 3.554969] CPU: 1 Not tainted (3.5.0-rc7-00617-g4b42f33 #1) [ 3.572959] PC is at mmci_dt_populate_generic_pdata+0x20/0x128 [ 3.581148] nxp-isp1760 1b000000.usb: port 1 high speed [ 3.606054] LR is at mmci_probe+0x70/0x4ac - - The bug is cased by a patch in linux-linaro an so will also affect the Ubuntu release. The problematic patch is 1db67fb9437eed6b909cc4a4add7a314375157b0 ([ARM] warnings in + The bug is cased by a patch in linux-linaro and so will also affect the Ubuntu release. The problematic patch is 1db67fb9437eed6b909cc4a4add7a314375157b0 ([ARM] warnings in include/linux/of_gpio.h). This contains... - /* Drivers may not strictly depend on the GPIO support, so let them link. */ - static inline int of_get_named_gpio_flags(struct device_node *np, - const char *list_name, int index, enum of_gpio_flags *flags) - { + /* Drivers may not strictly depend on the GPIO support, so let them link. */ + static inline int of_get_named_gpio_flags(struct device_node *np, + const char *list_name, int index, enum of_gpio_flags *flags) + { + *flags = 0; - return -ENOSYS; - } - + return -ENOSYS; + } but the same header also has this... - static inline int of_get_named_gpio(struct device_node *np, - const char *propname, int index) + const char *propname, int index) { - return of_get_named_gpio_flags(np, propname, index, NULL); + return of_get_named_gpio_flags(np, propname, index, NULL); } - - Which means it causes this when booting vexpress with a device tree... - - [ 3.488353] Unable to handle kernel NULL pointer dereference at virtual address 00000000 - [ 3.512678] pgd = c0004000 - [ 3.520764] [00000000] *pgd=00000000 - [ 3.531497] Internal error: Oops: 805 [#1] SMP ARM - [ 3.545834] Modules linked in: - [ 3.554969] CPU: 1 Not tainted (3.5.0-rc7-00617-g4b42f33 #1) - [ 3.572959] PC is at mmci_dt_populate_generic_pdata+0x20/0x128 - [ 3.581148] nxp-isp1760 1b000000.usb: port 1 high speed - [ 3.606054] LR is at mmci_probe+0x70/0x4ac + Which passes NULL for the flags pointer.
-- You received this bug notification because you are a member of Linaro Maintainers, which is the registrant for Linaro Linux. https://bugs.launchpad.net/bugs/1027907 Title: vexpress A5 and A15 (TC1) crash on boot Status in Linaro Android: New Status in Linaro ARM Landing Team Project: New Status in Linaro Ubuntu Evaluation Builds: New Status in Linaro Linux: Confirmed Bug description: Booting vexpress using a device-tree causes a crash at boot. This was found on the 12.07 release candidate: https://android-build.linaro.org/builds/~linaro-android/vexpress-ics-gcc47-armlt-tracking-open-12.07-release/ This means that the release won't be usable on A5 or A15 CoreTiles (TC1 and TC2). Fortunately, we have a separate release targeting TC2 which doesn't have this bug. The symptoms of the bug are a crash like... [ 3.488353] Unable to handle kernel NULL pointer dereference at virtual address 00000000 [ 3.512678] pgd = c0004000 [ 3.520764] [00000000] *pgd=00000000 [ 3.531497] Internal error: Oops: 805 [#1] SMP ARM [ 3.545834] Modules linked in: [ 3.554969] CPU: 1 Not tainted (3.5.0-rc7-00617-g4b42f33 #1) [ 3.572959] PC is at mmci_dt_populate_generic_pdata+0x20/0x128 [ 3.581148] nxp-isp1760 1b000000.usb: port 1 high speed [ 3.606054] LR is at mmci_probe+0x70/0x4ac The bug is cased by a patch in linux-linaro and so will also affect the Ubuntu release. The problematic patch is 1db67fb9437eed6b909cc4a4add7a314375157b0 ([ARM] warnings in include/linux/of_gpio.h). This contains... /* Drivers may not strictly depend on the GPIO support, so let them link. */ static inline int of_get_named_gpio_flags(struct device_node *np, const char *list_name, int index, enum of_gpio_flags *flags) { + *flags = 0; return -ENOSYS; } but the same header also has this... static inline int of_get_named_gpio(struct device_node *np, const char *propname, int index) { return of_get_named_gpio_flags(np, propname, index, NULL); } Which passes NULL for the flags pointer. To manage notifications about this bug go to: https://bugs.launchpad.net/linaro-android/+bug/1027907/+subscriptions -- Mailing list: https://launchpad.net/~linaro-pkg Post to : [email protected] Unsubscribe : https://launchpad.net/~linaro-pkg More help : https://help.launchpad.net/ListHelp

