Thanks to visit codestin.com
Credit goes to github.com

Skip to content
Closed
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
1946 commits
Select commit Hold shift + click to select a range
4e28e08
usb: feed USB device information to the /dev/random driver
tytso Jul 4, 2012
322f326
net: feed /dev/random with the MAC address when registering a device
tytso Jul 5, 2012
060bc1d
random: use the arch-specific rng in xfer_secondary_pool
tytso Jul 5, 2012
7f5d526
random: add new get_random_bytes_arch() function
tytso Jul 5, 2012
648deda
rtc: wm831x: Feed the write counter into device_add_randomness()
broonie Jul 5, 2012
3da7754
mfd: wm831x: Feed the device UUID into device_add_randomness()
broonie Jul 5, 2012
842b98a
ASoC: wm8994: Ensure there are enough BCLKs for four channels
broonie Jun 22, 2012
c2da761
futex: Test for pi_mutex on fault in futex_wait_requeue_pi()
dvhart Jul 20, 2012
4ccf973
futex: Fix bug in WARN_ON for NULL q.pi_state
dvhart Jul 20, 2012
4344b85
futex: Forbid uaddr == uaddr2 in futex_wait_requeue_pi()
dvhart Jul 20, 2012
efb6d7d
video/smscufx: fix line counting in fb_write
aholler Apr 20, 2012
2028a49
Input: synaptics - handle out of bounds values from the hardware
Jul 25, 2012
2c7b021
ALSA: hda - Fix invalid D3 of headphone DAC on VT202x codecs
tiwai Jul 25, 2012
67258e4
ALSA: mpu401: Fix missing initialization of irq field
tiwai Jul 23, 2012
60ed9e3
x86, nops: Missing break resulting in incorrect selection on Intel
Jul 25, 2012
f22027d
s390/mm: downgrade page table after fork of a 31 bit process
Jul 26, 2012
d0192ce
Redefine ATOMIC_INIT and ATOMIC64_INIT to drop the casts
aegl Jul 26, 2012
95dc400
dm thin: reduce endio_hook pool size
kergon Jul 27, 2012
46b4d87
dm thin: fix memory leak in process_prepared_mapping error paths
jthornber Jul 27, 2012
7499bd6
random: mix in architectural randomness in extract_buf()
Jul 28, 2012
7857816
asus-wmi: use ASUS_WMI_METHODID_DSTS2 as default DSTS ID.
Jun 20, 2012
e551857
virtio-blk: Use block layer provided spinlock
May 25, 2012
c929e9b
s390/mm: fix fault handling for page table walk case
heicarst Jul 27, 2012
1c88c58
nfs: skip commit in releasepage if we're freeing memory for fs-relate…
jtlayton Jul 23, 2012
898ece8
md/raid1: don't abort a resync on the first badblock.
neilbrown Jul 31, 2012
ffb709e
pcdp: use early_ioremap/early_iounmap to access pcdp table
steinbeck65 Jul 30, 2012
1b772a1
lib/vsprintf.c: kptr_restrict: fix pK-error in SysRq show-all-timers(Q)
Jul 30, 2012
58546c7
nilfs2: fix deadlock issue between chcp and thaw ioctls
konis Jul 30, 2012
baea163
SUNRPC: return negative value in case rpcbind client creation error
Jul 20, 2012
2bd8f38
ARM: 7466/1: disable interrupt before spinning endlessly
shawnguo2 Jul 13, 2012
c51cf24
ARM: 7467/1: mutex: use generic xchg-based implementation for ARMv6+
wildea01 Jul 13, 2012
fc257bc
ARM: 7476/1: vfp: only clear vfp state for current cpu in vfp_pm_suspend
colincross Jul 20, 2012
cdab6ee
ARM: 7477/1: vfp: Always save VFP state in vfp_pm_suspend on UP
colincross Jul 20, 2012
1b48195
ARM: 7478/1: errata: extend workaround for erratum #720789
wildea01 Jul 20, 2012
83358b9
ARM: Fix undefined instruction exception handling
Jul 30, 2012
0776e23
USB: echi-dbgp: increase the controller wait time to come out of halt.
Jul 30, 2012
2145a2c
ASoC: wm8962: Allow VMID time to fully ramp
broonie Jul 30, 2012
27c4b68
mm/page_alloc.c: remove pageblock_default_order()
akpm00 May 29, 2012
3927df7
mm: setup pageblock_order before it's used by sparsemem
Jul 31, 2012
5d7a606
mm: mmu_notifier: fix freed page still mapped in secondary MMU
Jul 31, 2012
6f72a41
mm: hugetlbfs: close race during teardown of hugetlbfs shared page ta…
Jul 31, 2012
768049e
ALSA: snd-usb: fix clock source validity index
zonque Aug 1, 2012
18fbe5a
ALSA: hda - Support dock on Lenovo Thinkpad T530 with ALC269VC
tiwai Aug 2, 2012
922c979
ore: Fix out-of-bounds access in _ios_obj()
Aug 1, 2012
56c5dc3
m68k: Make sys_atomic_cmpxchg_32 work on classic m68k
andreas-schwab Jul 27, 2012
38aa851
drm/i915: prefer wide & slow to fast & narrow in DP configs
jbarnes993 Jun 21, 2012
6cf299f
rt2x00: Add support for BUFFALO WLI-UC-GNM2 to rt2800usb.
doya Jun 14, 2012
caaf10b
drop_monitor: fix sleeping in invalid context warning
nhorman Apr 27, 2012
ea39e33
drop_monitor: Make updating data->skb smp safe
nhorman Apr 27, 2012
1b51d69
drop_monitor: prevent init path from scheduling on the wrong cpu
nhorman May 1, 2012
d4a6acb
drop_monitor: dont sleep in atomic context
edumazet Jun 4, 2012
882cd0e
pch_uart: Fix missing break for 16 byte fifo
Jul 2, 2012
0eaadc0
pch_uart: Fix rx error interrupt setting issue
Jul 6, 2012
dbf6df1
pch_uart: Fix parity setting issue
Jul 6, 2012
8524c78
Linux 3.2.27
bwhacks Aug 9, 2012
ec2ea6b
Add dwc_otg driver
popcornmix Jan 17, 2012
031ee3e
Main bcm2708 linux port
popcornmix Jan 17, 2012
7ff2699
bcm2708 watchdog driver
popcornmix Jan 17, 2012
c6f5353
bcm2708 framebuffer driver
popcornmix Jan 17, 2012
2669f2e
bcm2708 vchiq driver
popcornmix Jan 17, 2012
b102abd
Allow mac address to be set in smsc95xx
popcornmix Jan 17, 2012
2aa2155
Fix headers for vchiq/vcos to be GPLv2
Jan 20, 2012
92568cc
Fix some issues reported. Lower case module parameters for fb. Set bo…
Feb 1, 2012
637034a
Build anything reasonable as a module. Thanks to asb
Feb 1, 2012
a9d4e49
Add config option to enable L2 cache
Feb 12, 2012
b3c82c8
Fix bug where vchiq fails when L2 enabled
Feb 15, 2012
620c780
Add devtmpfs for archlinux, and emergency and debug config
Mar 7, 2012
4b46110
Fix 32bpp framebuffer by adding alpha bits
Mar 7, 2012
05dc310
Enable L2 cache is now the default. Invert sense of L2 flags
Mar 7, 2012
bcf011f
Allow 24bpp for framebuffer
popcornmix Mar 14, 2012
da305c7
Disable debug code in dwc_otg driver unless CONFIG_USB_DEBUG is set
popcornmix Mar 17, 2012
c6b198b
Enable high resolution timers
popcornmix Mar 17, 2012
5961574
Fix for mmc timeouts when erasing multiple blocks
popcornmix Mar 17, 2012
8a93b2a
Fix problem with dma that could corrupt sdcard, especially when L2 en…
Mar 20, 2012
f7f1991
Update to match latest vc side vchiq. Allows vchiq calls from kernel.
popcornmix Mar 26, 2012
e81b5a8
First pass at alsa sound driver. Some functionality, but also some un…
popcornmix Mar 26, 2012
2b4c39f
Cast to avoid warning
Mar 26, 2012
6496fce
Add new ioctl to match latest vc side code
Mar 26, 2012
6a0c53f
Enable sound kernel modules. Tidy formatting. Fix ctl dest setting
popcornmix Mar 28, 2012
0294940
Add missing header file update for vc_mem iocts
Mar 29, 2012
8816606
Remove most of the alsa debug messages
popcornmix Apr 3, 2012
c5d6cb6
add temporary workaround for fbset crashes
popcornmix Apr 12, 2012
369b60f
Fix harmless base/size typo
popcornmix Apr 16, 2012
2456b9f
Replace #if 1 sections by local configuration #defines (tidy)
Apr 16, 2012
7cb77d3
Don't send data block when emitting silence
popcornmix Apr 16, 2012
4fc04b9
Fix (hopefully) for DWC_MEMCPY kernel panics. Thanks to Naren Sankar …
popcornmix Apr 26, 2012
7487b3f
Build modules needed for USB booting into kernel
popcornmix Apr 26, 2012
0cc4514
Whitespace tidy. Thanks Roger
popcornmix Apr 26, 2012
06009f0
Update vchiq to match GPU version. Should still be compatible
popcornmix Apr 27, 2012
2c9450d
added support for TT in the USB driver. Thanks Naren
Apr 30, 2012
c86a03f
Swap Red and Blue over in 32bpp framebuffer mode
popcornmix May 2, 2012
3352a69
Update emergency config to match latest debug one
popcornmix May 6, 2012
f8c99b5
net: usb: smsc95xx: fix mtu
fillods Apr 20, 2012
0c184a6
Use dwc_alloc_atomic. Thanks bootc
popcornmix May 8, 2012
e9382f7
possible fix for sdcard missing status. Thank naren
popcornmix May 8, 2012
dc0b877
Fix BUG() in bcm2708_fb_set_par doesn't work if the console is curren…
popcornmix May 8, 2012
4b0ecd9
Fix for DWC OTG HCD URB Dequeue has NULL URB panic. Thanks Naren
popcornmix May 15, 2012
b4f35d9
Fix for bug in mbox_read. Thanks lp0
popcornmix May 16, 2012
bd39679
Add __VCCOREVER__ to makefile
popcornmix May 16, 2012
45dced6
Change PHYS_OFFSET to PLAT_PHYS_OFFSET
popcornmix May 17, 2012
2d05297
sdcard patch improvements from naren
popcornmix May 17, 2012
21e287c
Invert sense of sdcard access trigger (OK LED), so it is on when acce…
popcornmix May 17, 2012
06cd091
Added power off message to allow kexec to work. Thanks lp0
popcornmix May 26, 2012
b7d47f6
remove unwanted file
popcornmix May 27, 2012
cb17d60
Enable PREEMPT and SCHED_AUTOGROUP
popcornmix May 28, 2012
025a245
Added support for USB webcams
popcornmix May 30, 2012
9c7a534
Enable ipv6 due to popular demand
popcornmix May 30, 2012
6902013
Fix regression in debug kernel config options
popcornmix May 31, 2012
999b9c7
bcm2835-ctl: fix alsamixer control.
Arne-F Jun 6, 2012
eec485b
bcm2835-ctl: limit maximal volume to 4db.
Arne-F Jun 6, 2012
0d39056
Add iptables and devtmpfs_mount to non-cutdown config. This will beco…
popcornmix Jun 10, 2012
48b347a
mmc: use really long write timeout to deal with crappy cards
Mar 12, 2012
8390fb8
sdhci-bcm2708: speed up DMA sync
grigorig Jun 4, 2012
6ab6d02
sdhci-bcm2708: remove custom clock handling
grigorig Jun 11, 2012
8f82daa
sdhci-bcm2708: add additional quirks
grigorig Jun 11, 2012
d7156c5
sdhci-bcm2708: add allow_highspeed parameter
grigorig Jun 11, 2012
70b125d
sdhci-bcm2708: assume 50 MHz eMMC clock
grigorig Jun 11, 2012
84042ac
Allow emmc clock to be specified as command line parameter
popcornmix Jun 16, 2012
d7afba1
sdhci-bcm2708: raise DMA sync timeout
popcornmix Jun 16, 2012
d34d49e
Fix bool/int error
popcornmix Jun 16, 2012
63aa167
Fix bool/int error, part 2
popcornmix Jun 16, 2012
c5592fc
More config options for iptables, device mapper, PPP_MPPE
popcornmix Jun 16, 2012
fe2e727
Explicitly set usb host channels to 8, as in the spec
popcornmix Jun 16, 2012
02b4b93
Add hfs/hfsplus modules
popcornmix Jun 17, 2012
6dac22f
Remove silence method, and use atomic flags for kmalloc
popcornmix Jun 21, 2012
2415c98
Fix unintended line swap that cause cause memory leak in USB driver
popcornmix Jun 22, 2012
f1da243
Use ndelay rather than udelay. Thanks lb
popcornmix Jun 22, 2012
8f32eb6
Add NFSD. Add some dvb options. Add CONFIG_LOCALVERSION for cutdown
popcornmix Jun 22, 2012
8544300
Fixed issue with some keyboards giving too much data
popcornmix Jun 26, 2012
973ebad
Add 802.1q vlan module
popcornmix Jun 30, 2012
2f3523e
Add interrupt support to gpio driver. Thanks Mrkva
popcornmix Jun 30, 2012
887af3c
Add a pm_power_off function that resets us, and indicates to bootcode…
popcornmix Jun 30, 2012
8825835
Store palette info where GPU can see it, so 8bpp modes can work. Requ…
popcornmix Jul 1, 2012
56afa5a
Avoid blanking console when not in palettised mode
popcornmix Jul 2, 2012
13d7000
Add mechanism to reduce the number of SOF interrupts in dwc_otg USB d…
popcornmix Jul 6, 2012
105858e
Updating dwc_otg driver to fix issue releasing pcm stream see: https:…
bryankemp Jul 7, 2012
269b48f
Backport of Chris Boot's i2c and spi drivers.
Jul 8, 2012
6ba3db8
forgotten files....
Jul 8, 2012
d32ab7b
Enable I2C and SPI modules in full config
popcornmix Jul 9, 2012
4c19879
Possible fix for failure to boot with compressed kernels
popcornmix Jul 9, 2012
6192305
Another try at fixing compressed kernel booting
popcornmix Jul 10, 2012
f9b5246
Add missing UART0_CLOCK from last commit
popcornmix Jul 11, 2012
b3df416
Change to add SCSI tape support as loadable modules to kernel config …
Jul 10, 2012
005ab72
Add temporary fix for hang when quitting X
popcornmix Jul 13, 2012
56c4490
Better fix for quitting X hang. Interrupted mailbox reads are not som…
popcornmix Jul 14, 2012
0bf2669
Add sync_after_dma module parameter
popcornmix Jul 16, 2012
b7f136e
Add SPI_SPI_DEV module
popcornmix Jul 19, 2012
e76b20a
Fix var.width/var.height. They actually mean display size. See #65
popcornmix Jul 24, 2012
44987f5
The TIMER_PERIOD should be calculated using the timer interrupt frequ…
ian-cim Jul 25, 2012
1ad0baa
update bcmrpi_defconfig with various user requests
asb Jul 25, 2012
622a46f
Possible fix for USB packets going missing. Thank gsh
popcornmix Jul 27, 2012
f193e28
Revert "Possible fix for USB packets going missing. Thank gsh"
popcornmix Jul 27, 2012
93afe72
dwc_common_port: remove unused cruft with onerous dependencies
bootc May 7, 2012
5f77a99
arm: remove divdi3, it's not necessary at all
bootc May 7, 2012
2674477
Remove some patch backup files
bootc May 7, 2012
ac15023
mach-bcm2708: fix mach/debug-macro.S so that early printk works
bootc May 7, 2012
89816b2
sound/arm/bcm2835.c: add linux/module.h include
bootc May 8, 2012
7a681f9
vcos: add linux/kernel.h include
bootc May 8, 2012
11fd94c
bcm2708: update for 3.2 kernel
bootc May 8, 2012
1574e95
bcm2708: use a constant SC_MULT / SC_SHIFT
bootc Jul 15, 2012
04e71eb
Sync with bootc's file
Jul 31, 2012
3a47543
sdhci-bcm2708: use extension FIFO to buffer DMA transfers
grigorig Jun 20, 2012
31c350f
sdhci-bcm2708: use multiblock-type transfers for single blocks
grigorig Jul 31, 2012
147779e
Add module parameter for missing_status quirk. sdhci-bcm2708.missing_…
popcornmix Aug 1, 2012
adebc4f
Some fixed for ALSA. Mute and volume changing should be improved
popcornmix Aug 7, 2012
2c671b9
Fix spinlock recursion in sdhci-bcm2708.c
ddv2005 Aug 5, 2012
4cdeb7b
Revert "Add mechanism to reduce the number of SOF interrupts in dwc_o…
popcornmix Aug 10, 2012
7880df4
Enable CONFIG_CRYPTO_XTS
popcornmix Aug 13, 2012
f599001
Update Synopsys USB OTG driver to v2.94a and disable CRYPTOLIB
ddv2005 Aug 15, 2012
5cc98c1
Merged in microframe scheduler, currently disabled. Enable with dwc_o…
popcornmix Aug 19, 2012
0872b20
Make microframe schedule patch a little closer to denx version. Remov…
popcornmix Aug 19, 2012
d6911d6
Remove remove documentation from the source tree
popcornmix Aug 19, 2012
d52d21b
Fix for broken GPIO with 3.2 kernel
popcornmix Aug 19, 2012
e5c8bb0
Revert "Disable IRQs in dwc_otg_hcd_qh_free" because DWC_DMA_FREE sho…
ddv2005 Aug 20, 2012
f7da120
Merge pull request #89 from ddv2005/rpi-3.2.27
popcornmix Aug 20, 2012
d47734b
Regenerate defconfigs for udpated kernel verision
popcornmix Aug 21, 2012
cbc60c7
Another fix for 10 second hang on closing sound driver
popcornmix Aug 21, 2012
4a0a556
amba-pl011: Don't send a character during startup
nomis Jun 9, 2012
b1eebb4
Revert "Regenerate defconfigs for udpated kernel verision"
popcornmix Aug 21, 2012
ddebe4d
Regenerate defconfigs for updated kernel verision, try 2
popcornmix Aug 21, 2012
e6b8622
Read memory size for vc_mem through mailbox property channel
popcornmix Aug 21, 2012
2b03910
Revert "amba-pl011: Don't send a character during startup"
popcornmix Aug 21, 2012
091073b
Update to dwc_otg 3.00. Seems to be a very minor update (mostly addin…
popcornmix Aug 22, 2012
a915a4f
enabling the realtime clock 1-wire chip DS1307 and 1-wire on GPIO4 (a…
Frank-Buss Aug 23, 2012
2663f76
Merge pull request #92 from FrankBuss/rpi-3.2.27
popcornmix Aug 23, 2012
5412f28
Switch of tracing options in kernel. Costs 20% in iperf speed, and 10…
popcornmix Aug 24, 2012
afe58ac
Turn on microframe_schedule by default. Can still be disabled on comm…
popcornmix Aug 24, 2012
e886b45
Add low-latency mode to sdcard driver. Enable with sdhci-bcm2708.enab…
popcornmix Aug 28, 2012
307d9fb
Fix build for non-preempt case. Fix warning
popcornmix Aug 28, 2012
c1e6924
Add config options to allow iotop to run
popcornmix Aug 29, 2012
46d1486
Fix for vmalloc failure with modprobe and cutdown kernel
popcornmix Aug 29, 2012
7042895
Enable low latency mode by default in sdcard driver. Can be disabled …
popcornmix Aug 31, 2012
1259e0c
Add FIQ patch to dwc_otg driver. Enable with dwc_otg.fiq_fix_enable=1…
popcornmix Aug 31, 2012
906508b
Fix typo
popcornmix Aug 31, 2012
1625539
Add non-mainline source for rtl8188cu wireless driver as this is wide…
popcornmix Sep 3, 2012
78f82bc
Add verious user config requests.
popcornmix Sep 3, 2012
202a779
Don't believe KDIR is required when building as part of kernel
popcornmix Sep 8, 2012
55549f3
Avoid dynamic memory allocation for channel lock in USB driver. Thank…
popcornmix Sep 8, 2012
adae199
Add cpufreq driver
popcornmix Sep 9, 2012
fe1a4d0
Tidy up debug messages
popcornmix Sep 9, 2012
87d5bc1
Fix for KALLSYMS_EXTRA_PASS requirement. Thanks asb for finding this.
popcornmix Sep 10, 2012
c8edb23
Enable fiq fix by default. Add NAK holdoff scheme. Enabled by default…
popcornmix Sep 13, 2012
e33263e
Added hwmon/thermal driver for reporting core temperature. Thanks Dorian
popcornmix Sep 13, 2012
ce4ab62
Add config options for thermal sensor, L2TP, RT2800USB_UNKNOWN, and v…
popcornmix Sep 14, 2012
d8a00ed
Remove some unnecessary dmesg output.
popcornmix Sep 17, 2012
807223a
Switch to powersave governor. We'll enable ondemand in the distribution
popcornmix Sep 17, 2012
0875260
Enable multiple ALSA channels
popcornmix Sep 20, 2012
2be55e6
Remove vcos abstraction layer from ALSA driver. Thanks Dorian
popcornmix Sep 20, 2012
965b922
Fix Kernel OOPS in SDHCI on boot with the llm patch. Thanks ddv2005
popcornmix Sep 22, 2012
c14ddd0
Use system timer for udelay, so unaffected by cpufreq
popcornmix Sep 24, 2012
9245b4c
Move __delay function into assembly to get accurate BogoMips
popcornmix Sep 26, 2012
358395e
set i2c speed via module-parameter or menuconfig. Thanks FrankBoesing
popcornmix Oct 3, 2012
118e2d3
Allow the number of cycles delay between sdcard peripheral writes to …
popcornmix Oct 3, 2012
2843e37
Fix vc-mem by using module parameters
popcornmix Oct 5, 2012
eb0c560
Move to version 5 of VCHIQ. Note: this requires a corresponding start…
popcornmix Oct 5, 2012
a542809
Add in missed vchiq files
popcornmix Oct 5, 2012
63bbe8a
Make vchiq enabled by default. Tidy Kconfig file.
popcornmix Oct 5, 2012
22cb6e2
Support dummy vc-mem ioctl used by vcdbg
popcornmix Oct 5, 2012
8bccc7a
Remove BUG() call from vchiq that is trigger when alsa is killed
popcornmix Oct 6, 2012
7aa8d82
fix build with CONFIG_BCM2708_VCHIQ is disabled
sraue Oct 8, 2012
f9506a1
Merge pull request #134 from OpenELEC/build_fixes
popcornmix Oct 9, 2012
3cb5f1d
Revert "fix build with CONFIG_BCM2708_VCHIQ is disabled"
popcornmix Oct 15, 2012
d14d371
Revert "Remove BUG() call from vchiq that is trigger when alsa is kil…
popcornmix Oct 15, 2012
fb241d0
Revert "Support dummy vc-mem ioctl used by vcdbg"
popcornmix Oct 15, 2012
6a84a91
Revert "Make vchiq enabled by default. Tidy Kconfig file."
popcornmix Oct 15, 2012
91f1cdc
Revert "Add in missed vchiq files"
popcornmix Oct 15, 2012
10182a3
Revert "Move to version 5 of VCHIQ. Note: this requires a correspondi…
popcornmix Oct 15, 2012
42a864b
Make sure we wait for the reset to finish
Nov 4, 2012
375405d
Merge branch 'rpi-3.2.27' of https://github.com/raspberrypi/linux int…
Nov 4, 2012
fc155d9
Add missing pctv452e DVB module
popcornmix Nov 4, 2012
df41b42
spi/spi-bcm2708: respect per-transfer SPI clock speed_hz value
kamalmostafa Oct 22, 2012
91abd87
lirc: added support for RaspberryPi GPIO
Jun 16, 2012
036c94e
smsc95xx: support ethtool get_regs
Jul 9, 2012
ac7c929
smsc95xx: signedness bug in get_regs()
Jul 10, 2012
00b8a33
smsc95xx: sleep before read for lengthy operations
steveglen Sep 28, 2012
a01b0af
smsc95xx: remove unnecessary variables
steveglen Sep 28, 2012
15c02e2
smsc95xx: check return code from control messages
steveglen Sep 28, 2012
a6555c2
smsc95xx: fix resume when usb device is reset
steveglen Sep 28, 2012
efdb0b0
smsc95xx: enable power saving mode during system suspend
steveglen Sep 28, 2012
70b722a
smsc95xx: add wol magic packet support
steveglen Sep 28, 2012
59b43cd
smsc95xx: fix tx checksum offload for big endian
steveglen Nov 2, 2012
919a8fe
Merge pull request #155 from steveglen/rpi-3.2.27
popcornmix Nov 7, 2012
1aa222e
Merge pull request #152 from ar0n/rpi-3.2.27
popcornmix Nov 8, 2012
6f2064c
Enable building of lirc-rpi
popcornmix Nov 8, 2012
22e8df6
Lazy CRC quirk: Implemented retrying mechanisms for SD SSR and SCR, d…
Nov 19, 2012
71f3b54
Add Simon Hall's dma helper module, useful in future for X acceleration
popcornmix Nov 19, 2012
4b61ead
Enable DMA helper module and iSCSI modules
popcornmix Nov 19, 2012
00c4bfd
usbnet: ratelimit kevent may have been dropped warnings
steveglen Nov 8, 2012
ef20553
Merge pull request #159 from derolf/rpi-3.2.27
popcornmix Nov 26, 2012
ada8b44
Leave missing_status enabled for now.
popcornmix Nov 26, 2012
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Move to version 5 of VCHIQ. Note: this requires a corresponding start…
….elf and /opt/vc/lib update
  • Loading branch information
popcornmix committed Oct 5, 2012
commit eb0c5608f3fd94fa316135e71edfb2d359b73203
9 changes: 6 additions & 3 deletions drivers/misc/vc04_services/Kconfig
Original file line number Diff line number Diff line change
@@ -1,7 +1,10 @@
config BCM2708_VCHIQ
tristate "Videocore VCHIQ"
depends on MACH_BCM2708
default y
help
Helper for communication for VideoCore.
default CONFIG_BCM_VC_SERVICES
help
Kernel to VideoCore communication interface for the
BCM2708 family of products.
Defaults to Y when the Broadcom Videocore services
are included in the build, N otherwise.

100 changes: 90 additions & 10 deletions drivers/misc/vc04_services/Makefile
Original file line number Diff line number Diff line change
@@ -1,21 +1,101 @@
ifeq ($(CONFIG_MACH_BCM2708),y)

##############################################################################
#
# This section is for building the RaspberryPi model
#
##############################################################################

obj-$(CONFIG_BCM2708_VCHIQ) += vchiq.o

vchiq-objs := \
interface/vchiq_arm/vchiq_core.o \
interface/vchiq_arm/vchiq_shim.o \
interface/vchiq_arm/vchiq_util.o \
interface/vchiq_arm/vchiq_arm.o \
interface/vchiq_arm/vchiq_kern_lib.o \
interface/vchiq_arm/vchiq_2835_arm.o \
interface/vcos/linuxkernel/vcos_linuxkernel.o \
interface/vcos/linuxkernel/vcos_thread_map.o \
interface/vcos/linuxkernel/vcos_linuxkernel_cfg.o \
interface/vcos/generic/vcos_generic_event_flags.o \
interface/vcos/generic/vcos_logcat.o \
interface/vcos/generic/vcos_mem_from_malloc.o \
interface/vcos/generic/vcos_cmd.o
interface/vchiq_arm/vchiq_proc.o \
interface/vchiq_arm/vchiq_shim.o \
interface/vchiq_arm/vchiq_util.o \
interface/vchiq_arm/vchiq_connected.o \

EXTRA_CFLAGS += -DVCOS_VERIFY_BKPTS=1 -Idrivers/misc/vc04_services -DUSE_VCHIQ_ARM -D__VCCOREVER__=0x04000000

endif

ifeq ($(CONFIG_ARCH_KONA),y)

##############################################################################
#
# This section is for building the Capri/Island model
#
##############################################################################

# Remove the quotes from the platform config name
VCHIQ_PLATFORM_CONFIG = $(patsubst "%",%,$(CONFIG_VCHIQ_PLATFORM_CFG_NAME))

$(info VCHIQ_PLATFORM_CONFIG = $(VCHIQ_PLATFORM_CONFIG))
include $(srctree)/drivers/misc/vc04_services/interface/vchiq_arm/platform-cfg/$(VCHIQ_PLATFORM_CONFIG).mk

$(info Building for MAP build system)
$(info CONFIG_ARCH_KONA = $(CONFIG_ARCH_KONA))

EXTRA_CFLAGS += -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -Wno-declaration-after-statement -Wno-parentheses

EXTRA_CFLAGS += -I"drivers/misc/vc04_services/"
EXTRA_CFLAGS += -I"drivers/misc/vc04_services/interface/vchiq_arm"
EXTRA_CFLAGS += -I"drivers/misc/vc04_services/interface/debug_sym"
EXTRA_CFLAGS += -I"include/linux/broadcom"

EXTRA_CFLAGS += -Werror

VCHIQ_HOST_BUS_ALIGNMENT = 3

EXTRA_CFLAGS += -DOS_ASSERT_FAILURE
EXTRA_CFLAGS += -D__STDC_VERSION=199901L
EXTRA_CFLAGS += -D__STDC_VERSION__=199901L
EXTRA_CFLAGS += -D__VCCOREVER__=0
EXTRA_CFLAGS += -D__linux__
EXTRA_CFLAGS += -D__KERNEL__
EXTRA_CFLAGS += -DVCHIQ_HOST_BUS_ALIGNMENT=$(VCHIQ_HOST_BUS_ALIGNMENT)
EXTRA_CFLAGS += -DVCHIQ_SLOT_PADDING=16
EXTRA_CFLAGS += -DVCHIQ_ARM_SIDE
EXTRA_CFLAGS += -DUSE_VCHIQ_ARM
ifeq ($(VCHIQ_SM_ALLOC),vcddr)
EXTRA_CFLAGS += -DVCHIQ_SM_ALLOC_VCDDR
endif

obj-$(CONFIG_KONA_VCHIQ) += vc-vchiq.o
vc-vchiq-objs := \
interface/vchiq_arm/vchiq_arm.o \
interface/vchiq_arm/vchiq_connected.o \
interface/vchiq_arm/vchiq_core.o \
interface/vchiq_arm/vchiq_kern_lib.o \
interface/vchiq_arm/vchiq_shim.o \
interface/vchiq_arm/vchiq_util.o \
interface/vchiq_arm/vchiq_kona_arm.o \
interface/vchiq_arm/vchiq_$(VCHIQ_PLATFORM)_arm.o \
interface/vchiq_arm/vchiq_version.o \
interface/vchiq_arm/vchiq_proc.o
ifeq ($(VCHIQ_SM_ALLOC),vcddr)
vc-vchiq-objs += \
interface/debug_sym/debug_sym.o
endif

obj-$(CONFIG_KONA_VCHIQ_MEMDRV) += vc-vchiq-memdrv-kona.o
vc-vchiq-memdrv-kona-objs := \
interface/vchiq_arm/vchiq_memdrv_kona.o

genversion = drivers/misc/vc04_services/interface/vchiq_arm/vchiq_genversion

EXTRA_CFLAGS += -DVCOS_VERIFY_BKPTS=1 -DUSE_VCHIQ_ARM -D__VCCOREVER__=0x04000000 -Idrivers/misc/vc04_services -Idrivers/misc/vc04_services/interface/vcos/linuxkernel
GENVERSION_SRC_ROOT_DIR = .
ifeq ($(CONFIG_ANDROID),y)
GENVERSION_SRC_ROOT_DIR = $(srctree)
endif

$(obj)/interface/vchiq_arm/vchiq_version.c: $(genversion) FORCE
echo "(new) Generating $@ ..."
perl $(srctree)/$(genversion) vchiq $(GENVERSION_SRC_ROOT_DIR) > $@

clean-files := vchiq_version.c

endif
28 changes: 16 additions & 12 deletions drivers/misc/vc04_services/interface/vchi/connections/connection.h
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright (c) 2010-2011 Broadcom Corporation. All rights reserved.
* Copyright (c) 2010-2012 Broadcom. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
Expand All @@ -19,6 +19,10 @@
#ifndef CONNECTION_H_
#define CONNECTION_H_

#include <linux/kernel.h>
#include <linux/types.h>
#include <linux/semaphore.h>

#include "interface/vchi/vchi_cfg_internal.h"
#include "interface/vchi/vchi_common.h"
#include "interface/vchi/message_drivers/message.h"
Expand Down Expand Up @@ -50,15 +54,15 @@ typedef int32_t (*VCHI_CONNECTION_CRC_CONTROL_T)( VCHI_CONNECTION_STATE_T *state

// Routine to create a service
typedef int32_t (*VCHI_CONNECTION_SERVICE_CONNECT_T)( VCHI_CONNECTION_STATE_T *state_handle,
vcos_fourcc_t service_id,
int32_t service_id,
uint32_t rx_fifo_size,
uint32_t tx_fifo_size,
int server,
VCHI_CALLBACK_T callback,
void *callback_param,
vcos_bool_t want_crc,
vcos_bool_t want_unaligned_bulk_rx,
vcos_bool_t want_unaligned_bulk_tx,
int32_t want_crc,
int32_t want_unaligned_bulk_rx,
int32_t want_unaligned_bulk_tx,
VCHI_CONNECTION_SERVICE_HANDLE_T *service_handle );

// Routine to close a service
Expand Down Expand Up @@ -116,7 +120,7 @@ typedef int32_t (*VCHI_CONNECTION_HELD_MSG_INFO_T)( VCHI_CONNECTION_SERVICE_HAND
uint32_t *rx_timestamp );

// Routine to check whether the iterator has a next message
typedef vcos_bool_t (*VCHI_CONNECTION_MSG_ITER_HAS_NEXT_T)( VCHI_CONNECTION_SERVICE_HANDLE_T service,
typedef int32_t (*VCHI_CONNECTION_MSG_ITER_HAS_NEXT_T)( VCHI_CONNECTION_SERVICE_HANDLE_T service,
const VCHI_MSG_ITER_T *iter );

// Routine to advance the iterator
Expand Down Expand Up @@ -149,7 +153,7 @@ typedef int32_t (*VCHI_CONNECTION_BULK_QUEUE_RECEIVE_T)( VCHI_CONNECTION_SERVICE
void *bulk_handle );

// Routine to report if a server is available
typedef int32_t (*VCHI_CONNECTION_SERVER_PRESENT)( VCHI_CONNECTION_STATE_T *state, vcos_fourcc_t service_id, int32_t peer_flags );
typedef int32_t (*VCHI_CONNECTION_SERVER_PRESENT)( VCHI_CONNECTION_STATE_T *state, int32_t service_id, int32_t peer_flags );

// Routine to report the number of RX slots available
typedef int (*VCHI_CONNECTION_RX_SLOTS_AVAILABLE)( const VCHI_CONNECTION_STATE_T *state );
Expand All @@ -159,18 +163,18 @@ typedef uint32_t (*VCHI_CONNECTION_RX_SLOT_SIZE)( const VCHI_CONNECTION_STATE_T

// Callback to indicate that the other side has added a buffer to the rx bulk DMA FIFO
typedef void (*VCHI_CONNECTION_RX_BULK_BUFFER_ADDED)(VCHI_CONNECTION_STATE_T *state,
vcos_fourcc_t service,
int32_t service,
uint32_t length,
MESSAGE_TX_CHANNEL_T channel,
uint32_t channel_params,
uint32_t data_length,
uint32_t data_offset);

// Callback to inform a service that a Xon or Xoff message has been received
typedef void (*VCHI_CONNECTION_FLOW_CONTROL)(VCHI_CONNECTION_STATE_T *state, vcos_fourcc_t service_id, int32_t xoff);
typedef void (*VCHI_CONNECTION_FLOW_CONTROL)(VCHI_CONNECTION_STATE_T *state, int32_t service_id, int32_t xoff);

// Callback to inform a service that a server available reply message has been received
typedef void (*VCHI_CONNECTION_SERVER_AVAILABLE_REPLY)(VCHI_CONNECTION_STATE_T *state, vcos_fourcc_t service_id, uint32_t flags);
typedef void (*VCHI_CONNECTION_SERVER_AVAILABLE_REPLY)(VCHI_CONNECTION_STATE_T *state, int32_t service_id, uint32_t flags);

// Callback to indicate that bulk auxiliary messages have arrived
typedef void (*VCHI_CONNECTION_BULK_AUX_RECEIVED)(VCHI_CONNECTION_STATE_T *state);
Expand All @@ -185,7 +189,7 @@ typedef void (*VCHI_CONNECTION_INFO)(VCHI_CONNECTION_STATE_T *state, uint32_t pr
typedef void (*VCHI_CONNECTION_DISCONNECT)(VCHI_CONNECTION_STATE_T *state, uint32_t flags);

// Callback to inform of a power control request
typedef void (*VCHI_CONNECTION_POWER_CONTROL)(VCHI_CONNECTION_STATE_T *state, MESSAGE_TX_CHANNEL_T channel, vcos_bool_t enable);
typedef void (*VCHI_CONNECTION_POWER_CONTROL)(VCHI_CONNECTION_STATE_T *state, MESSAGE_TX_CHANNEL_T channel, int32_t enable);

// allocate memory suitably aligned for this connection
typedef void * (*VCHI_BUFFER_ALLOCATE)(VCHI_CONNECTION_SERVICE_HANDLE_T service_handle, uint32_t * length);
Expand Down Expand Up @@ -299,7 +303,7 @@ struct vchi_connection_t {
const VCHI_CONNECTION_API_T *api;
VCHI_CONNECTION_STATE_T *state;
#ifdef VCHI_COARSE_LOCKING
VCOS_SEMAPHORE_T sem;
struct semaphore sem;
#endif
};

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright (c) 2010-2011 Broadcom Corporation. All rights reserved.
* Copyright (c) 2010-2012 Broadcom. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
Expand All @@ -19,8 +19,11 @@
#ifndef _VCHI_MESSAGE_H_
#define _VCHI_MESSAGE_H_

#include <linux/kernel.h>
#include <linux/types.h>
#include <linux/semaphore.h>

#include "interface/vchi/vchi_cfg_internal.h"
#include "interface/vcos/vcos.h"
#include "interface/vchi/vchi_common.h"


Expand Down Expand Up @@ -63,7 +66,7 @@ typedef struct rx_msg_slot_info {
struct rx_msg_slot_info *next;
//struct slot_info *prev;
#if !defined VCHI_COARSE_LOCKING
VCOS_SEMAPHORE_T sem;
struct semaphore sem;
#endif

uint8_t *addr; // base address of slot
Expand All @@ -84,7 +87,7 @@ typedef struct rx_msg_slot_info {
typedef struct rx_bulk_slotinfo_t {
struct rx_bulk_slotinfo_t *next;

VCOS_SEMAPHORE_T *blocking;
struct semaphore *blocking;

// needed by DMA
void *addr;
Expand Down Expand Up @@ -127,7 +130,7 @@ typedef struct {
uint16_t slot_delta; // whether this message indicated slot delta
uint32_t len; // length of message
RX_MSG_SLOTINFO_T *slot; // slot this message is in
vcos_fourcc_t service; // service id this message is destined for
int32_t service; // service id this message is destined for
uint32_t tx_timestamp; // timestamp from the header
uint32_t rx_timestamp; // timestamp when we parsed it
} message;
Expand Down Expand Up @@ -156,14 +159,14 @@ struct opaque_vchi_message_driver_t {
VCHI_MDRIVER_HANDLE_T *(*open)( VCHI_MESSAGE_DRIVER_OPEN_T *params, void *state );
int32_t (*suspending)( VCHI_MDRIVER_HANDLE_T *handle );
int32_t (*resumed)( VCHI_MDRIVER_HANDLE_T *handle );
int32_t (*power_control)( VCHI_MDRIVER_HANDLE_T *handle, MESSAGE_TX_CHANNEL_T, vcos_bool_t enable );
int32_t (*power_control)( VCHI_MDRIVER_HANDLE_T *handle, MESSAGE_TX_CHANNEL_T, int32_t enable );
int32_t (*add_msg_rx_slot)( VCHI_MDRIVER_HANDLE_T *handle, RX_MSG_SLOTINFO_T *slot ); // rx message
int32_t (*add_bulk_rx)( VCHI_MDRIVER_HANDLE_T *handle, void *data, uint32_t len, RX_BULK_SLOTINFO_T *slot ); // rx data (bulk)
int32_t (*send)( VCHI_MDRIVER_HANDLE_T *handle, MESSAGE_TX_CHANNEL_T channel, const void *data, uint32_t len, VCHI_MSG_FLAGS_T flags, void *send_handle ); // tx (message & bulk)
void (*next_event)( VCHI_MDRIVER_HANDLE_T *handle, MESSAGE_EVENT_T *event ); // get the next event from message_driver
int32_t (*enable)( VCHI_MDRIVER_HANDLE_T *handle );
int32_t (*form_message)( VCHI_MDRIVER_HANDLE_T *handle, vcos_fourcc_t service_id, VCHI_MSG_VECTOR_T *vector, uint32_t count, void
*address, uint32_t length_avail, uint32_t max_total_length, vcos_bool_t pad_to_fill, vcos_bool_t allow_partial );
int32_t (*form_message)( VCHI_MDRIVER_HANDLE_T *handle, int32_t service_id, VCHI_MSG_VECTOR_T *vector, uint32_t count, void
*address, uint32_t length_avail, uint32_t max_total_length, int32_t pad_to_fill, int32_t allow_partial );

int32_t (*update_message)( VCHI_MDRIVER_HANDLE_T *handle, void *dest, int16_t *slot_count );
int32_t (*buffer_aligned)( VCHI_MDRIVER_HANDLE_T *handle, int tx, int uncached, const void *address, const uint32_t length );
Expand All @@ -172,7 +175,7 @@ struct opaque_vchi_message_driver_t {
int (*rx_slot_size)( VCHI_MDRIVER_HANDLE_T *handle, int msg_size );
int (*tx_slot_size)( VCHI_MDRIVER_HANDLE_T *handle, int msg_size );

vcos_bool_t (*tx_supports_terminate)( const VCHI_MDRIVER_HANDLE_T *handle, MESSAGE_TX_CHANNEL_T channel );
int32_t (*tx_supports_terminate)( const VCHI_MDRIVER_HANDLE_T *handle, MESSAGE_TX_CHANNEL_T channel );
uint32_t (*tx_bulk_chunk_size)( const VCHI_MDRIVER_HANDLE_T *handle, MESSAGE_TX_CHANNEL_T channel );
int (*tx_alignment)( const VCHI_MDRIVER_HANDLE_T *handle, MESSAGE_TX_CHANNEL_T channel );
int (*rx_alignment)( const VCHI_MDRIVER_HANDLE_T *handle, MESSAGE_RX_CHANNEL_T channel );
Expand Down
44 changes: 26 additions & 18 deletions drivers/misc/vc04_services/interface/vchi/vchi.h
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright (c) 2010-2011 Broadcom Corporation. All rights reserved.
* Copyright (c) 2010-2012 Broadcom. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
Expand All @@ -16,14 +16,9 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/

/*=============================================================================
Contains the protypes for the vchi functions.
=============================================================================*/

#ifndef VCHI_H_
#define VCHI_H_

#include "interface/vcos/vcos.h"
#include "interface/vchi/vchi_cfg.h"
#include "interface/vchi/vchi_common.h"
#include "interface/vchi/connections/connection.h"
Expand All @@ -44,6 +39,12 @@ Contains the protypes for the vchi functions.
#define VCHI_BULK_ALIGNED(x) (((unsigned long)(x) & (VCHI_BULK_ALIGN-1)) == 0)
#endif

struct vchi_version {
uint32_t version;
uint32_t version_min;
};
#define VCHI_VERSION(v_) { v_, v_ }
#define VCHI_VERSION_EX(v_, m_) { v_, m_ }

typedef enum
{
Expand Down Expand Up @@ -88,8 +89,8 @@ typedef struct vchi_msg_vector_ex {
// Construct an entry in a msg vector for a message handle (h), starting at offset (o) of length (l)
#define VCHI_VEC_HANDLE(h,o,l) VCHI_VEC_HANDLE, { { (h), (o), (l) } }

// Macros to manipulate fourcc_t values
#define MAKE_FOURCC(x) ((fourcc_t)( (x[0] << 24) | (x[1] << 16) | (x[2] << 8) | x[3] ))
// Macros to manipulate 'FOURCC' values
#define MAKE_FOURCC(x) ((int32_t)( (x[0] << 24) | (x[1] << 16) | (x[2] << 8) | x[3] ))
#define FOURCC_TO_CHAR(x) (x >> 24) & 0xFF,(x >> 16) & 0xFF,(x >> 8) & 0xFF, x & 0xFF


Expand All @@ -108,15 +109,22 @@ typedef struct

// structure used to provide the information needed to open a server or a client
typedef struct {
vcos_fourcc_t service_id;
VCHI_CONNECTION_T *connection;
uint32_t rx_fifo_size;
uint32_t tx_fifo_size;
VCHI_CALLBACK_T callback;
void *callback_param;
vcos_bool_t want_unaligned_bulk_rx; // client intends to receive bulk transfers of odd lengths or into unaligned buffers
vcos_bool_t want_unaligned_bulk_tx; // client intends to transmit bulk transfers of odd lengths or out of unaligned buffers
vcos_bool_t want_crc; // client wants to check CRCs on (bulk) transfers. Only needs to be set at 1 end - will do both directions.
struct vchi_version version;
int32_t service_id;
VCHI_CONNECTION_T *connection;
uint32_t rx_fifo_size;
uint32_t tx_fifo_size;
VCHI_CALLBACK_T callback;
void *callback_param;
/* client intends to receive bulk transfers of
odd lengths or into unaligned buffers */
int32_t want_unaligned_bulk_rx;
/* client intends to transmit bulk transfers of
odd lengths or out of unaligned buffers */
int32_t want_unaligned_bulk_tx;
/* client wants to check CRCs on (bulk) xfers.
Only needs to be set at 1 end - will do both directions. */
int32_t want_crc;
} SERVICE_CREATION_T;

// Opaque handle for a VCHI instance
Expand Down Expand Up @@ -269,7 +277,7 @@ extern uint32_t vchi_held_msg_rx_timestamp( const VCHI_HELD_MSG_T *message );
extern int32_t vchi_held_msg_release( VCHI_HELD_MSG_T *message );

// Indicates whether the iterator has a next message.
extern vcos_bool_t vchi_msg_iter_has_next( const VCHI_MSG_ITER_T *iter );
extern int32_t vchi_msg_iter_has_next( const VCHI_MSG_ITER_T *iter );

// Return the pointer and length for the next message and advance the iterator.
extern int32_t vchi_msg_iter_next( VCHI_MSG_ITER_T *iter,
Expand Down
Loading