Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
987 commits
Select commit Hold shift + click to select a range
6d9ded2
Ethernut 5 board support
tim-egnite Apr 24, 2012
771d02d
ARM: at91: Add machine header file for AT91SAM9N12 SoC
Apr 17, 2012
37b8c7a
ARM: at91: Add machine files for AT91SAM9N12 SoC
Apr 17, 2012
2fc9a0d
ARM: at91: Add DT description files for AT91SAM9N12-EK
Apr 17, 2012
2d67282
ARM: at91: remove two unused headers
pebolle Jun 7, 2012
f7a7be1
ARM: at91: fix at91_aic_write macro
ldesroches May 31, 2012
6b36e56
USB: ohci-at91: use resource_size() for memory/io resource length
May 9, 2012
4a0e299
USB: Kconfig: add Atmel usba driver entry
Jun 19, 2012
0880824
ARM: at91/clock: fix PLLA overclock warning
Jul 9, 2012
5870fd6
ARM: at91/dts: remove partial parameter in at91sam9g25ek.dts
Aug 17, 2012
632b3f9
ARM: at91: set i2c_board_info.type to "ds1339" directly
pebolle May 24, 2012
7b849b5
ARM: at91/defconfig: Remove unaffected config option
rgenoud Jun 22, 2012
567e6c4
ARM: at91: fix missing #interrupt-cells on gpio-controller
plagnioj Sep 13, 2012
6f0c926
ARM: at91/tc: fix typo in the DT document
JoshWu Sep 14, 2012
d20929e
ARM: at91: missing header file for rtc-at91rm9200.c
ldesroches Sep 19, 2012
dc55ac7
ASoC: atmel-ssc: include linux/io.h for raw io
manabian Aug 23, 2012
adc32a9
ARM: at91: aic can use fast eoi handler type
ldesroches May 25, 2012
6591d7a
ARM: at91: aic add dt support for external irqs
plagnioj Apr 9, 2012
2e9f087
ARM: at91: add of irq priorities support
ldesroches Jun 20, 2012
253f405
ARM: at91: remove static irq priorities for sam9x5
ldesroches Jun 22, 2012
4d4e784
ARM: at91: at91 based machines specify their own irq handler at run time
ldesroches Jun 11, 2012
6fdddfc
ARM: at91: sparse irq support
ldesroches Jun 21, 2012
45fba6f
ARM: at91: remove mach/irqs.h
ldesroches Jun 14, 2012
2ab4fd5
ARM: at91: add AIC5 support
ldesroches May 30, 2012
b0a2eb0
dt: add property iteration helpers
nvswarren Apr 4, 2012
a00b0cc
ARM: at91: fix new build errors
arndb Jul 4, 2012
0144b54
dmaengine: at_hdmac: remove some at_dma_slave comments
May 10, 2012
6a24ecd
dmaengine: at_hdmac: remove ATC_DEFAULT_CTRLA constant
May 10, 2012
a692d12
dmaengine: at_hdmac: take maxburst from slave configuration
May 10, 2012
e7d2609
dmaengine: at_hdmac: trivial: fix comment in header
Jun 12, 2012
97390db
dmaengine: at_hdmac: fix comment in atc_prep_slave_sg()
Sep 11, 2012
d9576b7
dmaengine: at_hdmac: check that each sg data length is non-null
Sep 11, 2012
272e788
AT91: Remove fixed mapping for AT91RM9200 ethernet
avictor Apr 26, 2012
4c7f53a
net/at91_ether: use gpio_to_irq for phy IRQ line
Apr 26, 2012
7753ed0
net/macb: manage carrier state with call to netif_carrier_{on|off}()
Jul 3, 2012
dbbe370
ALSA: atmel/ac97c: correct the unexpected behavior when using uniniti…
May 11, 2012
37a9c14
MTD: at91: extract hw ecc initialization to one function
JoshWu May 31, 2012
7f3d2c9
MTD: at91: add dt parameters for Atmel PMECC
JoshWu Jun 26, 2012
6dc4ff7
MTD: at91: atmel_nand: Update driver to support Programmable Multibit…
JoshWu Jun 29, 2012
c002791
MTD: nand: add return value for write_page()/write_page_raw() functio…
JoshWu Jun 25, 2012
7d92178
MTD: atmel_nand: revet the oob_required parameter in ecc.read/write_page
Sep 21, 2012
ddee657
MTD: atmel_nand: add 9x5 to list of SoC with DMA
Sep 24, 2012
3efc10b
MTD: atmel_nand: POI fall back is not an issue: change log
Sep 24, 2012
6d16ae9
MTD: atmel_nand: add 9n12 to list of SoC with DMA
Oct 8, 2012
205e3ae
input: atmel_tsadcc: add support for ARCH_AT91SAM9X5
JoshWu Nov 17, 2010
f924876
input: atmel_tsadcc: add touch screen pressure measurement
JoshWu Nov 17, 2010
c331326
input: atmel_tsadcc: enable touchscreen averaging and add fast wake up
ldesroches Apr 5, 2011
bb2bbaa
input: atmel_tsadcc: add ACR register and change trigger period value
ldesroches May 6, 2011
dd05003
AT91/input: atmel_tsadcc: rework irq infrastructure and parameters
Jun 16, 2011
6fa3817
input: at91: add tsadcc_data for 9x5
JoshWu Jun 7, 2012
9dec1a6
input: at91: add dt support for atmel touch screen adc controller.
JoshWu Jun 13, 2012
5c2ed14
net/macb: Add support for Gigabit Ethernet mode
Sep 6, 2012
fe758f5
net/macb: memory barriers cleanup
May 28, 2010
7dd52f7
net/macb: change debugging messages
May 28, 2010
93c3f83
net/macb: remove macb_get_drvinfo()
Sep 6, 2012
69eb5dd
net/macb: tx status is more than 8 bits now
Sep 3, 2012
5c7c8fe
net/macb: clean up ring buffer logic
Jun 21, 2010
07007d3
net/macb: ethtool interface: add register dump feature
Sep 3, 2012
950c22b
net/macb: better manage tx errors
Jun 22, 2010
ebff9d3
net/macb: Offset first RX buffer by two bytes
Mar 24, 2009
5d30336
net/macb: GEM DMA configuration register update
Sep 19, 2012
d753b91
net/macb: Use non-coherent memory for rx buffers
Mar 24, 2009
0a488fb
phy/micrel: Use proper phy in gmac
Jun 26, 2012
db43498
phy/micrel: we need to register ks8051 phy for emac
ldesroches Jul 10, 2012
ae50ff0
usb: gadget: at91_udc: move the dereference below the NULL test
Sep 7, 2012
c0cd18a
usb: gadget: at91_udc: fix dt support
fabio-porcedda Sep 7, 2012
42e7604
USB: ohci-at91: fix PIO handling in relation with number of ports
Aug 29, 2012
3be7e46
usb: gadget: at91_udc: Propagate devicetree to gadget drivers
aletes Jun 26, 2012
3b08384
USB: ohci-at91.c: remove err() usage
gregkh Apr 27, 2012
452c830
USB: ohci-at91: fix null pointer in ohci_hcd_at91_overcurrent_irq
manabian Sep 23, 2012
705b4b4
media/video: atmel-isi: add dumb set_parm()
Jun 10, 2011
5c29a55
video/atmel_lcdfb: add support for AT91SAM9x5
JoshWu Nov 1, 2010
0862699
video/atmel_lcdfb: The output bpp should not change according to memo…
JoshWu Mar 9, 2011
5613e37
video: atmelfb: initially split atmelfb into a driver and library part
May 19, 2011
4a211d9
video: atmelfb: refactor core setup
May 19, 2011
93000ba
video: atmelfb: refactor start/stop
May 19, 2011
8043f42
video: atmelfb: refactor isr
May 19, 2011
bf33aae
video: atmelfb: refactor backlight routines
May 19, 2011
8faef39
video: atmelfb: refactor dma_update
May 20, 2011
8c06824
video: atmelfb: refactor LUT
May 20, 2011
00420e8
video: atmelfb: refactor limit_screeninfo
May 20, 2011
daafaa8
arm: at91: refactor lcdc-includes
Oct 22, 2012
ea87fde
video: atmel_hlcdfb: add new driver
May 23, 2011
952cff7
WIP: add clut resource
May 30, 2011
3df2f96
video: atmel_lcdfb: add error-msg when out of memory
Jun 7, 2011
21ab2ac
video: atmel_lcdfb: HLCD modifications
ldesroches Feb 17, 2012
61d28fa
atmel_lcdfb: change pixel clock ratio calculation
Jun 24, 2011
05f0088
media/at91sam9x5-video: new driver for the high end overlay on at91sa…
May 24, 2011
565de71
video: atmel_lcdfb*: protect bl_power with CONFIG_BACKLIGHT_ATMEL_LCDC
Oct 9, 2012
fe1559c
ARM: at91/9x5: modify consistent DMA size
Oct 16, 2012
564ee16
video: atmel_lcdfb: adapt to all IP configurations
Oct 16, 2012
139db41
media/at91sam9x5-video: cleanup modifications
Oct 16, 2012
92851e6
media/at91sam9x5-video: align DMA descriptors on 64 bits
Oct 16, 2012
08e62ea
media/at91sam9x5-video: change scaling factor calculation
Oct 16, 2012
5317bf1
media/at91sam9x5-video: add device tree support
Oct 16, 2012
25f953c
ARM: at91/video: Atmel HLCD is only selected by newer products
Jun 18, 2012
3ea2cbe
mmc: atmel-mci: the r/w proof capability lack was not well managed
ldesroches May 16, 2012
9f4aec6
mmc: atmel-mci: change the state machine for compatibility with old IP
ldesroches May 16, 2012
d243a7c
mmc: atmel-mci: add support for version lower than v2xx
ldesroches May 16, 2012
630d721
mmc: atmel-mci: add debug logs
ldesroches May 16, 2012
20b33d7
mmc: atmel-mci: fix data timeout issue
ldesroches May 23, 2012
aeb632c
ARM: at91: add atmel-mci support for chips and boards which can use it
ldesroches May 21, 2012
646f4f7
ARM: at91/defconfig: change the MCI driver to use in defconfigs
Jul 2, 2012
b50d605
mmc: atmel-mci: fix burst/chunk size modification
Apr 24, 2012
abcc103
mmc: atmel-mci: add device tree support
ldesroches Mar 20, 2012
1061326
ARM: at91: add clocks for DT entries
ldesroches May 22, 2012
5447e89
ARM: dts: add nodes for atmel hsmci controllers for atmel SOCs
ldesroches May 24, 2012
c856444
ARM: dts: add nodes for atmel hsmci controllers for atmel boards
ldesroches May 24, 2012
9149e1f
mmc: atmel-mci: remove not needed DMA capability test
Jun 7, 2012
0de76cf
ARM: at91/atmel-mci: remove unused setup_dma_addr() macro
Mar 14, 2012
a9f7179
mmc: atmel-mci: remove the need for CONFIG_MMC_ATMELMCI_DMA
Mar 15, 2012
426627d
ARM: dts: fix add mmc irq priority
ldesroches Jun 22, 2012
5269cb6
mmc: atmel-mci: support 8-bit buswidth
Sep 6, 2011
fe76a21
mmc: atmel-mci: fix incorrect setting of host->data to NULL
Jul 6, 2012
abb2261
mmc: block: fix the data timeout issue with ACMD22
Jun 13, 2012
7a25326
mmc: atmel-mci: modify CLKDIV displaying in debugfs
Jul 6, 2012
3903e1f
mmc: atmel-mci: increase dma threshold
ldesroches Jul 9, 2012
07e3523
mmc: atmel-mci: not busy flag has also to be used for read operations
ldesroches Jul 24, 2012
e10db2b
Replace clk_lookup.con_id with clk_lookup.dev_id entries for twi clk
Oct 22, 2012
1911883
i2c: at91: remove old polling driver
Nov 8, 2011
1762cb0
i2c: at91: add new driver
Nov 8, 2011
2994ada
arm: at91: G45 TWI: remove open drain setting for twi function gpios
Nov 8, 2011
c4eb8fe
ARM: at91: do not configure at91sam9g10 twi pio as open-drain
ldesroches Sep 12, 2012
2f7c847
i2c: at91: add dt support to i2c-at91
ldesroches Sep 12, 2012
16a2fab
ARM: at91: add clocks for I2C DT entries
Oct 22, 2012
cfd444a
ARM: dts: add twi nodes for atmel SoCs
ldesroches Sep 12, 2012
4b10c24
ARM: dts: add twi nodes for atmel boards
Oct 22, 2012
38916c6
i2c: at91: add dma support
ldesroches Sep 14, 2012
b98bff1
i2c: at91: backport fix for devm_clk_get
ldesroches Sep 18, 2012
9c0c6f3
i2c: at91: add dt property for DMA configuration
Oct 22, 2012
a26a550
ARM: at91: add MCI DMA for at91sam9x5.dtsi
Sep 24, 2012
9ee686b
ARM: at91: add i2c and qt1070 pin muxing
ldesroches Sep 19, 2012
ee1a2b1
AT91: board-dt add mci pinmux for 9x5
Sep 24, 2012
5447f10
mtd: atmel_nand: add 4k page nand flash support for PMECC.
JoshWu Sep 24, 2012
2631653
mtd: atmel_nand: incease the chip_delay time(tR) for support big flas…
JoshWu Sep 24, 2012
cd0c1e4
at91: 9x5: add DT parameters to enable PMECC
JoshWu Sep 25, 2012
5656f4e
ARM: at91: split 9x5 dts/dtsi in a "common" set of peripherals
Oct 2, 2012
632da89
ARM: at91/9x5 family: add at91sam9x25ek.dts
Oct 2, 2012
4b171e9
ARM: at91: add new at91sam9g35ek.dts
Oct 16, 2012
a9002e5
ARM: at91: add pinmux for 9x5 LCD
Oct 16, 2012
e19f22b
ARM: at91: add LCD HEO DT entry for at91sam9x5
Oct 17, 2012
f0a167e
AT91SAM9G45: add crypto peripherals
Oct 22, 2012
c6353d7
crypto: add Atmel AES driver
Sep 17, 2012
189348e
crypto: add Atmel DES/TDES driver
Sep 17, 2012
3d0dc28
crypto: add Atmel SHA1/SHA256 driver
Sep 17, 2012
84820a1
crypto: add atmel-test driver
Sep 17, 2012
50f0d2a
crypto: add new tests to tcrypt
Sep 17, 2012
308c144
AT91SAM9G45: crypto: same platform data header for all crypto periphe…
Sep 17, 2012
5a8755b
AT91SAM9G45: dts: add crypto peripherals
Oct 22, 2012
c3c5259
AT91SAM9N12: add crypto peripherals
Sep 17, 2012
212c6c6
AT91SAM9N12: dts: add crypto peripherals
Oct 22, 2012
6dcba1a
crypto: Atmel AES; add device tree support
Sep 17, 2012
ba14d3b
crypto: Atmel TDES; add device tree support
Sep 17, 2012
8d47f5d
crypto: Atmel SHA; add device tree support
Sep 17, 2012
352ab87
crypto: Atmel Test; add SHA224, SHA384 and SHA512 support
Sep 17, 2012
f67e075
pinctrl: core device tree mapping table parsing support
swarren Mar 23, 2012
7140415
pinctrl: fix build when CONFIG_OF && !CONFIG_PINCTRL
nvswarren Apr 4, 2012
51c38f7
pinctrl: fix dangling comment
Apr 24, 2012
51da459
pinctrl: implement devm_pinctrl_get()/put()
nvswarren Apr 16, 2012
489c95d
pinctrl: add pinctrl_provide_dummies interface for platforms to use
Apr 26, 2012
1332062
pinctrl: remove pinctrl_remove_gpio_range
May 23, 2012
d52a7f1
pinctrl: add pinctrl_add_gpio_ranges function
May 23, 2012
d834e7a
pinctrl: support gpio request deferred probing
Apr 25, 2012
1f8eba3
pinctrl: propagate map validation errors
nvswarren Apr 25, 2012
ac7194c
pinctrl: mark non-EXPERIMENTAL
Apr 12, 2012
c74f882
pinctrl: implement pinctrl deferred probing
Apr 10, 2012
0fb545a
pinctrl: replace list_*() with get_*_count()
Mar 30, 2012
347e1c7
pinctrl: show pin name when request pins
Apr 17, 2012
7e6ef22
pinctrl: show pin name for pingroups in sysfs
Apr 17, 2012
bbc91a6
dt: add of_get_child_count helper function
Apr 27, 2012
f0e3436
arm: at91: use macro to declare soc boot data
plagnioj Aug 16, 2012
0fac5d6
ARM: at91: gpio: implement request
plagnioj Jul 5, 2012
7355b74
at91: regroup gpio and pinctrl under the same ranges
plagnioj Jul 4, 2012
00cd8cb
arm: at91: at91sam9x5: fix gpio number per bank
plagnioj Jul 14, 2012
76aa1bd
ARM: at91: add dummies pinctrl for non dt platform
plagnioj Jul 12, 2012
88a0c58
ARM: at91: add pinctrl support
plagnioj Oct 18, 2012
3445293
arm: at91: dt: at91sam9 add pinctrl support
plagnioj Oct 22, 2012
e56cc54
tty: atmel_serial: add pinctrl support
plagnioj Jul 5, 2012
d608a2b
arm: at91: dt: sam9m10g45ek: use rts/cts pinctrl group for uart1
plagnioj Jul 5, 2012
e287f76
arm: at91: dt: sam9263ek: use rts/cts pinctrl group for uart0
plagnioj Aug 9, 2012
bfacb28
arm: at91: dt: sam9g20ek: use rts/cts/dtr/dsr/dcd/ri pinctrl group fo…
plagnioj Aug 10, 2012
57ce21c
MTD: atmel nand: fix gpio missing request
plagnioj Jul 12, 2012
e624846
arm: at91: dt: at91sam9 add nand pinctrl support
plagnioj Jul 12, 2012
38bb2e5
MTD: atmel_nand: add pinctrl consumer support
plagnioj Jul 12, 2012
0754938
pinctrl: at91 add deglitch, debounce, pull down and schmitt trigger m…
plagnioj Sep 26, 2012
9924801
mtd: atmel_nand: fix the compile error which miss label "err_ecc_iore…
JoshWu Sep 24, 2012
31a329d
pinctrl/at91: fix compatible order
ldesroches Oct 16, 2012
54090e0
pinctrl: at91: fix gpio irq support
plagnioj Oct 19, 2012
15398d1
i2c: at91: add pinctrl
ldesroches Oct 16, 2012
d7ab9be
media: atmel_isi: add pinctrl
ldesroches Oct 16, 2012
6d2ed0a
mmc: at91: add pinctrl
ldesroches Oct 16, 2012
5bc8081
video: atmel_lcdfb: add pinctrl
ldesroches Oct 16, 2012
56c99e1
arm: at91sam9g45: add missing uart pinctrl node
plagnioj Oct 18, 2012
9f22333
arm: at91sam9263: add missing uart pinctrl node
plagnioj Oct 18, 2012
b6ce595
arm: at91sam9260: add missing uart pinctrl node
plagnioj Oct 18, 2012
b07d6cf
arm: at91sam9x5: sync with the mainline
plagnioj Oct 18, 2012
f3a4966
ARM: at91/DT: add i2c mmc nand pinctrl in device tree support
plagnioj Oct 18, 2012
0328d56
at91sam9x5: add lcd pinctrl support
plagnioj Oct 19, 2012
d97e722
arm: at91sam9x5ek: drop temporary pinmux
plagnioj Oct 19, 2012
e932c44
video: atmel lcd only request the pinctrl once
plagnioj Oct 19, 2012
11e369f
ARM: at91: add at91-3.4-trunk-contents.txt file
Sep 26, 2012
82c87f0
ARM: at91: add defconfig for sam9x5 family
Oct 17, 2012
ce5e15a
MMC: atmel-mci: add device tree property for configuration
Jun 20, 2012
5a5acb3
WIP: SAMA5 support (new)
Oct 22, 2012
b4e1f76
ARM: at91/samA5: increase size of consistent DMA region
ldesroches Jun 20, 2012
f663af7
SAMA5: pmc: use PCR register to manage peripheral clocks
Sep 24, 2012
c29fc82
ARM: at91: drop duplicated config SOC_AT91SAM9 entry
plagnioj Oct 18, 2012
ccddb09
miura: nand: enable nand pmecc in sama5d3 chips with DT variables.
JoshWu Jun 18, 2012
d06dd19
miura: nand: update sama5d3 defconfig to support pmecc and jffs2.
JoshWu Jun 18, 2012
59ce8f8
MTD: atmel_nand: add sama5d3 to cpu_has_dma() function
Oct 8, 2012
4b1cd13
ARM: at91: add i2c support to sama5d3
Sep 25, 2012
82ec96a
i2c: at91: add dma conf in sama5d3.dtsi
ldesroches Sep 19, 2012
e59f627
ARM: at91/dts: add eeprom entry for sama5d34ek.dts
Sep 25, 2012
29d39da
[media] atmel_isi: allocate memory to store the isi platform data.
JoshWu Aug 29, 2012
ef3396a
SAMA5: add ISI peripherial id.
JoshWu Jul 18, 2012
d3dae59
SAMA5: add ISI pmc clock and pck2 which is used for ISI_MCK.
JoshWu Jul 18, 2012
8ffbaba
SAMA5: add isi and ov2640 support.
Oct 22, 2012
abdac73
sama5: can't use i2c0 when using ISI
ldesroches Oct 15, 2012
aef9ef9
ARM: at91: add MCI definitions to sama5d3
Jun 22, 2012
cec26aa
ARM: at91: add MCI DMA and MCI DT entries
Jun 22, 2012
7355a03
miura: tsadcc: add touch screen adc id and clock.
JoshWu Jun 18, 2012
eb85dac
miura: tsadc: enable touch screen in DT variables.
Oct 22, 2012
9181474
input: miura: modify the default config file for sama5d3. which disab…
JoshWu Jun 19, 2012
bbb0b1c
enable SAMA5D3 support in touch screen adc controller driver.
JoshWu Jun 13, 2012
09ec9ae
SAMA5D3x: add crypto peripherals
Oct 22, 2012
62da808
SAMA5D3x: dts: add crypto peripherals
Oct 22, 2012
af045c7
media/video: at91sam9x5-video: add sama5d3 support
Oct 18, 2012
6dd9d5e
ARM: at91/sama5d3.dtsi: fix overlay1 register map size
Oct 18, 2012
0c87cab
ARM: at91/DT: add device tree entry for LCD HEO and sama5d3 family
Oct 22, 2012
5bd1e9b
ARM: at91: add peripheral clock division support for sama5
ldesroches Oct 11, 2012
3257ad3
sama5: pinctrl support
ldesroches Oct 18, 2012
96b660a
ARM: at91: add at91-3.4-sama5d3-contents.txt file
Oct 1, 2012
ced2249
ARM: at91: update sama5d3 defconfig
Oct 18, 2012
28b97eb
ARM: at91/dts: move LCD to simple bus
Oct 22, 2012
91e372a
ARM: at91/dts: at91sam9g20ek_common: Fix typos in buttons labels.
nandra Oct 1, 2012
972a158
ARM: at91: at91sam9g10: fix SOC type detection
IvanShugov Oct 24, 2012
b9b1783
ARM: at91: fix external interrupts in non-DT case
Oct 24, 2012
079e6c1
ARM: at91: fix external interrupt specification in board code
Oct 24, 2012
dda232c
ARM: at91/i2c: change id to let i2c-gpio work
Oct 15, 2012
c68d33b
ARM: at91/i2c: change id to let i2c-at91 work
Oct 15, 2012
9a7b0fd
ARM: at91: drop duplicated config SOC_AT91SAM9 entry
plagnioj Oct 25, 2012
eb58151
pinctrl: at91: fix debounce support
plagnioj Oct 23, 2012
d4449f3
arm: at91sam9xcm: add specific nand pinctrl
plagnioj Oct 23, 2012
37840d0
pinctrl: at91: fix pull down support
plagnioj Oct 23, 2012
cc19399
pinctrl: at19: fix typo on PULL_UP
plagnioj Oct 23, 2012
062307c
ARM: at91: fix at91x40 build
arndb Oct 26, 2012
363bfff
ARM: at91: add USART support to sama5d3 SoCs
Oct 30, 2012
3d48109
net/macb: align ring buffer function with mainline
Nov 16, 2012
0656e73
net/macb: move to circ_buf macros and fix initial condition
Nov 19, 2012
9dc5214
add change for metering board and compile
rtsysEmbedded May 8, 2016
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
32 changes: 16 additions & 16 deletions Documentation/HOWTO
Original file line number Diff line number Diff line change
Expand Up @@ -218,16 +218,16 @@ The development process
Linux kernel development process currently consists of a few different
main kernel "branches" and lots of different subsystem-specific kernel
branches. These different branches are:
- main 2.6.x kernel tree
- 2.6.x.y -stable kernel tree
- 2.6.x -git kernel patches
- main 3.x kernel tree
- 3.x.y -stable kernel tree
- 3.x -git kernel patches
- subsystem specific kernel trees and patches
- the 2.6.x -next kernel tree for integration tests
- the 3.x -next kernel tree for integration tests

2.6.x kernel tree
3.x kernel tree
-----------------
2.6.x kernels are maintained by Linus Torvalds, and can be found on
kernel.org in the pub/linux/kernel/v2.6/ directory. Its development
3.x kernels are maintained by Linus Torvalds, and can be found on
kernel.org in the pub/linux/kernel/v3.x/ directory. Its development
process is as follows:
- As soon as a new kernel is released a two weeks window is open,
during this period of time maintainers can submit big diffs to
Expand Down Expand Up @@ -262,20 +262,20 @@ mailing list about kernel releases:
released according to perceived bug status, not according to a
preconceived timeline."

2.6.x.y -stable kernel tree
3.x.y -stable kernel tree
---------------------------
Kernels with 4-part versions are -stable kernels. They contain
Kernels with 3-part versions are -stable kernels. They contain
relatively small and critical fixes for security problems or significant
regressions discovered in a given 2.6.x kernel.
regressions discovered in a given 3.x kernel.

This is the recommended branch for users who want the most recent stable
kernel and are not interested in helping test development/experimental
versions.

If no 2.6.x.y kernel is available, then the highest numbered 2.6.x
If no 3.x.y kernel is available, then the highest numbered 3.x
kernel is the current stable kernel.

2.6.x.y are maintained by the "stable" team <[email protected]>, and
3.x.y are maintained by the "stable" team <[email protected]>, and
are released as needs dictate. The normal release period is approximately
two weeks, but it can be longer if there are no pressing problems. A
security-related problem, instead, can cause a release to happen almost
Expand All @@ -285,7 +285,7 @@ The file Documentation/stable_kernel_rules.txt in the kernel tree
documents what kinds of changes are acceptable for the -stable tree, and
how the release process works.

2.6.x -git patches
3.x -git patches
------------------
These are daily snapshots of Linus' kernel tree which are managed in a
git repository (hence the name.) These patches are usually released
Expand Down Expand Up @@ -317,13 +317,13 @@ revisions to it, and maintainers can mark patches as under review,
accepted, or rejected. Most of these patchwork sites are listed at
http://patchwork.kernel.org/.

2.6.x -next kernel tree for integration tests
3.x -next kernel tree for integration tests
---------------------------------------------
Before updates from subsystem trees are merged into the mainline 2.6.x
Before updates from subsystem trees are merged into the mainline 3.x
tree, they need to be integration-tested. For this purpose, a special
testing repository exists into which virtually all subsystem trees are
pulled on an almost daily basis:
http://git.kernel.org/?p=linux/kernel/git/sfr/linux-next.git
http://git.kernel.org/?p=linux/kernel/git/next/linux-next.git
http://linux.f-seidel.de/linux-next/pmwiki/

This way, the -next kernel gives a summary outlook onto what will be
Expand Down
131 changes: 46 additions & 85 deletions Documentation/device-mapper/verity.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,39 +7,39 @@ This target is read-only.

Construction Parameters
=======================
<version> <dev> <hash_dev> <hash_start>
<version> <dev> <hash_dev>
<data_block_size> <hash_block_size>
<num_data_blocks> <hash_start_block>
<algorithm> <digest> <salt>

<version>
This is the version number of the on-disk format.
This is the type of the on-disk hash format.

0 is the original format used in the Chromium OS.
The salt is appended when hashing, digests are stored continuously and
the rest of the block is padded with zeros.
The salt is appended when hashing, digests are stored continuously and
the rest of the block is padded with zeros.

1 is the current format that should be used for new devices.
The salt is prepended when hashing and each digest is
padded with zeros to the power of two.
The salt is prepended when hashing and each digest is
padded with zeros to the power of two.

<dev>
This is the device containing the data the integrity of which needs to be
This is the device containing data, the integrity of which needs to be
checked. It may be specified as a path, like /dev/sdaX, or a device number,
<major>:<minor>.

<hash_dev>
This is the device that that supplies the hash tree data. It may be
This is the device that supplies the hash tree data. It may be
specified similarly to the device path and may be the same device. If the
same device is used, the hash_start should be outside of the dm-verity
configured device size.
same device is used, the hash_start should be outside the configured
dm-verity device.

<data_block_size>
The block size on a data device. Each block corresponds to one digest on
the hash device.
The block size on a data device in bytes.
Each block corresponds to one digest on the hash device.

<hash_block_size>
The size of a hash block.
The size of a hash block in bytes.

<num_data_blocks>
The number of data blocks on the data device. Additional blocks are
Expand All @@ -65,28 +65,28 @@ Construction Parameters
Theory of operation
===================

dm-verity is meant to be setup as part of a verified boot path. This
dm-verity is meant to be set up as part of a verified boot path. This
may be anything ranging from a boot using tboot or trustedgrub to just
booting from a known-good device (like a USB drive or CD).

When a dm-verity device is configured, it is expected that the caller
has been authenticated in some way (cryptographic signatures, etc).
After instantiation, all hashes will be verified on-demand during
disk access. If they cannot be verified up to the root node of the
tree, the root hash, then the I/O will fail. This should identify
tree, the root hash, then the I/O will fail. This should detect
tampering with any data on the device and the hash data.

Cryptographic hashes are used to assert the integrity of the device on a
per-block basis. This allows for a lightweight hash computation on first read
into the page cache. Block hashes are stored linearly-aligned to the nearest
block the size of a page.
per-block basis. This allows for a lightweight hash computation on first read
into the page cache. Block hashes are stored linearly, aligned to the nearest
block size.

Hash Tree
---------

Each node in the tree is a cryptographic hash. If it is a leaf node, the hash
is of some block data on disk. If it is an intermediary node, then the hash is
of a number of child nodes.
of some data block on disk is calculated. If it is an intermediary node,
the hash of a number of child nodes is calculated.

Each entry in the tree is a collection of neighboring nodes that fit in one
block. The number is determined based on block_size and the size of the
Expand All @@ -110,85 +110,46 @@ alg = sha256, num_blocks = 32768, block_size = 4096
On-disk format
==============

Below is the recommended on-disk format. The verity kernel code does not
read the on-disk header. It only reads the hash blocks which directly
follow the header. It is expected that a user-space tool will verify the
integrity of the verity_header and then call dmsetup with the correct
parameters. Alternatively, the header can be omitted and the dmsetup
parameters can be passed via the kernel command-line in a rooted chain
of trust where the command-line is verified.
The verity kernel code does not read the verity metadata on-disk header.
It only reads the hash blocks which directly follow the header.
It is expected that a user-space tool will verify the integrity of the
verity header.

The on-disk format is especially useful in cases where the hash blocks
are on a separate partition. The magic number allows easy identification
of the partition contents. Alternatively, the hash blocks can be stored
in the same partition as the data to be verified. In such a configuration
the filesystem on the partition would be sized a little smaller than
the full-partition, leaving room for the hash blocks.

struct superblock {
uint8_t signature[8]
"verity\0\0";

uint8_t version;
1 - current format

uint8_t data_block_bits;
log2(data block size)

uint8_t hash_block_bits;
log2(hash block size)

uint8_t pad1[1];
zero padding

uint16_t salt_size;
big-endian salt size

uint8_t pad2[2];
zero padding

uint32_t data_blocks_hi;
big-endian high 32 bits of the 64-bit number of data blocks

uint32_t data_blocks_lo;
big-endian low 32 bits of the 64-bit number of data blocks

uint8_t algorithm[16];
cryptographic algorithm

uint8_t salt[384];
salt (the salt size is specified above)

uint8_t pad3[88];
zero padding to 512-byte boundary
}
Alternatively, the header can be omitted and the dmsetup parameters can
be passed via the kernel command-line in a rooted chain of trust where
the command-line is verified.

Directly following the header (and with sector number padded to the next hash
block boundary) are the hash blocks which are stored a depth at a time
(starting from the root), sorted in order of increasing index.

The full specification of kernel parameters and on-disk metadata format
is available at the cryptsetup project's wiki page
http://code.google.com/p/cryptsetup/wiki/DMVerity

Status
======
V (for Valid) is returned if every check performed so far was valid.
If any check failed, C (for Corruption) is returned.

Example
=======

Setup a device:
dmsetup create vroot --table \
"0 2097152 "\
"verity 1 /dev/sda1 /dev/sda2 4096 4096 2097152 1 "\
Set up a device:
# dmsetup create vroot --readonly --table \
"0 2097152 verity 1 /dev/sda1 /dev/sda2 4096 4096 262144 1 sha256 "\
"4392712ba01368efdf14b05c76f9e4df0d53664630b5d48632ed17a137f39076 "\
"1234000000000000000000000000000000000000000000000000000000000000"

A command line tool veritysetup is available to compute or verify
the hash tree or activate the kernel driver. This is available from
the LVM2 upstream repository and may be supplied as a package called
device-mapper-verity-tools:
git://sources.redhat.com/git/lvm2
http://sourceware.org/git/?p=lvm2.git
http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/verity?cvsroot=lvm2

veritysetup -a vroot /dev/sda1 /dev/sda2 \
4392712ba01368efdf14b05c76f9e4df0d53664630b5d48632ed17a137f39076
the hash tree or activate the kernel device. This is available from
the cryptsetup upstream repository http://code.google.com/p/cryptsetup/
(as a libcryptsetup extension).

Create hash on the device:
# veritysetup format /dev/sda1 /dev/sda2
...
Root hash: 4392712ba01368efdf14b05c76f9e4df0d53664630b5d48632ed17a137f39076

Activate the device:
# veritysetup create vroot /dev/sda1 /dev/sda2 \
4392712ba01368efdf14b05c76f9e4df0d53664630b5d48632ed17a137f39076
9 changes: 6 additions & 3 deletions Documentation/devicetree/bindings/arm/atmel-aic.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ Required properties:
- compatible: Should be "atmel,<chip>-aic"
- interrupt-controller: Identifies the node as an interrupt controller.
- interrupt-parent: For single AIC system, it is an empty property.
- #interrupt-cells: The number of cells to define the interrupts. It sould be 2.
- #interrupt-cells: The number of cells to define the interrupts. It sould be 3.
The first cell is the IRQ number (aka "Peripheral IDentifier" on datasheet).
The second cell is used to specify flags:
bits[3:0] trigger type and level flags:
Expand All @@ -14,7 +14,10 @@ Required properties:
8 = active low level-sensitive.
Valid combinations are 1, 2, 3, 4, 8.
Default flag for internal sources should be set to 4 (active high).
The third cell is used to specify the irq priority from 0 (lowest) to 7
(highest).
- reg: Should contain AIC registers location and length
- atmel,external-irqs: u32 array of external irqs.

Examples:
/*
Expand All @@ -24,7 +27,7 @@ Examples:
compatible = "atmel,at91rm9200-aic";
interrupt-controller;
interrupt-parent;
#interrupt-cells = <2>;
#interrupt-cells = <3>;
reg = <0xfffff000 0x200>;
};

Expand All @@ -34,5 +37,5 @@ Examples:
dma: dma-controller@ffffec00 {
compatible = "atmel,at91sam9g45-dma";
reg = <0xffffec00 0x200>;
interrupts = <21 4>;
interrupts = <21 4 5>;
};
2 changes: 1 addition & 1 deletion Documentation/devicetree/bindings/arm/atmel-at91.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ PIT Timer required properties:
shared across all System Controller members.

TC/TCLIB Timer required properties:
- compatible: Should be "atmel,<chip>-pit".
- compatible: Should be "atmel,<chip>-tcb".
<chip> can be "at91rm9200" or "at91sam9x5"
- reg: Should contain registers location and length
- interrupts: Should contain all interrupts for the TC block
Expand Down
5 changes: 5 additions & 0 deletions Documentation/devicetree/bindings/gpio/gpio_atmel.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,17 @@ Required properties:
unused).
- gpio-controller: Marks the device node as a GPIO controller.

optional properties:
- #gpio-lines: Number of gpio if absent 32.


Example:
pioA: gpio@fffff200 {
compatible = "atmel,at91rm9200-gpio";
reg = <0xfffff200 0x100>;
interrupts = <2 4>;
#gpio-cells = <2>;
gpio-controller;
#gpio-lines = <19>;
};

30 changes: 30 additions & 0 deletions Documentation/devicetree/bindings/i2c/atmel-i2c.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
I2C for Atmel platforms

Required properties :
- compatible : Must be "atmel,at91rm9200-i2c", "atmel,at91sam9261-i2c",
"atmel,at91sam9260-i2c", "atmel,at91sam9g20-i2c", "atmel,at91sam9g10-i2c"
or "atmel,at91sam9x5-i2c"
- reg: physical base address of the controller and length of memory mapped
region.
- interrupts: interrupt number to the cpu.
- #address-cells = <1>;
- #size-cells = <0>;

Optional properties:
- Child nodes conforming to i2c bus binding

Examples :

i2c0: i2c@fff84000 {
compatible = "atmel,at91sam9g20-i2c";
reg = <0xfff84000 0x100>;
interrupts = <12 4 6>;
#address-cells = <1>;
#size-cells = <0>;

24c512@50 {
compatible = "24c512";
reg = <0x50>;
pagesize = <128>;
}
}
Loading