I've got WiFi and Bluetooth working:
https://github.com/openwrt-es/openwrt/commits/brcm2708-rpi3-wifi
https://github.com/openwrt-es/openwrt/commits/brcm2708-rpi3-bt
WiFi is working after latest brcmfmac patches backported by Rafał, with
some issues like the following:
brcmfmac: brcmf_proto_bcdc_hdrpull: wlan0: non-BCDC packet received,
flags 0x44
BT is working but only for baud rates <= 115200. I'm still investigating
why.
In order to setup the bluetooth, the following bluez patches are needed:
https://github.com/openwrt/packages/pull/2464
By the way, I won't be submitting any WiFi/BT patches until anyone from
either the Raspberry foundation or Broadcom clarifies the license of the
firmware files.
https://github.com/raspberrypi/linux/issues/1325
Regards,
Álvaro.
El 04/03/2016 a las 21:06, Álvaro Fernández Rojas escribió:
These patches add basic Raspberry Pi 3 support.
Bootlog:
https://gist.github.com/Noltari/92f51259c9d18506192b#file-bcm2710_rpi3-log
Known issues:
1) No ARMv8 64 bit support.
More info:
https://github.com/raspberrypi/firmware/issues/550
2) UART0 is connected to BCM43430 (Bluetooth), which means that console relies
on UART1.
UART1 clock depends on pll_freq, which changes depending on the core
frequency.
In order to get a proper console through GPIOs 14 & 15, you should force a
fixed frequency instead of the default dynamic one.
You can do that by either setting core_freq=250 on config.txt or
force_turbo=1 (this last option will run your rpi at maximum frequency so be
careful).
The framebuffer console (HDMI) isn't affected so you can use that one with an
external keyboard and USB HID package.
More info:
https://github.com/raspberrypi/firmware/issues/553
https://github.com/RPi-Distro/repo/issues/22
3) No WiFi support.
brcmfmac43430-sdio.bin / brcmfmac43430-sdio.txt firmware files aren't
available on linux-firmware for now.
Downloading those files from https://github.com/RPi-Distro/firmware-nonfree
and trying to enable BCM43430 SDIO WiFi causes the following kernel exception:
https://gist.github.com/Noltari/92f51259c9d18506192b#file-bcm2710_rpi3_brcmfmac-log
4) No Bluetooth support.
Álvaro Fernández Rojas (4):
include: add Cortex-A53 CPU_TYPE
brcm2708-gpu-fw: update to latest version
brcm2708: update linux 4.4 patches to latest version
brcm2708: add Raspberry Pi 3 support
include/target.mk | 1 +
package/kernel/brcm2708-gpu-fw/Makefile | 8 +-
target/linux/brcm2708/Makefile | 8 +-
.../brcm2708/base-files/etc/board.d/02_network | 5 +-
target/linux/brcm2708/base-files/etc/diag.sh | 7 +-
target/linux/brcm2708/base-files/etc/inittab | 2 +-
target/linux/brcm2708/base-files/lib/brcm2708.sh | 5 +-
.../lib/preinit/05_set_preinit_iface_brcm2708 | 7 +-
target/linux/brcm2708/bcm2708/config-4.4 | 7 +-
target/linux/brcm2708/bcm2709/config-4.4 | 7 +-
target/linux/brcm2708/bcm2710/config-4.4 | 389 ++++++++++++
.../brcm2708/bcm2710/profiles/RaspberryPi3.mk | 14 +
target/linux/brcm2708/bcm2710/target.mk | 12 +
target/linux/brcm2708/image/Makefile | 12 +-
target/linux/brcm2708/image/cmdline.txt | 2 +-
target/linux/brcm2708/modules.mk | 19 +
...0001-smsx95xx-fix-crimes-against-truesize.patch | 4 +-
...02-smsc95xx-Disable-turbo-mode-by-default.patch | 4 +-
...around-for-issue-where-dirty-page-count-g.patch | 4 +-
.../0004-BCM2835_DT-Fix-I2S-register-map.patch | 4 +-
...-Prevent-spurious-interrupts-and-trap-the.patch | 4 +-
.../0006-irqchip-bcm2835-Add-FIQ-support.patch | 4 +-
...-irqchip-irq-bcm2835-Add-2836-FIQ-support.patch | 4 +-
...erial-8250-Don-t-crash-when-nr_uarts-is-0.patch | 4 +-
...2835-Set-base-to-0-give-expected-gpio-num.patch | 4 +-
...2835-Fix-interrupt-handling-for-GPIOs-28-.patch | 4 +-
...2835-Only-request-the-interrupts-listed-i.patch | 4 +-
...cm2835-Support-pin-groups-other-than-7-11.patch | 4 +-
...RM-bcm2835-Set-Serial-number-and-Revision.patch | 4 +-
...-get-base-address-for-DMA-from-devicetree.patch | 4 +-
...-add-24bit-support-update-bclk_ratio-to-m.patch | 4 +-
...s-setup-clock-only-if-CPU-is-clock-master.patch | 4 +-
...835-i2s-Eliminate-debugfs-directory-error.patch | 4 +-
.../0018-bcm2835-i2s-Register-PCM-device.patch | 4 +-
...i2s-Enable-MMAP-support-via-a-DT-property.patch | 4 +-
...0-dmaengine-bcm2835-Add-slave-dma-support.patch | 4 +-
...ine-bcm2835-set-residue_granularity-field.patch | 4 +-
...cm2835-Load-driver-early-and-support-lega.patch | 4 +-
...-dma-Fix-dreq-not-set-for-slave-transfers.patch | 4 +-
...-Limit-cyclic-transfers-on-lite-channels-.patch | 4 +-
.../0025-bcm2835-Add-support-for-uart1.patch | 4 +-
...irmware-bcm2835-Add-missing-property-tags.patch | 4 +-
.../0027-Main-bcm2708-bcm2709-linux-port.patch | 4 +-
...-squash-include-ARCH_BCM2708-ARCH_BCM2709.patch | 4 +-
.../patches-4.4/0029-Add-dwc_otg-driver.patch | 4 +-
.../0030-bcm2708-framebuffer-driver.patch | 4 +-
.../0031-dmaengine-Add-support-for-BCM2708.patch | 4 +-
...-parameter-to-mmc-multi_io_quirk-callback.patch | 4 +-
.../0033-MMC-added-alternative-MMC-driver.patch | 4 +-
...835-sdhost-driver-and-an-overlay-to-enabl.patch | 4 +-
...ma-Add-vc_cma-driver-to-enable-use-of-CMA.patch | 4 +-
.../0036-bcm2708-alsa-sound-driver.patch | 4 +-
.../patches-4.4/0037-bcm2708-vchiq-driver.patch | 4 +-
.../0038-vc_mem-Add-vc_mem-driver.patch | 4 +-
...deoCore-shared-memory-service-for-BCM2835.patch | 4 +-
...omem-device-for-rootless-user-GPIO-access.patch | 4 +-
.../brcm2708/patches-4.4/0041-Add-SMI-driver.patch | 4 +-
.../patches-4.4/0042-Add-SMI-NAND-driver.patch | 4 +-
...3-lirc-added-support-for-RaspberryPi-GPIO.patch | 4 +-
.../patches-4.4/0044-Add-cpufreq-driver.patch | 4 +-
...-thermal-driver-for-reporting-core-temper.patch | 4 +-
.../0046-Add-Chris-Boot-s-i2c-driver.patch | 4 +-
.../0047-char-broadcom-Add-vcio-module.patch | 4 +-
...048-firmware-bcm2835-Support-ARCH_BCM270x.patch | 4 +-
.../0049-bcm2835-add-v4l2-camera-device.patch | 4 +-
...-mkknlimg-and-knlinfo-scripts-from-tools-.patch | 4 +-
...port-for-the-CONFIG_CMDLINE_EXTEND-option.patch | 4 +-
...0052-BCM2708-Add-core-Device-Tree-support.patch | 4 +-
...3-bcm2835-Match-with-BCM2708-Device-Trees.patch | 4 +-
.../0054-fbdev-add-FBIOCOPYAREA-ioctl.patch | 4 +-
...up-console-framebuffer-imageblit-function.patch | 4 +-
...9-Allow-mac-address-to-be-set-in-smsc95xx.patch | 4 +-
...e-realtime-clock-1-wire-chip-DS1307-and-1.patch | 4 +-
...061-Added-Device-IDs-for-August-DVB-T-205.patch | 4 +-
...le-CONFIG_MEMCG-but-leave-it-disabled-due.patch | 4 +-
.../0063-ASoC-Add-support-for-PCM5102A-codec.patch | 4 +-
.../0064-ASoC-Add-support-for-HifiBerry-DAC.patch | 4 +-
.../0065-ASoC-Add-support-for-Rpi-DAC.patch | 4 +-
...-Implement-MCLK-configuration-options-add.patch | 4 +-
...d-support-for-HiFiBerry-Digi.-Driver-is-b.patch | 4 +-
...-Set-idle_bias_off-to-false-Idle-bias-has.patch | 4 +-
...audIO-Sound-Card-support-for-Raspberry-Pi.patch | 4 +-
...ce-default-mouse-polling-interval-to-60Hz.patch | 4 +-
.../0071-Added-support-for-HiFiBerry-DAC.patch | 4 +-
...r-for-HiFiBerry-Amp-amplifier-add-on-boar.patch | 4 +-
...ate-ds1307-driver-for-device-tree-support.patch | 4 +-
...Add-pwr_led-and-the-required-input-trigge.patch | 4 +-
...d-device-tree-compatible-string-and-an-ov.patch | 4 +-
.../0076-Add-driver-for-rpi-proto.patch | 4 +-
.../0077-config-Add-default-configs.patch | 4 +-
.../0078-bcm2835-bcm2835_defconfig.patch | 4 +-
...Add-touchscreen-driver-for-pi-LCD-display.patch | 4 +-
...opy_to_user-and-__copy_from_user-performa.patch | 4 +-
...poweroff-Allow-it-to-work-on-Raspberry-Pi.patch | 4 +-
...spidev-compatible-string-to-silence-warni.patch | 4 +-
.../0083-scripts-dtc-Add-overlay-support.patch | 4 +-
...fd-Add-Raspberry-Pi-Sense-HAT-core-driver.patch | 4 +-
.../patches-4.4/0085-RaspiDAC3-support.patch | 4 +-
...86-tpa6130a2-Add-headphone-switch-control.patch | 4 +-
.../0087-irq-bcm2835-Fix-building-with-2708.patch | 4 +-
..._display-add-backlight-driver-and-overlay.patch | 4 +-
...89-bcm2835-dma-Fix-up-convert-to-DMA-pool.patch | 4 +-
...ti-platform-support-for-mkknlimg-and-knli.patch | 4 +-
...-suport-for-3D-rendering-using-the-V3D-en.patch | 4 +-
.../0092-drm-vc4-Force-HDMI-to-connected.patch | 4 +-
.../0093-drm-vc4-bo-cache-locking-fixes.patch | 4 +-
.../0094-drm-vc4-bo-cache-locking-cleanup.patch | 4 +-
...vc4-Use-job_lock-to-protect-seqno_cb_list.patch | 4 +-
...c4-Drop-struct_mutex-around-CL-validation.patch | 4 +-
...c4-Drop-struct_mutex-around-CL-validation.patch | 4 +-
...dd-support-for-more-display-plane-formats.patch | 4 +-
...m-vc4-No-need-to-stop-the-stopped-threads.patch | 4 +-
...ove-extra-barrier-s-aroudn-CTnCA-CTnEA-se.patch | 4 +-
...rm-vc4-Fix-a-typo-in-a-V3D-debug-register.patch | 4 +-
...ble-VC4-modules-and-increase-CMA-size-wit.patch | 4 +-
.../brcm2708/patches-4.4/0103-squash-fixups.patch | 4 +-
...missing-vc4-kms-v3d-overlay.dtb-to-makefi.patch | 4 +-
...-Also-build-the-driver-for-downstream-ker.patch | 4 +-
...dts-Added-overlay-for-gpio_ir_recv-driver.patch | 4 +-
...pio-module-and-add-a-device-tree-overlay-.patch | 4 +-
.../0108-New-overlay-for-PiScreen2r.patch | 4 +-
...verlay-for-Adafruit-PiTFT-2.8-capacitive-.patch | 4 +-
...110-Add-support-for-the-HiFiBerry-DAC-Pro.patch | 4 +-
.../0111-BCM270X_DT-Add-at86rf233-overlay.patch | 4 +-
.../0112-mm-Remove-the-PFN-busy-warning.patch | 4 +-
...optional-field-in-the-driver-struct-for-G.patch | 4 +-
...-an-interface-for-capturing-the-GPU-state.patch | 4 +-
...ate-a-bunch-of-code-to-match-upstream-sub.patch | 4 +-
...-driver-s-gem_object_free-function-from-C.patch | 4 +-
...17-drm-vc4-Add-support-for-MSAA-rendering.patch | 4 +-
...ew-more-non-functional-changes-to-sync-to.patch | 4 +-
...-hpd-gpios-for-HDMI-GPIO-like-what-landed.patch | 4 +-
...chronize-validation-code-for-v2-submissio.patch | 4 +-
...use-mmc_debug-if-CONFIG_MMC_BCM2835-is-no.patch | 4 +-
...k-timeout-fix-modprobe-baudrate-parameter.patch | 4 +-
...-bcm270x_dt-Add-dwc2-and-dwc-otg-overlays.patch | 4 +-
...Add-the-sdtweak-overlay-for-tuning-sdhost.patch | 4 +-
...-Don-t-override-bus-width-capabilities-fr.patch | 4 +-
...0126-SDIO-overlay-add-bus_width-parameter.patch | 4 +-
...70X_DT-random-HWRNG-dtparam-default-is-on.patch | 4 +-
...end-allowed-range-of-channels-and-sampler.patch | 4 +-
...cm2835-restrict-channels-rate-to-8-960000.patch | 4 +-
.../0130-rpi-update-vc_vchi_audioserv_defs.h.patch | 4 +-
.../0131-bcm2835-implement-channel-map-API.patch | 4 +-
...835-access-controls-under-the-audio-mutex.patch | 4 +-
...ays-use-2-4-8-channels-for-multichannel-l.patch | 4 +-
...y-allow-stereo-if-analogue-jack-is-select.patch | 4 +-
.../0135-bcm2835-interpolate-audio-delay.patch | 4 +-
...ost-Add-workaround-for-odd-behaviour-on-s.patch | 4 +-
...37-bcm2835-sdhost-Add-debug_flags-dtparam.patch | 4 +-
...Add-sdio_overclock-parameter-to-sdio-over.patch | 4 +-
...add-support-for-the-DT-property-wakeup-so.patch | 4 +-
.../0140-dt-overlay-add-wittypi-overlay.dts.patch | 4 +-
..._DT-Disable-DMA-for-bcm2835-sdhost-on-Pi2.patch | 4 +-
...cm2708-Don-t-change-module-baudrate-param.patch | 4 +-
...-24dB-digital-gain-to-be-applied-when-usi.patch | 4 +-
...2x-Digital-gain-to-0dB-by-default-with-Hi.patch | 4 +-
...M270X_DT-Adjust-overlay-README-formatting.patch | 4 +-
...ay-README-Restore-spaces-deleted-in-error.patch | 4 +-
...2835-Fix-cut-and-paste-error-in-pull-pars.patch | 4 +-
...70X_DT-Disable-DMA-for-bcm2835-sdhost-on-.patch | 4 +-
.../0149-bcm2835-sdhost-Major-revision.patch | 4 +-
...270X_DT-Add-dtparams-for-the-SD-interface.patch | 4 +-
...m-xfer-length-when-buffer-larger-than-all.patch | 4 +-
...ost-Restore-ATOMIC-flag-to-PIO-sg-mapping.patch | 4 +-
...blk_pos-parameter-to-mmc-multi_io_quirk-c.patch | 4 +-
...c95xx-driver-to-check-for-a-valid-MAC-add.patch | 4 +-
...dcw_otg-Make-trimming-messages-less-noisy.patch | 4 +-
...BCM270X_DT-at86rf233-overlay-drop-to-3MHz.patch | 4 +-
...m2835-sdhost-Downgrade-log-message-status.patch | 22 +
.../0158-config-Enable-HCI-over-UARTs.patch | 33 +
...59-hci_h5-Don-t-send-conf_req-when-ACTIVE.patch | 23 +
..._pl011-Don-t-use-DT-aliases-for-numbering.patch | 29 +
...-Add-bindings-for-the-auxiliary-periphera.patch | 72 +++
...-Add-a-driver-for-the-auxiliary-periphera.patch | 118 ++++
.../0163-Aux-SPI-1-2-implementation.patch | 700 +++++++++++++++++++++
...d-missing-.owner-fields-in-sound-card-dri.patch | 108 ++++
...d-option-to-disable-the-crimes-against-tr.patch | 44 ++
...0166-bcm2835-virtgpio-Virtual-GPIO-driver.patch | 244 +++++++
.../0167-BCM270X_DT-Add-Pi3-support.patch | 305 +++++++++
...FIXUP-BCM270X_DT-Update-to-latest-Pi3-DTS.patch | 82 +++
...169-DT-Add-overlays-to-configure-I2C-pins.patch | 134 ++++
...era-fix-a-bug-in-computation-of-frame-tim.patch | 23 +
183 files changed, 2716 insertions(+), 338 deletions(-)
create mode 100644 target/linux/brcm2708/bcm2710/config-4.4
create mode 100644 target/linux/brcm2708/bcm2710/profiles/RaspberryPi3.mk
create mode 100644 target/linux/brcm2708/bcm2710/target.mk
mode change 100644 => 100755
target/linux/brcm2708/patches-4.4/0051-fdt-Add-support-for-the-CONFIG_CMDLINE_EXTEND-option.patch
create mode 100644
target/linux/brcm2708/patches-4.4/0157-bcm2835-sdhost-Downgrade-log-message-status.patch
create mode 100644
target/linux/brcm2708/patches-4.4/0158-config-Enable-HCI-over-UARTs.patch
create mode 100644
target/linux/brcm2708/patches-4.4/0159-hci_h5-Don-t-send-conf_req-when-ACTIVE.patch
create mode 100644
target/linux/brcm2708/patches-4.4/0160-amba_pl011-Don-t-use-DT-aliases-for-numbering.patch
create mode 100644
target/linux/brcm2708/patches-4.4/0161-clk-bcm2835-Add-bindings-for-the-auxiliary-periphera.patch
create mode 100644
target/linux/brcm2708/patches-4.4/0162-clk-bcm2835-Add-a-driver-for-the-auxiliary-periphera.patch
create mode 100644
target/linux/brcm2708/patches-4.4/0163-Aux-SPI-1-2-implementation.patch
create mode 100644
target/linux/brcm2708/patches-4.4/0164-ASoC-bcm-add-missing-.owner-fields-in-sound-card-dri.patch
create mode 100644
target/linux/brcm2708/patches-4.4/0165-smsx95xx-Add-option-to-disable-the-crimes-against-tr.patch
create mode 100644
target/linux/brcm2708/patches-4.4/0166-bcm2835-virtgpio-Virtual-GPIO-driver.patch
create mode 100644
target/linux/brcm2708/patches-4.4/0167-BCM270X_DT-Add-Pi3-support.patch
create mode 100644
target/linux/brcm2708/patches-4.4/0168-FIXUP-BCM270X_DT-Update-to-latest-Pi3-DTS.patch
create mode 100644
target/linux/brcm2708/patches-4.4/0169-DT-Add-overlays-to-configure-I2C-pins.patch
create mode 100644
target/linux/brcm2708/patches-4.4/0170-bcm2835-camera-fix-a-bug-in-computation-of-frame-tim.patch
_______________________________________________
openwrt-devel mailing list
[email protected]
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel