[OpenWrt-Devel] brcm2708: add kernel 4.14 support

Alexandru Ardelean ardeleanalex at gmail.com
Fri Dec 7 03:17:53 EST 2018


On Fri, Dec 7, 2018 at 5:06 AM Stijn Tintel <stijn at linux-ipv6.be> wrote:
>
> On 11/11/18 18:37, Stijn Tintel wrote:
> > Hi,
> >
> > I have just pushed support for the 4.14 kernel on the brcm2708 target to
> > my staging tree [1], and would like to get some feedback before pushing
> > it to master. It would also be nice if people could do runtime tests on
> > bcm2709 and bcm2710, as I don't own such hardware.
> >
> > Thanks,
> > Stijn
> >
> > [1]
> > https://git.openwrt.org/?p=openwrt/staging/stintel.git;a=shortlog;h=refs/heads/brcm2708-4_14
> >
> Updated [1]:
> - based on 4.14.86
> - split kmod changes in separate commits
> - kept lan78xx patches except those that are superseded by upstream
> changes, added another one that attempts to fix broken ethernet and
> "kevent 4 may have been dropped" flood
> - added missing compatible strings using upstream names for compute modules
> - no longer removing the sense HAT patch, I might add kmod packages for
> that later
>
> Compile-tested all 3 subtargets again with CONFIG_ALL_KMODS=y, and
> runtime-tested bcm2708 on RPi0W and bcm2710 on RPi3B+. The wired
> interface on the latter seems to be usable now.
>
> I'm planning to push this to master as soon as Koen pushed the 4.14.86
> bump. If there are any objections, please speak up ASAP.
>

This one booted fine on a RPi 3.
I used the 32 bit image.

root at OpenWrt:~# uname -a
Linux OpenWrt 4.14.86 #0 SMP Fri Dec 7 03:03:39 2018 armv7l GNU/Linux

A few minor/ignorable errors:
[    0.769743] Error: Driver 'sdhost-bcm2835' is already registered, aborting...
[    8.689456] brcmfmac mmc1:0001:1: Direct firmware load for
brcm/brcmfmac43455-sdio.raspberrypi,3-model-b-plus.txt failed with
error -2

Full dmesg log below
/START dmesg ----------------------------------------------------------------------/
[    0.000000] Booting Linux on physical CPU 0x0
[    0.000000] Linux version 4.14.86 (sandu at saturn) (gcc version 7.3.0
(OpenWrt GCC 7.3.0 r8039+640-0317fc3658)) #0 SMP Fri Dec 7 03:03:39
2018
[    0.000000] CPU: ARMv7 Processor [410fd034] revision 4 (ARMv7), cr=10c5383d
[    0.000000] CPU: div instructions available: patching division code
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing
instruction cache
[    0.000000] OF: fdt: Machine model: Raspberry Pi 3 Model B Plus Rev 1.3
[    0.000000] Memory policy: Data cache writealloc
[    0.000000] cma: Reserved 16 MiB at 0x3a400000
[    0.000000] On node 0 totalpages: 242688
[    0.000000] free_area_init_node: node 0, pgdat 80824bc0,
node_mem_map b9c88000
[    0.000000]   Normal zone: 1896 pages used for memmap
[    0.000000]   Normal zone: 0 pages reserved
[    0.000000]   Normal zone: 242688 pages, LIFO batch:31
[    0.000000] random: get_random_bytes called from
start_kernel+0x84/0x35c with crng_init=0
[    0.000000] percpu: Embedded 16 pages/cpu @b9c34000 s33932 r8192
d23412 u65536
[    0.000000] pcpu-alloc: s33932 r8192 d23412 u65536 alloc=16*4096
[    0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 240792
[    0.000000] Kernel command line: 8250.nr_uarts=1
bcm2708_fb.fbwidth=1824 bcm2708_fb.fbheight=984 bcm2708_fb.fbswap=1
vc_mem.mem_base=0x3ec00000 vc_mem.mem_size=0x40000000
dwc_otg.lpm_enable=0 console=ttyS0,115200 kgdboc=ttyS0,115200
console=tty1 root=/dev/mmcblk0p2 rootfstype=squashfs,ext4 rootwait
[    0.000000] PID hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
[    0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
[    0.000000] Memory: 937852K/970752K available (4656K kernel code,
148K rwdata, 1212K rodata, 1024K init, 351K bss, 16516K reserved,
16384K cma-reserved)
[    0.000000] Virtual kernel memory layout:
[    0.000000]     vector  : 0xffff0000 - 0xffff1000   (   4 kB)
[    0.000000]     fixmap  : 0xffc00000 - 0xfff00000   (3072 kB)
[    0.000000]     vmalloc : 0xbb800000 - 0xff800000   (1088 MB)
[    0.000000]     lowmem  : 0x80000000 - 0xbb400000   ( 948 MB)
[    0.000000]     modules : 0x7f000000 - 0x80000000   (  16 MB)
[    0.000000]       .text : 0x80008000 - 0x8058c324   (5649 kB)
[    0.000000]       .init : 0x80700000 - 0x80800000   (1024 kB)
[    0.000000]       .data : 0x80800000 - 0x808253c0   ( 149 kB)
[    0.000000]        .bss : 0x8082a1a8 - 0x80881e08   ( 352 kB)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[    0.000000] Hierarchical RCU implementation.
[    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
[    0.000000] arch_timer: cp15 timer(s) running at 19.20MHz (phys).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff
max_cycles: 0x46d987e47, max_idle_ns: 440795202767 ns
[    0.000007] sched_clock: 56 bits at 19MHz, resolution 52ns, wraps
every 4398046511078ns
[    0.000021] Switching to timer-based delay loop, resolution 52ns
[    0.000222] Console: colour dummy device 80x30
[    0.000675] console [tty1] enabled
[    0.000710] Calibrating delay loop (skipped), value calculated
using timer frequency.. 38.40 BogoMIPS (lpj=192000)
[    0.000745] pid_max: default: 32768 minimum: 301
[    0.000877] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes)
[    0.000905] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes)
[    0.001426] CPU: Testing write buffer coherency: ok
[    0.001768] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[    0.002084] Setting up static identity map for 0x100000 - 0x100060
[    0.002199] Hierarchical SRCU implementation.
[    0.002710] smp: Bringing up secondary CPUs ...
[    0.003295] CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
[    0.003918] CPU2: thread -1, cpu 2, socket 0, mpidr 80000002
[    0.004510] CPU3: thread -1, cpu 3, socket 0, mpidr 80000003
[    0.004589] smp: Brought up 1 node, 4 CPUs
[    0.004652] SMP: Total of 4 processors activated (153.60 BogoMIPS).
[    0.004670] CPU: All CPU(s) started in HYP mode.
[    0.004685] CPU: Virtualization extensions available.
[    0.014064] VFP support v0.3: implementor 41 architecture 3 part 40
variant 3 rev 4
[    0.014278] clocksource: jiffies: mask: 0xffffffff max_cycles:
0xffffffff, max_idle_ns: 19112604462750000 ns
[    0.014316] futex hash table entries: 1024 (order: 4, 65536 bytes)
[    0.014957] pinctrl core: initialized pinctrl subsystem
[    0.015629] NET: Registered protocol family 16
[    0.017863] DMA: preallocated 1024 KiB pool for atomic coherent allocations
[    0.021437] cpuidle: using governor ladder
[    0.021476] cpuidle: using governor menu
[    0.021926] Serial: AMBA PL011 UART driver
[    0.023341] bcm2835-mbox 3f00b880.mailbox: mailbox enabled
[    0.023742] uart-pl011 3f201000.serial: could not find pctldev for
node /soc/gpio at 7e200000/uart0_pins, deferring probe
[    0.048457] bcm2835-dma 3f007000.dma: DMA legacy API manager at
bb813000, dmachans=0x1
[    0.050195] SCSI subsystem initialized
[    0.050392] usbcore: registered new interface driver usbfs
[    0.050456] usbcore: registered new interface driver hub
[    0.050522] usbcore: registered new device driver usb
[    0.060040] raspberrypi-firmware soc:firmware: Attached to firmware
from 2018-11-23 19:36
[    0.061063] clocksource: Switched to clocksource arch_sys_counter
[    0.065728] NET: Registered protocol family 2
[    0.066272] TCP established hash table entries: 8192 (order: 3, 32768 bytes)
[    0.066397] TCP bind hash table entries: 8192 (order: 4, 65536 bytes)
[    0.066596] TCP: Hash tables configured (established 8192 bind 8192)
[    0.066720] UDP hash table entries: 512 (order: 2, 16384 bytes)
[    0.066778] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes)
[    0.066963] NET: Registered protocol family 1
[    0.068108] Crashlog allocated RAM at address 0x3f00000
[    0.068268] workingset: timestamp_bits=30 max_order=18 bucket_order=0
[    0.072149] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.073693] io scheduler noop registered
[    0.073713] io scheduler deadline registered
[    0.073828] io scheduler cfq registered (default)
[    0.076067] BCM2708FB: allocated DMA memory fa500000
[    0.076109] BCM2708FB: allocated DMA channel 0 @ bb813000
[    0.127576] Console: switching to colour frame buffer device 228x61
[    0.158575] Serial: 8250/16550 driver, 1 ports, IRQ sharing enabled
[    0.159624] vc-mem: phys_addr:0x00000000 mem_base=0x3ec00000
mem_size:0x40000000(1024 MiB)
[    0.160171] vc-sm: Videocore shared memory driver
[    0.167244] brd: module loaded
[    0.171156] loop: module loaded
[    0.171574] libphy: Fixed MDIO Bus: probed
[    0.171795] usbcore: registered new interface driver lan78xx
[    0.172007] usbcore: registered new interface driver smsc95xx
[    0.172187] dwc_otg: version 3.00a 10-AUG-2012 (platform bus)
[    0.200256] dwc_otg 3f980000.usb: base=0xf0980000
[    0.400552] Core Release: 2.80a
[    0.400658] Setting default values for core params
[    0.400825] Finished setting default values for core params
[    0.601219] Using Buffer DMA mode
[    0.601326] Periodic Transfer Interrupt Enhancement - disabled
[    0.601497] Multiprocessor Interrupt Enhancement - disabled
[    0.601662] OTG VER PARAM: 0, OTG VER FLAG: 0
[    0.601797] Dedicated Tx FIFOs mode
[    0.602203] WARN::dwc_otg_hcd_init:1046: FIQ DMA bounce buffers:
virt = 0xba514000 dma = 0xfa514000 len=9024
[    0.602509] FIQ FSM acceleration enabled for :
[    0.602509] Non-periodic Split Transactions
[    0.602509] Periodic Split Transactions
[    0.602509] High-Speed Isochronous Endpoints
[    0.602509] Interrupt/Control Split Transaction hack enabled
[    0.603127] dwc_otg: Microframe scheduler enabled
[    0.603180] WARN::hcd_init_fiq:459: FIQ on core 1 at 0x804129ec
[    0.603363] WARN::hcd_init_fiq:460: FIQ ASM at 0x80412d08 length 36
[    0.610393] WARN::hcd_init_fiq:486: MPHI regs_base at 0xf0006000
[    0.617497] dwc_otg 3f980000.usb: DWC OTG Controller
[    0.624612] dwc_otg 3f980000.usb: new USB bus registered, assigned
bus number 1
[    0.631670] dwc_otg 3f980000.usb: irq 62, io mem 0x00000000
[    0.638676] Init: Port Power? op_state=1
[    0.645482] Init: Power Port (0)
[    0.652422] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[    0.659263] usb usb1: New USB device strings: Mfr=3, Product=2,
SerialNumber=1
[    0.666133] usb usb1: Product: DWC OTG Controller
[    0.673072] usb usb1: Manufacturer: Linux 4.14.86 dwc_otg_hcd
[    0.680015] usb usb1: SerialNumber: 3f980000.usb
[    0.687362] hub 1-0:1.0: USB hub found
[    0.694157] hub 1-0:1.0: 1 port detected
[    0.701368] dwc_otg: FIQ enabled
[    0.701372] dwc_otg: NAK holdoff enabled
[    0.701376] dwc_otg: FIQ split-transaction FSM enabled
[    0.701384] Module dwc_common_port init
[    0.701551] usbcore: registered new interface driver uas
[    0.708348] usbcore: registered new interface driver usb-storage
[    0.715034] mousedev: PS/2 mouse device common for all mice
[    0.721663] i2c /dev entries driver
[    0.728660] bcm2835-wdt 3f100000.watchdog: Broadcom BCM2835 watchdog timer
[    0.735571] bcm2835-cpufreq: min=600000 max=1400000
[    0.742506] sdhci: Secure Digital Host Controller Interface driver
[    0.749107] sdhci: Copyright(c) Pierre Ossman
[    0.756071] mmc-bcm2835 3f300000.mmc: could not get clk, deferring probe
[    0.762976] sdhost-bcm2835 3f202000.mmc: could not get clk, deferring probe
[    0.769743] Error: Driver 'sdhost-bcm2835' is already registered, aborting...
[    0.776423] sdhci-pltfm: SDHCI platform and OF driver helper
[    0.787115] vchiq: vchiq_init_state: slot_zero = ba580000, is_master = 0
[    0.794741] [vc_sm_connected_init]: start
[    0.805008] [vc_sm_connected_init]: end - returning 0
[    0.812803] NET: Registered protocol family 10
[    0.820502] Segment Routing with IPv6
[    0.824535] NET: Registered protocol family 17
[    0.827439] 8021q: 802.1Q VLAN Support v1.8
[    0.830601] Registering SWP/SWPB emulation handler
[    0.836299] uart-pl011 3f201000.serial: cts_event_workaround enabled
[    0.839430] 3f201000.serial: ttyAMA0 at MMIO 0x3f201000 (irq = 87,
base_baud = 0) is a PL011 rev2
[    0.843142] console [ttyS0] disabled
[    0.846239] 3f215040.serial: ttyS0 at MMIO 0x0 (irq = 166,
base_baud = 31250000) is a 16550
[    0.911149] Indeed it is in host mode hprt0 = 00021501
[    1.111081] usb 1-1: new high-speed USB device number 2 using dwc_otg
[    1.115002] Indeed it is in host mode hprt0 = 00001101
[    1.372144] usb 1-1: New USB device found, idVendor=0424, idProduct=2514
[    1.372154] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[    1.382088] hub 1-1:1.0: USB hub found
[    1.393830] hub 1-1:1.0: 4 ports detected
[    1.771294] console [ttyS0] enabled
[    1.782714] mmc-bcm2835 3f300000.mmc: mmc_debug:0 mmc_debug2:0
[    1.795785] mmc-bcm2835 3f300000.mmc: DMA channel allocated
[    1.811072] usb 1-1.1: new high-speed USB device number 3 using dwc_otg
[    1.861701] sdhost: log_buf @ ba513000 (fa513000)
[    1.910307] mmc1: queuing unknown CIS tuple 0x80 (2 bytes)
[    1.924665] mmc1: queuing unknown CIS tuple 0x80 (3 bytes)
[    1.938798] mmc1: queuing unknown CIS tuple 0x80 (3 bytes)
[    1.951358] mmc0: sdhost-bcm2835 loaded - DMA enabled (>1)
[    1.964091] usb 1-1.1: New USB device found, idVendor=0424, idProduct=2514
[    1.964877] of_cfs_init
[    1.964980] of_cfs_init: OK
[    1.987714] mmc1: queuing unknown CIS tuple 0x80 (7 bytes)
[    1.988018] random: fast init done
[    2.019847] usb 1-1.1: New USB device strings: Mfr=0, Product=0,
SerialNumber=0
[    2.034441] hub 1-1.1:1.0: USB hub found
[    2.045485] hub 1-1.1:1.0: 3 ports detected
[    2.057350] Waiting for root device /dev/mmcblk0p2...
[    2.071117] Under-voltage detected! (0x00050005)
[    2.088214] mmc1: new high speed SDIO card at address 0001
[    2.109458] mmc0: host does not support reading read-only switch,
assuming write-enable
[    2.128781] mmc0: new high speed SDHC card at address aaaa
[    2.141738] mmcblk0: mmc0:aaaa SL16G 14.8 GiB
[    2.154453]  mmcblk0: p1 p2
[    2.180396] EXT4-fs (mmcblk0p2): mounted filesystem without
journal. Opts: (null)
[    2.195296] VFS: Mounted root (ext4 filesystem) readonly on device 179:2.
[    2.211147] Freeing unused kernel memory: 1024K
[    2.299155] init: Console is alive
[    2.310021] init: - watchdog -
[    2.409403] dwc_otg_handle_wakeup_detected_intr lxstate = 2
[    2.442886] kmodloader: loading kernel modules from /etc/modules-boot.d/*
[    2.459750] kmodloader: done loading kernel modules from
/etc/modules-boot.d/*
[    2.482207] init: - preinit -
[    2.821084] usb 1-1.1.1: new high-speed USB device number 4 using dwc_otg
[    2.961444] usb 1-1.1.1: New USB device found, idVendor=0424, idProduct=7800
[    2.976069] usb 1-1.1.1: New USB device strings: Mfr=0, Product=0,
SerialNumber=0
[    2.992623] random: procd: uninitialized urandom read (4 bytes read)
[    3.124115] lan78xx 1-1.1.1:1.0 (unnamed net_device)
(uninitialized): No External EEPROM. Enabling LEDS
[    3.274075] lan78xx 1-1.1.1:1.0 (unnamed net_device)
(uninitialized): No External EEPROM. Setting MAC Speed
[    3.292714] libphy: lan78xx-mdiobus: probed
[    6.650060] mount_root: mounting /dev/root
[    6.705044] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
[    6.752164] urandom-seed: Seed file not found (/etc/urandom.seed)
[    6.785588] procd: - early -
[    6.796080] procd: - watchdog -
[    7.463783] procd: - watchdog -
[    7.474451] procd: - ubus -
[    7.491301] random: ubusd: uninitialized urandom read (4 bytes read)
[    7.535590] random: ubusd: uninitialized urandom read (4 bytes read)
[    7.549521] random: ubusd: uninitialized urandom read (4 bytes read)
[    7.563679] procd: - init -
[    7.678994] kmodloader: loading kernel modules from /etc/modules.d/*
[    7.709798] ip6_tables: (C) 2000-2006 Netfilter Core Team
[    7.729694] hidraw: raw HID events driver (C) Jiri Kosina
[    7.746095] bcm2835_alsa bcm2835_alsa: card created with 8 channels
[    7.771703] Loading modules backported from Linux version
v4.19-rc5-0-g6bf4ca7fbc85
[    7.786498] Backport generated by backports.git v4.19-rc5-1-0-g05571dcd
[    7.802000] ip_tables: (C) 2000-2006 Netfilter Core Team
[    7.819334] nf_conntrack version 0.5.0 (15360 buckets, 61440 max)
[    7.849828] usbcore: registered new interface driver usbhid
[    7.862806] usbhid: USB HID core driver
[    7.880020] xt_time: kernel timezone is -0000
[    7.906033] PPP generic driver version 2.4.2
[    7.918309] NET: Registered protocol family 24
[    7.940683] brcmfmac: brcmf_fw_alloc_request: using
brcm/brcmfmac43455-sdio for chip BCM4345/6
[    8.689456] brcmfmac mmc1:0001:1: Direct firmware load for
brcm/brcmfmac43455-sdio.raspberrypi,3-model-b-plus.txt failed with
error -2
[    8.709369] brcmfmac mmc1:0001:1: Falling back to user helper
[    8.733426] firmware
brcm!brcmfmac43455-sdio.raspberrypi,3-model-b-plus.txt:
firmware_loading_store: map pages failed
[    8.850421] brcmfmac: brcmf_fw_alloc_request: using
brcm/brcmfmac43455-sdio for chip BCM4345/6
[    8.878275] brcmfmac: brcmf_c_preinit_dcmds: Firmware: BCM4345/6
wl0: Mar  1 2015 07:29:38 version 7.45.18 (r538002) FWID 01-6a2c8ad4
[    8.936731] usbcore: registered new interface driver brcmfmac
[    8.952854] kmodloader: done loading kernel modules from /etc/modules.d/*
[   10.029253] urandom_read: 5 callbacks suppressed
[   10.029262] random: jshn: uninitialized urandom read (4 bytes read)
[   12.226742] lan78xx 1-1.1.1:1.0 eth0: kevent 4 may have been dropped
[   12.226870] 8021q: adding VLAN 0 to HW filter on device eth0
[   12.227896] br-lan: port 1(eth0) entered blocking state
[   12.227905] br-lan: port 1(eth0) entered disabled state
[   12.228187] device eth0 entered promiscuous mode
[   12.229339] IPv6: ADDRCONF(NETDEV_UP): br-lan: link is not ready
[   12.343069] br-lan: port 1(eth0) entered blocking state
[   12.356933] br-lan: port 1(eth0) entered forwarding state
[   12.373180] IPv6: ADDRCONF(NETDEV_CHANGE): br-lan: link becomes ready
/END dmesg ----------------------------------------------------------------------/

> Thanks,
> Stijn
>

_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel



More information about the openwrt-devel mailing list