Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- diff --git a/arch/arm/boot/dts/at91sam9x5.dtsi b/arch/arm/boot/dts/at91sam9x5.dtsi
- index 11412c2..0b3d55a 100644
- --- a/arch/arm/boot/dts/at91sam9x5.dtsi
- +++ b/arch/arm/boot/dts/at91sam9x5.dtsi
- @@ -181,10 +181,10 @@
- compatible = "atmel,at91sam9x5-usart";
- reg = <0xf801c000 0x200>;
- interrupts = <5 4 5>;
- - atmel,use-dma-rx;
- +/* atmel,use-dma-rx;
- dma-rx = <&dma0 0x20000204>;
- atmel,use-dma-tx;
- - dma-tx = <&dma0 0x10002030>;
- + dma-tx = <&dma0 0x10002030>; */
- pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_usart0>;
- status = "disabled";
- @@ -812,14 +812,76 @@
- status = "disabled";
- };
- - usb0: ohci@00600000 {
- + usb0: gadget@00500000 {
- + #address-cells = <1>;
- + #size-cells = <0>;
- + compatible = "atmel,at91sam9rl-udc";
- + reg = <0x00500000 0x100000
- + 0xf803c000 0x4000>;
- + interrupts = <23 4 2>;
- + status = "disabled";
- +
- + ep0 {
- + reg = <0>;
- + atmel,fifo-size = <64>;
- + atmel,nb-banks = <1>;
- + };
- +
- + ep1 {
- + reg = <1>;
- + atmel,fifo-size = <1024>;
- + atmel,nb-banks = <2>;
- + atmel,can-dma;
- + atmel,can-isoc;
- + };
- +
- + ep2 {
- + reg = <2>;
- + atmel,fifo-size = <1024>;
- + atmel,nb-banks = <2>;
- + atmel,can-dma;
- + atmel,can-isoc;
- + };
- +
- + ep3 {
- + reg = <3>;
- + atmel,fifo-size = <1024>;
- + atmel,nb-banks = <3>;
- + atmel,can-dma;
- + };
- +
- + ep4 {
- + reg = <4>;
- + atmel,fifo-size = <1024>;
- + atmel,nb-banks = <3>;
- + atmel,can-dma;
- + };
- +
- + ep5 {
- + reg = <5>;
- + atmel,fifo-size = <1024>;
- + atmel,nb-banks = <3>;
- + atmel,can-dma;
- + atmel,can-isoc;
- + };
- +
- + ep6 {
- + reg = <6>;
- + atmel,fifo-size = <1024>;
- + atmel,nb-banks = <3>;
- + atmel,can-dma;
- + atmel,can-isoc;
- + };
- + };
- +
- + usb1: ohci@00600000 {
- compatible = "atmel,at91rm9200-ohci", "usb-ohci";
- reg = <0x00600000 0x100000>;
- interrupts = <22 4 2>;
- status = "disabled";
- };
- - usb1: ehci@00700000 {
- + usb2: ehci@00700000 {
- compatible = "atmel,at91sam9g45-ehci", "usb-ehci";
- reg = <0x00700000 0x100000>;
- interrupts = <22 4 2>;
- diff --git a/arch/arm/boot/dts/at91sam9x5ek.dtsi b/arch/arm/boot/dts/at91sam9x5ek.dtsi
- index 5791a0c..3c44242 100644
- --- a/arch/arm/boot/dts/at91sam9x5ek.dtsi
- +++ b/arch/arm/boot/dts/at91sam9x5ek.dtsi
- @@ -13,7 +13,7 @@
- compatible = "atmel,at91sam9x5ek", "atmel,at91sam9x5", "atmel,at91sam9";
- chosen {
- - bootargs = "128M console=ttyS0,115200 root=/dev/mtdblock1 rw rootfstype=ubifs ubi.mtd=1 root=ubi0:rootfs";
- + bootargs = "128M console=ttyS0,115200 root=/dev/mtdblock1 rw rootfstype=ubifs ubi.mtd=1 root=ubi0:rootfs fbcon=rotate:1 ";
- };
- ahb {
- @@ -49,6 +49,11 @@
- atmel,pins =
- <3 14 0x0 0x5>; /* PD14 gpio with pullup deglitch */
- };
- +
- + pinctrl_usba_vbus: usba_vbus {
- + atmel,pins =
- + <1 16 0x0 0x4>; /* PB16 GPIO with deglitch */
- + };
- };
- };
- @@ -60,6 +65,14 @@
- status = "okay";
- };
- + usart1: serial@f8020000 {
- + status = "okay";
- + };
- +
- + usart2: serial@f8024000 {
- + status = "okay";
- + };
- +
- mmc0: mmc@f0008000 {
- pinctrl-0 = <&pinctrl_mmc0_clk_cmd_dat0 &pinctrl_mmc0_dat1_3 &pinctrl_mmc0_cd>;
- status = "okay";
- @@ -92,7 +105,13 @@
- };
- };
- - usb0: ohci@00600000 {
- + usb0:gadget@00500000 {
- + pinctrl-names = "default";
- + pinctrl-0 = <&pinctrl_usba_vbus>;
- + status = "okay";
- + };
- +
- + usb1: ohci@00600000 {
- status = "okay";
- num-ports = <3>;
- atmel,vbus-gpio = <0 /* &pioD 18 1 *//* Activate to have access to port A */
- @@ -101,7 +120,7 @@
- >;
- };
- - usb1: ehci@00700000 {
- + usb2: ehci@00700000 {
- status = "okay";
- };
- };
- diff --git a/arch/arm/mach-at91/at91sam9x5.c b/arch/arm/mach-at91/at91sam9x5.c
- index fc4b02b..1bf997a 100644
- --- a/arch/arm/mach-at91/at91sam9x5.c
- +++ b/arch/arm/mach-at91/at91sam9x5.c
- @@ -222,6 +222,8 @@ static struct clk *periph_clocks[] __initdata = {
- static struct clk_lookup periph_clocks_lookups[] = {
- /* lookup table for DT entries */
- + CLKDEV_CON_DEV_ID("pclk", "500000.gadget", &udphs_clk),
- + CLKDEV_CON_DEV_ID("hclk", "500000.gadget", &utmi_clk),
- CLKDEV_CON_DEV_ID("hclk", "600000.ohci", &uhphs_clk),
- CLKDEV_CON_DEV_ID("ohci_clk", "600000.ohci", &uhphs_clk),
- CLKDEV_CON_DEV_ID("ehci_clk", "700000.ehci", &uhphs_clk),
- diff --git a/arch/arm/mach-at91/board-dt.c b/arch/arm/mach-at91/board-dt.c
- index f500a53..17d8c7d 100644
- --- a/arch/arm/mach-at91/board-dt.c
- +++ b/arch/arm/mach-at91/board-dt.c
- @@ -9,7 +9,7 @@
- #include <linux/types.h>
- #include <linux/init.h>
- -#include <linux/module.h>
- +#include <linux/module.h>
- #include <linux/gpio.h>
- #include <linux/phy.h>
- #include <linux/micrel_phy.h>
- @@ -37,6 +37,7 @@
- #include <linux/fb.h>
- #include <video/atmel_lcdfb.h>
- +#include <mach/atmel_lcdc.h>
- #include <mach/atmel_hlcdc.h>
- #include <media/soc_camera.h>
- @@ -47,18 +48,36 @@
- /*
- * LCD Controller
- */
- -static struct fb_videomode at91_tft_vga_modes[] = {
- +
- +/* static struct fb_videomode at91_tft_vga_modes[] = {
- {
- .name = "LG",
- .refresh = 60,
- - .xres = 800, .yres = 480,
- + .xres = 320, .yres = 240,
- .pixclock = KHZ2PICOS(33260),
- - .left_margin = 88, .right_margin = 168,
- - .upper_margin = 8, .lower_margin = 37,
- - .hsync_len = 128, .vsync_len = 2,
- + .left_margin = 71, .right_margin = 15,
- + .upper_margin = 10, .lower_margin = 17,
- + .hsync_len = 20, .vsync_len = 2,
- +
- + .sync = FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT,
- + .vmode = FB_VMODE_NONINTERLACED,
- + },
- +}; */
- +
- +static struct fb_videomode at91_tft_vga_modes[] = {
- + {
- + .name = "LG",
- + .refresh = 70,
- + .xres = 240, .yres = 320,
- + .pixclock = KHZ2PICOS(6278),
- - .sync = 0,
- + .left_margin = 20, .right_margin = 10,
- + .upper_margin = 2, .lower_margin = 4,
- + .hsync_len = 10, .vsync_len = 2,
- +
- +
- + .sync = FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT,
- .vmode = FB_VMODE_NONINTERLACED,
- },
- };
- @@ -66,13 +85,12 @@ static struct fb_videomode at91_tft_vga_modes[] = {
- static struct fb_monspecs at91fb_default_monspecs = {
- .manufacturer = "LG",
- .monitor = "LB043WQ1",
- -
- .modedb = at91_tft_vga_modes,
- .modedb_len = ARRAY_SIZE(at91_tft_vga_modes),
- .hfmin = 15000,
- .hfmax = 17640,
- - .vfmin = 57,
- - .vfmax = 67,
- + .vfmin = 50,
- + .vfmax = 150,
- };
- /* Default output mode is TFT 24 bit */
- @@ -84,7 +102,7 @@ static struct atmel_lcdfb_info __initdata ek_lcdc_data = {
- .alpha_enabled = false,
- .default_bpp = 16,
- /* Reserve enough memory for 32bpp */
- - .smem_len = 800 * 480 * 4,
- + .smem_len = 320 * 240 * 4,
- /* default_lcdcon2 is used for LCDCFG5 */
- .default_lcdcon2 = BPP_OUT_DEFAULT_LCDCFG5,
- .default_monspecs = &at91fb_default_monspecs,
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement