25 Feb, 2016

2 commits

  • PAMU driver basic support for usage in Secure Boot.
    In secure boot PAMU is not in bypass mode. Hence to use
    any peripheral (SEC Job ring in our case), PAMU has to be
    configured.

    The patch reverts commit 7cad2e38d61e27ea59fb7944f7e647e97ef292d3.

    The Header file pamu.h and few functions in driver have been derived
    from Freescale Libos.

    Signed-off-by: Ruchika Gupta
    Signed-off-by: Aneesh Bansal
    Reviewed-by: York Sun

    Aneesh Bansal
     
  • The output ring needs to be invalidated before enqueuing the job to SEC.
    While allocation of space to output ring, it should be taken care that the
    size is cacheline size aligned inorder to prevent invalidating valid data.

    The patch also correct the method of aligning end of structs while flushing caches

    Since start = align(start_of_struct), it is incorrect to assign
    end = align(start + struct_size). It should instead be,
    end = align(start_of_struct + struct_size).

    Signed-off-by: Saksham Jain
    Signed-off-by: Ruchika Gupta
    Reviewed-by: York Sun

    Ruchika Gupta
     

21 Feb, 2016

6 commits

  • Tom Rini
     
  • Introudce i.MX7 pinctrl driver support.
    For now only i.MX7D supported.
    There are two iomux controllers in i.MX7D, iomuxc and iomuxc_lpsr.
    To iomuxc_lpsr, ZERO_OFFSET_VALID is set, means offset of mux_reg
    and conf_reg can begin at 0.

    Signed-off-by: Peng Fan
    Reviewed-by: Simon Glass

    Peng Fan
     
  • Introduce pinctrl for i.MX6
    1. pinctrl-imx.c is for common usage. It's used by i.MX6/7.
    2. Add PINCTRL_IMX PINCTRL_IMX6 Kconfig entry.
    3. To the pinctrl_ops implementation, only set_state is implemented.
    To i.MX6/7, the pinctrl dts entry is as following:
    &iomuxc {
    pinctrl-names = "default";

    pinctrl_csi1: csi1grp {
    fsl,pins = <
    MX6UL_PAD_CSI_MCLK__CSI_MCLK 0x1b088
    MX6UL_PAD_CSI_PIXCLK__CSI_PIXCLK 0x1b088
    MX6UL_PAD_CSI_VSYNC__CSI_VSYNC 0x1b088
    >;
    };

    [.....]
    };
    there is no property named function or groups. So pinctrl_generic_set_state
    can not be used here.
    5. This driver is a simple implementation for i.mx iomux controller,
    only parse the fsl,pins property and write value to registers.
    6. With DEBUG enabled, we can see log when "i2c bus 0":
    "
    set_state_simple op missing
    imx_pinctrl_set_state: i2c1grp
    mux_reg 0x14c, conf_reg 0x3bc, input_reg 0x5d8, mux_mode 0x0, input_val 0x1, config_val 0x4000007f
    write mux: offset 0x14c val 0x10
    select_input: offset 0x5d8 val 0x1
    write config: offset 0x3bc val 0x7f
    mux_reg 0x148, conf_reg 0x3b8, input_reg 0x5d4, mux_mode 0x0, input_val 0x1, config_val 0x4000007f
    write mux: offset 0x148 val 0x10
    select_input: offset 0x5d4 val 0x1
    write config: offset 0x3b8 val 0x7f
    "
    this means imx6 pinctrl driver works as expected.

    Signed-off-by: Peng Fan
    Reviewed-by: Simon Glass

    Peng Fan
     
  • Refactored data structure for CAAM's job ring and Secure Memory
    to support i.MX7.

    The new memory map use macros to resolve SM's offset by version.
    This will solve the versioning issue caused by the new version of
    secure memory of i.MX7

    Signed-off-by: Ulises Cardenas
    Reviewed-by: Stefano Babic

    Ulises Cardenas
     
  • The SMSC SIO1007 superio chipset integrates two ns16550 compatible
    serial ports for legacy applications, 16 GPIO pins and some other
    functionalities like power management.

    This adds a simple driver to enable serial port and handle GPIO.

    Signed-off-by: Bin Meng
    Reviewed-by: Simon Glass

    Bin Meng
     
  • Tom Rini
     

19 Feb, 2016

6 commits


17 Feb, 2016

17 commits


14 Feb, 2016

3 commits


13 Feb, 2016

6 commits